diff --git a/app/helpers/boards_helper.rb b/app/helpers/boards_helper.rb index 5f12b9259..eae2f3665 100644 --- a/app/helpers/boards_helper.rb +++ b/app/helpers/boards_helper.rb @@ -9,4 +9,12 @@ module BoardsHelper icon_tag("settings") + tag.span("Settings for #{board.name}", class: "for-screen-reader") end end + + def bridged_button_to_board(board) + link_to "Go to #{board.name}", board, hidden: true, data: { + bridge__buttons_target: "button", + bridge_icon_url: bridge_icon("board"), + bridge_title: "Go to #{board.name}" + } + end end diff --git a/app/helpers/bridge_helper.rb b/app/helpers/bridge_helper.rb index 0fd43044e..5fb4508b6 100644 --- a/app/helpers/bridge_helper.rb +++ b/app/helpers/bridge_helper.rb @@ -2,22 +2,4 @@ module BridgeHelper def bridge_icon(name) asset_url("#{name}.svg") end - - def bridged_button_to_board(board) - link_to "Go to #{board.name}", board, hidden: true, data: { - bridge__buttons_target: "button", - bridge_icon_url: bridge_icon("board"), - bridge_title: "Go to #{board.name}" - } - end - - def bridged_share_button(type = nil) - tag.button "Share", hidden: true, data: { - controller: "bridge--share", - action: "bridge--share#share", - bridge__overflow_menu_target: "item", - bridge_title: "Share", - bridge_share_type: type - } - end end diff --git a/app/javascript/controllers/bridge/share_controller.js b/app/javascript/controllers/bridge/share_controller.js deleted file mode 100644 index 2c6e24248..000000000 --- a/app/javascript/controllers/bridge/share_controller.js +++ /dev/null @@ -1,45 +0,0 @@ -import { BridgeComponent } from "@hotwired/hotwire-native-bridge" - -export default class extends BridgeComponent { - static component = "share" - - share() { - const type = this.bridgeElement.bridgeAttribute("share-type") - switch (type) { - case "card-url": - this.send("shareCardUrl", this.#data(type)) - break - default: - this.send("shareUrl", this.#data(type)) - } - } - - #data(type) { - return { - title: document.title, - url: window.location.href, - ...this.#additionalDataFor(type) - } - } - - #additionalDataFor(type) { - switch (type) { - case "card-url": - return { - author: this.#author, - dateAdded: this.#dateAdded - } - default: - return null - } - } - - get #author() { - return document.querySelector(".card__meta-text--author strong")?.textContent?.trim() ?? null - } - - get #dateAdded() { - const timestamp = document.querySelector(".card__meta-text--added time")?.dateTime - return parseInt(timestamp) || null - } -} diff --git a/app/views/boards/show.html.erb b/app/views/boards/show.html.erb index 49391dd58..bcccf4512 100644 --- a/app/views/boards/show.html.erb +++ b/app/views/boards/show.html.erb @@ -30,5 +30,3 @@ <%= render "boards/show/columns", page: @page, board: @board %> <% end %> <% end %> - -<%= bridged_share_button() %> diff --git a/app/views/cards/show.html.erb b/app/views/cards/show.html.erb index 90481c5b8..cf6d239db 100644 --- a/app/views/cards/show.html.erb +++ b/app/views/cards/show.html.erb @@ -23,5 +23,3 @@ <%= button_to_remove_card_image(@card) if @card.image.attached? %> <% end %> - -<%= bridged_share_button("card-url") %>