VexClientViewConfig
VexClientViewConfig<
TFieldSlug> =object
Defined in: packages/core/src/collections/types.ts:744
The client-safe projection of a config-source VexViewConfig
(Decision 25): every field except state.where, plus a hidden-filter
summary the UI renders as a lock badge — hasHiddenFilter (whether the
view has a where at all) and hiddenFilterCount (the number of leaf
conditions in its DNF tree, counting through and/or/not).
Built by toClientSavedListViewConfig (collections/savedListViews/toClientSavedListViewConfig.ts),
called CLIENT-SIDE by useSavedListViews (Step 12), straight off
collection.admin.views (and admin.view, the resolved default) as
read from the bundled VexClientConfig — that object IS directly
imported into client JS (P-004), so state.where already shipped to the
browser as plain text before this function ever runs. toClientSavedListViewConfig
doesn’t keep where out of the bundle; it keeps UI CODE from reading
it, so the filter builder, chips, and every other control only ever see
hasHiddenFilter/hiddenFilterCount. Step 7’s listViews query never
touches a config-source (or default) view at all — it returns shared
views only. To actually QUERY a config/default view, the list passes
the RAW VexViewConfig (not this type) to composeSavedListViewWhere.
shared and local views need no client projection — their where is
the caller’s own and travels as a full VexStoredView / local
VexViewConfig.
Type Parameters
Section titled “Type Parameters”TFieldSlug
Section titled “TFieldSlug”TFieldSlug extends string = string
Union of this collection’s field slugs.
Properties
Section titled “Properties”description?
Section titled “description?”
optionaldescription?:string
Defined in: packages/core/src/collections/types.ts:747
hasHiddenFilter
Section titled “hasHiddenFilter”hasHiddenFilter:
boolean
Defined in: packages/core/src/collections/types.ts:749
hiddenFilterCount
Section titled “hiddenFilterCount”hiddenFilterCount:
number
Defined in: packages/core/src/collections/types.ts:750
name:
string
Defined in: packages/core/src/collections/types.ts:746
state:
VexClientViewState<TFieldSlug>
Defined in: packages/core/src/collections/types.ts:748
viewId
Section titled “viewId”viewId:
string
Defined in: packages/core/src/collections/types.ts:745