@things-factory/meta-ui 7.0.1-alpha.8 → 7.0.1-alpha.80

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.
Files changed (292) hide show
  1. package/client/bootstrap.ts +24 -34
  2. package/client/component/filter/filter-form-meta-code-select.ts +99 -0
  3. package/client/component/filter/filter-form-meta-object-select.ts +107 -0
  4. package/client/component/filter/filter-grist-meta-code-select.ts +97 -0
  5. package/client/component/filter/filter-grist-meta-object-select.ts +102 -0
  6. package/client/component/popup/code-input-editor-popup.js +37 -47
  7. package/client/component/popup/file-upload-popup.js +8 -26
  8. package/client/component/popup/meta-object-selector-popup.ts +355 -0
  9. package/client/component/popup/{record-based-code-editor-popup.js → record-based-code-editor-popup.ts} +49 -58
  10. package/client/dynamic-menus.ts +21 -11
  11. package/client/index.ts +1 -20
  12. package/client/load-components.ts +17 -0
  13. package/client/mixin/meta-base-mixin.js +280 -275
  14. package/client/mixin/meta-basic-grist-mixin.js +231 -232
  15. package/client/mixin/meta-form-mixin.js +350 -347
  16. package/client/mixin/meta-grist-tab-mixin.js +282 -283
  17. package/client/mixin/meta-main-tab-mixin.js +220 -223
  18. package/client/mixin/meta-master-detail-mixin.js +347 -348
  19. package/client/mixin/meta-tab-detail-mixin.js +240 -243
  20. package/client/mixin/meta-tab-mixin.js +154 -155
  21. package/client/pages/activity/meta-activity-define-page.js +34 -21
  22. package/client/pages/activity/meta-activity-list-page.js +92 -79
  23. package/client/pages/button-role/button-role-page.js +5 -4
  24. package/client/pages/doc-number/doc-number-page.js +4 -3
  25. package/client/pages/doc-number/next-doc-number-popup.js +4 -3
  26. package/client/pages/entity/config-entity.js +183 -39
  27. package/client/pages/entity/main-menu-selector.js +13 -24
  28. package/client/pages/history/history-copy-list-popup.js +5 -2
  29. package/client/pages/history/history-json-list-popup.js +4 -0
  30. package/client/pages/menu/dynamic-menu-template.js +1 -4
  31. package/client/pages/menu/dynamic-menu.js +129 -27
  32. package/client/pages/menu/export-menu-popup.js +10 -11
  33. package/client/pages/meta-form-element.js +2 -2
  34. package/client/pages/meta-grist-element.js +2 -2
  35. package/client/pages/meta-grist-page.js +3 -3
  36. package/client/pages/meta-grist-tab-element.js +2 -2
  37. package/client/pages/meta-grist-tab-page.js +3 -3
  38. package/client/pages/meta-main-tab-element.js +2 -2
  39. package/client/pages/meta-main-tab-page.js +3 -3
  40. package/client/pages/meta-master-detail-element.js +2 -2
  41. package/client/pages/meta-master-detail-page.js +3 -3
  42. package/client/pages/meta-tab-detail-element.js +2 -2
  43. package/client/pages/meta-tab-detail-page.js +3 -3
  44. package/client/pages/meta-tab-element.js +2 -2
  45. package/client/pages/printer-device/printer-device-page.js +4 -3
  46. package/client/pages/template/doc-template-page.js +4 -3
  47. package/client/pages/template/template-file-page.js +4 -3
  48. package/client/pages/terms/config-terminology.js +28 -31
  49. package/client/pages/work-code/work-code-page.js +6 -5
  50. package/client/utils/grist-default-value.js +1 -1
  51. package/client/utils/meta-api.js +25 -5
  52. package/client/utils/meta-ui-util.js +304 -299
  53. package/client/utils/rest-service-util.js +328 -0
  54. package/client/utils/service-util.js +170 -110
  55. package/client/utils/{terms-util.js → terms-util.ts} +21 -94
  56. package/client/utils/value-util.js +74 -72
  57. package/dist-client/bootstrap.d.ts +2 -1
  58. package/dist-client/bootstrap.js +20 -30
  59. package/dist-client/bootstrap.js.map +1 -1
  60. package/dist-client/component/filter/filter-form-meta-code-select.d.ts +4 -1
  61. package/dist-client/component/filter/filter-form-meta-code-select.js +21 -18
  62. package/dist-client/component/filter/filter-form-meta-code-select.js.map +1 -1
  63. package/dist-client/component/filter/filter-form-meta-object-select.d.ts +4 -1
  64. package/dist-client/component/filter/filter-form-meta-object-select.js +27 -19
  65. package/dist-client/component/filter/filter-form-meta-object-select.js.map +1 -1
  66. package/dist-client/component/filter/filter-grist-meta-code-select.d.ts +3 -1
  67. package/dist-client/component/filter/filter-grist-meta-code-select.js +19 -18
  68. package/dist-client/component/filter/filter-grist-meta-code-select.js.map +1 -1
  69. package/dist-client/component/filter/filter-grist-meta-object-select.d.ts +3 -1
  70. package/dist-client/component/filter/filter-grist-meta-object-select.js +25 -19
  71. package/dist-client/component/filter/filter-grist-meta-object-select.js.map +1 -1
  72. package/dist-client/component/popup/code-input-editor-popup.js +10 -19
  73. package/dist-client/component/popup/code-input-editor-popup.js.map +1 -1
  74. package/dist-client/component/popup/file-upload-popup.js +6 -25
  75. package/dist-client/component/popup/file-upload-popup.js.map +1 -1
  76. package/dist-client/component/popup/meta-object-selector-popup.d.ts +27 -22
  77. package/dist-client/component/popup/meta-object-selector-popup.js +113 -75
  78. package/dist-client/component/popup/meta-object-selector-popup.js.map +1 -1
  79. package/dist-client/component/popup/record-based-code-editor-popup.d.ts +11 -12
  80. package/dist-client/component/popup/record-based-code-editor-popup.js +76 -44
  81. package/dist-client/component/popup/record-based-code-editor-popup.js.map +1 -1
  82. package/dist-client/dynamic-menus.d.ts +1 -15
  83. package/dist-client/dynamic-menus.js +12 -5
  84. package/dist-client/dynamic-menus.js.map +1 -1
  85. package/dist-client/index.d.ts +1 -16
  86. package/dist-client/index.js +1 -17
  87. package/dist-client/index.js.map +1 -1
  88. package/dist-client/load-components.d.ts +15 -0
  89. package/dist-client/load-components.js +17 -0
  90. package/dist-client/load-components.js.map +1 -0
  91. package/dist-client/mixin/meta-base-mixin.js +7 -8
  92. package/dist-client/mixin/meta-base-mixin.js.map +1 -1
  93. package/dist-client/mixin/meta-basic-grist-mixin.d.ts +5 -21
  94. package/dist-client/mixin/meta-basic-grist-mixin.js +5 -7
  95. package/dist-client/mixin/meta-basic-grist-mixin.js.map +1 -1
  96. package/dist-client/mixin/meta-form-mixin.d.ts +9 -5
  97. package/dist-client/mixin/meta-form-mixin.js +14 -12
  98. package/dist-client/mixin/meta-form-mixin.js.map +1 -1
  99. package/dist-client/mixin/meta-grist-tab-mixin.d.ts +1 -5
  100. package/dist-client/mixin/meta-grist-tab-mixin.js +5 -5
  101. package/dist-client/mixin/meta-grist-tab-mixin.js.map +1 -1
  102. package/dist-client/mixin/meta-main-tab-mixin.d.ts +10 -7
  103. package/dist-client/mixin/meta-main-tab-mixin.js +4 -6
  104. package/dist-client/mixin/meta-main-tab-mixin.js.map +1 -1
  105. package/dist-client/mixin/meta-master-detail-mixin.js +8 -8
  106. package/dist-client/mixin/meta-master-detail-mixin.js.map +1 -1
  107. package/dist-client/mixin/meta-tab-detail-mixin.d.ts +1 -5
  108. package/dist-client/mixin/meta-tab-detail-mixin.js +5 -7
  109. package/dist-client/mixin/meta-tab-detail-mixin.js.map +1 -1
  110. package/dist-client/mixin/meta-tab-mixin.d.ts +6 -5
  111. package/dist-client/mixin/meta-tab-mixin.js +2 -3
  112. package/dist-client/mixin/meta-tab-mixin.js.map +1 -1
  113. package/dist-client/pages/activity/meta-activity-define-page.js +25 -13
  114. package/dist-client/pages/activity/meta-activity-define-page.js.map +1 -1
  115. package/dist-client/pages/activity/meta-activity-list-page.js +26 -22
  116. package/dist-client/pages/activity/meta-activity-list-page.js.map +1 -1
  117. package/dist-client/pages/button-role/button-role-detail.d.ts +1 -1
  118. package/dist-client/pages/button-role/button-role-page.js +3 -2
  119. package/dist-client/pages/button-role/button-role-page.js.map +1 -1
  120. package/dist-client/pages/doc-number/doc-number-page.js +3 -2
  121. package/dist-client/pages/doc-number/doc-number-page.js.map +1 -1
  122. package/dist-client/pages/doc-number/next-doc-number-popup.js +3 -2
  123. package/dist-client/pages/doc-number/next-doc-number-popup.js.map +1 -1
  124. package/dist-client/pages/entity/config-entity.js +77 -27
  125. package/dist-client/pages/entity/config-entity.js.map +1 -1
  126. package/dist-client/pages/entity/main-menu-selector.js +12 -24
  127. package/dist-client/pages/entity/main-menu-selector.js.map +1 -1
  128. package/dist-client/pages/history/history-copy-list-popup.d.ts +1 -1
  129. package/dist-client/pages/history/history-copy-list-popup.js +5 -2
  130. package/dist-client/pages/history/history-copy-list-popup.js.map +1 -1
  131. package/dist-client/pages/history/history-json-list-popup.d.ts +1 -1
  132. package/dist-client/pages/history/history-json-list-popup.js +4 -0
  133. package/dist-client/pages/history/history-json-list-popup.js.map +1 -1
  134. package/dist-client/pages/menu/dynamic-menu-template.js +1 -4
  135. package/dist-client/pages/menu/dynamic-menu-template.js.map +1 -1
  136. package/dist-client/pages/menu/dynamic-menu.js +75 -23
  137. package/dist-client/pages/menu/dynamic-menu.js.map +1 -1
  138. package/dist-client/pages/menu/export-menu-popup.js +9 -11
  139. package/dist-client/pages/menu/export-menu-popup.js.map +1 -1
  140. package/dist-client/pages/meta-form-element.js +2 -1
  141. package/dist-client/pages/meta-form-element.js.map +1 -1
  142. package/dist-client/pages/meta-grist-element.d.ts +1 -1
  143. package/dist-client/pages/meta-grist-element.js +2 -1
  144. package/dist-client/pages/meta-grist-element.js.map +1 -1
  145. package/dist-client/pages/meta-grist-page.d.ts +1 -1
  146. package/dist-client/pages/meta-grist-page.js +3 -2
  147. package/dist-client/pages/meta-grist-page.js.map +1 -1
  148. package/dist-client/pages/meta-grist-tab-element.js +2 -1
  149. package/dist-client/pages/meta-grist-tab-element.js.map +1 -1
  150. package/dist-client/pages/meta-grist-tab-page.js +3 -2
  151. package/dist-client/pages/meta-grist-tab-page.js.map +1 -1
  152. package/dist-client/pages/meta-main-tab-element.js +2 -1
  153. package/dist-client/pages/meta-main-tab-element.js.map +1 -1
  154. package/dist-client/pages/meta-main-tab-page.js +3 -2
  155. package/dist-client/pages/meta-main-tab-page.js.map +1 -1
  156. package/dist-client/pages/meta-master-detail-element.js +2 -1
  157. package/dist-client/pages/meta-master-detail-element.js.map +1 -1
  158. package/dist-client/pages/meta-master-detail-page.js +3 -2
  159. package/dist-client/pages/meta-master-detail-page.js.map +1 -1
  160. package/dist-client/pages/meta-tab-detail-element.js +2 -1
  161. package/dist-client/pages/meta-tab-detail-element.js.map +1 -1
  162. package/dist-client/pages/meta-tab-detail-page.js +3 -2
  163. package/dist-client/pages/meta-tab-detail-page.js.map +1 -1
  164. package/dist-client/pages/meta-tab-element.js +2 -1
  165. package/dist-client/pages/meta-tab-element.js.map +1 -1
  166. package/dist-client/pages/printer-device/printer-device-page.js +3 -2
  167. package/dist-client/pages/printer-device/printer-device-page.js.map +1 -1
  168. package/dist-client/pages/template/doc-template-page.js +3 -2
  169. package/dist-client/pages/template/doc-template-page.js.map +1 -1
  170. package/dist-client/pages/template/template-file-page.js +3 -2
  171. package/dist-client/pages/template/template-file-page.js.map +1 -1
  172. package/dist-client/pages/terms/config-terminology.js +19 -22
  173. package/dist-client/pages/terms/config-terminology.js.map +1 -1
  174. package/dist-client/pages/work-code/work-code-detail-popup.d.ts +1 -1
  175. package/dist-client/pages/work-code/work-code-page.js +5 -3
  176. package/dist-client/pages/work-code/work-code-page.js.map +1 -1
  177. package/dist-client/tsconfig.tsbuildinfo +1 -1
  178. package/dist-client/utils/grist-default-value.js +1 -1
  179. package/dist-client/utils/grist-default-value.js.map +1 -1
  180. package/dist-client/utils/meta-api.d.ts +14 -5
  181. package/dist-client/utils/meta-api.js +15 -4
  182. package/dist-client/utils/meta-api.js.map +1 -1
  183. package/dist-client/utils/meta-ui-util.d.ts +0 -13
  184. package/dist-client/utils/meta-ui-util.js +244 -271
  185. package/dist-client/utils/meta-ui-util.js.map +1 -1
  186. package/dist-client/utils/rest-service-util.d.ts +120 -0
  187. package/dist-client/utils/rest-service-util.js +291 -0
  188. package/dist-client/utils/rest-service-util.js.map +1 -0
  189. package/dist-client/utils/service-util.d.ts +11 -14
  190. package/dist-client/utils/service-util.js +133 -102
  191. package/dist-client/utils/service-util.js.map +1 -1
  192. package/dist-client/utils/terms-util.d.ts +7 -24
  193. package/dist-client/utils/terms-util.js +6 -78
  194. package/dist-client/utils/terms-util.js.map +1 -1
  195. package/dist-client/utils/value-util.js +6 -4
  196. package/dist-client/utils/value-util.js.map +1 -1
  197. package/dist-server/service/button-role/button-role-query.js +1 -1
  198. package/dist-server/service/button-role/button-role-query.js.map +1 -1
  199. package/dist-server/service/dynamic-menu/dynamic-menu-query.js +68 -18
  200. package/dist-server/service/dynamic-menu/dynamic-menu-query.js.map +1 -1
  201. package/dist-server/service/dynamic-menu/dynamic-menu-type.js.map +1 -1
  202. package/dist-server/service/entity-event-subscriber/entity-event-subscriber.js +3 -3
  203. package/dist-server/service/entity-event-subscriber/entity-event-subscriber.js.map +1 -1
  204. package/dist-server/service/index.js +0 -4
  205. package/dist-server/service/index.js.map +1 -1
  206. package/dist-server/service/menu-button-auth/menu-button-auth-query.js +3 -3
  207. package/dist-server/service/menu-button-auth/menu-button-auth-query.js.map +1 -1
  208. package/dist-server/service/work-code/work-code.js +1 -1
  209. package/dist-server/service/work-code/work-code.js.map +1 -1
  210. package/dist-server/service/work-code-detail/work-code-detail.js +7 -3
  211. package/dist-server/service/work-code-detail/work-code-detail.js.map +1 -1
  212. package/dist-server/tsconfig.tsbuildinfo +1 -1
  213. package/package.json +16 -9
  214. package/server/service/button-role/button-role-query.ts +9 -4
  215. package/server/service/dynamic-menu/dynamic-menu-query.ts +178 -116
  216. package/server/service/dynamic-menu/dynamic-menu-type.ts +11 -16
  217. package/server/service/entity-event-subscriber/entity-event-subscriber.ts +31 -33
  218. package/server/service/index.ts +0 -4
  219. package/server/service/menu-button-auth/menu-button-auth-query.ts +31 -29
  220. package/server/service/work-code/work-code.ts +6 -7
  221. package/server/service/work-code-detail/work-code-detail.ts +9 -5
  222. package/things-factory.config.js +2 -2
  223. package/translations/en.json +2 -13
  224. package/translations/ko.json +2 -13
  225. package/translations/ms.json +2 -13
  226. package/translations/zh.json +2 -13
  227. package/client/actions/main.js +0 -127
  228. package/client/component/filter/filter-form-meta-code-select.js +0 -94
  229. package/client/component/filter/filter-form-meta-object-select.js +0 -94
  230. package/client/component/filter/filter-grist-meta-code-select.js +0 -95
  231. package/client/component/filter/filter-grist-meta-object-select.js +0 -95
  232. package/client/component/popup/meta-object-selector-popup.js +0 -314
  233. package/client/pages/menu/dynamic-menu-setting-let.js +0 -88
  234. package/client/pages/personalize/personal-column-selector.js +0 -265
  235. package/client/reducers/main.js +0 -79
  236. package/client/viewparts/dynamic-menu-landscape-styles.js +0 -149
  237. package/client/viewparts/dynamic-menu-landscape.js +0 -106
  238. package/client/viewparts/dynamic-menu-part.js +0 -142
  239. package/client/viewparts/dynamic-menu-portrait-styles.js +0 -130
  240. package/client/viewparts/dynamic-menu-portrait.js +0 -90
  241. package/client/viewparts/dynamic-top-menu-bar.js +0 -148
  242. package/dist-client/actions/main.d.ts +0 -4
  243. package/dist-client/actions/main.js +0 -114
  244. package/dist-client/actions/main.js.map +0 -1
  245. package/dist-client/pages/menu/dynamic-menu-setting-let.d.ts +0 -10
  246. package/dist-client/pages/menu/dynamic-menu-setting-let.js +0 -81
  247. package/dist-client/pages/menu/dynamic-menu-setting-let.js.map +0 -1
  248. package/dist-client/pages/personalize/personal-column-selector.d.ts +0 -71
  249. package/dist-client/pages/personalize/personal-column-selector.js +0 -244
  250. package/dist-client/pages/personalize/personal-column-selector.js.map +0 -1
  251. package/dist-client/reducers/main.d.ts +0 -11
  252. package/dist-client/reducers/main.js +0 -62
  253. package/dist-client/reducers/main.js.map +0 -1
  254. package/dist-client/viewparts/dynamic-menu-landscape-styles.d.ts +0 -1
  255. package/dist-client/viewparts/dynamic-menu-landscape-styles.js +0 -149
  256. package/dist-client/viewparts/dynamic-menu-landscape-styles.js.map +0 -1
  257. package/dist-client/viewparts/dynamic-menu-landscape.d.ts +0 -21
  258. package/dist-client/viewparts/dynamic-menu-landscape.js +0 -87
  259. package/dist-client/viewparts/dynamic-menu-landscape.js.map +0 -1
  260. package/dist-client/viewparts/dynamic-menu-part.d.ts +0 -33
  261. package/dist-client/viewparts/dynamic-menu-part.js +0 -127
  262. package/dist-client/viewparts/dynamic-menu-part.js.map +0 -1
  263. package/dist-client/viewparts/dynamic-menu-portrait-styles.d.ts +0 -1
  264. package/dist-client/viewparts/dynamic-menu-portrait-styles.js +0 -130
  265. package/dist-client/viewparts/dynamic-menu-portrait-styles.js.map +0 -1
  266. package/dist-client/viewparts/dynamic-menu-portrait.d.ts +0 -13
  267. package/dist-client/viewparts/dynamic-menu-portrait.js +0 -74
  268. package/dist-client/viewparts/dynamic-menu-portrait.js.map +0 -1
  269. package/dist-client/viewparts/dynamic-top-menu-bar.d.ts +0 -27
  270. package/dist-client/viewparts/dynamic-top-menu-bar.js +0 -133
  271. package/dist-client/viewparts/dynamic-top-menu-bar.js.map +0 -1
  272. package/dist-server/constants/error-code.js +0 -6
  273. package/dist-server/constants/error-code.js.map +0 -1
  274. package/dist-server/controllers/index.js +0 -1
  275. package/dist-server/controllers/index.js.map +0 -1
  276. package/dist-server/service/grid-personalize/grid-personalize-mutation.js +0 -108
  277. package/dist-server/service/grid-personalize/grid-personalize-mutation.js.map +0 -1
  278. package/dist-server/service/grid-personalize/grid-personalize-query.js +0 -108
  279. package/dist-server/service/grid-personalize/grid-personalize-query.js.map +0 -1
  280. package/dist-server/service/grid-personalize/grid-personalize-type.js +0 -66
  281. package/dist-server/service/grid-personalize/grid-personalize-type.js.map +0 -1
  282. package/dist-server/service/grid-personalize/grid-personalize.js +0 -84
  283. package/dist-server/service/grid-personalize/grid-personalize.js.map +0 -1
  284. package/dist-server/service/grid-personalize/index.js +0 -9
  285. package/dist-server/service/grid-personalize/index.js.map +0 -1
  286. package/server/constants/error-code.ts +0 -2
  287. package/server/controllers/index.ts +0 -0
  288. package/server/service/grid-personalize/grid-personalize-mutation.ts +0 -113
  289. package/server/service/grid-personalize/grid-personalize-query.ts +0 -61
  290. package/server/service/grid-personalize/grid-personalize-type.ts +0 -45
  291. package/server/service/grid-personalize/grid-personalize.ts +0 -73
  292. package/server/service/grid-personalize/index.ts +0 -7
@@ -1,15 +1,10 @@
1
+ import '@material/web/icon/icon.js'
2
+ import './load-components'
3
+
1
4
  import { html } from 'lit-html'
2
5
 
3
- import { auth } from '@things-factory/auth-base/dist-client/auth.js'
4
- import { ADD_MORENDA } from '@things-factory/more-base'
5
6
  import { navigate, store } from '@operato/shell'
6
-
7
- import { updateMenuTemplate } from './actions/main'
8
- import metaUI from './reducers/main'
9
- import { TermsUtil } from './utils/terms-util'
10
- import { GristDefaultValue } from './utils/grist-default-value'
11
- import { MENUS } from './dynamic-menus'
12
-
7
+ import { i18next } from '@operato/i18n'
13
8
  import {
14
9
  registerEditor as gristColumnRegisterEditor,
15
10
  registerRenderer as gristColumnRegisterRenderer,
@@ -17,6 +12,13 @@ import {
17
12
  } from '@operato/data-grist'
18
13
  import { registerFilterRenderer as formRegisterFilterRenderer } from '@operato/form'
19
14
 
15
+ import { auth } from '@things-factory/auth-base/dist-client'
16
+ import { ADD_MORENDA } from '@things-factory/more-base/client'
17
+
18
+ import { updateMenuTemplate } from '@things-factory/lite-menu/dist-client'
19
+ import { GristDefaultValue } from './utils/grist-default-value'
20
+ import { getDynamicMenus } from './dynamic-menus'
21
+
20
22
  /** GRIST Renderer Compoment */
21
23
  import { GristRendererMetaCodeSelector } from './component/grist/renderer/grist-renderer-meta-code-selector'
22
24
  import { GristRendererMetaObjectSelector } from './component/grist/renderer/grist-renderer-meta-object-selector'
@@ -35,13 +37,11 @@ import { FilterGristMetaObjectSelect } from './component/filter/filter-grist-met
35
37
  import { FilterFormMetaCodeSelect } from './component/filter/filter-form-meta-code-select'
36
38
  import { FilterFormMetaObjectSelect } from './component/filter/filter-form-meta-object-select'
37
39
 
38
- import './pages/personalize/personal-column-selector'
39
40
  import './pages/history/history-copy-list-popup'
40
41
  import './pages/history/history-json-list-popup'
41
42
 
42
43
  import './pages/activity/meta-activity-writer-element'
43
44
  import './pages/activity/meta-activity-viewer-element'
44
- import { i18next } from '@operato/i18n'
45
45
 
46
46
  export default async function bootstrap(module) {
47
47
  // GRIST Renderer
@@ -65,30 +65,20 @@ export default async function bootstrap(module) {
65
65
  // Grist Default Registry
66
66
  GristDefaultValue.registry()
67
67
 
68
- store.addReducers({
69
- metaUI
70
- })
71
-
72
- // 1. 용어 다운로드
73
- i18next.on('initialized', function downloadTerminologies() {
74
- var locale = i18next.language
75
- if (locale == 'ko') {
76
- locale = 'ko-KR'
77
- }
78
- TermsUtil.downloadTerminologies(locale)
79
- i18next.off('initialized', downloadTerminologies)
80
- })
81
-
82
68
  auth.on('profile', async ({ credential, domains, domain }) => {
83
69
  // 2. 메뉴 정보를 서버로 부터 받아서 적용
84
- const menuRoutes = await MENUS
70
+ const menuRoutes = await getDynamicMenus()
85
71
  updateMenuTemplate(menuRoutes.menus)
86
72
 
73
+ i18next.on('languageChanged', async () => {
74
+ updateMenuTemplate((await getDynamicMenus(true)).menus)
75
+ })
76
+
87
77
  // 3. 동적 메뉴 관리 화면 추가
88
78
  store.dispatch({
89
79
  type: ADD_MORENDA,
90
80
  morenda: {
91
- icon: html`<mwc-icon>auto_fix_high</mwc-icon>`,
81
+ icon: html`<md-icon>auto_fix_high</md-icon>`,
92
82
  name: html`<ox-i18n msgid="title.dynamic_menu"></ox-i18n>`,
93
83
  action: () => {
94
84
  navigate('dynamic-menu')
@@ -100,7 +90,7 @@ export default async function bootstrap(module) {
100
90
  store.dispatch({
101
91
  type: ADD_MORENDA,
102
92
  morenda: {
103
- icon: html`<mwc-icon>filter_tilt_shift</mwc-icon>`,
93
+ icon: html`<md-icon>filter_tilt_shift</md-icon>`,
104
94
  name: html`<ox-i18n msgid="title.entity"></ox-i18n>`,
105
95
  action: () => {
106
96
  navigate('config-entity')
@@ -112,7 +102,7 @@ export default async function bootstrap(module) {
112
102
  store.dispatch({
113
103
  type: ADD_MORENDA,
114
104
  morenda: {
115
- icon: html`<mwc-icon>speaker_notes</mwc-icon>`,
105
+ icon: html`<md-icon>speaker_notes</md-icon>`,
116
106
  name: html`<ox-i18n msgid="title.terminology"></ox-i18n>`,
117
107
  action: () => {
118
108
  navigate('config-terminology')
@@ -124,7 +114,7 @@ export default async function bootstrap(module) {
124
114
  store.dispatch({
125
115
  type: ADD_MORENDA,
126
116
  morenda: {
127
- icon: html`<mwc-icon>code</mwc-icon>`,
117
+ icon: html`<md-icon>code</md-icon>`,
128
118
  name: html`<ox-i18n msgid="title.code_management"></ox-i18n>`,
129
119
  action: () => {
130
120
  navigate('codes')
@@ -136,7 +126,7 @@ export default async function bootstrap(module) {
136
126
  store.dispatch({
137
127
  type: ADD_MORENDA,
138
128
  morenda: {
139
- icon: html`<mwc-icon>business_center</mwc-icon>`,
129
+ icon: html`<md-icon>business_center</md-icon>`,
140
130
  name: html`<ox-i18n msgid="title.meta_activity_list"></ox-i18n>`,
141
131
  action: () => {
142
132
  navigate('meta-activity-list')
@@ -147,7 +137,7 @@ export default async function bootstrap(module) {
147
137
  store.dispatch({
148
138
  type: ADD_MORENDA,
149
139
  morenda: {
150
- icon: html`<mwc-icon>margin</mwc-icon>`,
140
+ icon: html`<md-icon>margin</md-icon>`,
151
141
  name: html`<ox-i18n msgid="title.meta_activity_define"></ox-i18n>`,
152
142
  action: () => {
153
143
  navigate('meta-activity-define')
@@ -158,7 +148,7 @@ export default async function bootstrap(module) {
158
148
  store.dispatch({
159
149
  type: ADD_MORENDA,
160
150
  morenda: {
161
- icon: html`<mwc-icon>work</mwc-icon>`,
151
+ icon: html`<md-icon>work</md-icon>`,
162
152
  name: html`<ox-i18n msgid="title.activity_list"></ox-i18n>`,
163
153
  action: () => {
164
154
  navigate('activity-list')
@@ -169,7 +159,7 @@ export default async function bootstrap(module) {
169
159
  store.dispatch({
170
160
  type: ADD_MORENDA,
171
161
  morenda: {
172
- icon: html` <mwc-icon>dataset</mwc-icon> `,
162
+ icon: html` <md-icon>dataset</md-icon> `,
173
163
  name: html` <ox-i18n msgid="text.attribute management"></ox-i18n> `,
174
164
  action: () => {
175
165
  navigate('attributes')
@@ -0,0 +1,99 @@
1
+ import '@material/web/icon/icon.js'
2
+ import '../popup/meta-object-selector-popup'
3
+
4
+ import { html } from 'lit-html'
5
+
6
+ import { openPopup } from '@operato/layout'
7
+ import { FilterSelectRenderer } from '@operato/form'
8
+ import { TermsUtil } from './../../utils/terms-util'
9
+
10
+ function openMetaCodeSelector(filter, value, confirmCallback) {
11
+ var template = html` <meta-object-selector-popup .value=${value} .options=${filter.options} .confirmCallback=${confirmCallback}> </meta-object-selector-popup> `
12
+
13
+ openPopup(template, {
14
+ backdrop: true,
15
+ size: 'large',
16
+ title: filter.options.selectorName ? TermsUtil.tMenu(filter.options.selectorName) : TermsUtil.tTitle('select_item')
17
+ })
18
+ }
19
+
20
+ export const FilterFormMetaCodeSelect: FilterSelectRenderer = (filter, value, owner) => {
21
+ const options = filter.options || {}
22
+ const codes = options.codes && options.codes.length > 0 ? options.codes : undefined
23
+ const { operator = 'eq' } = filter
24
+ const hiddenText = value ? value : ''
25
+
26
+ var text = value ? value : ''
27
+
28
+ if (options.dispField && value && codes) {
29
+ let dispCode = codes.filter(x => x.value == value)
30
+
31
+ if (dispCode && dispCode.length > 0) {
32
+ text = dispCode[0].display
33
+ }
34
+ }
35
+
36
+ return operator === 'eq'
37
+ ? html`
38
+ <input name='${filter.name}' .value=${hiddenText} type="text" hidden></input>
39
+ <input
40
+ type="text"
41
+ readonly
42
+ name='${filter.name}_disp'
43
+ .value=${text}
44
+ @click=${e => {
45
+ e.stopPropagation()
46
+
47
+ const input = e.target
48
+
49
+ const confirmCallback = selected => {
50
+ let code = selected ? selected[options.codeField] : ''
51
+ let disp = code
52
+
53
+ if (selected && options.dispField) {
54
+ let fields = options.dispField.split(',')
55
+ disp = selected[fields[0]]
56
+
57
+ if (fields.length > 1) {
58
+ disp += `(${fields
59
+ .splice(1)
60
+ .map(field => {
61
+ return selected[field]
62
+ })
63
+ .join(',')})`
64
+ }
65
+ }
66
+
67
+ input.value = disp
68
+
69
+ let codeInput =
70
+ owner.tagName.toLowerCase() == 'ox-grid-header'
71
+ ? //@ts-ignore owner element를 전제하지 않는 방법이 필요할 것이다.
72
+ owner.renderRoot.querySelector(`[name="${filter.name}"]`)
73
+ : //@ts-ignore owner element를 전제하지 않는 방법이 필요할 것이다.
74
+ owner.renderRoot.querySelector(`form [name="${filter.name}"]`)
75
+
76
+ codeInput.value = code
77
+
78
+ input.dispatchEvent(new Event('change', { bubbles: true }))
79
+
80
+ input.dispatchEvent(
81
+ new CustomEvent('filter-change', {
82
+ bubbles: true,
83
+ composed: true,
84
+ detail: {
85
+ name: filter.name,
86
+ operator,
87
+ value: code
88
+ }
89
+ })
90
+ )
91
+ }
92
+
93
+ openMetaCodeSelector(filter, value, confirmCallback)
94
+ }}
95
+ />
96
+ <md-icon style="--md-icon-size: 18px;margin-left: -24px;">manage_search</md-icon>
97
+ `
98
+ : html``
99
+ }
@@ -0,0 +1,107 @@
1
+ import '@material/web/icon/icon.js'
2
+ import '../popup/meta-object-selector-popup'
3
+
4
+ import { html } from 'lit-html'
5
+
6
+ import { openPopup } from '@operato/layout'
7
+ import { FilterSelectRenderer } from '@operato/form'
8
+ import { TermsUtil } from '../../utils/terms-util'
9
+ import { SelectOption, SelectOptionObject } from '@operato/data-grist'
10
+
11
+ function openMetaObjectSelector(filter, value, confirmCallback) {
12
+ var template = html` <meta-object-selector-popup .value=${value} .options=${filter.options} .confirmCallback=${confirmCallback}></meta-object-selector-popup> `
13
+
14
+ openPopup(template, {
15
+ backdrop: true,
16
+ size: 'large',
17
+ title: filter.options.selectorName ? TermsUtil.tMenu(filter.options.selectorName) : TermsUtil.tTitle('select_item')
18
+ })
19
+ }
20
+
21
+ export const FilterFormMetaObjectSelect: FilterSelectRenderer = (filter, value, owner) => {
22
+ const options = filter.options as {
23
+ [key: string]: any
24
+ }
25
+ const { operator = 'eq' } = filter
26
+ const hiddenText = value ? value.id : ''
27
+
28
+ var text = ''
29
+
30
+ if (value) {
31
+ let fields = options!.nameField.split(',')
32
+ text = value[fields[0]]
33
+
34
+ if (fields.length > 1) {
35
+ text += `(${fields
36
+ .splice(1)
37
+ .map(field => {
38
+ return value[field]
39
+ })
40
+ .join(',')})`
41
+ }
42
+ }
43
+
44
+ return operator === 'eq'
45
+ ? html`
46
+ <input name='${filter.name}' .value=${hiddenText} type="text" hidden></input>
47
+ <input
48
+ type="text"
49
+ readonly
50
+ name='${filter.name}_disp'
51
+ .value=${text}
52
+ @click=${e => {
53
+ e.stopPropagation()
54
+
55
+ const input = e.target
56
+
57
+ const confirmCallback = selected => {
58
+ let code = selected ? selected.id : ''
59
+ let disp = ''
60
+
61
+ if (selected) {
62
+ let fields = options!.nameField.split(',')
63
+ disp = selected[fields[0]]
64
+
65
+ if (fields.length > 1) {
66
+ disp += `(${fields
67
+ .splice(1)
68
+ .map(field => {
69
+ return selected[field]
70
+ })
71
+ .join(',')})`
72
+ }
73
+ }
74
+
75
+ input.value = disp
76
+
77
+ let codeInput =
78
+ owner.tagName.toLowerCase() == 'ox-grid-header'
79
+ ? //@ts-ignore owner element를 전제하지 않는 방법이 필요할 것이다.
80
+ owner.renderRoot.querySelector(`[name="${filter.name}"]`)
81
+ : //@ts-ignore owner element를 전제하지 않는 방법이 필요할 것이다.
82
+ owner.renderRoot.querySelector(`form [name="${filter.name}"]`)
83
+
84
+ codeInput.value = code
85
+
86
+ input.dispatchEvent(new Event('change', { bubbles: true }))
87
+
88
+ input.dispatchEvent(
89
+ new CustomEvent('filter-change', {
90
+ bubbles: true,
91
+ composed: true,
92
+ detail: {
93
+ name: filter.name,
94
+ operator,
95
+ value: code
96
+ }
97
+ })
98
+ )
99
+ }
100
+
101
+ openMetaObjectSelector(filter, value, confirmCallback)
102
+ }}
103
+ />
104
+ <md-icon style="--md-icon-size: 18px;margin-left: -24px;">manage_search</md-icon>
105
+ `
106
+ : html``
107
+ }
@@ -0,0 +1,97 @@
1
+ import '../popup/meta-object-selector-popup'
2
+
3
+ import { html } from 'lit-html'
4
+
5
+ import { openPopup } from '@operato/layout'
6
+ import { FilterConfigObject, FilterSelectRenderer } from '@operato/data-grist'
7
+ import { TermsUtil } from '../../utils/terms-util'
8
+
9
+ function openMetaCodeSelector(column, value, confirmCallback) {
10
+ var template = html` <meta-object-selector-popup .value=${value} .options=${column.record.options} .confirmCallback=${confirmCallback}></meta-object-selector-popup> `
11
+
12
+ openPopup(template, {
13
+ backdrop: true,
14
+ size: 'large',
15
+ title: column.record.options.selectorName ? TermsUtil.tMenu(column.record.options.selectorName) : TermsUtil.tTitle('select_item')
16
+ })
17
+ }
18
+
19
+ export const FilterGristMetaCodeSelect: FilterSelectRenderer = (column, value, owner) => {
20
+ const filter = column.filter
21
+ const options = column.record.options
22
+ const codes = options.codes && options.codes.length > 0 ? options.codes : undefined
23
+ const { operator = 'eq' } = filter as FilterConfigObject
24
+ const hiddenText = value ? value : ''
25
+
26
+ var text = value ? value : ''
27
+
28
+ if (options.dispField && value && codes) {
29
+ let dispCode = codes.filter(x => x.value == value)
30
+
31
+ if (dispCode && dispCode.length > 0) {
32
+ text = dispCode[0].display
33
+ }
34
+ }
35
+
36
+ return operator === 'eq'
37
+ ? html`
38
+ <input name='${column.name}' .value=${hiddenText} type="text" hidden></input>
39
+ <input
40
+ type="text"
41
+ readonly
42
+ name='${column.name}_disp'
43
+ .value=${text}
44
+ @click=${e => {
45
+ e.stopPropagation()
46
+
47
+ const input = e.target
48
+
49
+ const confirmCallback = selected => {
50
+ let code = selected ? selected[options.codeField] : ''
51
+ let disp = code
52
+
53
+ if (selected && options.dispField) {
54
+ let fields = options.dispField.split(',')
55
+ disp = selected[fields[0]]
56
+
57
+ if (fields.length > 1) {
58
+ disp += `(${fields
59
+ .splice(1)
60
+ .map(field => {
61
+ return selected[field]
62
+ })
63
+ .join(',')})`
64
+ }
65
+ }
66
+
67
+ input.value = disp
68
+
69
+ let codeInput =
70
+ owner.tagName.toLowerCase() == 'ox-grid-header'
71
+ ? //@ts-ignore owner element를 전제하지 않는 방법이 필요할 것이다.
72
+ owner.renderRoot.querySelector(`[name="${filter.name}"]`)
73
+ : //@ts-ignore owner element를 전제하지 않는 방법이 필요할 것이다.
74
+ owner.renderRoot.querySelector(`form [name="${filter.name}"]`)
75
+ codeInput.value = code
76
+
77
+ input.dispatchEvent(new Event('change', { bubbles: true }))
78
+
79
+ input.dispatchEvent(
80
+ new CustomEvent('filter-change', {
81
+ bubbles: true,
82
+ composed: true,
83
+ detail: {
84
+ name: column.name,
85
+ operator,
86
+ value: code
87
+ }
88
+ })
89
+ )
90
+ }
91
+
92
+ openMetaCodeSelector(column, value, confirmCallback)
93
+ }}
94
+ />
95
+ `
96
+ : html``
97
+ }
@@ -0,0 +1,102 @@
1
+ import '../popup/meta-object-selector-popup'
2
+
3
+ import { html } from 'lit-html'
4
+
5
+ import { openPopup } from '@operato/layout'
6
+ import { FilterConfigObject, FilterSelectRenderer } from '@operato/data-grist'
7
+ import { TermsUtil } from '../../utils/terms-util'
8
+
9
+ function openMetaObjectSelector(column, value, confirmCallback) {
10
+ var template = html` <meta-object-selector-popup .value=${value} .options=${column.record.options} .confirmCallback=${confirmCallback}></meta-object-selector-popup> `
11
+
12
+ openPopup(template, {
13
+ backdrop: true,
14
+ size: 'large',
15
+ title: column.record.options.selectorName ? TermsUtil.tMenu(column.record.options.selectorName) : TermsUtil.tTitle('select_item')
16
+ })
17
+ }
18
+
19
+ export const FilterGristMetaObjectSelect: FilterSelectRenderer = (column, value, owner) => {
20
+ const filter = column.filter
21
+ const { operator = 'eq' } = filter as FilterConfigObject
22
+ const options = column.record.options
23
+ const hiddenText = value ? value.id : ''
24
+
25
+ var text = ''
26
+
27
+ if (value) {
28
+ let fields = options.nameField.split(',')
29
+ text = value[fields[0]]
30
+
31
+ if (fields.length > 1) {
32
+ text += `(${fields
33
+ .splice(1)
34
+ .map(field => {
35
+ return value[field]
36
+ })
37
+ .join(',')})`
38
+ }
39
+ }
40
+
41
+ return operator === 'eq'
42
+ ? html`
43
+ <input name='${column.name}' .value=${hiddenText} type="text" hidden></input>
44
+ <input
45
+ type="text"
46
+ readonly
47
+ name='${column.name}_disp'
48
+ .value=${text}
49
+ @click=${e => {
50
+ e.stopPropagation()
51
+
52
+ const input = e.target
53
+
54
+ const confirmCallback = selected => {
55
+ let code = selected ? selected.id : ''
56
+ let disp = ''
57
+
58
+ if (selected) {
59
+ let fields = options.nameField.split(',')
60
+ disp = selected[fields[0]]
61
+
62
+ if (fields.length > 1) {
63
+ disp += `(${fields
64
+ .splice(1)
65
+ .map(field => {
66
+ return selected[field]
67
+ })
68
+ .join(',')})`
69
+ }
70
+ }
71
+
72
+ input.value = disp
73
+
74
+ let codeInput =
75
+ owner.tagName.toLowerCase() == 'ox-grid-header'
76
+ ? //@ts-ignore owner element를 전제하지 않는 방법이 필요할 것이다.
77
+ owner.renderRoot.querySelector(`[name="${filter.name}"]`)
78
+ : //@ts-ignore owner element를 전제하지 않는 방법이 필요할 것이다.
79
+ owner.renderRoot.querySelector(`form [name="${filter.name}"]`)
80
+ codeInput.value = code
81
+
82
+ input.dispatchEvent(new Event('change', { bubbles: true }))
83
+
84
+ input.dispatchEvent(
85
+ new CustomEvent('filter-change', {
86
+ bubbles: true,
87
+ composed: true,
88
+ detail: {
89
+ name: column.name,
90
+ operator,
91
+ value: code
92
+ }
93
+ })
94
+ )
95
+ }
96
+
97
+ openMetaObjectSelector(column, value, confirmCallback)
98
+ }}
99
+ />
100
+ `
101
+ : html``
102
+ }