@futdevpro/dynamo-eslint 1.15.1 → 1.15.3

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 (73) hide show
  1. package/.cursor/rules/__assistant_guide.mdc +30 -0
  2. package/.cursor/rules/__main.mdc +64 -0
  3. package/.cursor/rules/_ag_backend-structure.mdc +86 -0
  4. package/.cursor/rules/_ag_backend.mdc +16 -0
  5. package/.cursor/rules/_ag_debug.mdc +8 -0
  6. package/.cursor/rules/_ag_documentation_writing_rules.mdc +372 -0
  7. package/.cursor/rules/_ag_file-refactoring.mdc +113 -0
  8. package/.cursor/rules/_ag_fixes_rules.mdc +6 -0
  9. package/.cursor/rules/_ag_frontend-structure.mdc +87 -0
  10. package/.cursor/rules/_ag_frontend.mdc +40 -0
  11. package/.cursor/rules/_ag_import-rules.mdc +45 -0
  12. package/.cursor/rules/_ag_naming.mdc +116 -0
  13. package/.cursor/rules/_ag_running_commands.mdc +5 -0
  14. package/.cursor/rules/_ag_server-controller.mdc +6 -0
  15. package/.cursor/rules/_ag_should-be.mdc +7 -0
  16. package/.cursor/rules/_ag_swearing.mdc +47 -0
  17. package/.cursor/rules/ai_development_guide.md +61 -0
  18. package/.cursor/rules/ai_directives.md +114 -0
  19. package/.cursor/rules/cursor-rules.md +160 -0
  20. package/.cursor/rules/default-command.mdc +465 -0
  21. package/.cursor/rules/error_code_pattern.md +40 -0
  22. package/.cursor/rules/saved rule mcp server use.md +16 -0
  23. package/futdevpro-dynamo-eslint-1.15.3.tgz +0 -0
  24. package/package.json +2 -2
  25. package/build/plugin/rules/explicit-types.spec.d.ts +0 -2
  26. package/build/plugin/rules/explicit-types.spec.d.ts.map +0 -1
  27. package/build/plugin/rules/explicit-types.spec.js +0 -162
  28. package/build/plugin/rules/explicit-types.spec.js.map +0 -1
  29. package/build/plugin/rules/import/import-order.spec.d.ts +0 -2
  30. package/build/plugin/rules/import/import-order.spec.d.ts.map +0 -1
  31. package/build/plugin/rules/import/import-order.spec.js +0 -197
  32. package/build/plugin/rules/import/import-order.spec.js.map +0 -1
  33. package/build/plugin/rules/import/no-import-type.spec.d.ts +0 -2
  34. package/build/plugin/rules/import/no-import-type.spec.d.ts.map +0 -1
  35. package/build/plugin/rules/import/no-import-type.spec.js +0 -60
  36. package/build/plugin/rules/import/no-import-type.spec.js.map +0 -1
  37. package/build/plugin/rules/import/no-js-import.spec.d.ts +0 -2
  38. package/build/plugin/rules/import/no-js-import.spec.d.ts.map +0 -1
  39. package/build/plugin/rules/import/no-js-import.spec.js +0 -68
  40. package/build/plugin/rules/import/no-js-import.spec.js.map +0 -1
  41. package/build/plugin/rules/naming-patterns.spec.d.ts +0 -2
  42. package/build/plugin/rules/naming-patterns.spec.d.ts.map +0 -1
  43. package/build/plugin/rules/naming-patterns.spec.js +0 -36
  44. package/build/plugin/rules/naming-patterns.spec.js.map +0 -1
  45. package/build/plugin/rules/no-getter-logic.spec.d.ts +0 -2
  46. package/build/plugin/rules/no-getter-logic.spec.d.ts.map +0 -1
  47. package/build/plugin/rules/no-getter-logic.spec.js +0 -461
  48. package/build/plugin/rules/no-getter-logic.spec.js.map +0 -1
  49. package/build/plugin/rules/prefer-enum-over-string-union.spec.d.ts +0 -2
  50. package/build/plugin/rules/prefer-enum-over-string-union.spec.d.ts.map +0 -1
  51. package/build/plugin/rules/prefer-enum-over-string-union.spec.js +0 -505
  52. package/build/plugin/rules/prefer-enum-over-string-union.spec.js.map +0 -1
  53. package/build/plugin/rules/prefer-interface-over-duplicate-types.spec.d.ts +0 -2
  54. package/build/plugin/rules/prefer-interface-over-duplicate-types.spec.d.ts.map +0 -1
  55. package/build/plugin/rules/prefer-interface-over-duplicate-types.spec.js +0 -324
  56. package/build/plugin/rules/prefer-interface-over-duplicate-types.spec.js.map +0 -1
  57. package/build/plugin/rules/require-jsdoc-description.spec.d.ts +0 -2
  58. package/build/plugin/rules/require-jsdoc-description.spec.d.ts.map +0 -1
  59. package/build/plugin/rules/require-jsdoc-description.spec.js +0 -546
  60. package/build/plugin/rules/require-jsdoc-description.spec.js.map +0 -1
  61. package/build/plugin/rules/require-test-description-prefix.spec.d.ts +0 -2
  62. package/build/plugin/rules/require-test-description-prefix.spec.d.ts.map +0 -1
  63. package/build/plugin/rules/require-test-description-prefix.spec.js +0 -371
  64. package/build/plugin/rules/require-test-description-prefix.spec.js.map +0 -1
  65. package/build-test/plugin/rules/import-order.d.ts +0 -3
  66. package/build-test/plugin/rules/import-order.js +0 -23
  67. package/build-test/plugin/rules/import-order.spec.d.ts +0 -1
  68. package/build-test/plugin/rules/import-order.spec.js +0 -44
  69. package/build-test/plugin/rules/naming-patterns.d.ts +0 -3
  70. package/build-test/plugin/rules/naming-patterns.js +0 -22
  71. package/build-test/plugin/rules/naming-patterns.spec.d.ts +0 -1
  72. package/build-test/plugin/rules/naming-patterns.spec.js +0 -41
  73. package/futdevpro-dynamo-eslint-1.15.01.tgz +0 -0
@@ -1,505 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const prefer_enum_over_string_union_1 = tslib_1.__importDefault(require("./prefer-enum-over-string-union"));
5
- describe('| prefer-enum-over-string-union', () => {
6
- it('| should be a valid ESLint rule', () => {
7
- expect(prefer_enum_over_string_union_1.default.meta.type).toBe('suggestion');
8
- expect(prefer_enum_over_string_union_1.default.meta.docs.description).toBe('Suggest using enums instead of union types of string literals');
9
- expect(prefer_enum_over_string_union_1.default.meta.fixable).toBe('code');
10
- });
11
- it('| should not report when union has less than threshold values', () => {
12
- let reportCalled = false;
13
- const mockContext = {
14
- report: (options) => {
15
- reportCalled = true;
16
- },
17
- options: [{ minValues: 3 }],
18
- sourceCode: {
19
- getText: () => '',
20
- },
21
- };
22
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
23
- const mockNode = {
24
- type: 'TSTypeAliasDeclaration',
25
- id: { name: 'Status' },
26
- typeAnnotation: {
27
- type: 'TSUnionType',
28
- types: [
29
- { type: 'TSLiteralType', literal: { value: 'active' } },
30
- { type: 'TSLiteralType', literal: { value: 'inactive' } },
31
- ],
32
- },
33
- };
34
- rule.TSTypeAliasDeclaration(mockNode);
35
- expect(reportCalled).toBe(false);
36
- });
37
- it('| should report when union has threshold or more string literals', () => {
38
- let reportCalled = false;
39
- const mockContext = {
40
- report: (options) => {
41
- reportCalled = true;
42
- expect(options.messageId).toBe('preferEnum');
43
- expect(options.data.count).toBe('3');
44
- expect(options.fix).toBeDefined();
45
- },
46
- options: [{ minValues: 3 }],
47
- sourceCode: {
48
- getText: () => 'type Status = \'active\' | \'inactive\' | \'pending\'',
49
- },
50
- };
51
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
52
- const mockNode = {
53
- type: 'TSTypeAliasDeclaration',
54
- id: { name: 'Status' },
55
- typeAnnotation: {
56
- type: 'TSUnionType',
57
- types: [
58
- { type: 'TSLiteralType', literal: { value: 'active' } },
59
- { type: 'TSLiteralType', literal: { value: 'inactive' } },
60
- { type: 'TSLiteralType', literal: { value: 'pending' } },
61
- ],
62
- },
63
- };
64
- rule.TSTypeAliasDeclaration(mockNode);
65
- expect(reportCalled).toBe(true);
66
- });
67
- it('| should not report when union contains non-string literals', () => {
68
- let reportCalled = false;
69
- const mockContext = {
70
- report: (options) => {
71
- reportCalled = true;
72
- },
73
- options: [{ minValues: 3 }],
74
- sourceCode: {
75
- getText: () => '',
76
- },
77
- };
78
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
79
- const mockNode = {
80
- type: 'TSTypeAliasDeclaration',
81
- id: { name: 'Value' },
82
- typeAnnotation: {
83
- type: 'TSUnionType',
84
- types: [
85
- { type: 'TSLiteralType', literal: { value: 'active' } },
86
- { type: 'TSLiteralType', literal: { value: 'inactive' } },
87
- { type: 'TSNumberKeyword' },
88
- ],
89
- },
90
- };
91
- rule.TSTypeAliasDeclaration(mockNode);
92
- expect(reportCalled).toBe(false);
93
- });
94
- it('| should not report when allowTypeAliases is true', () => {
95
- let reportCalled = false;
96
- const mockContext = {
97
- report: (options) => {
98
- reportCalled = true;
99
- },
100
- options: [{ minValues: 3, allowTypeAliases: true }],
101
- sourceCode: {
102
- getText: () => '',
103
- },
104
- };
105
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
106
- const mockNode = {
107
- type: 'TSTypeAliasDeclaration',
108
- id: { name: 'Status' },
109
- typeAnnotation: {
110
- type: 'TSUnionType',
111
- types: [
112
- { type: 'TSLiteralType', literal: { value: 'active' } },
113
- { type: 'TSLiteralType', literal: { value: 'inactive' } },
114
- { type: 'TSLiteralType', literal: { value: 'pending' } },
115
- ],
116
- },
117
- };
118
- rule.TSTypeAliasDeclaration(mockNode);
119
- expect(reportCalled).toBe(false);
120
- });
121
- it('| should report on interface properties', () => {
122
- let reportCalled = false;
123
- const mockContext = {
124
- report: (options) => {
125
- reportCalled = true;
126
- expect(options.messageId).toBe('preferEnum');
127
- },
128
- options: [{ minValues: 3 }],
129
- sourceCode: {
130
- getText: () => '',
131
- },
132
- };
133
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
134
- const mockNode = {
135
- type: 'TSPropertySignature',
136
- key: { name: 'role' },
137
- typeAnnotation: {
138
- typeAnnotation: {
139
- type: 'TSUnionType',
140
- types: [
141
- { type: 'TSLiteralType', literal: { value: 'admin' } },
142
- { type: 'TSLiteralType', literal: { value: 'user' } },
143
- { type: 'TSLiteralType', literal: { value: 'guest' } },
144
- ],
145
- },
146
- },
147
- parent: { type: 'TSInterfaceDeclaration' },
148
- };
149
- rule.TSPropertySignature(mockNode);
150
- expect(reportCalled).toBe(true);
151
- });
152
- it('| should report on class properties', () => {
153
- let reportCalled = false;
154
- const mockContext = {
155
- report: (options) => {
156
- reportCalled = true;
157
- expect(options.messageId).toBe('preferEnum');
158
- },
159
- options: [{ minValues: 3 }],
160
- sourceCode: {
161
- getText: () => '',
162
- },
163
- };
164
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
165
- const mockNode = {
166
- type: 'PropertyDefinition',
167
- key: { name: 'status' },
168
- typeAnnotation: {
169
- typeAnnotation: {
170
- type: 'TSUnionType',
171
- types: [
172
- { type: 'TSLiteralType', literal: { value: 'active' } },
173
- { type: 'TSLiteralType', literal: { value: 'inactive' } },
174
- { type: 'TSLiteralType', literal: { value: 'pending' } },
175
- ],
176
- },
177
- },
178
- parent: { type: 'ClassDeclaration' },
179
- };
180
- rule.PropertyDefinition(mockNode);
181
- expect(reportCalled).toBe(true);
182
- });
183
- it('| should report on function parameters', () => {
184
- let reportCalled = false;
185
- const mockContext = {
186
- report: (options) => {
187
- reportCalled = true;
188
- expect(options.messageId).toBe('preferEnum');
189
- },
190
- options: [{ minValues: 3 }],
191
- sourceCode: {
192
- getText: () => '',
193
- },
194
- };
195
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
196
- const mockNode = {
197
- type: 'FunctionDeclaration',
198
- id: { name: 'setStatus' },
199
- params: [
200
- {
201
- type: 'Identifier',
202
- name: 'status',
203
- typeAnnotation: {
204
- typeAnnotation: {
205
- type: 'TSUnionType',
206
- types: [
207
- { type: 'TSLiteralType', literal: { value: 'active' } },
208
- { type: 'TSLiteralType', literal: { value: 'inactive' } },
209
- { type: 'TSLiteralType', literal: { value: 'pending' } },
210
- ],
211
- },
212
- },
213
- },
214
- ],
215
- };
216
- rule.FunctionDeclaration(mockNode);
217
- expect(reportCalled).toBe(true);
218
- });
219
- it('| should report on arrow function parameters', () => {
220
- let reportCalled = false;
221
- const mockContext = {
222
- report: (options) => {
223
- reportCalled = true;
224
- expect(options.messageId).toBe('preferEnum');
225
- },
226
- options: [{ minValues: 3 }],
227
- sourceCode: {
228
- getText: () => '',
229
- },
230
- };
231
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
232
- const mockNode = {
233
- type: 'ArrowFunctionExpression',
234
- params: [
235
- {
236
- type: 'Identifier',
237
- name: 'status',
238
- typeAnnotation: {
239
- typeAnnotation: {
240
- type: 'TSUnionType',
241
- types: [
242
- { type: 'TSLiteralType', literal: { value: 'active' } },
243
- { type: 'TSLiteralType', literal: { value: 'inactive' } },
244
- { type: 'TSLiteralType', literal: { value: 'pending' } },
245
- ],
246
- },
247
- },
248
- },
249
- ],
250
- };
251
- rule.ArrowFunctionExpression(mockNode);
252
- expect(reportCalled).toBe(true);
253
- });
254
- it('| should report on variable declarations', () => {
255
- let reportCalled = false;
256
- const mockContext = {
257
- report: (options) => {
258
- reportCalled = true;
259
- expect(options.messageId).toBe('preferEnum');
260
- },
261
- options: [{ minValues: 3 }],
262
- sourceCode: {
263
- getText: () => '',
264
- },
265
- };
266
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
267
- const mockNode = {
268
- type: 'VariableDeclarator',
269
- id: { name: 'status' },
270
- typeAnnotation: {
271
- typeAnnotation: {
272
- type: 'TSUnionType',
273
- types: [
274
- { type: 'TSLiteralType', literal: { value: 'active' } },
275
- { type: 'TSLiteralType', literal: { value: 'inactive' } },
276
- { type: 'TSLiteralType', literal: { value: 'pending' } },
277
- ],
278
- },
279
- },
280
- parent: { type: 'VariableDeclaration' },
281
- };
282
- rule.VariableDeclarator(mockNode);
283
- expect(reportCalled).toBe(true);
284
- });
285
- it('| should not report on Angular @Input() properties', () => {
286
- let reportCalled = false;
287
- const mockContext = {
288
- report: (options) => {
289
- reportCalled = true;
290
- },
291
- options: [{ minValues: 3 }],
292
- sourceCode: {
293
- getText: () => '',
294
- },
295
- };
296
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
297
- const mockNode = {
298
- type: 'PropertyDefinition',
299
- key: { name: 'mode' },
300
- decorators: [
301
- {
302
- expression: {
303
- type: 'CallExpression',
304
- callee: { name: 'Input' },
305
- },
306
- },
307
- ],
308
- typeAnnotation: {
309
- typeAnnotation: {
310
- type: 'TSUnionType',
311
- types: [
312
- { type: 'TSLiteralType', literal: { value: 'light' } },
313
- { type: 'TSLiteralType', literal: { value: 'dark' } },
314
- { type: 'TSLiteralType', literal: { value: 'auto' } },
315
- ],
316
- },
317
- },
318
- parent: { type: 'ClassDeclaration' },
319
- };
320
- rule.PropertyDefinition(mockNode);
321
- expect(reportCalled).toBe(false);
322
- });
323
- it('| should not report on Angular input() signal properties', () => {
324
- let reportCalled = false;
325
- const mockContext = {
326
- report: (options) => {
327
- reportCalled = true;
328
- },
329
- options: [{ minValues: 3 }],
330
- sourceCode: {
331
- getText: () => '',
332
- },
333
- };
334
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
335
- const mockNode = {
336
- type: 'PropertyDefinition',
337
- key: { name: 'size' },
338
- value: {
339
- type: 'CallExpression',
340
- callee: { name: 'input' },
341
- },
342
- typeAnnotation: {
343
- typeAnnotation: {
344
- type: 'TSUnionType',
345
- types: [
346
- { type: 'TSLiteralType', literal: { value: 'small' } },
347
- { type: 'TSLiteralType', literal: { value: 'medium' } },
348
- { type: 'TSLiteralType', literal: { value: 'large' } },
349
- ],
350
- },
351
- },
352
- parent: { type: 'ClassDeclaration' },
353
- };
354
- rule.PropertyDefinition(mockNode);
355
- expect(reportCalled).toBe(false);
356
- });
357
- it('| should not report on Angular input.required() signal properties', () => {
358
- let reportCalled = false;
359
- const mockContext = {
360
- report: (options) => {
361
- reportCalled = true;
362
- },
363
- options: [{ minValues: 3 }],
364
- sourceCode: {
365
- getText: () => '',
366
- },
367
- };
368
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
369
- const mockNode = {
370
- type: 'PropertyDefinition',
371
- key: { name: 'theme' },
372
- value: {
373
- type: 'CallExpression',
374
- callee: {
375
- type: 'MemberExpression',
376
- object: { name: 'input' },
377
- property: { name: 'required' },
378
- },
379
- },
380
- typeAnnotation: {
381
- typeAnnotation: {
382
- type: 'TSUnionType',
383
- types: [
384
- { type: 'TSLiteralType', literal: { value: 'light' } },
385
- { type: 'TSLiteralType', literal: { value: 'dark' } },
386
- { type: 'TSLiteralType', literal: { value: 'auto' } },
387
- ],
388
- },
389
- },
390
- parent: { type: 'ClassDeclaration' },
391
- };
392
- rule.PropertyDefinition(mockNode);
393
- expect(reportCalled).toBe(false);
394
- });
395
- it('| should handle custom minValues threshold', () => {
396
- let reportCalled = false;
397
- const mockContext = {
398
- report: (options) => {
399
- reportCalled = true;
400
- expect(options.data.count).toBe('2');
401
- },
402
- options: [{ minValues: 2 }],
403
- sourceCode: {
404
- getText: () => '',
405
- },
406
- };
407
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
408
- const mockNode = {
409
- type: 'TSTypeAliasDeclaration',
410
- id: { name: 'Binary' },
411
- typeAnnotation: {
412
- type: 'TSUnionType',
413
- types: [
414
- { type: 'TSLiteralType', literal: { value: 'yes' } },
415
- { type: 'TSLiteralType', literal: { value: 'no' } },
416
- ],
417
- },
418
- };
419
- rule.TSTypeAliasDeclaration(mockNode);
420
- expect(reportCalled).toBe(true);
421
- });
422
- it('| should handle edge cases with empty strings and special characters', () => {
423
- let reportCalled = false;
424
- const mockContext = {
425
- report: (options) => {
426
- reportCalled = true;
427
- expect(options.data.count).toBe('3');
428
- },
429
- options: [{ minValues: 3 }],
430
- sourceCode: {
431
- getText: () => '',
432
- },
433
- };
434
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
435
- const mockNode = {
436
- type: 'TSTypeAliasDeclaration',
437
- id: { name: 'Special' },
438
- typeAnnotation: {
439
- type: 'TSUnionType',
440
- types: [
441
- { type: 'TSLiteralType', literal: { value: '' } },
442
- { type: 'TSLiteralType', literal: { value: 'hello-world' } },
443
- { type: 'TSLiteralType', literal: { value: 'test_value' } },
444
- ],
445
- },
446
- };
447
- rule.TSTypeAliasDeclaration(mockNode);
448
- expect(reportCalled).toBe(true);
449
- });
450
- it('| should provide auto-fix for type aliases', () => {
451
- const mockContext = {
452
- report: (options) => {
453
- expect(options.fix).toBeDefined();
454
- expect(typeof options.fix).toBe('function');
455
- // Test the fix function
456
- const fixResult = options.fix({
457
- replaceText: (node, text) => {
458
- expect(text).toContain('Status');
459
- return [];
460
- },
461
- });
462
- expect(Array.isArray(fixResult)).toBe(true);
463
- },
464
- options: [{ minValues: 3 }],
465
- sourceCode: {
466
- getText: () => 'type Status = \'active\' | \'inactive\' | \'pending\'',
467
- },
468
- };
469
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
470
- const mockNode = {
471
- type: 'TSTypeAliasDeclaration',
472
- id: { name: 'Status' },
473
- typeAnnotation: {
474
- type: 'TSUnionType',
475
- types: [
476
- { type: 'TSLiteralType', literal: { value: 'active' } },
477
- { type: 'TSLiteralType', literal: { value: 'inactive' } },
478
- { type: 'TSLiteralType', literal: { value: 'pending' } },
479
- ],
480
- },
481
- };
482
- rule.TSTypeAliasDeclaration(mockNode);
483
- });
484
- it('| should handle errors gracefully', () => {
485
- const mockContext = {
486
- report: (options) => {
487
- // Should not throw
488
- },
489
- options: [{ minValues: 3 }],
490
- sourceCode: {
491
- getText: () => '',
492
- },
493
- };
494
- const rule = prefer_enum_over_string_union_1.default.create(mockContext);
495
- // Test with malformed nodes
496
- const malformedNode = {
497
- type: 'TSTypeAliasDeclaration',
498
- // Missing required properties
499
- };
500
- expect(() => {
501
- rule.TSTypeAliasDeclaration(malformedNode);
502
- }).not.toThrow();
503
- });
504
- });
505
- //# sourceMappingURL=prefer-enum-over-string-union.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prefer-enum-over-string-union.spec.js","sourceRoot":"","sources":["../../../src/plugin/rules/prefer-enum-over-string-union.spec.ts"],"names":[],"mappings":";;;AAAA,4GAA6D;AAE7D,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,uCAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACpD,MAAM,CAAC,uCAAc,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;QACnH,MAAM,CAAC,uCAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,wBAAwB;YAC9B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,cAAc,EAAE;gBACd,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;iBAC1D;aACF;SACK,CAAC;QAET,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEtC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC7C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACrC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;YACpC,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,uDAAuD;aACvE;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,wBAAwB;YAC9B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,cAAc,EAAE;gBACd,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;oBACzD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;iBACzD;aACF;SACK,CAAC;QAET,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEtC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,wBAAwB;YAC9B,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;YACrB,cAAc,EAAE;gBACd,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;oBACzD,EAAE,IAAI,EAAE,iBAAiB,EAAE;iBAC5B;aACF;SACK,CAAC;QAET,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEtC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;YACnD,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,wBAAwB;YAC9B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,cAAc,EAAE;gBACd,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;oBACzD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;iBACzD;aACF;SACK,CAAC;QAET,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEtC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,qBAAqB;YAC3B,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACrB,cAAc,EAAE;gBACd,cAAc,EAAE;oBACd,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE;wBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;wBACtD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;wBACrD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;qBACvD;iBACF;aACF;YACD,MAAM,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE;SACpC,CAAC;QAET,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAEnC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,oBAAoB;YAC1B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,cAAc,EAAE;gBACd,cAAc,EAAE;oBACd,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE;wBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;wBACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;wBACzD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;qBACzD;iBACF;aACF;YACD,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;SAC9B,CAAC;QAET,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,qBAAqB;YAC3B,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;YACzB,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,QAAQ;oBACd,cAAc,EAAE;wBACd,cAAc,EAAE;4BACd,IAAI,EAAE,aAAa;4BACnB,KAAK,EAAE;gCACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gCACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;gCACzD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;6BACzD;yBACF;qBACF;iBACF;aACF;SACK,CAAC;QAET,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAEnC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,yBAAyB;YAC/B,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,QAAQ;oBACd,cAAc,EAAE;wBACd,cAAc,EAAE;4BACd,IAAI,EAAE,aAAa;4BACnB,KAAK,EAAE;gCACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gCACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;gCACzD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;6BACzD;yBACF;qBACF;iBACF;aACF;SACK,CAAC;QAET,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QAEvC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,oBAAoB;YAC1B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,cAAc,EAAE;gBACd,cAAc,EAAE;oBACd,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE;wBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;wBACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;wBACzD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;qBACzD;iBACF;aACF;YACD,MAAM,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE;SACjC,CAAC;QAET,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,oBAAoB;YAC1B,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACrB,UAAU,EAAE;gBACV;oBACE,UAAU,EAAE;wBACV,IAAI,EAAE,gBAAgB;wBACtB,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;qBAC1B;iBACF;aACF;YACD,cAAc,EAAE;gBACd,cAAc,EAAE;oBACd,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE;wBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;wBACtD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;wBACrD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;qBACtD;iBACF;aACF;YACD,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;SAC9B,CAAC;QAET,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,oBAAoB;YAC1B,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACrB,KAAK,EAAE;gBACL,IAAI,EAAE,gBAAgB;gBACtB,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;aAC1B;YACD,cAAc,EAAE;gBACd,cAAc,EAAE;oBACd,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE;wBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;wBACtD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;wBACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;qBACvD;iBACF;aACF;YACD,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;SAC9B,CAAC;QAET,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,oBAAoB;YAC1B,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;YACtB,KAAK,EAAE;gBACL,IAAI,EAAE,gBAAgB;gBACtB,MAAM,EAAE;oBACN,IAAI,EAAE,kBAAkB;oBACxB,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;oBACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;iBAC/B;aACF;YACD,cAAc,EAAE;gBACd,cAAc,EAAE;oBACd,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE;wBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;wBACtD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;wBACrD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;qBACtD;iBACF;aACF;YACD,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;SAC9B,CAAC;QAET,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,wBAAwB;YAC9B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,cAAc,EAAE;gBACd,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;oBACpD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;iBACpD;aACF;SACK,CAAC;QAET,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEtC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC9E,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,wBAAwB;YAC9B,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACvB,cAAc,EAAE;gBACd,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;oBACjD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;oBAC5D,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;iBAC5D;aACF;SACK,CAAC;QAET,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEtC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;gBAClC,MAAM,CAAC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAE5C,wBAAwB;gBACxB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;oBAC5B,WAAW,EAAE,CAAC,IAAS,EAAE,IAAY,EAAE,EAAE;wBACvC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;wBAEjC,OAAO,EAAE,CAAC;oBACZ,CAAC;iBACF,CAAC,CAAC;gBAEH,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,uDAAuD;aACvE;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,wBAAwB;YAC9B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtB,cAAc,EAAE;gBACd,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACvD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;oBACzD,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;iBACzD;aACF;SACK,CAAC;QAET,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,WAAW,GAAG;YAClB,MAAM,EAAE,CAAC,OAAY,EAAE,EAAE;gBACvB,mBAAmB;YACrB,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC3B,UAAU,EAAE;gBACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;aAClB;SACK,CAAC;QAET,MAAM,IAAI,GAAG,uCAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,4BAA4B;QAC5B,MAAM,aAAa,GAAG;YACpB,IAAI,EAAE,wBAAwB;YAC9B,8BAA8B;SACxB,CAAC;QAET,MAAM,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=prefer-interface-over-duplicate-types.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prefer-interface-over-duplicate-types.spec.d.ts","sourceRoot":"","sources":["../../../src/plugin/rules/prefer-interface-over-duplicate-types.spec.ts"],"names":[],"mappings":""}