Sha256: 25b750a67b1eba3ac9d5995b9c8836919361489ba6dc8b58efa089c71aad0f04

Contents?: true

Size: 933 Bytes

Versions: 22

Compression:

Stored size: 933 Bytes

Contents

# frozen_string_literal: true

class Avo::Fields::BooleanGroupField::EditComponent < Avo::Fields::EditComponent
  def initialize(...)
    super(...)

    # Initilize here to avoid multiple calls to @field.get_html for each option.
    @classes = "w-4 h-4 rounded checked:bg-primary-400 focus:checked:!bg-primary-400" \
      "#{@field.get_html(:classes, view: view, element: :input)}"
    @data = @field.get_html(:data, view: view, element: :input)
    @style = @field.get_html(:style, view: view, element: :input)
    @form_scope = @form.object_name
  end

  # Get the state of each checkboxe from either the form that returns a validation error or from the model itself.
  def checked?(id)
    if params[@form_scope].present? && params[@form_scope][@field.id.to_s].present?
      params[@form_scope][@field.id.to_s].include?(id.to_s)
    elsif @field.value.present?
      @field.value.with_indifferent_access[id]
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
avo-3.13.5 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.13.4 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.13.3 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.13.2 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.13.1 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.13.0 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.12.0 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.10 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.9 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.8 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.7 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.6 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.5 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.4 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.3 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.2 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.1 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.11.0 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.10.10 app/components/avo/fields/boolean_group_field/edit_component.rb
avo-3.10.9 app/components/avo/fields/boolean_group_field/edit_component.rb