diff --git a/Gemfile.lock b/Gemfile.lock index 97d0f54..031ca6b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - turbo_material (0.1.9) + turbo_material (0.2.0) importmap-rails (~> 2.0.1) rails (~> 7.1, >= 7.1.2) stimulus-rails (~> 1.3) diff --git a/app/assets/javascripts/turbo_material/material_select_controller.js b/app/assets/javascripts/turbo_material/material_select_controller.js index 9459eb6..943fe9e 100644 --- a/app/assets/javascripts/turbo_material/material_select_controller.js +++ b/app/assets/javascripts/turbo_material/material_select_controller.js @@ -1,10 +1,17 @@ import { Controller } from "@hotwired/stimulus"; export default class extends Controller { - connect() { - const select = mdc.select.MDCSelect.attachTo(this.element) - } + connect() { + const select = mdc.select.MDCSelect.attachTo(this.element); + select.listen("MDCSelect:change", () => { + select.root.dispatchEvent( + new CustomEvent("submit-now", { + bubbles: true, + cancelable: true, + }), + ); + }); + } - disconnect() { - } + disconnect() {} } diff --git a/app/views/components/_select.html.erb b/app/views/components/_select.html.erb index 8d783f7..5b72e11 100644 --- a/app/views/components/_select.html.erb +++ b/app/views/components/_select.html.erb @@ -1,5 +1,5 @@ -<%# locals: (form:, disabled: false, required: false, name:, label: nil, id:, checked: false, value: nil, parent: nil, frame: nil, selected_text: nil, fixed: false, options: [], hint: nil, helper: nil, additional_classes: 'w-full') %> -
+
data-frame="<%= frame %>"<% end %> id="<%= id %>"> <%= form.hidden_field name.to_sym, value: value %>
aria-disabled="true"<% end %> <% if required %>aria-required="true"<% end %> > + <%- if outlined -%> - <%- if label -%> - <%= label || name.capitalize %> + <%- if label -%><%= label || name.capitalize %><%- end -%> + <%- else -%> + + + + <%- if label -%><%= label || name.capitalize %><%- end -%> + + + <%- end -%> @@ -37,7 +45,7 @@ - + <%- unless outlined -%><%- end -%>
diff --git a/lib/turbo_material/version.rb b/lib/turbo_material/version.rb index a8cb5dd..bf1ed6c 100644 --- a/lib/turbo_material/version.rb +++ b/lib/turbo_material/version.rb @@ -1,3 +1,3 @@ module TurboMaterial - VERSION = "0.1.9" + VERSION = "0.2.0" end