@things-factory/operato-dataset 9.0.0-beta.27 → 9.0.0-beta.29

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.
@@ -0,0 +1,12 @@
1
+ import '@operato/i18n/ox-i18n.js';
2
+ import '@things-factory/notification/dist-client';
3
+ import '@things-factory/auth-ui/dist-client';
4
+ import '@things-factory/i18n-base/dist-client/page/terminology-page.js';
5
+ import '@things-factory/setting-ui/dist-client';
6
+ import '@things-factory/context-ui/dist-client/title-on-page-header-setting-let';
7
+ import '@operato/dataset/usecase/ccp';
8
+ import '@operato/dataset/usecase/qc';
9
+ import '@operato/dataset/ox-property-editor-ccp-limits.js';
10
+ import '@operato/dataset/ox-property-editor-qc-limits.js';
11
+ import '@things-factory/setting-ui/dist-client';
12
+ export default function bootstrap(): Promise<void>;
@@ -0,0 +1,317 @@
1
+ import '@operato/i18n/ox-i18n.js';
2
+ import '@things-factory/notification/dist-client';
3
+ import '@things-factory/auth-ui/dist-client'; /* for domain-switch */
4
+ import '@things-factory/i18n-base/dist-client/page/terminology-page.js';
5
+ import '@things-factory/setting-ui/dist-client'; /* for theme-mode-setting-let */
6
+ import '@things-factory/context-ui/dist-client/title-on-page-header-setting-let'; /* for title-on-page-header-setting-let */
7
+ import '@operato/dataset/usecase/ccp';
8
+ import '@operato/dataset/usecase/qc';
9
+ import '@operato/dataset/ox-property-editor-ccp-limits.js';
10
+ import '@operato/dataset/ox-property-editor-qc-limits.js';
11
+ import '@things-factory/setting-ui/dist-client';
12
+ import { html } from 'lit-html';
13
+ import { registerDefaultGroups } from '@operato/board';
14
+ import { navigate, store } from '@operato/shell';
15
+ import { OxPropertyEditor } from '@operato/property-editor';
16
+ import { i18next } from '@operato/i18n';
17
+ import { isMobileDevice } from '@operato/utils';
18
+ import { appendViewpart, toggleOverlay, TOOL_POSITION, VIEWPART_POSITION } from '@operato/layout';
19
+ import { auth, hasPrivilege } from '@things-factory/auth-base/dist-client';
20
+ import { setAuthManagementMenus } from '@things-factory/auth-ui/dist-client';
21
+ import { setupMenuPart, updateMenuTemplate } from '@things-factory/lite-menu/dist-client';
22
+ import { setupAppToolPart } from '@things-factory/apptool-ui/dist-client';
23
+ import { setupContextUIPart } from '@things-factory/context-ui/dist-client';
24
+ import { ADD_SETTING } from '@things-factory/setting-base/dist-client';
25
+ import { ADD_MORENDA } from '@things-factory/more-base/client';
26
+ import { APPEND_APP_TOOL } from '@things-factory/apptool-base/client';
27
+ import { getMenuTemplate } from './menu';
28
+ import { queryDataSets } from './query-data-sets';
29
+ console.log(`%c
30
+ ▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄ ▄▄▄ ▄▄ ▄ ▄ ▄▄ ▄▄▄ ▄▄▄ ▄▄▄
31
+ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓
32
+ ▓ ▓ ▓▀▀ ▓▀▀ ▓▀▀▄ ▓▀▀▓ ▓ ▓ ▓ ▀▀ ▓▀▀▓ ▓▀▀▓ ▓ ▓ ▓▀▀
33
+ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓
34
+ ▀▀ ▀ ▀▀▀ ▀ ▀ ▀ ▀ ▀ ▀▀ ▀ ▀ ▀ ▀ ▀▀▀ ▀▀▀ ▀
35
+ `, 'background: #222; color: #bada55');
36
+ export default async function bootstrap() {
37
+ /* set board-modeller group and default templates */
38
+ registerDefaultGroups();
39
+ const mobile = isMobileDevice();
40
+ await setupAppToolPart({
41
+ toolbar: true,
42
+ busybar: true,
43
+ mdibar: mobile ? false : true,
44
+ pageToolbar: mobile ? false : true
45
+ });
46
+ await setupContextUIPart({
47
+ titlebar: 'header',
48
+ contextToolbar: 'page-footer'
49
+ });
50
+ await setupMenuPart({
51
+ slotTemplate: html ` <domain-switch attrname="description" slot="tail"></domain-switch> `,
52
+ hovering: true
53
+ });
54
+ OxPropertyEditor.register({
55
+ 'ccp-limits': 'ox-property-editor-ccp-limits',
56
+ 'qc-limits': 'ox-property-editor-qc-limits'
57
+ });
58
+ /* add setting morenda */
59
+ store.dispatch({
60
+ type: ADD_MORENDA,
61
+ morenda: {
62
+ icon: html ` <md-icon>settings</md-icon> `,
63
+ name: html ` <ox-i18n msgid="label.setting"></ox-i18n> `,
64
+ action: () => {
65
+ navigate('setting');
66
+ }
67
+ }
68
+ });
69
+ /* add addon-menu management page morenda */
70
+ if (await hasPrivilege({ privilege: 'mutation', category: 'menu', domainOwnerGranted: true, superUserGranted: true })) {
71
+ store.dispatch({
72
+ type: ADD_MORENDA,
73
+ morenda: {
74
+ icon: html ` <md-icon>view_list</md-icon> `,
75
+ name: html ` <ox-i18n msgid="text.addon-menu management"></ox-i18n> `,
76
+ action: () => {
77
+ navigate('addon-menu-setting');
78
+ }
79
+ }
80
+ });
81
+ }
82
+ /* set auth management menus into more-panel */
83
+ setAuthManagementMenus();
84
+ if (await hasPrivilege({ privilege: 'mutation', category: 'user', domainOwnerGranted: true, superUserGranted: true })) {
85
+ store.dispatch({
86
+ type: ADD_MORENDA,
87
+ morenda: {
88
+ icon: html ` <md-icon>vpn_key</md-icon> `,
89
+ name: html ` <ox-i18n msgid="text.oauth2-clients"></ox-i18n> `,
90
+ action: () => {
91
+ navigate('oauth2-clients');
92
+ }
93
+ }
94
+ });
95
+ }
96
+ if (await hasPrivilege({ privilege: 'mutation', category: 'board', domainOwnerGranted: true })) {
97
+ store.dispatch({
98
+ type: ADD_MORENDA,
99
+ morenda: {
100
+ icon: html ` <md-icon>font_download</md-icon> `,
101
+ name: html ` <ox-i18n msgid="menu.fonts"></ox-i18n> `,
102
+ action: () => {
103
+ navigate('font-list');
104
+ }
105
+ }
106
+ });
107
+ store.dispatch({
108
+ type: ADD_MORENDA,
109
+ morenda: {
110
+ icon: html ` <md-icon>dvr</md-icon> `,
111
+ name: html ` <ox-i18n msgid="menu.board-list"></ox-i18n> `,
112
+ action: () => {
113
+ navigate('board-list');
114
+ }
115
+ }
116
+ });
117
+ store.dispatch({
118
+ type: ADD_MORENDA,
119
+ morenda: {
120
+ icon: html ` <md-icon>airplay</md-icon> `,
121
+ name: html ` <ox-i18n msgid="menu.play-groups"></ox-i18n> `,
122
+ action: () => {
123
+ navigate('play-list');
124
+ }
125
+ }
126
+ });
127
+ }
128
+ if (await hasPrivilege({ privilege: 'query', category: 'attachment', domainOwnerGranted: true })) {
129
+ store.dispatch({
130
+ type: ADD_MORENDA,
131
+ morenda: {
132
+ icon: html ` <md-icon>attachment</md-icon> `,
133
+ name: html ` <ox-i18n msgid="menu.attachments"></ox-i18n> `,
134
+ action: () => {
135
+ navigate('attachment-list');
136
+ }
137
+ }
138
+ });
139
+ }
140
+ if (await hasPrivilege({
141
+ privilege: 'mutation',
142
+ category: 'scenario',
143
+ domainOwnerGranted: true,
144
+ superUserGranted: true
145
+ })) {
146
+ store.dispatch({
147
+ type: ADD_MORENDA,
148
+ morenda: {
149
+ icon: html ` <md-icon>device_hub</md-icon> `,
150
+ name: html ` <ox-i18n msgid="text.connection"></ox-i18n> `,
151
+ action: () => {
152
+ navigate('connection');
153
+ }
154
+ }
155
+ });
156
+ store.dispatch({
157
+ type: ADD_MORENDA,
158
+ morenda: {
159
+ icon: html ` <md-icon>format_list_numbered</md-icon> `,
160
+ name: html ` <ox-i18n msgid="text.scenario"></ox-i18n> `,
161
+ action: () => {
162
+ navigate('scenario');
163
+ }
164
+ }
165
+ });
166
+ store.dispatch({
167
+ type: ADD_MORENDA,
168
+ morenda: {
169
+ icon: html ` <md-icon>hub</md-icon> `,
170
+ name: html ` <ox-i18n msgid="text.integration analysis"></ox-i18n>&nbsp;(beta)`,
171
+ action: () => {
172
+ navigate('integration-analysis');
173
+ }
174
+ }
175
+ });
176
+ }
177
+ if (await hasPrivilege({ privilege: 'mutation', category: 'state-register', domainOwnerGranted: true })) {
178
+ store.dispatch({
179
+ type: ADD_MORENDA,
180
+ morenda: {
181
+ icon: html ` <md-icon>app_registration</md-icon> `,
182
+ name: html ` <ox-i18n msgid="title.state-register"></ox-i18n> `,
183
+ action: () => {
184
+ navigate('state-register-page');
185
+ }
186
+ }
187
+ });
188
+ }
189
+ if (await hasPrivilege({ privilege: 'mutation', category: 'terminology', domainOwnerGranted: true })) {
190
+ store.dispatch({
191
+ type: ADD_MORENDA,
192
+ morenda: {
193
+ icon: html ` <md-icon>translate</md-icon> `,
194
+ name: html ` <ox-i18n msgid="title.terminology"></ox-i18n> `,
195
+ action: () => {
196
+ navigate('terminology-page');
197
+ }
198
+ }
199
+ });
200
+ }
201
+ auth.on('profile', async ({ credential }) => {
202
+ i18next.on('languageChanged', async () => {
203
+ updateMenuTemplate(getMenuTemplate(credential.owner, await queryDataSets()));
204
+ });
205
+ updateMenuTemplate(getMenuTemplate(credential.owner, await queryDataSets()));
206
+ if (credential.owner) {
207
+ store.dispatch({
208
+ type: ADD_MORENDA,
209
+ morenda: {
210
+ icon: html ` <md-icon>pending_actions</md-icon> `,
211
+ name: html ` <ox-i18n msgid="title.work-shift"></ox-i18n> `,
212
+ action: () => {
213
+ navigate('work-shift');
214
+ }
215
+ }
216
+ });
217
+ store.dispatch({
218
+ type: ADD_MORENDA,
219
+ morenda: {
220
+ icon: html ` <md-icon>device_hub</md-icon> `,
221
+ name: html ` <ox-i18n msgid="text.installable-activities"></ox-i18n> `,
222
+ action: () => {
223
+ navigate('installable-activity-list');
224
+ }
225
+ }
226
+ });
227
+ }
228
+ if (credential.super) {
229
+ store.dispatch({
230
+ type: ADD_MORENDA,
231
+ morenda: {
232
+ icon: html ` <md-icon>event_repeat</md-icon> `,
233
+ name: html ` <ox-i18n msgid="title.schedule list"></ox-i18n> `,
234
+ action: () => {
235
+ navigate('schedule-list');
236
+ }
237
+ }
238
+ });
239
+ }
240
+ store.dispatch({
241
+ type: ADD_MORENDA,
242
+ morenda: {
243
+ icon: html ` <md-icon>extension</md-icon> `,
244
+ name: html ` <ox-i18n msgid="text.api-sandbox"></ox-i18n> `,
245
+ action: () => {
246
+ navigate('api-swagger');
247
+ }
248
+ }
249
+ });
250
+ // store.dispatch({
251
+ // type: ADD_MORENDA,
252
+ // morenda: {
253
+ // icon: html` <md-icon>help</md-icon> `,
254
+ // name: html` <ox-i18n msgid="text.help"></ox-i18n> `,
255
+ // action: () => {
256
+ // navigate('help')
257
+ // }
258
+ // }
259
+ // })
260
+ /* setting app-tools */
261
+ store.dispatch({
262
+ type: APPEND_APP_TOOL,
263
+ tool: {
264
+ name: 'notification-badge',
265
+ template: html `
266
+ <notification-badge
267
+ @click=${e => {
268
+ toggleOverlay('notification', {
269
+ backdrop: true
270
+ });
271
+ }}
272
+ >
273
+ </notification-badge>
274
+ `,
275
+ position: TOOL_POSITION.REAR
276
+ }
277
+ });
278
+ appendViewpart({
279
+ name: 'notification',
280
+ viewpart: {
281
+ show: false,
282
+ hovering: 'edge',
283
+ template: html ` <notification-list style="min-width: 300px;"></notification-list> `
284
+ },
285
+ position: VIEWPART_POSITION.ASIDEBAR
286
+ });
287
+ store.dispatch({
288
+ type: ADD_SETTING,
289
+ setting: {
290
+ seq: 10,
291
+ template: html ` <theme-mode-setting-let></theme-mode-setting-let> `
292
+ }
293
+ });
294
+ store.dispatch({
295
+ type: ADD_SETTING,
296
+ setting: {
297
+ seq: 20,
298
+ template: html ` <notification-setting-let></notification-setting-let> `
299
+ }
300
+ });
301
+ store.dispatch({
302
+ type: ADD_SETTING,
303
+ setting: {
304
+ seq: 21,
305
+ template: html ` <lite-menu-setting-let></lite-menu-setting-let> `
306
+ }
307
+ });
308
+ store.dispatch({
309
+ type: ADD_SETTING,
310
+ setting: {
311
+ seq: 22,
312
+ template: html ` <title-on-page-header-setting-let></title-on-page-header-setting-let> `
313
+ }
314
+ });
315
+ });
316
+ }
317
+ //# sourceMappingURL=bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../client/bootstrap.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/i18n/ox-i18n.js'\nimport '@things-factory/notification/dist-client'\nimport '@things-factory/auth-ui/dist-client' /* for domain-switch */\nimport '@things-factory/i18n-base/dist-client/page/terminology-page.js'\nimport '@things-factory/setting-ui/dist-client' /* for theme-mode-setting-let */\nimport '@things-factory/context-ui/dist-client/title-on-page-header-setting-let' /* for title-on-page-header-setting-let */\n\nimport '@operato/dataset/usecase/ccp'\nimport '@operato/dataset/usecase/qc'\nimport '@operato/dataset/ox-property-editor-ccp-limits.js'\nimport '@operato/dataset/ox-property-editor-qc-limits.js'\n\nimport '@things-factory/setting-ui/dist-client'\n\nimport { html } from 'lit-html'\n\nimport { registerDefaultGroups } from '@operato/board'\nimport { navigate, store } from '@operato/shell'\nimport { OxPropertyEditor } from '@operato/property-editor'\nimport { i18next } from '@operato/i18n'\nimport { isMobileDevice } from '@operato/utils'\n\nimport { appendViewpart, toggleOverlay, TOOL_POSITION, VIEWPART_POSITION } from '@operato/layout'\n\nimport { auth, hasPrivilege } from '@things-factory/auth-base/dist-client'\nimport { setAuthManagementMenus } from '@things-factory/auth-ui/dist-client'\nimport { setupMenuPart, updateMenuTemplate } from '@things-factory/lite-menu/dist-client'\nimport { setupAppToolPart } from '@things-factory/apptool-ui/dist-client'\nimport { setupContextUIPart } from '@things-factory/context-ui/dist-client'\nimport { ADD_SETTING } from '@things-factory/setting-base/dist-client'\nimport { ADD_MORENDA } from '@things-factory/more-base/client'\nimport { APPEND_APP_TOOL } from '@things-factory/apptool-base/client'\n\nimport { getMenuTemplate } from './menu'\nimport { queryDataSets } from './query-data-sets'\n\nconsole.log(\n `%c\n ▄▄ ▄▄▄ ▄▄▄ ▄▄▄ ▄▄ ▄▄▄ ▄▄ ▄ ▄ ▄▄ ▄▄▄ ▄▄▄ ▄▄▄ \n ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓\n ▓ ▓ ▓▀▀ ▓▀▀ ▓▀▀▄ ▓▀▀▓ ▓ ▓ ▓ ▀▀ ▓▀▀▓ ▓▀▀▓ ▓ ▓ ▓▀▀ \n ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ \n ▀▀ ▀ ▀▀▀ ▀ ▀ ▀ ▀ ▀ ▀▀ ▀ ▀ ▀ ▀ ▀▀▀ ▀▀▀ ▀ \n`,\n 'background: #222; color: #bada55'\n)\n\nexport default async function bootstrap() {\n /* set board-modeller group and default templates */\n registerDefaultGroups()\n\n const mobile = isMobileDevice()\n\n await setupAppToolPart({\n toolbar: true,\n busybar: true,\n mdibar: mobile ? false : true,\n pageToolbar: mobile ? false : true\n })\n\n await setupContextUIPart({\n titlebar: 'header',\n contextToolbar: 'page-footer'\n })\n\n await setupMenuPart({\n slotTemplate: html` <domain-switch attrname=\"description\" slot=\"tail\"></domain-switch> `,\n hovering: true\n })\n\n OxPropertyEditor.register({\n 'ccp-limits': 'ox-property-editor-ccp-limits',\n 'qc-limits': 'ox-property-editor-qc-limits'\n })\n\n /* add setting morenda */\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>settings</md-icon> `,\n name: html` <ox-i18n msgid=\"label.setting\"></ox-i18n> `,\n action: () => {\n navigate('setting')\n }\n }\n })\n\n /* add addon-menu management page morenda */\n if (\n await hasPrivilege({ privilege: 'mutation', category: 'menu', domainOwnerGranted: true, superUserGranted: true })\n ) {\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>view_list</md-icon> `,\n name: html` <ox-i18n msgid=\"text.addon-menu management\"></ox-i18n> `,\n action: () => {\n navigate('addon-menu-setting')\n }\n }\n })\n }\n\n /* set auth management menus into more-panel */\n setAuthManagementMenus()\n\n if (\n await hasPrivilege({ privilege: 'mutation', category: 'user', domainOwnerGranted: true, superUserGranted: true })\n ) {\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>vpn_key</md-icon> `,\n name: html` <ox-i18n msgid=\"text.oauth2-clients\"></ox-i18n> `,\n action: () => {\n navigate('oauth2-clients')\n }\n }\n })\n }\n\n if (await hasPrivilege({ privilege: 'mutation', category: 'board', domainOwnerGranted: true })) {\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>font_download</md-icon> `,\n name: html` <ox-i18n msgid=\"menu.fonts\"></ox-i18n> `,\n action: () => {\n navigate('font-list')\n }\n }\n })\n\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>dvr</md-icon> `,\n name: html` <ox-i18n msgid=\"menu.board-list\"></ox-i18n> `,\n action: () => {\n navigate('board-list')\n }\n }\n })\n\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>airplay</md-icon> `,\n name: html` <ox-i18n msgid=\"menu.play-groups\"></ox-i18n> `,\n action: () => {\n navigate('play-list')\n }\n }\n })\n }\n\n if (await hasPrivilege({ privilege: 'query', category: 'attachment', domainOwnerGranted: true })) {\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>attachment</md-icon> `,\n name: html` <ox-i18n msgid=\"menu.attachments\"></ox-i18n> `,\n action: () => {\n navigate('attachment-list')\n }\n }\n })\n }\n\n if (\n await hasPrivilege({\n privilege: 'mutation',\n category: 'scenario',\n domainOwnerGranted: true,\n superUserGranted: true\n })\n ) {\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>device_hub</md-icon> `,\n name: html` <ox-i18n msgid=\"text.connection\"></ox-i18n> `,\n action: () => {\n navigate('connection')\n }\n }\n })\n\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>format_list_numbered</md-icon> `,\n name: html` <ox-i18n msgid=\"text.scenario\"></ox-i18n> `,\n action: () => {\n navigate('scenario')\n }\n }\n })\n\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>hub</md-icon> `,\n name: html` <ox-i18n msgid=\"text.integration analysis\"></ox-i18n>&nbsp;(beta)`,\n action: () => {\n navigate('integration-analysis')\n }\n }\n })\n }\n\n if (await hasPrivilege({ privilege: 'mutation', category: 'state-register', domainOwnerGranted: true })) {\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>app_registration</md-icon> `,\n name: html` <ox-i18n msgid=\"title.state-register\"></ox-i18n> `,\n action: () => {\n navigate('state-register-page')\n }\n }\n })\n }\n\n if (await hasPrivilege({ privilege: 'mutation', category: 'terminology', domainOwnerGranted: true })) {\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>translate</md-icon> `,\n name: html` <ox-i18n msgid=\"title.terminology\"></ox-i18n> `,\n action: () => {\n navigate('terminology-page')\n }\n }\n })\n }\n\n auth.on('profile', async ({ credential }) => {\n i18next.on('languageChanged', async () => {\n updateMenuTemplate(getMenuTemplate(credential.owner, await queryDataSets()))\n })\n\n updateMenuTemplate(getMenuTemplate(credential.owner, await queryDataSets()))\n\n if (credential.owner) {\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>pending_actions</md-icon> `,\n name: html` <ox-i18n msgid=\"title.work-shift\"></ox-i18n> `,\n action: () => {\n navigate('work-shift')\n }\n }\n })\n\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>device_hub</md-icon> `,\n name: html` <ox-i18n msgid=\"text.installable-activities\"></ox-i18n> `,\n action: () => {\n navigate('installable-activity-list')\n }\n }\n })\n }\n\n if (credential.super) {\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>event_repeat</md-icon> `,\n name: html` <ox-i18n msgid=\"title.schedule list\"></ox-i18n> `,\n action: () => {\n navigate('schedule-list')\n }\n }\n })\n }\n\n store.dispatch({\n type: ADD_MORENDA,\n morenda: {\n icon: html` <md-icon>extension</md-icon> `,\n name: html` <ox-i18n msgid=\"text.api-sandbox\"></ox-i18n> `,\n action: () => {\n navigate('api-swagger')\n }\n }\n })\n\n // store.dispatch({\n // type: ADD_MORENDA,\n // morenda: {\n // icon: html` <md-icon>help</md-icon> `,\n // name: html` <ox-i18n msgid=\"text.help\"></ox-i18n> `,\n // action: () => {\n // navigate('help')\n // }\n // }\n // })\n\n /* setting app-tools */\n store.dispatch({\n type: APPEND_APP_TOOL,\n tool: {\n name: 'notification-badge',\n template: html`\n <notification-badge\n @click=${e => {\n toggleOverlay('notification', {\n backdrop: true\n })\n }}\n >\n </notification-badge>\n `,\n position: TOOL_POSITION.REAR\n }\n })\n\n appendViewpart({\n name: 'notification',\n viewpart: {\n show: false,\n hovering: 'edge',\n template: html` <notification-list style=\"min-width: 300px;\"></notification-list> `\n },\n position: VIEWPART_POSITION.ASIDEBAR\n })\n\n store.dispatch({\n type: ADD_SETTING,\n setting: {\n seq: 10,\n template: html` <theme-mode-setting-let></theme-mode-setting-let> `\n }\n })\n\n store.dispatch({\n type: ADD_SETTING,\n setting: {\n seq: 20,\n template: html` <notification-setting-let></notification-setting-let> `\n }\n })\n\n store.dispatch({\n type: ADD_SETTING,\n setting: {\n seq: 21,\n template: html` <lite-menu-setting-let></lite-menu-setting-let> `\n }\n })\n\n store.dispatch({\n type: ADD_SETTING,\n setting: {\n seq: 22,\n template: html` <title-on-page-header-setting-let></title-on-page-header-setting-let> `\n }\n })\n })\n}\n"]}
File without changes
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../client/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
@@ -0,0 +1,77 @@
1
+ export declare function getMenuTemplate(owner: boolean | undefined, dataSets: any[]): (false | {
2
+ name: string;
3
+ type: string;
4
+ icon?: undefined;
5
+ path?: undefined;
6
+ badge?: undefined;
7
+ active?: undefined;
8
+ description?: undefined;
9
+ menus?: undefined;
10
+ } | {
11
+ name: string;
12
+ icon: string;
13
+ path: string;
14
+ badge: () => import("lit-html/directive").DirectiveResult<typeof import("lit-html/directives/async-replace").AsyncReplaceDirective>;
15
+ active: ({ path }: {
16
+ path: any;
17
+ }) => boolean;
18
+ type?: undefined;
19
+ description?: undefined;
20
+ menus?: undefined;
21
+ } | {
22
+ name: string;
23
+ icon: string;
24
+ path: string;
25
+ badge: () => import("lit-html/directive").DirectiveResult<typeof import("lit-html/directives/async-replace").AsyncReplaceDirective>;
26
+ type?: undefined;
27
+ active?: undefined;
28
+ description?: undefined;
29
+ menus?: undefined;
30
+ } | {
31
+ name: string;
32
+ icon: string;
33
+ path: string;
34
+ type?: undefined;
35
+ badge?: undefined;
36
+ active?: undefined;
37
+ description?: undefined;
38
+ menus?: undefined;
39
+ } | {
40
+ name: string;
41
+ icon: string;
42
+ path: string;
43
+ description: string;
44
+ menus: {
45
+ name: string;
46
+ icon: string;
47
+ path: string;
48
+ }[];
49
+ type?: undefined;
50
+ badge?: undefined;
51
+ active?: undefined;
52
+ } | {
53
+ name: string;
54
+ icon: string;
55
+ path: string;
56
+ menus: {
57
+ name: any;
58
+ icon: string;
59
+ path: string;
60
+ }[];
61
+ type?: undefined;
62
+ badge?: undefined;
63
+ active?: undefined;
64
+ description?: undefined;
65
+ } | {
66
+ name: string;
67
+ icon: string;
68
+ description: string;
69
+ menus: {
70
+ name: string;
71
+ path: string;
72
+ }[];
73
+ type?: undefined;
74
+ path?: undefined;
75
+ badge?: undefined;
76
+ active?: undefined;
77
+ })[];
@@ -0,0 +1,164 @@
1
+ import { asyncReplace } from 'lit/directives/async-replace.js';
2
+ import i18next from 'i18next';
3
+ import { generateActivitySummary, startSubscribeActivitySummary } from '@things-factory/worklist/dist-client';
4
+ startSubscribeActivitySummary();
5
+ export function getMenuTemplate(owner = false, dataSets) {
6
+ return [
7
+ {
8
+ name: i18next.t('title.my workspace'),
9
+ type: 'group'
10
+ },
11
+ {
12
+ name: i18next.t('title.todo list'),
13
+ icon: 'things_to_do',
14
+ path: 'todo-list',
15
+ badge: () => asyncReplace(generateActivitySummary('numberOfToDos')),
16
+ active: ({ path }) => /^activity\//.test(path)
17
+ },
18
+ {
19
+ name: i18next.t('title.approval pending list'),
20
+ icon: 'approval',
21
+ path: 'approval-pending-list',
22
+ badge: () => asyncReplace(generateActivitySummary('numberOfApprovalPendings')),
23
+ active: ({ path }) => /^approval\//.test(path)
24
+ },
25
+ {
26
+ name: i18next.t('title.draft list'),
27
+ icon: 'drive_file_rename_outline',
28
+ path: 'draft-list',
29
+ badge: () => asyncReplace(generateActivitySummary('numberOfDrafts'))
30
+ },
31
+ {
32
+ name: i18next.t('title.activity starter list'),
33
+ icon: 'rocket_launch',
34
+ path: 'starter-list'
35
+ },
36
+ {
37
+ name: i18next.t('title.done list calendar'),
38
+ icon: 'calendar_month',
39
+ path: 'done-list-calendar',
40
+ description: '업무와 관련된 수행 또는 결재 이력을 캘린더에서 조회할 수 있습니다.',
41
+ menus: [
42
+ {
43
+ name: i18next.t('title.done list'),
44
+ icon: 'history',
45
+ path: 'done-list'
46
+ },
47
+ {
48
+ name: i18next.t('title.approval done list'),
49
+ icon: 'history',
50
+ path: 'approval-done-list'
51
+ }
52
+ ]
53
+ },
54
+ owner && {
55
+ name: 'DATASET',
56
+ type: 'group'
57
+ },
58
+ owner && {
59
+ name: i18next.t('title.data-set list'),
60
+ icon: 'dataset',
61
+ path: 'data-set-list'
62
+ },
63
+ owner && {
64
+ name: i18next.t('title.data-key-set list'),
65
+ icon: 'dataset_linked',
66
+ path: 'data-key-set-list'
67
+ },
68
+ owner && {
69
+ name: i18next.t('title.data-sensor list'),
70
+ icon: 'sensors',
71
+ path: 'data-sensor-list'
72
+ },
73
+ {
74
+ name: 'DATA ENTRY',
75
+ type: 'group'
76
+ },
77
+ {
78
+ icon: 'edit_square',
79
+ name: i18next.t('title.data-entry list'),
80
+ path: 'data-entry-list'
81
+ },
82
+ {
83
+ name: 'DATA REPORT',
84
+ type: 'group'
85
+ },
86
+ owner && {
87
+ name: i18next.t('title.data-sample list'),
88
+ icon: 'rule',
89
+ path: 'data-sample-list',
90
+ menus: dataSets.map(item => {
91
+ return {
92
+ name: item.name,
93
+ icon: 'checklist_rtl',
94
+ path: `data-sample-search/${item.id}`
95
+ };
96
+ }) || []
97
+ },
98
+ owner && {
99
+ name: i18next.t('title.data-ooc list'),
100
+ icon: 'error',
101
+ path: 'data-ooc-list'
102
+ },
103
+ owner && {
104
+ name: i18next.t('title.data-summary list'),
105
+ icon: 'functions',
106
+ path: 'data-summary-list',
107
+ menus: dataSets
108
+ .filter(item => item.active && item.summaryPeriod)
109
+ .map(item => {
110
+ return {
111
+ name: item.name,
112
+ icon: 'checklist',
113
+ path: `data-summary-period/${item.id}`
114
+ };
115
+ }) || []
116
+ },
117
+ {
118
+ icon: 'newspaper',
119
+ name: i18next.t('title.data-report-view'),
120
+ path: 'data-report-list'
121
+ },
122
+ owner && {
123
+ icon: 'archive',
124
+ name: i18next.t('title.data-archive list'),
125
+ path: 'data-archive-list'
126
+ },
127
+ owner && {
128
+ name: i18next.t('title.organization'),
129
+ type: 'group'
130
+ },
131
+ owner && {
132
+ name: i18next.t('title.organization'),
133
+ icon: 'account_tree',
134
+ description: '조직 구성과 결재선 관리를 위한 메뉴 구성입니다.',
135
+ menus: [
136
+ {
137
+ name: i18next.t('title.contact list'),
138
+ path: 'contact-list'
139
+ },
140
+ {
141
+ name: i18next.t('title.employee list'),
142
+ path: 'employee-list'
143
+ },
144
+ {
145
+ name: i18next.t('title.department tree'),
146
+ path: 'department-tree'
147
+ },
148
+ {
149
+ name: i18next.t('title.department list'),
150
+ path: 'department-list'
151
+ },
152
+ {
153
+ name: i18next.t('title.my-approval-line template list'),
154
+ path: 'my-approval-line-templates-page'
155
+ },
156
+ {
157
+ name: i18next.t('title.common-approval-line template list'),
158
+ path: 'common-approval-line-templates-page'
159
+ }
160
+ ]
161
+ }
162
+ ].filter(Boolean);
163
+ }
164
+ //# sourceMappingURL=menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["../client/menu.ts"],"names":[],"mappings":"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","sourcesContent":["import { asyncReplace } from 'lit/directives/async-replace.js'\nimport i18next from 'i18next'\nimport { generateActivitySummary, startSubscribeActivitySummary } from '@things-factory/worklist/dist-client'\nimport { hasPrivilege } from '@things-factory/auth-base/dist-client'\n\nstartSubscribeActivitySummary()\n\nexport function getMenuTemplate(owner: boolean = false, dataSets: any[]) {\n return [\n {\n name: i18next.t('title.my workspace'),\n type: 'group'\n },\n {\n name: i18next.t('title.todo list'),\n icon: 'things_to_do',\n path: 'todo-list',\n badge: () => asyncReplace(generateActivitySummary('numberOfToDos')),\n active: ({ path }) => /^activity\\//.test(path)\n },\n {\n name: i18next.t('title.approval pending list'),\n icon: 'approval',\n path: 'approval-pending-list',\n badge: () => asyncReplace(generateActivitySummary('numberOfApprovalPendings')),\n active: ({ path }) => /^approval\\//.test(path)\n },\n {\n name: i18next.t('title.draft list'),\n icon: 'drive_file_rename_outline',\n path: 'draft-list',\n badge: () => asyncReplace(generateActivitySummary('numberOfDrafts'))\n },\n {\n name: i18next.t('title.activity starter list'),\n icon: 'rocket_launch',\n path: 'starter-list'\n },\n {\n name: i18next.t('title.done list calendar'),\n icon: 'calendar_month',\n path: 'done-list-calendar',\n description: '업무와 관련된 수행 또는 결재 이력을 캘린더에서 조회할 수 있습니다.',\n menus: [\n {\n name: i18next.t('title.done list'),\n icon: 'history',\n path: 'done-list'\n },\n {\n name: i18next.t('title.approval done list'),\n icon: 'history',\n path: 'approval-done-list'\n }\n ]\n },\n owner && {\n name: 'DATASET',\n type: 'group'\n },\n owner && {\n name: i18next.t('title.data-set list'),\n icon: 'dataset',\n path: 'data-set-list'\n },\n owner && {\n name: i18next.t('title.data-key-set list'),\n icon: 'dataset_linked',\n path: 'data-key-set-list'\n },\n owner && {\n name: i18next.t('title.data-sensor list'),\n icon: 'sensors',\n path: 'data-sensor-list'\n },\n {\n name: 'DATA ENTRY',\n type: 'group'\n },\n {\n icon: 'edit_square',\n name: i18next.t('title.data-entry list'),\n path: 'data-entry-list'\n },\n {\n name: 'DATA REPORT',\n type: 'group'\n },\n owner && {\n name: i18next.t('title.data-sample list'),\n icon: 'rule',\n path: 'data-sample-list',\n menus:\n dataSets.map(item => {\n return {\n name: item.name,\n icon: 'checklist_rtl',\n path: `data-sample-search/${item.id}`\n }\n }) || []\n },\n owner && {\n name: i18next.t('title.data-ooc list'),\n icon: 'error',\n path: 'data-ooc-list'\n },\n owner && {\n name: i18next.t('title.data-summary list'),\n icon: 'functions',\n path: 'data-summary-list',\n menus:\n dataSets\n .filter(item => item.active && item.summaryPeriod)\n .map(item => {\n return {\n name: item.name,\n icon: 'checklist',\n path: `data-summary-period/${item.id}`\n }\n }) || []\n },\n {\n icon: 'newspaper',\n name: i18next.t('title.data-report-view'),\n path: 'data-report-list'\n },\n owner && {\n icon: 'archive',\n name: i18next.t('title.data-archive list'),\n path: 'data-archive-list'\n },\n owner && {\n name: i18next.t('title.organization'),\n type: 'group'\n },\n owner && {\n name: i18next.t('title.organization'),\n icon: 'account_tree',\n description: '조직 구성과 결재선 관리를 위한 메뉴 구성입니다.',\n menus: [\n {\n name: i18next.t('title.contact list'),\n path: 'contact-list'\n },\n {\n name: i18next.t('title.employee list'),\n path: 'employee-list'\n },\n {\n name: i18next.t('title.department tree'),\n path: 'department-tree'\n },\n {\n name: i18next.t('title.department list'),\n path: 'department-list'\n },\n {\n name: i18next.t('title.my-approval-line template list'),\n path: 'my-approval-line-templates-page'\n },\n {\n name: i18next.t('title.common-approval-line template list'),\n path: 'common-approval-line-templates-page'\n }\n ]\n }\n ].filter(Boolean)\n}\n"]}
@@ -0,0 +1,12 @@
1
+ export declare function queryDataSets(): Promise<{
2
+ id: string;
3
+ name: string;
4
+ description: string;
5
+ active: boolean;
6
+ }[]>;
7
+ export declare function queryDataKeySets(): Promise<{
8
+ id: string;
9
+ name: string;
10
+ description: string;
11
+ active: boolean;
12
+ }[]>;