MishkaGervaz.ResourceInfo (MishkaGervaz v0.0.1-alpha.2)

Copy Markdown View Source

Delegate module for resource introspection.

Provides a single entry point for reading both table and form configuration. For direct access use MishkaGervaz.Resource.Info.Table or MishkaGervaz.Resource.Info.Form.

Naming convention

Every delegate follows the same rule:

  • table_<fn> — delegates to MishkaGervaz.Resource.Info.Table.<fn> with the exact same name.
  • form_<fn> — delegates to MishkaGervaz.Resource.Info.Form.<fn> with the exact same name.

No unprefixed shortcuts, no renames, no suffixes. If you find an accessor on Info.Table named x, the delegate here is table_x. Same for Form.

Examples

# Table — top-level / structural
ResourceInfo.table_config(MyResource)
ResourceInfo.table_columns(MyResource)
ResourceInfo.table_filters(MyResource)
ResourceInfo.table_pagination(MyResource)
ResourceInfo.table_hooks(MyResource)
ResourceInfo.table_route(MyResource)

# Table — chrome / notices / archive / features
ResourceInfo.table_header(MyResource)
ResourceInfo.table_footer(MyResource)
ResourceInfo.table_notices(MyResource)
ResourceInfo.table_archive_enabled?(MyResource)
ResourceInfo.table_features(MyResource)

# Table — overridable pillars
ResourceInfo.table_state(MyResource)
ResourceInfo.table_events(MyResource)
ResourceInfo.table_data_loader(MyResource)

# Form — top-level / structural
ResourceInfo.form_config(MyResource)
ResourceInfo.form_fields(MyResource)
ResourceInfo.form_groups(MyResource)
ResourceInfo.form_steps(MyResource)
ResourceInfo.form_hooks(MyResource)
ResourceInfo.form_route(MyResource)

# Form — chrome / notices / component / JS hooks
ResourceInfo.form_header(MyResource)
ResourceInfo.form_notices(MyResource)
ResourceInfo.form_component_id(MyResource)
ResourceInfo.form_js_hook(MyResource, :on_save)

# Form — overridable pillars
ResourceInfo.form_state(MyResource)
ResourceInfo.form_events(MyResource)
ResourceInfo.form_data_loader(MyResource)

Not delegated (internal-only)

These accessors are intentionally not exposed here — they are framework-internal and only meaningful inside the dispatcher / hook runner / query builder. Call them on the info modules directly if needed:

Summary

Functions

Functions

form_action_for(resource, type, master?)

See MishkaGervaz.Resource.Info.Form.action_for/3.

form_all_preloads(resource, master?)

See MishkaGervaz.Resource.Info.Form.all_preloads/2.

form_component_id(resource)

See MishkaGervaz.Resource.Info.Form.component_id/1.

form_config(resource)

See MishkaGervaz.Resource.Info.Form.config/1.

form_data_loader(resource)

See MishkaGervaz.Resource.Info.Form.data_loader/1.

form_detected_preloads(resource)

See MishkaGervaz.Resource.Info.Form.detected_preloads/1.

form_events(resource)

See MishkaGervaz.Resource.Info.Form.events/1.

form_field(resource, name)

See MishkaGervaz.Resource.Info.Form.field/2.

form_field_order(resource)

See MishkaGervaz.Resource.Info.Form.field_order/1.

form_fields(resource)

See MishkaGervaz.Resource.Info.Form.fields/1.

form_footer(resource)

See MishkaGervaz.Resource.Info.Form.footer/1.

form_groups(resource)

See MishkaGervaz.Resource.Info.Form.groups/1.

form_header(resource)

See MishkaGervaz.Resource.Info.Form.header/1.

form_hooks(resource)

See MishkaGervaz.Resource.Info.Form.hooks/1.

form_js_hook(resource, name)

See MishkaGervaz.Resource.Info.Form.js_hook/2.

form_layout(resource)

See MishkaGervaz.Resource.Info.Form.layout/1.

form_navigation(resource)

See MishkaGervaz.Resource.Info.Form.navigation/1.

form_notice(resource, name)

See MishkaGervaz.Resource.Info.Form.notice/2.

form_notices(resource)

See MishkaGervaz.Resource.Info.Form.notices/1.

form_notices_at(resource, position)

See MishkaGervaz.Resource.Info.Form.notices_at/2.

form_persistence(resource)

See MishkaGervaz.Resource.Info.Form.persistence/1.

form_route(resource)

See MishkaGervaz.Resource.Info.Form.route/1.

form_state(resource)

See MishkaGervaz.Resource.Info.Form.state/1.

form_step(resource, name)

See MishkaGervaz.Resource.Info.Form.step/2.

form_step_groups(resource, step_name)

See MishkaGervaz.Resource.Info.Form.step_groups/2.

form_steps(resource)

See MishkaGervaz.Resource.Info.Form.steps/1.

form_stream_name(resource)

See MishkaGervaz.Resource.Info.Form.stream_name/1.

form_submit(resource)

See MishkaGervaz.Resource.Info.Form.submit/1.

form_uploads(resource)

See MishkaGervaz.Resource.Info.Form.uploads/1.

table_action_for(resource, type, master?)

See MishkaGervaz.Resource.Info.Table.action_for/3.

table_all_preloads(resource, master?)

See MishkaGervaz.Resource.Info.Table.all_preloads/2.

table_archive_action_for(resource, type, master?)

See MishkaGervaz.Resource.Info.Table.archive_action_for/3.

table_archive_enabled?(resource)

See MishkaGervaz.Resource.Info.Table.archive_enabled?/1.

table_bulk_actions(resource)

See MishkaGervaz.Resource.Info.Table.bulk_actions/1.

table_column(resource, name)

See MishkaGervaz.Resource.Info.Table.column/2.

table_column_order(resource)

See MishkaGervaz.Resource.Info.Table.column_order/1.

table_columns(resource)

See MishkaGervaz.Resource.Info.Table.columns/1.

table_config(resource)

See MishkaGervaz.Resource.Info.Table.config/1.

table_data_loader(resource)

See MishkaGervaz.Resource.Info.Table.data_loader/1.

table_detected_preloads(resource)

See MishkaGervaz.Resource.Info.Table.detected_preloads/1.

table_events(resource)

See MishkaGervaz.Resource.Info.Table.events/1.

table_feature_enabled?(resource, feature)

See MishkaGervaz.Resource.Info.Table.feature_enabled?/2.

table_features(resource)

See MishkaGervaz.Resource.Info.Table.features/1.

table_filter(resource, name)

See MishkaGervaz.Resource.Info.Table.filter/2.

table_filter_group(resource, name)

See MishkaGervaz.Resource.Info.Table.filter_group/2.

table_filter_groups(resource)

See MishkaGervaz.Resource.Info.Table.filter_groups/1.

table_filter_mode(resource)

See MishkaGervaz.Resource.Info.Table.filter_mode/1.

table_filters(resource)

See MishkaGervaz.Resource.Info.Table.filters/1.

table_footer(resource)

See MishkaGervaz.Resource.Info.Table.footer/1.

table_header(resource)

See MishkaGervaz.Resource.Info.Table.header/1.

table_hooks(resource)

See MishkaGervaz.Resource.Info.Table.hooks/1.

table_layout(resource)

See MishkaGervaz.Resource.Info.Table.layout/1.

table_max_page_size(resource)

See MishkaGervaz.Resource.Info.Table.max_page_size/1.

table_notice(resource, name)

See MishkaGervaz.Resource.Info.Table.notice/2.

table_notices(resource)

See MishkaGervaz.Resource.Info.Table.notices/1.

table_notices_at(resource, position)

See MishkaGervaz.Resource.Info.Table.notices_at/2.

table_page_size(resource)

See MishkaGervaz.Resource.Info.Table.page_size/1.

table_page_size_options(resource)

See MishkaGervaz.Resource.Info.Table.page_size_options/1.

table_pagination(resource)

See MishkaGervaz.Resource.Info.Table.pagination/1.

table_pagination_enabled?(resource)

See MishkaGervaz.Resource.Info.Table.pagination_enabled?/1.

table_pagination_type(resource)

See MishkaGervaz.Resource.Info.Table.pagination_type/1.

table_pagination_ui(resource)

See MishkaGervaz.Resource.Info.Table.pagination_ui/1.

table_refresh(resource)

See MishkaGervaz.Resource.Info.Table.refresh/1.

table_route(resource)

See MishkaGervaz.Resource.Info.Table.route/1.

table_row_action(resource, name)

See MishkaGervaz.Resource.Info.Table.row_action/2.

table_row_actions(resource)

See MishkaGervaz.Resource.Info.Table.row_actions/1.

table_state(resource)

See MishkaGervaz.Resource.Info.Table.state/1.

table_stream_name(resource)

See MishkaGervaz.Resource.Info.Table.stream_name/1.

table_url_sync(resource)

See MishkaGervaz.Resource.Info.Table.url_sync/1.