@things-factory/meta-ui 7.0.1-alpha.85 → 7.0.1-alpha.86

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.
@@ -2,7 +2,7 @@ import '@material/web/icon/icon.js'
2
2
 
3
3
  import { css, html, LitElement } from 'lit'
4
4
 
5
- import { i18next, localize } from '@things-factory/i18n-base'
5
+ import { i18next, localize } from '@operato/i18n'
6
6
  import { ScrollbarStyles, CommonGristStyles, ButtonContainerStyles } from '@operato/styles'
7
7
 
8
8
  import { TermsUtil } from './../../utils/terms-util'
@@ -175,9 +175,18 @@ export class MainMenuSelector extends localize(i18next)(LitElement) {
175
175
  render() {
176
176
  return html` <div id="container" class="container">
177
177
  <div class="container_detail">
178
- <ox-grist id="ox-grist" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchMainMenus.bind(this)}> </ox-grist>
178
+ <ox-grist
179
+ id="ox-grist"
180
+ .config=${this.gridConfig}
181
+ .mode=${'GRID'}
182
+ auto-fetch
183
+ .fetchHandler=${this.fetchMainMenus.bind(this)}
184
+ >
185
+ </ox-grist>
179
186
  <div class="button-container">
180
- <button hidden id="receive" @click=${this.selectMainMenu.bind(this)}><md-icon>menu_open</md-icon>${TermsUtil.tButton('create-menu')}</button>
187
+ <button hidden id="receive" @click=${this.selectMainMenu.bind(this)}>
188
+ <md-icon>menu_open</md-icon>${TermsUtil.tButton('create-menu')}
189
+ </button>
181
190
  </div>
182
191
  </div>
183
192
  </div>`
@@ -1,6 +1,6 @@
1
1
  import { css, html, LitElement } from 'lit'
2
2
 
3
- import { i18next, localize } from '@things-factory/i18n-base'
3
+ import { i18next, localize } from '@operato/i18n'
4
4
  import { ScrollbarStyles, CommonGristStyles } from '@operato/styles'
5
5
 
6
6
  import { MetaApi } from '../../utils/meta-api'
@@ -99,7 +99,16 @@ export class HistoryCopyListPopup extends localize(i18next)(LitElement) {
99
99
  ***************************
100
100
  */
101
101
  render() {
102
- return html` <ox-grist id="ox-grist" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}> </ox-grist> `
102
+ return html`
103
+ <ox-grist
104
+ id="ox-grist"
105
+ .config=${this.gridConfig}
106
+ .mode=${'GRID'}
107
+ auto-fetch
108
+ .fetchHandler=${this.fetchHandler.bind(this)}
109
+ >
110
+ </ox-grist>
111
+ `
103
112
  }
104
113
 
105
114
  /**
@@ -121,7 +130,14 @@ export class HistoryCopyListPopup extends localize(i18next)(LitElement) {
121
130
 
122
131
  let selectFields = MetaApi.getSelectColumns(this.gridConfig.columns)
123
132
 
124
- let result = await MetaApi.searchByPagination(`${this.gqlFunc}Histories`, filter, sortings, page, limit, selectFields)
133
+ let result = await MetaApi.searchByPagination(
134
+ `${this.gqlFunc}Histories`,
135
+ filter,
136
+ sortings,
137
+ page,
138
+ limit,
139
+ selectFields
140
+ )
125
141
  return result
126
142
  }
127
143
  }
@@ -1,6 +1,6 @@
1
1
  import { css, html, LitElement } from 'lit'
2
2
 
3
- import { i18next, localize } from '@things-factory/i18n-base'
3
+ import { i18next, localize } from '@operato/i18n'
4
4
  import { ScrollbarStyles, CommonGristStyles } from '@operato/styles'
5
5
 
6
6
  import { TermsUtil } from './../../utils/terms-util'
@@ -100,7 +100,16 @@ export class HistoryJsonListPopup extends localize(i18next)(LitElement) {
100
100
  ***************************
101
101
  */
102
102
  render() {
103
- return html` <ox-grist id="ox-grist" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}> </ox-grist> `
103
+ return html`
104
+ <ox-grist
105
+ id="ox-grist"
106
+ .config=${this.gridConfig}
107
+ .mode=${'GRID'}
108
+ auto-fetch
109
+ .fetchHandler=${this.fetchHandler.bind(this)}
110
+ >
111
+ </ox-grist>
112
+ `
104
113
  }
105
114
 
106
115
  /**
@@ -128,7 +137,14 @@ export class HistoryJsonListPopup extends localize(i18next)(LitElement) {
128
137
  historyJson
129
138
  `
130
139
 
131
- let result = await MetaApi.searchByPagination(`${this.gqlFunc}Histories`, filter, sortings, page, limit, selectFields)
140
+ let result = await MetaApi.searchByPagination(
141
+ `${this.gqlFunc}Histories`,
142
+ filter,
143
+ sortings,
144
+ page,
145
+ limit,
146
+ selectFields
147
+ )
132
148
 
133
149
  result.records = result.records.map(x => {
134
150
  return {
@@ -2,7 +2,7 @@ import '@material/web/icon/icon.js'
2
2
 
3
3
  import { css, html, LitElement } from 'lit'
4
4
 
5
- import { i18next, localize } from '@things-factory/i18n-base'
5
+ import { i18next, localize } from '@operato/i18n'
6
6
  import { ScrollbarStyles, CommonGristStyles, ButtonContainerStyles } from '@operato/styles'
7
7
 
8
8
  import { TermsUtil } from './../../utils/terms-util'
@@ -82,8 +82,24 @@ export class ExportMenuPopup extends localize(i18next)(LitElement) {
82
82
  MetaApi.getGristColumnConfig2('string', 'group_type', 'screen_group_type', 'left', false, false, 100),
83
83
  MetaApi.getGristColumnConfig2('string', 'column_id', 'column_id', 'left', false, false, 150),
84
84
  MetaApi.getGristColumnConfig2('string', 'search_field', 'is_search_field', 'center', false, false, 80),
85
- MetaApi.getGristColumnConfig2('string', 'entity_ref', 'entity_object_reference_field', 'left', false, false, 100),
86
- MetaApi.getGristColumnConfig2('string', 'entity_code_ref', 'entity_code_reference_field', 'left', false, false, 100),
85
+ MetaApi.getGristColumnConfig2(
86
+ 'string',
87
+ 'entity_ref',
88
+ 'entity_object_reference_field',
89
+ 'left',
90
+ false,
91
+ false,
92
+ 100
93
+ ),
94
+ MetaApi.getGristColumnConfig2(
95
+ 'string',
96
+ 'entity_code_ref',
97
+ 'entity_code_reference_field',
98
+ 'left',
99
+ false,
100
+ false,
101
+ 100
102
+ ),
87
103
  MetaApi.getGristColumnConfig2('string', 'code_ref', 'code_reference_field', 'left', false, false, 100),
88
104
  MetaApi.getGristColumnConfig2('string', 'main_column', 'is_main_list_field', 'center', false, false, 80),
89
105
  MetaApi.getGristColumnConfig2('string', 'editable', 'is_editable', 'center', false, false, 80),
@@ -111,7 +127,14 @@ export class ExportMenuPopup extends localize(i18next)(LitElement) {
111
127
  */
112
128
  render() {
113
129
  return html`
114
- <ox-grist id="ox-grist" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}> </ox-grist>
130
+ <ox-grist
131
+ id="ox-grist"
132
+ .config=${this.gridConfig}
133
+ .mode=${'GRID'}
134
+ auto-fetch
135
+ .fetchHandler=${this.fetchHandler.bind(this)}
136
+ >
137
+ </ox-grist>
115
138
  <div class="button-container">
116
139
  <button @click=${this.export.bind(this)}><md-icon>export_notes</md-icon>${TermsUtil.tButton('export')}</button>
117
140
  </div>
@@ -363,8 +386,16 @@ export class ExportMenuPopup extends localize(i18next)(LitElement) {
363
386
  x.seq = Number(recIdx) + 1
364
387
 
365
388
  // 컬럼 명칭 termionologies 에 없으면 i18next 에서 찾는다 .
366
- x.column_ko = await this.getTerms('ko-KR', ['label', 'field'], x.column_id.endsWith('_id') ? x.column_id.substring(0, x.column_id.length - 3) : x.column_id)
367
- x.column_en = await this.getTerms('en-US', ['label', 'field'], x.column_id.endsWith('_id') ? x.column_id.substring(0, x.column_id.length - 3) : x.column_id)
389
+ x.column_ko = await this.getTerms(
390
+ 'ko-KR',
391
+ ['label', 'field'],
392
+ x.column_id.endsWith('_id') ? x.column_id.substring(0, x.column_id.length - 3) : x.column_id
393
+ )
394
+ x.column_en = await this.getTerms(
395
+ 'en-US',
396
+ ['label', 'field'],
397
+ x.column_id.endsWith('_id') ? x.column_id.substring(0, x.column_id.length - 3) : x.column_id
398
+ )
368
399
 
369
400
  x.column_id = x.column_id.toUpperCase()
370
401
  x.column_type = colTypes[x.column_type]
@@ -4,7 +4,7 @@
4
4
  * @author Shortstop <shortstop@hatiolab.com>
5
5
  * @description 메인 메뉴 선택 화면
6
6
  */
7
- export class MainMenuSelector {
7
+ export class MainMenuSelector extends LitElement {
8
8
  /**
9
9
  * @description 스타일 정의
10
10
  ***********************************
@@ -58,3 +58,4 @@ export class MainMenuSelector {
58
58
  */
59
59
  selectMainMenu(e: any): Promise<void>;
60
60
  }
61
+ import { LitElement } from "lit-element/lit-element";
@@ -1,6 +1,6 @@
1
1
  import '@material/web/icon/icon.js';
2
2
  import { css, html, LitElement } from 'lit';
3
- import { i18next, localize } from '@things-factory/i18n-base';
3
+ import { i18next, localize } from '@operato/i18n';
4
4
  import { ScrollbarStyles, CommonGristStyles, ButtonContainerStyles } from '@operato/styles';
5
5
  import { TermsUtil } from './../../utils/terms-util';
6
6
  import { UiUtil } from '../../utils/ui-util';
@@ -165,9 +165,18 @@ export class MainMenuSelector extends localize(i18next)(LitElement) {
165
165
  render() {
166
166
  return html ` <div id="container" class="container">
167
167
  <div class="container_detail">
168
- <ox-grist id="ox-grist" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchMainMenus.bind(this)}> </ox-grist>
168
+ <ox-grist
169
+ id="ox-grist"
170
+ .config=${this.gridConfig}
171
+ .mode=${'GRID'}
172
+ auto-fetch
173
+ .fetchHandler=${this.fetchMainMenus.bind(this)}
174
+ >
175
+ </ox-grist>
169
176
  <div class="button-container">
170
- <button hidden id="receive" @click=${this.selectMainMenu.bind(this)}><md-icon>menu_open</md-icon>${TermsUtil.tButton('create-menu')}</button>
177
+ <button hidden id="receive" @click=${this.selectMainMenu.bind(this)}>
178
+ <md-icon>menu_open</md-icon>${TermsUtil.tButton('create-menu')}
179
+ </button>
171
180
  </div>
172
181
  </div>
173
182
  </div>`;
@@ -1 +1 @@
1
- {"version":3,"file":"main-menu-selector.js","sourceRoot":"","sources":["../../../client/pages/entity/main-menu-selector.js"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/icon/icon.js'\n\nimport { css, html, LitElement } from 'lit'\n\nimport { i18next, localize } from '@things-factory/i18n-base'\nimport { ScrollbarStyles, CommonGristStyles, ButtonContainerStyles } from '@operato/styles'\n\nimport { TermsUtil } from './../../utils/terms-util'\nimport { UiUtil } from '../../utils/ui-util'\nimport { MetaApi } from '../../utils/meta-api'\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Shortstop <shortstop@hatiolab.com>\n * @description 메인 메뉴 선택 화면\n */\nexport class MainMenuSelector extends localize(i18next)(LitElement) {\n /**\n * @description 스타일 정의\n ***********************************\n * @returns {Object} 화면의 스타일 정의\n */\n static get styles() {\n let styles = [\n ScrollbarStyles,\n CommonGristStyles,\n ButtonContainerStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n overflow-x: auto;\n }\n\n .container {\n flex: 1;\n display: grid;\n overflow: hidden;\n }\n\n .container_detail {\n background-color: var(--main-section-background-color);\n display: flex;\n flex-direction: column;\n flex: 1;\n overflow-y: auto;\n }\n\n h2 {\n padding: var(--subtitle-padding);\n font: var(--subtitle-font);\n color: var(--subtitle-text-color);\n border-bottom: var(--subtitle-border-bottom);\n }\n\n .container_detail h2 {\n margin: var(--grist-title-margin);\n border: var(--grist-title-border);\n font: var(--grist-title-font);\n color: var(--secondary-color);\n }\n\n .container_detail h2 md-icon {\n --md-icon-size: var(--grist-title-icon-size);\n vertical-align: middle;\n margin: var(--grist-title-icon-margin);\n color: var(--grist-title-icon-color);\n }\n\n h2 {\n padding-bottom: var(--grist-title-with-grid-padding);\n }\n\n ox-grist {\n overflow-y: auto;\n flex: 1;\n }\n\n ox-filters-form {\n flex: 1;\n }\n `\n ]\n return styles\n }\n\n /**\n * @description 프로퍼티 정의\n ***********************************\n * @returns {Object} 화면의 프로퍼티 정의\n */\n static get properties() {\n return {\n /**\n * @description 메인 메뉴 리스트\n ****************************\n * @type {Array}\n */\n items: {\n type: Array\n },\n\n /**\n * @description 총 메인 메뉴 건수\n ******************************\n * @type {Number}\n */\n total: {\n type: Number\n },\n\n /**\n * @description 메인 메뉴 선택 이후 콜백 함수\n ***************************************\n * @type {Function}\n */\n selectCallback: {\n type: Function\n }\n }\n }\n\n /**\n * @description 라이트 사이클\n ***************************\n */\n async connectedCallback() {\n // 메뉴 그룹 그리드 설정\n this.gridConfig = {\n rows: MetaApi.getGristSelectableConfig(false),\n pagination: { pages: [1000] },\n appendable: true,\n columns: [\n ...MetaApi.getGristGuttersConfig(true, false),\n {\n name: 'rank',\n header: TermsUtil.tLabel('rank'),\n width: 80,\n record: {\n editable: false,\n format: '#,###',\n align: 'left'\n },\n sortable: true\n },\n MetaApi.getGristColumnConfig('string', 'name', 'left', true, false, 300),\n {\n type: 'string',\n name: 'title',\n header: TermsUtil.tLabel('title'),\n record: {\n editable: false,\n align: 'left',\n renderer: (value, column, record, rowIndex, field) => {\n return record.name ? TermsUtil.tMenu(record.name) : ''\n }\n },\n sortable: false,\n width: 350\n },\n await MetaApi.getGristCodeSelectorColumnConfig('menuType', 'menu_type', 'left', false, 100, true, 'MENU_TYPE')\n ]\n }\n\n if (super.connectedCallback) {\n await super.connectedCallback()\n }\n }\n\n /**\n * @description 라이프 사이클\n ***************************\n */\n render() {\n return html` <div id=\"container\" class=\"container\">\n <div class=\"container_detail\">\n <ox-grist id=\"ox-grist\" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchMainMenus.bind(this)}> </ox-grist>\n <div class=\"button-container\">\n <button hidden id=\"receive\" @click=${this.selectMainMenu.bind(this)}><md-icon>menu_open</md-icon>${TermsUtil.tButton('create-menu')}</button>\n </div>\n </div>\n </div>`\n }\n\n /**\n * @description 그리드 리턴\n **************************\n * @returns {Object} 그리드\n */\n get grist() {\n return this.shadowRoot.querySelector('#ox-grist')\n }\n\n /**\n * @description 메인 메뉴 조회\n ***************************\n * @returns\n */\n async fetchMainMenus() {\n let filters = [{ name: 'parentId', operator: 'is_null', value: '' }]\n let sorters = [{ name: 'rank' }]\n let selectFields = `\n id\n name\n rank\n description\n menuType\n category\n `\n let result = await MetaApi.searchByPagination('menus', filters, sorters, 0, 0, selectFields)\n this.items = result.records\n this.total = result.total\n return { total: this.total, records: this.items }\n }\n\n /**\n * @description 메인 메뉴 선택 시 액션 - 콜백 함수 호출\n ************************************************\n */\n async selectMainMenu(e) {\n const records = this.grist.selected\n if (!records || records.length == 0) {\n UiUtil.showCustomAlert('title.info', 'text.NOTHING_SELECTED', 'info', 'button.confirm')\n } else {\n if (this.selectCallback) {\n let res = await this.selectCallback(records[0].id)\n if (res.success) {\n history.back()\n }\n }\n }\n }\n}\n\ncustomElements.define('main-menu-selector', MainMenuSelector)\n"]}
1
+ {"version":3,"file":"main-menu-selector.js","sourceRoot":"","sources":["../../../client/pages/entity/main-menu-selector.js"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,CAAA;AAEnC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAE3C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AAE3F,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAE9C;;;;;GAKG;AACH,MAAM,OAAO,gBAAiB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IACjE;;;;OAIG;IACH,MAAM,KAAK,MAAM;QACf,IAAI,MAAM,GAAG;YACX,eAAe;YACf,iBAAiB;YACjB,qBAAqB;YACrB,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsDF;SACF,CAAA;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;OAIG;IACH,MAAM,KAAK,UAAU;QACnB,OAAO;YACL;;;;eAIG;YACH,KAAK,EAAE;gBACL,IAAI,EAAE,KAAK;aACZ;YAED;;;;eAIG;YACH,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM;aACb;YAED;;;;eAIG;YACH,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;aACf;SACF,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB;QACrB,eAAe;QACf,IAAI,CAAC,UAAU,GAAG;YAChB,IAAI,EAAE,OAAO,CAAC,wBAAwB,CAAC,KAAK,CAAC;YAC7C,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE;YAC7B,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE;gBACP,GAAG,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC;gBAC7C;oBACE,IAAI,EAAE,MAAM;oBACZ,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;oBAChC,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE;wBACN,QAAQ,EAAE,KAAK;wBACf,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,MAAM;qBACd;oBACD,QAAQ,EAAE,IAAI;iBACf;gBACD,OAAO,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC;gBACxE;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;oBACjC,MAAM,EAAE;wBACN,QAAQ,EAAE,KAAK;wBACf,KAAK,EAAE,MAAM;wBACb,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;4BACnD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;wBACxD,CAAC;qBACF;oBACD,QAAQ,EAAE,KAAK;oBACf,KAAK,EAAE,GAAG;iBACX;gBACD,MAAM,OAAO,CAAC,gCAAgC,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC;aAC/G;SACF,CAAA;QAED,IAAI,KAAK,CAAC,iBAAiB,EAAE;YAC3B,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAA;SAChC;IACH,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,IAAI,CAAA;;;;oBAIK,IAAI,CAAC,UAAU;kBACjB,MAAM;;0BAEE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;;;;+CAIT,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;0CACnC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC;;;;WAI/D,CAAA;IACT,CAAC;IAED;;;;OAIG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;IACnD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc;QAClB,IAAI,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;QACpE,IAAI,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAChC,IAAI,YAAY,GAAG;;;;;;;KAOlB,CAAA;QACD,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,CAAA;QAC5F,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAA;QAC3B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;QACzB,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAAA;IACnD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,CAAC;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAA;QACnC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YACnC,MAAM,CAAC,eAAe,CAAC,YAAY,EAAE,uBAAuB,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAA;SACxF;aAAM;YACL,IAAI,IAAI,CAAC,cAAc,EAAE;gBACvB,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;gBAClD,IAAI,GAAG,CAAC,OAAO,EAAE;oBACf,OAAO,CAAC,IAAI,EAAE,CAAA;iBACf;aACF;SACF;IACH,CAAC;CACF;AAED,cAAc,CAAC,MAAM,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAA","sourcesContent":["import '@material/web/icon/icon.js'\n\nimport { css, html, LitElement } from 'lit'\n\nimport { i18next, localize } from '@operato/i18n'\nimport { ScrollbarStyles, CommonGristStyles, ButtonContainerStyles } from '@operato/styles'\n\nimport { TermsUtil } from './../../utils/terms-util'\nimport { UiUtil } from '../../utils/ui-util'\nimport { MetaApi } from '../../utils/meta-api'\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Shortstop <shortstop@hatiolab.com>\n * @description 메인 메뉴 선택 화면\n */\nexport class MainMenuSelector extends localize(i18next)(LitElement) {\n /**\n * @description 스타일 정의\n ***********************************\n * @returns {Object} 화면의 스타일 정의\n */\n static get styles() {\n let styles = [\n ScrollbarStyles,\n CommonGristStyles,\n ButtonContainerStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n overflow-x: auto;\n }\n\n .container {\n flex: 1;\n display: grid;\n overflow: hidden;\n }\n\n .container_detail {\n background-color: var(--main-section-background-color);\n display: flex;\n flex-direction: column;\n flex: 1;\n overflow-y: auto;\n }\n\n h2 {\n padding: var(--subtitle-padding);\n font: var(--subtitle-font);\n color: var(--subtitle-text-color);\n border-bottom: var(--subtitle-border-bottom);\n }\n\n .container_detail h2 {\n margin: var(--grist-title-margin);\n border: var(--grist-title-border);\n font: var(--grist-title-font);\n color: var(--secondary-color);\n }\n\n .container_detail h2 md-icon {\n --md-icon-size: var(--grist-title-icon-size);\n vertical-align: middle;\n margin: var(--grist-title-icon-margin);\n color: var(--grist-title-icon-color);\n }\n\n h2 {\n padding-bottom: var(--grist-title-with-grid-padding);\n }\n\n ox-grist {\n overflow-y: auto;\n flex: 1;\n }\n\n ox-filters-form {\n flex: 1;\n }\n `\n ]\n return styles\n }\n\n /**\n * @description 프로퍼티 정의\n ***********************************\n * @returns {Object} 화면의 프로퍼티 정의\n */\n static get properties() {\n return {\n /**\n * @description 메인 메뉴 리스트\n ****************************\n * @type {Array}\n */\n items: {\n type: Array\n },\n\n /**\n * @description 총 메인 메뉴 건수\n ******************************\n * @type {Number}\n */\n total: {\n type: Number\n },\n\n /**\n * @description 메인 메뉴 선택 이후 콜백 함수\n ***************************************\n * @type {Function}\n */\n selectCallback: {\n type: Function\n }\n }\n }\n\n /**\n * @description 라이트 사이클\n ***************************\n */\n async connectedCallback() {\n // 메뉴 그룹 그리드 설정\n this.gridConfig = {\n rows: MetaApi.getGristSelectableConfig(false),\n pagination: { pages: [1000] },\n appendable: true,\n columns: [\n ...MetaApi.getGristGuttersConfig(true, false),\n {\n name: 'rank',\n header: TermsUtil.tLabel('rank'),\n width: 80,\n record: {\n editable: false,\n format: '#,###',\n align: 'left'\n },\n sortable: true\n },\n MetaApi.getGristColumnConfig('string', 'name', 'left', true, false, 300),\n {\n type: 'string',\n name: 'title',\n header: TermsUtil.tLabel('title'),\n record: {\n editable: false,\n align: 'left',\n renderer: (value, column, record, rowIndex, field) => {\n return record.name ? TermsUtil.tMenu(record.name) : ''\n }\n },\n sortable: false,\n width: 350\n },\n await MetaApi.getGristCodeSelectorColumnConfig('menuType', 'menu_type', 'left', false, 100, true, 'MENU_TYPE')\n ]\n }\n\n if (super.connectedCallback) {\n await super.connectedCallback()\n }\n }\n\n /**\n * @description 라이프 사이클\n ***************************\n */\n render() {\n return html` <div id=\"container\" class=\"container\">\n <div class=\"container_detail\">\n <ox-grist\n id=\"ox-grist\"\n .config=${this.gridConfig}\n .mode=${'GRID'}\n auto-fetch\n .fetchHandler=${this.fetchMainMenus.bind(this)}\n >\n </ox-grist>\n <div class=\"button-container\">\n <button hidden id=\"receive\" @click=${this.selectMainMenu.bind(this)}>\n <md-icon>menu_open</md-icon>${TermsUtil.tButton('create-menu')}\n </button>\n </div>\n </div>\n </div>`\n }\n\n /**\n * @description 그리드 리턴\n **************************\n * @returns {Object} 그리드\n */\n get grist() {\n return this.shadowRoot.querySelector('#ox-grist')\n }\n\n /**\n * @description 메인 메뉴 조회\n ***************************\n * @returns\n */\n async fetchMainMenus() {\n let filters = [{ name: 'parentId', operator: 'is_null', value: '' }]\n let sorters = [{ name: 'rank' }]\n let selectFields = `\n id\n name\n rank\n description\n menuType\n category\n `\n let result = await MetaApi.searchByPagination('menus', filters, sorters, 0, 0, selectFields)\n this.items = result.records\n this.total = result.total\n return { total: this.total, records: this.items }\n }\n\n /**\n * @description 메인 메뉴 선택 시 액션 - 콜백 함수 호출\n ************************************************\n */\n async selectMainMenu(e) {\n const records = this.grist.selected\n if (!records || records.length == 0) {\n UiUtil.showCustomAlert('title.info', 'text.NOTHING_SELECTED', 'info', 'button.confirm')\n } else {\n if (this.selectCallback) {\n let res = await this.selectCallback(records[0].id)\n if (res.success) {\n history.back()\n }\n }\n }\n }\n}\n\ncustomElements.define('main-menu-selector', MainMenuSelector)\n"]}
@@ -4,7 +4,7 @@
4
4
  * @author Yang
5
5
  * @description 변경 이력 (COPY) 타입 조회 팝업
6
6
  */
7
- export class HistoryCopyListPopup {
7
+ export class HistoryCopyListPopup extends LitElement {
8
8
  /**
9
9
  * @description 스타일 정의
10
10
  ***********************************
@@ -47,3 +47,4 @@ export class HistoryCopyListPopup {
47
47
  filters?: any[] | undefined;
48
48
  }): Promise<FetchResult>;
49
49
  }
50
+ import { LitElement } from "lit-element/lit-element";
@@ -1,5 +1,5 @@
1
1
  import { css, html, LitElement } from 'lit';
2
- import { i18next, localize } from '@things-factory/i18n-base';
2
+ import { i18next, localize } from '@operato/i18n';
3
3
  import { ScrollbarStyles, CommonGristStyles } from '@operato/styles';
4
4
  import { MetaApi } from '../../utils/meta-api';
5
5
  /**
@@ -87,7 +87,16 @@ export class HistoryCopyListPopup extends localize(i18next)(LitElement) {
87
87
  ***************************
88
88
  */
89
89
  render() {
90
- return html ` <ox-grist id="ox-grist" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}> </ox-grist> `;
90
+ return html `
91
+ <ox-grist
92
+ id="ox-grist"
93
+ .config=${this.gridConfig}
94
+ .mode=${'GRID'}
95
+ auto-fetch
96
+ .fetchHandler=${this.fetchHandler.bind(this)}
97
+ >
98
+ </ox-grist>
99
+ `;
91
100
  }
92
101
  /**
93
102
  * @description 그리드 리턴
@@ -1 +1 @@
1
- {"version":3,"file":"history-copy-list-popup.js","sourceRoot":"","sources":["../../../client/pages/history/history-copy-list-popup.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAE3C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAEpE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAE9C;;;;;GAKG;AACH,MAAM,OAAO,oBAAqB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IACrE;;;;OAIG;IACH,MAAM,KAAK,MAAM;QACf,IAAI,MAAM,GAAG;YACX,eAAe;YACf,iBAAiB;YACjB,GAAG,CAAA;;;;;;;;;;;;;;;OAeF;SACF,CAAA;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;OAIG;IACH,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,SAAS,EAAE,MAAM;SAClB,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB;QACrB,eAAe;QACf,IAAI,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAA;QACnD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAA;QAEtC,OAAO,iBAAiB,CAAC,IAAI,CAAA;QAC7B,OAAO,iBAAiB,CAAC,IAAI,CAAA;QAE7B,iBAAiB,CAAC,IAAI,GAAG;YACvB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,KAAK;SAClB,CAAA;QAED,iBAAiB,CAAC,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QAEpE,IAAI,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,QAAQ,IAAI,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAA;QACnG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACvB,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO,CAAC,CAAC,MAAM,CAAA;YAC7B,IAAI,CAAC,CAAC,CAAC,MAAM;gBAAE,CAAC,CAAC,MAAM,GAAG,EAAE,CAAA;YAE5B,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAA;YAClB,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAA;QAC3B,CAAC,CAAC,CAAA;QAEF,iBAAiB,CAAC,OAAO,GAAG;YAC1B,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE;YACvC,OAAO,CAAC,qBAAqB,CAAC,SAAS,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;YACzG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;YACjH,GAAG,YAAY;SAChB,CAAA;QAED,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAA;QAEnC,IAAI,KAAK,CAAC,iBAAiB,EAAE;YAC3B,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAA;SAChC;IACH,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,IAAI,CAAA,oCAAoC,IAAI,CAAC,UAAU,UAAU,MAAM,6BAA6B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAA;IACzJ,CAAC;IAED;;;;OAIG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;IACnD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,QAAQ,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE;QACrE,IAAI,MAAM,GAAG,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,CAAA;QAExF,IAAI,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAEpE,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,OAAO,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;QACtH,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,cAAc,CAAC,MAAM,CAAC,yBAAyB,EAAE,oBAAoB,CAAC,CAAA","sourcesContent":["import { css, html, LitElement } from 'lit'\n\nimport { i18next, localize } from '@things-factory/i18n-base'\nimport { ScrollbarStyles, CommonGristStyles } from '@operato/styles'\n\nimport { MetaApi } from '../../utils/meta-api'\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Yang\n * @description 변경 이력 (COPY) 타입 조회 팝업\n */\nexport class HistoryCopyListPopup extends localize(i18next)(LitElement) {\n /**\n * @description 스타일 정의\n ***********************************\n * @returns {Object} 화면의 스타일 정의\n */\n static get styles() {\n let styles = [\n ScrollbarStyles,\n CommonGristStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n overflow-x: auto;\n }\n\n ox-grist {\n overflow-y: auto;\n flex: 1;\n }\n\n ox-filters-form {\n flex: 1;\n }\n `\n ]\n return styles\n }\n\n /**\n * @description 프로퍼티 정의\n ***********************************\n * @returns {Object} 화면의 프로퍼티 정의\n */\n static get properties() {\n return {\n parent_id: String\n }\n }\n\n /**\n * @description 라이트 사이클\n ***************************\n */\n async connectedCallback() {\n // 메뉴 그룹 그리드 설정\n let parentGristConfig = this.open_param.gristConfig\n this.gqlFunc = this.open_param.gqlFunc\n\n delete parentGristConfig.list\n delete parentGristConfig.rows\n\n parentGristConfig.rows = {\n appendable: false,\n selectable: false\n }\n\n parentGristConfig.sorters = [{ name: 'dataRevisionNo', desc: true }]\n\n let gristColumns = parentGristConfig.columns.filter(x => x.type != 'gutter' && x.unusable !== true)\n gristColumns.forEach(x => {\n if (x.filter) delete x.filter\n if (!x.record) x.record = {}\n\n x.sortable = false\n x.record.editable = false\n })\n\n parentGristConfig.columns = [\n { type: 'gutter', gutterName: 'dirty' },\n MetaApi.getGristColumnConfig2('integer', 'dataRevisionNo', 'data_revision_no', 'center', false, true, 90),\n MetaApi.getGristColumnConfig2('string', 'dataRevisionAction', 'data_revision_action', 'center', false, false, 90),\n ...gristColumns\n ]\n\n this.gridConfig = parentGristConfig\n\n if (super.connectedCallback) {\n await super.connectedCallback()\n }\n }\n\n /**\n * @description 라이프 사이클\n ***************************\n */\n render() {\n return html` <ox-grist id=\"ox-grist\" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}> </ox-grist> `\n }\n\n /**\n * @description 그리드 리턴\n **************************\n * @returns {Object} 그리드\n */\n get grist() {\n return this.shadowRoot.querySelector('#ox-grist')\n }\n\n /**\n * @description 이력 조회\n ***************************\n * @returns\n */\n async fetchHandler({ page = 0, limit = 0, sortings = [], filters = [] }) {\n let filter = [{ name: 'originalId', operator: 'eq', value: this.parent_id }, ...filters]\n\n let selectFields = MetaApi.getSelectColumns(this.gridConfig.columns)\n\n let result = await MetaApi.searchByPagination(`${this.gqlFunc}Histories`, filter, sortings, page, limit, selectFields)\n return result\n }\n}\n\ncustomElements.define('history-copy-list-popup', HistoryCopyListPopup)\n"]}
1
+ {"version":3,"file":"history-copy-list-popup.js","sourceRoot":"","sources":["../../../client/pages/history/history-copy-list-popup.js"],"names":[],"mappings":"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","sourcesContent":["import { css, html, LitElement } from 'lit'\n\nimport { i18next, localize } from '@operato/i18n'\nimport { ScrollbarStyles, CommonGristStyles } from '@operato/styles'\n\nimport { MetaApi } from '../../utils/meta-api'\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Yang\n * @description 변경 이력 (COPY) 타입 조회 팝업\n */\nexport class HistoryCopyListPopup extends localize(i18next)(LitElement) {\n /**\n * @description 스타일 정의\n ***********************************\n * @returns {Object} 화면의 스타일 정의\n */\n static get styles() {\n let styles = [\n ScrollbarStyles,\n CommonGristStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n overflow-x: auto;\n }\n\n ox-grist {\n overflow-y: auto;\n flex: 1;\n }\n\n ox-filters-form {\n flex: 1;\n }\n `\n ]\n return styles\n }\n\n /**\n * @description 프로퍼티 정의\n ***********************************\n * @returns {Object} 화면의 프로퍼티 정의\n */\n static get properties() {\n return {\n parent_id: String\n }\n }\n\n /**\n * @description 라이트 사이클\n ***************************\n */\n async connectedCallback() {\n // 메뉴 그룹 그리드 설정\n let parentGristConfig = this.open_param.gristConfig\n this.gqlFunc = this.open_param.gqlFunc\n\n delete parentGristConfig.list\n delete parentGristConfig.rows\n\n parentGristConfig.rows = {\n appendable: false,\n selectable: false\n }\n\n parentGristConfig.sorters = [{ name: 'dataRevisionNo', desc: true }]\n\n let gristColumns = parentGristConfig.columns.filter(x => x.type != 'gutter' && x.unusable !== true)\n gristColumns.forEach(x => {\n if (x.filter) delete x.filter\n if (!x.record) x.record = {}\n\n x.sortable = false\n x.record.editable = false\n })\n\n parentGristConfig.columns = [\n { type: 'gutter', gutterName: 'dirty' },\n MetaApi.getGristColumnConfig2('integer', 'dataRevisionNo', 'data_revision_no', 'center', false, true, 90),\n MetaApi.getGristColumnConfig2('string', 'dataRevisionAction', 'data_revision_action', 'center', false, false, 90),\n ...gristColumns\n ]\n\n this.gridConfig = parentGristConfig\n\n if (super.connectedCallback) {\n await super.connectedCallback()\n }\n }\n\n /**\n * @description 라이프 사이클\n ***************************\n */\n render() {\n return html`\n <ox-grist\n id=\"ox-grist\"\n .config=${this.gridConfig}\n .mode=${'GRID'}\n auto-fetch\n .fetchHandler=${this.fetchHandler.bind(this)}\n >\n </ox-grist>\n `\n }\n\n /**\n * @description 그리드 리턴\n **************************\n * @returns {Object} 그리드\n */\n get grist() {\n return this.shadowRoot.querySelector('#ox-grist')\n }\n\n /**\n * @description 이력 조회\n ***************************\n * @returns\n */\n async fetchHandler({ page = 0, limit = 0, sortings = [], filters = [] }) {\n let filter = [{ name: 'originalId', operator: 'eq', value: this.parent_id }, ...filters]\n\n let selectFields = MetaApi.getSelectColumns(this.gridConfig.columns)\n\n let result = await MetaApi.searchByPagination(\n `${this.gqlFunc}Histories`,\n filter,\n sortings,\n page,\n limit,\n selectFields\n )\n return result\n }\n}\n\ncustomElements.define('history-copy-list-popup', HistoryCopyListPopup)\n"]}
@@ -4,7 +4,7 @@
4
4
  * @author Yang
5
5
  * @description 변경 이력 (JSON) 타입 조회 팝업
6
6
  */
7
- export class HistoryJsonListPopup {
7
+ export class HistoryJsonListPopup extends LitElement {
8
8
  /**
9
9
  * @description 스타일 정의
10
10
  ***********************************
@@ -47,3 +47,4 @@ export class HistoryJsonListPopup {
47
47
  filters?: any[] | undefined;
48
48
  }): Promise<FetchResult>;
49
49
  }
50
+ import { LitElement } from "lit-element/lit-element";
@@ -1,5 +1,5 @@
1
1
  import { css, html, LitElement } from 'lit';
2
- import { i18next, localize } from '@things-factory/i18n-base';
2
+ import { i18next, localize } from '@operato/i18n';
3
3
  import { ScrollbarStyles, CommonGristStyles } from '@operato/styles';
4
4
  import { TermsUtil } from './../../utils/terms-util';
5
5
  import { UiUtil } from '../../utils/ui-util';
@@ -88,7 +88,16 @@ export class HistoryJsonListPopup extends localize(i18next)(LitElement) {
88
88
  ***************************
89
89
  */
90
90
  render() {
91
- return html ` <ox-grist id="ox-grist" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}> </ox-grist> `;
91
+ return html `
92
+ <ox-grist
93
+ id="ox-grist"
94
+ .config=${this.gridConfig}
95
+ .mode=${'GRID'}
96
+ auto-fetch
97
+ .fetchHandler=${this.fetchHandler.bind(this)}
98
+ >
99
+ </ox-grist>
100
+ `;
92
101
  }
93
102
  /**
94
103
  * @description 그리드 리턴
@@ -1 +1 @@
1
- {"version":3,"file":"history-json-list-popup.js","sourceRoot":"","sources":["../../../client/pages/history/history-json-list-popup.js"],"names":[],"mappings":"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","sourcesContent":["import { css, html, LitElement } from 'lit'\n\nimport { i18next, localize } from '@things-factory/i18n-base'\nimport { ScrollbarStyles, CommonGristStyles } from '@operato/styles'\n\nimport { TermsUtil } from './../../utils/terms-util'\nimport { UiUtil } from '../../utils/ui-util'\nimport { MetaApi } from '../../utils/meta-api'\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Yang\n * @description 변경 이력 (JSON) 타입 조회 팝업\n */\nexport class HistoryJsonListPopup extends localize(i18next)(LitElement) {\n /**\n * @description 스타일 정의\n ***********************************\n * @returns {Object} 화면의 스타일 정의\n */\n static get styles() {\n let styles = [\n ScrollbarStyles,\n CommonGristStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n overflow-x: auto;\n }\n ox-grist {\n overflow-y: auto;\n flex: 1;\n }\n\n ox-filters-form {\n flex: 1;\n }\n `\n ]\n return styles\n }\n\n /**\n * @description 프로퍼티 정의\n ***********************************\n * @returns {Object} 화면의 프로퍼티 정의\n */\n static get properties() {\n return {\n parent_id: String\n }\n }\n\n /**\n * @description 라이트 사이클\n ***************************\n */\n async connectedCallback() {\n // 메뉴 그룹 그리드 설정\n let parentGristConfig = this.open_param.gristConfig\n this.gqlFunc = this.open_param.gqlFunc\n\n delete parentGristConfig.list\n delete parentGristConfig.rows\n\n parentGristConfig.rows = {\n appendable: false,\n selectable: false\n }\n\n parentGristConfig.sorters = [{ name: 'dataRevisionNo', desc: true }]\n\n let gristColumns = parentGristConfig.columns.filter(x => x.type != 'gutter' && x.unusable !== true)\n gristColumns.forEach(x => {\n if (x.filter) delete x.filter\n if (!x.record) x.record = {}\n\n x.sortable = false\n x.record.editable = false\n })\n\n parentGristConfig.columns = [\n { type: 'gutter', gutterName: 'dirty' },\n MetaApi.getGristColumnConfig2('integer', 'dataRevisionNo', 'data_revision_no', 'center', false, true, 90),\n MetaApi.getGristColumnConfig2('string', 'dataRevisionAction', 'data_revision_action', 'center', false, false, 90),\n ...gristColumns\n ]\n\n this.gridConfig = parentGristConfig\n\n if (super.connectedCallback) {\n await super.connectedCallback()\n }\n }\n\n /**\n * @description 라이프 사이클\n ***************************\n */\n render() {\n return html` <ox-grist id=\"ox-grist\" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}> </ox-grist> `\n }\n\n /**\n * @description 그리드 리턴\n **************************\n * @returns {Object} 그리드\n */\n get grist() {\n return this.shadowRoot.querySelector('#ox-grist')\n }\n\n /**\n * @description 이력 조회\n ***************************\n * @returns\n */\n async fetchHandler({ page = 0, limit = 0, sortings = [], filters = [] }) {\n let filter = [{ name: 'originalId', operator: 'eq', value: this.parent_id }, ...filters]\n\n let selectFields = `\n id\n originalId\n dataRevisionNo\n dataRevisionAction\n historyJson\n `\n\n let result = await MetaApi.searchByPagination(`${this.gqlFunc}Histories`, filter, sortings, page, limit, selectFields)\n\n result.records = result.records.map(x => {\n return {\n ...JSON.parse(x.historyJson),\n ...x\n }\n })\n return result\n }\n}\n\ncustomElements.define('history-json-list-popup', HistoryJsonListPopup)\n"]}
1
+ {"version":3,"file":"history-json-list-popup.js","sourceRoot":"","sources":["../../../client/pages/history/history-json-list-popup.js"],"names":[],"mappings":"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","sourcesContent":["import { css, html, LitElement } from 'lit'\n\nimport { i18next, localize } from '@operato/i18n'\nimport { ScrollbarStyles, CommonGristStyles } from '@operato/styles'\n\nimport { TermsUtil } from './../../utils/terms-util'\nimport { UiUtil } from '../../utils/ui-util'\nimport { MetaApi } from '../../utils/meta-api'\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Yang\n * @description 변경 이력 (JSON) 타입 조회 팝업\n */\nexport class HistoryJsonListPopup extends localize(i18next)(LitElement) {\n /**\n * @description 스타일 정의\n ***********************************\n * @returns {Object} 화면의 스타일 정의\n */\n static get styles() {\n let styles = [\n ScrollbarStyles,\n CommonGristStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n overflow-x: auto;\n }\n ox-grist {\n overflow-y: auto;\n flex: 1;\n }\n\n ox-filters-form {\n flex: 1;\n }\n `\n ]\n return styles\n }\n\n /**\n * @description 프로퍼티 정의\n ***********************************\n * @returns {Object} 화면의 프로퍼티 정의\n */\n static get properties() {\n return {\n parent_id: String\n }\n }\n\n /**\n * @description 라이트 사이클\n ***************************\n */\n async connectedCallback() {\n // 메뉴 그룹 그리드 설정\n let parentGristConfig = this.open_param.gristConfig\n this.gqlFunc = this.open_param.gqlFunc\n\n delete parentGristConfig.list\n delete parentGristConfig.rows\n\n parentGristConfig.rows = {\n appendable: false,\n selectable: false\n }\n\n parentGristConfig.sorters = [{ name: 'dataRevisionNo', desc: true }]\n\n let gristColumns = parentGristConfig.columns.filter(x => x.type != 'gutter' && x.unusable !== true)\n gristColumns.forEach(x => {\n if (x.filter) delete x.filter\n if (!x.record) x.record = {}\n\n x.sortable = false\n x.record.editable = false\n })\n\n parentGristConfig.columns = [\n { type: 'gutter', gutterName: 'dirty' },\n MetaApi.getGristColumnConfig2('integer', 'dataRevisionNo', 'data_revision_no', 'center', false, true, 90),\n MetaApi.getGristColumnConfig2('string', 'dataRevisionAction', 'data_revision_action', 'center', false, false, 90),\n ...gristColumns\n ]\n\n this.gridConfig = parentGristConfig\n\n if (super.connectedCallback) {\n await super.connectedCallback()\n }\n }\n\n /**\n * @description 라이프 사이클\n ***************************\n */\n render() {\n return html`\n <ox-grist\n id=\"ox-grist\"\n .config=${this.gridConfig}\n .mode=${'GRID'}\n auto-fetch\n .fetchHandler=${this.fetchHandler.bind(this)}\n >\n </ox-grist>\n `\n }\n\n /**\n * @description 그리드 리턴\n **************************\n * @returns {Object} 그리드\n */\n get grist() {\n return this.shadowRoot.querySelector('#ox-grist')\n }\n\n /**\n * @description 이력 조회\n ***************************\n * @returns\n */\n async fetchHandler({ page = 0, limit = 0, sortings = [], filters = [] }) {\n let filter = [{ name: 'originalId', operator: 'eq', value: this.parent_id }, ...filters]\n\n let selectFields = `\n id\n originalId\n dataRevisionNo\n dataRevisionAction\n historyJson\n `\n\n let result = await MetaApi.searchByPagination(\n `${this.gqlFunc}Histories`,\n filter,\n sortings,\n page,\n limit,\n selectFields\n )\n\n result.records = result.records.map(x => {\n return {\n ...JSON.parse(x.historyJson),\n ...x\n }\n })\n return result\n }\n}\n\ncustomElements.define('history-json-list-popup', HistoryJsonListPopup)\n"]}
@@ -4,7 +4,7 @@
4
4
  * @author Yang
5
5
  * @description
6
6
  */
7
- export class ExportMenuPopup {
7
+ export class ExportMenuPopup extends LitElement {
8
8
  /**
9
9
  * @description 스타일 정의
10
10
  ***********************************
@@ -52,3 +52,4 @@ export class ExportMenuPopup {
52
52
  getTerms(locale: any, category: any, name: any): Promise<any>;
53
53
  getI18t(locale: any, category: any, name: any): string | undefined;
54
54
  }
55
+ import { LitElement } from "lit-element/lit-element";
@@ -1,6 +1,6 @@
1
1
  import '@material/web/icon/icon.js';
2
2
  import { css, html, LitElement } from 'lit';
3
- import { i18next, localize } from '@things-factory/i18n-base';
3
+ import { i18next, localize } from '@operato/i18n';
4
4
  import { ScrollbarStyles, CommonGristStyles, ButtonContainerStyles } from '@operato/styles';
5
5
  import { TermsUtil } from './../../utils/terms-util';
6
6
  import { MetaUiUtil } from './../../utils/meta-ui-util';
@@ -102,7 +102,14 @@ export class ExportMenuPopup extends localize(i18next)(LitElement) {
102
102
  */
103
103
  render() {
104
104
  return html `
105
- <ox-grist id="ox-grist" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}> </ox-grist>
105
+ <ox-grist
106
+ id="ox-grist"
107
+ .config=${this.gridConfig}
108
+ .mode=${'GRID'}
109
+ auto-fetch
110
+ .fetchHandler=${this.fetchHandler.bind(this)}
111
+ >
112
+ </ox-grist>
106
113
  <div class="button-container">
107
114
  <button @click=${this.export.bind(this)}><md-icon>export_notes</md-icon>${TermsUtil.tButton('export')}</button>
108
115
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"export-menu-popup.js","sourceRoot":"","sources":["../../../client/pages/menu/export-menu-popup.js"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/icon/icon.js'\n\nimport { css, html, LitElement } from 'lit'\n\nimport { i18next, localize } from '@things-factory/i18n-base'\nimport { ScrollbarStyles, CommonGristStyles, ButtonContainerStyles } from '@operato/styles'\n\nimport { TermsUtil } from './../../utils/terms-util'\nimport { MetaUiUtil } from './../../utils/meta-ui-util'\nimport { MetaApi } from '../../utils/meta-api'\nimport { MetaCrypto } from '../../utils/meta-crypto'\n\nimport snakeCase from 'lodash-es/snakeCase'\nimport upperFirst from 'lodash-es/upperFirst'\nimport { singular } from 'pluralize'\n\nconst i18nextEn = i18next.getFixedT('en', null, null)\nconst i18nextKo = i18next.getFixedT('ko', null, null)\nconst colTypes = {\n 'character varying': 'VARCHAR',\n numeric: 'NUMERIC',\n boolean: 'BOOLEAN',\n uuid: 'VARCHAR',\n timestamp: 'TIMESTAMP',\n date: 'DATE',\n datetime: 'DATETIME',\n integer: 'INT'\n}\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Yang\n * @description\n */\nexport class ExportMenuPopup extends localize(i18next)(LitElement) {\n /**\n * @description 스타일 정의\n ***********************************\n * @returns {Object} 화면의 스타일 정의\n */\n static get styles() {\n return [\n ScrollbarStyles,\n CommonGristStyles,\n ButtonContainerStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n overflow-x: overlay;\n background-color: var(--main-section-background-color);\n }\n\n ox-grist {\n overflow-y: auto;\n flex: 1;\n }\n\n ox-filters-form {\n flex: 1;\n }\n `\n ]\n }\n\n /**\n * @description 라이트 사이클\n ***************************\n */\n async connectedCallback() {\n this.gridConfig = {\n rows: MetaApi.getGristSelectableConfig(false),\n pagination: { infinite: true },\n columns: [\n MetaApi.getGristColumnConfig2('integer', 'seq', 'seq', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'column_ko', 'column_display_ko', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'column_en', 'column_display_en', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'group_cd', 'screen_group_cd', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'group_nm_en', 'screen_group_display_en', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'group_nm_ko', 'screen_group_display_ko', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'group_type', 'screen_group_type', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'column_id', 'column_id', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'search_field', 'is_search_field', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'entity_ref', 'entity_object_reference_field', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'entity_code_ref', 'entity_code_reference_field', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'code_ref', 'code_reference_field', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'main_column', 'is_main_list_field', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'editable', 'is_editable', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'hidden', 'hidden', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'grid_align', 'grid_align', 'center', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'export_field', 'is_export_field', 'center', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'grid_width', 'field_width', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'column_type', 'column_type', 'center', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'column_length', 'column_size', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'column_not_null', 'is_not_null', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'default_value', 'default_value', 'left', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'index', 'table_index', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'unique', 'is_unique', 'center', false, false, 100)\n ]\n }\n\n if (super.connectedCallback) {\n await super.connectedCallback()\n }\n }\n\n /**\n * @description 라이프 사이클\n ***************************\n */\n render() {\n return html`\n <ox-grist id=\"ox-grist\" .config=${this.gridConfig} .mode=${'GRID'} auto-fetch .fetchHandler=${this.fetchHandler.bind(this)}> </ox-grist>\n <div class=\"button-container\">\n <button @click=${this.export.bind(this)}><md-icon>export_notes</md-icon>${TermsUtil.tButton('export')}</button>\n </div>\n `\n }\n\n /**\n * @description 그리드 리턴\n **************************\n * @returns {Object} 그리드\n */\n get grist() {\n return this.shadowRoot.querySelector('#ox-grist')\n }\n\n async export() {\n let exportTitle = TermsUtil.tTitle(this.recordName)\n return await MetaApi.exportableData(true, exportTitle, this.grist)\n }\n\n /**\n * @description 이력 조회\n ***************************\n * @returns\n */\n async fetchHandler({ page = 0, limit = 0, sortings = [], filters = [] }) {\n let selectFields = `\n id\n menu{\n id\n name\n routing\n template\n }\n entity {\n id\n bundle\n name\n tableName\n dataProp\n delStrategy\n description\n }\n entityColumns{\n id\n name\n rank\n description\n term\n colType\n colSize\n nullable\n uniqRank\n searchRank\n searchOper\n gridRank\n gridWidth\n gridEditor\n refType\n refName\n refUrl\n defVal\n },\n indices{\n name\n isUnique\n columns\n }\n columns{\n name\n isNullable\n length\n type\n default\n }\n parentMenu{\n id\n name\n }\n `\n\n let res = await MetaApi.findOne('exportMenuInfo', this.recordId, selectFields)\n\n // table 컬럼 정보\n let records = res.columns\n .filter(column => ['id', 'data_revision_no', 'deleted_at'].includes(column.name) === false)\n .map(column => {\n let record = {\n column_id: column.name,\n column_type: column.type,\n column_length: column.length,\n column_not_null: column.isNullable === true ? '' : 'O',\n default_value: column.default\n }\n\n let entityIdx = res.entityColumns.findIndex(col => col.name == column.name)\n if (entityIdx > -1) {\n record.rank = res.entityColumns[entityIdx].rank\n }\n\n return record\n })\n let total = records.length\n\n // entity Column 기반 정렬\n records = records.sort((a, b) => a.rank - b.rank)\n\n // index\n for (let idx = 0; idx < res.indices.length; idx++) {\n records[idx].unique = res.indices[idx].isUnique === true ? 'O' : ''\n records[idx].index = res.indices[idx].columns.filter(x => x != 'deleted_at').join(',')\n }\n\n let mainMenu = JSON.parse(MetaCrypto.dec(res.menu.template))\n\n // 메인 메뉴 컬럼 정보\n mainMenu.grid_column.forEach(x => {\n let mainColName = snakeCase(x.name)\n\n if (['object', 'meta-object-selector', 'resource-object'].includes(x.type)) {\n mainColName = mainColName + '_id'\n }\n\n let recIdx = records.findIndex(rec => rec.column_id == mainColName)\n\n if (recIdx > -1) {\n records[recIdx].main_column = 'O'\n records[recIdx].editable = x.editable === true ? 'O' : ''\n records[recIdx].hidden = x.hidden === true ? 'O' : ''\n records[recIdx].grid_align = x.align\n records[recIdx].export_field = x.exportable === true ? 'O' : ''\n records[recIdx].grid_width = x.width\n records[recIdx].entity_ref = ''\n records[recIdx].entity_code_ref = ''\n records[recIdx].code_ref = ''\n\n if (x.select_opt) {\n let opt = x.select_opt\n\n if (opt.type == 'code') {\n records[recIdx].code_ref = opt.name\n } else if (opt.type == 'entity') {\n records[recIdx].entity_code_ref = `${opt.name},${opt.args.codeField},${opt.args.dispField}`\n }\n } else if (x.object_opt) {\n let opt = x.object_opt\n\n if (opt.menu) {\n records[recIdx].entity_ref = `menu,${opt.menu}`\n } else {\n records[recIdx].entity_ref = `${upperFirst(singular(opt.queryName))},${opt.nameField}`\n\n if (opt.descriptionField && opt.descriptionField.length > 0) {\n records[recIdx].entity_ref += `,${opt.descriptionField}`\n }\n }\n }\n }\n })\n\n // 메인메뉴 검색 정보\n let searchFields = [...mainMenu.gql.query.filters, ...mainMenu.search]\n searchFields.forEach(x => {\n let searchName = snakeCase(x.name)\n\n let recIdx = records.findIndex(rec => rec.column_id == searchName)\n\n if (recIdx > -1) {\n records[recIdx].search_field = 'O'\n }\n })\n\n // tab etc\n let tabs = [...mainMenu.tab]\n if (mainMenu.etc.master_detail_element) {\n tabs.push(JSON.parse(mainMenu.etc.master_detail_element))\n }\n\n // tab 설정 검색 ....\n for (let tabIdx = 0; tabIdx < tabs.length; tabIdx++) {\n // name, tagname, menu(routing), display,\n\n let tab = tabs[tabIdx]\n let tabNmEn = await this.getTerms('en-US', ['label', 'field'], tab.display)\n let tabNmKo = await this.getTerms('ko-KR', ['label', 'field'], tab.display)\n\n let data = await MetaUiUtil.getMenuMetaData(tab.menu ? tab.menu : tab.routing)\n\n if (!data || !data.records || data.records.length == 0) {\n continue\n }\n\n let tabMenuConfig = JSON.parse(MetaCrypto.dec(data.records[0].template))\n\n for (let idx in tabMenuConfig.grid_column) {\n let x = tabMenuConfig.grid_column[idx]\n\n let colName = snakeCase(x.name)\n\n if (['object', 'meta-object-selector', 'resource-object'].includes(x.type)) {\n colName = colName + '_id'\n }\n\n let recIdx = records.findIndex(rec => rec.column_id == colName)\n\n if (recIdx > -1) {\n console.log(tab.tagName)\n records[recIdx].group_cd = tab.name\n records[recIdx].group_nm_en = tabNmEn\n records[recIdx].group_nm_ko = tabNmKo\n records[recIdx].group_type = tab.tagname == 'meta-form-element' ? 'Form' : 'Grist'\n\n records[recIdx].editable = x.editable === true ? 'O' : ''\n records[recIdx].hidden = x.hidden === true ? 'O' : ''\n records[recIdx].grid_align = x.align\n records[recIdx].export_field = x.exportable === true ? 'O' : ''\n records[recIdx].grid_width = x.width\n records[recIdx].entity_ref = ''\n records[recIdx].entity_code_ref = ''\n records[recIdx].code_ref = ''\n\n if (x.select_opt) {\n let opt = x.select_opt\n\n if (opt.type == 'code') {\n records[recIdx].code_ref = opt.name\n } else if (opt.type == 'entity') {\n records[recIdx].entity_code_ref = `${opt.name},${opt.args.codeField},${opt.args.dispField}`\n }\n } else if (x.object_opt) {\n let opt = x.object_opt\n if (opt.menu) {\n records[recIdx].entity_ref = `menu,${opt.menu}`\n } else {\n records[recIdx].entity_ref = `${upperFirst(singular(opt.queryName))},${opt.nameField}`\n\n if (opt.descriptionField && opt.descriptionField.length > 0) {\n records[recIdx].entity_ref += `,${opt.descriptionField}`\n }\n }\n }\n }\n }\n }\n\n // 최종 ~~\n for (let recIdx in records) {\n let x = records[recIdx]\n x.seq = Number(recIdx) + 1\n\n // 컬럼 명칭 termionologies 에 없으면 i18next 에서 찾는다 .\n x.column_ko = await this.getTerms('ko-KR', ['label', 'field'], x.column_id.endsWith('_id') ? x.column_id.substring(0, x.column_id.length - 3) : x.column_id)\n x.column_en = await this.getTerms('en-US', ['label', 'field'], x.column_id.endsWith('_id') ? x.column_id.substring(0, x.column_id.length - 3) : x.column_id)\n\n x.column_id = x.column_id.toUpperCase()\n x.column_type = colTypes[x.column_type]\n }\n\n return {\n records,\n total\n }\n }\n\n async getTerms(locale, category, name) {\n let filters = [\n { name: 'name', operator: 'eq', value: name },\n { name: 'locale', operator: 'eq', value: locale }\n ]\n\n if (Array.isArray(category)) {\n filters.push({ name: 'category', operator: 'in', value: category })\n } else {\n filters.push({ name: 'category', operator: 'eq', value: category })\n }\n\n let res = await MetaApi.searchByPagination('terminologies', filters, [], 0, 0, 'display')\n\n if (res.records.length > 0) {\n return res.records[0].display\n }\n\n if (Array.isArray(category)) {\n for (let catIdx in category) {\n let disp = this.getI18t(locale, category[catIdx], name)\n\n if (disp) {\n return disp\n }\n }\n } else {\n let disp = this.getI18t(locale, category, name)\n\n if (disp) {\n return disp\n }\n }\n\n return ''\n }\n\n getI18t(locale, category, name) {\n let tName = `${category}.${name}`\n let disp = ''\n\n if (locale == 'en-US') {\n disp = i18nextEn(tName)\n } else {\n disp = i18nextKo(tName)\n }\n\n if (disp == tName) {\n return undefined\n }\n\n return disp\n }\n}\n\ncustomElements.define('export-menu-popup', ExportMenuPopup)\n"]}
1
+ {"version":3,"file":"export-menu-popup.js","sourceRoot":"","sources":["../../../client/pages/menu/export-menu-popup.js"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,CAAA;AAEnC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAE3C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AAE3F,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,OAAO,SAAS,MAAM,qBAAqB,CAAA;AAC3C,OAAO,UAAU,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AACrD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AACrD,MAAM,QAAQ,GAAG;IACf,mBAAmB,EAAE,SAAS;IAC9B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,SAAS;IACf,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,KAAK;CACf,CAAA;AAED;;;;;GAKG;AACH,MAAM,OAAO,eAAgB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IAChE;;;;OAIG;IACH,MAAM,KAAK,MAAM;QACf,OAAO;YACL,eAAe;YACf,iBAAiB;YACjB,qBAAqB;YACrB,GAAG,CAAA;;;;;;;;;;;;;;;;OAgBF;SACF,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,UAAU,GAAG;YAChB,IAAI,EAAE,OAAO,CAAC,wBAAwB,CAAC,KAAK,CAAC;YAC7C,UAAU,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC9B,OAAO,EAAE;gBACP,OAAO,CAAC,qBAAqB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBAClF,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBACpG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBACpG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBACjG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBAC5G,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBAC5G,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBACrG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBAC5F,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,iBAAiB,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBACtG,OAAO,CAAC,qBAAqB,CAC3B,QAAQ,EACR,YAAY,EACZ,+BAA+B,EAC/B,MAAM,EACN,KAAK,EACL,KAAK,EACL,GAAG,CACJ;gBACD,OAAO,CAAC,qBAAqB,CAC3B,QAAQ,EACR,iBAAiB,EACjB,6BAA6B,EAC7B,MAAM,EACN,KAAK,EACL,KAAK,EACL,GAAG,CACJ;gBACD,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBACtG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,oBAAoB,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBACxG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC9F,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBACvF,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBAChG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,iBAAiB,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBACvG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBAChG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBAClG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBACnG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBACrG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBACnG,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;gBAC1F,OAAO,CAAC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;aAC5F;SACF,CAAA;QAED,IAAI,KAAK,CAAC,iBAAiB,EAAE;YAC3B,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAA;SAChC;IACH,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,IAAI,CAAA;;;kBAGG,IAAI,CAAC,UAAU;gBACjB,MAAM;;wBAEE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;;;;yBAI3B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,mCAAmC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC;;KAExG,CAAA;IACH,CAAC;IAED;;;;OAIG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACnD,OAAO,MAAM,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IACpE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,QAAQ,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,EAAE;QACrE,IAAI,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAqDlB,CAAA;QAED,IAAI,GAAG,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;QAE9E,cAAc;QACd,IAAI,OAAO,GAAG,GAAG,CAAC,OAAO;aACtB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC;aAC1F,GAAG,CAAC,MAAM,CAAC,EAAE;YACZ,IAAI,MAAM,GAAG;gBACX,SAAS,EAAE,MAAM,CAAC,IAAI;gBACtB,WAAW,EAAE,MAAM,CAAC,IAAI;gBACxB,aAAa,EAAE,MAAM,CAAC,MAAM;gBAC5B,eAAe,EAAE,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;gBACtD,aAAa,EAAE,MAAM,CAAC,OAAO;aAC9B,CAAA;YAED,IAAI,SAAS,GAAG,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,CAAA;YAC3E,IAAI,SAAS,GAAG,CAAC,CAAC,EAAE;gBAClB,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,IAAI,CAAA;aAChD;YAED,OAAO,MAAM,CAAA;QACf,CAAC,CAAC,CAAA;QACJ,IAAI,KAAK,GAAG,OAAO,CAAC,MAAM,CAAA;QAE1B,sBAAsB;QACtB,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;QAEjD,QAAQ;QACR,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;YACjD,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;YACnE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;SACvF;QAED,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;QAE5D,cAAc;QACd,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC/B,IAAI,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAEnC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;gBAC1E,WAAW,GAAG,WAAW,GAAG,KAAK,CAAA;aAClC;YAED,IAAI,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,IAAI,WAAW,CAAC,CAAA;YAEnE,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE;gBACf,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,GAAG,GAAG,CAAA;gBACjC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;gBACzD,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;gBACrD,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAA;gBACpC,OAAO,CAAC,MAAM,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;gBAC/D,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAA;gBACpC,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,EAAE,CAAA;gBAC/B,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,GAAG,EAAE,CAAA;gBACpC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAA;gBAE7B,IAAI,CAAC,CAAC,UAAU,EAAE;oBAChB,IAAI,GAAG,GAAG,CAAC,CAAC,UAAU,CAAA;oBAEtB,IAAI,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE;wBACtB,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAA;qBACpC;yBAAM,IAAI,GAAG,CAAC,IAAI,IAAI,QAAQ,EAAE;wBAC/B,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;qBAC5F;iBACF;qBAAM,IAAI,CAAC,CAAC,UAAU,EAAE;oBACvB,IAAI,GAAG,GAAG,CAAC,CAAC,UAAU,CAAA;oBAEtB,IAAI,GAAG,CAAC,IAAI,EAAE;wBACZ,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAA;qBAChD;yBAAM;wBACL,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAA;wBAEtF,IAAI,GAAG,CAAC,gBAAgB,IAAI,GAAG,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC3D,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,IAAI,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAA;yBACzD;qBACF;iBACF;aACF;QACH,CAAC,CAAC,CAAA;QAEF,aAAa;QACb,IAAI,YAAY,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACvB,IAAI,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAElC,IAAI,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,IAAI,UAAU,CAAC,CAAA;YAElE,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE;gBACf,OAAO,CAAC,MAAM,CAAC,CAAC,YAAY,GAAG,GAAG,CAAA;aACnC;QACH,CAAC,CAAC,CAAA;QAEF,UAAU;QACV,IAAI,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;QAC5B,IAAI,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE;YACtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAA;SAC1D;QAED,iBAAiB;QACjB,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;YACnD,yCAAyC;YAEzC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;YACtB,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;YAC3E,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;YAE3E,IAAI,IAAI,GAAG,MAAM,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YAE9E,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;gBACtD,SAAQ;aACT;YAED,IAAI,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;YAExE,KAAK,IAAI,GAAG,IAAI,aAAa,CAAC,WAAW,EAAE;gBACzC,IAAI,CAAC,GAAG,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;gBAEtC,IAAI,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;gBAE/B,IAAI,CAAC,QAAQ,EAAE,sBAAsB,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oBAC1E,OAAO,GAAG,OAAO,GAAG,KAAK,CAAA;iBAC1B;gBAED,IAAI,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC,CAAA;gBAE/D,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE;oBACf,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;oBACxB,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAA;oBACnC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,GAAG,OAAO,CAAA;oBACrC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,GAAG,OAAO,CAAA;oBACrC,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,OAAO,IAAI,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA;oBAElF,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;oBACzD,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;oBACrD,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAA;oBACpC,OAAO,CAAC,MAAM,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;oBAC/D,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAA;oBACpC,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,EAAE,CAAA;oBAC/B,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,GAAG,EAAE,CAAA;oBACpC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAA;oBAE7B,IAAI,CAAC,CAAC,UAAU,EAAE;wBAChB,IAAI,GAAG,GAAG,CAAC,CAAC,UAAU,CAAA;wBAEtB,IAAI,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE;4BACtB,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAA;yBACpC;6BAAM,IAAI,GAAG,CAAC,IAAI,IAAI,QAAQ,EAAE;4BAC/B,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;yBAC5F;qBACF;yBAAM,IAAI,CAAC,CAAC,UAAU,EAAE;wBACvB,IAAI,GAAG,GAAG,CAAC,CAAC,UAAU,CAAA;wBACtB,IAAI,GAAG,CAAC,IAAI,EAAE;4BACZ,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAA;yBAChD;6BAAM;4BACL,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAA;4BAEtF,IAAI,GAAG,CAAC,gBAAgB,IAAI,GAAG,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;gCAC3D,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,IAAI,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAA;6BACzD;yBACF;qBACF;iBACF;aACF;SACF;QAED,QAAQ;QACR,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE;YAC1B,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;YACvB,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAE1B,8CAA8C;YAC9C,CAAC,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAC/B,OAAO,EACP,CAAC,OAAO,EAAE,OAAO,CAAC,EAClB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAC7F,CAAA;YACD,CAAC,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAC/B,OAAO,EACP,CAAC,OAAO,EAAE,OAAO,CAAC,EAClB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAC7F,CAAA;YAED,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAA;YACvC,CAAC,CAAC,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;SACxC;QAED,OAAO;YACL,OAAO;YACP,KAAK;SACN,CAAA;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI;QACnC,IAAI,OAAO,GAAG;YACZ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;YAC7C,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE;SAClD,CAAA;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;SACpE;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;SACpE;QAED,IAAI,GAAG,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;QAEzF,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;SAC9B;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,KAAK,IAAI,MAAM,IAAI,QAAQ,EAAE;gBAC3B,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAA;gBAEvD,IAAI,IAAI,EAAE;oBACR,OAAO,IAAI,CAAA;iBACZ;aACF;SACF;aAAM;YACL,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;YAE/C,IAAI,IAAI,EAAE;gBACR,OAAO,IAAI,CAAA;aACZ;SACF;QAED,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI;QAC5B,IAAI,KAAK,GAAG,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAA;QACjC,IAAI,IAAI,GAAG,EAAE,CAAA;QAEb,IAAI,MAAM,IAAI,OAAO,EAAE;YACrB,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;SACxB;aAAM;YACL,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;SACxB;QAED,IAAI,IAAI,IAAI,KAAK,EAAE;YACjB,OAAO,SAAS,CAAA;SACjB;QAED,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAED,cAAc,CAAC,MAAM,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAA","sourcesContent":["import '@material/web/icon/icon.js'\n\nimport { css, html, LitElement } from 'lit'\n\nimport { i18next, localize } from '@operato/i18n'\nimport { ScrollbarStyles, CommonGristStyles, ButtonContainerStyles } from '@operato/styles'\n\nimport { TermsUtil } from './../../utils/terms-util'\nimport { MetaUiUtil } from './../../utils/meta-ui-util'\nimport { MetaApi } from '../../utils/meta-api'\nimport { MetaCrypto } from '../../utils/meta-crypto'\n\nimport snakeCase from 'lodash-es/snakeCase'\nimport upperFirst from 'lodash-es/upperFirst'\nimport { singular } from 'pluralize'\n\nconst i18nextEn = i18next.getFixedT('en', null, null)\nconst i18nextKo = i18next.getFixedT('ko', null, null)\nconst colTypes = {\n 'character varying': 'VARCHAR',\n numeric: 'NUMERIC',\n boolean: 'BOOLEAN',\n uuid: 'VARCHAR',\n timestamp: 'TIMESTAMP',\n date: 'DATE',\n datetime: 'DATETIME',\n integer: 'INT'\n}\n\n/**\n * @license\n * Copyright © HatioLab Inc. All rights reserved.\n * @author Yang\n * @description\n */\nexport class ExportMenuPopup extends localize(i18next)(LitElement) {\n /**\n * @description 스타일 정의\n ***********************************\n * @returns {Object} 화면의 스타일 정의\n */\n static get styles() {\n return [\n ScrollbarStyles,\n CommonGristStyles,\n ButtonContainerStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n overflow-x: overlay;\n background-color: var(--main-section-background-color);\n }\n\n ox-grist {\n overflow-y: auto;\n flex: 1;\n }\n\n ox-filters-form {\n flex: 1;\n }\n `\n ]\n }\n\n /**\n * @description 라이트 사이클\n ***************************\n */\n async connectedCallback() {\n this.gridConfig = {\n rows: MetaApi.getGristSelectableConfig(false),\n pagination: { infinite: true },\n columns: [\n MetaApi.getGristColumnConfig2('integer', 'seq', 'seq', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'column_ko', 'column_display_ko', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'column_en', 'column_display_en', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'group_cd', 'screen_group_cd', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'group_nm_en', 'screen_group_display_en', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'group_nm_ko', 'screen_group_display_ko', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'group_type', 'screen_group_type', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'column_id', 'column_id', 'left', false, false, 150),\n MetaApi.getGristColumnConfig2('string', 'search_field', 'is_search_field', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2(\n 'string',\n 'entity_ref',\n 'entity_object_reference_field',\n 'left',\n false,\n false,\n 100\n ),\n MetaApi.getGristColumnConfig2(\n 'string',\n 'entity_code_ref',\n 'entity_code_reference_field',\n 'left',\n false,\n false,\n 100\n ),\n MetaApi.getGristColumnConfig2('string', 'code_ref', 'code_reference_field', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'main_column', 'is_main_list_field', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'editable', 'is_editable', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'hidden', 'hidden', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'grid_align', 'grid_align', 'center', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'export_field', 'is_export_field', 'center', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'grid_width', 'field_width', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'column_type', 'column_type', 'center', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'column_length', 'column_size', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'column_not_null', 'is_not_null', 'center', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'default_value', 'default_value', 'left', false, false, 80),\n MetaApi.getGristColumnConfig2('string', 'index', 'table_index', 'left', false, false, 100),\n MetaApi.getGristColumnConfig2('string', 'unique', 'is_unique', 'center', false, false, 100)\n ]\n }\n\n if (super.connectedCallback) {\n await super.connectedCallback()\n }\n }\n\n /**\n * @description 라이프 사이클\n ***************************\n */\n render() {\n return html`\n <ox-grist\n id=\"ox-grist\"\n .config=${this.gridConfig}\n .mode=${'GRID'}\n auto-fetch\n .fetchHandler=${this.fetchHandler.bind(this)}\n >\n </ox-grist>\n <div class=\"button-container\">\n <button @click=${this.export.bind(this)}><md-icon>export_notes</md-icon>${TermsUtil.tButton('export')}</button>\n </div>\n `\n }\n\n /**\n * @description 그리드 리턴\n **************************\n * @returns {Object} 그리드\n */\n get grist() {\n return this.shadowRoot.querySelector('#ox-grist')\n }\n\n async export() {\n let exportTitle = TermsUtil.tTitle(this.recordName)\n return await MetaApi.exportableData(true, exportTitle, this.grist)\n }\n\n /**\n * @description 이력 조회\n ***************************\n * @returns\n */\n async fetchHandler({ page = 0, limit = 0, sortings = [], filters = [] }) {\n let selectFields = `\n id\n menu{\n id\n name\n routing\n template\n }\n entity {\n id\n bundle\n name\n tableName\n dataProp\n delStrategy\n description\n }\n entityColumns{\n id\n name\n rank\n description\n term\n colType\n colSize\n nullable\n uniqRank\n searchRank\n searchOper\n gridRank\n gridWidth\n gridEditor\n refType\n refName\n refUrl\n defVal\n },\n indices{\n name\n isUnique\n columns\n }\n columns{\n name\n isNullable\n length\n type\n default\n }\n parentMenu{\n id\n name\n }\n `\n\n let res = await MetaApi.findOne('exportMenuInfo', this.recordId, selectFields)\n\n // table 컬럼 정보\n let records = res.columns\n .filter(column => ['id', 'data_revision_no', 'deleted_at'].includes(column.name) === false)\n .map(column => {\n let record = {\n column_id: column.name,\n column_type: column.type,\n column_length: column.length,\n column_not_null: column.isNullable === true ? '' : 'O',\n default_value: column.default\n }\n\n let entityIdx = res.entityColumns.findIndex(col => col.name == column.name)\n if (entityIdx > -1) {\n record.rank = res.entityColumns[entityIdx].rank\n }\n\n return record\n })\n let total = records.length\n\n // entity Column 기반 정렬\n records = records.sort((a, b) => a.rank - b.rank)\n\n // index\n for (let idx = 0; idx < res.indices.length; idx++) {\n records[idx].unique = res.indices[idx].isUnique === true ? 'O' : ''\n records[idx].index = res.indices[idx].columns.filter(x => x != 'deleted_at').join(',')\n }\n\n let mainMenu = JSON.parse(MetaCrypto.dec(res.menu.template))\n\n // 메인 메뉴 컬럼 정보\n mainMenu.grid_column.forEach(x => {\n let mainColName = snakeCase(x.name)\n\n if (['object', 'meta-object-selector', 'resource-object'].includes(x.type)) {\n mainColName = mainColName + '_id'\n }\n\n let recIdx = records.findIndex(rec => rec.column_id == mainColName)\n\n if (recIdx > -1) {\n records[recIdx].main_column = 'O'\n records[recIdx].editable = x.editable === true ? 'O' : ''\n records[recIdx].hidden = x.hidden === true ? 'O' : ''\n records[recIdx].grid_align = x.align\n records[recIdx].export_field = x.exportable === true ? 'O' : ''\n records[recIdx].grid_width = x.width\n records[recIdx].entity_ref = ''\n records[recIdx].entity_code_ref = ''\n records[recIdx].code_ref = ''\n\n if (x.select_opt) {\n let opt = x.select_opt\n\n if (opt.type == 'code') {\n records[recIdx].code_ref = opt.name\n } else if (opt.type == 'entity') {\n records[recIdx].entity_code_ref = `${opt.name},${opt.args.codeField},${opt.args.dispField}`\n }\n } else if (x.object_opt) {\n let opt = x.object_opt\n\n if (opt.menu) {\n records[recIdx].entity_ref = `menu,${opt.menu}`\n } else {\n records[recIdx].entity_ref = `${upperFirst(singular(opt.queryName))},${opt.nameField}`\n\n if (opt.descriptionField && opt.descriptionField.length > 0) {\n records[recIdx].entity_ref += `,${opt.descriptionField}`\n }\n }\n }\n }\n })\n\n // 메인메뉴 검색 정보\n let searchFields = [...mainMenu.gql.query.filters, ...mainMenu.search]\n searchFields.forEach(x => {\n let searchName = snakeCase(x.name)\n\n let recIdx = records.findIndex(rec => rec.column_id == searchName)\n\n if (recIdx > -1) {\n records[recIdx].search_field = 'O'\n }\n })\n\n // tab etc\n let tabs = [...mainMenu.tab]\n if (mainMenu.etc.master_detail_element) {\n tabs.push(JSON.parse(mainMenu.etc.master_detail_element))\n }\n\n // tab 설정 검색 ....\n for (let tabIdx = 0; tabIdx < tabs.length; tabIdx++) {\n // name, tagname, menu(routing), display,\n\n let tab = tabs[tabIdx]\n let tabNmEn = await this.getTerms('en-US', ['label', 'field'], tab.display)\n let tabNmKo = await this.getTerms('ko-KR', ['label', 'field'], tab.display)\n\n let data = await MetaUiUtil.getMenuMetaData(tab.menu ? tab.menu : tab.routing)\n\n if (!data || !data.records || data.records.length == 0) {\n continue\n }\n\n let tabMenuConfig = JSON.parse(MetaCrypto.dec(data.records[0].template))\n\n for (let idx in tabMenuConfig.grid_column) {\n let x = tabMenuConfig.grid_column[idx]\n\n let colName = snakeCase(x.name)\n\n if (['object', 'meta-object-selector', 'resource-object'].includes(x.type)) {\n colName = colName + '_id'\n }\n\n let recIdx = records.findIndex(rec => rec.column_id == colName)\n\n if (recIdx > -1) {\n console.log(tab.tagName)\n records[recIdx].group_cd = tab.name\n records[recIdx].group_nm_en = tabNmEn\n records[recIdx].group_nm_ko = tabNmKo\n records[recIdx].group_type = tab.tagname == 'meta-form-element' ? 'Form' : 'Grist'\n\n records[recIdx].editable = x.editable === true ? 'O' : ''\n records[recIdx].hidden = x.hidden === true ? 'O' : ''\n records[recIdx].grid_align = x.align\n records[recIdx].export_field = x.exportable === true ? 'O' : ''\n records[recIdx].grid_width = x.width\n records[recIdx].entity_ref = ''\n records[recIdx].entity_code_ref = ''\n records[recIdx].code_ref = ''\n\n if (x.select_opt) {\n let opt = x.select_opt\n\n if (opt.type == 'code') {\n records[recIdx].code_ref = opt.name\n } else if (opt.type == 'entity') {\n records[recIdx].entity_code_ref = `${opt.name},${opt.args.codeField},${opt.args.dispField}`\n }\n } else if (x.object_opt) {\n let opt = x.object_opt\n if (opt.menu) {\n records[recIdx].entity_ref = `menu,${opt.menu}`\n } else {\n records[recIdx].entity_ref = `${upperFirst(singular(opt.queryName))},${opt.nameField}`\n\n if (opt.descriptionField && opt.descriptionField.length > 0) {\n records[recIdx].entity_ref += `,${opt.descriptionField}`\n }\n }\n }\n }\n }\n }\n\n // 최종 ~~\n for (let recIdx in records) {\n let x = records[recIdx]\n x.seq = Number(recIdx) + 1\n\n // 컬럼 명칭 termionologies 에 없으면 i18next 에서 찾는다 .\n x.column_ko = await this.getTerms(\n 'ko-KR',\n ['label', 'field'],\n x.column_id.endsWith('_id') ? x.column_id.substring(0, x.column_id.length - 3) : x.column_id\n )\n x.column_en = await this.getTerms(\n 'en-US',\n ['label', 'field'],\n x.column_id.endsWith('_id') ? x.column_id.substring(0, x.column_id.length - 3) : x.column_id\n )\n\n x.column_id = x.column_id.toUpperCase()\n x.column_type = colTypes[x.column_type]\n }\n\n return {\n records,\n total\n }\n }\n\n async getTerms(locale, category, name) {\n let filters = [\n { name: 'name', operator: 'eq', value: name },\n { name: 'locale', operator: 'eq', value: locale }\n ]\n\n if (Array.isArray(category)) {\n filters.push({ name: 'category', operator: 'in', value: category })\n } else {\n filters.push({ name: 'category', operator: 'eq', value: category })\n }\n\n let res = await MetaApi.searchByPagination('terminologies', filters, [], 0, 0, 'display')\n\n if (res.records.length > 0) {\n return res.records[0].display\n }\n\n if (Array.isArray(category)) {\n for (let catIdx in category) {\n let disp = this.getI18t(locale, category[catIdx], name)\n\n if (disp) {\n return disp\n }\n }\n } else {\n let disp = this.getI18t(locale, category, name)\n\n if (disp) {\n return disp\n }\n }\n\n return ''\n }\n\n getI18t(locale, category, name) {\n let tName = `${category}.${name}`\n let disp = ''\n\n if (locale == 'en-US') {\n disp = i18nextEn(tName)\n } else {\n disp = i18nextKo(tName)\n }\n\n if (disp == tName) {\n return undefined\n }\n\n return disp\n }\n}\n\ncustomElements.define('export-menu-popup', ExportMenuPopup)\n"]}