Funicular::Component class of PicoRuby
Include
Type aliases
suspense_definition
{ loader: untyped, on_resolve: untyped, min_delay: Integer? }
Singleton methods
allow_dsl_override
Funicular::Component.allow_dsl_override(*Symbol names) -> void
dsl_overrides
Funicular::Component.dsl_overrides() -> Array[Symbol]
new
Funicular::Component.new(?Hash[Symbol, untyped] props) -> void
method_added
Funicular::Component.method_added(Symbol name) -> void
style_accessor_class
Funicular::Component.style_accessor_class() -> singleton(StyleAccessor)
styles
Funicular::Component.styles() { (StyleBuilder) -> void } -> void
styles_definitions
Funicular::Component.styles_definitions() -> Hash[Symbol, Hash[Symbol, untyped]]
suspense_definitions
Funicular::Component.suspense_definitions() -> Hash[Symbol, suspense_definition]
use_suspense
Funicular::Component.use_suspense(Symbol name, untyped loader, ?on_resolve: untyped, ?min_delay: Integer) -> void
validate_dsl_conflicts!
Funicular::Component.validate_dsl_conflicts!() -> void
Instance methods
view
instance.__view__() -> ViewContext
add_child_from_view
instance.add_child_from_view(untyped child) -> void
add_via
instance.add_via(String element_id, String from, String to, ?duration: Integer) ?{ () -> void } -> void
bind_events
instance.bind_events(JS::Element dom_element, VDOM::VNode | VDOM::Text | nil vnode) -> void
build_button_to
instance.build_button_to(ViewContext h, String path, ?method: Symbol, **untyped options) ?{ () -> untyped } -> VDOM::Element
build_form_for
instance.build_form_for(ViewContext h, Symbol model_key, ?Hash[Symbol, untyped] options) { (FormBuilder) -> void } -> VDOM::Element
build_link_to
instance.build_link_to(ViewContext h, String path, **untyped options) ?{ () -> untyped } -> VDOM::Element
build_vdom
instance.build_vdom() -> (VDOM::VNode | VDOM::Text | nil)
button_to
instance.button_to(String path, ?method: Symbol, **untyped options) ?{ -> untyped } -> VDOM::Element
cleanup_watches
instance.cleanup_watches() -> nil
collect_refs
instance.collect_refs(JS::Element dom_element, VDOM::VNode | VDOM::Text | nil vnode, ?Hash[Symbol, JS::Element] refs_map) -> Hash[Symbol, JS::Element]
component
instance.component(singleton(Component) component_class, ?Hash[Symbol, untyped] props) ?{ () -> untyped } -> VDOM::Component
component_mounted
instance.component_mounted() -> void
component_raised
instance.component_raised(Exception e) -> void
component_unmounted
instance.component_unmounted() -> void
component_updated
instance.component_updated() -> void
component_will_mount
instance.component_will_mount() -> void
component_will_unmount
instance.component_will_unmount() -> void
component_will_update
instance.component_will_update() -> void
evaluate_watch
instance.evaluate_watch(Symbol key, untyped block) -> nil
form_for
instance.form_for(Symbol model_key, ?Hash[Symbol, untyped] options) { (FormBuilder) -> void } -> VDOM::Element
hydrate
instance.hydrate(JS::Element dom_element) -> void
initialize_state
instance.initialize_state() -> Hash[Symbol, untyped]
link_to
instance.link_to(String path, **untyped options) ?{ -> untyped } -> VDOM::Element
load_single_suspense
instance.load_single_suspense(Symbol name, ?suspense_definition? definition) -> void
load_suspense_data
instance.load_suspense_data() -> void
mount
instance.mount(JS::Element container) -> void
navigation_guard
instance.navigation_guard() -> String?
normalize_vnode_for_view
instance.normalize_vnode_for_view(untyped value) -> (VDOM::Element | VDOM::Text | VDOM::Component | nil)
patch
instance.patch(Hash[Symbol, untyped] new_state) -> void
reload_suspense
instance.reload_suspense(Symbol name) -> void
remove_via
instance.remove_via(String element_id, String from, String to, ?duration: Integer) ?{ () -> void } -> void
render
instance.render() -> (VDOM::VNode | String | Integer | Float | Array[untyped] | nil)
render_suspense
instance.render_suspense(Symbol name, fallback: untyped, ?error: untyped) { (ResourceAccessor) -> untyped } -> untyped
report_handler_error
instance.report_handler_error(String event_name, String handler, StandardError error) -> void
resources
instance.resources() -> ResourceAccessor
routes
instance.routes() -> untyped
seed_state
instance.seed_state(Hash[untyped, untyped]? state_hash) -> self
state
instance.state() -> StateAccessor
styles
instance.styles() -> StyleAccessor
suspense
instance.suspense(Symbol name, fallback: untyped, ?error: untyped) { (ResourceAccessor) -> untyped } -> untyped
suspense_error
instance.suspense_error(Symbol name) -> untyped
suspense_error?
instance.suspense_error?(Symbol name) -> bool
suspense_loading?
instance.suspense_loading?(*Symbol names) -> bool
unmount
instance.unmount() -> void
watch
instance.watch(Symbol key) { () -> untyped } -> nil
Attr accessors
props (accessor)
instance.props -> Hash[Symbol, untyped]
vdom (accessor)
instance.vdom -> VDOM::VNode | VDOM::Text | nil
dom_element (accessor)
instance.dom_element -> JS::Element
mounted (accessor)
instance.mounted -> bool
runtime (accessor)
instance.runtime -> Runtime
children (accessor)
instance.children -> Array[VDOM::child_t]
current_children (accessor)
instance.current_children -> Array[VDOM::child_t]?
refs (reader)
instance.refs -> Hash[Symbol, JS::Element]