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
247 248 249 |
# File 'lib/engine2/action.rb', line 247 def config @meta[:config] ||= {} end |
#decorate(list) ⇒ Object
262 263 264 265 266 |
# File 'lib/engine2/action.rb', line 262 def decorate list list.each do |f| fields(f)[:loc] ||= LOCS[f.to_sym] end end |
#field_filter(*flds, filter) ⇒ Object
280 281 282 |
# File 'lib/engine2/action.rb', line 280 def field_filter *flds, filter fields! *flds, filter: filter end |
#fields(field) ⇒ Object
243 244 245 |
# File 'lib/engine2/action.rb', line 243 def fields field (@meta[:fields] ||= {})[field.to_sym] ||= {} end |
#fields!(*fields, options) ⇒ Object
251 252 253 254 255 256 |
# File 'lib/engine2/action.rb', line 251 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
272 273 274 |
# File 'lib/engine2/action.rb', line 272 def hide_fields *flds fields! *flds, hidden: true end |
#loc!(hash) ⇒ Object
258 259 260 |
# File 'lib/engine2/action.rb', line 258 def loc! hash (@meta[:loc] ||= {}).merge! hash end |
#render(field, options) ⇒ Object
268 269 270 |
# File 'lib/engine2/action.rb', line 268 def render field, fields! field, render: end |
#show_fields(*flds) ⇒ Object
276 277 278 |
# File 'lib/engine2/action.rb', line 276 def show_fields *flds fields! *flds, hidden: false end |