Files
nairobi/app/components/admin/toggle_switch_component.rb
Javi Martín 0d18e25e99 Extract component to render a switch
We're going to use it in other places.
2022-12-28 14:34:00 +01:00

32 lines
601 B
Ruby

class Admin::ToggleSwitchComponent < ApplicationComponent
attr_reader :action, :record, :pressed, :options
alias_method :pressed?, :pressed
def initialize(action, record, pressed:, **options)
@action = action
@record = record
@pressed = pressed
@options = options
end
private
def text
if pressed?
t("shared.yes")
else
t("shared.no")
end
end
def default_options
{
text: text,
method: :patch,
remote: true,
"aria-pressed": pressed?,
form_class: "toggle-switch"
}
end
end