Extract expander to partial
This commit is contained in:
@@ -69,27 +69,4 @@ module CardsHelper
|
||||
def cacheable_preview_parts_for(card, *options)
|
||||
[ card, card.workflow, card.collection.entropy_configuration, card.collection.publication, *options ]
|
||||
end
|
||||
|
||||
def cards_expander(title, count)
|
||||
tag.header class: "cards__expander", data: { action: "click->collapsible-columns#toggle" }, style: "--card-count: #{[count, 20].min}", aria: { role: "button" } do
|
||||
concat(tag.span count > 99 ? "99+" : count, class: "cards__expander-count", "data-drag-and-drop-counter": true)
|
||||
concat(tag.h2 title, class: "cards__expander-title")
|
||||
concat(tag.div class: "cards__expander-menu position-relative", data: { controller: "dialog", action: "keydown.esc->dialog#close click@document->dialog#closeOnClickOutside" } do
|
||||
concat(tag.button class: "btn btn--circle txt-x-small borderless", data: { action: "click->dialog#open:stop" } do
|
||||
concat(icon_tag "menu-dots-horizontal", class: "translucent")
|
||||
concat(tag.span "Column options", class: "for-screen-reader")
|
||||
end)
|
||||
concat(tag.dialog class: "popup panel flex-column gap fill-white shadow txt-small margin-block-double", data: { dialog_target: "dialog" } do
|
||||
concat(tag.ul class: "popup__list" do
|
||||
concat(tag.li class: "popup__item" do
|
||||
concat(tag.button "Rename column", class: "popup__btn btn")
|
||||
end)
|
||||
concat(tag.li class: "popup__item" do
|
||||
concat(tag.button "Delete column", class: "popup__btn btn")
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
data-drag-and-drop-url="<%= columns_card_drops_closure_path("__id__") %>"
|
||||
>
|
||||
|
||||
<%= cards_expander "Done", collection.cards.closed.count %>
|
||||
<%= render "collections/show/expander", title: "Done", count: collection.cards.closed.count %>
|
||||
|
||||
<%= column_frame_tag :closed_column, src: collection_columns_closed_path(collection) %>
|
||||
</section>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
data-action="turbo:before-morph-attribute->collapsible-columns#preventToggle"
|
||||
data-drag-and-drop-url="<%= columns_card_drops_column_path("__id__", column_id: column.id) %>"
|
||||
>
|
||||
<%= cards_expander column.name, column.cards.active.count %>
|
||||
<%= render "collections/show/expander", title: column.name, count: column.cards.active.count %>
|
||||
|
||||
<%= column_frame_tag dom_id(column, :cards), src: collection_column_path(column.collection, column) %>
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
<header class="cards__expander" data-action="click->collapsible-columns#toggle" style="--card-count: <%= [count, 20].min %>" aria-role="button">
|
||||
<span class="cards__expander-count" data-drag-and-drop-counter="true"><%= count > 99 ? "99+" : count %></span>
|
||||
<h2 class="cards__expander-title"><%= title %></h2>
|
||||
<div class="cards__expander-menu position-relative" data-controller="dialog" data-action="keydown.esc->dialog#close click@document->dialog#closeOnClickOutside">
|
||||
<button class="btn btn--circle txt-x-small borderless" data-action="click->dialog#open:stop">
|
||||
<%= icon_tag "menu-dots-horizontal", class: "translucent" %>
|
||||
<span class="for-screen-reader">Column options</span>
|
||||
</button>
|
||||
<dialog class="popup panel flex-column gap fill-white shadow txt-small margin-block-double" data-dialog-target="dialog">
|
||||
<ul class="popup__list">
|
||||
<li class="popup__item">
|
||||
<button class="popup__btn btn">Rename column</button>
|
||||
</li>
|
||||
<li class="popup__item">
|
||||
<button class="popup__btn btn">Delete column</button>
|
||||
</li>
|
||||
</ul>
|
||||
</dialog>
|
||||
</div>
|
||||
</header>
|
||||
@@ -6,7 +6,7 @@
|
||||
data-drag-and-drop-url="<%= columns_card_drops_not_now_path("__id__") %>"
|
||||
>
|
||||
|
||||
<%= cards_expander "Not Now", collection.cards.postponed.count %>
|
||||
<%= render "collections/show/expander", title: "Not Now", count: collection.cards.postponed.count %>
|
||||
|
||||
<%= column_frame_tag :not_now_column, src: collection_columns_not_now_path(collection) %>
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user