diff --git a/lib/ruby_ui/combobox/combobox_checkbox.rb b/lib/ruby_ui/combobox/combobox_checkbox.rb index e3806d83..db49d217 100644 --- a/lib/ruby_ui/combobox/combobox_checkbox.rb +++ b/lib/ruby_ui/combobox/combobox_checkbox.rb @@ -13,7 +13,8 @@ def default_attrs class: [ "peer h-4 w-4 shrink-0 rounded-sm border border-primary ring-offset-background accent-primary", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2", - "disabled:cursor-not-allowed disabled:opacity-50" + "disabled:cursor-not-allowed disabled:opacity-50", + "aria-disabled:cursor-not-allowed aria-disabled:opacity-50 aria-disabled:pointer-events-none" ], data: { ruby_ui__combobox_target: "input", diff --git a/lib/ruby_ui/combobox/combobox_radio.rb b/lib/ruby_ui/combobox/combobox_radio.rb index d27c7dae..c174afef 100644 --- a/lib/ruby_ui/combobox/combobox_radio.rb +++ b/lib/ruby_ui/combobox/combobox_radio.rb @@ -10,7 +10,13 @@ def view_template def default_attrs { - class: "aspect-square h-4 w-4 rounded-full border border-primary accent-primary text-primary shadow focus:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50", + class: [ + "aspect-square h-4 w-4 rounded-full border border-primary accent-primary text-primary shadow", + "focus:outline-none", + "focus-visible:ring-1 focus-visible:ring-ring", + "disabled:cursor-not-allowed disabled:opacity-50", + "aria-disabled:cursor-not-allowed aria-disabled:opacity-50 aria-disabled:pointer-events-none" + ], data: { ruby_ui__combobox_target: "input", ruby_ui__form_field_target: "input", diff --git a/lib/ruby_ui/combobox/combobox_search_input.rb b/lib/ruby_ui/combobox/combobox_search_input.rb index 84c1fb77..6515668c 100644 --- a/lib/ruby_ui/combobox/combobox_search_input.rb +++ b/lib/ruby_ui/combobox/combobox_search_input.rb @@ -19,16 +19,22 @@ def view_template def default_attrs { type: "search", - class: "flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none border-none focus:ring-0 placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50", role: "searchbox", + autocorrect: "off", + autocomplete: "off", + spellcheck: "false", placeholder: @placeholder, + class: [ + "flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none border-none", + "focus:ring-0", + "placeholder:text-muted-foreground", + "disabled:cursor-not-allowed disabled:opacity-50", + "aria-disabled:cursor-not-allowed aria-disabled:opacity-50 aria-disabled:pointer-events-none" + ], data: { ruby_ui__combobox_target: "searchInput", action: "keyup->ruby-ui--combobox#filterItems search->ruby-ui--combobox#filterItems" - }, - autocomplete: "off", - autocorrect: "off", - spellcheck: "false" + } } end diff --git a/lib/ruby_ui/combobox/combobox_toggle_all_checkbox.rb b/lib/ruby_ui/combobox/combobox_toggle_all_checkbox.rb index 5ac8beca..01a6e811 100644 --- a/lib/ruby_ui/combobox/combobox_toggle_all_checkbox.rb +++ b/lib/ruby_ui/combobox/combobox_toggle_all_checkbox.rb @@ -13,7 +13,8 @@ def default_attrs class: [ "peer h-4 w-4 shrink-0 rounded-sm border border-primary ring-offset-background accent-primary", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2", - "disabled:cursor-not-allowed disabled:opacity-50" + "disabled:cursor-not-allowed disabled:opacity-50", + "aria-disabled:cursor-not-allowed aria-disabled:opacity-50 aria-disabled:pointer-events-none" ], data: { ruby_ui__combobox_target: "toggleAll", diff --git a/lib/ruby_ui/combobox/combobox_trigger.rb b/lib/ruby_ui/combobox/combobox_trigger.rb index 93fc9a98..be32a761 100644 --- a/lib/ruby_ui/combobox/combobox_trigger.rb +++ b/lib/ruby_ui/combobox/combobox_trigger.rb @@ -21,7 +21,13 @@ def view_template def default_attrs { type: "button", - class: "flex h-full w-full items-center whitespace-nowrap rounded-md text-sm ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 border border-input bg-background hover:bg-accent hover:text-accent-foreground h-10 px-4 py-2 justify-between", + class: [ + "flex h-full w-full items-center whitespace-nowrap rounded-md text-sm ring-offset-background transition-colors border border-input bg-background h-10 px-4 py-2 justify-between", + "hover:bg-accent hover:text-accent-foreground", + "disabled:pointer-events-none disabled:opacity-50", + "aria-disabled:pointer-events-none aria-disabled:opacity-50 aria-disabled:cursor-not-allowed", + "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2" + ], data: { placeholder: @placeholder, ruby_ui__combobox_target: "trigger",