From 3543121d3d1455739cecbb21142e1225f4f610ee Mon Sep 17 00:00:00 2001 From: Jose Farias Date: Thu, 24 Oct 2024 16:00:09 -0600 Subject: [PATCH] thread-controller -> created-by-current-user-controller --- .../created_by_current_user_controller.js | 18 ++++++++++++++++++ .../controllers/thread_controller.js | 13 ------------- app/views/bubbles/_thread.html.erb | 5 +++-- 3 files changed, 21 insertions(+), 15 deletions(-) create mode 100644 app/javascript/controllers/created_by_current_user_controller.js delete mode 100644 app/javascript/controllers/thread_controller.js diff --git a/app/javascript/controllers/created_by_current_user_controller.js b/app/javascript/controllers/created_by_current_user_controller.js new file mode 100644 index 000000000..734028afe --- /dev/null +++ b/app/javascript/controllers/created_by_current_user_controller.js @@ -0,0 +1,18 @@ +import { Controller } from "@hotwired/stimulus" + +export default class extends Controller { + static values = { selector: String } + static classes = [ "differentiator" ] + + connect() { + this.#createdElements.forEach(el => el.classList.add(this.differentiatorClass)) + } + + get #createdElements() { + return this.element.querySelectorAll(this.#selector) + } + + get #selector() { + return `${this.selectorValue}[data-creator-id='${Current.user.id}']` + } +} diff --git a/app/javascript/controllers/thread_controller.js b/app/javascript/controllers/thread_controller.js deleted file mode 100644 index 0671c8361..000000000 --- a/app/javascript/controllers/thread_controller.js +++ /dev/null @@ -1,13 +0,0 @@ -import { Controller } from "@hotwired/stimulus" - -export default class extends Controller { - static classes = [ "myComment" ] - - connect() { - this.#myComments.forEach(comment => comment.classList.add(this.myCommentClass)) - } - - get #myComments() { - return this.element.querySelectorAll(`.comment[data-creator-id='${Current.user.id}']`) - } -} diff --git a/app/views/bubbles/_thread.html.erb b/app/views/bubbles/_thread.html.erb index 2a799d13b..8913716fa 100644 --- a/app/views/bubbles/_thread.html.erb +++ b/app/views/bubbles/_thread.html.erb @@ -1,8 +1,9 @@
+ data-controller="created-by-current-user" + data-created-by-current-user-selector-value=".comment" + data-created-by-current-user-differentiator-class="comment--mine"> <%# Template Dependency: comments/comment %> <%# Template Dependency: rollups/rollup %> <%= render partial: "thread_entries/thread_entry", collection: bubble.thread.entries, cache: true %>