@things-factory/meta-ui 8.0.40 → 9.0.0-9.0.0-beta.59.0

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 (118) hide show
  1. package/dist-client/bootstrap.d.ts +5 -5
  2. package/dist-client/bootstrap.js +20 -20
  3. package/dist-client/bootstrap.js.map +1 -1
  4. package/dist-client/tsconfig.tsbuildinfo +1 -1
  5. package/dist-client/utils/service-util.d.ts +2 -2
  6. package/dist-client/utils/service-util.js +4 -4
  7. package/dist-client/utils/service-util.js.map +1 -1
  8. package/dist-server/tsconfig.tsbuildinfo +1 -1
  9. package/package.json +24 -24
  10. package/client/bootstrap.ts +0 -170
  11. package/client/component/filter/filter-form-meta-code-select.ts +0 -102
  12. package/client/component/filter/filter-form-meta-object-select.ts +0 -107
  13. package/client/component/filter/filter-grist-meta-code-select.ts +0 -97
  14. package/client/component/filter/filter-grist-meta-object-select.ts +0 -102
  15. package/client/component/grist/editor/grist-editor-code-input.js +0 -96
  16. package/client/component/grist/editor/grist-editor-meta-code-selector.js +0 -157
  17. package/client/component/grist/editor/grist-editor-meta-object-selector.js +0 -122
  18. package/client/component/grist/renderer/grist-renderer-code-input.js +0 -20
  19. package/client/component/grist/renderer/grist-renderer-meta-code-selector.js +0 -28
  20. package/client/component/grist/renderer/grist-renderer-meta-object-selector.js +0 -25
  21. package/client/component/popup/code-input-editor-popup.js +0 -111
  22. package/client/component/popup/file-upload-popup.js +0 -129
  23. package/client/component/popup/meta-object-selector-popup.ts +0 -356
  24. package/client/component/popup/record-based-code-editor-popup.ts +0 -141
  25. package/client/dynamic-menus.ts +0 -38
  26. package/client/index.ts +0 -18
  27. package/client/load-components.ts +0 -17
  28. package/client/mixin/meta-base-mixin.js +0 -323
  29. package/client/mixin/meta-basic-grist-mixin.js +0 -283
  30. package/client/mixin/meta-button-mixin.js +0 -116
  31. package/client/mixin/meta-form-mixin.js +0 -435
  32. package/client/mixin/meta-grist-tab-mixin.js +0 -335
  33. package/client/mixin/meta-main-tab-mixin.js +0 -267
  34. package/client/mixin/meta-master-detail-mixin.js +0 -395
  35. package/client/mixin/meta-service-mixin.js +0 -306
  36. package/client/mixin/meta-tab-detail-mixin.js +0 -283
  37. package/client/mixin/meta-tab-mixin.js +0 -190
  38. package/client/pages/activity/meta-activity-define-page.js +0 -422
  39. package/client/pages/activity/meta-activity-list-page.js +0 -262
  40. package/client/pages/activity/meta-activity-viewer-element.js +0 -35
  41. package/client/pages/activity/meta-activity-writer-element.js +0 -48
  42. package/client/pages/activity/meta-activiy-mixin.js +0 -79
  43. package/client/pages/button-role/button-role-detail.js +0 -50
  44. package/client/pages/button-role/button-role-page.js +0 -25
  45. package/client/pages/doc-number/doc-number-page.js +0 -24
  46. package/client/pages/doc-number/next-doc-number-popup.js +0 -25
  47. package/client/pages/entity/config-entity.js +0 -955
  48. package/client/pages/entity/main-menu-selector.js +0 -245
  49. package/client/pages/history/history-copy-list-popup.js +0 -145
  50. package/client/pages/history/history-json-list-popup.js +0 -159
  51. package/client/pages/menu/dynamic-menu-template.js +0 -92
  52. package/client/pages/menu/dynamic-menu.ts +0 -744
  53. package/client/pages/menu/export-menu-popup.js +0 -468
  54. package/client/pages/meta-form-element.js +0 -9
  55. package/client/pages/meta-grist-element.js +0 -12
  56. package/client/pages/meta-grist-page.js +0 -16
  57. package/client/pages/meta-grist-tab-element.js +0 -16
  58. package/client/pages/meta-grist-tab-page.js +0 -16
  59. package/client/pages/meta-main-tab-element.js +0 -12
  60. package/client/pages/meta-main-tab-page.js +0 -16
  61. package/client/pages/meta-master-detail-element.js +0 -12
  62. package/client/pages/meta-master-detail-page.js +0 -16
  63. package/client/pages/meta-tab-detail-element.js +0 -12
  64. package/client/pages/meta-tab-detail-page.js +0 -16
  65. package/client/pages/meta-tab-element.js +0 -15
  66. package/client/pages/printer-device/printer-device-page.js +0 -24
  67. package/client/pages/template/doc-template-page.js +0 -24
  68. package/client/pages/template/template-file-page.js +0 -24
  69. package/client/pages/terms/config-terminology.js +0 -214
  70. package/client/pages/work-code/work-code-detail-popup.js +0 -16
  71. package/client/pages/work-code/work-code-page.js +0 -23
  72. package/client/route.ts +0 -36
  73. package/client/tsconfig.json +0 -13
  74. package/client/utils/grist-default-value.js +0 -36
  75. package/client/utils/meta-api.js +0 -811
  76. package/client/utils/meta-crypto.js +0 -52
  77. package/client/utils/meta-ui-util.js +0 -3304
  78. package/client/utils/rest-service-util.js +0 -328
  79. package/client/utils/service-util.js +0 -1327
  80. package/client/utils/terms-util.ts +0 -119
  81. package/client/utils/ui-util.js +0 -338
  82. package/client/utils/value-util.js +0 -234
  83. package/server/activity/CommonActivity.ts +0 -68
  84. package/server/index.ts +0 -3
  85. package/server/routes.ts +0 -61
  86. package/server/service/button-role/button-role-mutation.ts +0 -105
  87. package/server/service/button-role/button-role-query.ts +0 -53
  88. package/server/service/button-role/button-role-type.ts +0 -39
  89. package/server/service/button-role/button-role.ts +0 -61
  90. package/server/service/button-role/index.ts +0 -7
  91. package/server/service/dynamic-menu/dynamic-menu-query.ts +0 -270
  92. package/server/service/dynamic-menu/dynamic-menu-type.ts +0 -74
  93. package/server/service/dynamic-menu/index.ts +0 -3
  94. package/server/service/entity-event-subscriber/entity-event-subscriber.ts +0 -80
  95. package/server/service/entity-event-subscriber/index.ts +0 -3
  96. package/server/service/index.ts +0 -41
  97. package/server/service/menu-button-auth/index.ts +0 -7
  98. package/server/service/menu-button-auth/menu-button-auth-mutation.ts +0 -133
  99. package/server/service/menu-button-auth/menu-button-auth-query.ts +0 -138
  100. package/server/service/menu-button-auth/menu-button-auth-type.ts +0 -63
  101. package/server/service/menu-button-auth/menu-button-auth.ts +0 -92
  102. package/server/service/meta-activity/index.ts +0 -5
  103. package/server/service/meta-activity/meta-activity-mutation.ts +0 -191
  104. package/server/service/meta-activity/meta-activity-query.ts +0 -43
  105. package/server/service/meta-activity/meta-activity-type.ts +0 -56
  106. package/server/service/set-translations/index.ts +0 -3
  107. package/server/service/set-translations/set-translation-resolver.ts +0 -63
  108. package/server/service/work-code/index.ts +0 -6
  109. package/server/service/work-code/work-code-mutation.ts +0 -147
  110. package/server/service/work-code/work-code-query.ts +0 -67
  111. package/server/service/work-code/work-code-type.ts +0 -60
  112. package/server/service/work-code/work-code.ts +0 -83
  113. package/server/service/work-code-detail/index.ts +0 -6
  114. package/server/service/work-code-detail/work-code-detail-mutation.ts +0 -149
  115. package/server/service/work-code-detail/work-code-detail-query.ts +0 -59
  116. package/server/service/work-code-detail/work-code-detail-type.ts +0 -50
  117. package/server/service/work-code-detail/work-code-detail.ts +0 -82
  118. package/server/tsconfig.json +0 -9
@@ -1,283 +0,0 @@
1
- import { MetaApi } from '../utils/meta-api'
2
- import { MetaUiUtil } from '../utils/meta-ui-util'
3
-
4
- import { MetaButtonMixin } from './meta-button-mixin'
5
-
6
- /**
7
- * @description 메뉴 메타 정보를 이용해 그리드를 렌더링
8
- ******************************************************
9
- * @param {Object} MetaButtonMixin
10
- * @returns
11
- */
12
- export const MetaTabDetailMixin = baseElement =>
13
- class extends MetaButtonMixin(baseElement) {
14
- /**
15
- * @description 스타일 정의
16
- **************************
17
- * @returns {Array} 스타일
18
- */
19
- static get styles() {
20
- return MetaApi.getBasicTabDetailStyles()
21
- }
22
-
23
- /**
24
- * @description 프로퍼티 정의
25
- ***************************************
26
- * @returns {Object} 프로퍼티
27
- */
28
- static get properties() {
29
- return {
30
- /**
31
- * @description 그리드 구성 정보
32
- *****************************
33
- * @type {Object}
34
- */
35
- gridConfig: Object,
36
- /**
37
- * @description 그리드 컬럼 구성 정보
38
- *********************************
39
- * @type {Array}
40
- */
41
- gridColumnConfig: Array,
42
- /**
43
- * @description 검색 폼 구성 정보
44
- *******************************
45
- * @type {Array}
46
- */
47
- searchConfig: Array,
48
- /**
49
- * @description 화면에서 사용되는 서치 폼 : grist, filter, not
50
- *********************************************************
51
- * @type {String}
52
- */
53
- searchFormElement: String,
54
- /**
55
- * @description 메뉴 메타 정보로 부터 추출한 후 그리스트를 위해 설정 정보 구성
56
- *****************************************************************
57
- * @type {Object}
58
- */
59
- gristConfigSet: Object,
60
- /**
61
- * @description 필터 폼 사용 여부
62
- *****************************
63
- * @type {Boolean}
64
- */
65
- useFilterForm: Boolean,
66
- /**
67
- * @description 모바일 기기에서 그리드 모드 : GRID, LIST, CARD
68
- *********************************************************
69
- * @type {String}
70
- */
71
- gridMobileMode: String,
72
- /**
73
- * @description 데스크탑에서 그리드 모드 : GRID, LIST, CARD
74
- ******************************************************
75
- * @type {String}
76
- */
77
- gridDeskMode: String,
78
- /**
79
- * @description 그리드 뷰 모드 : GRID, LIST, CARD
80
- **********************************************
81
- * @type {Array}
82
- */
83
- gridViewOptions: Array,
84
- /**
85
- * @description 현재 그리드 뷰 모드 : GRID, LIST, CARD
86
- ***************************************************
87
- * @type {String}
88
- */
89
- gridMode: String,
90
- /**
91
- * @description Infinity Page 사용 여부
92
- **************************************
93
- * @type {Boolean}
94
- */
95
- infinityPage: Boolean,
96
- /**
97
- * @description 그리스트 엘리먼트 ID
98
- ***************************
99
- * @type {String}
100
- */
101
- gristId: String,
102
- /**
103
- * @description 필터 폼 엘리먼트 ID
104
- ***************************
105
- * @type {String}
106
- */
107
- filterFormId: String,
108
- /**
109
- * @description detail 엘리먼트
110
- ***************************
111
- * @type {Object}
112
- */
113
- detailElement: Object
114
- }
115
- }
116
-
117
- /**
118
- * @description 그리스트
119
- ***********************
120
- * @returns {HTMLElement}
121
- */
122
- get grist() {
123
- return this.masterElement.getMainGrist()
124
- // return this.renderRoot.querySelector(this.gristId)
125
- }
126
-
127
- /**
128
- * @description 필터 폼
129
- ***********************
130
- * @returns {HTMLElement}
131
- */
132
- get filterForm() {
133
- return this.shadowRoot?.querySelector(this.filterFormId)
134
- }
135
-
136
- /**
137
- * @description 컨텍스트
138
- ***********************
139
- * @returns {HTMLElement}
140
- */
141
- get context() {
142
- let ctx = MetaUiUtil.getContextObject(this)
143
-
144
- if (ctx.actions) delete ctx.actions
145
- if (ctx.exportable) delete ctx.exportable
146
- if (ctx.importable) delete ctx.importable
147
-
148
- return ctx
149
- }
150
-
151
- /******************************************************
152
- * LifeCycle
153
- ******************************************************/
154
-
155
- async connectedCallback() {
156
- // 그리스트, 필터 폼 ID 설정
157
- this.gristId = 'ox-grist'
158
- this.filterFormId = 'ox-filters-form-base'
159
-
160
- // 메뉴 메타 정보 조회 및 기본 파싱
161
- await this.getAndParseMenuMeta()
162
-
163
- if (this.isElement) {
164
- await this.parseGristConfigs()
165
- }
166
-
167
- if (this.activityDataSet) {
168
- this.dataSet = (this.activityDataSet || {}).main
169
- }
170
-
171
- if (super.connectedCallback) {
172
- await super.connectedCallback()
173
- }
174
- }
175
-
176
- async firstUpdated() {
177
- if (super.firstUpdated) {
178
- await super.firstUpdated()
179
- }
180
- }
181
-
182
- async pageInitialized() {
183
- if (this.isPage) {
184
- await this.parseGristConfigs()
185
- }
186
-
187
- if (super.pageInitialized) {
188
- await super.pageInitialized()
189
- }
190
- }
191
-
192
- render() {
193
- return MetaApi.getTabDetailHtml(this)
194
- }
195
-
196
- /**
197
- * @descrtiption 메뉴 메타에서 기본 그리드 정보 파싱 처리
198
- ************************************************
199
- * @param {Object} menuMeta 메뉴 메타 정보
200
- */
201
- parseBasicGridConfigs(menuMeta) {
202
- this.gridConfig = menuMeta.grid
203
- this.gridColumnConfig = menuMeta.grid_column
204
- this.searchConfig = menuMeta.search
205
- this.gridEmphasized = menuMeta.gridEmphasized
206
- }
207
-
208
- /**
209
- * @descrtiption 그리스트 구성 정보 파싱 처리
210
- ***************************************
211
- */
212
- async parseGristConfigs() {
213
- this.gristConfigSet = await MetaApi.parseGridConfigSet(this)
214
- this.useMasterFilterForm = this.useFilterForm === true ? true : false
215
- this.useFilterForm = false
216
- this.buttonConfig = undefined
217
- this.useButtonExport = false
218
- this.useButtonImport = false
219
-
220
- this.searchFieldValues = []
221
- this.searchFields = this.gristConfigSet.columns
222
- .filter(x => x.filter)
223
- .map(x => {
224
- let searchField = {
225
- name: x.name,
226
- type: x.filter.operator === 'search' ? 'search' : x.type,
227
- label: x.header,
228
- operator: x.filter.operator ? x.filter.operator : 'eq'
229
- }
230
-
231
- if (x.filter.options) {
232
- searchField.options = x.filter.options
233
- }
234
-
235
- if (x.record.options) {
236
- searchField.options = x.record.options
237
- }
238
-
239
- if (x.filter.value) {
240
- this.searchFieldValues.push({
241
- name: searchField.name,
242
- operator: searchField.operator,
243
- value: x.filter.value
244
- })
245
- }
246
-
247
- delete x.filter
248
-
249
- return searchField
250
- })
251
- }
252
-
253
- /********************************************************************
254
- * C R U D Functions
255
- ********************************************************************/
256
-
257
- async fetch() {
258
- await this.grist.fetch()
259
- }
260
-
261
- async beforeFetch({ page = 0, limit = 0, sortings = [], filters = [] }) {
262
- if (this.masterElement) {
263
- if (this.masterElement.clear) {
264
- await this.masterElement.clear()
265
- }
266
- }
267
-
268
- if (this.detailElement) {
269
- if (this.detailElement.clear) {
270
- await this.detailElement.clear()
271
- }
272
- }
273
-
274
- return true
275
- }
276
-
277
- getData() {
278
- return {
279
- master: this.masterElement.getData(),
280
- detail: this.detailElement.getData()
281
- }
282
- }
283
- }
@@ -1,190 +0,0 @@
1
- import { MetaApi } from '../utils/meta-api'
2
- import { MetaUiUtil } from '../utils/meta-ui-util'
3
-
4
- import { MetaButtonMixin } from './meta-button-mixin'
5
-
6
- /**
7
- * @license
8
- * Copyright © HatioLab Inc. All rights reserved.
9
- * @author Shortstop shortstop@hatiolab.com
10
- * @description 메뉴 메타 정보를 기반으로 탭 구성
11
- */
12
- export const MetaTabMixin = baseElement =>
13
- class extends MetaButtonMixin(baseElement) {
14
- /**
15
- * @description 스타일 정의
16
- **************************
17
- * @returns {Array} 스타일
18
- */
19
- static get styles() {
20
- return MetaApi.getBasicTabStyles()
21
- }
22
-
23
- /**
24
- * @description 프로퍼티 정의
25
- **************************
26
- * @returns {Object} 프로퍼티
27
- */
28
- static get properties() {
29
- return {
30
- /**
31
- * @description 탭 상세 렌터링 정보
32
- *******************************
33
- * @type {Object}
34
- */
35
- tabRenderConfig: Array,
36
- /**
37
- * @description 현재 선택된 탭
38
- ****************************
39
- * @type {String}
40
- */
41
- currentTabKey: String,
42
- /**
43
- * @description 렌더링 된 탭 객체
44
- ******************************
45
- * @type {Array}
46
- */
47
- tabElements: Object
48
- }
49
- }
50
-
51
- /**
52
- * @description 컨텍스트
53
- ***********************
54
- * @returns {HTMLElement}
55
- */
56
- get context() {
57
- return MetaUiUtil.getContextObject(this)
58
- }
59
-
60
- /******************************************************
61
- * LifeCycle
62
- ******************************************************/
63
-
64
- /**
65
- * @override connectedCallback
66
- *******************************
67
- */
68
- async connectedCallback() {
69
- this.currentTabKey = undefined
70
- // 메뉴 메타 정보 조회 및 기본 파싱
71
- await this.getAndParseMenuMeta()
72
-
73
- if (this.activityDataSet) {
74
- this.dataSet = this.activityDataSet
75
- }
76
-
77
- if (super.connectedCallback) {
78
- await super.connectedCallback()
79
- }
80
- }
81
-
82
- /**
83
- * @override firstUpdated
84
- **************************
85
- */
86
- async firstUpdated() {
87
- if (super.firstUpdated) {
88
- await super.firstUpdated()
89
- }
90
- }
91
-
92
- /**
93
- * @override pageInitialized
94
- *****************************
95
- */
96
- async pageInitialized() {
97
- if (super.pageInitialized) {
98
- await super.pageInitialized()
99
- }
100
- }
101
-
102
- /**
103
- * @description 화면 그리기
104
- **************************
105
- * @returns {HTMLElement}
106
- */
107
- render() {
108
- return MetaApi.getBasicTabHtml(this)
109
- }
110
-
111
- /**
112
- * @descrtiption 메뉴 메타 정보로 부터 기본 그리드 정보 파싱 처리
113
- ************************************************
114
- * @param {Object} menuMeta 메뉴 메타 정보
115
- */
116
- parseBasicTabConfigs(menuMeta) {
117
- if (this.includeMainList === true) {
118
- let mainInfoTxt = this.etcConfig.main_tab_info
119
- let mainInfo = JSON.parse(mainInfoTxt || '{ "name": "general", "display": "general", "icon": "list", "index": 0 }')
120
- if (mainInfo.index > menuMeta.tab.length) mainInfo.index = menuMeta.tab.length
121
-
122
- menuMeta.tab.splice(mainInfo.index, 0, {
123
- name: mainInfo.name,
124
- display: mainInfo.display,
125
- tagname: 'meta-grist-element',
126
- location: '@things-factory/meta-ui/dist-client/pages/meta-grist-element',
127
- parent_field: 'id',
128
- param_field: 'param_field',
129
- menu: this.route_name,
130
- icon: mainInfo.icon,
131
- filter_from: false,
132
- main_filter_form: this.mainFilterForm
133
- })
134
- }
135
-
136
- this.tabRenderConfig = menuMeta.tab
137
- menuMeta.button = []
138
- }
139
-
140
- /********************************************************************
141
- * Data Handling
142
- ********************************************************************/
143
-
144
- /**
145
- * @descrtiption 모든 탭 별 데이터 클리어
146
- ************************************
147
- */
148
- async clear() {
149
- if (this.tabElements) {
150
- let tabKeys = Object.keys(this.tabElements)
151
-
152
- for (var i = 0; i < tabKeys.length; i++) {
153
- await this.tabElements[tabKeys[i]].clear()
154
- }
155
- }
156
- }
157
-
158
- /**
159
- * @descrtiption 탭 별로 데이터 수집 후 리턴
160
- ***************************************
161
- * @returns {Object} 탭 화면 데이터
162
- */
163
- getData() {
164
- let data = {}
165
-
166
- if (this.tabElements) {
167
- let tabKeys = Object.keys(this.tabElements)
168
-
169
- tabKeys.forEach(tabKey => {
170
- data[tabKey] = this.tabElements[tabKey].getData()
171
- })
172
- }
173
-
174
- return data
175
- }
176
-
177
- /**
178
- * @descrtiption 메인 그리드
179
- **************************
180
- * @returns {Object} grist
181
- */
182
- getMainGrist() {
183
- if (this.tabElements) {
184
- let tabKeys = Object.keys(this.tabElements)
185
- return this.tabElements[tabKeys[0]].grist
186
- }
187
-
188
- return undefined
189
- }
190
- }