Handles all table events for MishkaGervaz.
This module centralizes event handling for:
- Sorting
- Filtering
- Row actions (delete, edit, custom events)
- Bulk actions
- Row expansion
- Archive status changes
- Pagination
Sub-builders
Events functionality is split into specialized sub-builders:
SanitizationHandler- Input sanitizationRecordHandler- Record CRUD operationsSelectionHandler- Selection state managementBulkActionHandler- Bulk action executionHookRunner- Hook executionRelationFilterHandler- Relation filter search/select events
Customization
You can override individual sub-builders via DSL:
mishka_gervaz do
table do
events do
sanitization MyApp.CustomSanitizationHandler
record MyApp.CustomRecordHandler
selection MyApp.CustomSelectionHandler
bulk_action MyApp.CustomBulkActionHandler
hooks MyApp.CustomHookRunner
relation_filter MyApp.CustomRelationFilterHandler
end
end
endOr override the entire Events module:
mishka_gervaz do
table do
events MyApp.CustomEvents
end
endSee MishkaGervaz.Table.Web.Events.SanitizationHandler,
MishkaGervaz.Table.Web.Events.RecordHandler,
MishkaGervaz.Table.Web.Events.SelectionHandler,
MishkaGervaz.Table.Web.Events.BulkActionHandler,
MishkaGervaz.Table.Web.Events.HookRunner,
MishkaGervaz.Table.Web.Events.RelationFilterHandler,
MishkaGervaz.Table.Web.State,
MishkaGervaz.Table.Web.DataLoader,
MishkaGervaz.Table.Web.Live.
Summary
Callbacks
Main event handler dispatcher.
Functions
Main event handler dispatcher.
Types
@type socket() :: Phoenix.LiveView.Socket.t()
@type state() :: MishkaGervaz.Table.Web.State.t()