@things-factory/operato-tools 7.0.1-alpha.3 → 7.0.1-alpha.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,144 +1,136 @@
1
- import { html } from 'lit-element'
1
+ import { html } from 'lit'
2
2
 
3
3
  import { TermsUtil } from '@things-factory/meta-ui/client/utils/terms-util'
4
4
  import { MetaApi } from '@things-factory/meta-ui/client/utils/meta-api'
5
5
 
6
-
7
- export const GridConfigTabMixin = (baseElement) => class extends baseElement {
8
-
9
- setGridConfigTabValues(data) {
10
- // 1. 기존 데이터가 있으면 기존 데이터 사용
11
- if (data) {
12
- let {
13
- mobile_mode = '',
14
- desk_mode = '',
15
- pages = [],
16
- use_row_checker = true,
17
- view_mode = []
18
- } = data.option || {};
19
-
20
- let multiple_select = (data.row || { multiple_select : false }).multiple_select;
21
- let pageCode = (function() {
22
- if(pages == 'unlimited') {
23
- return 'grid_term_unlimited';
24
- } else if(pages.length == 0) {
25
- return '';
26
- } else if (pages[0] == 20) {
27
- return 'grid_term_default'
28
- } else {
29
- return `grid_term_${pages[0]}`
6
+ export const GridConfigTabMixin = baseElement =>
7
+ class extends baseElement {
8
+ setGridConfigTabValues(data) {
9
+ // 1. 기존 데이터가 있으면 기존 데이터 사용
10
+ if (data) {
11
+ let { mobile_mode = '', desk_mode = '', pages = [], use_row_checker = true, view_mode = [] } = data.option || {}
12
+
13
+ let multiple_select = (data.row || { multiple_select: false }).multiple_select
14
+ let pageCode = (function () {
15
+ if (pages == 'unlimited') {
16
+ return 'grid_term_unlimited'
17
+ } else if (pages.length == 0) {
18
+ return ''
19
+ } else if (pages[0] == 20) {
20
+ return 'grid_term_default'
21
+ } else {
22
+ return `grid_term_${pages[0]}`
23
+ }
24
+ })()
25
+
26
+ this.viewGridData = {
27
+ mobile_mode: mobile_mode,
28
+ desk_mode: desk_mode,
29
+ use_row_checker: use_row_checker,
30
+ pages: pageCode,
31
+ view_mode: view_mode,
32
+ multiple_select: multiple_select,
33
+ use_filter_form: data.use_filter_form,
34
+ grid_refresh_when_page_activated: data.grid_refresh_when_page_activated
30
35
  }
31
- }())
32
-
33
- this.viewGridData = {
34
- mobile_mode: mobile_mode,
35
- desk_mode: desk_mode,
36
- use_row_checker: use_row_checker,
37
- pages: pageCode,
38
- view_mode: view_mode,
39
- multiple_select: multiple_select,
40
- use_filter_form: data.use_filter_form,
41
- grid_refresh_when_page_activated: data.grid_refresh_when_page_activated
36
+ } else {
37
+ // 3. 기존 데이터가 없으면 기본값 설정
38
+ this.setGridConfigTabDetaultValues()
42
39
  }
43
- } else {
44
- // 3. 기존 데이터가 없으면 기본값 설정
45
- this.setGridConfigTabDetaultValues();
46
40
  }
47
- }
48
41
 
49
- getGridConfigTabValues() {
50
- // 그리드 기본 옵션
51
- let retObject = {
52
- grid: {
53
- option: {},
54
- row: {
55
- click: 'select-row-toggle'
42
+ getGridConfigTabValues() {
43
+ // 그리드 기본 옵션
44
+ let retObject = {
45
+ grid: {
46
+ option: {},
47
+ row: {
48
+ click: 'select-row-toggle'
49
+ }
56
50
  }
57
51
  }
58
- };
59
52
 
60
- // input 객체에서 값 가져오기
61
- let grid_row_check_use = this.getElementValueById('grid_row_check_use');
62
- let grid_multi_select = this.getElementValueById('grid_multi_select');
63
- let grid_desk_view = this.getElementValueById('grid_desk_view');
64
- let grid_mobile_view = this.getElementValueById('grid_mobile_view');
65
-
66
- let grid_use_filter = this.getElementValueById('grid_use_filter');
67
- let grid_refresh_when_page_activated = this.getElementValueById('grid_refresh_when_page_activated');
68
-
69
- let grid_pagination = this.getElementValueById('grid_pagination');
70
-
71
- let grid_view_use = this.getElementValueById('grid_view_use');
72
- let list_view_use = this.getElementValueById('list_view_use');
73
- let card_view_use = this.getElementValueById('card_view_use');
53
+ // input 객체에서 값 가져오기
54
+ let grid_row_check_use = this.getElementValueById('grid_row_check_use')
55
+ let grid_multi_select = this.getElementValueById('grid_multi_select')
56
+ let grid_desk_view = this.getElementValueById('grid_desk_view')
57
+ let grid_mobile_view = this.getElementValueById('grid_mobile_view')
58
+
59
+ let grid_use_filter = this.getElementValueById('grid_use_filter')
60
+ let grid_refresh_when_page_activated = this.getElementValueById('grid_refresh_when_page_activated')
61
+
62
+ let grid_pagination = this.getElementValueById('grid_pagination')
63
+
64
+ let grid_view_use = this.getElementValueById('grid_view_use')
65
+ let list_view_use = this.getElementValueById('list_view_use')
66
+ let card_view_use = this.getElementValueById('card_view_use')
67
+
68
+ // 옵션 설정
69
+ retObject.grid.use_filter_form = grid_use_filter == 'true' ? true : false
70
+ retObject.grid.grid_refresh_when_page_activated = grid_refresh_when_page_activated == 'true' ? true : false
71
+ retObject.grid.row.multiple_select = grid_multi_select == 'true' ? true : false
72
+
73
+ retObject.grid.option.use_row_checker = grid_row_check_use == 'true' ? true : false
74
+ retObject.grid.option.mobile_mode = grid_mobile_view
75
+ retObject.grid.option.desk_mode = grid_desk_view
76
+
77
+ // 페이지 네이션 설정 변환
78
+ if (grid_pagination == 'grid_term_default') {
79
+ retObject.grid.option.pages = [20, 30, 50, 100]
80
+ } else if (grid_pagination == 'grid_term_50') {
81
+ retObject.grid.option.pages = [50, 100, 500, 1000]
82
+ } else if (grid_pagination == 'grid_term_100') {
83
+ retObject.grid.option.pages = [100, 500, 1000, 5000]
84
+ } else if (grid_pagination == 'grid_term_1000') {
85
+ retObject.grid.option.pages = [1000, 5000, 10000, 50000, 100000]
86
+ } else if (grid_pagination == 'grid_term_unlimited') {
87
+ retObject.grid.option.pages = 'unlimited'
88
+ }
74
89
 
75
- // 옵션 설정
76
- retObject.grid.use_filter_form = grid_use_filter == 'true' ? true : false;
77
- retObject.grid.grid_refresh_when_page_activated = grid_refresh_when_page_activated == 'true' ? true : false;
78
- retObject.grid.row.multiple_select = grid_multi_select == 'true' ? true : false;
90
+ // 그리드 지원 뷰 옵션 설정
91
+ retObject.grid.option.view_mode = []
92
+ if (grid_view_use == 'true') retObject.grid.option.view_mode.push('GRID')
93
+ if (list_view_use == 'true') retObject.grid.option.view_mode.push('LIST')
94
+ if (card_view_use == 'true') retObject.grid.option.view_mode.push('CARD')
79
95
 
80
- retObject.grid.option.use_row_checker = grid_row_check_use == 'true' ? true : false;
81
- retObject.grid.option.mobile_mode = grid_mobile_view;
82
- retObject.grid.option.desk_mode = grid_desk_view;
83
-
84
- // 페이지 네이션 설정 변환
85
- if(grid_pagination == 'grid_term_default') {
86
- retObject.grid.option.pages = [20, 30, 50, 100];
87
- } else if (grid_pagination == 'grid_term_50') {
88
- retObject.grid.option.pages = [50, 100, 500, 1000];
89
- } else if (grid_pagination == 'grid_term_100') {
90
- retObject.grid.option.pages = [100, 500, 1000, 5000];
91
- } else if (grid_pagination == 'grid_term_1000') {
92
- retObject.grid.option.pages = [1000, 5000, 10000, 50000, 100000];
93
- } else if (grid_pagination == 'grid_term_unlimited') {
94
- retObject.grid.option.pages = 'unlimited';
96
+ return retObject
95
97
  }
96
98
 
97
- // 그리드 지원 뷰 옵션 설정
98
- retObject.grid.option.view_mode = [];
99
- if(grid_view_use == 'true') retObject.grid.option.view_mode.push('GRID');
100
- if(list_view_use == 'true') retObject.grid.option.view_mode.push('LIST');
101
- if(card_view_use == 'true') retObject.grid.option.view_mode.push('CARD');
99
+ /**
100
+ * lifecycle
101
+ */
102
+ async setGridConfigTabConfig() {
103
+ // 1. 코드 조회
104
+ let gridPageOptions = await MetaApi.codeItems('GRID_PAGE_OPTIONS')
105
+ let gridViewModes = await MetaApi.codeItems('GRID_VIEW_MODE')
102
106
 
103
- return retObject;
104
- }
105
-
106
- /**
107
- * lifecycle
108
- */
109
- async setGridConfigTabConfig() {
110
- // 1. 코드 조회
111
- let gridPageOptions = await MetaApi.codeItems('GRID_PAGE_OPTIONS');
112
- let gridViewModes = await MetaApi.codeItems('GRID_VIEW_MODE');
113
-
114
- this.gridViewModes = gridViewModes;
115
- this.gridPageOptions = gridPageOptions;
116
- }
107
+ this.gridViewModes = gridViewModes
108
+ this.gridPageOptions = gridPageOptions
109
+ }
117
110
 
118
- /**
119
- * 기본 값 설정
120
- */
121
- setGridConfigTabDetaultValues() {
122
- if (!this.viewGridData) {
123
- this.viewGridData = {
124
- mobile_mode: this.gridViewModes ? this.gridViewModes[1] : 'LIST',
125
- desk_mode: this.gridViewModes ? this.gridViewModes[0] : 'GRID',
126
- use_row_checker: true,
127
- pages: 'grid_term_default',
128
- view_mode: [...(this.gridViewModes ? this.gridViewModes : ['GRID', 'LIST', 'CARD'])],
129
- multiple_select: true,
130
- use_filter_form: true,
131
- grid_refresh_when_page_activated: false
111
+ /**
112
+ * 기본 값 설정
113
+ */
114
+ setGridConfigTabDetaultValues() {
115
+ if (!this.viewGridData) {
116
+ this.viewGridData = {
117
+ mobile_mode: this.gridViewModes ? this.gridViewModes[1] : 'LIST',
118
+ desk_mode: this.gridViewModes ? this.gridViewModes[0] : 'GRID',
119
+ use_row_checker: true,
120
+ pages: 'grid_term_default',
121
+ view_mode: [...(this.gridViewModes ? this.gridViewModes : ['GRID', 'LIST', 'CARD'])],
122
+ multiple_select: true,
123
+ use_filter_form: true,
124
+ grid_refresh_when_page_activated: false
125
+ }
132
126
  }
133
127
  }
134
- }
135
-
136
128
 
137
- // 화면
138
- renderGridConfigTab() {
139
- this.setGridConfigTabDetaultValues();
129
+ // 화면
130
+ renderGridConfigTab() {
131
+ this.setGridConfigTabDetaultValues()
140
132
 
141
- let renderHtml = html`
133
+ let renderHtml = html`
142
134
  <div field-2column>
143
135
  <div field>
144
136
  <h2>
@@ -198,11 +190,9 @@ export const GridConfigTabMixin = (baseElement) => class extends baseElement {
198
190
  </h2>
199
191
  <label>
200
192
  <select id="grid_desk_view" name="grid_desk_view">
201
- ${
202
- this.gridViewModes?.map(x => {
203
- return html`<option value=${x.name} ?selected=${this.viewGridData.desk_mode == x.name}>${x.description}</option>`
204
- })
205
- }
193
+ ${this.gridViewModes?.map(x => {
194
+ return html`<option value=${x.name} ?selected=${this.viewGridData.desk_mode == x.name}>${x.description}</option>`
195
+ })}
206
196
  </select>
207
197
  </label>
208
198
  </div>
@@ -212,11 +202,9 @@ export const GridConfigTabMixin = (baseElement) => class extends baseElement {
212
202
  </h2>
213
203
  <label>
214
204
  <select id="grid_mobile_view" name="grid_mobile_view">
215
- ${
216
- this.gridViewModes?.map(x => {
217
- return html`<option value=${x.name} ?selected=${this.viewGridData.mobile_mode == x.name}>${x.description}</option>`
218
- })
219
- }
205
+ ${this.gridViewModes?.map(x => {
206
+ return html`<option value=${x.name} ?selected=${this.viewGridData.mobile_mode == x.name}>${x.description}</option>`
207
+ })}
220
208
  </select>
221
209
  </label>
222
210
  </div>
@@ -225,16 +213,18 @@ export const GridConfigTabMixin = (baseElement) => class extends baseElement {
225
213
  <mwc-icon>list_alt</mwc-icon>${TermsUtil.tLabel('grid_support_view')}
226
214
  </h2>
227
215
  <label>
228
- ${
229
- this.gridViewModes?.map(x => {
230
- return html`
216
+ ${this.gridViewModes?.map(x => {
217
+ return html`
231
218
  <span>${x.name}
232
- <input type="radio" name=${x.name.toLowerCase() + "_view_use"} id=${x.name.toLowerCase() + "_view_use"} ?checked=${this.viewGridData.view_mode.includes(x.name)} value="true">${TermsUtil.tLabel('use')}</input>
233
- <input type="radio" name=${x.name.toLowerCase() + "_view_use"} id=${x.name.toLowerCase() + "_view_use"} ?checked=${!this.viewGridData.view_mode.includes(x.name)} value="false">${TermsUtil.tLabel('unuse')}</input>
219
+ <input type="radio" name=${x.name.toLowerCase() + '_view_use'} id=${
220
+ x.name.toLowerCase() + '_view_use'
221
+ } ?checked=${this.viewGridData.view_mode.includes(x.name)} value="true">${TermsUtil.tLabel('use')}</input>
222
+ <input type="radio" name=${x.name.toLowerCase() + '_view_use'} id=${
223
+ x.name.toLowerCase() + '_view_use'
224
+ } ?checked=${!this.viewGridData.view_mode.includes(x.name)} value="false">${TermsUtil.tLabel('unuse')}</input>
234
225
  </span>
235
226
  `
236
- })
237
- }
227
+ })}
238
228
  </label>
239
229
  </div>
240
230
  <div field>
@@ -242,23 +232,21 @@ export const GridConfigTabMixin = (baseElement) => class extends baseElement {
242
232
  <mwc-icon>list_alt</mwc-icon>${TermsUtil.tLabel('grid_pagination')}
243
233
  </h2>
244
234
  <label>
245
- ${
246
- this.gridPageOptions?.map(x => {
247
- return html`
235
+ ${this.gridPageOptions?.map(x => {
236
+ return html`
248
237
  <span>
249
- <input type="radio" name="grid_pagination" id="grid_pagination" value=${x.name} ?checked=${this.viewGridData.pages==x.name
250
- }>${TermsUtil.tLabel(x.name)}</input>
238
+ <input type="radio" name="grid_pagination" id="grid_pagination" value=${x.name} ?checked=${this.viewGridData.pages == x.name}>${TermsUtil.tLabel(
239
+ x.name
240
+ )}</input>
251
241
  </span>
252
242
  `
253
- })
254
- }
243
+ })}
255
244
  </label>
256
245
  </div>
257
246
  </div>
258
247
  </div>
259
248
  `
260
249
 
261
- return renderHtml;
250
+ return renderHtml
251
+ }
262
252
  }
263
- }
264
-