@yongdall/server 0.1.0 → 0.1.2
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/hooks.yongdall.mjs +1 -1
- package/index.d.mts +151 -150
- package/index.mjs +1 -1
- package/package.json +1 -1
- package/{server-D1Ye9ylc.mjs → server-Mh81eCJ5.mjs} +25 -8
- package/server-Mh81eCJ5.mjs.map +1 -0
- package/server-D1Ye9ylc.mjs.map +0 -1
package/hooks.yongdall.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as Menu_default, i as Application_default, n as Database_default, r as Page_default, t as FormLayout_default } from "./server-
|
|
1
|
+
import { a as Menu_default, i as Application_default, n as Database_default, r as Page_default, t as FormLayout_default } from "./server-Mh81eCJ5.mjs";
|
|
2
2
|
|
|
3
3
|
//#region packages/server/hooks/index.mjs
|
|
4
4
|
/** @import { Hooks } from '@yongdall/core' */
|
package/index.d.mts
CHANGED
|
@@ -1,180 +1,181 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as imodel95 from "imodel";
|
|
2
2
|
import * as _yongdall_model8 from "@yongdall/model";
|
|
3
3
|
|
|
4
4
|
//#region packages/server/models/Application.d.mts
|
|
5
5
|
declare const _default: _yongdall_model8.ModelTable<{
|
|
6
|
-
label:
|
|
7
|
-
company:
|
|
8
|
-
title:
|
|
9
|
-
id:
|
|
10
|
-
domain:
|
|
11
|
-
port:
|
|
12
|
-
path:
|
|
13
|
-
default:
|
|
14
|
-
singleDefault:
|
|
15
|
-
theme:
|
|
16
|
-
skin:
|
|
17
|
-
authenticator:
|
|
18
|
-
authRequired:
|
|
19
|
-
logo:
|
|
20
|
-
type:
|
|
21
|
-
https:
|
|
22
|
-
help:
|
|
23
|
-
menus:
|
|
24
|
-
id:
|
|
25
|
-
groupType:
|
|
26
|
-
group:
|
|
27
|
-
no:
|
|
28
|
-
type:
|
|
29
|
-
level:
|
|
30
|
-
label:
|
|
31
|
-
icon:
|
|
32
|
-
image:
|
|
33
|
-
color:
|
|
34
|
-
title:
|
|
35
|
-
description:
|
|
36
|
-
page:
|
|
37
|
-
path:
|
|
38
|
-
uri:
|
|
39
|
-
command:
|
|
40
|
-
script:
|
|
41
|
-
refType:
|
|
42
|
-
refId:
|
|
43
|
-
refMode:
|
|
44
|
-
permission:
|
|
45
|
-
collapsed:
|
|
46
|
-
autoLogin:
|
|
47
|
-
applicationId:
|
|
6
|
+
label: imodel95.FieldDefine<"string", false, false>;
|
|
7
|
+
company: imodel95.FieldDefine<"string", false, false>;
|
|
8
|
+
title: imodel95.FieldDefine<"string", false, false>;
|
|
9
|
+
id: imodel95.FieldDefine<"uuid", false, false>;
|
|
10
|
+
domain: imodel95.FieldDefine<"string", false, false>;
|
|
11
|
+
port: imodel95.FieldDefine<"i32", false, false>;
|
|
12
|
+
path: imodel95.FieldDefine<"string", false, false>;
|
|
13
|
+
default: imodel95.FieldDefine<"bool", false, false>;
|
|
14
|
+
singleDefault: imodel95.FieldDefine<"bool", false, false>;
|
|
15
|
+
theme: imodel95.FieldDefine<"string", false, false>;
|
|
16
|
+
skin: imodel95.FieldDefine<"string", false, false>;
|
|
17
|
+
authenticator: imodel95.FieldDefine<"string", false, false>;
|
|
18
|
+
authRequired: imodel95.FieldDefine<"bool", false, false>;
|
|
19
|
+
logo: imodel95.FieldDefine<"text", false, false>;
|
|
20
|
+
type: imodel95.FieldDefine<"string", false, false>;
|
|
21
|
+
https: imodel95.FieldDefine<"bool", false, false>;
|
|
22
|
+
help: imodel95.FieldDefine<"text", false, true>;
|
|
23
|
+
menus: imodel95.FieldDefine<_yongdall_model8.ModelTable<{
|
|
24
|
+
id: imodel95.FieldDefine<"uuid", false, false>;
|
|
25
|
+
groupType: imodel95.FieldDefine<"string", false, false>;
|
|
26
|
+
group: imodel95.FieldDefine<"text", false, false>;
|
|
27
|
+
no: imodel95.FieldDefine<"i32", false, false>;
|
|
28
|
+
type: imodel95.FieldDefine<"string", false, false>;
|
|
29
|
+
level: imodel95.FieldDefine<"i16", false, false>;
|
|
30
|
+
label: imodel95.FieldDefine<"string", false, false>;
|
|
31
|
+
icon: imodel95.FieldDefine<"string", false, false>;
|
|
32
|
+
image: imodel95.FieldDefine<"text", false, false>;
|
|
33
|
+
color: imodel95.FieldDefine<"string", false, false>;
|
|
34
|
+
title: imodel95.FieldDefine<"string", false, false>;
|
|
35
|
+
description: imodel95.FieldDefine<"text", false, false>;
|
|
36
|
+
page: imodel95.FieldDefine<"text", false, false>;
|
|
37
|
+
path: imodel95.FieldDefine<"text", false, false>;
|
|
38
|
+
uri: imodel95.FieldDefine<"text", false, false>;
|
|
39
|
+
command: imodel95.FieldDefine<"text", false, false>;
|
|
40
|
+
script: imodel95.FieldDefine<"text", false, false>;
|
|
41
|
+
refType: imodel95.FieldDefine<"string", false, false>;
|
|
42
|
+
refId: imodel95.FieldDefine<"string", false, false>;
|
|
43
|
+
refMode: imodel95.FieldDefine<"string", false, false>;
|
|
44
|
+
permission: imodel95.FieldDefine<"text", false, false>;
|
|
45
|
+
collapsed: imodel95.FieldDefine<"bool", false, false>;
|
|
46
|
+
autoLogin: imodel95.FieldDefine<"bool", false, false>;
|
|
47
|
+
applicationId: imodel95.FieldDefine<"string", false, false>;
|
|
48
48
|
}, "menu">, true, false>;
|
|
49
|
-
userMenus:
|
|
50
|
-
applicationId:
|
|
51
|
-
no:
|
|
52
|
-
type:
|
|
53
|
-
level:
|
|
54
|
-
label:
|
|
55
|
-
page:
|
|
56
|
-
path:
|
|
57
|
-
uri:
|
|
58
|
-
command:
|
|
59
|
-
logged:
|
|
49
|
+
userMenus: imodel95.FieldDefine<_yongdall_model8.ModelTable<{
|
|
50
|
+
applicationId: imodel95.FieldDefine<"uuid", false, false>;
|
|
51
|
+
no: imodel95.FieldDefine<"i32", false, false>;
|
|
52
|
+
type: imodel95.FieldDefine<"string", false, false>;
|
|
53
|
+
level: imodel95.FieldDefine<"i16", false, false>;
|
|
54
|
+
label: imodel95.FieldDefine<"string", false, false>;
|
|
55
|
+
page: imodel95.FieldDefine<"text", false, false>;
|
|
56
|
+
path: imodel95.FieldDefine<"text", false, false>;
|
|
57
|
+
uri: imodel95.FieldDefine<"text", false, false>;
|
|
58
|
+
command: imodel95.FieldDefine<"text", false, false>;
|
|
59
|
+
logged: imodel95.FieldDefine<"bool", false, false>;
|
|
60
60
|
}, "application.userMenu">, true, false>;
|
|
61
|
-
description:
|
|
61
|
+
description: imodel95.FieldDefine<"text", false, false>;
|
|
62
62
|
}, "application">;
|
|
63
63
|
//#endregion
|
|
64
64
|
//#region packages/server/models/Menu.d.mts
|
|
65
65
|
declare const _default$3: _yongdall_model8.ModelTable<{
|
|
66
|
-
id:
|
|
67
|
-
groupType:
|
|
68
|
-
group:
|
|
69
|
-
no:
|
|
70
|
-
type:
|
|
71
|
-
level:
|
|
72
|
-
label:
|
|
73
|
-
icon:
|
|
74
|
-
image:
|
|
75
|
-
color:
|
|
76
|
-
title:
|
|
77
|
-
description:
|
|
78
|
-
page:
|
|
79
|
-
path:
|
|
80
|
-
uri:
|
|
81
|
-
command:
|
|
82
|
-
script:
|
|
83
|
-
refType:
|
|
84
|
-
refId:
|
|
85
|
-
refMode:
|
|
86
|
-
permission:
|
|
87
|
-
collapsed:
|
|
88
|
-
autoLogin:
|
|
89
|
-
applicationId:
|
|
66
|
+
id: imodel95.FieldDefine<"uuid", false, false>;
|
|
67
|
+
groupType: imodel95.FieldDefine<"string", false, false>;
|
|
68
|
+
group: imodel95.FieldDefine<"text", false, false>;
|
|
69
|
+
no: imodel95.FieldDefine<"i32", false, false>;
|
|
70
|
+
type: imodel95.FieldDefine<"string", false, false>;
|
|
71
|
+
level: imodel95.FieldDefine<"i16", false, false>;
|
|
72
|
+
label: imodel95.FieldDefine<"string", false, false>;
|
|
73
|
+
icon: imodel95.FieldDefine<"string", false, false>;
|
|
74
|
+
image: imodel95.FieldDefine<"text", false, false>;
|
|
75
|
+
color: imodel95.FieldDefine<"string", false, false>;
|
|
76
|
+
title: imodel95.FieldDefine<"string", false, false>;
|
|
77
|
+
description: imodel95.FieldDefine<"text", false, false>;
|
|
78
|
+
page: imodel95.FieldDefine<"text", false, false>;
|
|
79
|
+
path: imodel95.FieldDefine<"text", false, false>;
|
|
80
|
+
uri: imodel95.FieldDefine<"text", false, false>;
|
|
81
|
+
command: imodel95.FieldDefine<"text", false, false>;
|
|
82
|
+
script: imodel95.FieldDefine<"text", false, false>;
|
|
83
|
+
refType: imodel95.FieldDefine<"string", false, false>;
|
|
84
|
+
refId: imodel95.FieldDefine<"string", false, false>;
|
|
85
|
+
refMode: imodel95.FieldDefine<"string", false, false>;
|
|
86
|
+
permission: imodel95.FieldDefine<"text", false, false>;
|
|
87
|
+
collapsed: imodel95.FieldDefine<"bool", false, false>;
|
|
88
|
+
autoLogin: imodel95.FieldDefine<"bool", false, false>;
|
|
89
|
+
applicationId: imodel95.FieldDefine<"string", false, false>;
|
|
90
90
|
}, "menu">;
|
|
91
91
|
//#endregion
|
|
92
92
|
//#region packages/server/models/Page.d.mts
|
|
93
93
|
declare const _default$4: _yongdall_model8.ModelTable<{
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
94
|
+
applicationId: imodel95.FieldDefine<"uuid", false, true>;
|
|
95
|
+
model: imodel95.FieldDefine<"string", false, false>;
|
|
96
|
+
organization: imodel95.FieldDefine<"string", false, false>;
|
|
97
|
+
user: imodel95.FieldDefine<"string", false, false>;
|
|
98
|
+
workspace: imodel95.FieldDefine<"string", false, false>;
|
|
99
|
+
page: imodel95.FieldDefine<"string", false, false>;
|
|
100
|
+
widget: imodel95.FieldDefine<"string", false, false>;
|
|
101
|
+
label: imodel95.FieldDefine<"string", false, false>;
|
|
102
|
+
title: imodel95.FieldDefine<"string", false, false>;
|
|
103
|
+
titlePattern: imodel95.FieldDefine<"string", false, false>;
|
|
104
|
+
current: imodel95.FieldDefine<"bool", false, false>;
|
|
105
|
+
id: imodel95.FieldDefine<"uuid", false, false>;
|
|
106
|
+
config: imodel95.FieldDefine<"json", false, false>;
|
|
107
|
+
defaultQuery: imodel95.FieldDefine<"string", false, false>;
|
|
108
|
+
hiddenFilter: imodel95.FieldDefine<"string", false, false>;
|
|
109
|
+
fields: imodel95.FieldDefine<_yongdall_model8.ModelTable<{
|
|
110
|
+
pageId: imodel95.FieldDefine<"uuid", false, false>;
|
|
111
|
+
no: imodel95.FieldDefine<"i16", false, false>;
|
|
112
|
+
field: imodel95.FieldDefine<"string", false, false>;
|
|
113
|
+
label: imodel95.FieldDefine<"string", false, false>;
|
|
114
|
+
width: imodel95.FieldDefine<"string", false, false>;
|
|
114
115
|
}, "page.field">, true, false>;
|
|
115
|
-
filters:
|
|
116
|
-
pageId:
|
|
117
|
-
no:
|
|
118
|
-
field:
|
|
119
|
-
operator:
|
|
116
|
+
filters: imodel95.FieldDefine<_yongdall_model8.ModelTable<{
|
|
117
|
+
pageId: imodel95.FieldDefine<"uuid", false, false>;
|
|
118
|
+
no: imodel95.FieldDefine<"i16", false, false>;
|
|
119
|
+
field: imodel95.FieldDefine<"string", false, false>;
|
|
120
|
+
operator: imodel95.FieldDefine<"string", false, false>;
|
|
120
121
|
}, "page.filter">, true, false>;
|
|
121
|
-
forms:
|
|
122
|
-
pageId:
|
|
123
|
-
type:
|
|
124
|
-
no:
|
|
125
|
-
layoutId:
|
|
126
|
-
mode:
|
|
122
|
+
forms: imodel95.FieldDefine<_yongdall_model8.ModelTable<{
|
|
123
|
+
pageId: imodel95.FieldDefine<"uuid", false, false>;
|
|
124
|
+
type: imodel95.FieldDefine<"string", false, false>;
|
|
125
|
+
no: imodel95.FieldDefine<"i16", false, false>;
|
|
126
|
+
layoutId: imodel95.FieldDefine<"uuid", false, false>;
|
|
127
|
+
mode: imodel95.FieldDefine<"string", false, false>;
|
|
127
128
|
}, "page.form">, true, false>;
|
|
128
|
-
menus:
|
|
129
|
-
pageId:
|
|
130
|
-
no:
|
|
131
|
-
type:
|
|
132
|
-
level:
|
|
133
|
-
label:
|
|
134
|
-
icon:
|
|
135
|
-
color:
|
|
136
|
-
title:
|
|
137
|
-
description:
|
|
138
|
-
page:
|
|
139
|
-
path:
|
|
140
|
-
uri:
|
|
141
|
-
command:
|
|
142
|
-
script:
|
|
143
|
-
permission:
|
|
129
|
+
menus: imodel95.FieldDefine<_yongdall_model8.ModelTable<{
|
|
130
|
+
pageId: imodel95.FieldDefine<"uuid", false, false>;
|
|
131
|
+
no: imodel95.FieldDefine<"i16", false, false>;
|
|
132
|
+
type: imodel95.FieldDefine<"string", false, false>;
|
|
133
|
+
level: imodel95.FieldDefine<"i16", false, false>;
|
|
134
|
+
label: imodel95.FieldDefine<"string", false, false>;
|
|
135
|
+
icon: imodel95.FieldDefine<"string", false, false>;
|
|
136
|
+
color: imodel95.FieldDefine<"string", false, false>;
|
|
137
|
+
title: imodel95.FieldDefine<"string", false, false>;
|
|
138
|
+
description: imodel95.FieldDefine<"text", false, false>;
|
|
139
|
+
page: imodel95.FieldDefine<"text", false, false>;
|
|
140
|
+
path: imodel95.FieldDefine<"text", false, false>;
|
|
141
|
+
uri: imodel95.FieldDefine<"text", false, false>;
|
|
142
|
+
command: imodel95.FieldDefine<"text", false, false>;
|
|
143
|
+
script: imodel95.FieldDefine<"text", false, false>;
|
|
144
|
+
permission: imodel95.FieldDefine<"text", false, false>;
|
|
144
145
|
}, "page.menu">, true, false>;
|
|
145
|
-
sides:
|
|
146
|
-
pageId:
|
|
147
|
-
no:
|
|
148
|
-
widget:
|
|
149
|
-
options:
|
|
146
|
+
sides: imodel95.FieldDefine<_yongdall_model8.ModelTable<{
|
|
147
|
+
pageId: imodel95.FieldDefine<"uuid", false, false>;
|
|
148
|
+
no: imodel95.FieldDefine<"i16", false, false>;
|
|
149
|
+
widget: imodel95.FieldDefine<"string", false, false>;
|
|
150
|
+
options: imodel95.FieldDefine<"string", false, false>;
|
|
150
151
|
}, "page.sider">, true, false>;
|
|
151
|
-
description:
|
|
152
|
-
createdAt:
|
|
153
|
-
updatedAt:
|
|
152
|
+
description: imodel95.FieldDefine<"text", false, false>;
|
|
153
|
+
createdAt: imodel95.FieldDefine<"timestamp", false, false>;
|
|
154
|
+
updatedAt: imodel95.FieldDefine<"timestamp", false, false>;
|
|
154
155
|
}, "page">;
|
|
155
156
|
//#endregion
|
|
156
157
|
//#region packages/server/models/Database.d.mts
|
|
157
158
|
declare const _default$1: _yongdall_model8.ModelTable<{
|
|
158
|
-
id:
|
|
159
|
-
type:
|
|
160
|
-
label:
|
|
161
|
-
name:
|
|
162
|
-
uri:
|
|
163
|
-
createdAt:
|
|
164
|
-
updatedAt:
|
|
159
|
+
id: imodel95.FieldDefine<"uuid", false, false>;
|
|
160
|
+
type: imodel95.FieldDefine<"string", false, false>;
|
|
161
|
+
label: imodel95.FieldDefine<"string", false, false>;
|
|
162
|
+
name: imodel95.FieldDefine<"string", false, false>;
|
|
163
|
+
uri: imodel95.FieldDefine<"string", false, false>;
|
|
164
|
+
createdAt: imodel95.FieldDefine<"timestamp", false, false>;
|
|
165
|
+
updatedAt: imodel95.FieldDefine<"timestamp", false, false>;
|
|
165
166
|
}, "database">;
|
|
166
167
|
//#endregion
|
|
167
168
|
//#region packages/server/models/FormLayout.d.mts
|
|
168
169
|
declare const _default$2: _yongdall_model8.ModelTable<{
|
|
169
|
-
id:
|
|
170
|
-
label:
|
|
171
|
-
modelId:
|
|
172
|
-
default:
|
|
173
|
-
type:
|
|
174
|
-
layout:
|
|
175
|
-
description:
|
|
176
|
-
createdAt:
|
|
177
|
-
updatedAt:
|
|
170
|
+
id: imodel95.FieldDefine<"uuid", false, false>;
|
|
171
|
+
label: imodel95.FieldDefine<"string", false, false>;
|
|
172
|
+
modelId: imodel95.FieldDefine<"string", false, false>;
|
|
173
|
+
default: imodel95.FieldDefine<"bool", false, false>;
|
|
174
|
+
type: imodel95.FieldDefine<"string", false, false>;
|
|
175
|
+
layout: imodel95.FieldDefine<"json", false, false>;
|
|
176
|
+
description: imodel95.FieldDefine<"text", false, false>;
|
|
177
|
+
createdAt: imodel95.FieldDefine<"timestamp", false, false>;
|
|
178
|
+
updatedAt: imodel95.FieldDefine<"timestamp", false, false>;
|
|
178
179
|
}, "formLayout">;
|
|
179
180
|
//#endregion
|
|
180
181
|
export { _default as Application, _default$1 as Database, _default$2 as FormLayout, _default$3 as Menu, _default$4 as Page };
|
package/index.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as Menu_default, i as Application_default, n as Database_default, r as Page_default, t as FormLayout_default } from "./server-
|
|
1
|
+
import { a as Menu_default, i as Application_default, n as Database_default, r as Page_default, t as FormLayout_default } from "./server-Mh81eCJ5.mjs";
|
|
2
2
|
|
|
3
3
|
export { Application_default as Application, Database_default as Database, FormLayout_default as FormLayout, Menu_default as Menu, Page_default as Page };
|
package/package.json
CHANGED
|
@@ -672,35 +672,42 @@ const PageSider = createModel("page.sider", {
|
|
|
672
672
|
})
|
|
673
673
|
});
|
|
674
674
|
var Page_default = createModel("page", {
|
|
675
|
+
applicationId: createField("uuid", {
|
|
676
|
+
nullable: true,
|
|
677
|
+
label: "所属应用",
|
|
678
|
+
renderer: "document",
|
|
679
|
+
model: "application",
|
|
680
|
+
layout: { colSpan: 4 }
|
|
681
|
+
}),
|
|
675
682
|
model: createField("string", {
|
|
676
683
|
nullable: false,
|
|
677
684
|
default: "",
|
|
678
685
|
label: "模型",
|
|
679
|
-
layout: { colSpan:
|
|
686
|
+
layout: { colSpan: 4 }
|
|
680
687
|
}),
|
|
681
688
|
organization: createField("string", {
|
|
682
689
|
nullable: false,
|
|
683
690
|
default: "",
|
|
684
691
|
label: "组织",
|
|
685
|
-
layout: { colSpan:
|
|
692
|
+
layout: { colSpan: 4 }
|
|
686
693
|
}),
|
|
687
694
|
user: createField("string", {
|
|
688
695
|
nullable: false,
|
|
689
696
|
default: "",
|
|
690
697
|
label: "用户",
|
|
691
|
-
layout: { colSpan:
|
|
698
|
+
layout: { colSpan: 4 }
|
|
692
699
|
}),
|
|
693
700
|
workspace: createField("string", {
|
|
694
701
|
nullable: false,
|
|
695
702
|
default: "",
|
|
696
703
|
label: "工作区",
|
|
697
|
-
layout: { colSpan:
|
|
704
|
+
layout: { colSpan: 4 }
|
|
698
705
|
}),
|
|
699
706
|
page: createField("string", {
|
|
700
707
|
nullable: false,
|
|
701
708
|
default: "",
|
|
702
709
|
label: "页面",
|
|
703
|
-
layout: { colSpan:
|
|
710
|
+
layout: { colSpan: 4 },
|
|
704
711
|
renderer: {
|
|
705
712
|
component: "select",
|
|
706
713
|
values: [
|
|
@@ -911,6 +918,14 @@ var Page_default = createModel("page", {
|
|
|
911
918
|
]
|
|
912
919
|
}],
|
|
913
920
|
indexes: [{ fields: [
|
|
921
|
+
"applicationId",
|
|
922
|
+
"model",
|
|
923
|
+
"organization",
|
|
924
|
+
"user",
|
|
925
|
+
"workspace",
|
|
926
|
+
"page",
|
|
927
|
+
"current"
|
|
928
|
+
] }, { fields: [
|
|
914
929
|
"model",
|
|
915
930
|
"organization",
|
|
916
931
|
"user",
|
|
@@ -925,7 +940,8 @@ var Page_default = createModel("page", {
|
|
|
925
940
|
organization: record.organization,
|
|
926
941
|
user: record.user,
|
|
927
942
|
workspace: record.workspace,
|
|
928
|
-
page: record.page
|
|
943
|
+
page: record.page,
|
|
944
|
+
applicationId: record.applicationId
|
|
929
945
|
}));
|
|
930
946
|
},
|
|
931
947
|
async afterUpdate(conn, Model, record, oldRecord) {
|
|
@@ -935,7 +951,8 @@ var Page_default = createModel("page", {
|
|
|
935
951
|
organization: record.organization,
|
|
936
952
|
user: record.user,
|
|
937
953
|
workspace: record.workspace,
|
|
938
|
-
page: record.page
|
|
954
|
+
page: record.page,
|
|
955
|
+
applicationId: record.applicationId
|
|
939
956
|
}));
|
|
940
957
|
}
|
|
941
958
|
}
|
|
@@ -1134,4 +1151,4 @@ var FormLayout_default = createModel("formLayout", {
|
|
|
1134
1151
|
|
|
1135
1152
|
//#endregion
|
|
1136
1153
|
export { Menu_default as a, Application_default as i, Database_default as n, Page_default as r, FormLayout_default as t };
|
|
1137
|
-
//# sourceMappingURL=server-
|
|
1154
|
+
//# sourceMappingURL=server-Mh81eCJ5.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-Mh81eCJ5.mjs","names":["Menu"],"sources":["../../packages/server/models/Menu.mjs","../../packages/server/models/Application.mjs","../../packages/server/models/Page.mjs","../../packages/server/models/Database.mjs","../../packages/server/models/FormLayout.mjs"],"sourcesContent":["import { uuid, createField, createModel } from '@yongdall/model';\n\nexport default createModel('menu', {\n\tid: createField('uuid', { nullable: false, default: uuid, uncreatable: true, primary: 1 }),\n\tgroupType: createField('string', { nullable: false, default: '', label: '分组类型' }),\n\tgroup: createField('text', { nullable: false, default: '', label: '分组' }),\n\tno: createField('i32', { nullable: false, default: 0, label: '顺序号' }),\n\ttype: createField('string', {\n\t\tnullable: false, default: '', label: '菜单类型', layout: { colSpan: 6 }, renderer: [{\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ value: '', label: '菜单' },\n\t\t\t\t{ value: 'button', label: '按钮' },\n\t\t\t\t{ value: 'divider', label: '分割线' },\n\t\t\t]\n\t\t}]\n\t}),\n\tlevel: createField('i16', { nullable: false, default: 0, layout: { hidden: true } }),\n\n\tlabel: createField('string', { nullable: false, default: '新菜单', label: '标签', layout: { colSpan: 6 } }),\n\ticon: createField('string', { nullable: false, default: '', label: '图标', layout: { colSpan: 6 } }),\n\timage: createField('text', { nullable: false, default: '', label: '图片', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\tcolor: createField('string', { nullable: false, default: '', label: '颜色', layout: { colSpan: 6 } }),\n\ttitle: createField('string', { nullable: false, default: '', label: '标题', layout: { colSpan: 6 } }),\n\tdescription: createField('text', { nullable: false, default: '', label: '描述', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\n\tpage: createField('text', { nullable: false, default: '', label: '页面', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\tpath: createField('text', { nullable: false, default: '', label: '页面路径', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\turi: createField('text', { nullable: false, default: '', label: 'URI', layout: { colSpan: 6 }, renderer: [{ component: 'uri' }] }),\n\tcommand: createField('text', { nullable: false, default: '', label: '命令', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\n\tscript: createField('text', { nullable: false, default: '', label: '脚本' }),\n\trefType: createField('string', { nullable: false, default: '', label: '引用类型', layout: { colSpan: 6 } }),\n\trefId: createField('string', { nullable: false, default: '', label: '引用ID', layout: { colSpan: 6 } }),\n\trefMode: createField('string', { nullable: false, default: '', label: '引用模式', layout: { colSpan: 6 } }),\n\n\tpermission: createField('text', { nullable: false, default: '', label: '权限', renderer: [{ component: 'permission' }] }),\n\tcollapsed: createField('bool', { nullable: false, default: true, label: '默认折叠', layout: { colSpan: 6 } }),\n\tautoLogin: createField('bool', { nullable: false, default: false, label: '自动登录', layout: { colSpan: 6 } }),\n\tapplicationId: createField('string', { nullable: false, default: '', label: '关联应用', layout: { colSpan: 6 } }),\n});\n","import { createField, createModel, uuid, Where } from '@yongdall/model';\nimport Menu from './Menu.mjs';\n\n\nconst UserMenu = createModel('application.userMenu', {\n\tapplicationId: createField('uuid', { nullable: false, label: '应用', primary: 1}),\n\tno: createField('i32', { nullable: false, default: 0, label: '顺序号', primary: 2 }),\n\ttype: createField('string', {\n\t\tnullable: false, default: '', label: '菜单类型', renderer: [{\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ value: '', label: '菜单' },\n\t\t\t\t// { value: 'button', label: '按钮' },\n\t\t\t\t{ value: 'divider', label: '分割线' },\n\t\t\t]\n\t\t}]\n\t}),\n\tlevel: createField('i16', { nullable: false, default: 0, layout: { hidden: true } }),\n\n\tlabel: createField('string', { nullable: false, default: '新菜单', label: '标签' }),\n\n\tpage: createField('text', { nullable: false, default: '', label: '页面', renderer: [{ component: 'string' }] }),\n\tpath: createField('text', { nullable: false, default: '', label: '页面路径', renderer: [{ component: 'string' }] }),\n\turi: createField('text', { nullable: false, default: '', label: 'URI', renderer: [{ component: 'uri' }] }),\n\tcommand: createField('text', { nullable: false, default: '', label: '命令', renderer: [{ component: 'string' }] }),\n\tlogged: createField('bool', { nullable: false, default: false, label: '仅登陆用户' }),\n});\n\n\nexport default createModel('application', {\n\tlabel: createField('string', { nullable: false, default: '', label: '名称', layout: { colSpan: 6 } }),\n\tcompany: createField('string', { nullable: false, default: '', label: '公司', layout: { colSpan: 6 } }),\n\ttitle: createField('string', { nullable: false, default: '', label: '标题', layout: { colSpan: 6 } }),\n\n\tid: createField('uuid', { nullable: false, default: uuid, renderer: 'string', layout: { colSpan: 6 }, uncreatable: true, primary: 1 }),\n\n\tdomain: createField('string', { nullable: false, default: '', label: '域名', layout: { colSpan: 4 } }),\n\tport: createField('i32', { nullable: false, default: 0, label: '端口', layout: { colSpan: 4 } }),\n\tpath: createField('string', { nullable: false, default: '', label: '路径', layout: { colSpan: 10 } }),\n\tdefault: createField('bool', { nullable: false, default: false, label: '默认', layout: { colSpan: 3 } }),\n\tsingleDefault: createField('bool', { nullable: false, default: false, label: '单用户默认', layout: { colSpan: 3 } }),\n\ttheme: createField('string', { nullable: false, default: '', label: '主题', layout: { colSpan: 7 }, renderer: { component: 'select', type: 'enumeration', name: 'theme', value: '{theme}' } }),\n\tskin: createField('string', { nullable: false, default: '', label: '皮肤', layout: { colSpan: 7 }, renderer: { component: 'select', type: 'enumeration', name: 'skin', value: '{skin}' } }),\n\tauthenticator: createField('string', { nullable: false, default: '', label: '登录器', layout: { colSpan: 7 }, renderer: { component: 'select', type: 'enumeration', name: 'authenticator', value: '{authenticator}' } }),\n\tauthRequired: createField('bool', { nullable: false, default: true, label: '强制登录', layout: { colSpan: 3 } }),\n\n\n\tlogo: createField('text', { nullable: false, default: '', label: 'LOGO', renderer: 'file', layout: { colSpan: 6 } }),\n\ttype: createField('string', { nullable: false, default: '', label: '类型', layout: { colSpan: 6 } }),\n\thttps: createField('bool', { nullable: false, default: false, label: '采用 HTTPS', layout: { colSpan: 6 } }),\n\n\thelp: createField('text', { nullable: true, default: '', label: '帮助链接', renderer: 'string', layout: { colSpan: 6 } }),\n\n\tmenus: createField(Menu, { array: true, constraints: { groupType: { value: 'application' }, group: { field: 'id' }, no: { noField: true } }, label: '菜单', layout: { levelKey: 'level', columns: [{ actions: ['collapse', 'move'] }, { field: 'label', placeholder: 1 }, { placeholder: 1 }, { actions: ['add', 'remove'] }] } }),\n\tuserMenus: createField(UserMenu, { array: true, constraints: { applicationId: { field: 'id' }, no: { noField: true } }, label: '用户菜单', layout: { levelKey: 'level', columns: [{ actions: ['collapse', 'move'] }, { field: 'label', placeholder: 1 }, { placeholder: 1 }, { actions: ['add', 'remove'] }] } }),\n\n\tdescription: createField('text', { nullable: false, default: '', label: '描述' }),\n\n}, {\n\tlabel: '应用',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{ fields: ['id', 'type', 'label', 'company', 'title', 'description'], authorizations: ['options'] },\n\t\t{ permission: 'system:application', fields: '*', authorizations: ['query', 'read', 'create', 'update', 'destroy', 'add', 'remove'] },\n\t],\n\thooks: {\n\t\tasync afterCreate(conn, Model, record) {\n\t\t\t/** @type {Record<string, any>} */\n\t\t\tlet data = {};\n\t\t\tif (record.default) {\n\t\t\t\tdata.default = false;\n\t\t\t}\n\t\t\tif (record.singleDefault) {\n\t\t\t\tdata.singleDefault = false;\n\t\t\t}\n\t\t\tif (!Object.keys(data)) { return; }\n\t\t\tawait conn.update(Model, data, Where.not({ id: record.id }).and({\n\t\t\t\tdomain: record.domain,\n\t\t\t\tport: record.port,\n\t\t\t}))\n\t\t},\n\n\t\tasync afterUpdate(conn, Model, record, oldRecord) {\n\t\t\t/** @type {Record<string, any>} */\n\t\t\tlet data = {};\n\t\t\tif (record.default && !oldRecord?.default) {\n\t\t\t\tdata.default = false;\n\t\t\t}\n\t\t\tif (record.singleDefault && !oldRecord?.singleDefault) {\n\t\t\t\tdata.singleDefault = false;\n\t\t\t}\n\t\t\tif (!Object.keys(data)) { return; }\n\t\t\tawait conn.update(Model, data, Where.not({ id: record.id }).and({\n\t\t\t\tdomain: record.domain,\n\t\t\t\tport: record.port,\n\t\t\t}))\n\t\t},\n\t}\n});\n","import { createField, createModel, uuid, now, Where } from '@yongdall/model';\n\nconst PageMenu = createModel('page.menu', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\tno: createField('i16', { nullable: false, default: 0, label: '顺序号', primary: 2 }),\n\n\ttype: createField('string', {\n\t\tnullable: false, default: '', label: '菜单类型', layout: { colSpan: 6 }, renderer: [{\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ value: '', label: '菜单' },\n\t\t\t\t{ value: 'divider', label: '分割线' },\n\t\t\t]\n\t\t}]\n\t}),\n\tlevel: createField('i16', { nullable: false, default: 0, layout: { hidden: true } }),\n\n\tlabel: createField('string', { nullable: false, default: '新菜单', label: '标签', layout: { colSpan: 6 } }),\n\ticon: createField('string', { nullable: false, default: '', label: '图标', layout: { colSpan: 6 } }),\n\tcolor: createField('string', { nullable: false, default: '', label: '颜色', layout: { colSpan: 6 } }),\n\ttitle: createField('string', { nullable: false, default: '', label: '标题', layout: { colSpan: 6 } }),\n\tdescription: createField('text', { nullable: false, default: '', label: '描述', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\n\tpage: createField('text', { nullable: false, default: '', label: '页面', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\tpath: createField('text', { nullable: false, default: '', label: '页面路径', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\turi: createField('text', { nullable: false, default: '', label: 'URI', layout: { colSpan: 6 }, renderer: [{ component: 'uri' }] }),\n\tcommand: createField('text', { nullable: false, default: '', label: '命令', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\n\tscript: createField('text', { nullable: false, default: '', label: '脚本' }),\n\n\tpermission: createField('text', { nullable: false, default: '', label: '权限', renderer: [{ component: 'permission' }] }),\n});\nconst PageField = createModel('page.field', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\tno: createField('i16', { nullable: false, primary: 2 }),\n\tfield: createField('string', { nullable: false, default: '', label: '字段', layout: { head: 1 } }),\n\tlabel: createField('string', { nullable: false, default: '', label: '列名', layout: { head: 2 } }),\n\twidth: createField('string', { nullable: false, default: '', label: '宽度', layout: { head: 3 } }),\n});\n\nconst PageForm = createModel('page.form', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\ttype: createField('string', { nullable: false, default: '', label: '类型', layout: { head: 1 }, primary: 2 }),\n\tno: createField('i16', { nullable: false }),\n\tlayoutId: createField('uuid', { nullable: false, model: 'formLayout', label: '布局', renderer: 'document', layout: { head: 1 } }),\n\tmode: createField('string', { nullable: false, default: '', label: '模式', layout: { head: 1 } }),\n\t// formId: createField('uuid', { nullable: true, label: '表单', layout: {head: 2} }),\n\t// serviceId: createField('uuid', { nullable: true, label: '服务接口', layout: {head: 3} }),\n});\n\nconst PageFilter = createModel('page.filter', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\tno: createField('i16', { nullable: false, primary: 2 }),\n\tfield: createField('string', { nullable: false, default: '', label: '字段', layout: { head: 1 } }),\n\toperator: createField('string', { nullable: false, default: '', label: '运算符', layout: { head: 1 } }),\n\t// not: createField('bool', { nullable: false, default: false, label: '否定' }),\n});\n\nconst PageSider = createModel('page.sider', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\tno: createField('i16', { nullable: false, primary: 2 }),\n\twidget: createField('string', { nullable: false, default: '', label: '组件', renderer: { component: 'select', type: 'enumeration', name: 'pageSider', value: '{widget}' } }),\n\n\toptions: createField('string', {nullable: false, default:'', label: '选项'}),\n\n\t// editLayoutId: createField('uuid', { nullable: false, model: 'formLayout', label: '布局', renderer: 'document', layout: { head: 1 } }),\n\t// editFormId: createField('uuid', { nullable: true, label: '表单', layout: {head: 2} }),\n\t// editServiceId: createField('uuid', { nullable: true, label: '服务接口', layout: {head: 3} }),\n\n\t// createLayoutId: createField('uuid', { nullable: false, model: 'formLayout', label: '布局', renderer: 'document', layout: { head: 1 } }),\n\t// createFormId: createField('uuid', { nullable: true, label: '表单', layout: {head: 2} }),\n\t// createServiceId: createField('uuid', { nullable: true, label: '服务接口', layout: {head: 3} }),\n});\n\nexport default createModel('page', {\n\tapplicationId: createField('uuid', { nullable: true, label: '所属应用', renderer: 'document', model: 'application', layout: { colSpan: 4 } }),\n\tmodel: createField('string', { nullable: false, default: '', label: '模型', layout: { colSpan: 4 } }),\n\torganization: createField('string', { nullable: false, default: '', label: '组织', layout: { colSpan: 4 } }),\n\tuser: createField('string', { nullable: false, default: '', label: '用户', layout: { colSpan: 4 } }),\n\tworkspace: createField('string', { nullable: false, default: '', label: '工作区', layout: { colSpan: 4 } }),\n\n\tpage: createField('string', {\n\t\tnullable: false, default: '', label: '页面', layout: { colSpan: 4 }, renderer: {\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ label: '列表页', value: 'main' },\n\t\t\t\t{ label: '创建页', value: 'input' },\n\t\t\t\t{ label: '编辑页', value: 'edit' },\n\t\t\t\t{ label: '详情页', value: 'details' },\n\t\t\t\t{ label: '复制页', value: 'copy' },\n\t\t\t]\n\t\t}\n\t}),\n\twidget: createField('string', { nullable: false, default: '', label: '组件', layout: { colSpan: 6 }, renderer: { component: 'select', type: 'enumeration', name: 'page', value: '{page}', filter: 'type=?page' } }),\n\n\t// TODO: 过滤器\n\t// TODO: 分页\n\t// TODO: 分组查询\n\t// TODO: 活动\n\t// TODO: 时间段字段\n\n\tlabel: createField('string', { nullable: false, default: '', label: '名称', layout: { colSpan: 6 } }),\n\ttitle: createField('string', { nullable: false, default: '', label: '标题', layout: { colSpan: 6 } }),\n\ttitlePattern: createField('string', { nullable: false, default: '', label: '标题模式', layout: { colSpan: 6 } }),\n\tcurrent: createField('bool', { nullable: false, default: false, label: '当前', layout: { colSpan: 6 } }),\n\n\tid: createField('uuid', { nullable: false, default: uuid, uncreatable: true, primary: 1, renderer: 'string', layout: { colSpan: 6 } }),\n\n\n\tconfig: createField('json', { nullable: false, default: {}, label: '配置' }),\n\n\tdefaultQuery: createField('string', { nullable: false, default: '', label: '默认查询' }),\n\thiddenFilter: createField('string', { nullable: false, default: '', label: '隐藏过滤条件' }),\n\n\tfields: createField(PageField, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '显示字段', layout: { columns: [{ actions: ['add', 'move', 'remove', 'serial'] }, { field: 'field' }, { field: 'label' }, { field: 'width' }] } }),\n\tfilters: createField(PageFilter, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '快速过滤', layout: { columns: [{ actions: ['add', 'move', 'remove', 'serial'] }, { field: 'field' }, { field: 'operator' }, { field: 'not' }] } }),\n\n\tforms: createField(PageForm, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '表单配置', layout: { columns: [{ actions: ['add', 'move', 'remove', 'serial'] }, { field: 'type' }, { field: 'layoutId' }, { field: 'mode' }] } }),\n\tmenus: createField(PageMenu, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '菜单配置', layout: { levelKey: 'level', columns: [{ actions: ['collapse', 'move'] }, { field: 'label', placeholder: 1 }, { placeholder: 1 }, { actions: ['add', 'remove'] }] } }),\n\n\tsides: createField(PageSider, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '侧边栏', layout: { columns: [{ actions: ['add', 'move', 'remove', 'collapse', 'serial'] }, { field: 'widget' }] } }),\n\tdescription: createField('text', { nullable: false, default: '', label: '描述' }),\n\n\tcreatedAt: createField('timestamp', { nullable: false, creating: now, label: '创建时间' }),\n\tupdatedAt: createField('timestamp', { nullable: false, updating: now, label: '更新时间' }),\n\n}, {\n\tlabel: '页面',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{permission: 'system:page', fields: '*', authorizations: ['query', 'read', 'create', 'update', 'destroy', 'add', 'remove'] },\n\t],\n\tindexes: [\n\t\t{ fields: ['applicationId', 'model', 'organization', 'user', 'workspace', 'page', 'current'] },\n\t\t{ fields: ['model', 'organization', 'user', 'workspace', 'page', 'current'] }\n\t],\n\thooks: {\n\t\tasync afterCreate(conn, Model, record) {\n\t\t\tawait conn.update(Model, { current: false },\n\t\t\t\tWhere.not({ id: record.id }).and({\n\t\t\t\t\tmodel: record.model,\n\t\t\t\t\torganization: record.organization,\n\t\t\t\t\tuser: record.user,\n\t\t\t\t\tworkspace: record.workspace,\n\t\t\t\t\tpage: record.page,\n\t\t\t\t\tapplicationId: record.applicationId,\n\t\t\t\t}))\n\t\t},\n\t\tasync afterUpdate(conn, Model, record, oldRecord) {\n\t\t\tif (!record.current || oldRecord?.current) { return; }\n\t\t\tawait conn.update(Model, { current: false },\n\t\t\t\tWhere.not({ id: record.id }).and({\n\t\t\t\t\tmodel: record.model,\n\t\t\t\t\torganization: record.organization,\n\t\t\t\t\tuser: record.user,\n\t\t\t\t\tworkspace: record.workspace,\n\t\t\t\t\tpage: record.page,\n\t\t\t\t\tapplicationId: record.applicationId,\n\t\t\t\t}))\n\t\t}\n\n\t}\n});\n","import { createField, createModel, now, uuid } from '@yongdall/model';\n\nexport default createModel('database', {\n\tid: createField('uuid', { nullable: false, default: uuid, renderer: 'string', uncreatable: true, primary: 1 }),\n\n\ttype: createField('string', {\n\t\tnullable: false, immutable: true, label: '类型', renderer: {\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ value: 'rdb', label: '关系型数据库' },\n\t\t\t\t{ value: 'fs', label: '文件存储' },\n\t\t\t\t{ value: 'mq', label: '消息队列' },\n\t\t\t\t{ value: 'tq', label: '任务队列' },\n\t\t\t\t{ value: 'cache', label: '缓存' },\n\t\t\t]\n\t\t}\n\t}),\n\tlabel: createField('string', { nullable: false, default: '', label: '名称' }),\n\tname: createField('string', { nullable: false, immutable: true, label: '标识' }),\n\turi: createField('string', { nullable: false, label: '路径' }),\n\tcreatedAt: createField('timestamp', { nullable: false, creating: now, label: '创建时间' }),\n\tupdatedAt: createField('timestamp', { nullable: false, updating: now, label: '更新时间' }),\n}, {\n\tlabel: '数据库',\n\tlabelField: 'label',\n\tindexes: [\n\t\t{ fields: ['type', 'name'], unique: true }\n\t],\n\n\tpermissions: [\n\t\t{ fields: ['id', 'type', 'label', 'name'], authorizations: ['options'] },\n\t\t{ permission: 'system:database', fields: ['id', 'type', 'label', 'name', 'createdAt', 'updatedAt'], authorizations: ['query'] },\n\t\t{ permission: 'system:database', fields: '*', authorizations: ['read', 'create', 'update', 'destroy'] },\n\t],\n});\n","import { createField, createModel, uuid, now, Where } from '@yongdall/model';\n\n\nexport default createModel('formLayout', {\n\tid: createField('uuid', { nullable: false, default: uuid, uncreatable: true, primary: 1 }),\n\tlabel: createField('string', { nullable: false, default: '', label: '名称', layout: { colSpan: 6 } }),\n\n\tmodelId: createField('string', { nullable: false, default: '', label: '模型', layout: { colSpan: 6 } }),\n\n\tdefault: createField('bool', { nullable: false, default: false, label: '默认布局' }),\n\n\ttype: createField('string', { nullable: false, default: '', label: '类型', layout: { colSpan: 6 } }),\n\n\tlayout: createField('json', { nullable: false, default: {}, label: '布局' }),\n\n\n\n\n\tdescription: createField('text', { nullable: false, default: '', label: '描述' }),\n\n\tcreatedAt: createField('timestamp', { nullable: false, creating: now, label: '创建时间' }),\n\tupdatedAt: createField('timestamp', { nullable: false, updating: now, label: '更新时间' }),\n}, {\n\tlabel: '表单布局',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{ fields: ['id', 'type', 'label', 'description'], authorizations: ['options'] },\n\t\t{permission: 'system:formLayout', fields: '*', authorizations: ['query', 'read', 'create', 'update', 'destroy']},\n\t],\n\thooks: {\n\t\tasync afterCreate(conn, Model, record) {\n\n\t\t\tawait conn.update(Model, { default: false }, Where.not({ id: record.id }).and({\n\t\t\t\tmodelId: record.modelId,\n\t\t\t}))\n\t\t},\n\t\tasync afterUpdate(conn, Model, record, oldRecord) {\n\t\t\tif (!record.default || oldRecord?.default) { return }\n\n\t\t\tawait conn.update(Model, { default: false }, Where.not({ id: record.id }).and({\n\t\t\t\tmodelId: record.modelId,\n\t\t\t}))\n\t\t},\n\n\t}\n\n});\n"],"mappings":";;;AAEA,mBAAe,YAAY,QAAQ;CAClC,IAAI,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAM,aAAa;EAAM,SAAS;EAAG,CAAC;CAC1F,WAAW,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,CAAC;CACjF,OAAO,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,CAAC;CACzE,IAAI,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,OAAO;EAAO,CAAC;CACrE,MAAM,YAAY,UAAU;EAC3B,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC;GAC/E,WAAW;GAAU,QAAQ;IAC5B;KAAE,OAAO;KAAI,OAAO;KAAM;IAC1B;KAAE,OAAO;KAAU,OAAO;KAAM;IAChC;KAAE,OAAO;KAAW,OAAO;KAAO;IAClC;GACD,CAAC;EACF,CAAC;CACF,OAAO,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CAEpF,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACtG,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAClG,OAAO,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CACtI,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACnG,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACnG,aAAa,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CAE5I,MAAM,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CACrI,MAAM,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CACvI,KAAK,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAO,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,OAAO,CAAC;EAAE,CAAC;CAClI,SAAS,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CAExI,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,CAAC;CAC1E,SAAS,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACvG,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACrG,SAAS,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAEvG,YAAY,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,UAAU,CAAC,EAAE,WAAW,cAAc,CAAC;EAAE,CAAC;CACvH,WAAW,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAM,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACzG,WAAW,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC1G,eAAe,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC7G,CAAC;;;;ACnCF,MAAM,WAAW,YAAY,wBAAwB;CACpD,eAAe,YAAY,QAAQ;EAAE,UAAU;EAAO,OAAO;EAAM,SAAS;EAAE,CAAC;CAC/E,IAAI,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,OAAO;EAAO,SAAS;EAAG,CAAC;CACjF,MAAM,YAAY,UAAU;EAC3B,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,UAAU,CAAC;GACvD,WAAW;GAAU,QAAQ,CAC5B;IAAE,OAAO;IAAI,OAAO;IAAM,EAE1B;IAAE,OAAO;IAAW,OAAO;IAAO,CAClC;GACD,CAAC;EACF,CAAC;CACF,OAAO,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CAEpF,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAM,CAAC;CAE9E,MAAM,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CAC7G,MAAM,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CAC/G,KAAK,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAO,UAAU,CAAC,EAAE,WAAW,OAAO,CAAC;EAAE,CAAC;CAC1G,SAAS,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CAChH,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAS,CAAC;CAChF,CAAC;AAGF,0BAAe,YAAY,eAAe;CACzC,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACnG,SAAS,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACrG,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAEnG,IAAI,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAM,UAAU;EAAU,QAAQ,EAAE,SAAS,GAAG;EAAE,aAAa;EAAM,SAAS;EAAG,CAAC;CAEtI,QAAQ,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACpG,MAAM,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC9F,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,IAAI;EAAE,CAAC;CACnG,SAAS,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACtG,eAAe,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAS,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC/G,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU;GAAE,WAAW;GAAU,MAAM;GAAe,MAAM;GAAS,OAAO;GAAW;EAAE,CAAC;CAC5L,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU;GAAE,WAAW;GAAU,MAAM;GAAe,MAAM;GAAQ,OAAO;GAAU;EAAE,CAAC;CACzL,eAAe,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAO,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU;GAAE,WAAW;GAAU,MAAM;GAAe,MAAM;GAAiB,OAAO;GAAmB;EAAE,CAAC;CACrN,cAAc,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAM,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAG5G,MAAM,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,UAAU;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACpH,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAClG,OAAO,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAY,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAE1G,MAAM,YAAY,QAAQ;EAAE,UAAU;EAAM,SAAS;EAAI,OAAO;EAAQ,UAAU;EAAU,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAErH,OAAO,YAAYA,cAAM;EAAE,OAAO;EAAM,aAAa;GAAE,WAAW,EAAE,OAAO,eAAe;GAAE,OAAO,EAAE,OAAO,MAAM;GAAE,IAAI,EAAE,SAAS,MAAM;GAAE;EAAE,OAAO;EAAM,QAAQ;GAAE,UAAU;GAAS,SAAS;IAAC,EAAE,SAAS,CAAC,YAAY,OAAO,EAAE;IAAE;KAAE,OAAO;KAAS,aAAa;KAAG;IAAE,EAAE,aAAa,GAAG;IAAE,EAAE,SAAS,CAAC,OAAO,SAAS,EAAE;IAAC;GAAE;EAAE,CAAC;CAChU,WAAW,YAAY,UAAU;EAAE,OAAO;EAAM,aAAa;GAAE,eAAe,EAAE,OAAO,MAAM;GAAE,IAAI,EAAE,SAAS,MAAM;GAAE;EAAE,OAAO;EAAQ,QAAQ;GAAE,UAAU;GAAS,SAAS;IAAC,EAAE,SAAS,CAAC,YAAY,OAAO,EAAE;IAAE;KAAE,OAAO;KAAS,aAAa;KAAG;IAAE,EAAE,aAAa,GAAG;IAAE,EAAE,SAAS,CAAC,OAAO,SAAS,EAAE;IAAC;GAAE;EAAE,CAAC;CAE7S,aAAa,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,CAAC;CAE/E,EAAE;CACF,OAAO;CACP,YAAY;CACZ,aAAa,CACZ;EAAE,QAAQ;GAAC;GAAM;GAAQ;GAAS;GAAW;GAAS;GAAc;EAAE,gBAAgB,CAAC,UAAU;EAAE,EACnG;EAAE,YAAY;EAAsB,QAAQ;EAAK,gBAAgB;GAAC;GAAS;GAAQ;GAAU;GAAU;GAAW;GAAO;GAAS;EAAE,CACpI;CACD,OAAO;EACN,MAAM,YAAY,MAAM,OAAO,QAAQ;;GAEtC,IAAI,OAAO,EAAE;AACb,OAAI,OAAO,QACV,MAAK,UAAU;AAEhB,OAAI,OAAO,cACV,MAAK,gBAAgB;AAEtB,OAAI,CAAC,OAAO,KAAK,KAAK,CAAI;AAC1B,SAAM,KAAK,OAAO,OAAO,MAAM,MAAM,IAAI,EAAE,IAAI,OAAO,IAAI,CAAC,CAAC,IAAI;IAC/D,QAAQ,OAAO;IACf,MAAM,OAAO;IACb,CAAC,CAAC;;EAGJ,MAAM,YAAY,MAAM,OAAO,QAAQ,WAAW;;GAEjD,IAAI,OAAO,EAAE;AACb,OAAI,OAAO,WAAW,CAAC,WAAW,QACjC,MAAK,UAAU;AAEhB,OAAI,OAAO,iBAAiB,CAAC,WAAW,cACvC,MAAK,gBAAgB;AAEtB,OAAI,CAAC,OAAO,KAAK,KAAK,CAAI;AAC1B,SAAM,KAAK,OAAO,OAAO,MAAM,MAAM,IAAI,EAAE,IAAI,OAAO,IAAI,CAAC,CAAC,IAAI;IAC/D,QAAQ,OAAO;IACf,MAAM,OAAO;IACb,CAAC,CAAC;;EAEJ;CACD,CAAC;;;;AC/FF,MAAM,WAAW,YAAY,aAAa;CACzC,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,UAAU;EAAY,SAAS;EAAG,CAAC;CAClF,IAAI,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,OAAO;EAAO,SAAS;EAAG,CAAC;CAEjF,MAAM,YAAY,UAAU;EAC3B,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC;GAC/E,WAAW;GAAU,QAAQ,CAC5B;IAAE,OAAO;IAAI,OAAO;IAAM,EAC1B;IAAE,OAAO;IAAW,OAAO;IAAO,CAClC;GACD,CAAC;EACF,CAAC;CACF,OAAO,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CAEpF,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACtG,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAClG,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACnG,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACnG,aAAa,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CAE5I,MAAM,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CACrI,MAAM,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CACvI,KAAK,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAO,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,OAAO,CAAC;EAAE,CAAC;CAClI,SAAS,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU,CAAC,EAAE,WAAW,UAAU,CAAC;EAAE,CAAC;CAExI,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,CAAC;CAE1E,YAAY,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,UAAU,CAAC,EAAE,WAAW,cAAc,CAAC;EAAE,CAAC;CACvH,CAAC;AACF,MAAM,YAAY,YAAY,cAAc;CAC3C,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,UAAU;EAAY,SAAS;EAAG,CAAC;CAClF,IAAI,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,CAAC;CACvD,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,MAAM,GAAG;EAAE,CAAC;CAChG,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,MAAM,GAAG;EAAE,CAAC;CAChG,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,MAAM,GAAG;EAAE,CAAC;CAChG,CAAC;AAEF,MAAM,WAAW,YAAY,aAAa;CACzC,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,UAAU;EAAY,SAAS;EAAG,CAAC;CAClF,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,MAAM,GAAG;EAAE,SAAS;EAAG,CAAC;CAC3G,IAAI,YAAY,OAAO,EAAE,UAAU,OAAO,CAAC;CAC3C,UAAU,YAAY,QAAQ;EAAE,UAAU;EAAO,OAAO;EAAc,OAAO;EAAM,UAAU;EAAY,QAAQ,EAAE,MAAM,GAAG;EAAE,CAAC;CAC/H,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,MAAM,GAAG;EAAE,CAAC;CAG/F,CAAC;AAEF,MAAM,aAAa,YAAY,eAAe;CAC7C,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,UAAU;EAAY,SAAS;EAAG,CAAC;CAClF,IAAI,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,CAAC;CACvD,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,MAAM,GAAG;EAAE,CAAC;CAChG,UAAU,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAO,QAAQ,EAAE,MAAM,GAAG;EAAE,CAAC;CAEpG,CAAC;AAEF,MAAM,YAAY,YAAY,cAAc;CAC3C,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,UAAU;EAAY,SAAS;EAAG,CAAC;CAClF,IAAI,YAAY,OAAO;EAAE,UAAU;EAAO,SAAS;EAAG,CAAC;CACvD,QAAQ,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,UAAU;GAAE,WAAW;GAAU,MAAM;GAAe,MAAM;GAAa,OAAO;GAAY;EAAE,CAAC;CAE1K,SAAS,YAAY,UAAU;EAAC,UAAU;EAAO,SAAQ;EAAI,OAAO;EAAK,CAAC;CAS1E,CAAC;AAEF,mBAAe,YAAY,QAAQ;CAClC,eAAe,YAAY,QAAQ;EAAE,UAAU;EAAM,OAAO;EAAQ,UAAU;EAAY,OAAO;EAAe,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACzI,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACnG,cAAc,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC1G,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAClG,WAAW,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAO,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAExG,MAAM,YAAY,UAAU;EAC3B,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU;GAC5E,WAAW;GAAU,QAAQ;IAC5B;KAAE,OAAO;KAAO,OAAO;KAAQ;IAC/B;KAAE,OAAO;KAAO,OAAO;KAAS;IAChC;KAAE,OAAO;KAAO,OAAO;KAAQ;IAC/B;KAAE,OAAO;KAAO,OAAO;KAAW;IAClC;KAAE,OAAO;KAAO,OAAO;KAAQ;IAC/B;GACD;EACD,CAAC;CACF,QAAQ,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,UAAU;GAAE,WAAW;GAAU,MAAM;GAAe,MAAM;GAAQ,OAAO;GAAU,QAAQ;GAAc;EAAE,CAAC;CAQjN,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACnG,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACnG,cAAc,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC5G,SAAS,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAEtG,IAAI,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAM,aAAa;EAAM,SAAS;EAAG,UAAU;EAAU,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAGtI,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS,EAAE;EAAE,OAAO;EAAM,CAAC;CAE1E,cAAc,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAQ,CAAC;CACpF,cAAc,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAU,CAAC;CAEtF,QAAQ,YAAY,WAAW;EAAE,OAAO;EAAM,aAAa;GAAE,QAAQ,EAAE,OAAO,MAAM;GAAE,IAAI,EAAE,SAAS,MAAM;GAAE;EAAE,OAAO;EAAQ,QAAQ,EAAE,SAAS;GAAC,EAAE,SAAS;IAAC;IAAO;IAAQ;IAAU;IAAS,EAAE;GAAE,EAAE,OAAO,SAAS;GAAE,EAAE,OAAO,SAAS;GAAE,EAAE,OAAO,SAAS;GAAC,EAAE;EAAE,CAAC;CACpQ,SAAS,YAAY,YAAY;EAAE,OAAO;EAAM,aAAa;GAAE,QAAQ,EAAE,OAAO,MAAM;GAAE,IAAI,EAAE,SAAS,MAAM;GAAE;EAAE,OAAO;EAAQ,QAAQ,EAAE,SAAS;GAAC,EAAE,SAAS;IAAC;IAAO;IAAQ;IAAU;IAAS,EAAE;GAAE,EAAE,OAAO,SAAS;GAAE,EAAE,OAAO,YAAY;GAAE,EAAE,OAAO,OAAO;GAAC,EAAE;EAAE,CAAC;CAEvQ,OAAO,YAAY,UAAU;EAAE,OAAO;EAAM,aAAa;GAAE,QAAQ,EAAE,OAAO,MAAM;GAAE,IAAI,EAAE,SAAS,MAAM;GAAE;EAAE,OAAO;EAAQ,QAAQ,EAAE,SAAS;GAAC,EAAE,SAAS;IAAC;IAAO;IAAQ;IAAU;IAAS,EAAE;GAAE,EAAE,OAAO,QAAQ;GAAE,EAAE,OAAO,YAAY;GAAE,EAAE,OAAO,QAAQ;GAAC,EAAE;EAAE,CAAC;CACnQ,OAAO,YAAY,UAAU;EAAE,OAAO;EAAM,aAAa;GAAE,QAAQ,EAAE,OAAO,MAAM;GAAE,IAAI,EAAE,SAAS,MAAM;GAAE;EAAE,OAAO;EAAQ,QAAQ;GAAE,UAAU;GAAS,SAAS;IAAC,EAAE,SAAS,CAAC,YAAY,OAAO,EAAE;IAAE;KAAE,OAAO;KAAS,aAAa;KAAG;IAAE,EAAE,aAAa,GAAG;IAAE,EAAE,SAAS,CAAC,OAAO,SAAS,EAAE;IAAC;GAAE;EAAE,CAAC;CAElS,OAAO,YAAY,WAAW;EAAE,OAAO;EAAM,aAAa;GAAE,QAAQ,EAAE,OAAO,MAAM;GAAE,IAAI,EAAE,SAAS,MAAM;GAAE;EAAE,OAAO;EAAO,QAAQ,EAAE,SAAS,CAAC,EAAE,SAAS;GAAC;GAAO;GAAQ;GAAU;GAAY;GAAS,EAAE,EAAE,EAAE,OAAO,UAAU,CAAC,EAAE;EAAE,CAAC;CACvO,aAAa,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,CAAC;CAE/E,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAQ,CAAC;CACtF,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAQ,CAAC;CAEtF,EAAE;CACF,OAAO;CACP,YAAY;CACZ,aAAa,CACZ;EAAC,YAAY;EAAe,QAAQ;EAAK,gBAAgB;GAAC;GAAS;GAAQ;GAAU;GAAU;GAAW;GAAO;GAAS;EAAE,CAC5H;CACD,SAAS,CACR,EAAE,QAAQ;EAAC;EAAiB;EAAS;EAAgB;EAAQ;EAAa;EAAQ;EAAU,EAAE,EAC9F,EAAE,QAAQ;EAAC;EAAS;EAAgB;EAAQ;EAAa;EAAQ;EAAU,EAAE,CAC7E;CACD,OAAO;EACN,MAAM,YAAY,MAAM,OAAO,QAAQ;AACtC,SAAM,KAAK,OAAO,OAAO,EAAE,SAAS,OAAO,EAC1C,MAAM,IAAI,EAAE,IAAI,OAAO,IAAI,CAAC,CAAC,IAAI;IAChC,OAAO,OAAO;IACd,cAAc,OAAO;IACrB,MAAM,OAAO;IACb,WAAW,OAAO;IAClB,MAAM,OAAO;IACb,eAAe,OAAO;IACtB,CAAC,CAAC;;EAEL,MAAM,YAAY,MAAM,OAAO,QAAQ,WAAW;AACjD,OAAI,CAAC,OAAO,WAAW,WAAW,QAAW;AAC7C,SAAM,KAAK,OAAO,OAAO,EAAE,SAAS,OAAO,EAC1C,MAAM,IAAI,EAAE,IAAI,OAAO,IAAI,CAAC,CAAC,IAAI;IAChC,OAAO,OAAO;IACd,cAAc,OAAO;IACrB,MAAM,OAAO;IACb,WAAW,OAAO;IAClB,MAAM,OAAO;IACb,eAAe,OAAO;IACtB,CAAC,CAAC;;EAGL;CACD,CAAC;;;;AC9JF,uBAAe,YAAY,YAAY;CACtC,IAAI,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAM,UAAU;EAAU,aAAa;EAAM,SAAS;EAAG,CAAC;CAE9G,MAAM,YAAY,UAAU;EAC3B,UAAU;EAAO,WAAW;EAAM,OAAO;EAAM,UAAU;GACxD,WAAW;GAAU,QAAQ;IAC5B;KAAE,OAAO;KAAO,OAAO;KAAU;IACjC;KAAE,OAAO;KAAM,OAAO;KAAQ;IAC9B;KAAE,OAAO;KAAM,OAAO;KAAQ;IAC9B;KAAE,OAAO;KAAM,OAAO;KAAQ;IAC9B;KAAE,OAAO;KAAS,OAAO;KAAM;IAC/B;GACD;EACD,CAAC;CACF,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,CAAC;CAC3E,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,WAAW;EAAM,OAAO;EAAM,CAAC;CAC9E,KAAK,YAAY,UAAU;EAAE,UAAU;EAAO,OAAO;EAAM,CAAC;CAC5D,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAQ,CAAC;CACtF,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAQ,CAAC;CACtF,EAAE;CACF,OAAO;CACP,YAAY;CACZ,SAAS,CACR;EAAE,QAAQ,CAAC,QAAQ,OAAO;EAAE,QAAQ;EAAM,CAC1C;CAED,aAAa;EACZ;GAAE,QAAQ;IAAC;IAAM;IAAQ;IAAS;IAAO;GAAE,gBAAgB,CAAC,UAAU;GAAE;EACxE;GAAE,YAAY;GAAmB,QAAQ;IAAC;IAAM;IAAQ;IAAS;IAAQ;IAAa;IAAY;GAAE,gBAAgB,CAAC,QAAQ;GAAE;EAC/H;GAAE,YAAY;GAAmB,QAAQ;GAAK,gBAAgB;IAAC;IAAQ;IAAU;IAAU;IAAU;GAAE;EACvG;CACD,CAAC;;;;AC9BF,yBAAe,YAAY,cAAc;CACxC,IAAI,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAM,aAAa;EAAM,SAAS;EAAG,CAAC;CAC1F,OAAO,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAEnG,SAAS,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAErG,SAAS,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAO,OAAO;EAAQ,CAAC;CAEhF,MAAM,YAAY,UAAU;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAElG,QAAQ,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS,EAAE;EAAE,OAAO;EAAM,CAAC;CAK1E,aAAa,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,CAAC;CAE/E,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAQ,CAAC;CACtF,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAQ,CAAC;CACtF,EAAE;CACF,OAAO;CACP,YAAY;CACZ,aAAa,CACZ;EAAE,QAAQ;GAAC;GAAM;GAAQ;GAAS;GAAc;EAAE,gBAAgB,CAAC,UAAU;EAAE,EAC/E;EAAC,YAAY;EAAqB,QAAQ;EAAK,gBAAgB;GAAC;GAAS;GAAQ;GAAU;GAAU;GAAU;EAAC,CAChH;CACD,OAAO;EACN,MAAM,YAAY,MAAM,OAAO,QAAQ;AAEtC,SAAM,KAAK,OAAO,OAAO,EAAE,SAAS,OAAO,EAAE,MAAM,IAAI,EAAE,IAAI,OAAO,IAAI,CAAC,CAAC,IAAI,EAC7E,SAAS,OAAO,SAChB,CAAC,CAAC;;EAEJ,MAAM,YAAY,MAAM,OAAO,QAAQ,WAAW;AACjD,OAAI,CAAC,OAAO,WAAW,WAAW,QAAW;AAE7C,SAAM,KAAK,OAAO,OAAO,EAAE,SAAS,OAAO,EAAE,MAAM,IAAI,EAAE,IAAI,OAAO,IAAI,CAAC,CAAC,IAAI,EAC7E,SAAS,OAAO,SAChB,CAAC,CAAC;;EAGJ;CAED,CAAC"}
|
package/server-D1Ye9ylc.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server-D1Ye9ylc.mjs","names":["Menu"],"sources":["../../packages/server/models/Menu.mjs","../../packages/server/models/Application.mjs","../../packages/server/models/Page.mjs","../../packages/server/models/Database.mjs","../../packages/server/models/FormLayout.mjs"],"sourcesContent":["import { uuid, createField, createModel } from '@yongdall/model';\n\nexport default createModel('menu', {\n\tid: createField('uuid', { nullable: false, default: uuid, uncreatable: true, primary: 1 }),\n\tgroupType: createField('string', { nullable: false, default: '', label: '分组类型' }),\n\tgroup: createField('text', { nullable: false, default: '', label: '分组' }),\n\tno: createField('i32', { nullable: false, default: 0, label: '顺序号' }),\n\ttype: createField('string', {\n\t\tnullable: false, default: '', label: '菜单类型', layout: { colSpan: 6 }, renderer: [{\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ value: '', label: '菜单' },\n\t\t\t\t{ value: 'button', label: '按钮' },\n\t\t\t\t{ value: 'divider', label: '分割线' },\n\t\t\t]\n\t\t}]\n\t}),\n\tlevel: createField('i16', { nullable: false, default: 0, layout: { hidden: true } }),\n\n\tlabel: createField('string', { nullable: false, default: '新菜单', label: '标签', layout: { colSpan: 6 } }),\n\ticon: createField('string', { nullable: false, default: '', label: '图标', layout: { colSpan: 6 } }),\n\timage: createField('text', { nullable: false, default: '', label: '图片', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\tcolor: createField('string', { nullable: false, default: '', label: '颜色', layout: { colSpan: 6 } }),\n\ttitle: createField('string', { nullable: false, default: '', label: '标题', layout: { colSpan: 6 } }),\n\tdescription: createField('text', { nullable: false, default: '', label: '描述', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\n\tpage: createField('text', { nullable: false, default: '', label: '页面', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\tpath: createField('text', { nullable: false, default: '', label: '页面路径', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\turi: createField('text', { nullable: false, default: '', label: 'URI', layout: { colSpan: 6 }, renderer: [{ component: 'uri' }] }),\n\tcommand: createField('text', { nullable: false, default: '', label: '命令', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\n\tscript: createField('text', { nullable: false, default: '', label: '脚本' }),\n\trefType: createField('string', { nullable: false, default: '', label: '引用类型', layout: { colSpan: 6 } }),\n\trefId: createField('string', { nullable: false, default: '', label: '引用ID', layout: { colSpan: 6 } }),\n\trefMode: createField('string', { nullable: false, default: '', label: '引用模式', layout: { colSpan: 6 } }),\n\n\tpermission: createField('text', { nullable: false, default: '', label: '权限', renderer: [{ component: 'permission' }] }),\n\tcollapsed: createField('bool', { nullable: false, default: true, label: '默认折叠', layout: { colSpan: 6 } }),\n\tautoLogin: createField('bool', { nullable: false, default: false, label: '自动登录', layout: { colSpan: 6 } }),\n\tapplicationId: createField('string', { nullable: false, default: '', label: '关联应用', layout: { colSpan: 6 } }),\n});\n","import { createField, createModel, uuid, Where } from '@yongdall/model';\nimport Menu from './Menu.mjs';\n\n\nconst UserMenu = createModel('application.userMenu', {\n\tapplicationId: createField('uuid', { nullable: false, label: '应用', primary: 1}),\n\tno: createField('i32', { nullable: false, default: 0, label: '顺序号', primary: 2 }),\n\ttype: createField('string', {\n\t\tnullable: false, default: '', label: '菜单类型', renderer: [{\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ value: '', label: '菜单' },\n\t\t\t\t// { value: 'button', label: '按钮' },\n\t\t\t\t{ value: 'divider', label: '分割线' },\n\t\t\t]\n\t\t}]\n\t}),\n\tlevel: createField('i16', { nullable: false, default: 0, layout: { hidden: true } }),\n\n\tlabel: createField('string', { nullable: false, default: '新菜单', label: '标签' }),\n\n\tpage: createField('text', { nullable: false, default: '', label: '页面', renderer: [{ component: 'string' }] }),\n\tpath: createField('text', { nullable: false, default: '', label: '页面路径', renderer: [{ component: 'string' }] }),\n\turi: createField('text', { nullable: false, default: '', label: 'URI', renderer: [{ component: 'uri' }] }),\n\tcommand: createField('text', { nullable: false, default: '', label: '命令', renderer: [{ component: 'string' }] }),\n\tlogged: createField('bool', { nullable: false, default: false, label: '仅登陆用户' }),\n});\n\n\nexport default createModel('application', {\n\tlabel: createField('string', { nullable: false, default: '', label: '名称', layout: { colSpan: 6 } }),\n\tcompany: createField('string', { nullable: false, default: '', label: '公司', layout: { colSpan: 6 } }),\n\ttitle: createField('string', { nullable: false, default: '', label: '标题', layout: { colSpan: 6 } }),\n\n\tid: createField('uuid', { nullable: false, default: uuid, renderer: 'string', layout: { colSpan: 6 }, uncreatable: true, primary: 1 }),\n\n\tdomain: createField('string', { nullable: false, default: '', label: '域名', layout: { colSpan: 4 } }),\n\tport: createField('i32', { nullable: false, default: 0, label: '端口', layout: { colSpan: 4 } }),\n\tpath: createField('string', { nullable: false, default: '', label: '路径', layout: { colSpan: 10 } }),\n\tdefault: createField('bool', { nullable: false, default: false, label: '默认', layout: { colSpan: 3 } }),\n\tsingleDefault: createField('bool', { nullable: false, default: false, label: '单用户默认', layout: { colSpan: 3 } }),\n\ttheme: createField('string', { nullable: false, default: '', label: '主题', layout: { colSpan: 7 }, renderer: { component: 'select', type: 'enumeration', name: 'theme', value: '{theme}' } }),\n\tskin: createField('string', { nullable: false, default: '', label: '皮肤', layout: { colSpan: 7 }, renderer: { component: 'select', type: 'enumeration', name: 'skin', value: '{skin}' } }),\n\tauthenticator: createField('string', { nullable: false, default: '', label: '登录器', layout: { colSpan: 7 }, renderer: { component: 'select', type: 'enumeration', name: 'authenticator', value: '{authenticator}' } }),\n\tauthRequired: createField('bool', { nullable: false, default: true, label: '强制登录', layout: { colSpan: 3 } }),\n\n\n\tlogo: createField('text', { nullable: false, default: '', label: 'LOGO', renderer: 'file', layout: { colSpan: 6 } }),\n\ttype: createField('string', { nullable: false, default: '', label: '类型', layout: { colSpan: 6 } }),\n\thttps: createField('bool', { nullable: false, default: false, label: '采用 HTTPS', layout: { colSpan: 6 } }),\n\n\thelp: createField('text', { nullable: true, default: '', label: '帮助链接', renderer: 'string', layout: { colSpan: 6 } }),\n\n\tmenus: createField(Menu, { array: true, constraints: { groupType: { value: 'application' }, group: { field: 'id' }, no: { noField: true } }, label: '菜单', layout: { levelKey: 'level', columns: [{ actions: ['collapse', 'move'] }, { field: 'label', placeholder: 1 }, { placeholder: 1 }, { actions: ['add', 'remove'] }] } }),\n\tuserMenus: createField(UserMenu, { array: true, constraints: { applicationId: { field: 'id' }, no: { noField: true } }, label: '用户菜单', layout: { levelKey: 'level', columns: [{ actions: ['collapse', 'move'] }, { field: 'label', placeholder: 1 }, { placeholder: 1 }, { actions: ['add', 'remove'] }] } }),\n\n\tdescription: createField('text', { nullable: false, default: '', label: '描述' }),\n\n}, {\n\tlabel: '应用',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{ fields: ['id', 'type', 'label', 'company', 'title', 'description'], authorizations: ['options'] },\n\t\t{ permission: 'system:application', fields: '*', authorizations: ['query', 'read', 'create', 'update', 'destroy', 'add', 'remove'] },\n\t],\n\thooks: {\n\t\tasync afterCreate(conn, Model, record) {\n\t\t\t/** @type {Record<string, any>} */\n\t\t\tlet data = {};\n\t\t\tif (record.default) {\n\t\t\t\tdata.default = false;\n\t\t\t}\n\t\t\tif (record.singleDefault) {\n\t\t\t\tdata.singleDefault = false;\n\t\t\t}\n\t\t\tif (!Object.keys(data)) { return; }\n\t\t\tawait conn.update(Model, data, Where.not({ id: record.id }).and({\n\t\t\t\tdomain: record.domain,\n\t\t\t\tport: record.port,\n\t\t\t}))\n\t\t},\n\n\t\tasync afterUpdate(conn, Model, record, oldRecord) {\n\t\t\t/** @type {Record<string, any>} */\n\t\t\tlet data = {};\n\t\t\tif (record.default && !oldRecord?.default) {\n\t\t\t\tdata.default = false;\n\t\t\t}\n\t\t\tif (record.singleDefault && !oldRecord?.singleDefault) {\n\t\t\t\tdata.singleDefault = false;\n\t\t\t}\n\t\t\tif (!Object.keys(data)) { return; }\n\t\t\tawait conn.update(Model, data, Where.not({ id: record.id }).and({\n\t\t\t\tdomain: record.domain,\n\t\t\t\tport: record.port,\n\t\t\t}))\n\t\t},\n\t}\n});\n","import { createField, createModel, uuid, now, Where } from '@yongdall/model';\n\nconst PageMenu = createModel('page.menu', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\tno: createField('i16', { nullable: false, default: 0, label: '顺序号', primary: 2 }),\n\n\ttype: createField('string', {\n\t\tnullable: false, default: '', label: '菜单类型', layout: { colSpan: 6 }, renderer: [{\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ value: '', label: '菜单' },\n\t\t\t\t{ value: 'divider', label: '分割线' },\n\t\t\t]\n\t\t}]\n\t}),\n\tlevel: createField('i16', { nullable: false, default: 0, layout: { hidden: true } }),\n\n\tlabel: createField('string', { nullable: false, default: '新菜单', label: '标签', layout: { colSpan: 6 } }),\n\ticon: createField('string', { nullable: false, default: '', label: '图标', layout: { colSpan: 6 } }),\n\tcolor: createField('string', { nullable: false, default: '', label: '颜色', layout: { colSpan: 6 } }),\n\ttitle: createField('string', { nullable: false, default: '', label: '标题', layout: { colSpan: 6 } }),\n\tdescription: createField('text', { nullable: false, default: '', label: '描述', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\n\tpage: createField('text', { nullable: false, default: '', label: '页面', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\tpath: createField('text', { nullable: false, default: '', label: '页面路径', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\turi: createField('text', { nullable: false, default: '', label: 'URI', layout: { colSpan: 6 }, renderer: [{ component: 'uri' }] }),\n\tcommand: createField('text', { nullable: false, default: '', label: '命令', layout: { colSpan: 6 }, renderer: [{ component: 'string' }] }),\n\n\tscript: createField('text', { nullable: false, default: '', label: '脚本' }),\n\n\tpermission: createField('text', { nullable: false, default: '', label: '权限', renderer: [{ component: 'permission' }] }),\n});\nconst PageField = createModel('page.field', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\tno: createField('i16', { nullable: false, primary: 2 }),\n\tfield: createField('string', { nullable: false, default: '', label: '字段', layout: { head: 1 } }),\n\tlabel: createField('string', { nullable: false, default: '', label: '列名', layout: { head: 2 } }),\n\twidth: createField('string', { nullable: false, default: '', label: '宽度', layout: { head: 3 } }),\n});\n\nconst PageForm = createModel('page.form', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\ttype: createField('string', { nullable: false, default: '', label: '类型', layout: { head: 1 }, primary: 2 }),\n\tno: createField('i16', { nullable: false }),\n\tlayoutId: createField('uuid', { nullable: false, model: 'formLayout', label: '布局', renderer: 'document', layout: { head: 1 } }),\n\tmode: createField('string', { nullable: false, default: '', label: '模式', layout: { head: 1 } }),\n\t// formId: createField('uuid', { nullable: true, label: '表单', layout: {head: 2} }),\n\t// serviceId: createField('uuid', { nullable: true, label: '服务接口', layout: {head: 3} }),\n});\n\nconst PageFilter = createModel('page.filter', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\tno: createField('i16', { nullable: false, primary: 2 }),\n\tfield: createField('string', { nullable: false, default: '', label: '字段', layout: { head: 1 } }),\n\toperator: createField('string', { nullable: false, default: '', label: '运算符', layout: { head: 1 } }),\n\t// not: createField('bool', { nullable: false, default: false, label: '否定' }),\n});\n\nconst PageSider = createModel('page.sider', {\n\tpageId: createField('uuid', { nullable: false, renderer: 'document', primary: 1 }),\n\tno: createField('i16', { nullable: false, primary: 2 }),\n\twidget: createField('string', { nullable: false, default: '', label: '组件', renderer: { component: 'select', type: 'enumeration', name: 'pageSider', value: '{widget}' } }),\n\n\toptions: createField('string', {nullable: false, default:'', label: '选项'}),\n\n\t// editLayoutId: createField('uuid', { nullable: false, model: 'formLayout', label: '布局', renderer: 'document', layout: { head: 1 } }),\n\t// editFormId: createField('uuid', { nullable: true, label: '表单', layout: {head: 2} }),\n\t// editServiceId: createField('uuid', { nullable: true, label: '服务接口', layout: {head: 3} }),\n\n\t// createLayoutId: createField('uuid', { nullable: false, model: 'formLayout', label: '布局', renderer: 'document', layout: { head: 1 } }),\n\t// createFormId: createField('uuid', { nullable: true, label: '表单', layout: {head: 2} }),\n\t// createServiceId: createField('uuid', { nullable: true, label: '服务接口', layout: {head: 3} }),\n});\n\nexport default createModel('page', {\n\tmodel: createField('string', { nullable: false, default: '', label: '模型', layout: { colSpan: 6 } }),\n\torganization: createField('string', { nullable: false, default: '', label: '组织', layout: { colSpan: 6 } }),\n\tuser: createField('string', { nullable: false, default: '', label: '用户', layout: { colSpan: 6 } }),\n\tworkspace: createField('string', { nullable: false, default: '', label: '工作区', layout: { colSpan: 6 } }),\n\n\tpage: createField('string', {\n\t\tnullable: false, default: '', label: '页面', layout: { colSpan: 6 }, renderer: {\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ label: '列表页', value: 'main' },\n\t\t\t\t{ label: '创建页', value: 'input' },\n\t\t\t\t{ label: '编辑页', value: 'edit' },\n\t\t\t\t{ label: '详情页', value: 'details' },\n\t\t\t\t{ label: '复制页', value: 'copy' },\n\t\t\t]\n\t\t}\n\t}),\n\twidget: createField('string', { nullable: false, default: '', label: '组件', layout: { colSpan: 6 }, renderer: { component: 'select', type: 'enumeration', name: 'page', value: '{page}', filter: 'type=?page' } }),\n\n\t// TODO: 过滤器\n\t// TODO: 分页\n\t// TODO: 分组查询\n\t// TODO: 活动\n\t// TODO: 时间段字段\n\n\tlabel: createField('string', { nullable: false, default: '', label: '名称', layout: { colSpan: 6 } }),\n\ttitle: createField('string', { nullable: false, default: '', label: '标题', layout: { colSpan: 6 } }),\n\ttitlePattern: createField('string', { nullable: false, default: '', label: '标题模式', layout: { colSpan: 6 } }),\n\tcurrent: createField('bool', { nullable: false, default: false, label: '当前', layout: { colSpan: 6 } }),\n\n\tid: createField('uuid', { nullable: false, default: uuid, uncreatable: true, primary: 1, renderer: 'string', layout: { colSpan: 6 } }),\n\n\n\tconfig: createField('json', { nullable: false, default: {}, label: '配置' }),\n\n\tdefaultQuery: createField('string', { nullable: false, default: '', label: '默认查询' }),\n\thiddenFilter: createField('string', { nullable: false, default: '', label: '隐藏过滤条件' }),\n\n\tfields: createField(PageField, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '显示字段', layout: { columns: [{ actions: ['add', 'move', 'remove', 'serial'] }, { field: 'field' }, { field: 'label' }, { field: 'width' }] } }),\n\tfilters: createField(PageFilter, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '快速过滤', layout: { columns: [{ actions: ['add', 'move', 'remove', 'serial'] }, { field: 'field' }, { field: 'operator' }, { field: 'not' }] } }),\n\n\tforms: createField(PageForm, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '表单配置', layout: { columns: [{ actions: ['add', 'move', 'remove', 'serial'] }, { field: 'type' }, { field: 'layoutId' }, { field: 'mode' }] } }),\n\tmenus: createField(PageMenu, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '菜单配置', layout: { levelKey: 'level', columns: [{ actions: ['collapse', 'move'] }, { field: 'label', placeholder: 1 }, { placeholder: 1 }, { actions: ['add', 'remove'] }] } }),\n\n\tsides: createField(PageSider, { array: true, constraints: { pageId: { field: 'id' }, no: { noField: true } }, label: '侧边栏', layout: { columns: [{ actions: ['add', 'move', 'remove', 'collapse', 'serial'] }, { field: 'widget' }] } }),\n\tdescription: createField('text', { nullable: false, default: '', label: '描述' }),\n\n\tcreatedAt: createField('timestamp', { nullable: false, creating: now, label: '创建时间' }),\n\tupdatedAt: createField('timestamp', { nullable: false, updating: now, label: '更新时间' }),\n\n}, {\n\tlabel: '页面',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{permission: 'system:page', fields: '*', authorizations: ['query', 'read', 'create', 'update', 'destroy', 'add', 'remove'] },\n\t],\n\tindexes: [\n\t\t{ fields: ['model', 'organization', 'user', 'workspace', 'page', 'current'] }\n\t],\n\thooks: {\n\t\tasync afterCreate(conn, Model, record) {\n\t\t\tawait conn.update(Model, { current: false },\n\t\t\t\tWhere.not({ id: record.id }).and({\n\t\t\t\t\tmodel: record.model,\n\t\t\t\t\torganization: record.organization,\n\t\t\t\t\tuser: record.user,\n\t\t\t\t\tworkspace: record.workspace,\n\t\t\t\t\tpage: record.page,\n\t\t\t\t}))\n\t\t},\n\t\tasync afterUpdate(conn, Model, record, oldRecord) {\n\t\t\tif (!record.current || oldRecord?.current) { return; }\n\t\t\tawait conn.update(Model, { current: false },\n\t\t\t\tWhere.not({ id: record.id }).and({\n\t\t\t\t\tmodel: record.model,\n\t\t\t\t\torganization: record.organization,\n\t\t\t\t\tuser: record.user,\n\t\t\t\t\tworkspace: record.workspace,\n\t\t\t\t\tpage: record.page,\n\t\t\t\t}))\n\t\t}\n\n\t}\n});\n","import { createField, createModel, now, uuid } from '@yongdall/model';\n\nexport default createModel('database', {\n\tid: createField('uuid', { nullable: false, default: uuid, renderer: 'string', uncreatable: true, primary: 1 }),\n\n\ttype: createField('string', {\n\t\tnullable: false, immutable: true, label: '类型', renderer: {\n\t\t\tcomponent: 'select', values: [\n\t\t\t\t{ value: 'rdb', label: '关系型数据库' },\n\t\t\t\t{ value: 'fs', label: '文件存储' },\n\t\t\t\t{ value: 'mq', label: '消息队列' },\n\t\t\t\t{ value: 'tq', label: '任务队列' },\n\t\t\t\t{ value: 'cache', label: '缓存' },\n\t\t\t]\n\t\t}\n\t}),\n\tlabel: createField('string', { nullable: false, default: '', label: '名称' }),\n\tname: createField('string', { nullable: false, immutable: true, label: '标识' }),\n\turi: createField('string', { nullable: false, label: '路径' }),\n\tcreatedAt: createField('timestamp', { nullable: false, creating: now, label: '创建时间' }),\n\tupdatedAt: createField('timestamp', { nullable: false, updating: now, label: '更新时间' }),\n}, {\n\tlabel: '数据库',\n\tlabelField: 'label',\n\tindexes: [\n\t\t{ fields: ['type', 'name'], unique: true }\n\t],\n\n\tpermissions: [\n\t\t{ fields: ['id', 'type', 'label', 'name'], authorizations: ['options'] },\n\t\t{ permission: 'system:database', fields: ['id', 'type', 'label', 'name', 'createdAt', 'updatedAt'], authorizations: ['query'] },\n\t\t{ permission: 'system:database', fields: '*', authorizations: ['read', 'create', 'update', 'destroy'] },\n\t],\n});\n","import { createField, createModel, uuid, now, Where } from '@yongdall/model';\n\n\nexport default createModel('formLayout', {\n\tid: createField('uuid', { nullable: false, default: uuid, uncreatable: true, primary: 1 }),\n\tlabel: createField('string', { nullable: false, default: '', label: '名称', layout: { colSpan: 6 } }),\n\n\tmodelId: createField('string', { nullable: false, default: '', label: '模型', layout: { colSpan: 6 } }),\n\n\tdefault: createField('bool', { nullable: false, default: false, label: '默认布局' }),\n\n\ttype: createField('string', { nullable: false, default: '', label: '类型', layout: { colSpan: 6 } }),\n\n\tlayout: createField('json', { nullable: false, default: {}, label: '布局' }),\n\n\n\n\n\tdescription: createField('text', { nullable: false, default: '', label: '描述' }),\n\n\tcreatedAt: createField('timestamp', { nullable: false, creating: now, label: '创建时间' }),\n\tupdatedAt: createField('timestamp', { nullable: false, updating: now, label: '更新时间' }),\n}, {\n\tlabel: '表单布局',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{ fields: ['id', 'type', 'label', 'description'], authorizations: ['options'] },\n\t\t{permission: 'system:formLayout', fields: '*', authorizations: ['query', 'read', 'create', 'update', 'destroy']},\n\t],\n\thooks: {\n\t\tasync afterCreate(conn, Model, record) {\n\n\t\t\tawait conn.update(Model, { default: false }, Where.not({ id: record.id }).and({\n\t\t\t\tmodelId: record.modelId,\n\t\t\t}))\n\t\t},\n\t\tasync afterUpdate(conn, Model, record, oldRecord) {\n\t\t\tif (!record.default || oldRecord?.default) { return }\n\n\t\t\tawait conn.update(Model, { default: false }, Where.not({ id: record.id }).and({\n\t\t\t\tmodelId: record.modelId,\n\t\t\t}))\n\t\t},\n\n\t}\n\n});\n"],"mappings":"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"}
|