@wpkernel/ui / ResourceDataViewController
Interface: ResourceDataViewController<TItem, TQuery>
Controller for a ResourceDataView.
Type Parameters
TItem
TItem
TQuery
TQuery
Properties
config
readonly config: ResourceDataViewConfig<TItem, TQuery>;The configuration for the DataView.
deriveViewState()
deriveViewState: (view) => object;Derives the view state from a view.
Parameters
view
View
Returns
object
fields
fields: string[];page
page: number;perPage
perPage: number;filters?
optional filters: Record<string, unknown>;search?
optional search: string;sort?
optional sort: object;sort.direction
direction: "asc" | "desc";sort.field
field: string;emitAction()
emitAction: (payload) => void;Emits an action event.
Parameters
payload
actionId
string
permitted
boolean
selection
(string | number)[]
meta?
Record<string, unknown>
reason?
string
Returns
void
emitBoundaryTransition()
emitBoundaryTransition: (payload) => void;Emits a boundary transition event.
Parameters
payload
Omit<DataViewBoundaryTransitionPayload, "resource">
Returns
void
emitFetchFailed()
emitFetchFailed: (payload) => void;Emits a fetch failed event.
Parameters
payload
Omit<DataViewFetchFailedPayload, "resource">
Returns
void
emitPermissionDenied()
emitPermissionDenied: (payload) => void;Emits a permission denied event.
Parameters
payload
Omit<DataViewPermissionDeniedPayload, "resource">
Returns
void
emitRegistered()
emitRegistered: (preferencesKey) => void;Emits a registered event.
Parameters
preferencesKey
string
Returns
void
emitUnregistered()
emitUnregistered: (preferencesKey) => void;Emits an unregistered event.
Parameters
preferencesKey
string
Returns
void
emitViewChange()
emitViewChange: (view) => void;Emits a view change event.
Parameters
view
View
Returns
void
getReporter()
getReporter: () => Reporter;Gets the reporter for the controller.
Returns
Reporter
loadStoredView()
loadStoredView: () => Promise<View | undefined>;Loads the stored view from preferences.
Returns
Promise<View | undefined>
mapViewToQuery()
mapViewToQuery: (view) => TQuery;Maps the view state to a query.
Parameters
view
View
Returns
TQuery
namespace
readonly namespace: string;The namespace of the project.
preferencesKey
readonly preferencesKey: string;The key for storing preferences.
queryMapping
readonly queryMapping: QueryMapping<TQuery>;A function to map the view state to a query.
resourceName
readonly resourceName: string;The name of the resource.
runtime
readonly runtime: DataViewsControllerRuntime;The runtime for the DataView controller.
saveView()
saveView: (view) => Promise<void>;Saves the view to preferences.
Parameters
view
View
Returns
Promise<void>
capabilities?
readonly optional capabilities: WPKUICapabilityRuntime;The capability runtime.
fetchList()?
readonly optional fetchList: (query) => Promise<ListResponse<TItem>>;A function to fetch a list of items.
Parameters
query
TQuery
Returns
Promise<ListResponse<TItem>>
invalidate()?
readonly optional invalidate: (patterns) => void;A function to invalidate cache entries.
Parameters
patterns
CacheKeyPattern | CacheKeyPattern[]
Returns
void
prefetchList()?
readonly optional prefetchList: (query) => Promise<void>;A function to prefetch a list of items.
Parameters
query
TQuery
Returns
Promise<void>
resource?
readonly optional resource: ResourceObject<TItem, TQuery>;The resource object.
