@operato/scene-tab 0.0.22

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.
package/src/tab.ts ADDED
@@ -0,0 +1,328 @@
1
+ /*
2
+ * Copyright © HatioLab Inc. All rights reserved.
3
+ */
4
+ import {
5
+ Component,
6
+ Container,
7
+ LinearHorizontalLayout,
8
+ LinearVerticalLayout,
9
+ Model,
10
+ State,
11
+ Style
12
+ } from '@hatiolab/things-scene'
13
+
14
+ const HANDLE_WIDTH = 25
15
+ const HANDLE_HEIGHT = 25
16
+
17
+ function rgba(r: number, g: number, b: number, a: number) {
18
+ return `rgba(${r}, ${g}, ${b}, ${a})`
19
+ }
20
+
21
+ const NATURE = {
22
+ mutable: false,
23
+ resizable: true,
24
+ rotatable: true,
25
+ properties: [
26
+ {
27
+ type: 'id-input',
28
+ label: 'tab-reference',
29
+ name: 'reference',
30
+ property: {
31
+ component: 'indoor-map'
32
+ }
33
+ },
34
+ {
35
+ type: 'number',
36
+ label: 'tab-active-index',
37
+ name: 'activeIndex',
38
+ property: {
39
+ min: 0,
40
+ step: 1
41
+ }
42
+ },
43
+ {
44
+ type: 'color',
45
+ label: 'active-fill-style',
46
+ name: 'activeFillStyle',
47
+ property: 'activeFillStyle'
48
+ },
49
+ {
50
+ type: 'color',
51
+ label: 'active-font-color',
52
+ name: 'activeFontColor',
53
+ property: 'activeFontColor'
54
+ },
55
+ {
56
+ type: 'color',
57
+ label: 'active-line-color',
58
+ name: 'activeLineColor',
59
+ property: 'activeLineColor'
60
+ },
61
+ {
62
+ type: 'number',
63
+ label: 'active-line-width',
64
+ name: 'activeLineWidth',
65
+ property: 'activeLineWidth'
66
+ }
67
+ ]
68
+ }
69
+
70
+ export default class Tab extends Container {
71
+ get layout() {
72
+ let { width, height } = this.model
73
+
74
+ if (width >= height) {
75
+ return LinearHorizontalLayout
76
+ } else {
77
+ return LinearVerticalLayout
78
+ }
79
+ }
80
+
81
+ get nature() {
82
+ return NATURE
83
+ }
84
+
85
+ // 컴포넌트를 임의로 추가 및 삭제할 수 있는 지를 지정하는 속성임.
86
+ get focusible() {
87
+ return false
88
+ }
89
+
90
+ get reference() {
91
+ var { reference } = this.model
92
+ if (!reference) return null
93
+
94
+ if (!this._reference) {
95
+ this._reference = this.root.findById(reference)
96
+ if (this._reference) this._reference.on('change', this.onRefChanged, this)
97
+ }
98
+
99
+ return this._reference
100
+ }
101
+
102
+ get labelHeight() {
103
+ var components = this.reference.components.length
104
+ var height = this.model.height
105
+
106
+ return (components > 0 && height / components) || height
107
+ }
108
+
109
+ get activeIndex() {
110
+ return this.get('activeIndex')
111
+ }
112
+
113
+ private _reference: any
114
+
115
+ set reference(reference) {
116
+ if (this.reference) this.reference.off('change', this.onRefChanged, this)
117
+
118
+ this._reference = null
119
+ this.model.reference = reference
120
+ }
121
+
122
+ set activeIndex(index) {
123
+ this.set('activeIndex', index)
124
+ if (this.reference) {
125
+ this.reference.activeIndex = index
126
+ }
127
+ }
128
+
129
+ render(context: CanvasRenderingContext2D) {
130
+ super.render(context)
131
+
132
+ if (this.reference) {
133
+ if (this.size() !== this.reference.size()) this.rebuildTabButtons()
134
+ } else {
135
+ // TODO reference 가 잘못되거나 안되어있다는 경고 의미로 뭔가 그려라..
136
+ var componentsLength = this.components.length
137
+ for (var i = componentsLength - 1; i >= 0; i--) {
138
+ var tabBtn = this.components[i]
139
+ this.removeComponent(tabBtn)
140
+ }
141
+ }
142
+ }
143
+
144
+ postrender(context: CanvasRenderingContext2D) {
145
+ super.postrender(context)
146
+
147
+ if (!this.app.isEditMode) return
148
+
149
+ var { left, top, width, fillStyle } = this.model
150
+
151
+ // 이동 핸들 그리기
152
+ context.beginPath()
153
+
154
+ context.rect(left + width, top, HANDLE_WIDTH, HANDLE_HEIGHT)
155
+
156
+ let color = 255 - (20 % 255)
157
+ context.fillStyle = rgba(color, color, color, 1)
158
+ context.fill()
159
+
160
+ context.closePath()
161
+ }
162
+
163
+ contains(x: number, y: number) {
164
+ if (!this.app.isEditMode) return super.contains(x, y)
165
+
166
+ if (super.contains(x, y)) return true
167
+
168
+ var { left, top, width } = this.bounds
169
+
170
+ var right = left + width
171
+
172
+ var h = HANDLE_HEIGHT
173
+
174
+ return (
175
+ x < Math.max(right + HANDLE_WIDTH, right) &&
176
+ x > Math.min(right + HANDLE_WIDTH, right) &&
177
+ y < Math.max(top + h, top) &&
178
+ y > Math.min(top + h, top)
179
+ )
180
+ }
181
+
182
+ dispose() {
183
+ if (this.reference) this.reference.off('change', this.onRefChanged, this)
184
+
185
+ super.dispose()
186
+ }
187
+
188
+ rebuildTabButtons() {
189
+ var {
190
+ tabIndex = 0,
191
+ left,
192
+ top,
193
+ width,
194
+ height,
195
+ fillStyle,
196
+ activeFillStyle,
197
+ activeLineColor,
198
+ activeLineWidth,
199
+ strokeStyle,
200
+ fontColor,
201
+ activeFontColor,
202
+ fontFamily,
203
+ fontSize,
204
+ lineHeight,
205
+ italic,
206
+ bold,
207
+ lineWidth = 0
208
+ } = this.model
209
+
210
+ var reference = this.reference
211
+ let children = []
212
+
213
+ let components = reference.components
214
+ let label_height = this.labelHeight
215
+
216
+ let componentsLength = this.components.length
217
+
218
+ for (var i = componentsLength - 1; i >= 0; i--) {
219
+ this.removeComponent(this.components[i])
220
+ }
221
+
222
+ for (let i = 0; i < components.length; i++) {
223
+ if (components[i].model.type != 'floor') continue
224
+
225
+ let floorText = components[i].text || ''
226
+
227
+ children.push(
228
+ Model.compile({
229
+ type: 'tab-button',
230
+ index: i,
231
+ text: floorText || String(i + 1),
232
+ fillStyle: fillStyle || 'transparent',
233
+ activeFillStyle: activeFillStyle,
234
+ activeLineColor: activeLineColor,
235
+ activeLineWidth: activeLineWidth,
236
+ fontColor: fontColor,
237
+ activeFontColor: activeFontColor || fontColor,
238
+ fontFamily: fontFamily,
239
+ fontSize: fontSize,
240
+ lineHeight: lineHeight,
241
+ italic: italic,
242
+ bold: bold,
243
+ strokeStyle: strokeStyle,
244
+ lineWidth: lineWidth,
245
+ left: 0,
246
+ top: 0,
247
+ width: width,
248
+ height: height
249
+ })
250
+ )
251
+ }
252
+
253
+ this.add(children)
254
+
255
+ this.reflow()
256
+
257
+ this.activeIndex = this.model.activeIndex || 0
258
+ }
259
+
260
+ setTabButtonsStyle(style: Style) {
261
+ // var {
262
+ // fillStyle,
263
+ // activeFillStyle,
264
+ // fontColor,
265
+ // activeFontColor,
266
+ // strokeStyle,
267
+ // lineWidth = 0,
268
+ // fontFamily,
269
+ // fontSize,
270
+ // lineHeight,
271
+ // italic,
272
+ // bold
273
+ // } = style
274
+
275
+ var children = this.components
276
+
277
+ for (var i in children) {
278
+ var tabBtn = children[i]
279
+ tabBtn.set(style)
280
+ // tabBtn.set({
281
+ // fillStyle: fillStyle,
282
+ // activeFillStyle: activeFillStyle,
283
+ // fontColor: fontColor,
284
+ // activeFontColor: activeFontColor,
285
+ // strokeStyle: strokeStyle,
286
+ // lineWidth: lineWidth,
287
+ // fontFamily: fontFamily,
288
+ // fontSize: fontSize,
289
+ // lineHeight: lineHeight,
290
+ // italic: italic,
291
+ // bold: bold
292
+ // })
293
+ }
294
+ }
295
+
296
+ // reference가 변했을 때 (tab에 변화를 주기위해)
297
+ onRefChanged(after: any, before: any, hint: any) {
298
+ // let sourceIndex = hint.deliverer.indexOf(hint.origin)
299
+ // if(this.components[sourceIndex]) {
300
+ // this.components[sourceIndex].set(after)
301
+ // this.invalidate()
302
+ // }
303
+ }
304
+
305
+ onchange(after: State, before: State) {
306
+ if (after.hasOwnProperty('reference')) {
307
+ this.reference = after.reference
308
+ this.invalidate()
309
+ }
310
+
311
+ // if(after.hasOwnProperty("activeFillStyle")
312
+ // || after.hasOwnProperty("activeFontColor")
313
+ // || after.hasOwnProperty("fillStyle")
314
+ // || after.hasOwnProperty("fontColor")
315
+ // || after.hasOwnProperty("strokeStyle")
316
+ // || after.hasOwnProperty("lineWidth")
317
+ // || after.hasOwnProperty("fontFamily")
318
+ // || after.hasOwnProperty("fontSize")
319
+ // || after.hasOwnProperty("lineHeight")
320
+ // || after.hasOwnProperty("italic")
321
+ // || after.hasOwnProperty("bold")) {
322
+ //
323
+ // }
324
+ this.setTabButtonsStyle(after)
325
+ }
326
+ }
327
+
328
+ Component.register('tab', Tab)
@@ -0,0 +1,3 @@
1
+ import tab from './tab'
2
+
3
+ export default [tab]
@@ -0,0 +1,21 @@
1
+ import icon from '../../assets/tab.png'
2
+
3
+ export default {
4
+ type: 'tab',
5
+ description: 'container tab',
6
+ group: 'container' /* line|shape|textAndMedia|chartAndGauge|table|container|dataSource|IoT|3D|warehouse|form|etc */,
7
+ icon,
8
+ model: {
9
+ type: 'tab',
10
+ left: 100,
11
+ top: 100,
12
+ width: 100,
13
+ height: 400,
14
+ lineWidth: 5,
15
+ fillStyle: 'navy',
16
+ activeFillStyle: 'red',
17
+ strokeStyle: 'white',
18
+ fontColor: 'white'
19
+ },
20
+ about: '/helps/scene/component/tab.md'
21
+ }
@@ -0,0 +1,67 @@
1
+ <!doctype html>
2
+ <!--
3
+ @license
4
+ Copyright © HatioLab Inc. All rights reserved.
5
+ -->
6
+ <html>
7
+ <head>
8
+ <meta charset="utf-8">
9
+ <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
10
+
11
+ <script src="../../webcomponentsjs/webcomponents-lite.js"></script>
12
+ <script src="../../web-component-tester/browser.js"></script>
13
+
14
+ <!-- Step 1: import the element to test -->
15
+ <link rel="import" href="../things-scene-tab.html">
16
+ </head>
17
+ <body>
18
+
19
+ <!-- You can use the document as a place to set up your fixtures. -->
20
+ <test-fixture id="things-scene-tab-fixture">
21
+ <template>
22
+ <things-scene-tab>
23
+ <h2>things-scene-tab</h2>
24
+ </things-scene-tab>
25
+ </template>
26
+ </test-fixture>
27
+
28
+ <script>
29
+ suite('<things-scene-tab>', function() {
30
+
31
+ var myEl;
32
+
33
+ setup(function() {
34
+ myEl = fixture('things-scene-tab-fixture');
35
+ });
36
+
37
+ test('defines the "author" property', function() {
38
+ assert.equal(myEl.author.name, 'Dimitri Glazkov');
39
+ assert.equal(myEl.author.image, 'http://addyosmani.com/blog/wp-content/uploads/2013/04/unicorn.jpg');
40
+ });
41
+
42
+ test('says hello', function() {
43
+ assert.equal(myEl.sayHello(), 'things-scene-tab says, Hello World!');
44
+
45
+ var greetings = myEl.sayHello('greetings Earthlings');
46
+ assert.equal(greetings, 'things-scene-tab says, greetings Earthlings');
47
+ });
48
+
49
+ test('fires lasers', function(done) {
50
+ myEl.addEventListener('things-scene-tab-lasers', function(event) {
51
+ assert.equal(event.detail.sound, 'Pew pew!');
52
+ done();
53
+ });
54
+ myEl.fireLasers();
55
+ });
56
+
57
+ test('distributed children', function() {
58
+ var els = myEl.getContentChildren();
59
+ assert.equal(els.length, 1, 'one distributed node');
60
+ assert.equal(els[0], myEl.querySelector('h2'), 'content distributed correctly');
61
+ });
62
+
63
+ });
64
+ </script>
65
+
66
+ </body>
67
+ </html>
@@ -0,0 +1,22 @@
1
+ <!doctype html>
2
+ <!--
3
+ @license
4
+ Copyright © HatioLab Inc. All rights reserved.
5
+ -->
6
+ <html><head>
7
+ <meta charset="utf-8">
8
+ <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
9
+
10
+ <script src="../../webcomponentsjs/webcomponents-lite.js"></script>
11
+ <script src="../../web-component-tester/browser.js"></script>
12
+ </head>
13
+ <body>
14
+ <script>
15
+ // Load and run all tests (.html, .js):
16
+ WCT.loadSuites([
17
+ 'basic-test.html',
18
+ 'basic-test.html?dom=shadow'
19
+ ]);
20
+ </script>
21
+
22
+ </body></html>
@@ -0,0 +1,5 @@
1
+ import templates from './dist/templates';
2
+
3
+ export default {
4
+ templates
5
+ };
package/tsconfig.json ADDED
@@ -0,0 +1,22 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es2018",
4
+ "module": "esnext",
5
+ "moduleResolution": "node",
6
+ "noEmitOnError": true,
7
+ "lib": ["es2017", "dom"],
8
+ "strict": true,
9
+ "esModuleInterop": false,
10
+ "allowSyntheticDefaultImports": true,
11
+ "experimentalDecorators": true,
12
+ "importHelpers": true,
13
+ "outDir": "dist",
14
+ "sourceMap": true,
15
+ "inlineSources": true,
16
+ "rootDir": "src",
17
+ "declaration": true,
18
+ "incremental": true,
19
+ "types": ["node"]
20
+ },
21
+ "include": ["**/*.ts", "*.d.ts"]
22
+ }
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","./@types/global/index.d.ts","../../node_modules/tslib/tslib.d.ts","../../node_modules/@types/lodash/common/common.d.ts","../../node_modules/@types/lodash/common/array.d.ts","../../node_modules/@types/lodash/common/collection.d.ts","../../node_modules/@types/lodash/common/date.d.ts","../../node_modules/@types/lodash/common/function.d.ts","../../node_modules/@types/lodash/common/lang.d.ts","../../node_modules/@types/lodash/common/math.d.ts","../../node_modules/@types/lodash/common/number.d.ts","../../node_modules/@types/lodash/common/object.d.ts","../../node_modules/@types/lodash/common/seq.d.ts","../../node_modules/@types/lodash/common/string.d.ts","../../node_modules/@types/lodash/common/util.d.ts","../../node_modules/@types/lodash/index.d.ts","../../node_modules/@hatiolab/things-scene/things-scene.d.ts","./src/tab.ts","./src/index.ts","./src/tab-button.ts","./src/templates/tab.ts","./src/templates/index.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"6adbf5efd0e374ff5f427a4f26a5a413e9734eee5067a0e86da69aea41910b52","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940",{"version":"abba1071bfd89e55e88a054b0c851ea3e8a494c340d0f3fab19eb18f6afb0c9e","affectsGlobalScope":true},{"version":"d8996609230d17e90484a2dd58f22668f9a05a3bfe00bfb1d6271171e54a31fb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"4378fc8122ec9d1a685b01eb66c46f62aba6b239ca7228bb6483bcf8259ee493","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"1b3fe904465430e030c93239a348f05e1be80640d91f2f004c3512c2c2c89f34","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"d071129cba6a5f2700be09c86c07ad2791ab67d4e5ed1eb301d6746c62745ea4","affectsGlobalScope":true},{"version":"10bbdc1981b8d9310ee75bfac28ee0477bb2353e8529da8cff7cb26c409cb5e8","affectsGlobalScope":true},"c4f5f288a2b8dcfb6183e29612ec26b7a049314a6a10b7e6e700a8307077455a","12f4cfe2fe60b810c3174537bc2ddb20c1067b7768643d12cb1266fd183afb75","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","378df8bbbb9e3f6fca05d58f644aab538e1062eab5e778fb0b83d41125df246d","d88a479cccf787b4aa82362150fbeba5211a32dbfafa7b92ba6995ecaf9a1a89","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","c24ad9be9adf28f0927e3d9d9e9cec1c677022356f241ccbbfb97bfe8fb3d1a1","0ec0998e2d085e8ea54266f547976ae152c9dd6cdb9ac4d8a520a230f5ebae84","9364c7566b0be2f7b70ff5285eb34686f83ccb01bda529b82d23b2a844653bfb","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","ae9930989ed57478eb03b9b80ad3efa7a3eacdfeff0f78ecf7894c4963a64f93","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3e59f00ab03c33717b3130066d4debb272da90eeded4935ff0604c2bc25a5cae","6ac6f24aff52e62c3950461aa17eab26e3a156927858e6b654baef0058b4cd1e",{"version":"0714e2046df66c0e93c3330d30dbc0565b3e8cd3ee302cf99e4ede6220e5fec8","affectsGlobalScope":true},"a7970032f227e550a42369401c1b222c8177740e2650cab9c2e6a0ed15a6e68f",{"version":"1270fc7297d47d0ef47ad22c6556683cc1bbba788b39d48b14f4c8534144eb42","signature":"193a9c5bcc28e89df8577dc36ebd9534f44dc5e8b481d089523544f2e52e90c3"},{"version":"c2cd79014078684ed0b8be8920b4ca097681aacca64587766e41dbae6e30102b","signature":"849943855527ae0732ace157bc5d80d27dfb224e9732807b20fd28fe686f68d7"},{"version":"1a23b181eb0c09725d1cd9696c13105a9f054a757eadd39c42de8157fd282d71","signature":"1e29443446bc89c0d939030c3c55e8476a81f64da3fa633f108370bb9ef56f39"},"5093c3946a00b1c18cb9032f5e59933b085a4b1f56e3c4baefbc13a783ce7504","09c974d941b74155ef9bfb346688bc2ac74dcb496724c35d63aa2b97c3dec097","0d5a2ee1fdfa82740e0103389b9efd6bfe145a20018a2da3c02b89666181f4d9","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"92d63add669d18ebc349efbacd88966d6f2ccdddfb1b880b2db98ae3aa7bf7c4","affectsGlobalScope":true},"ccc94049a9841fe47abe5baef6be9a38fc6228807974ae675fb15dc22531b4be",{"version":"9acfe4d1ff027015151ce81d60797b04b52bffe97ad8310bb0ec2e8fd61e1303","affectsGlobalScope":true},"95843d5cfafced8f3f8a5ce57d2335f0bcd361b9483587d12a25e4bd403b8216","afc6e96061af46bcff47246158caee7e056f5288783f2d83d6858cd25be1c565",{"version":"34f5bcac12b36d70304b73de5f5aab3bb91bd9919f984be80579ebcad03a624e","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","2f520601649a893e6a49a8851ebfcf4be8ce090dc1281c2a08a871cb04e8251f","f50c975ab7b50e25a69e3d8a3773894125b44e9698924105f23b812bf7488baf","2b8c764f856a1dd0a9a2bf23e5efddbff157de8138b0754010be561ae5fcaa90","76650408392bf49a8fbf3e2b6b302712a92d76af77b06e2da1cc8077359c4409","0af3121e68297b2247dd331c0d24dba599e50736a7517a5622d5591aae4a3122","6972fca26f6e9bd56197568d4379f99071a90766e06b4fcb5920a0130a9202be",{"version":"4a2628e95962c8ab756121faa3ac2ed348112ff7a87b5c286dd2cc3326546b4c","affectsGlobalScope":true},"80793b2277f31baa199234daed806fff0fb11491d1ebd3357e520c3558063f00","a049a59a02009fc023684fcfaf0ac526fe36c35dcc5d2b7d620c1750ba11b083","5533392c50c51b1a5c32b89f13145db929c574ef1c5949cf67a074a05ea107d9","b287b810b5035d5685f1df6e1e418f1ca452a3ed4f59fd5cc081dbf2045f0d9b","4b9a003b5c556c96784132945bb41c655ea11273b1917f5c8d0c154dd5fd20dd","a458dc78104cc80048ac24fdc02fe6dce254838094c2f25641b3f954d9721241",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"902cd98bf46e95caf4118a0733fb801e9e90eec3edaed6abdad77124afec9ca2","abc1c425b2ad6720433f40f1877abfa4223f0f3dd486c9c28c492179ca183cb6","cd4854d38f4eb5592afd98ab95ca17389a7dfe38013d9079e802d739bdbcc939","94eed4cc2f5f658d5e229ff1ccd38860bddf4233e347bf78edd2154dee1f2b99",{"version":"bd1a08e30569b0fb2f0b21035eb9b039871f68faa9b98accf847e9c878c5e0a9","affectsGlobalScope":true},"9f1069b9e2c051737b1f9b4f1baf50e4a63385a6a89c32235549ae87fc3d5492","ee18f2da7a037c6ceeb112a084e485aead9ea166980bf433474559eac1b46553","29c2706fa0cc49a2bd90c83234da33d08bb9554ecec675e91c1f85087f5a5324","0acbf26bf958f9e80c1ffa587b74749d2697b75b484062d36e103c137c562bc3","d7838022c7dab596357a9604b9c6adffe37dc34085ce0779c958ce9545bd7139","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"a7971f9fb2a32ec7788ec6cda9d7a33c02023dfe9a62db2030ad1359649d8050","c33a6ea7147af60d8e98f1ac127047f4b0d4e2ce28b8f08ff3de07ca7cc00637",{"version":"b42b47e17b8ece2424ae8039feb944c2e3ba4b262986aebd582e51efbdca93dc","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","2408611d9b4146e35d1dbd1f443ccd8e187c74614a54b80300728277529dbf11","998a3de5237518c0b3ac00a11b3b4417affb008aa20aedee52f3fdae3cb86151","ad41008ffe077206e1811fc873f4d9005b5fd7f6ab52bb6118fef600815a5cb4","d88ecca73348e7c337541c4b8b60a50aca5e87384f6b8a422fc6603c637e4c21","badae0df9a8016ac36994b0a0e7b82ba6aaa3528e175a8c3cb161e4683eec03e","c3db860bcaaaeb3bbc23f353bbda1f8ab82756c8d5e973bebb3953cb09ea68f2","235a53595bd20b0b0eeb1a29cb2887c67c48375e92f03749b2488fbd46d0b1a0","bc09393cd4cd13f69cf1366d4236fbae5359bb550f0de4e15767e9a91d63dfb1","9c266243b01545e11d2733a55ad02b4c00ecdbda99c561cd1674f96e89cdc958","c71155c05fc76ff948a4759abc1cb9feec036509f500174bc18dad4c7827a60c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"1cdb8f094b969dcc183745dc88404e2d8fcf2a858c6e7cc2441011476573238e"],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"esModuleInterop":false,"experimentalDecorators":true,"importHelpers":true,"inlineSources":true,"module":99,"noEmitOnError":true,"outDir":"./dist","rootDir":"./src","sourceMap":true,"strict":true,"target":5},"fileIdsList":[[54,104],[42,44,45,46,47,48,49,50,51,52,53,54,104],[42,43,45,46,47,48,49,50,51,52,53,54,104],[43,44,45,46,47,48,49,50,51,52,53,54,104],[42,43,44,46,47,48,49,50,51,52,53,54,104],[42,43,44,45,47,48,49,50,51,52,53,54,104],[42,43,44,45,46,48,49,50,51,52,53,54,104],[42,43,44,45,46,47,49,50,51,52,53,54,104],[42,43,44,45,46,47,48,50,51,52,53,54,104],[42,43,44,45,46,47,48,49,51,52,53,54,104],[42,43,44,45,46,47,48,49,50,52,53,54,104],[42,43,44,45,46,47,48,49,50,51,53,54,104],[42,43,44,45,46,47,48,49,50,51,52,54,104],[42,43,44,45,46,47,48,49,50,51,52,53,104],[61,104],[64,104],[65,70,104],[66,76,77,84,93,103,104],[66,67,76,84,104],[68,104],[69,70,77,85,104],[70,93,100,104],[71,73,76,84,104],[72,104],[73,74,104],[75,76,104],[76,104],[76,77,78,93,103,104],[76,77,78,93,104],[104],[79,84,93,103,104],[76,77,79,80,84,93,100,103,104],[79,81,93,100,103,104],[61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110],[76,82,104],[83,103,104],[73,76,84,93,104],[85,104],[86,104],[64,87,104],[88,102,104,108],[89,104],[90,104],[76,91,104],[91,92,104,106],[76,93,94,95,104],[93,95,104],[93,94,104],[96,104],[97,104],[76,98,99,104],[98,99,104],[70,84,100,104],[101,104],[84,102,104],[65,79,90,103,104],[70,104],[93,104,105],[104,106],[104,107],[65,70,76,78,87,93,103,104,106,108],[93,104,109],[41,56,104],[41,55,56,104],[41,55,104],[41,59,104],[40,41,104],[56],[55,56],[55]],"referencedMap":[[55,1],[43,2],[44,3],[42,4],[45,5],[46,6],[47,7],[48,8],[49,9],[50,10],[51,11],[52,12],[53,13],[54,14],[61,15],[62,15],[64,16],[65,17],[66,18],[67,19],[68,20],[69,21],[70,22],[71,23],[72,24],[73,25],[74,25],[75,26],[76,27],[77,28],[78,29],[63,30],[110,30],[79,31],[80,32],[81,33],[111,34],[82,35],[83,36],[84,37],[85,38],[86,39],[87,40],[88,41],[89,42],[90,43],[91,44],[92,45],[93,46],[95,47],[94,48],[96,49],[97,50],[98,51],[99,52],[100,53],[101,54],[102,55],[103,56],[104,57],[105,58],[106,59],[107,60],[108,61],[109,62],[41,30],[8,30],[10,30],[9,30],[2,30],[11,30],[12,30],[13,30],[14,30],[15,30],[16,30],[17,30],[18,30],[3,30],[4,30],[22,30],[19,30],[20,30],[21,30],[23,30],[24,30],[25,30],[5,30],[26,30],[27,30],[28,30],[29,30],[6,30],[30,30],[31,30],[32,30],[33,30],[7,30],[38,30],[34,30],[35,30],[36,30],[37,30],[1,30],[39,30],[40,30],[57,63],[58,64],[56,65],[60,66],[59,67]],"exportedModulesMap":[[55,1],[43,2],[44,3],[42,4],[45,5],[46,6],[47,7],[48,8],[49,9],[50,10],[51,11],[52,12],[53,13],[54,14],[61,15],[62,15],[64,16],[65,17],[66,18],[67,19],[68,20],[69,21],[70,22],[71,23],[72,24],[73,25],[74,25],[75,26],[76,27],[77,28],[78,29],[63,30],[110,30],[79,31],[80,32],[81,33],[111,34],[82,35],[83,36],[84,37],[85,38],[86,39],[87,40],[88,41],[89,42],[90,43],[91,44],[92,45],[93,46],[95,47],[94,48],[96,49],[97,50],[98,51],[99,52],[100,53],[101,54],[102,55],[103,56],[104,57],[105,58],[106,59],[107,60],[108,61],[109,62],[41,30],[8,30],[10,30],[9,30],[2,30],[11,30],[12,30],[13,30],[14,30],[15,30],[16,30],[17,30],[18,30],[3,30],[4,30],[22,30],[19,30],[20,30],[21,30],[23,30],[24,30],[25,30],[5,30],[26,30],[27,30],[28,30],[29,30],[6,30],[30,30],[31,30],[32,30],[33,30],[7,30],[38,30],[34,30],[35,30],[36,30],[37,30],[1,30],[39,30],[40,30],[57,68],[58,69],[56,70],[60,66],[59,67]],"semanticDiagnosticsPerFile":[55,43,44,42,45,46,47,48,49,50,51,52,53,54,61,62,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,63,110,79,80,81,111,82,83,84,85,86,87,88,89,90,91,92,93,95,94,96,97,98,99,100,101,102,103,104,105,106,107,108,109,41,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,30,31,32,33,7,38,34,35,36,37,1,39,40,57,58,56,60,59]},"version":"4.5.2"}