@sms/plugin-meta
Interfaces
ActionSpec
Defined in: packages/plugins/meta/src/types.ts:37
Point action. Opens a model in the given views.
Properties
context?
optional context?: Values;
Defined in: packages/plugins/meta/src/types.ts:47
defaultFilters?
optional defaultFilters?: string[];
Defined in: packages/plugins/meta/src/types.ts:49
Default filters/groupby to activate (search filter names).
domain?
optional domain?: Domain;
Defined in: packages/plugins/meta/src/types.ts:46
groups?
optional groups?: string[];
Defined in: packages/plugins/meta/src/types.ts:51
Only these groups see it.
help?
optional help?: string;
Defined in: packages/plugins/meta/src/types.ts:52
id
id: string;
Defined in: packages/plugins/meta/src/types.ts:38
kind?
optional kind?: string;
Defined in: packages/plugins/meta/src/types.ts:41
‘model’ (default) opens model in views; other kinds are consumer-defined (e.g. ‘report’).
model
model: string;
Defined in: packages/plugins/meta/src/types.ts:42
name
name: string;
Defined in: packages/plugins/meta/src/types.ts:39
target?
optional target?: "current" | "new";
Defined in: packages/plugins/meta/src/types.ts:54
‘new’ opens in a dialog. Default ‘current’.
viewIds?
optional viewIds?: Partial<Record<ViewKind, string>>;
Defined in: packages/plugins/meta/src/types.ts:45
Optional explicit view ids per kind.
views
views: ViewKind[];
Defined in: packages/plugins/meta/src/types.ts:43
CompiledView
Defined in: packages/plugins/meta/src/types.ts:75
A compiled view: base arch with all inherit ops applied.
Properties
arch
arch: ViewNode;
Defined in: packages/plugins/meta/src/types.ts:79
id
id: string;
Defined in: packages/plugins/meta/src/types.ts:76
kind
kind: ViewKind;
Defined in: packages/plugins/meta/src/types.ts:78
model
model: string;
Defined in: packages/plugins/meta/src/types.ts:77
MenuNode
Defined in: packages/plugins/meta/src/types.ts:70
The resolved menu tree.
Extends
Properties
action?
optional action?: string;
Defined in: packages/plugins/meta/src/types.ts:62
Inherited from
children
children: MenuNode[];
Defined in: packages/plugins/meta/src/types.ts:71
color?
optional color?: string;
Defined in: packages/plugins/meta/src/types.ts:65
Inherited from
groups?
optional groups?: string[];
Defined in: packages/plugins/meta/src/types.ts:66
Inherited from
icon?
optional icon?: string;
Defined in: packages/plugins/meta/src/types.ts:64
Inherited from
id
id: string;
Defined in: packages/plugins/meta/src/types.ts:59
Inherited from
label
label: string;
Defined in: packages/plugins/meta/src/types.ts:60
Inherited from
parent?
optional parent?: string;
Defined in: packages/plugins/meta/src/types.ts:61
Inherited from
sequence?
optional sequence?: number;
Defined in: packages/plugins/meta/src/types.ts:63
Inherited from
MenuSpec
Defined in: packages/plugins/meta/src/types.ts:58
Point menu. A root menu (no parent) is an “app”.
Extended by
Properties
action?
optional action?: string;
Defined in: packages/plugins/meta/src/types.ts:62
color?
optional color?: string;
Defined in: packages/plugins/meta/src/types.ts:65
groups?
optional groups?: string[];
Defined in: packages/plugins/meta/src/types.ts:66
icon?
optional icon?: string;
Defined in: packages/plugins/meta/src/types.ts:64
id
id: string;
Defined in: packages/plugins/meta/src/types.ts:59
label
label: string;
Defined in: packages/plugins/meta/src/types.ts:60
parent?
optional parent?: string;
Defined in: packages/plugins/meta/src/types.ts:61
sequence?
optional sequence?: number;
Defined in: packages/plugins/meta/src/types.ts:63
MetaService
Defined in: packages/plugins/meta/src/types.ts:83
The meta key. view() is undefined when nothing was contributed for that model/kind (no defaults).
Methods
action()
action(id): ActionSpec | undefined;
Defined in: packages/plugins/meta/src/types.ts:86
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
ActionSpec | undefined
actions()
actions(): ActionSpec[];
Defined in: packages/plugins/meta/src/types.ts:87
Returns
actionsFor()
actionsFor(model): ActionSpec[];
Defined in: packages/plugins/meta/src/types.ts:88
Parameters
| Parameter | Type |
|---|---|
model | string |
Returns
menu()
menu(id): MenuSpec | undefined;
Defined in: packages/plugins/meta/src/types.ts:91
Parameters
| Parameter | Type |
|---|---|
id | string |
Returns
MenuSpec | undefined
menus()
menus(ctx): MenuNode[];
Defined in: packages/plugins/meta/src/types.ts:90
Menu tree visible to a user with these groups, sorted by sequence then label.
Parameters
| Parameter | Type |
|---|---|
ctx | { groups: string[]; } |
ctx.groups | string[] |
Returns
MenuNode[]
view()
view(
model,
kind,
id?
): CompiledView | undefined;
Defined in: packages/plugins/meta/src/types.ts:84
Parameters
| Parameter | Type |
|---|---|
model | string |
kind | ViewKind |
id? | string |
Returns
CompiledView | undefined
views()
views(model): Partial<Record<ViewKind, CompiledView>>;
Defined in: packages/plugins/meta/src/types.ts:85
Parameters
| Parameter | Type |
|---|---|
model | string |
Returns
Partial<Record<ViewKind, CompiledView>>
ViewNode
Defined in: packages/plugins/meta/src/types.ts:7
View arch: a JSON tree. Tags and attributes are the consumer UI’s vocabulary; the baseline only compiles.
Properties
attrs?
optional attrs?: Record<string, string | number | boolean | string[] | Domain>;
Defined in: packages/plugins/meta/src/types.ts:9
children?
optional children?: ViewNode[];
Defined in: packages/plugins/meta/src/types.ts:10
tag
tag: string;
Defined in: packages/plugins/meta/src/types.ts:8
ViewOp
Defined in: packages/plugins/meta/src/types.ts:29
Patch op for view inheritance. target is a tiny selector: tag, tag[attr=value] or [attr=value],
e.g. field[name=email], page[label=Notes], notebook. First match in document order.
Properties
attrs?
optional attrs?: Record<string, string | number | boolean | string[] | Domain>;
Defined in: packages/plugins/meta/src/types.ts:33
nodes?
optional nodes?: ViewNode[];
Defined in: packages/plugins/meta/src/types.ts:32
position
position: "replace" | "remove" | "before" | "after" | "inside" | "attributes";
Defined in: packages/plugins/meta/src/types.ts:31
target
target: string;
Defined in: packages/plugins/meta/src/types.ts:30
ViewSpec
Defined in: packages/plugins/meta/src/types.ts:14
Point view. Either a base view (arch) or an extension (inherit + ops) of another view id.
Properties
arch?
optional arch?: ViewNode;
Defined in: packages/plugins/meta/src/types.ts:18
id
id: string;
Defined in: packages/plugins/meta/src/types.ts:15
inherit?
optional inherit?: string;
Defined in: packages/plugins/meta/src/types.ts:19
kind
kind: ViewKind;
Defined in: packages/plugins/meta/src/types.ts:17
model
model: string;
Defined in: packages/plugins/meta/src/types.ts:16
ops?
optional ops?: ViewOp[];
Defined in: packages/plugins/meta/src/types.ts:20
priority?
optional priority?: number;
Defined in: packages/plugins/meta/src/types.ts:22
Lower wins when several base views exist for the same model/kind. Default 16.
Type Aliases
ViewKind
type ViewKind = "form" | "list" | "kanban" | "search";
Defined in: packages/plugins/meta/src/types.ts:3
Variables
ACTION_POINT
const ACTION_POINT: "action" = 'action';
Defined in: packages/plugins/meta/src/contract.ts:15
KINDS
const KINDS: ViewKind[];
Defined in: packages/plugins/meta/src/types.ts:4
MENU_POINT
const MENU_POINT: "menu" = 'menu';
Defined in: packages/plugins/meta/src/contract.ts:16
META_KEY
const META_KEY: "meta" = 'meta';
Defined in: packages/plugins/meta/src/contract.ts:13
Key under which the meta plugin provides MetaService.
metaPlugin
const metaPlugin: SystemPlugin;
Defined in: packages/plugins/meta/src/index.ts:68
VIEW_POINT
const VIEW_POINT: "view" = 'view';
Defined in: packages/plugins/meta/src/contract.ts:14
Functions
applyOps()
function applyOps(
arch,
ops,
viewId
): ViewNode;
Defined in: packages/plugins/meta/src/compile.ts:52
Parameters
Returns
buildMenuTree()
function buildMenuTree(input): MenuNode[];
Defined in: packages/plugins/meta/src/menus.ts:44
Parameters
| Parameter | Type |
|---|---|
input | MenuInput |
Returns
MenuNode[]
cloneNode()
function cloneNode(node): ViewNode;
Defined in: packages/plugins/meta/src/selector.ts:61
Parameters
| Parameter | Type |
|---|---|
node | ViewNode |
Returns
compileFromBase()
function compileFromBase(base, all): CompiledView;
Defined in: packages/plugins/meta/src/compile.ts:87
Parameters
Returns
createMetaService()
function createMetaService(regs): MetaService & {
invalidate: void;
};
Defined in: packages/plugins/meta/src/index.ts:35
Parameters
| Parameter | Type |
|---|---|
regs | Registries |
Returns
MetaService & {
invalidate: void;
}
findNode()
function findNode(root, sel): Match | undefined;
Defined in: packages/plugins/meta/src/selector.ts:45
First match in document order (depth-first).
Parameters
| Parameter | Type |
|---|---|
root | ViewNode |
sel | Selector |
Returns
Match | undefined
parseSelector()
function parseSelector(target): Selector;
Defined in: packages/plugins/meta/src/selector.ts:22
Parameters
| Parameter | Type |
|---|---|
target | string |
Returns
Selector
pickBase()
function pickBase(
all,
model,
kind,
id?
): ViewSpec | undefined;
Defined in: packages/plugins/meta/src/compile.ts:59
Pick the base view: lowest priority, ties broken by contribution order.
Parameters
Returns
ViewSpec | undefined
validateAction()
function validateAction(item): asserts item is ActionSpec;
Defined in: packages/plugins/meta/src/validate.ts:57
Parameters
| Parameter | Type |
|---|---|
item | unknown |
Returns
asserts item is ActionSpec
validateMenu()
function validateMenu(item): asserts item is MenuSpec;
Defined in: packages/plugins/meta/src/validate.ts:68
Parameters
| Parameter | Type |
|---|---|
item | unknown |
Returns
asserts item is MenuSpec
validateView()
function validateView(item): asserts item is ViewSpec;
Defined in: packages/plugins/meta/src/validate.ts:37
Parameters
| Parameter | Type |
|---|---|
item | unknown |
Returns
asserts item is ViewSpec