Class: HakumiComponents::ComponentHandler
- Inherits:
-
Object
- Object
- HakumiComponents::ComponentHandler
- Extended by:
- T::Sig
- Defined in:
- app/services/hakumi_components/component_handler.rb
Constant Summary collapse
- InputParams =
T.type_alias { T.any(ActionController::Parameters, Types::HtmlAttributes) }
- LocalsHash =
T.untyped values: locals are passed as Rails view locals, which accept any object. The coerce_local_value method ensures only safe primitive values and containers pass through.
T.type_alias { T::Hash[Symbol, T.untyped] }
- UnsafeLocalValue =
T.let(Object.new.freeze, Object)
- COMPONENT_CLASSES =
T.let({ admin_panel: HakumiComponents::AdminPanel::Component, affix: HakumiComponents::Affix::Component, alert: HakumiComponents::Alert::Component, calendar: HakumiComponents::Calendar::Component, confirm: HakumiComponents::Modal::Confirm::Component, drawer: HakumiComponents::Drawer::Component, message: HakumiComponents::Message::Component, modal: HakumiComponents::Modal::Component, notification: HakumiComponents::Notification::Component, popconfirm: HakumiComponents::Popconfirm::Component, popover: HakumiComponents::Popover::Component, progress: HakumiComponents::Progress::Component, qr_code: HakumiComponents::QrCode::Component, result: HakumiComponents::Result::Component, segmented: HakumiComponents::Segmented::Component, skeleton: HakumiComponents::Skeleton::Component, spin: HakumiComponents::Spin::Component, statistic: HakumiComponents::Statistic::Component, table: HakumiComponents::Table::Component, tag: HakumiComponents::Tag::Component, timeline: HakumiComponents::Timeline::Component, transfer: HakumiComponents::Transfer::Component, tree: HakumiComponents::Tree::Component }.freeze, T::Hash[Symbol, T.class_of(ViewComponent::Base)])
Instance Method Summary collapse
-
#initialize(component, params) ⇒ ComponentHandler
constructor
A new instance of ComponentHandler.
- #locals ⇒ Object
Constructor Details
#initialize(component, params) ⇒ ComponentHandler
Returns a new instance of ComponentHandler.
41 42 43 44 |
# File 'app/services/hakumi_components/component_handler.rb', line 41 def initialize(component, params) @component = T.let(component.to_sym, Symbol) @params = T.let(params, InputParams) end |
Instance Method Details
#locals ⇒ Object
47 48 49 |
# File 'app/services/hakumi_components/component_handler.rb', line 47 def locals base_locals.merge(specific_locals) end |