@synergy-client/types 0.1.0 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +108 -20
- package/dist/module-api.js +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
export type ViewType = 'list' | 'detail' | 'other' | 'worker' | 'static' | 'select' | 'component' | 'print';
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
export type ItemType = 'objectField' | 'field' | 'advancedComponent' | 'dynamic' | 'tabs' | 'tab' | 'radio' | 'file' | 'img' | 'text' | 'dynamicList' | 'dynamicTable' | 'group' | 'card' | 'progress' | 'calendar' | 'link' | 'button' | 'tablePart' | 'tableField' | 'select' | 'viewList';
|
|
3
|
+
export type FieldType = 'object' | 'text' | 'number' | 'enum' | 'boolean' | 'date' | 'datetime' | 'time' | 'textarea';
|
|
4
|
+
export type ToolbarPosition = 'top' | 'bottom' | 'none';
|
|
5
|
+
export type ToolbarButtonsPosition = 'left' | 'right' | 'middle' | 'none';
|
|
6
6
|
/** A form element (field, group, table, button, ...). */
|
|
7
7
|
export interface ViewItem {
|
|
8
8
|
id: string;
|
|
9
|
-
type:
|
|
9
|
+
type: ItemType;
|
|
10
10
|
name: string;
|
|
11
11
|
label: string;
|
|
12
12
|
labelPosition: 'left' | 'top' | 'none';
|
|
13
13
|
groupType?: 'toolbar' | 'collapsible';
|
|
14
14
|
tagName?: string;
|
|
15
|
+
tagRef?: any;
|
|
15
16
|
multiType: boolean;
|
|
16
17
|
multiTypeVariant: 'common' | 'objects';
|
|
17
18
|
fieldPath: string;
|
|
@@ -19,44 +20,96 @@ export interface ViewItem {
|
|
|
19
20
|
dataLinked?: boolean;
|
|
20
21
|
dataPath?: string;
|
|
21
22
|
defaultValue?: any;
|
|
22
|
-
fieldType:
|
|
23
|
+
fieldType: FieldType;
|
|
24
|
+
valueTypes?: any;
|
|
25
|
+
selectView?: any;
|
|
23
26
|
viewAttribute: boolean;
|
|
24
|
-
ref:
|
|
27
|
+
ref: string | string[] | null;
|
|
25
28
|
required: boolean;
|
|
26
29
|
visible: boolean;
|
|
27
30
|
translate: boolean;
|
|
28
31
|
newRow: boolean;
|
|
32
|
+
noGreed?: boolean;
|
|
29
33
|
fieldCols: number;
|
|
30
34
|
labelCols: number;
|
|
31
35
|
contentCols: number | null;
|
|
32
36
|
itemOffset: number;
|
|
33
37
|
dataType: 'string' | 'integer' | 'decimal' | 'date' | 'enum';
|
|
34
38
|
dateType: 'date' | 'datetime' | 'time';
|
|
39
|
+
detailView: any;
|
|
35
40
|
disabled: boolean;
|
|
41
|
+
/** Render slot key (for slot-based group items). */
|
|
42
|
+
slot?: string;
|
|
36
43
|
options?: any;
|
|
37
44
|
format: string | null;
|
|
38
45
|
filter?: any;
|
|
46
|
+
filters?: any;
|
|
47
|
+
lang: any;
|
|
39
48
|
switch?: boolean;
|
|
40
49
|
maxLength: string | null;
|
|
41
50
|
numberPrecision: string | null;
|
|
42
51
|
numberScale: string | null;
|
|
43
52
|
onChange: string | null;
|
|
44
53
|
placeholder: string | null;
|
|
54
|
+
component?: any;
|
|
45
55
|
icon: string;
|
|
46
56
|
tooltip?: any;
|
|
47
57
|
classes: string | null;
|
|
48
58
|
styles: string | null;
|
|
49
59
|
inputClasses: string | null;
|
|
50
60
|
inputStyles: string | null;
|
|
61
|
+
browseText?: any;
|
|
62
|
+
accept?: any;
|
|
63
|
+
noDrop?: boolean;
|
|
51
64
|
multiple?: boolean;
|
|
65
|
+
appObjectId?: any;
|
|
52
66
|
showTotals?: boolean;
|
|
67
|
+
disableSorting?: boolean;
|
|
68
|
+
disableRowset?: boolean;
|
|
69
|
+
hideToolbar?: boolean;
|
|
70
|
+
hideActions?: boolean;
|
|
53
71
|
usePagination?: boolean;
|
|
54
72
|
rowsLimit?: number;
|
|
55
73
|
maxHeight?: number;
|
|
56
74
|
selectBtn?: boolean;
|
|
57
75
|
openBtn?: boolean;
|
|
58
76
|
addBtn?: boolean;
|
|
77
|
+
hyperLink?: boolean;
|
|
78
|
+
beforeSelect?: any;
|
|
79
|
+
maxRows?: number;
|
|
80
|
+
rowsCount?: number;
|
|
81
|
+
variant?: string;
|
|
82
|
+
pill?: boolean;
|
|
83
|
+
squared?: boolean;
|
|
84
|
+
block?: boolean;
|
|
85
|
+
toggleGroup?: any;
|
|
86
|
+
itemIcon?: any;
|
|
87
|
+
max?: any;
|
|
88
|
+
textVariant?: any;
|
|
89
|
+
bgVariant?: any;
|
|
59
90
|
attrs: any;
|
|
91
|
+
/** Server function name invoked on select. */
|
|
92
|
+
onSelect?: string | null;
|
|
93
|
+
/** Detail-view route path for reference fields. */
|
|
94
|
+
detailPath?: string | null;
|
|
95
|
+
/** Referenced component id (for advancedComponent items). */
|
|
96
|
+
componentId?: string;
|
|
97
|
+
selectType?: string;
|
|
98
|
+
/** Render key. */
|
|
99
|
+
key?: string;
|
|
100
|
+
/** Dynamic-parameter payload (advanced components). */
|
|
101
|
+
parameter?: any;
|
|
102
|
+
parameterId?: string;
|
|
103
|
+
/** Totals row config (list/table parts). */
|
|
104
|
+
isTotal?: boolean;
|
|
105
|
+
totalFunc?: string | null;
|
|
106
|
+
totalExp?: string | null;
|
|
107
|
+
valueString?: any;
|
|
108
|
+
valueNumber?: any;
|
|
109
|
+
valueBoolean?: any;
|
|
110
|
+
valueDate?: any;
|
|
111
|
+
valueObject?: any;
|
|
112
|
+
valueRef?: any;
|
|
60
113
|
/** Nested items (for groups/tables). */
|
|
61
114
|
items?: ViewItem[];
|
|
62
115
|
}
|
|
@@ -96,24 +149,38 @@ export interface ObjectField {
|
|
|
96
149
|
name: string;
|
|
97
150
|
title: string;
|
|
98
151
|
ref: string | string[] | null;
|
|
99
|
-
lang
|
|
152
|
+
lang: any;
|
|
100
153
|
type: string | null;
|
|
101
|
-
filter
|
|
102
|
-
format
|
|
154
|
+
filter: string | null;
|
|
155
|
+
format: string | null;
|
|
156
|
+
leadingAlias: any;
|
|
103
157
|
primaryKey: boolean;
|
|
104
158
|
leading: boolean;
|
|
159
|
+
decryptable: boolean;
|
|
105
160
|
multiType: boolean;
|
|
106
161
|
multiTypeVariant: 'common' | 'objects';
|
|
107
|
-
defaultValue
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
162
|
+
defaultValue: any;
|
|
163
|
+
standard?: any;
|
|
164
|
+
dbName: string;
|
|
165
|
+
dateType: string;
|
|
166
|
+
notNull: boolean;
|
|
167
|
+
autoIncrement: boolean;
|
|
168
|
+
unique: boolean;
|
|
169
|
+
index: boolean;
|
|
170
|
+
password: boolean;
|
|
111
171
|
isTablePart: boolean;
|
|
112
172
|
model?: string;
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
173
|
+
role: string | null;
|
|
174
|
+
fullSearch: boolean;
|
|
175
|
+
fullName?: string;
|
|
176
|
+
typeOptions: any;
|
|
177
|
+
virtual: boolean;
|
|
178
|
+
comment: string | null;
|
|
179
|
+
confidential?: boolean;
|
|
180
|
+
confidentialRoleId?: string | null;
|
|
116
181
|
fields?: ObjectField[];
|
|
182
|
+
get: any;
|
|
183
|
+
set: any;
|
|
117
184
|
}
|
|
118
185
|
/** A toolbar button/group. */
|
|
119
186
|
export interface ToolbarItem {
|
|
@@ -130,18 +197,27 @@ export interface ToolbarItem {
|
|
|
130
197
|
hidden: boolean;
|
|
131
198
|
tooltip?: string;
|
|
132
199
|
type?: string;
|
|
133
|
-
click?:
|
|
200
|
+
click?: Function;
|
|
201
|
+
/** Server function name invoked on click (resolved via serverFunc). */
|
|
202
|
+
onClick?: string;
|
|
203
|
+
/** i18n overrides (lang.title[langCode], ...). */
|
|
204
|
+
lang?: any;
|
|
134
205
|
items?: ToolbarItem[];
|
|
135
206
|
}
|
|
136
207
|
export interface Toolbar {
|
|
137
|
-
position:
|
|
138
|
-
buttonsPosition:
|
|
208
|
+
position: ToolbarPosition;
|
|
209
|
+
buttonsPosition: ToolbarButtonsPosition;
|
|
139
210
|
classes: string | null;
|
|
140
211
|
styles: string | null;
|
|
141
212
|
items: ToolbarItem[];
|
|
142
213
|
staticItems: ToolbarItem[];
|
|
143
214
|
commonCommands: ToolbarItem[];
|
|
144
215
|
}
|
|
216
|
+
export interface SortBy {
|
|
217
|
+
key: string;
|
|
218
|
+
order?: 'asc' | 'desc' | string;
|
|
219
|
+
sortByOrig?: any;
|
|
220
|
+
}
|
|
145
221
|
/** List/table view data (list and select forms). */
|
|
146
222
|
export interface ListViewTable {
|
|
147
223
|
items: any[];
|
|
@@ -174,6 +250,18 @@ export interface Router {
|
|
|
174
250
|
forward(): void;
|
|
175
251
|
go(delta: number): void;
|
|
176
252
|
}
|
|
253
|
+
/** onCreate / onMount / afterConfirm / afterMarkedToDelete / afterDelete / onBeforeDestroy. */
|
|
254
|
+
export type ModuleHook = () => void | Promise<void>;
|
|
255
|
+
/** beforeWrite / beforeConfirm / beforeMarkedToDelete / beforeDelete — set params.cancel to abort. */
|
|
256
|
+
export type CancelableHook = (params: {
|
|
257
|
+
cancel: boolean;
|
|
258
|
+
}) => void | Promise<void>;
|
|
259
|
+
/** afterWrite — receives { close } (optional; also called with no args). */
|
|
260
|
+
export type AfterWriteHook = (options?: {
|
|
261
|
+
close?: boolean;
|
|
262
|
+
}) => void | Promise<void>;
|
|
263
|
+
/** setCustomStage — override the business-process stage. */
|
|
264
|
+
export type SetCustomStageHook = (process: any) => any | Promise<any>;
|
|
177
265
|
/** Entity data store (useStore('object'), or a view's `store`). */
|
|
178
266
|
export interface Store {
|
|
179
267
|
findByPk(payload?: any): Promise<any>;
|
package/dist/module-api.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const moduleApiDts = "type ViewType = 'list' | 'detail' | 'other' | 'worker' | 'static' | 'select' | 'component' | 'print';\
|
|
1
|
+
export const moduleApiDts = "type ViewType = 'list' | 'detail' | 'other' | 'worker' | 'static' | 'select' | 'component' | 'print';\ntype ItemType = 'objectField' | 'field' | 'advancedComponent' | 'dynamic' | 'tabs' | 'tab' | 'radio' | 'file' | 'img' | 'text' | 'dynamicList' | 'dynamicTable' | 'group' | 'card' | 'progress' | 'calendar' | 'link' | 'button' | 'tablePart' | 'tableField' | 'select' | 'viewList';\ntype FieldType = 'object' | 'text' | 'number' | 'enum' | 'boolean' | 'date' | 'datetime' | 'time' | 'textarea';\ntype ToolbarPosition = 'top' | 'bottom' | 'none';\ntype ToolbarButtonsPosition = 'left' | 'right' | 'middle' | 'none';\n/** A form element (field, group, table, button, ...). */\ninterface ViewItem {\n id: string;\n type: ItemType;\n name: string;\n label: string;\n labelPosition: 'left' | 'top' | 'none';\n groupType?: 'toolbar' | 'collapsible';\n tagName?: string;\n tagRef?: any;\n multiType: boolean;\n multiTypeVariant: 'common' | 'objects';\n fieldPath: string;\n fieldTypePath?: string;\n dataLinked?: boolean;\n dataPath?: string;\n defaultValue?: any;\n fieldType: FieldType;\n valueTypes?: any;\n selectView?: any;\n viewAttribute: boolean;\n ref: string | string[] | null;\n required: boolean;\n visible: boolean;\n translate: boolean;\n newRow: boolean;\n noGreed?: boolean;\n fieldCols: number;\n labelCols: number;\n contentCols: number | null;\n itemOffset: number;\n dataType: 'string' | 'integer' | 'decimal' | 'date' | 'enum';\n dateType: 'date' | 'datetime' | 'time';\n detailView: any;\n disabled: boolean;\n /** Render slot key (for slot-based group items). */\n slot?: string;\n options?: any;\n format: string | null;\n filter?: any;\n filters?: any;\n lang: any;\n switch?: boolean;\n maxLength: string | null;\n numberPrecision: string | null;\n numberScale: string | null;\n onChange: string | null;\n placeholder: string | null;\n component?: any;\n icon: string;\n tooltip?: any;\n classes: string | null;\n styles: string | null;\n inputClasses: string | null;\n inputStyles: string | null;\n browseText?: any;\n accept?: any;\n noDrop?: boolean;\n multiple?: boolean;\n appObjectId?: any;\n showTotals?: boolean;\n disableSorting?: boolean;\n disableRowset?: boolean;\n hideToolbar?: boolean;\n hideActions?: boolean;\n usePagination?: boolean;\n rowsLimit?: number;\n maxHeight?: number;\n selectBtn?: boolean;\n openBtn?: boolean;\n addBtn?: boolean;\n hyperLink?: boolean;\n beforeSelect?: any;\n maxRows?: number;\n rowsCount?: number;\n variant?: string;\n pill?: boolean;\n squared?: boolean;\n block?: boolean;\n toggleGroup?: any;\n itemIcon?: any;\n max?: any;\n textVariant?: any;\n bgVariant?: any;\n attrs: any;\n /** Server function name invoked on select. */\n onSelect?: string | null;\n /** Detail-view route path for reference fields. */\n detailPath?: string | null;\n /** Referenced component id (for advancedComponent items). */\n componentId?: string;\n selectType?: string;\n /** Render key. */\n key?: string;\n /** Dynamic-parameter payload (advanced components). */\n parameter?: any;\n parameterId?: string;\n /** Totals row config (list/table parts). */\n isTotal?: boolean;\n totalFunc?: string | null;\n totalExp?: string | null;\n valueString?: any;\n valueNumber?: any;\n valueBoolean?: any;\n valueDate?: any;\n valueObject?: any;\n valueRef?: any;\n /** Nested items (for groups/tables). */\n items?: ViewItem[];\n}\n/** A view attribute (form-level field, not bound to the object). */\ninterface ViewAttribute {\n id: string;\n title: string;\n name: string;\n type: 'field' | 'tableField' | 'dynamicTable' | null;\n dataType: string | null;\n standard?: boolean;\n multiType: boolean;\n multiTypeVariant: 'common' | 'objects';\n typeOptions?: any;\n dateType: string;\n defaultValue?: any;\n format: string | null;\n ref: string | string[] | null;\n lang?: any;\n tableName?: string | null;\n childs: ViewAttribute[];\n}\ninterface ViewAttributeTreeItem extends Omit<ViewAttribute, 'id' | 'childs'> {\n attrId: string;\n path: string;\n fullName: string;\n fullPath: string;\n fullTitle: string;\n expanded?: boolean;\n viewAttribute?: boolean;\n dependent: boolean;\n childs: ViewAttributeTreeItem[];\n}\n/** A field of an app object (catalog/document/register). */\ninterface ObjectField {\n id: string;\n name: string;\n title: string;\n ref: string | string[] | null;\n lang: any;\n type: string | null;\n filter: string | null;\n format: string | null;\n leadingAlias: any;\n primaryKey: boolean;\n leading: boolean;\n decryptable: boolean;\n multiType: boolean;\n multiTypeVariant: 'common' | 'objects';\n defaultValue: any;\n standard?: any;\n dbName: string;\n dateType: string;\n notNull: boolean;\n autoIncrement: boolean;\n unique: boolean;\n index: boolean;\n password: boolean;\n isTablePart: boolean;\n model?: string;\n role: string | null;\n fullSearch: boolean;\n fullName?: string;\n typeOptions: any;\n virtual: boolean;\n comment: string | null;\n confidential?: boolean;\n confidentialRoleId?: string | null;\n fields?: ObjectField[];\n get: any;\n set: any;\n}\n/** A toolbar button/group. */\ninterface ToolbarItem {\n id: string;\n title: string;\n icon?: string | null;\n presentation: string;\n variant: string;\n size: string;\n disabled: boolean;\n visible: boolean;\n systemDisabled: boolean;\n systemVisible: boolean;\n hidden: boolean;\n tooltip?: string;\n type?: string;\n click?: Function;\n /** Server function name invoked on click (resolved via serverFunc). */\n onClick?: string;\n /** i18n overrides (lang.title[langCode], ...). */\n lang?: any;\n items?: ToolbarItem[];\n}\ninterface Toolbar {\n position: ToolbarPosition;\n buttonsPosition: ToolbarButtonsPosition;\n classes: string | null;\n styles: string | null;\n items: ToolbarItem[];\n staticItems: ToolbarItem[];\n commonCommands: ToolbarItem[];\n}\ninterface SortBy {\n key: string;\n order?: 'asc' | 'desc' | string;\n sortByOrig?: any;\n}\n/** List/table view data (list and select forms). */\ninterface ListViewTable {\n items: any[];\n fields: any[];\n total: number;\n page: number;\n limit: number;\n filters: Record<string, any>;\n sort: SortBy[];\n folders: {\n items: any[];\n expanded: any[];\n };\n}\n/** Current route (vue-router). */\ninterface Route {\n path: string;\n fullPath: string;\n name?: string | symbol | null;\n params: Record<string, any>;\n query: Record<string, any>;\n hash: string;\n meta: Record<string, any>;\n}\n/** Router instance (vue-router). */\ninterface Router {\n push(to: any): Promise<any>;\n replace(to: any): Promise<any>;\n back(): void;\n forward(): void;\n go(delta: number): void;\n}\n/** onCreate / onMount / afterConfirm / afterMarkedToDelete / afterDelete / onBeforeDestroy. */\ntype ModuleHook = () => void | Promise<void>;\n/** beforeWrite / beforeConfirm / beforeMarkedToDelete / beforeDelete — set params.cancel to abort. */\ntype CancelableHook = (params: {\n cancel: boolean;\n}) => void | Promise<void>;\n/** afterWrite — receives { close } (optional; also called with no args). */\ntype AfterWriteHook = (options?: {\n close?: boolean;\n}) => void | Promise<void>;\n/** setCustomStage — override the business-process stage. */\ntype SetCustomStageHook = (process: any) => any | Promise<any>;\n/** Entity data store (useStore('object'), or a view's `store`). */\ninterface Store {\n findByPk(payload?: any): Promise<any>;\n findAll(payload?: any): Promise<any>;\n count(payload?: any): Promise<number>;\n create(payload?: any): Promise<any>;\n createItem(payload?: any): Promise<any>;\n update(payload?: any): Promise<any>;\n updateItem(payload?: any): Promise<any>;\n delete(payload?: any): Promise<any>;\n deleteItem(payload?: any): Promise<any>;\n addNewItem(payload?: any): Promise<any>;\n changeDeletionMark(payload?: any): Promise<any>;\n getView(): {\n object: any;\n attrs: any;\n objectMeta: any;\n };\n}";
|
package/package.json
CHANGED