Module: Engine2::ActionAPISupport
- Included in:
- ActionFormSupport, ActionListSupport, Engine2::ActionOnChangeSupport::OnChangeAction, ActionViewSupport, DecodeAction, InfraAction
- Defined in:
- lib/engine2/action.rb
Instance Method Summary collapse
- #config ⇒ Object
- #decorate(list) ⇒ Object
- #field_filter(*flds, filter) ⇒ Object
- #fields(field) ⇒ Object
- #fields!(*fields, options) ⇒ Object
- #hide_fields(*flds) ⇒ Object
- #loc!(hash) ⇒ Object
- #render(field, options) ⇒ Object
- #show_fields(*flds) ⇒ Object
Instance Method Details
#config ⇒ Object
230 231 232 |
# File 'lib/engine2/action.rb', line 230 def config @meta[:config] ||= {} end |
#decorate(list) ⇒ Object
245 246 247 248 249 |
# File 'lib/engine2/action.rb', line 245 def decorate list list.each do |f| fields(f)[:loc] ||= LOCS[f.to_sym] end end |
#field_filter(*flds, filter) ⇒ Object
263 264 265 |
# File 'lib/engine2/action.rb', line 263 def field_filter *flds, filter fields! *flds, filter: filter end |
#fields(field) ⇒ Object
226 227 228 |
# File 'lib/engine2/action.rb', line 226 def fields field (@meta[:fields] ||= {})[field.to_sym] ||= {} end |
#fields!(*fields, options) ⇒ Object
234 235 236 237 238 239 |
# File 'lib/engine2/action.rb', line 234 def fields! *fields, raise E2Error.new("No fields given to info") if fields.empty? fields.each do |field| fields(field).merge! # rmerge ? end end |
#hide_fields(*flds) ⇒ Object
255 256 257 |
# File 'lib/engine2/action.rb', line 255 def hide_fields *flds fields! *flds, hidden: true end |
#loc!(hash) ⇒ Object
241 242 243 |
# File 'lib/engine2/action.rb', line 241 def loc! hash (@meta[:loc] ||= {}).merge! hash end |
#render(field, options) ⇒ Object
251 252 253 |
# File 'lib/engine2/action.rb', line 251 def render field, fields! field, render: end |
#show_fields(*flds) ⇒ Object
259 260 261 |
# File 'lib/engine2/action.rb', line 259 def show_fields *flds fields! *flds, hidden: false end |