diff --git a/Gemfile b/Gemfile index b1ed65062..6b7f73887 100644 --- a/Gemfile +++ b/Gemfile @@ -9,7 +9,6 @@ gem "importmap-rails" gem "propshaft" gem "stimulus-rails" gem "turbo-rails" -gem "hotwire_combobox", github: "josefarias/hotwire_combobox", branch: :main # Deployment and drivers gem "bootsnap", require: false diff --git a/Gemfile.lock b/Gemfile.lock index ce707c3f5..00ddfbbd2 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,14 +1,3 @@ -GIT - remote: https://github.com/josefarias/hotwire_combobox.git - revision: c280da0f4b61386729959a28f32fbed728a0c773 - branch: main - specs: - hotwire_combobox (0.3.2) - platform_agent (>= 1.0.1) - rails (>= 7.0.7.2) - stimulus-rails (>= 1.2) - turbo-rails (>= 1.2) - GIT remote: https://github.com/rails/rails.git revision: 5520bd835e3724ffafe3f719f9aafe951567f2f3 @@ -252,9 +241,6 @@ GEM parser (3.3.6.0) ast (~> 2.4.1) racc - platform_agent (1.0.1) - activesupport (>= 5.2.0) - useragent (~> 0.16.3) propshaft (1.1.0) actionpack (>= 7.0.0) activesupport (>= 7.0.0) @@ -428,7 +414,6 @@ DEPENDENCIES debug geared_pagination (~> 1.2) hotwire-spark - hotwire_combobox! importmap-rails jbuilder kamal diff --git a/app/assets/stylesheets/comboboxes.css b/app/assets/stylesheets/comboboxes.css deleted file mode 100644 index 78758c989..000000000 --- a/app/assets/stylesheets/comboboxes.css +++ /dev/null @@ -1,50 +0,0 @@ -:root { - --hw-option-bg-color: var(--color-ink-reversed); - --hw-active-bg-color: var(--color-selected); - --hw-border-color: var(--color-subtle-dark); - --hw-border-radius: 1em; -} - -.hw-combobox { - turbo-frame { - display: inline; - } -} - -.hw-combobox__input { - --hover-size: 0; - - min-inline-size: 15ch; - padding: 0 calc(var(--hw-handle-offset-right) * 2) 0 0; -} - -.hw-combobox__main__wrapper { - --hw-combobox-width: auto; - - accent-color: var(--input-accent-color, var(--color-ink)); - background-color: var(--input-background, transparent); - border-radius: var(--input-border-radius, 0.5em); - border: var(--input-border-size, 1px) solid var(--input-border-color, var(--color-subtle-dark)); - color: var(--input-color, var(--color-ink)); - font-size: max(16px, 1em); - line-height: inherit; - padding: var(--input-padding, 0.2em 0.6em); -} - -.combox-popup { - --panel-border-color: var(--bubble-color); - --panel-border-radius: 2em; - --panel-border-size: 2px; - --panel-padding: 0.4em 1em; - --panel-size: auto; - - inline-size: auto !important; - inset: -2px auto auto 0; - max-inline-size: var(--panel-size) !important; - position: absolute; - z-index: 2; - - &[open] { - display: flex; - } -} diff --git a/app/assets/stylesheets/popup.css b/app/assets/stylesheets/popup.css new file mode 100644 index 000000000..7d343c23d --- /dev/null +++ b/app/assets/stylesheets/popup.css @@ -0,0 +1,14 @@ +.popup { + --panel-border-radius: 2em; + --panel-padding: 0.4em 1em; + --panel-size: auto; + + inset: 0 auto auto 0; + max-inline-size: 30ch; + position: absolute; + z-index: 2; + + &[open] { + display: flex; + } +} diff --git a/app/helpers/combobox_helper.rb b/app/helpers/combobox_helper.rb deleted file mode 100644 index c9bb10c10..000000000 --- a/app/helpers/combobox_helper.rb +++ /dev/null @@ -1,10 +0,0 @@ -module ComboboxHelper - # `hw_combobox_tag` overrides HotwireCombobox's helper to provide default options. - def hw_combobox_tag(...) - super do |combobox| - combobox.customize_main_wrapper class: "btn" - combobox.customize_input data: { autofocus_target: "element" } - yield combobox if block_given? - end - end -end diff --git a/app/models/tag.rb b/app/models/tag.rb index e11391e0b..73f7112e7 100644 --- a/app/models/tag.rb +++ b/app/models/tag.rb @@ -9,8 +9,4 @@ class Tag < ApplicationRecord def hashtag "#" + title end - - def to_combobox_display - title - end end diff --git a/app/models/user.rb b/app/models/user.rb index cceadb922..abb4f0338 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -46,10 +46,6 @@ class User < ApplicationRecord other != self end - def to_combobox_display - name - end - private def deactived_email_address email_address.sub(/@/, "-deactivated-#{SecureRandom.uuid}@") diff --git a/app/views/bubbles/sidebar/_assignment.html.erb b/app/views/bubbles/sidebar/_assignment.html.erb index 5a79d4384..094830816 100644 --- a/app/views/bubbles/sidebar/_assignment.html.erb +++ b/app/views/bubbles/sidebar/_assignment.html.erb @@ -4,12 +4,12 @@ Assign - + Assign this to… <%= form_with url: bucket_bubble_assignment_toggles_path(bubble.bucket, bubble), class: "flex flex-column gap-half full-width", data: { controller: "form" } do |form| %> <% users.sort_by(&:name).each do |user| %> -
+
<%= form.check_box "assignee_id[]", { checked: bubble.assigned_to?(user), data: { action: "change->form#submit" }, @@ -17,7 +17,7 @@ include_hidden: false, }, user.id %> - <%= form.label "assignee_id[]", user.name, for: dom_id(user, :assign) %> + <%= form.label "assignee_id[]", user.name, for: dom_id(user, :assign), class: "overflow-ellipsis" %>
<% end %> <% end %> diff --git a/app/views/bubbles/sidebar/_tag.html.erb b/app/views/bubbles/sidebar/_tag.html.erb index e7deb2245..ff3aadd14 100644 --- a/app/views/bubbles/sidebar/_tag.html.erb +++ b/app/views/bubbles/sidebar/_tag.html.erb @@ -4,7 +4,7 @@ Tag - + Tags this… <%= form_with url: bucket_bubble_tagging_toggles_path(bubble.bucket, bubble), class: "flex gap-half align-centerfull-width" do |form| %> @@ -19,7 +19,7 @@ <%= form_with url: bucket_bubble_tagging_toggles_path(bubble.bucket, bubble), class: "flex flex-column gap-half full-width", data: { controller: "form" } do |form| %> <% tags.sort_by(&:hashtag).each do |tag| %> -
+
<%= form.check_box "tag_id[]", { checked: bubble.tagged_with?(tag), data: { action: "change->form#submit" }, @@ -27,7 +27,7 @@ include_hidden: false, }, tag.id %> - <%= form.label "tag_id[]", tag.hashtag, for: dom_id(tag, :tag) %> + <%= form.label "tag_id[]", tag.hashtag, for: dom_id(tag, :tag), class: "overflow-ellipsis" %>
<% end %> <% end %> diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 57c46dfd5..1778f4ba9 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -12,7 +12,6 @@ <%= csp_meta_tag %> <%= tag.meta name: "current-user-id", content: Current.user.id if Current.user %> - <%= combobox_style_tag %> <%= stylesheet_link_tag :app, "data-turbo-track": "reload" %> <%= javascript_importmap_tags %>