@teleporthq/teleport-shared 0.43.57 → 0.43.60

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 (41) hide show
  1. package/__tests__/utils/ast-effect-cleanup.ts +312 -0
  2. package/__tests__/utils/string-utils.ts +16 -0
  3. package/dist/cjs/index.d.ts +3 -1
  4. package/dist/cjs/index.d.ts.map +1 -1
  5. package/dist/cjs/index.js +5 -1
  6. package/dist/cjs/index.js.map +1 -1
  7. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  8. package/dist/cjs/utils/ast-effect-cleanup.d.ts +54 -0
  9. package/dist/cjs/utils/ast-effect-cleanup.d.ts.map +1 -0
  10. package/dist/cjs/utils/ast-effect-cleanup.js +358 -0
  11. package/dist/cjs/utils/ast-effect-cleanup.js.map +1 -0
  12. package/dist/cjs/utils/product-discounts.d.ts +27 -0
  13. package/dist/cjs/utils/product-discounts.d.ts.map +1 -0
  14. package/dist/cjs/utils/product-discounts.js +31 -0
  15. package/dist/cjs/utils/product-discounts.js.map +1 -0
  16. package/dist/cjs/utils/string-utils.d.ts +1 -0
  17. package/dist/cjs/utils/string-utils.d.ts.map +1 -1
  18. package/dist/cjs/utils/string-utils.js +9 -1
  19. package/dist/cjs/utils/string-utils.js.map +1 -1
  20. package/dist/esm/index.d.ts +3 -1
  21. package/dist/esm/index.d.ts.map +1 -1
  22. package/dist/esm/index.js +3 -1
  23. package/dist/esm/index.js.map +1 -1
  24. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  25. package/dist/esm/utils/ast-effect-cleanup.d.ts +54 -0
  26. package/dist/esm/utils/ast-effect-cleanup.d.ts.map +1 -0
  27. package/dist/esm/utils/ast-effect-cleanup.js +330 -0
  28. package/dist/esm/utils/ast-effect-cleanup.js.map +1 -0
  29. package/dist/esm/utils/product-discounts.d.ts +27 -0
  30. package/dist/esm/utils/product-discounts.d.ts.map +1 -0
  31. package/dist/esm/utils/product-discounts.js +27 -0
  32. package/dist/esm/utils/product-discounts.js.map +1 -0
  33. package/dist/esm/utils/string-utils.d.ts +1 -0
  34. package/dist/esm/utils/string-utils.d.ts.map +1 -1
  35. package/dist/esm/utils/string-utils.js +7 -0
  36. package/dist/esm/utils/string-utils.js.map +1 -1
  37. package/package.json +3 -3
  38. package/src/index.ts +4 -0
  39. package/src/utils/ast-effect-cleanup.ts +370 -0
  40. package/src/utils/product-discounts.ts +122 -0
  41. package/src/utils/string-utils.ts +8 -0
@@ -0,0 +1,312 @@
1
+ import generate from '@babel/generator'
2
+ import { parse } from '@babel/parser'
3
+ import * as types from '@babel/types'
4
+ import { ASTEffectCleanup } from '../../src'
5
+
6
+ const { EFFECT_HOOK_NAMES, isProvablyNotAFunction, normalizeEffectCleanups } = ASTEffectCleanup
7
+
8
+ const parseFile = (code: string): types.File =>
9
+ parse(code, { sourceType: 'module', plugins: ['jsx'] })
10
+
11
+ const print = (node: types.Node): string => generate(node).code
12
+
13
+ /** Normalizes `code` and reports both the repair count and the printed result. */
14
+ const normalize = (code: string): { repaired: number; code: string } => {
15
+ const file = parseFile(code)
16
+ const repaired = normalizeEffectCleanups(file)
17
+ return { repaired, code: print(file) }
18
+ }
19
+
20
+ /**
21
+ * A single expression, parsed in parentheses so a bare string is an expression
22
+ * rather than a module directive and `function`/`class` read as expressions.
23
+ */
24
+ const expressionOf = (code: string): types.Expression => {
25
+ const file = parse(`(${code})`, {
26
+ sourceType: 'module',
27
+ plugins: ['jsx'],
28
+ allowAwaitOutsideFunction: true,
29
+ })
30
+ return (file.program.body[0] as types.ExpressionStatement).expression
31
+ }
32
+
33
+ /**
34
+ * Runs an effect callback the way React does — call it, then call whatever it
35
+ * returned as the cleanup — and reports what happened. This is the behaviour
36
+ * the whole module exists to protect: React stores an effect's return value
37
+ * and invokes it blindly on unmount.
38
+ */
39
+ const mountAndUnmount = (
40
+ callbackSource: string
41
+ ): { threw: string | null; cleanupRan: boolean; effectRan: boolean } => {
42
+ let effectRan = false
43
+ let cleanupRan = false
44
+ // tslint:disable-next-line:function-constructor
45
+ const factory = new Function('markEffect', 'markCleanup', `return (${callbackSource})`) as (
46
+ markEffect: () => void,
47
+ markCleanup: () => void
48
+ ) => () => unknown
49
+ const callback = factory(
50
+ () => {
51
+ effectRan = true
52
+ },
53
+ () => {
54
+ cleanupRan = true
55
+ }
56
+ )
57
+
58
+ const destroy = callback()
59
+ if (destroy === undefined) {
60
+ return { threw: null, cleanupRan, effectRan }
61
+ }
62
+ try {
63
+ // Exactly what react-dom's `safelyCallDestroy` does with the value.
64
+ ;(destroy as () => void)()
65
+ } catch (error) {
66
+ return { threw: (error as Error).message, cleanupRan, effectRan }
67
+ }
68
+ return { threw: null, cleanupRan, effectRan }
69
+ }
70
+
71
+ /** The first effect callback of a normalized program, as source text. */
72
+ const normalizedCallback = (code: string): string => {
73
+ const file = parseFile(code)
74
+ normalizeEffectCleanups(file)
75
+ let callback: types.Node | null = null
76
+ types.traverseFast(file, (node) => {
77
+ if (callback || node.type !== 'CallExpression') {
78
+ return
79
+ }
80
+ const { callee } = node
81
+ if (callee.type === 'Identifier' && EFFECT_HOOK_NAMES.has(callee.name)) {
82
+ callback = node.arguments[0]
83
+ }
84
+ })
85
+ return print(callback as unknown as types.Node)
86
+ }
87
+
88
+ describe('isProvablyNotAFunction', () => {
89
+ it('proves the shapes whose result type the language fixes', () => {
90
+ const provable = [
91
+ "'text'",
92
+ '42',
93
+ 'true',
94
+ 'null',
95
+ // tslint:disable-next-line:no-invalid-template-strings
96
+ '`a${b}c`',
97
+ '({ a: 1 })',
98
+ '[1, 2]',
99
+ '/re/g',
100
+ 'typeof value',
101
+ 'void 0',
102
+ '!value',
103
+ 'a + b',
104
+ 'a instanceof B',
105
+ 'counter++',
106
+ "(sideEffect(), 'done')",
107
+ "import('@google/model-viewer')",
108
+ ]
109
+ provable.forEach((source) => {
110
+ expect({ source, provable: isProvablyNotAFunction(expressionOf(source)) }).toEqual({
111
+ source,
112
+ provable: true,
113
+ })
114
+ })
115
+ })
116
+
117
+ it('refuses to guess for anything that can still yield a function', () => {
118
+ const unknown = [
119
+ 'subscribe()',
120
+ 'a || b',
121
+ 'cond ? a : b',
122
+ 'new Cleanup()',
123
+ 'await promise',
124
+ 'handlers.stop',
125
+ '() => stop()',
126
+ 'function () {}',
127
+ 'class Cleanup {}',
128
+ '(sideEffect(), makeCleanup())',
129
+ ]
130
+ unknown.forEach((source) => {
131
+ expect({ source, provable: isProvablyNotAFunction(expressionOf(source)) }).toEqual({
132
+ source,
133
+ provable: false,
134
+ })
135
+ })
136
+ })
137
+ })
138
+
139
+ describe('normalizeEffectCleanups — the shape that shipped', () => {
140
+ it('stops a concise dynamic import from being handed back as the cleanup', () => {
141
+ const before = "() => import('@google/model-viewer')"
142
+
143
+ const { repaired, code } = normalize(`useEffect(${before}, [])`)
144
+ expect(repaired).toBe(1)
145
+ expect(code).toContain("import('@google/model-viewer')")
146
+ expect(code).not.toMatch(/useEffect\(\(\) => import/)
147
+
148
+ // A real `import()` cannot be evaluated inside jest's vm, so the same
149
+ // shape is exercised with the value it produces: a Promise. Before the
150
+ // repair React's `safelyCallDestroy` calls it and throws — after it, the
151
+ // import still runs and nothing is handed back.
152
+ const asPromise = (source: string) =>
153
+ source.replace("import('@google/model-viewer')", '(markEffect(), Promise.resolve())')
154
+ expect(mountAndUnmount(asPromise(before)).threw).toMatch(/is not a function/)
155
+ expect(mountAndUnmount(asPromise(normalizedCallback(`useEffect(${before}, [])`)))).toEqual({
156
+ threw: null,
157
+ cleanupRan: false,
158
+ effectRan: true,
159
+ })
160
+ })
161
+
162
+ it('leaves an effect that already returns a real cleanup untouched', () => {
163
+ const source = [
164
+ 'useEffect(() => {',
165
+ ' const timer = setTimeout(run, 300)',
166
+ ' return () => clearTimeout(timer)',
167
+ '}, [query])',
168
+ ].join('\n')
169
+ const { repaired, code } = normalize(source)
170
+ expect(repaired).toBe(0)
171
+ expect(code).toBe(print(parseFile(source)))
172
+ })
173
+
174
+ it('leaves a call-returned cleanup alone — an explicit return states intent', () => {
175
+ const source = 'useEffect(() => {\n return setupLifecycleTriggers()\n}, [])'
176
+ expect(normalize(source).repaired).toBe(0)
177
+ })
178
+
179
+ it('leaves a concise arrow that returns an arrow alone', () => {
180
+ const source = 'useEffect(() => () => unsubscribe(), [])'
181
+ expect(normalize(source).repaired).toBe(0)
182
+ })
183
+ })
184
+
185
+ describe('normalizeEffectCleanups — concise bodies', () => {
186
+ it('drops a provably non-callable value outright, with no guard left behind', () => {
187
+ const { repaired, code } = normalize('useEffect(() => ({ mounted: true }), [])')
188
+ expect(repaired).toBe(1)
189
+ expect(code).toContain('mounted: true')
190
+ expect(code).not.toContain('return')
191
+ expect(code).not.toContain('__tqEffectCleanup')
192
+ })
193
+
194
+ it('gates an unprovable value so a real cleanup survives and junk does not', () => {
195
+ const callback = normalizedCallback('useEffect(() => subscribe(), [])')
196
+ expect(callback).toContain('__tqEffectCleanup')
197
+
198
+ const keepsCleanup = mountAndUnmount(
199
+ callback.replace('subscribe()', '(markEffect(), markCleanup)')
200
+ )
201
+ expect(keepsCleanup).toEqual({ threw: null, cleanupRan: true, effectRan: true })
202
+
203
+ const swallowsJunk = mountAndUnmount(
204
+ callback.replace('subscribe()', '(markEffect(), Promise.resolve())')
205
+ )
206
+ expect(swallowsJunk).toEqual({ threw: null, cleanupRan: false, effectRan: true })
207
+ })
208
+
209
+ it('picks a free name so the guard cannot shadow what the value reads', () => {
210
+ const callback = normalizedCallback('useEffect(() => subscribe(__tqEffectCleanup), [])')
211
+ expect(callback).toContain('const __tqEffectCleanup2 =')
212
+ expect(callback).toContain('subscribe(__tqEffectCleanup)')
213
+ })
214
+ })
215
+
216
+ describe('normalizeEffectCleanups — block bodies', () => {
217
+ it('keeps an early exit while dropping the value it returned', () => {
218
+ const { repaired, code } = normalize(
219
+ ['useEffect(() => {', ' if (skip) return {}', ' run()', '}, [])'].join('\n')
220
+ )
221
+ expect(repaired).toBe(1)
222
+ expect(code).toContain('({});')
223
+ expect(code).toContain('return;')
224
+
225
+ const callback = normalizedCallback(
226
+ ['useEffect(() => {', ' if (true) return {}', ' markEffect()', '}, [])'].join('\n')
227
+ )
228
+ // The early exit still happens — the statement after it never runs.
229
+ expect(mountAndUnmount(callback)).toEqual({ threw: null, cleanupRan: false, effectRan: false })
230
+ })
231
+
232
+ it('repairs returns nested in control flow, including bare ones', () => {
233
+ const { repaired, code } = normalize(
234
+ [
235
+ 'useEffect(() => {',
236
+ ' try {',
237
+ ' for (const item of items) {',
238
+ ' if (item) return [item]',
239
+ ' }',
240
+ ' } catch (error) {',
241
+ " return 'failed'",
242
+ ' }',
243
+ '}, [items])',
244
+ ].join('\n')
245
+ )
246
+ expect(repaired).toBe(2)
247
+ expect(code).not.toMatch(/return \[item\]/)
248
+ expect(code).not.toMatch(/return 'failed'/)
249
+ })
250
+
251
+ it('never touches the returns of a function nested inside the callback', () => {
252
+ const source = [
253
+ 'useEffect(() => {',
254
+ ' const compute = () => ({ total: 1 })',
255
+ ' window.compute = compute',
256
+ '}, [])',
257
+ ].join('\n')
258
+ expect(normalize(source).repaired).toBe(0)
259
+ })
260
+ })
261
+
262
+ describe('normalizeEffectCleanups — callback kinds', () => {
263
+ it('wraps an async callback so the Promise never reaches React', () => {
264
+ const { repaired, code } = normalize('useEffect(async () => {\n await load()\n}, [])')
265
+ expect(repaired).toBe(1)
266
+ expect(code).toContain('(async () => {')
267
+ expect(code).toContain('})();')
268
+
269
+ const callback = normalizedCallback('useEffect(async () => {\n markEffect()\n}, [])')
270
+ expect(mountAndUnmount(callback)).toEqual({ threw: null, cleanupRan: false, effectRan: true })
271
+ })
272
+
273
+ it('covers useLayoutEffect, useInsertionEffect and the React namespace', () => {
274
+ expect(normalize('useLayoutEffect(() => {\n measure()\n}, [])').repaired).toBe(0)
275
+ expect(normalize('useLayoutEffect(() => ({ x: 1 }), [])').repaired).toBe(1)
276
+ expect(normalize("useInsertionEffect(() => 'css', [])").repaired).toBe(1)
277
+ expect(normalize("React.useEffect(() => import('lib'), [])").repaired).toBe(1)
278
+ // A same-named method on an unrelated object has no cleanup contract.
279
+ expect(normalize('scheduler.useEffect(() => ({ id: 1 }), [])').repaired).toBe(0)
280
+ })
281
+
282
+ it('ignores hooks it cannot inspect and hooks that are not effects', () => {
283
+ expect(normalize('useEffect(handleMount, [])').repaired).toBe(0)
284
+ expect(normalize('useMemo(() => ({ a: 1 }), [])').repaired).toBe(0)
285
+ expect(normalize('useCallback(() => ({ a: 1 }), [])').repaired).toBe(0)
286
+ // A generator body does not run when the function is called, so there is
287
+ // no faithful repair — it is deliberately left as written.
288
+ expect(normalize('useEffect(function* () {\n yield 1\n}, [])').repaired).toBe(0)
289
+ })
290
+
291
+ it('reaches effects nested inside other effects and inside components', () => {
292
+ const { repaired } = normalize(
293
+ [
294
+ 'const Page = () => {',
295
+ " useEffect(() => import('a'), [])",
296
+ ' useEffect(() => {',
297
+ " useEffect(() => import('b'), [])",
298
+ ' }, [])',
299
+ ' return null',
300
+ '}',
301
+ ].join('\n')
302
+ )
303
+ expect(repaired).toBe(2)
304
+ })
305
+
306
+ it('is a no-op on an AST with no effects at all', () => {
307
+ const source = 'const total = items.reduce((sum, item) => sum + item, 0)'
308
+ const { repaired, code } = normalize(source)
309
+ expect(repaired).toBe(0)
310
+ expect(code).toBe(print(parseFile(source)))
311
+ })
312
+ })
@@ -7,6 +7,7 @@ import {
7
7
  dashCaseToCamelCase,
8
8
  removeIllegalCharacters,
9
9
  encode,
10
+ sanitizeTranslationKey,
10
11
  } from '../../src/utils/string-utils'
11
12
 
12
13
  describe('slugify tests', () => {
@@ -186,3 +187,18 @@ describe('encode', () => {
186
187
  expect(encode('<p>test</p>')).toBe('&lt;p&gt;test&lt;/p&gt;')
187
188
  })
188
189
  })
190
+
191
+ describe('sanitizeTranslationKey', () => {
192
+ it('strips the `.` next-intl reads as a namespace separator', () => {
193
+ // Keys minted from user text — `2. Definitions_UUSf6E` made next-intl
194
+ // reject the whole messages file at runtime.
195
+ expect(sanitizeTranslationKey('2. Definitions_UUSf6E')).toBe('2_ Definitions_UUSf6E')
196
+ expect(sanitizeTranslationKey('Please read these Terms..._k384Ak')).toBe(
197
+ 'Please read these Terms____k384Ak'
198
+ )
199
+ })
200
+
201
+ it('leaves already-safe keys untouched', () => {
202
+ expect(sanitizeTranslationKey('static_a1b2c3')).toBe('static_a1b2c3')
203
+ })
204
+ })
@@ -5,12 +5,14 @@ import * as GenericUtils from './utils/generic';
5
5
  import * as JSIdentifiers from './utils/js-identifiers';
6
6
  import * as ASTScope from './utils/ast-scope';
7
7
  import * as ASTStatementOrder from './utils/ast-statement-order';
8
+ import * as ASTEffectCleanup from './utils/ast-effect-cleanup';
8
9
  import * as RoutePaths from './utils/route-paths';
9
10
  import * as LayoutTopology from './utils/layout-topology';
10
11
  import * as HtmlContentModel from './utils/html-content-model';
11
12
  import * as StyleDeclarations from './utils/style-declarations';
12
13
  import * as StorefrontTax from './utils/storefront-tax';
14
+ import * as ProductDiscounts from './utils/product-discounts';
13
15
  import * as EmailDate from './utils/email-date';
14
16
  import * as DataCache from './cache';
15
- export { Constants, StringUtils, UIDLUtils, GenericUtils, JSIdentifiers, ASTScope, ASTStatementOrder, RoutePaths, LayoutTopology, HtmlContentModel, StyleDeclarations, StorefrontTax, EmailDate, DataCache, };
17
+ export { Constants, StringUtils, UIDLUtils, GenericUtils, JSIdentifiers, ASTScope, ASTStatementOrder, ASTEffectCleanup, RoutePaths, LayoutTopology, HtmlContentModel, StyleDeclarations, StorefrontTax, ProductDiscounts, EmailDate, DataCache, };
16
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,WAAW,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAA;AAC/C,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAA;AAC7C,OAAO,KAAK,iBAAiB,MAAM,6BAA6B,CAAA;AAChE,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAA;AACzD,OAAO,KAAK,gBAAgB,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,iBAAiB,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,SAAS,CAAA;AAEpC,OAAO,EACL,SAAS,EACT,WAAW,EACX,SAAS,EACT,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,SAAS,GACV,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,WAAW,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAA;AAC/C,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAA;AAC7C,OAAO,KAAK,iBAAiB,MAAM,6BAA6B,CAAA;AAChE,OAAO,KAAK,gBAAgB,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAA;AACzD,OAAO,KAAK,gBAAgB,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,iBAAiB,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,gBAAgB,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,SAAS,CAAA;AAEpC,OAAO,EACL,SAAS,EACT,WAAW,EACX,SAAS,EACT,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,SAAS,EACT,SAAS,GACV,CAAA"}
package/dist/cjs/index.js CHANGED
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.DataCache = exports.EmailDate = exports.StorefrontTax = exports.StyleDeclarations = exports.HtmlContentModel = exports.LayoutTopology = exports.RoutePaths = exports.ASTStatementOrder = exports.ASTScope = exports.JSIdentifiers = exports.GenericUtils = exports.UIDLUtils = exports.StringUtils = exports.Constants = void 0;
26
+ exports.DataCache = exports.EmailDate = exports.ProductDiscounts = exports.StorefrontTax = exports.StyleDeclarations = exports.HtmlContentModel = exports.LayoutTopology = exports.RoutePaths = exports.ASTEffectCleanup = exports.ASTStatementOrder = exports.ASTScope = exports.JSIdentifiers = exports.GenericUtils = exports.UIDLUtils = exports.StringUtils = exports.Constants = void 0;
27
27
  var Constants = __importStar(require("./constants"));
28
28
  exports.Constants = Constants;
29
29
  var StringUtils = __importStar(require("./utils/string-utils"));
@@ -38,6 +38,8 @@ var ASTScope = __importStar(require("./utils/ast-scope"));
38
38
  exports.ASTScope = ASTScope;
39
39
  var ASTStatementOrder = __importStar(require("./utils/ast-statement-order"));
40
40
  exports.ASTStatementOrder = ASTStatementOrder;
41
+ var ASTEffectCleanup = __importStar(require("./utils/ast-effect-cleanup"));
42
+ exports.ASTEffectCleanup = ASTEffectCleanup;
41
43
  var RoutePaths = __importStar(require("./utils/route-paths"));
42
44
  exports.RoutePaths = RoutePaths;
43
45
  var LayoutTopology = __importStar(require("./utils/layout-topology"));
@@ -48,6 +50,8 @@ var StyleDeclarations = __importStar(require("./utils/style-declarations"));
48
50
  exports.StyleDeclarations = StyleDeclarations;
49
51
  var StorefrontTax = __importStar(require("./utils/storefront-tax"));
50
52
  exports.StorefrontTax = StorefrontTax;
53
+ var ProductDiscounts = __importStar(require("./utils/product-discounts"));
54
+ exports.ProductDiscounts = ProductDiscounts;
51
55
  var EmailDate = __importStar(require("./utils/email-date"));
52
56
  exports.EmailDate = EmailDate;
53
57
  var DataCache = __importStar(require("./cache"));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAwC;AAgBtC,8BAAS;AAfX,gEAAmD;AAgBjD,kCAAW;AAfb,4DAA+C;AAgB7C,8BAAS;AAfX,4DAA+C;AAgB7C,oCAAY;AAfd,oEAAuD;AAgBrD,sCAAa;AAff,0DAA6C;AAgB3C,4BAAQ;AAfV,6EAAgE;AAgB9D,8CAAiB;AAfnB,8DAAiD;AAgB/C,gCAAU;AAfZ,sEAAyD;AAgBvD,wCAAc;AAfhB,2EAA8D;AAgB5D,4CAAgB;AAflB,4EAA+D;AAgB7D,8CAAiB;AAfnB,oEAAuD;AAgBrD,sCAAa;AAff,4DAA+C;AAgB7C,8BAAS;AAfX,iDAAoC;AAgBlC,8BAAS"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAwC;AAkBtC,8BAAS;AAjBX,gEAAmD;AAkBjD,kCAAW;AAjBb,4DAA+C;AAkB7C,8BAAS;AAjBX,4DAA+C;AAkB7C,oCAAY;AAjBd,oEAAuD;AAkBrD,sCAAa;AAjBf,0DAA6C;AAkB3C,4BAAQ;AAjBV,6EAAgE;AAkB9D,8CAAiB;AAjBnB,2EAA8D;AAkB5D,4CAAgB;AAjBlB,8DAAiD;AAkB/C,gCAAU;AAjBZ,sEAAyD;AAkBvD,wCAAc;AAjBhB,2EAA8D;AAkB5D,4CAAgB;AAjBlB,4EAA+D;AAkB7D,8CAAiB;AAjBnB,oEAAuD;AAkBrD,sCAAa;AAjBf,0EAA6D;AAkB3D,4CAAgB;AAjBlB,4DAA+C;AAkB7C,8BAAS;AAjBX,iDAAoC;AAkBlC,8BAAS"}
@@ -1 +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.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.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.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../teleport-types/dist/cjs/helper.d.ts","../../../teleport-types/dist/cjs/uidl.d.ts","../../../../node_modules/@babel/types/lib/index.d.ts","../../../teleport-types/dist/cjs/generators.d.ts","../../../teleport-types/dist/cjs/errors.d.ts","../../../teleport-types/dist/cjs/vuidl.d.ts","../../../teleport-types/dist/cjs/index.d.ts","../../src/constants/index.ts","../../src/utils/js-identifiers.ts","../../src/utils/string-utils.ts","../../src/utils/uidl-utils.ts","../../src/utils/generic.ts","../../src/utils/ast-scope.ts","../../src/utils/ast-statement-order.ts","../../src/utils/route-paths.ts","../../src/utils/layout-topology.ts","../../src/utils/html-content-model.ts","../../src/utils/style-declarations.ts","../../src/utils/storefront-tax.ts","../../src/utils/email-date.ts","../../src/cache/constants.ts","../../src/cache/client-runtime.ts","../../src/cache/server-runtime.ts","../../src/cache/version-store.ts","../../src/cache/api-routes.ts","../../src/cache/index.ts","../../src/index.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/buffer/index.d.ts","../../../../node_modules/undici-types/header.d.ts","../../../../node_modules/undici-types/readable.d.ts","../../../../node_modules/undici-types/file.d.ts","../../../../node_modules/undici-types/fetch.d.ts","../../../../node_modules/undici-types/formdata.d.ts","../../../../node_modules/undici-types/connector.d.ts","../../../../node_modules/undici-types/client.d.ts","../../../../node_modules/undici-types/errors.d.ts","../../../../node_modules/undici-types/dispatcher.d.ts","../../../../node_modules/undici-types/global-dispatcher.d.ts","../../../../node_modules/undici-types/global-origin.d.ts","../../../../node_modules/undici-types/pool-stats.d.ts","../../../../node_modules/undici-types/pool.d.ts","../../../../node_modules/undici-types/handlers.d.ts","../../../../node_modules/undici-types/balanced-pool.d.ts","../../../../node_modules/undici-types/agent.d.ts","../../../../node_modules/undici-types/mock-interceptor.d.ts","../../../../node_modules/undici-types/mock-agent.d.ts","../../../../node_modules/undici-types/mock-client.d.ts","../../../../node_modules/undici-types/mock-pool.d.ts","../../../../node_modules/undici-types/mock-errors.d.ts","../../../../node_modules/undici-types/proxy-agent.d.ts","../../../../node_modules/undici-types/api.d.ts","../../../../node_modules/undici-types/cookies.d.ts","../../../../node_modules/undici-types/patch.d.ts","../../../../node_modules/undici-types/filereader.d.ts","../../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../../node_modules/undici-types/websocket.d.ts","../../../../node_modules/undici-types/content-type.d.ts","../../../../node_modules/undici-types/cache.d.ts","../../../../node_modules/undici-types/interceptors.d.ts","../../../../node_modules/undici-types/index.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/dom-events.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/readline/promises.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/test.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","../../../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../../node_modules/@types/jest/index.d.ts","../../../../node_modules/@types/jest/ts3.2/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","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":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"14fc7efae8b184b18019a5906c6f6de752823b44ff1acf7924bbdc8877ded21b","e24ee4fc984f15bb20ba61a254848d632e0a80f05094b06b93f6303dde300bb6","8d27e5f73b75340198b2df36f39326f693743e64006bd7b88a925a5f285df628","72959b5ab7f79e045cd4546e8c075dbc252126f63ddf3d9ace67ddccef450b77","71a689048584cde03cb508408ae7c3b04ad8f10af887865e8b65c27ed9d91488","d9118ed71b9968fea213b070209081a1b1c378b55ddcd026fb1ae8a7f52c15b7","6ba1631f84ef4507073189c4ada06d6de8bac89375ea3b49e34e49006cc44a3f",{"version":"11650c5bddaa406f3d38215ee50e9b7ef974a4cd547c232d318e440ec9765b6b","signature":"950376ec316f431002898dc46c9e712d4df602735e79710032f82ff7cb0ff639"},{"version":"a3a7229dea45fec3b66fb3db95ea86b6f79456d53b01124be574234b855e7f33","signature":"9ea2bd139a31e4bcccbaaf18a67b1ffce16768d35396263d271deb29da1d6f3d"},{"version":"68ab2c8431d98d2050e4acff729c2a2fc9d780d7be4aa0c48137abdb041e9495","signature":"14d523b4f4e24eabea630afb714c74ba52c0683bec00fee1b5341b6a5e650178"},{"version":"8a2a94472cdd6a36100128806588f6e7df23e28f062cdc346b8201af7b7317da","signature":"ffebee2a958508484af19fffc046c9c69ae120bdfd7b452f143219e05e97c20b"},{"version":"30d0676ca3e94d7aa946f0fa8af9ae45bb19fdbb59e52a7ba2fbb8e2bc62dc10","signature":"1dbc4b17192bd937f32da8936dab292a56b4fc94bd88244131d9b2a7853d2cdf"},{"version":"d5d7bef99b9b58cb67c8a18f1a1a1a74ad36e707226181dc5306f5fd56875bdf","signature":"b290a1d459a7028ae36165b73a69a4877c73f4dd72af733964b55110882c3216"},{"version":"bf4571325f6084257e36752366f3c2196c4d1489a46e53854fab86f76f700189","signature":"3816fd253a52b0f8dedd04c55eb2d77d0aa4f1c92707fb50cf14a5d1aa3869dd"},{"version":"3805506eba293e77c14ddcbff35b0aa053b4de13137abc9ebed48ce8dca1fe49","signature":"d487aeebf39008a9b79a9c44a4943bfac9131afe5bb67f6f91319c91f0b74d2b"},{"version":"ec521fde10cc9bbb583b13eb7d9f426c715290c9766554e331040bbc208b688e","signature":"d00b4720674bd31c264f1add708dfeedcb80432a76541c91e38f867b434e0331"},{"version":"3385231c8904b943ead6ae26402c71c270c801a1a04dcf711b37d1fc8b1949c6","signature":"448d42608cb5eab83dc8fff0baac2cea61c5bfa654bc4c18b7640c61b4a8a72f"},{"version":"b4a28d604c143417486a5f5edc69c76ad8c7675d2fb453d1cf47d69831400e04","signature":"0dd5553c80b72c9796c41a5cbea3b2d5ad430651569efceaf08b982ccf4a2f5e"},{"version":"85db6d2b55c2d9802a66ecb6ecf1f41889f38e7075d4b77efc3aeeb83608c9f8","signature":"29fed62b94aa759c78d2ade5cf35805b6c4a287c457f92b874bc72a0cb0238ae"},{"version":"ecb1d950b0a0ab1d0fde6552253857281e515dfd00e7f894669c275ad4ae4436","signature":"0ad3df2740f91e7b7a6191972283d1af25d5f544d4a9ab1df9c41427f09d93fa"},{"version":"f1605474f305995c2b2d8e7d48a8cdd72a2ae57ebbb47ed07bc9abfbf49ffeb1","signature":"5b58f892097fb651076e5be6a77a95c8343a5a84d54dab0ffd97a9450aa39c74"},{"version":"d67f5b62fe97d3f8036fb5c46396f7e65c01eb7124a56926ec7fa8f0857f21da","signature":"35fd626998b26ab1272bf57d013b6d133f3bd3a00eabd4a7b9d9c9312026ae8d"},{"version":"cfefe3982eb13d34b267f265850486badb5b7898edef0a829b17b3c258324575","signature":"03cbc47f7121335ef90a6deca986aaeb999a93252f3f7781867bf793e8a8d0e3"},{"version":"61339f04368d0e7c9a6f8719713be60e561adc6fb6587c33b44a4770ce0247e7","signature":"bf2b32b9d75b611ee022f889ba550d13e0bd14c2deeb1e4d89ce22544e23a1d0"},{"version":"e38653fbd95c5f8178b20faad66bf94a138ba8735a4923e92d810f96e9c20fc3","signature":"c4ccebbab1965eb732ff59c5127b9e177f4a5e2213ea8fa086d7ec6ace62d416"},{"version":"a7f1d2060c1ee57d44ea8f97f242e5b41f95ff4db1963660c9e199a22e1824ce","signature":"6d14d871eae84e541ef7c400686573943068eea5f6ccafa6bf7578ba2abc77a6"},{"version":"213e76b70e7e4226d68cc9b43f6e74a715fd668ec45b53979107454a3f8aac06","signature":"6c074d51f5d2cd51371f0730d909502ffca06a5a8702a1cb430b361e2531935a"},"0b4bc32128fda7bb0752cf284730dd3a817aae04a3d7f92e3b2d54bd61362fe1","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","4967529644e391115ca5592184d4b63980569adf60ee685f968fd59ab1557188","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"5f290ea7efbe9d8431e10df12c0d5672b67988e7c171c2d356749fac70347a55","affectsGlobalScope":true},"39b1a50d543770780b0409a4caacb87f3ff1d510aedfeb7dc06ed44188256f89",{"version":"49c89f8fa09d21c161e6a367448639e032f42d77cc2ec8ab54ecb8fa9a3ad59f","affectsGlobalScope":true},"e4b50850c2a62c7750428e452ee24b167180104d514d5e5c0ca691753365f610","304504c854c47a55ab4a89111a27a2daf8a3614740bd787cc1f2c51e5574239c",{"version":"95f9129a37dcace36e17b061a8484952586ecfe928c9c8ce526de1a2f4aaefa7","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","0f9061846236850a872cb44097d071631e93c8749a8b16c191fe3c2a48faede4","e46fa644658c2d6e5c85e954ea76b92c97d63f0851d3ccdab8c2a80d5962aaa9","1c611ff373ce1958aafc40b328048ac2540ba5c7f373cf2897e0d9aeaabe90a0","a307d22a0130ac94c1a17fffa6d57ac272deb5838cb966a9420911d259cdf1be","d2e415abf6cb81ac9e2700b4db5ea7be76b997e812285b8e5e1e414eb2750b6e","09d6cebdced6aa1181ac1523c8f22a133f5ed80589678b64051f0602f0518374",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"7c35691dc3972ff1507d8dd279d833f540973d0917bde22e191cf7a8feaac29f","affectsGlobalScope":true},"62662d7a886e5cfa870685720fd27b763743ca4d2cf29326f75d76606a64eadd","b8c670688bd228d3cc9c169690b09b687188c50ff263a94df63b207701105ad9","d8e16905907111390d5a943816306ae997dfe56476f14142166f8b13ee322eea","8068c911a1c40bc6c5ffc58c625b21d807778f6aa6d63a73e6f04f88bcac5b79","a1dbce56ad5f3a37caafb9033c9d190a199217d673f5fa099c8968d471a2fdaa","c6f77efcc19f51c8759779b6b6ee0d88046c15c15dadac8ffed729a6620daf39",{"version":"089867511b37a534ae71f3d9bc97acc0b925b7f5dbec113f98c4b49224c694eb","affectsGlobalScope":true},"269d0ea3202820c29a32c1f2a357837a4f1918426844f7e7c90af15ec40d1dc1","66432f885e30cf471573de22a5af5eca9ab46b37b122aec98beadf77e9b7df24","323506ce173f7f865f42f493885ee3dacd18db6359ea1141d57676d3781ce10c",{"version":"034e635df3c014df1d6b1110b724ca0c4d2d324b45a84974c7d6931f9cf95ea7","affectsGlobalScope":true},{"version":"87f9456115554cb0f78f098ddbd585096871c19d2d05274c1b1b4ade3151da78","affectsGlobalScope":true},"ea3ab3727cd6c222d94003ecafa30e8550c61eadcdabbf59514aee76e86211a5","d3cdd41693c5ed6bec4f1a1c399d9501372b14bd341bc46eedacf2854c5df5a7","2de7a21c92226fb8abbeed7a0a9bd8aa6d37e4c68a8c7ff7938c644267e9fcc1","6d6070c5c81ba0bfe58988c69e3ba3149fc86421fd383f253aeb071cbf29cd41","da618f0ea09d95c3b51514de43bf97dab008c85bede58aa57cf95e4984c7c957","48a35b181ecf47dbbc0a7ab4b5ba778d91eaa838ba42bf4aaaead42be77ef39a","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","5195aeb0de306d1c5ca8033457fbcab5987657112fa6d4971cfeb7644493a369","c5dbf0003bc9f0f643e54cd00a3868d1afe85497fecb56be6f2373dc85102924",{"version":"ce73eb199c4bf96c015f069aac161488ed73ebeaea3d87b6d5aa9a968a7b38d4","affectsGlobalScope":true},{"version":"300f8e9de0b0c3482be3e749462b6ebc3dab8a316801f1da0def94aed0cd2018","affectsGlobalScope":true},"4e228e78c1e9b0a75c70588d59288f63a6258e8b1fe4a67b0c53fe03461421d9","962f105729d5b888c8b70e193f6020ee92c6c8144c827de40f80d65dd188ad7f","ac74e2b754fba690036f8221d978f6debb867462b87af254f24e924b677395d0","80858f6de9af22e53aff221fe3590215ea544c2aeb2cc60cf8e08a9c785c8fef",{"version":"068b8ee5c2cd90d7a50f2efadbbe353cb10196a41189a48bf4b2a867363012b4","affectsGlobalScope":true},{"version":"340659b96782f5813aad6c1f89ea1b83b2f3fa993115c7b30366375d9bae5a4e","affectsGlobalScope":true},"6f44a190351ab5e1811abebe007cf60518044772ccc08244f9f241706afa767f","fecdf44bec4ee9c5188e5f2f58c292c9689c02520900dceaaa6e76594de6da90","cf45d0510b661f1da461479851ff902f188edb111777c37055eff12fa986a23a",{"version":"895ca532c15c77cbb6a871af1870b57bcd0ca4f38a1bd69669dd0e95bb58565a","affectsGlobalScope":true},"f2b9440f98d6f94c8105883a2b65aee2fce0248f71f41beafd0a80636f3a565d",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447","e222104af6cb9415238ad358488b74d76eceeff238c1268ec6e85655b05341da","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","eba230221317c985ab1953ccc3edc517f248b37db4fef7875cb2c8d08aff7be7","b83e796810e475da3564c6515bc0ae9577070596a33d89299b7d99f94ecfd921","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"f624e578325b8c58e55b30c998b1f4c3ec1b61a9fa66373da4250c89b7880d44","affectsGlobalScope":true},{"version":"d3002f620eab4bf6476c9da5c0efb2041d46f7df8b3032a5631bd206abef2c75","affectsGlobalScope":true}],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationMap":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":1,"noImplicitAny":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","sourceMap":true,"target":1},"fileIdsList":[[161,163],[157,158],[157,158,159,160],[162],[164],[70],[106],[107,112,140],[108,119,120,127,137,148],[108,109,119,127],[110,149],[111,112,120,128],[112,137,145],[113,115,119,127],[106,114],[115,116],[119],[117,119],[106,119],[119,120,121,137,148],[119,120,121,134,137,140],[104,153],[115,119,122,127,137,148],[119,120,122,123,127,137,145,148],[122,124,137,145,148],[70,71,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155],[119,125],[126,148,153],[115,119,127,137],[128],[129],[106,130],[131,147,153],[132],[133],[119,134,135],[134,136,149,151],[107,119,137,138,139,140],[107,137,139],[137,138],[140],[141],[106,137],[119,143,144],[143,144],[112,127,137,145],[146],[127,147],[107,122,133,148],[112,149],[137,150],[126,151],[152],[107,112,119,121,130,137,148,151,153],[137,154],[81,85,148],[81,137,148],[76],[78,81,145,148],[127,145],[156],[76,156],[78,81,127,148],[73,74,77,80,107,119,137,148],[73,79],[77,81,107,140,148,156],[107,156],[97,107,156],[75,76,156],[81],[75,76,77,78,79,80,81,82,83,85,86,87,88,89,90,91,92,93,94,95,96,98,99,100,101,102,103],[81,88,89],[79,81,89,90],[80],[73,76,81],[81,85,89,90],[85],[79,81,84,148],[73,78,79,81,85,88],[107,137],[76,81,97,107,153,156],[63],[63,64,65,66,67],[49],[50,51,52,53,54,55,56,57,58,59,60,61,62,68],[45],[45,55],[49,129],[51],[49,52,69,129],[44,45],[44,46,47,48],[43],[43,44]],"referencedMap":[[164,1],[159,2],[161,3],[160,2],[163,4],[165,5],[70,6],[71,6],[106,7],[107,8],[108,9],[109,10],[110,11],[111,12],[112,13],[113,14],[114,15],[115,16],[116,16],[118,17],[117,18],[119,19],[120,20],[121,21],[105,22],[122,23],[123,24],[124,25],[156,26],[125,27],[126,28],[127,29],[128,30],[129,31],[130,32],[131,33],[132,34],[133,35],[134,36],[135,36],[136,37],[137,38],[139,39],[138,40],[140,41],[141,42],[142,43],[143,44],[144,45],[145,46],[146,47],[147,48],[148,49],[149,50],[150,51],[151,52],[152,53],[153,54],[154,55],[88,56],[95,57],[87,56],[102,58],[79,59],[78,60],[101,61],[96,62],[99,63],[81,64],[80,65],[76,66],[75,67],[98,68],[77,69],[82,70],[86,70],[104,71],[103,70],[90,72],[91,73],[93,74],[89,75],[92,76],[97,61],[84,77],[85,78],[94,79],[74,80],[100,81],[67,82],[64,82],[68,83],[65,82],[66,82],[50,84],[69,85],[55,86],[56,87],[54,88],[58,84],[61,84],[52,89],[60,84],[53,90],[46,91],[49,92],[44,93],[48,94]],"exportedModulesMap":[[164,1],[159,2],[161,3],[160,2],[163,4],[165,5],[70,6],[71,6],[106,7],[107,8],[108,9],[109,10],[110,11],[111,12],[112,13],[113,14],[114,15],[115,16],[116,16],[118,17],[117,18],[119,19],[120,20],[121,21],[105,22],[122,23],[123,24],[124,25],[156,26],[125,27],[126,28],[127,29],[128,30],[129,31],[130,32],[131,33],[132,34],[133,35],[134,36],[135,36],[136,37],[137,38],[139,39],[138,40],[140,41],[141,42],[142,43],[143,44],[144,45],[145,46],[146,47],[147,48],[148,49],[149,50],[150,51],[151,52],[152,53],[153,54],[154,55],[88,56],[95,57],[87,56],[102,58],[79,59],[78,60],[101,61],[96,62],[99,63],[81,64],[80,65],[76,66],[75,67],[98,68],[77,69],[82,70],[86,70],[104,71],[103,70],[90,72],[91,73],[93,74],[89,75],[92,76],[97,61],[84,77],[85,78],[94,79],[74,80],[100,81],[68,83],[50,84],[69,85],[55,86],[56,86],[54,84],[58,84],[61,84],[60,84],[53,84],[46,91],[49,92],[44,93],[48,94]],"semanticDiagnosticsPerFile":[45,164,157,159,161,160,158,163,162,165,70,71,106,107,108,109,110,111,112,113,114,115,116,118,117,119,120,121,105,155,122,123,124,156,125,126,127,128,129,130,131,132,133,134,135,136,137,139,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,72,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,33,30,31,32,34,7,35,40,41,36,37,38,39,1,42,88,95,87,102,79,78,101,96,99,81,80,76,75,98,77,82,83,86,73,104,103,90,91,93,89,92,97,84,85,94,74,100,67,64,63,68,65,66,50,69,55,56,62,54,59,51,58,57,61,52,60,53,47,46,43,49,44,48]},"version":"4.9.5"}
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.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.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.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../teleport-types/dist/cjs/helper.d.ts","../../../teleport-types/dist/cjs/uidl.d.ts","../../../../node_modules/@babel/types/lib/index.d.ts","../../../teleport-types/dist/cjs/generators.d.ts","../../../teleport-types/dist/cjs/errors.d.ts","../../../teleport-types/dist/cjs/vuidl.d.ts","../../../teleport-types/dist/cjs/index.d.ts","../../src/constants/index.ts","../../src/utils/js-identifiers.ts","../../src/utils/string-utils.ts","../../src/utils/uidl-utils.ts","../../src/utils/generic.ts","../../src/utils/ast-scope.ts","../../src/utils/ast-statement-order.ts","../../src/utils/ast-effect-cleanup.ts","../../src/utils/route-paths.ts","../../src/utils/layout-topology.ts","../../src/utils/html-content-model.ts","../../src/utils/style-declarations.ts","../../src/utils/storefront-tax.ts","../../src/utils/product-discounts.ts","../../src/utils/email-date.ts","../../src/cache/constants.ts","../../src/cache/client-runtime.ts","../../src/cache/server-runtime.ts","../../src/cache/version-store.ts","../../src/cache/api-routes.ts","../../src/cache/index.ts","../../src/index.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/buffer/index.d.ts","../../../../node_modules/undici-types/header.d.ts","../../../../node_modules/undici-types/readable.d.ts","../../../../node_modules/undici-types/file.d.ts","../../../../node_modules/undici-types/fetch.d.ts","../../../../node_modules/undici-types/formdata.d.ts","../../../../node_modules/undici-types/connector.d.ts","../../../../node_modules/undici-types/client.d.ts","../../../../node_modules/undici-types/errors.d.ts","../../../../node_modules/undici-types/dispatcher.d.ts","../../../../node_modules/undici-types/global-dispatcher.d.ts","../../../../node_modules/undici-types/global-origin.d.ts","../../../../node_modules/undici-types/pool-stats.d.ts","../../../../node_modules/undici-types/pool.d.ts","../../../../node_modules/undici-types/handlers.d.ts","../../../../node_modules/undici-types/balanced-pool.d.ts","../../../../node_modules/undici-types/agent.d.ts","../../../../node_modules/undici-types/mock-interceptor.d.ts","../../../../node_modules/undici-types/mock-agent.d.ts","../../../../node_modules/undici-types/mock-client.d.ts","../../../../node_modules/undici-types/mock-pool.d.ts","../../../../node_modules/undici-types/mock-errors.d.ts","../../../../node_modules/undici-types/proxy-agent.d.ts","../../../../node_modules/undici-types/api.d.ts","../../../../node_modules/undici-types/cookies.d.ts","../../../../node_modules/undici-types/patch.d.ts","../../../../node_modules/undici-types/filereader.d.ts","../../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../../node_modules/undici-types/websocket.d.ts","../../../../node_modules/undici-types/content-type.d.ts","../../../../node_modules/undici-types/cache.d.ts","../../../../node_modules/undici-types/interceptors.d.ts","../../../../node_modules/undici-types/index.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/dom-events.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/readline/promises.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/test.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","../../../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../../node_modules/@types/jest/index.d.ts","../../../../node_modules/@types/jest/ts3.2/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","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":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"14fc7efae8b184b18019a5906c6f6de752823b44ff1acf7924bbdc8877ded21b","b42584f9282882a4c3e388b5c9ef8d78b007540795dfd6ea2421dd28d2e1564f","8d27e5f73b75340198b2df36f39326f693743e64006bd7b88a925a5f285df628","dc825386fec10debdf3c70118b36fab9fbf806c96b4bc562ca819ca7a57c4307","71a689048584cde03cb508408ae7c3b04ad8f10af887865e8b65c27ed9d91488","d9118ed71b9968fea213b070209081a1b1c378b55ddcd026fb1ae8a7f52c15b7","6ba1631f84ef4507073189c4ada06d6de8bac89375ea3b49e34e49006cc44a3f",{"version":"11650c5bddaa406f3d38215ee50e9b7ef974a4cd547c232d318e440ec9765b6b","signature":"950376ec316f431002898dc46c9e712d4df602735e79710032f82ff7cb0ff639"},{"version":"a3a7229dea45fec3b66fb3db95ea86b6f79456d53b01124be574234b855e7f33","signature":"9ea2bd139a31e4bcccbaaf18a67b1ffce16768d35396263d271deb29da1d6f3d"},{"version":"c24f079ec435435dcfa36db980f1da9fa965af8458308a1e4a635d33ad1f8a93","signature":"5fe9ca7b6dc98850f1b426855662f868e86c375e86c7f5486ad4692bc2572fde"},{"version":"8a2a94472cdd6a36100128806588f6e7df23e28f062cdc346b8201af7b7317da","signature":"ffebee2a958508484af19fffc046c9c69ae120bdfd7b452f143219e05e97c20b"},{"version":"30d0676ca3e94d7aa946f0fa8af9ae45bb19fdbb59e52a7ba2fbb8e2bc62dc10","signature":"1dbc4b17192bd937f32da8936dab292a56b4fc94bd88244131d9b2a7853d2cdf"},{"version":"d5d7bef99b9b58cb67c8a18f1a1a1a74ad36e707226181dc5306f5fd56875bdf","signature":"b290a1d459a7028ae36165b73a69a4877c73f4dd72af733964b55110882c3216"},{"version":"bf4571325f6084257e36752366f3c2196c4d1489a46e53854fab86f76f700189","signature":"3816fd253a52b0f8dedd04c55eb2d77d0aa4f1c92707fb50cf14a5d1aa3869dd"},{"version":"19c4db2864f00fb2a76efa2f7d8dcf04a2b5a05742e96781166571c6d2250320","signature":"a36f3d868428938cd620deb11cd0747f31fab1c490d54224e99ac8ea6a270220"},{"version":"3805506eba293e77c14ddcbff35b0aa053b4de13137abc9ebed48ce8dca1fe49","signature":"d487aeebf39008a9b79a9c44a4943bfac9131afe5bb67f6f91319c91f0b74d2b"},{"version":"ec521fde10cc9bbb583b13eb7d9f426c715290c9766554e331040bbc208b688e","signature":"d00b4720674bd31c264f1add708dfeedcb80432a76541c91e38f867b434e0331"},{"version":"3385231c8904b943ead6ae26402c71c270c801a1a04dcf711b37d1fc8b1949c6","signature":"448d42608cb5eab83dc8fff0baac2cea61c5bfa654bc4c18b7640c61b4a8a72f"},{"version":"b4a28d604c143417486a5f5edc69c76ad8c7675d2fb453d1cf47d69831400e04","signature":"0dd5553c80b72c9796c41a5cbea3b2d5ad430651569efceaf08b982ccf4a2f5e"},{"version":"85db6d2b55c2d9802a66ecb6ecf1f41889f38e7075d4b77efc3aeeb83608c9f8","signature":"29fed62b94aa759c78d2ade5cf35805b6c4a287c457f92b874bc72a0cb0238ae"},{"version":"402224f379e89fda21400c1e98701843fdde8746bed0fa5b8f8a837ca3a4d224","signature":"e6104a2be1332eb0de3fed325b86aab795be0f618407652cc90f24daacd74a11"},{"version":"ecb1d950b0a0ab1d0fde6552253857281e515dfd00e7f894669c275ad4ae4436","signature":"0ad3df2740f91e7b7a6191972283d1af25d5f544d4a9ab1df9c41427f09d93fa"},{"version":"f1605474f305995c2b2d8e7d48a8cdd72a2ae57ebbb47ed07bc9abfbf49ffeb1","signature":"5b58f892097fb651076e5be6a77a95c8343a5a84d54dab0ffd97a9450aa39c74"},{"version":"d67f5b62fe97d3f8036fb5c46396f7e65c01eb7124a56926ec7fa8f0857f21da","signature":"35fd626998b26ab1272bf57d013b6d133f3bd3a00eabd4a7b9d9c9312026ae8d"},{"version":"cfefe3982eb13d34b267f265850486badb5b7898edef0a829b17b3c258324575","signature":"03cbc47f7121335ef90a6deca986aaeb999a93252f3f7781867bf793e8a8d0e3"},{"version":"61339f04368d0e7c9a6f8719713be60e561adc6fb6587c33b44a4770ce0247e7","signature":"bf2b32b9d75b611ee022f889ba550d13e0bd14c2deeb1e4d89ce22544e23a1d0"},{"version":"e38653fbd95c5f8178b20faad66bf94a138ba8735a4923e92d810f96e9c20fc3","signature":"c4ccebbab1965eb732ff59c5127b9e177f4a5e2213ea8fa086d7ec6ace62d416"},{"version":"a7f1d2060c1ee57d44ea8f97f242e5b41f95ff4db1963660c9e199a22e1824ce","signature":"6d14d871eae84e541ef7c400686573943068eea5f6ccafa6bf7578ba2abc77a6"},{"version":"c1215ed45a05dfe5f5affe8e66841948199b8f59e6cfaa1be2ebec8b454883ef","signature":"68287b53a931ab3da413a46345673c0ab2c7bc031285ad706b3da39ee5c1306d"},"0b4bc32128fda7bb0752cf284730dd3a817aae04a3d7f92e3b2d54bd61362fe1","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","4967529644e391115ca5592184d4b63980569adf60ee685f968fd59ab1557188","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"5f290ea7efbe9d8431e10df12c0d5672b67988e7c171c2d356749fac70347a55","affectsGlobalScope":true},"39b1a50d543770780b0409a4caacb87f3ff1d510aedfeb7dc06ed44188256f89",{"version":"49c89f8fa09d21c161e6a367448639e032f42d77cc2ec8ab54ecb8fa9a3ad59f","affectsGlobalScope":true},"e4b50850c2a62c7750428e452ee24b167180104d514d5e5c0ca691753365f610","304504c854c47a55ab4a89111a27a2daf8a3614740bd787cc1f2c51e5574239c",{"version":"95f9129a37dcace36e17b061a8484952586ecfe928c9c8ce526de1a2f4aaefa7","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","0f9061846236850a872cb44097d071631e93c8749a8b16c191fe3c2a48faede4","e46fa644658c2d6e5c85e954ea76b92c97d63f0851d3ccdab8c2a80d5962aaa9","1c611ff373ce1958aafc40b328048ac2540ba5c7f373cf2897e0d9aeaabe90a0","a307d22a0130ac94c1a17fffa6d57ac272deb5838cb966a9420911d259cdf1be","d2e415abf6cb81ac9e2700b4db5ea7be76b997e812285b8e5e1e414eb2750b6e","09d6cebdced6aa1181ac1523c8f22a133f5ed80589678b64051f0602f0518374",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"7c35691dc3972ff1507d8dd279d833f540973d0917bde22e191cf7a8feaac29f","affectsGlobalScope":true},"62662d7a886e5cfa870685720fd27b763743ca4d2cf29326f75d76606a64eadd","b8c670688bd228d3cc9c169690b09b687188c50ff263a94df63b207701105ad9","d8e16905907111390d5a943816306ae997dfe56476f14142166f8b13ee322eea","8068c911a1c40bc6c5ffc58c625b21d807778f6aa6d63a73e6f04f88bcac5b79","a1dbce56ad5f3a37caafb9033c9d190a199217d673f5fa099c8968d471a2fdaa","c6f77efcc19f51c8759779b6b6ee0d88046c15c15dadac8ffed729a6620daf39",{"version":"089867511b37a534ae71f3d9bc97acc0b925b7f5dbec113f98c4b49224c694eb","affectsGlobalScope":true},"269d0ea3202820c29a32c1f2a357837a4f1918426844f7e7c90af15ec40d1dc1","66432f885e30cf471573de22a5af5eca9ab46b37b122aec98beadf77e9b7df24","323506ce173f7f865f42f493885ee3dacd18db6359ea1141d57676d3781ce10c",{"version":"034e635df3c014df1d6b1110b724ca0c4d2d324b45a84974c7d6931f9cf95ea7","affectsGlobalScope":true},{"version":"87f9456115554cb0f78f098ddbd585096871c19d2d05274c1b1b4ade3151da78","affectsGlobalScope":true},"ea3ab3727cd6c222d94003ecafa30e8550c61eadcdabbf59514aee76e86211a5","d3cdd41693c5ed6bec4f1a1c399d9501372b14bd341bc46eedacf2854c5df5a7","2de7a21c92226fb8abbeed7a0a9bd8aa6d37e4c68a8c7ff7938c644267e9fcc1","6d6070c5c81ba0bfe58988c69e3ba3149fc86421fd383f253aeb071cbf29cd41","da618f0ea09d95c3b51514de43bf97dab008c85bede58aa57cf95e4984c7c957","48a35b181ecf47dbbc0a7ab4b5ba778d91eaa838ba42bf4aaaead42be77ef39a","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","5195aeb0de306d1c5ca8033457fbcab5987657112fa6d4971cfeb7644493a369","c5dbf0003bc9f0f643e54cd00a3868d1afe85497fecb56be6f2373dc85102924",{"version":"ce73eb199c4bf96c015f069aac161488ed73ebeaea3d87b6d5aa9a968a7b38d4","affectsGlobalScope":true},{"version":"300f8e9de0b0c3482be3e749462b6ebc3dab8a316801f1da0def94aed0cd2018","affectsGlobalScope":true},"4e228e78c1e9b0a75c70588d59288f63a6258e8b1fe4a67b0c53fe03461421d9","962f105729d5b888c8b70e193f6020ee92c6c8144c827de40f80d65dd188ad7f","ac74e2b754fba690036f8221d978f6debb867462b87af254f24e924b677395d0","80858f6de9af22e53aff221fe3590215ea544c2aeb2cc60cf8e08a9c785c8fef",{"version":"068b8ee5c2cd90d7a50f2efadbbe353cb10196a41189a48bf4b2a867363012b4","affectsGlobalScope":true},{"version":"340659b96782f5813aad6c1f89ea1b83b2f3fa993115c7b30366375d9bae5a4e","affectsGlobalScope":true},"6f44a190351ab5e1811abebe007cf60518044772ccc08244f9f241706afa767f","fecdf44bec4ee9c5188e5f2f58c292c9689c02520900dceaaa6e76594de6da90","cf45d0510b661f1da461479851ff902f188edb111777c37055eff12fa986a23a",{"version":"895ca532c15c77cbb6a871af1870b57bcd0ca4f38a1bd69669dd0e95bb58565a","affectsGlobalScope":true},"f2b9440f98d6f94c8105883a2b65aee2fce0248f71f41beafd0a80636f3a565d",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447","e222104af6cb9415238ad358488b74d76eceeff238c1268ec6e85655b05341da","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","eba230221317c985ab1953ccc3edc517f248b37db4fef7875cb2c8d08aff7be7","b83e796810e475da3564c6515bc0ae9577070596a33d89299b7d99f94ecfd921","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"f624e578325b8c58e55b30c998b1f4c3ec1b61a9fa66373da4250c89b7880d44","affectsGlobalScope":true},{"version":"d3002f620eab4bf6476c9da5c0efb2041d46f7df8b3032a5631bd206abef2c75","affectsGlobalScope":true}],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationMap":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":1,"noImplicitAny":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","sourceMap":true,"target":1},"fileIdsList":[[163,165],[159,160],[159,160,161,162],[164],[166],[72],[108],[109,114,142],[110,121,122,129,139,150],[110,111,121,129],[112,151],[113,114,122,130],[114,139,147],[115,117,121,129],[108,116],[117,118],[121],[119,121],[108,121],[121,122,123,139,150],[121,122,123,136,139,142],[106,155],[117,121,124,129,139,150],[121,122,124,125,129,139,147,150],[124,126,139,147,150],[72,73,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157],[121,127],[128,150,155],[117,121,129,139],[130],[131],[108,132],[133,149,155],[134],[135],[121,136,137],[136,138,151,153],[109,121,139,140,141,142],[109,139,141],[139,140],[142],[143],[108,139],[121,145,146],[145,146],[114,129,139,147],[148],[129,149],[109,124,135,150],[114,151],[139,152],[128,153],[154],[109,114,121,123,132,139,150,153,155],[139,156],[83,87,150],[83,139,150],[78],[80,83,147,150],[129,147],[158],[78,158],[80,83,129,150],[75,76,79,82,109,121,139,150],[75,81],[79,83,109,142,150,158],[109,158],[99,109,158],[77,78,158],[83],[77,78,79,80,81,82,83,84,85,87,88,89,90,91,92,93,94,95,96,97,98,100,101,102,103,104,105],[83,90,91],[81,83,91,92],[82],[75,78,83],[83,87,91,92],[87],[81,83,86,150],[75,80,81,83,87,90],[109,139],[78,83,99,109,155,158],[65],[65,66,67,68,69],[49],[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,70],[45,55],[45],[49,131],[51],[49,52,71,131],[44,45],[44,46,47,48],[43],[43,44]],"referencedMap":[[166,1],[161,2],[163,3],[162,2],[165,4],[167,5],[72,6],[73,6],[108,7],[109,8],[110,9],[111,10],[112,11],[113,12],[114,13],[115,14],[116,15],[117,16],[118,16],[120,17],[119,18],[121,19],[122,20],[123,21],[107,22],[124,23],[125,24],[126,25],[158,26],[127,27],[128,28],[129,29],[130,30],[131,31],[132,32],[133,33],[134,34],[135,35],[136,36],[137,36],[138,37],[139,38],[141,39],[140,40],[142,41],[143,42],[144,43],[145,44],[146,45],[147,46],[148,47],[149,48],[150,49],[151,50],[152,51],[153,52],[154,53],[155,54],[156,55],[90,56],[97,57],[89,56],[104,58],[81,59],[80,60],[103,61],[98,62],[101,63],[83,64],[82,65],[78,66],[77,67],[100,68],[79,69],[84,70],[88,70],[106,71],[105,70],[92,72],[93,73],[95,74],[91,75],[94,76],[99,61],[86,77],[87,78],[96,79],[76,80],[102,81],[69,82],[66,82],[70,83],[67,82],[68,82],[50,84],[71,85],[57,86],[55,87],[56,86],[54,88],[59,84],[62,84],[52,89],[61,84],[53,90],[46,91],[49,92],[44,93],[48,94]],"exportedModulesMap":[[166,1],[161,2],[163,3],[162,2],[165,4],[167,5],[72,6],[73,6],[108,7],[109,8],[110,9],[111,10],[112,11],[113,12],[114,13],[115,14],[116,15],[117,16],[118,16],[120,17],[119,18],[121,19],[122,20],[123,21],[107,22],[124,23],[125,24],[126,25],[158,26],[127,27],[128,28],[129,29],[130,30],[131,31],[132,32],[133,33],[134,34],[135,35],[136,36],[137,36],[138,37],[139,38],[141,39],[140,40],[142,41],[143,42],[144,43],[145,44],[146,45],[147,46],[148,47],[149,48],[150,49],[151,50],[152,51],[153,52],[154,53],[155,54],[156,55],[90,56],[97,57],[89,56],[104,58],[81,59],[80,60],[103,61],[98,62],[101,63],[83,64],[82,65],[78,66],[77,67],[100,68],[79,69],[84,70],[88,70],[106,71],[105,70],[92,72],[93,73],[95,74],[91,75],[94,76],[99,61],[86,77],[87,78],[96,79],[76,80],[102,81],[70,83],[50,84],[71,85],[57,87],[55,87],[56,87],[54,84],[59,84],[62,84],[61,84],[53,84],[46,91],[49,92],[44,93],[48,94]],"semanticDiagnosticsPerFile":[45,166,159,161,163,162,160,165,164,167,72,73,108,109,110,111,112,113,114,115,116,117,118,120,119,121,122,123,107,157,124,125,126,158,127,128,129,130,131,132,133,134,135,136,137,138,139,141,140,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,74,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,33,30,31,32,34,7,35,40,41,36,37,38,39,1,42,90,97,89,104,81,80,103,98,101,83,82,78,77,100,79,84,85,88,75,106,105,92,93,95,91,94,99,86,87,96,76,102,69,66,65,70,67,68,50,71,57,55,56,64,54,60,51,59,63,58,62,52,61,53,47,46,43,49,44,48]},"version":"4.9.5"}
@@ -0,0 +1,54 @@
1
+ import * as types from '@babel/types';
2
+ /**
3
+ * ------------------------------------------------------------------
4
+ * Effect-cleanup contract for generated React components
5
+ * ------------------------------------------------------------------
6
+ *
7
+ * React reads the RETURN VALUE of an effect callback as that effect's cleanup
8
+ * function and calls it on unmount (and before every re-run). Anything else
9
+ * coming back is stored anyway and invoked blindly, so a callback that returns
10
+ * a value which is not callable does not fail where it was written — it fails
11
+ * later, in React's own commit phase, as
12
+ *
13
+ * TypeError: destroy is not a function
14
+ * at safelyCallDestroy (react-dom.development.js)
15
+ *
16
+ * with a stack made entirely of React frames and no hint of the component that
17
+ * caused it. The page renders fine; it dies the moment the user navigates away.
18
+ *
19
+ * The shape that produced it here was a concise arrow body:
20
+ *
21
+ * useEffect(() => import('@google/model-viewer'), [])
22
+ *
23
+ * The arrow was only meant to RUN the dynamic import, but a concise body also
24
+ * RETURNS it, so every product card handed React a Promise as its cleanup and
25
+ * paginating the product list crashed the app.
26
+ *
27
+ * Emitters are expected to build effects whose callback returns a function or
28
+ * nothing at all. This module is the end-of-pipeline NET that repairs the
29
+ * shapes which are provably in breach, no matter which plugin produced them,
30
+ * so the same mistake can never reach a browser again.
31
+ *
32
+ * Like `ast-statement-order`, every repair here is a no-op on healthy code: a
33
+ * callback that already honours the contract prints byte-identical.
34
+ */
35
+ /** The hooks whose first argument React treats as an effect with a cleanup. */
36
+ export declare const EFFECT_HOOK_NAMES: ReadonlySet<string>;
37
+ /**
38
+ * True when an expression can NEVER evaluate to something callable, so React
39
+ * would certainly reject it as a cleanup.
40
+ *
41
+ * Deliberately conservative — every entry is a shape whose result type is
42
+ * fixed by the language. `a || b`, `cond ? a : b`, `new X()` and any ordinary
43
+ * call are all absent because each of them CAN yield a function, and a net
44
+ * that rewrites code it has not proven broken is worse than the bug it hunts.
45
+ */
46
+ export declare const isProvablyNotAFunction: (node: types.Node | null | undefined) => boolean;
47
+ /**
48
+ * Applies the cleanup contract to every effect hook call in an AST.
49
+ *
50
+ * Returns how many callbacks were repaired, which is what a caller wanting to
51
+ * assert "the pipeline emitted nothing broken" checks.
52
+ */
53
+ export declare const normalizeEffectCleanups: (ast: types.Node | null | undefined) => number;
54
+ //# sourceMappingURL=ast-effect-cleanup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ast-effect-cleanup.d.ts","sourceRoot":"","sources":["../../../src/utils/ast-effect-cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,+EAA+E;AAC/E,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAIhD,CAAA;AA+DF;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,SAAU,UAAU,GAAG,IAAI,GAAG,SAAS,KAAG,OA8B5E,CAAA;AAsLD;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,QAAS,UAAU,GAAG,IAAI,GAAG,SAAS,KAAG,MAqC5E,CAAA"}