@things-factory/meta-ui 8.0.0-beta.9 → 8.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/client/bootstrap.ts +170 -0
  2. package/client/component/filter/filter-form-meta-code-select.ts +102 -0
  3. package/client/component/filter/filter-form-meta-object-select.ts +107 -0
  4. package/client/component/filter/filter-grist-meta-code-select.ts +97 -0
  5. package/client/component/filter/filter-grist-meta-object-select.ts +102 -0
  6. package/client/component/grist/editor/grist-editor-code-input.js +96 -0
  7. package/client/component/grist/editor/grist-editor-meta-code-selector.js +157 -0
  8. package/client/component/grist/editor/grist-editor-meta-object-selector.js +122 -0
  9. package/client/component/grist/renderer/grist-renderer-code-input.js +20 -0
  10. package/client/component/grist/renderer/grist-renderer-meta-code-selector.js +28 -0
  11. package/client/component/grist/renderer/grist-renderer-meta-object-selector.js +25 -0
  12. package/client/component/popup/code-input-editor-popup.js +111 -0
  13. package/client/component/popup/file-upload-popup.js +129 -0
  14. package/client/component/popup/meta-object-selector-popup.ts +356 -0
  15. package/client/component/popup/record-based-code-editor-popup.ts +141 -0
  16. package/client/dynamic-menus.ts +38 -0
  17. package/client/index.ts +18 -0
  18. package/client/load-components.ts +17 -0
  19. package/client/mixin/meta-base-mixin.js +323 -0
  20. package/client/mixin/meta-basic-grist-mixin.js +283 -0
  21. package/client/mixin/meta-button-mixin.js +116 -0
  22. package/client/mixin/meta-form-mixin.js +435 -0
  23. package/client/mixin/meta-grist-tab-mixin.js +335 -0
  24. package/client/mixin/meta-main-tab-mixin.js +267 -0
  25. package/client/mixin/meta-master-detail-mixin.js +395 -0
  26. package/client/mixin/meta-service-mixin.js +306 -0
  27. package/client/mixin/meta-tab-detail-mixin.js +283 -0
  28. package/client/mixin/meta-tab-mixin.js +190 -0
  29. package/client/pages/activity/meta-activity-define-page.js +422 -0
  30. package/client/pages/activity/meta-activity-list-page.js +262 -0
  31. package/client/pages/activity/meta-activity-viewer-element.js +35 -0
  32. package/client/pages/activity/meta-activity-writer-element.js +48 -0
  33. package/client/pages/activity/meta-activiy-mixin.js +79 -0
  34. package/client/pages/button-role/button-role-detail.js +50 -0
  35. package/client/pages/button-role/button-role-page.js +25 -0
  36. package/client/pages/doc-number/doc-number-page.js +24 -0
  37. package/client/pages/doc-number/next-doc-number-popup.js +25 -0
  38. package/client/pages/entity/config-entity.js +955 -0
  39. package/client/pages/entity/main-menu-selector.js +245 -0
  40. package/client/pages/history/history-copy-list-popup.js +145 -0
  41. package/client/pages/history/history-json-list-popup.js +159 -0
  42. package/client/pages/menu/dynamic-menu-template.js +92 -0
  43. package/client/pages/menu/dynamic-menu.ts +744 -0
  44. package/client/pages/menu/export-menu-popup.js +468 -0
  45. package/client/pages/meta-form-element.js +9 -0
  46. package/client/pages/meta-grist-element.js +12 -0
  47. package/client/pages/meta-grist-page.js +16 -0
  48. package/client/pages/meta-grist-tab-element.js +16 -0
  49. package/client/pages/meta-grist-tab-page.js +16 -0
  50. package/client/pages/meta-main-tab-element.js +12 -0
  51. package/client/pages/meta-main-tab-page.js +16 -0
  52. package/client/pages/meta-master-detail-element.js +12 -0
  53. package/client/pages/meta-master-detail-page.js +16 -0
  54. package/client/pages/meta-tab-detail-element.js +12 -0
  55. package/client/pages/meta-tab-detail-page.js +16 -0
  56. package/client/pages/meta-tab-element.js +15 -0
  57. package/client/pages/printer-device/printer-device-page.js +24 -0
  58. package/client/pages/template/doc-template-page.js +24 -0
  59. package/client/pages/template/template-file-page.js +24 -0
  60. package/client/pages/terms/config-terminology.js +214 -0
  61. package/client/pages/work-code/work-code-detail-popup.js +16 -0
  62. package/client/pages/work-code/work-code-page.js +23 -0
  63. package/client/route.ts +36 -0
  64. package/client/tsconfig.json +13 -0
  65. package/client/utils/grist-default-value.js +36 -0
  66. package/client/utils/meta-api.js +811 -0
  67. package/client/utils/meta-crypto.js +52 -0
  68. package/client/utils/meta-ui-util.js +3304 -0
  69. package/client/utils/rest-service-util.js +328 -0
  70. package/client/utils/service-util.js +1327 -0
  71. package/client/utils/terms-util.ts +119 -0
  72. package/client/utils/ui-util.js +338 -0
  73. package/client/utils/value-util.js +234 -0
  74. package/dist-client/tsconfig.tsbuildinfo +1 -1
  75. package/dist-client/utils/service-util.d.ts +2 -2
  76. package/dist-client/utils/service-util.js +4 -4
  77. package/dist-client/utils/service-util.js.map +1 -1
  78. package/dist-server/tsconfig.tsbuildinfo +1 -1
  79. package/package.json +24 -24
  80. package/server/activity/CommonActivity.ts +68 -0
  81. package/server/index.ts +3 -0
  82. package/server/routes.ts +61 -0
  83. package/server/service/button-role/button-role-mutation.ts +105 -0
  84. package/server/service/button-role/button-role-query.ts +53 -0
  85. package/server/service/button-role/button-role-type.ts +39 -0
  86. package/server/service/button-role/button-role.ts +61 -0
  87. package/server/service/button-role/index.ts +7 -0
  88. package/server/service/dynamic-menu/dynamic-menu-query.ts +270 -0
  89. package/server/service/dynamic-menu/dynamic-menu-type.ts +74 -0
  90. package/server/service/dynamic-menu/index.ts +3 -0
  91. package/server/service/entity-event-subscriber/entity-event-subscriber.ts +80 -0
  92. package/server/service/entity-event-subscriber/index.ts +3 -0
  93. package/server/service/index.ts +41 -0
  94. package/server/service/menu-button-auth/index.ts +7 -0
  95. package/server/service/menu-button-auth/menu-button-auth-mutation.ts +133 -0
  96. package/server/service/menu-button-auth/menu-button-auth-query.ts +138 -0
  97. package/server/service/menu-button-auth/menu-button-auth-type.ts +63 -0
  98. package/server/service/menu-button-auth/menu-button-auth.ts +92 -0
  99. package/server/service/meta-activity/index.ts +5 -0
  100. package/server/service/meta-activity/meta-activity-mutation.ts +191 -0
  101. package/server/service/meta-activity/meta-activity-query.ts +43 -0
  102. package/server/service/meta-activity/meta-activity-type.ts +56 -0
  103. package/server/service/set-translations/index.ts +3 -0
  104. package/server/service/set-translations/set-translation-resolver.ts +63 -0
  105. package/server/service/work-code/index.ts +6 -0
  106. package/server/service/work-code/work-code-mutation.ts +147 -0
  107. package/server/service/work-code/work-code-query.ts +67 -0
  108. package/server/service/work-code/work-code-type.ts +60 -0
  109. package/server/service/work-code/work-code.ts +83 -0
  110. package/server/service/work-code-detail/index.ts +6 -0
  111. package/server/service/work-code-detail/work-code-detail-mutation.ts +149 -0
  112. package/server/service/work-code-detail/work-code-detail-query.ts +59 -0
  113. package/server/service/work-code-detail/work-code-detail-type.ts +50 -0
  114. package/server/service/work-code-detail/work-code-detail.ts +82 -0
  115. package/server/tsconfig.json +9 -0
@@ -0,0 +1,48 @@
1
+
2
+ import { html, LitElement } from 'lit'
3
+ import { i18next, localize } from '@operato/i18n'
4
+ import { UiUtil } from './../../utils/ui-util'
5
+ import { ValueUtil } from './../../utils/value-util'
6
+ import { MetaActivityMixin } from './meta-activiy-mixin.js'
7
+
8
+ /**
9
+ * @description Auto Generate Activity Write Element
10
+ */
11
+ export class MetaActivityWriterElement extends MetaActivityMixin(localize(i18next)(LitElement)) {
12
+ async connectedCallback(){
13
+ await super.connectedCallback();
14
+ this.addEventListener('data-changed', this._onDataChanged);
15
+ }
16
+
17
+ disconnectedCallback(){
18
+ this.removeEventListener('data-changed', this._onDataChanged);
19
+ }
20
+
21
+ _onDataChanged(e){
22
+ let data = this.contentElement.getData();
23
+
24
+ this.dispatchEvent(
25
+ new CustomEvent('change', {
26
+ detail: {customData:data}
27
+ })
28
+ )
29
+ }
30
+
31
+ render(){
32
+ if(this.relationMenu && !this.contentElement){
33
+ let tagName = this.relationMenu.tagName;
34
+ let routing = this.relationMenu.routing;
35
+ let name = this.relationMenu.name;
36
+
37
+ let htmlText = `<${tagName} id='${name}' route_name='${routing}' style="flex:1;" is_activity=true is_detail=true></${tagName}>`;
38
+ this.contentElement = UiUtil.htmlToElement(htmlText);
39
+ this.contentElement.activityDataSet = ValueUtil.isEmpty(this.output) ? undefined : this.output.customData;
40
+ }
41
+
42
+ return html`
43
+ ${this.contentElement}
44
+ `
45
+ }
46
+ }
47
+
48
+ customElements.define('meta-activity-writer-element', MetaActivityWriterElement)
@@ -0,0 +1,79 @@
1
+ import gql from 'graphql-tag'
2
+
3
+ import { css } from 'lit'
4
+ import { client } from '@operato/graphql'
5
+ import { ServiceUtil } from './../../utils/service-util'
6
+ import { MetaApi } from './../../utils/meta-api'
7
+
8
+ export const MetaActivityMixin = baseElement =>
9
+ class extends baseElement {
10
+ static get properties() {
11
+ return {
12
+ activityId: String,
13
+ input: Object,
14
+ output: Object
15
+ }
16
+ }
17
+
18
+ static get styles() {
19
+ return css`
20
+ :host {
21
+ display: flex;
22
+ flex-direction: column;
23
+ overflow-x: auto;
24
+ background-color: var(--md-sys-color-background);
25
+ }
26
+ `
27
+ }
28
+
29
+ async connectedCallback() {
30
+ await this.getActivity()
31
+ await super.connectedCallback()
32
+ }
33
+
34
+ async getActivity() {
35
+ const response = await client.query({
36
+ query: gql`
37
+ query activity($id: String!) {
38
+ activity(id: $id) {
39
+ id
40
+ model {
41
+ name
42
+ description
43
+ }
44
+ }
45
+ }
46
+ `,
47
+ variables: {
48
+ id: this.activityId
49
+ }
50
+ })
51
+
52
+ this.activity = response.data.activity
53
+ let relationMenu = undefined
54
+ this.activity.model?.forEach(x => {
55
+ if (x.name == 'relation-menu') {
56
+ relationMenu = JSON.parse(x.description)
57
+ }
58
+ })
59
+ this.relationMenu = relationMenu
60
+ await this.getMenuInfo(this.relationMenu.id, this.relationMenu.routing)
61
+ }
62
+
63
+ async getMenuInfo(id, menuRouting) {
64
+ let filters = [{ name: 'id', operator: 'eq', value: id }]
65
+ let data = await ServiceUtil.searchByPagination('menus', filters, null, 0, 0, 'id,category,resourceUrl')
66
+
67
+ if (!data && data.length == 0) {
68
+ let msg = TermsUtil.tText('value_is_not_exist', { value: `${TermsUtil.tMenu('menu')} ${menuRouting}` })
69
+ MetaApi.showToast('info', msg)
70
+ throw new Error(msg)
71
+ }
72
+
73
+ let menu = data.records[0]
74
+
75
+ menu.tagName = menu.category.endsWith('-page') ? menu.category.replace('-page', '-element') : menu.category
76
+ menu.resourceUrl = menu.resourceUrl.replace(menu.category, menu.tagName)
77
+ Object.assign(this.relationMenu, menu)
78
+ }
79
+ }
@@ -0,0 +1,50 @@
1
+ import { LitElement } from 'lit'
2
+ import { i18next, localize } from '@operato/i18n'
3
+ import { adjustFilters } from '@operato/utils'
4
+
5
+ import { MetaBasicGristMixin } from './../../mixin/meta-basic-grist-mixin.js'
6
+ import { ValueUtil } from '../../utils/value-util.js'
7
+ import { MetaApi } from '../../utils/meta-api.js'
8
+ import { TermsUtil } from '../../utils/terms-util.js'
9
+
10
+
11
+
12
+ export class ButtonRoleDetail extends MetaBasicGristMixin(localize(i18next)(LitElement)) {
13
+ async connectedCallback() {
14
+ this.defaultPageConfig = undefined;
15
+
16
+ if(super.connectedCallback){
17
+ await super.connectedCallback()
18
+ }
19
+ }
20
+
21
+ async afterFetch({ page = 0, limit = 0, sortings = [], filters = [] }, result) {
22
+ if(result.records){
23
+ result.records.forEach(record => {
24
+ record.name = TermsUtil.tMenu(record.menu.name);
25
+ });
26
+ }
27
+
28
+ return result;
29
+ }
30
+
31
+ async save(){
32
+ let patches = MetaApi.patchesForUpdateMultiple(this.grist)
33
+
34
+ if(ValueUtil.isEmpty(patches)){
35
+ return
36
+ }
37
+
38
+ let params = {
39
+ filter: await this.filterForm.getQueryFilters(),
40
+ patches: patches
41
+ }
42
+
43
+ let result = await this.updateMultiple(params)
44
+ if (result) {
45
+ this.fetch()
46
+ }
47
+ }
48
+ }
49
+
50
+ window.customElements.define('button-role-detail', ButtonRoleDetail)
@@ -0,0 +1,25 @@
1
+ import { i18next, localize } from '@operato/i18n'
2
+ import { PageView } from '@operato/shell'
3
+
4
+ import { MetaMasterDetailMixin } from './../../mixin/meta-master-detail-mixin'
5
+
6
+ import './../meta-grist-element'
7
+ import './../meta-form-element'
8
+ import './../meta-tab-element'
9
+ import './button-role-detail'
10
+
11
+ /**
12
+ * @description Meta API로 버튼 권한 생성
13
+ */
14
+ export class ButtonRolePage extends MetaMasterDetailMixin(localize(i18next)(PageView)) {
15
+ connectedCallback() {
16
+ this.defaultPageConfig =
17
+ '149a93920370ae385804b07458d3ce7eef600b27f684ad64cc65b79fcf5910c8h1z0q9i9x7q63169fc00b58a0f3bc6843045fb1e6f3246684dcace77a93ed436d23486df589c5e3148d2f748d1912d58b017ad1137f828e28b888caf42333357a7ccd226478fd6a33fa74a841d2e08af9f1fa60ced05c327310b982486e4f3e4a5508c08dc2a53f6a0b0622d9bec09cb2d1de124ac3eh1z0q9i9x7q6ca11545dfc968a62a9717212a6e43b2d7d94fa5d238a564b98baef1967d9cfab9ad6f236f44acff5bd6086df844fc2a09c05df0d1c45a07ab5412fd0e29ff8a1eecfd11e8e1c9a85e50e94026c8235cea320d1b93b66f1e7c517c34a29a2bfbb6368c7ede790130ad20272439dd38824h1z0q9i9x7q6f7a852df7bce0c8cf7123cdc693267f490e02e0eade254869a06b1d978c0938146626444f36fa4d376952f283ae55cd1a59813ed7a4017032293bbebf1ec872c9a779e58888d791159daf12e1ff0bfe302f4e5a9118d4f7e983eb231413fa1f2e703d09ah1z0q9i9x7q6f7c0fad0dbe50feaa6f64721f4ee41a5dccb382ad8a90870852e2bf538de45d36c8565804284f63ac5dea0d0c60682c2773047d039c876834fe53e972b15a04dfff0fbe2c8d249043c65a8ebb0ed251c724e0eca89fc087e2bd81e05e4369a68d339a2ach1z0q9i9x7q685f1f4a68e0f546ef8a8ce275733f9395ebbd94f46cf29092042ef8272979040642c8de66d8a1dea2495b79ce49076a86bdf435cfe1c56832cfde926d56d46ec5d068cf5520e4590266620b969115a8dff2ad6b0e82edde233151838b3744cde91715171h1z0q9i9x7q6f7a142c06cfb5edaf42f7295771318efade1935f521db42e8f65f44c96c173e4f51cbffefb4eafa5671b6bb91d5ae54cc0813b948b47047f9592b3d9728b7f4f03507fc8ae841cb1b67a5b7534a1143f4486c5f8c01ee13458d7f3287a508ca7eca2e0d9h1z0q9i9x7q6a7a87b9135d30e95f76242c47e0736e69fd717f4be6b1767b84eddf9770c40dfa0563b2b5f32e2bf6ba2df821abbd0c0261c7fd70dc7edfdec17b66384ee758b9ca17bfe0ea3cc6e7ae8ae345828064e9eea1b0cc4a984429d915efd7edd3d2a703437a0h1z0q9i9x7q6c07d5a306287b165753eb8a081cb42e5041995aacb1e210249925865e7bb0ce4dbbe310975b573e6eb274c6c1652aea47bf297a015d137998b9d7b3bb1ade5102fd3e1e3d635caffb2e71b4d30ec14fc0374cd56f43cc4664b96bef525b6ed72931e75fe267ecb64c4e8666d3736f27bh1z0q9i9x7q60efb053c76d64b1772590a021af2efd83a2648ad3503dd153f3564ba5d0fad6eb75709faad333d6bb5fc8849019cfc5bbbdbd16a3caa1b52c68758d6cac99f6ae302ce1dbd37ba16cba187db9ed8eff033a845cf1d1042395e6bd31cbc6a49c64fb06dafc2fa2d9bfc7e26096181c2e9h1z0q9i9x7q6aeeb0f6ede2bff935b8fce774d964af569ae9024cf309e02f8413a0fee54f2db76e906d1f3e9f8d24542a8aaca4f7450e3f0fc860ed4103f267135ef2debf0980ed7847f61f72c6a21b3260a4d659ca88b205fa8f1005671d9dd889bb08537ebbfcdb9bae4a12e3cba458b077639d5e2h1z0q9i9x7q6a7b146d163c220c2a8287f8a610b69ce92a823a06b199a1eb443c93db174d5530a67a55789e752a100c9eea4d39ca2e99f2fe8e76ef3464c9667b61e3e7ff99375a79a064e73a4b4f251cd944131e0ecc991f2e1f7c73d60ceeda5711dca88a875a4908ch1z0q9i9x7q6f7d68232c8f1d22f0fe2a133a37461064d35595c81698cb168bc3bf61a32781c9a72f0c7151752aa65bf73d69a8a420450582e8354519399bec876bd1a5a47bd666b835ba8f442eb65e90ce88465cc1b66bfca902b6b43223c8dbb7ae45580e036b41629h1z0q9i9x7q6d88dcba8a1132f18191a046371d13e47d896f0b84ebdb6216ae25f18eeb6ad96198f7a590ecda71193d2a6d146139f144353766eeafcb58f7fd4d5c8335281ef41d294e4d9145d9feecbde50fc6c9590ae97f97a488106c83040cfb7d241f31b3d528cfch1z0q9i9x7q6f7e97b917bde0c85ce6c24ba301d31e0e8d3d6711f46b42ed07ac11a94cf76e2c262a7b0d519b9ec575c7ba2425ceb59819008d1d65f1356d292b3d9729f7d5f0b547cdf88ab5be7b578435a73b72e7c4d8dd0ea9e36a22347d7f06c295a99aeed98aaeah1z0q9i9x7q6f7ad4ed76bc212bcb07478877e1d20be9fd74ce38b2e1f52ff18e5a8474b1cf0a05679161020d7f942e6df8244ec9491325c77d70d93d7ccab2ff12abbbe698b8ca960f520ddb36e7ae8b2394c210152a3a14d0cc4e6a804a0c746a37edd7303263421beh1z0q9i9x7q6bc5869e53084ba4cfe11c2a0ce7cd4d2ac5191024552d3b38599987de4ae6fbd080590a386446c67a4c0c6f430e7a52b26150c0b4d99af3bd1885ddf34e48f93f08a9e6d1890548266d850fd0018857b35f9f9fb8871e5a6309f7d52471268e62cf34c1632de482a0a3bccf34e3e096bh1z0q9i9x7q66fc843db43b2ced3e704b84f733466b9161387deaf21150824f55683529c714ca20dc4de7e45790b478773df25e9417a0bae4b87402cb17fe534a87d7caea18784c10e7d31c57194dd3ec69b166341cf0037d0a6f8c82b8c177fca214b3928e20dae3b7749c5aecbb7d87104e6037b88h1z0q9i9x7q6ce59e36ce95401b2da1f3826cc319b0d6d77661ac02086b675c37516a330bde5321c335dd60782f77c9fafc8123502cd70bbee0d7024f8fc34544767e300d23b4a310dc4ac3d2cceb6bbaa3a1454676111bb93218eba9ebc7409b345c6a01482021b4abf4fc46ba58ab4160e2ec01843h1z0q9i9x7q6b1a453dc7dde20c2a8287f8a610b69cefc528716e1a0c3b9e59a7301e813a8d1a619a5eb56da0b5d011273d006f47d0ff4cd28eb29b0bca769de51f3c268388bd3fa046078f4b30486a90b3ab78cb6a8a871f4a6b9e8b3a0730771969726d35f0ff0c49ah1z0q9i9x7q6b4eb82cd4f830f0855405fa0dfb96a0514553657f6a95dd3089fe802bd2511f49316b5346bb7ffc6c44054bd40261818faf67447a1eff028805c94174466fa7392cb3b594d7a502b712556f5cb53a12b1cf9b3de5a933806f2f45e079871bf6cbe05114eh1z0q9i9x7q6cf54e5f86f3476fc2d6672e0500ed0b76d2bebf404dddf94f2d860bcd5f5cc3cefcb3a5d08a2fe6594f027aa9efd31de3d07841d4c0c194d8ed2bafb8b6ef1b47d45d2f475e4cf396f6b7203f1b4c490087b1de2ef5f6630a4dc8c5474ebc9393a53a849h1z0q9i9x7q6bca67b9123fb5e8cf32c7b8a4e4c7fcea3dcd5496148955199428a1d90cc68e4f61cbffefc1780e2651f65a86c0ab067cf9b359e8977430feb9c808b7a8c724f05524f8fcbab5bb1ba724a7534e62f7274d7c6ea9e2f9f6311e9f1624f1e8ca3fca1a48ch1z0q9i9x7q68e980bef2dc20883ce6c249d4e4c28f3b08148fdbd2d147abc4bd5d55f570ae1a0566f16103bdbfb42d1f1c919b6d0fd6d5c50a9429cc5d5ab018c7482e87d92849767f928e4cd601c96f86f18604416caa62b72cacffa0da0c057b450a03b3a702131a2h1z0q9i9x7q6f1405edd6f7ffb7104773124b240846ac5324ad104ed3a9f54fb701a6563d6364adcedcdb4c0500f99ad04ee4b9e84c0cff673a88c6252de3b49cd29e6e83310f3baa0f34fcb0158b895a9ac764cc9383cbc3e0f26fe94d54491c9da0677b791d314a7ef434a06bf8feeaeb305cf54a1h1z0q9i9x7q659d113a8b95adcd9b818bbf25332cc762ec50d40477e654e48e8e1d0e7dd0de53bcce3248b6a9ed754b15fc3ae3bcb8053a91b27d045a97c9945dca81578ff0ab4c731669a5e8587556d46a3804fcaa590b60ae8899efa74c1f5e37f6656fa66f2cbb3c5b47896174526ed52b8377378h1z0q9i9x7q6f113b8b6d5360368d4552df3fc02f5555ff464d8cf44c4eb9c80d767a2d551d6292b2a20d56489c603de88841da7be6229b462de0e54ffd94c212f67cbc67e5dc9cdc4a1e8cc25ed54a94b5d28522b9845fc4571512020d0e6f4066d2419a272'
18
+
19
+ if (super.connectedCallback) {
20
+ super.connectedCallback()
21
+ }
22
+ }
23
+ }
24
+
25
+ customElements.define('button-role-page', ButtonRolePage)
@@ -0,0 +1,24 @@
1
+ import { i18next, localize } from '@operato/i18n'
2
+ import { PageView } from '@operato/shell'
3
+
4
+ import { MetaBasicGristMixin } from '../../mixin/meta-basic-grist-mixin.js'
5
+
6
+ import '../meta-grist-element.js'
7
+ import '../meta-form-element.js'
8
+ import '../meta-tab-element.js'
9
+
10
+ /**
11
+ * 문서번호 관리 화면
12
+ */
13
+ class DocNumberPage extends MetaBasicGristMixin(localize(i18next)(PageView)) {
14
+ connectedCallback() {
15
+ this.defaultPageConfig =
16
+ '1463bd2f2d3c4ba65fc48f6c1ba70061031ccec923cd9586f1eae5c9e2521c2ch1z0q9i9x7q62c09fb46e853a7924962f4ebd6508d24e405d20d5ae120ec2853a576f700130c927bb2d64a8bdb83787c06d0b244dcf73336986efb629f6bdd17e449771f424a66d0e22e7de50a3b8c693a5ea582d633b7b3d6a088dcd7e1e237d53582b61e00d6e450000d216ec6d11e932c2a921b03h1z0q9i9x7q6adfeab0d9787a255af46c1e7dcd857f5ebf0e4ed0f11ee0b3b31e346611cc67dab5e4cab40945c39d37a63dc49b23e67aee0f377ed2cf876c21a604a829c5ff077d5b74f6db497b2a280c904dc5e00a35654fc12645b1aca5c1db3b4dd3d3ef87da4c8a80b7a88987001f375e692d88dh1z0q9i9x7q6cbe5704a4a94b61476ebe953f18fc1966dbb8a83ad7699b5048152c01095246403f9a3ee5cacf5ed97f507971bf12c97b7ebed2a8f2e948eef8b0fc909c36d633fd0d267a0e1cc32d1c4263fc38ec354a884c6bc3d9b00a7f2287c3d49c495557fa0b0e5h1z0q9i9x7q6c22d48267c2a87e752958624aafbbac3ce954098ce16faf23c52fed63986fce0f98fa04137e5b05f370c0d098961acc275fbd66d6c2ef9de0b63fd7da73ab4c5045b3bf5adac8815b8dadf5bc31abbcc669fdac4bfa814130c76c528bc510905fc486ad4h1z0q9i9x7q6ad0a312df0bdb5f9ac08252bb4b0aa98e9828457eb15fdd21a079992415558d18cf2dfe9869c8cf724bf86edd680b40f760c1ac5ae3b430d7c8cd4283c480fd2d81740923ab5dfe2ae609c4e367f0511cfcc64dccbc8fdc273b385d785e223f14d179c02h1z0q9i9x7q6c6ed493452d5b61473f1e355f18fd7969fb3aaadfe9f260f96bb429909f2f99604e933953a6ecebccf0b9c2475ea8202205154aa94463ec2f8276ce7e9a1e6203ea214bbafc603250b274472aca6f15dbfc84b5752be7f9306d7b8ca9e26e317408dff94h1z0q9i9x7q6fba2591b15b08c5f7ceae242f2cb94b87e1b41f51712f2759816b282c69d5d1953eeff1b0e7ed591632b4d0a644d804380d75af4a27c74a75b5a7b4176aa0735e528a76a2b3a5bccfa55b1decc5cd76ba4d43375891751c2df0f1482fe5953d385d19b83h1z0q9i9x7q6c33d35903911b2077f4fbce6c94f09ecd50758aec90fb1c4d52b32eda1a25a6e42907395bf7ccabfb2bdaf52ad8cbe54a48d9f28a66ffa34620ace838a6c8bf8abb335060d814badf76e0a4408b97c3b2e2cb29d2d66e5b12460b6a1a9bfaa0d0536ea19c667dc55409f25c30da89893h1z0q9i9x7q697b87d9d5547cf67109ecb7d6726f595c03f7ad8d24c05bb277af591697c2b4e37fcd32478004876d3e4a8d01339dc362845abb19fb0f0850ee2d17facd4484d08f29d4c99d160f59d84db8e083d5f270df29e2f534b85c624f63b9dd718a1bc2a19c0947af8f0c9b6ff216605cb47d1h1z0q9i9x7q6f3fe49019074e722b2e4b3075d3adb1c65d188c9b14bb4df38a84836c21bf61429d1643b862ab114d58858de2e3868873a9942a35b5d08a02805bad23288897a4a5bc1a56a340f6f793926883cc0833d5f5fdcd740e5ea9dc7aafffd8d88753a9f0d6525cde2c3a7888867d694bbd508h1z0q9i9x7q6d3f95c0d2ccdd06a32edf342c4c39c9684c022f6be5b98deeb0578bef45a98ca9e4b451a877d62faf3d22435ed9d55a8890871265e92a04fecbec8d23a18adf54b201b80680baa5c8df269529647b50563c730f080653ebde26d3202cacaa6bcd95a0740h1z0q9i9x7q6ce9d82c23fa026705245a4606845d7f868a37f41c98f71a774a2966268ae86a0b05571a503eda5fe2ac744b997c4223f2d644a85cb9f992f682816b263b0ef9afa7e095684643f3e6c1ac23de4e080a1f848179320c751ac2780f701ea1205287fbac600h1z0q9i9x7q681c2558a558c42bf4cff74c8f82dd3f1a251de585036b1fab185d3544ac21b2205b15f8321b94f2992296a5199add4189712c32e314d583545d10165479ab2763e294545ef9ef5b34fc08b6602193ffa555a4b36df923ae4ce681e278634342361223349h1z0q9i9x7q6cbe94b062ccdd06a32f2e256d9f1d9e6e1f5b8b7f9b76c69d2e01fda5cf2889074977f86387ccebccf2ce26273f58813227d02f9a70a1185b81e2dfba1b2ed32618a59e69488021c5a686a39b1a7f446b8e4051e51ef6e8613d190b48640b516419aebd6h1z0q9i9x7q6c0dc0e442ccd8f5279eae652c1c8a7e8293311ba064cdb32c725e29ace8c45202df6be214d74cf9123131c3b2719bf7ed6db47e99b026cff750d7a0859eb1024e533bc71240415f48a2ba9cedb5dd32e9485073ed728688ee6555e96fa4653dfc6e3e5c0h1z0q9i9x7q65ee5c4e63ed8f2d3fba2ec7a8e7bcefc0eb64ff5ad15107e78e0db0401b23ef9f6f8684ce35952c0177f72d4df7cbb11fb24a50fe6a7dbe342559144bd378d8ae5d78009a4d9b4d0a6ca0dd3d692f8ea01fdb962910b55e27803788db83507bfc42bc92d15fc741343aaf90fde2b4b10h1z0q9i9x7q6b3a70526d091e54b7c696d96d9e049bfa8b1c87f6aa1aef95f669c55f836ec09ac980eee1abd2074ecef066aaa8188c3490cb50bb129e5eab3cba60d0e1de04e1231b4ba73ef998dd2b28e669bf972d160be9d49afb78604495cd87a4ee23033b307b79bca36c8891b3b281e4af299d7h1z0q9i9x7q642f89c63f770d333b51b2ebc73f8805a93bdee3d4b40d123e197bbefa3eba751d6833316a431835a9e72447ec611ff3080e5d8018d37b7dd6f58b25071e92bc8137f5fe2426c26bc88d3486dd2b419824542ff35b2ee78c0adfd89bdccd71bb00b547ec738c0c49e66fe74653f85ca04h1z0q9i9x7q68bdc0e0d14869e5772f2e26c8f978fb8b0f62b4da934afd0fd7628a67417f8f608321282af4e6b55aa14b5192d12931668293cd67776bd63cdad3f54a3469c4957cdc8445e66e6815e38786c0e1cea09c5f83df58757a9b067309e03db84d113f853621bh1z0q9i9x7q6c0223e9831c54b706da5e6670644a4486d006d10cf81989ebf48f396cf229a4c6681729ed12f176c98a543bcdb16e59051f6a7cba08cc154c5a08078fad4ede05e38ff8086b173d57e8d30d956c324e521bed107e9141e1af4eaf65502cf50e7df527362h1z0q9i9x7q694d39c20888427de6dc85c01c5dc8bf31eef896d1ad7d87aa421583d4e5f7a4002febc45eefb3f15267d4b87eb6fc403984f1670dbcd231e4613e4afd895f9f5e5b02a43edf21c4ab58df6459a9d1cfcc8a6ca65f68ae870c93880634d506969d80500eeh1z0q9i9x7q685f3431a048e885a75c2a50acbcc97b9d8fb93fcf0a26a5191ae419815d386d14ed47d943035cebc9008b06964f28a0327682ab2f2103fd2f16e53b1acbaed3376b827fef2cc07155a6e340ce3b2f140b1d67b103791389c06dab8f3ce40b54969caf5d1h1z0q9i9x7q6c3f4443452d5db0625e3ab4bf18f95ab7e223fed593ca563d13bde8fc28b75675d88a62f4979d8917d131c6c1a55a87ad3eb5bf1aa450aa92b243d507cb91000b766922736120bf8b86ecf9885749467acce1b36d12068bc984d1082ee4f0ce6c8cca8d3h1z0q9i9x7q65f5c1691591df637b69130636adbabf3f5132ad7243d582c1fd6dfeaac668e4f04eff0d15b485d7d177408987c89b738cfdd40e787f5f5303ff7685c82e2dc11810dd7de5ad39b1dd2f300939af4d843541d0fe706bb83ee5093fa3145864be2e6e3a2431b5682308cff2a74f2416d8eh1z0q9i9x7q6c1f1e7623506a0980b57b3cd6b453e81c154b8308b1a2d3119ce3c1d8da3cda749a38efd2b72a71f7b7831bbc8f18daa0cc9d3f610be6f87b44ed86a766cb29371c2f4fdfedf153c5e1c8a7986f183e44c3a6ec4ab1c0f6f808e5f1b2f18d0a56272b514e93a447660568e9ab7bbd0c4h1z0q9i9x7q6edc38b8fab3063e7879ef555a640573e442c889586f0ba28cf7f1d9ac314e7fb01247fc2edf65ac7fbba5ff37ecb32601313e88da045258e57377b8fdf9483ead50f3a99aa7ed9657651761143f94f96b57d728f30097a381463bd38fae62861ce330edcd77bba79a0ed92a418cc131ah1z0q9i9x7q6fba216514092c64d4cbce951c0c8a7e87caefee891375921d70d310839e071390ba92988aed0162340ccc6ab9704b44ceebcd4f06325c1a7d777ac4881676d42d9f6ad7e4a31d3574044e5b73c50e0f9bfa7c9d84196b161ac386ab0342bcbaf978507cfh1z0q9i9x7q6cb054921497bc7fc7a3a0b06b6ccb00e0f67108054d3d3c2715f6c85efbf0ffd2c393a965a231400064d237eea9a919f278562d600a597b6595c674824129e5813e6c5f4c61aa022ee09cdd7dcadee18a5e3d0e4f73f5752bed58f06d232b38b991ad451h1z0q9i9x7q6dbed5a8adac8de8d648b6979e62ef03382e54dd81643d795ec7659f61f5ae35b96221b74adc5e9df9cd370ab24bb8d6e7f765631c74596e4d92579b6e2af1e0dcf6e15a0b059f324ced212127f81041664fc3a648e91355bd9dc8898e54f8e83bac06559h1z0q9i9x7q68bdc0e0511818e5764f1f549f18fc1acdcbbbcbbb19f265088aa419818eec6874de933dd216be7fbd92ce26e7fe28f04255154aabc1638c2b81e2df2a8baee394ff44180ead80f1e417f4472ed8fbf5ebfdc535a51ef20c8569890b4da73e508549cde9ah1z0q9i9x7q69ddc0e4b5cccc9154cbcfa1cd6f1d9a4722a0693415adb32d73fe29cca805d0b1e88a66b703ad4916e2b5b241a55e14380d740e2b54538ff5816707827e5297ee125be60194443cdf460fdcecc4fd3709485430b91296989ce16069cfe7602809ecdb2c4h1z0q9i9x7q610a8677595797aa422710a24fbc697d6e0a7d8ea5b264fb4696fea49287b11df556eda2eb993f27f2fca003b9c985e9bc3a51232c42da7327bb0ac53f5fb502d8489a3bee1b20325fae5a2ebddf5c20746e5eea8d9255f1d51f1c9be4910ad7875ca6911363e8c2da6b8823209faf476h1z0q9i9x7q6ed36cf893ccd1f71b55964f18db2aab111b959a5f11948cc3bee98a965dd80d17fa605b311effda1aae25ae72dfc3fd2c39eea165491fee9096837adb02400c72eb9333285ba78e1da958bac170a7be11badad03b3cf314e7d6b1a25cc7348a9ea62419ff1f7a7c54f33adf4f989755ch1z0q9i9x7q6e1451c1e2122a2741db405a6cecc2b8f8a8b3d8b792f54a85c71ebc596c99264d881398b3b82d94066f429958a863d79acf732d8a8bd411c343bc9068030e0f664de0de4789dc1f7b80878fbe85e46fe4243eaef3f76e2db23acc8de6028d9c5434c773a1aa60785c2cf5345484a49e4h1z0q9i9x7q685ec490e04b3c81a4cbcf059c9d99396194a992602b2e73a7a6ced9bca00c74f0ec5fd3a87de122eaf8bf31ba379f3d9fa86ef91f7e183a18cf2d8fdc42c0464d193655063c73d0f833bec0b961b1c14ee632201e5e89aa9669a2a8723055791c4663340h1z0q9i9x7q6c235531c106cd18e293b29788f98af47c51cc8eb5ff47ed5d8fbe96802752969e4c023a55fa604db0730d5fdcfa89726513d4b60dd106618b4c563bd762fe9518093b59ea5b3d6bbf3bd4a1b2c81740e77bb9d6576972a3d4a0f7213eafab33f0438f3b3h1z0q9i9x7q698ed516f1a00915b72d41f64c515d5859f3db5462d53c8d4bb13805ec80f07cae33047c290254af54ac2207597258cafe343dda31f45328c28727bcdaba0fa98a64a1677ebcb300b1a2b8039249a2cebe88ec0fa666101624a179f8e9fe6bf9ae51730aeh1z0q9i9x7q6c2dc0e52049d9f533cc2a543c2df8fabdfbbaa82bff962549ca94bc630adc98a46d170933a6bebc2d74aa6677af58e4d172f13e8b80b3fd3f52063f698f1b32361a31ef094880e104d6f7d3e9df1a74fb7d454572191389e0fddabf8e03ead391784e7deh1z0q9i9x7q6d3dc0e442ccd9d5f74eaef6c8f97caf3233a4fb43f42e971d92fcccc95b20b2910a7f003437bf281622d5b241a55f74380dc50f1a34524d72542430669a80628ca38a1661a080cfcb46ce1e68b04ea20bcde1f32ef6e37bc98041082f24447e6c8939b83h1z0q9i9x7q63992e926a126319f01d8e4bdff2b0cd32348ae41b6710cccd1911ae214925ac843bac08fec4439e2f22b10c525ca12d3f3f83c5227ccf40358f2272aeecbc40b911b936a1d6f741b2cfcfea39adde8456a4a26fcec01ac9a41870279e0b82a842eb4230d430061366f75f3792601e0cah1z0q9i9x7q65f122410be8dae186f1f37cc0f1fd0210b9c7153cff1dd12dbe61d998d0c9afc72c476999a2594132c62e401ac203140d7a55468377f681e2987e8cd45617753ff3eb0395b339e07a2d64b45879657ccc5ab82111c0052f7464b57880e3ab040c56c4ebc2f5f85d235d385722a407957h1z0q9i9x7q6dc817952ff48f7662d61234ebf436ff6b7636dc4d117d1e9d44c6ad21f745a5fb62ff9e0f844df4f8f5e7f2d1c71fb0859189e271f48ab24f11f0024e9fc7d66efca8ddfccb5515492032f08de88182c97baac0d07587b26412affa016dc59f0c7dafcb91c7dc4c44dd11ac81e2e207eh1z0q9i9x7q6c9dc0e522ccd89537eeae242f18fd796cd0213b7f52d4c071467d442d7223a4438f659c111dddf924c72e6f346f60de6ad28346fb53707a7d43a904daa0a4fac475455818ccabb1862c6023e2817d95bd908852c5e7c033e212b0c2ba175f5894d7de326h1z0q9i9x7q6c6a05bec1749d1347c4dd9832236de37f7a8947d31bfe83db4f545917e430acaad4427590d725e53e30ad56a78f8ddfa7a5f6131d663f56a84fe17688c0f3f54c7c5903132f9921e8fb567190c0cfd1d3d661e26ec63dcdd550edb70bf2db3e6bf03984dh1z0q9i9x7q6ad0a7b776e62b8c4a9c89961804bb8937729b1410f9c5ffd491c9451cc7d6fd28b1d27cff1c0ecc844047e4bea361b2ed8c12f918f7b678c01555f50617fddb6201201ae4255a09f2efeb42013cea35178ec271db81c232051e6c5ef07becc47e73eeaa1h1z0q9i9x7q6c9e1410d2ccdd06a32f7e36c8f81a7e8d5beabbaf8ad5817caae5c9f09f2889074977f86387ccebccf2ce26877eb8e3d69212ab2a0012cc3f13053b1fe8fab3972bb1e80ea863a5b41627c34a4bdc10becde465e7ea836a341d2a5fac879e53917d2de9ah1z0q9i9x7q6d4e54d1a1387b6146db2fc6c8fc39aa7761b41f53f42e27dd523fcb28dc2756719b1e523496ae0d635131c332b16b273fe9619cce5483fef631d717827f3133df92fab2919441ff8ba7df6c8f50a8c5eead40a36c12f65bc980a398de6065be6c8d1a6cch1z0q9i9x7q6a4955b2688501be738fd22514a8573f82ba3f92bfe6f1556c00f354424300487073e777ba3de55f3be670e86fbef52a02c05e5d70bc7216b3285a7b59694eb6b70427c3f1d0c4cbc0d8d9de62fc97292da1691683c8655b0970e4a4e6d7573768e41a9ea821c25072c7a4510fe805a69h1z0q9i9x7q6edf9146912c4f8d83f11fa57433a4f3df72a2b4f1f26325f658adda84c432e113be6a270937a4eb145fb56b654415831f2a2cd270b3c84290410101fbf34acdb5fb5bba7c25515e18784d275a5541a366591f4c85036bf43ee8ada5ad5a4ded0e1cefdcdb1678035acbd883f1453ccffh1z0q9i9x7q617bb7293ab09f4b3756fe422f470af92ba7177b76a51186041bcb30434d1dd5d8d124770cd51dc6e06846d8408c465c471c6ab99595f046bbd0680f2c4f6ecd0d8c4b82db6dd48cb3945878a3ff57b1dab680a6c26c82831c34b8d6a78815af6e8a7606aa9f181d7df68fcda2865f333h1z0q9i9x7q6c6e249042ccdd06a32fbff40c2df8f96a5df7a134b13386ca568b7285f55c2140502b5e7d5d24d14a751532b0e897ac37a2e7705a863449f3b22d363f91c829e30fa2e8882d00db3b0103cc622adac2411b743ef1c04fa42d28ce499d9861186574c7c21h1z0q9i9x7q6d71bc5f6f333764bf26e9d1aa8ef8c43789aa80fdf07938feebdaff602bcdc06e2189184c273b2b28a63447e5a17ff5810fd9b454ac54ee13bdea48fff6c28bd4114b76a8e6bbb29458fb8aa48bab79404edd7be28365dcdaa2c5533cb8ee16e5484746bh1z0q9i9x7q68528477ca8efac7aa9da22626e2d391d994f763811330481b632ad8cbafaeff7e22eba42e8dc8c728a1dbd1bcca2e8934e152e70506e0650b6075d08d7b2e9773affb1189b60782916116f84718398f00579f212cb2e6300b76a4bfabc5e630e9b2b1bf6h1z0q9i9x7q6fcdd0034528a9e554cbcbd4bd0d0d9'
17
+
18
+ if (super.connectedCallback) {
19
+ super.connectedCallback()
20
+ }
21
+ }
22
+ }
23
+
24
+ customElements.define('doc-number-page', DocNumberPage)
@@ -0,0 +1,25 @@
1
+ import { i18next, localize } from '@operato/i18n'
2
+ import { PageView } from '@operato/shell'
3
+
4
+ import { MetaFormMixin } from '../../mixin/meta-form-mixin.js'
5
+
6
+ import '../meta-grist-element.js'
7
+ import '../meta-form-element.js'
8
+ import '../meta-tab-element.js'
9
+ import './next-doc-number-popup.js'
10
+
11
+ /**
12
+ * 문서번호 관리 - 다음 문서번호 팝업 화면
13
+ */
14
+ class NextDocNumberPopup extends MetaFormMixin(localize(i18next)(PageView)) {
15
+ connectedCallback() {
16
+ this.defaultPageConfig =
17
+ '86b9c229942bdebecd5f26e6cc17b458edbecd83da06e07bc5639373b4cbdf75h1z0q9i9x7q63dcfc1c55e9b0caf15339eb69d04585fe550db12bf8bc77367e4c58e4a1da3132af96fcb723c9eb6b9a2740e663d83f13a18189f1da13017a8e67f9caab3d0cfe8f0480ffc60f7ab7e5fe19fa38f5ec8d82d0440e4623cc4e48ac38f18625542986b908dddeaa78badeb4bf124d61312h1z0q9i9x7q68d1d3285b0f0f9a299d683de902f569922e311ad424ddde55217b5d4d1893a8a5d0906de5708ec0a824673d6fa5c62130abf6dbfb6e7f6901731f7814e6fe33ec254bf13b067c9f49750ce4aa3edbf29795246233749b33a54be653f89a7c0df28c0a390e3f9e6ba527e437174fabcb2h1z0q9i9x7q6f512dbc2d9a221794ea9afb717f1a0aeb8b5fb0fc25781ea1e1ff88f6e3f526415f6da61026b5c039e97c6e68001ac0218908c62a67a10b8a3d8568a8022d15626483bfd0242ae5ebceb5b06d52e8324c428fc303a8a17c61d3c338ebad59f1ce615193bh1z0q9i9x7q6f52d88a362c59893f758d11561b2aa6165aa78dc198284d0b02ee949d232cedc085e00586199e2398a6156406c06cb9900b4f84c055f35949d420d221a909d8879b690a36a696d47a4b6c7bd9beee9ef1ff9d2b3f74476ba04d1c06a56d435fe0a701010h1z0q9i9x7q6de817ec06708db77cfb3cc3f8793de4c8a238b563e235f9251c0ce93784582bb6ce7ed4da587764968212e3f8fe3e082e529e15fee7777f9ff35bd1b528de18195bd7283c5546b2fc010853e6040ae4d30fa3869c4494e9de0aefc8caaaf635bc1fa5633h1z0q9i9x7q6f26dcde586bb392173e2a4b622b7c6d789d32f8e3c97aeef955b73fe9a6838b0223e56360c9240629afc4898c89f9a0f582afbb0b92d5c7283f906ad2edf3ae0528dd598db4c4d3958aa0dc4e0b53dcce9a7931c9707db699547b6118cc5cf1ae90c29abh1z0q9i9x7q6c054bd9b88837e216bfbad995cafa0aed651e8c2347193b436dae509aca2913e46e2e5f94094b7a9f1d1f79a3d447542004a3d716c2f1808eaa5ee90c32b6d1810cbd23181464937efb11e03d9d2faa729a3ce841d386ca00424095634c8efbb7aaf7a4ch1z0q9i9x7q644435ac605c7bfb8d818647240498f96d1e66be3fad8160feaf0e15ca6182fef0acb62740678b58ec9c0fc8d9b8a36d8d53f8a8b9d42c8f7ecdd84715da561240dd312748b157be43c53e7f47e030bdeb73c775d71f5290657318f257cb681dde3550d58213017b6089679a539f3b04ch1z0q9i9x7q6b0b19aae04f081a95ae5c833ac8bc0d50dcf4ca00956a1968a795d82fd04866e03c2f6f8b8d37bfe7303ab02012133a78e66cb73b6f40eb0f2f207315c72dd130c73f697839f371c4838d355a8b5d39adf7505ebadde163d648237e6040347f6acb4ef3d8d0109b25792d38714d0883eh1z0q9i9x7q6bbc2010223da1e68a2bb6cb470fce01734a54e7f91c0612a0f708f4a53d42ddbec76f323f8489f4ff5b90b35ede7dc0c78875ade0620ee62b9e2a82dfdcbe32696f830da5b0cc6f389bc6f6872de6780b37d86d01ab2e25f3950e3b4fcf5275e40c8012a6bc918ee66eadecbf8720499h1z0q9i9x7q6936cc3cad0ad353b75d7eae922b799e850d5f3aa0628e460756a318e85e5b03f6cb29836a6eba65d1b96d6bc8ad2e7ac94d71f24c938f20385a4e21118bbe952d9918f0d2e6755fc86c48e01f756d73da1841473c8cb3d036edda164f6139b01f5c973bch1z0q9i9x7q68ba003373e9e97e16995eeeb7053c253c58fe86d206ead07fb205ff789993746c0b467f71ceab09505e2466d4d50f5973f70266995456ace5450edad930464bc55d47e00d6d083d17b6e5b7c2cafe44a89e71a0d9115aa85bbffb655be049ad3f7cb9b89h1z0q9i9x7q68f7f708c3083febc8af4ce716739593c7ac948f45416dc186cd2651ba2383ce0f240775b3accf0e1c6ec5d41d8b2314ffbb577560558b8f4206581daca73389135d8bbf977b36755dfe86a64cd3fa4332d0913f6879b9cb825450a0d2039e5a879bf4c6ah1z0q9i9x7q6cf518dcac1f3007773e7a1a210c9deb688dd1fc92e8b87a0db6930e09f506ee2223e30240c92671cdae75d81c2ade4173e53caace6053a7a92de179f2fd524c91dcfd598897257011fb6308bbfb53d9ad4f68e27af4a946ad95abe128dd2e164e76a57fdh1z0q9i9x7q6d04084e586e5007761ffbaac10f2a0ae8979b8ce3e7fbbf778eaa230eaf1833e48fde5893e8ca2a7efd6f3d40d035a0f48583d7f732f6876f2aeee92d42f352b40dfef7ddf415c34eead6e7dc1d1e3bb35b496b95d31718c496c1b563ad7efcb04b77444h1z0q9i9x7q60b7043bba597a31732280c6d390d31cb9d1c58ba44b96619576df7ceb3b14dfbd45d5cc705f9103440db7e5af886e905a5d9da5187cfc25ddca872a4a13d2f7e57de0a300b71fec1dfb317499ab051409f33de26748389d1d4582d012506454acb5401f80db7e1bc90641e10893cf8d3h1z0q9i9x7q6d720f663832dfe8c6c5c1b3f818e08622130243f61fc7c8c9bd78521e1f2cc2aef60398dd0c4b92bbc466ba225c5122db15b73c9b390e1c93ad44459b1452797'
18
+
19
+ if (super.connectedCallback) {
20
+ super.connectedCallback()
21
+ }
22
+ }
23
+ }
24
+
25
+ customElements.define('next-doc-number-popup', NextDocNumberPopup)