Class: Formatic::Base

Inherits:
ApplicationComponent show all
Defined in:
app/components/formatic/base.rb

Overview

All inputs inherit from this class.

Direct Known Subclasses

Checklist, Date, Select, Stepper, String, Textarea, Time, Toggle

Instance Method Summary collapse

Methods inherited from ApplicationComponent

#initialize

Constructor Details

This class inherits a constructor from Formatic::ApplicationComponent

Instance Method Details

#input_nameObject

# Name of the URL param for this input.



70
71
72
# File 'app/components/formatic/base.rb', line 70

def input_name
  "#{param_key}[#{attribute_name}]"
end

#param_keyObject

Name of the URL param for this record.



65
66
67
# File 'app/components/formatic/base.rb', line 65

def param_key
  f.object.model_name.param_key
end

#valueObject



54
55
56
57
58
# File 'app/components/formatic/base.rb', line 54

def value
  return manual_value if manual_value != :_fetch_from_record

  f.object.public_send(attribute_name) if f.object.respond_to?(attribute_name)
end

#wrapperObject



41
42
43
44
45
46
47
48
49
50
51
52
# File 'app/components/formatic/base.rb', line 41

def wrapper
  @wrapper ||= ::Formatic::Wrapper.new(
    f:,
    attribute_name:,
    label:,
    hint:,
    required:,
    prevent_submit_on_enter:,
    label_for_id:,
    class: wrapper_class
  )
end