From ee8559343ae0c58b35d831281f4bfbb51d2575d4 Mon Sep 17 00:00:00 2001 From: Jason Zimdars Date: Fri, 11 Apr 2025 11:50:09 -0500 Subject: [PATCH 01/19] Tighten engagement switch design, only display it for published cards --- app/assets/stylesheets/buttons.css | 8 ++++++-- app/assets/stylesheets/cards.css | 3 ++- app/views/cards/show.html.erb | 28 +++++++++++++++------------- 3 files changed, 23 insertions(+), 16 deletions(-) diff --git a/app/assets/stylesheets/buttons.css b/app/assets/stylesheets/buttons.css index a6e1e1139..693ba2429 100644 --- a/app/assets/stylesheets/buttons.css +++ b/app/assets/stylesheets/buttons.css @@ -201,15 +201,19 @@ } :first-of-type .btn { - border-top-left-radius: 2em; border-bottom-left-radius: 2em; + border-inline-end: 0; + border-top-left-radius: 2em; flex: 1 0 50%; + padding-inline-end: 0.8em; } :last-of-type .btn { - border-top-right-radius: 2em; border-bottom-right-radius: 2em; + border-inline-start: 0; + border-top-right-radius: 2em; flex: 1 0 50%; + padding-inline-start: 0.8em; } span { diff --git a/app/assets/stylesheets/cards.css b/app/assets/stylesheets/cards.css index 61beab9b2..8a30732ed 100644 --- a/app/assets/stylesheets/cards.css +++ b/app/assets/stylesheets/cards.css @@ -153,7 +153,8 @@ &.card__actions-container--top { margin: calc(var(--block-space) * 1) auto calc(var(--block-space) * -0.66); - min-inline-size: 30ch; + min-inline-size: 28ch; + padding: 0; #header:has(&) { position: relative; diff --git a/app/views/cards/show.html.erb b/app/views/cards/show.html.erb index 93f338f8a..c4a621a00 100644 --- a/app/views/cards/show.html.erb +++ b/app/views/cards/show.html.erb @@ -23,23 +23,25 @@ <%= link_to_home %> <%= link_to_back fallback_path: cards_path(collection_id: @card.collection) %> -
-
- <%= form_with url: card_engagement_path(@card), method: :delete, data: { controller: "form" } do |form| %> - <%= form.label :engagement, value: "considering", class: "btn", aria: { label: "Move to Doing"} do %> - <%= form.radio_button :engagement, "considering", checked: @card.considering?, class: "for-screen-reader", data: { action: "change->form#submit" } %> - Considering + <% if @card.published? %> +
+
+ <%= form_with url: card_engagement_path(@card), method: :delete, data: { controller: "form" } do |form| %> + <%= form.label :engagement, value: "considering", class: "btn", aria: { label: "Move to Doing"} do %> + <%= form.radio_button :engagement, "considering", checked: @card.considering?, class: "for-screen-reader", data: { action: "change->form#submit" } %> + Considering + <% end %> <% end %> - <% end %> - <%= form_with url: card_engagement_path(@card), method: :post, data: { controller: "form" } do |form| %> - <%= form.label :engagement, value: "doing", class: "btn", aria: { label: "Move back to Considering"} do %> - <%= form.radio_button :engagement, "doing", checked: @card.doing?, class: "for-screen-reader", data: { action: "change->form#submit" } %> - Doing + <%= form_with url: card_engagement_path(@card), method: :post, data: { controller: "form" } do |form| %> + <%= form.label :engagement, value: "doing", class: "btn", aria: { label: "Move back to Considering"} do %> + <%= form.radio_button :engagement, "doing", checked: @card.doing?, class: "for-screen-reader", data: { action: "change->form#submit" } %> + Doing + <% end %> <% end %> - <% end %> +
-
+ <% end %>
From 76336a52d60bc4ac3fad6e46eae2ae1fb2041db9 Mon Sep 17 00:00:00 2001 From: Jason Zimdars Date: Fri, 11 Apr 2025 11:56:26 -0500 Subject: [PATCH 02/19] This item makes no sense until it's saved --- app/views/cards/display/common/_meta.html.erb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/views/cards/display/common/_meta.html.erb b/app/views/cards/display/common/_meta.html.erb index e90348331..d27ff3485 100644 --- a/app/views/cards/display/common/_meta.html.erb +++ b/app/views/cards/display/common/_meta.html.erb @@ -16,8 +16,13 @@
- <%= card.creating? ? "Created" : "Updated" %> - <%= local_datetime_tag(card.updated_at, style: :daysago) %> + + <% if card.creating? %> +   + <% else %> + Updated + <%= local_datetime_tag(card.updated_at, style: :daysago) %> + <% end %>
From 5997ef2c709af16a6ffd59ea75429cc31c0aacb5 Mon Sep 17 00:00:00 2001 From: Jason Zimdars Date: Fri, 11 Apr 2025 12:08:05 -0500 Subject: [PATCH 03/19] Considering needs to include drafted cards or you'll never be able to see them --- app/models/card/engageable.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/card/engageable.rb b/app/models/card/engageable.rb index aac48232c..f811b639a 100644 --- a/app/models/card/engageable.rb +++ b/app/models/card/engageable.rb @@ -7,7 +7,7 @@ module Card::Engageable has_one :engagement, dependent: :destroy, class_name: "Card::Engagement" scope :doing, -> { published.active.joins(:engagement) } - scope :considering, -> { published.active.where.missing(:engagement) } + scope :considering, -> { published_or_drafted_by(Current.user).active.where.missing(:engagement) } scope :stagnated, -> { doing.where(last_active_at: ..STAGNATED_AFTER.ago) } end From df96ee80fa5d6b60c2a77159a8333732992bda3d Mon Sep 17 00:00:00 2001 From: Jason Zimdars Date: Fri, 11 Apr 2025 12:21:14 -0500 Subject: [PATCH 04/19] Style drafted cards --- app/assets/stylesheets/cards.css | 7 +++++++ app/views/cards/display/_mini.html.erb | 5 +++-- app/views/cards/display/common/_meta.html.erb | 3 +++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/app/assets/stylesheets/cards.css b/app/assets/stylesheets/cards.css index 8a30732ed..57024929f 100644 --- a/app/assets/stylesheets/cards.css +++ b/app/assets/stylesheets/cards.css @@ -50,6 +50,13 @@ .card__tags { font-size: var(--text-small); } + + &:is(.card--drafted) { + --card-color: var(--color-subtle-dark) !important; + + border-color: var(--card-color) !important; + border-style: dashed !important; + } } } diff --git a/app/views/cards/display/_mini.html.erb b/app/views/cards/display/_mini.html.erb index 2dd1ff438..8ed453216 100644 --- a/app/views/cards/display/_mini.html.erb +++ b/app/views/cards/display/_mini.html.erb @@ -1,4 +1,5 @@ -
+<%= tag.div class: ["card card--mini border flex flex-column gap position-relative txt-align-start full-width border-radius fill-white", { "card--drafted": card.drafted? }], + style: "--card-color: #{ card.color }; view-transition-name: #{ dom_id(card, :ticket) };" do %>
<%= card.collection.name %> @@ -20,4 +21,4 @@ <%= link_to collection_card_path(card.collection, card), class: "card__link" do %> <%= card_title(card) %> <% end %> -
+<% end %> diff --git a/app/views/cards/display/common/_meta.html.erb b/app/views/cards/display/common/_meta.html.erb index d27ff3485..eda0a910b 100644 --- a/app/views/cards/display/common/_meta.html.erb +++ b/app/views/cards/display/common/_meta.html.erb @@ -4,6 +4,9 @@
Added <%= local_datetime_tag(card.created_at, style: :daysago) %> + <% if card.drafted? %> + (Draft) + <% end %>
From 239b0a430d063e0249ff351109da3adf18fb5312 Mon Sep 17 00:00:00 2001 From: Jason Zimdars Date: Fri, 11 Apr 2025 12:48:24 -0500 Subject: [PATCH 05/19] Don't show the engagement toggle on closed cards --- app/views/cards/show.html.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/cards/show.html.erb b/app/views/cards/show.html.erb index c4a621a00..cae272b79 100644 --- a/app/views/cards/show.html.erb +++ b/app/views/cards/show.html.erb @@ -23,7 +23,7 @@ <%= link_to_home %> <%= link_to_back fallback_path: cards_path(collection_id: @card.collection) %> - <% if @card.published? %> + <% if @card.published? && !@card.closed? %>
<%= form_with url: card_engagement_path(@card), method: :delete, data: { controller: "form" } do |form| %> From 0c5b875dedee0b3e0381af29ae79ff72b91cae53 Mon Sep 17 00:00:00 2001 From: Jason Zimdars Date: Fri, 11 Apr 2025 12:55:11 -0500 Subject: [PATCH 06/19] Update `card-color` in a couple more places --- app/views/cards/_closure_toggle.html.erb | 2 +- app/views/cards/show.html.erb | 2 +- app/views/cards/stagings/create.turbo_stream.erb | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/views/cards/_closure_toggle.html.erb b/app/views/cards/_closure_toggle.html.erb index 6ad45c388..0904c02f8 100644 --- a/app/views/cards/_closure_toggle.html.erb +++ b/app/views/cards/_closure_toggle.html.erb @@ -1,4 +1,4 @@ -
+
<% if card.closed? %> Completed by <%= card.closed_by.name %> on <%= local_datetime_tag(card.closed_at, style: :shortdate) %>. <%= button_to card_closure_path(card), method: :delete, class: "btn btn--plain borderless fill-transparent" do %> diff --git a/app/views/cards/show.html.erb b/app/views/cards/show.html.erb index cae272b79..3193e01c2 100644 --- a/app/views/cards/show.html.erb +++ b/app/views/cards/show.html.erb @@ -24,7 +24,7 @@ <%= link_to_back fallback_path: cards_path(collection_id: @card.collection) %> <% if @card.published? && !@card.closed? %> -
+
<%= form_with url: card_engagement_path(@card), method: :delete, data: { controller: "form" } do |form| %> <%= form.label :engagement, value: "considering", class: "btn", aria: { label: "Move to Doing"} do %> diff --git a/app/views/cards/stagings/create.turbo_stream.erb b/app/views/cards/stagings/create.turbo_stream.erb index ca33c37bb..ac3942d6a 100644 --- a/app/views/cards/stagings/create.turbo_stream.erb +++ b/app/views/cards/stagings/create.turbo_stream.erb @@ -2,5 +2,7 @@ <%= render partial: "cards/stagings/stages", locals: { card: @card } %> <% end %> +<%= turbo_stream.set_css_variable dom_id(@card, :card_closure_toggle), name: "--card-color", value: @card.color %> <%= turbo_stream.set_css_variable dom_id(@card, :card_container), name: "--card-color", value: @card.color %> +<%= turbo_stream.set_css_variable dom_id(@card, :card_engagement_toggle), name: "--card-color", value: @card.color %> <%= turbo_stream.set_css_variable dom_id(@card, :ticket), name: "--card-color", value: @card.color %> From 0f103afb123516e1510d5c9b34e083cc7e1bb32f Mon Sep 17 00:00:00 2001 From: Jason Zimdars Date: Fri, 11 Apr 2025 12:56:53 -0500 Subject: [PATCH 07/19] Nicer spacing when the large button isn't present --- app/views/cards/_closure_toggle.html.erb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/cards/_closure_toggle.html.erb b/app/views/cards/_closure_toggle.html.erb index 0904c02f8..246464dc3 100644 --- a/app/views/cards/_closure_toggle.html.erb +++ b/app/views/cards/_closure_toggle.html.erb @@ -1,8 +1,8 @@
<% if card.closed? %> - Completed by <%= card.closed_by.name %> on <%= local_datetime_tag(card.closed_at, style: :shortdate) %>. + Completed by <%= card.closed_by.name %> on <%= local_datetime_tag(card.closed_at, style: :shortdate) %>. <%= button_to card_closure_path(card), method: :delete, class: "btn btn--plain borderless fill-transparent" do %> - Un-do + Un-do <% end %> <% else %>
From 2934eb03f903fab2a2ee9e17e5f9b4cc7a7a4e92 Mon Sep 17 00:00:00 2001 From: Jason Zimdars Date: Fri, 11 Apr 2025 13:04:19 -0500 Subject: [PATCH 08/19] Some actions shouldn't be available to closed cards --- app/views/cards/_image.html.erb | 2 +- app/views/cards/display/common/_assignees.html.erb | 2 +- app/views/cards/display/perma/_tags.html.erb | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/cards/_image.html.erb b/app/views/cards/_image.html.erb index b7b037be1..c1617792e 100644 --- a/app/views/cards/_image.html.erb +++ b/app/views/cards/_image.html.erb @@ -3,7 +3,7 @@ <%= icon_tag "picture-remove" %> Clear background image <% end %> -<% else %> +<% elsif !card.closed? %> <%= form_with model: card, url: collection_card_path(card.collection, card), data: { controller: "form" } do |form| %>