@memberjunction/metadata-sync 6.1.4 → 6.2.0-edge.1

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 (177) hide show
  1. package/dist/config.d.ts +27 -2
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js +20 -4
  4. package/dist/config.js.map +1 -1
  5. package/dist/constants/metadata-keywords.d.ts +16 -0
  6. package/dist/constants/metadata-keywords.d.ts.map +1 -1
  7. package/dist/constants/metadata-keywords.js +42 -10
  8. package/dist/constants/metadata-keywords.js.map +1 -1
  9. package/dist/index.d.ts +8 -8
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +8 -8
  12. package/dist/index.js.map +1 -1
  13. package/dist/lib/EntityPropertyExtractor.d.ts +20 -0
  14. package/dist/lib/EntityPropertyExtractor.d.ts.map +1 -1
  15. package/dist/lib/EntityPropertyExtractor.js +43 -1
  16. package/dist/lib/EntityPropertyExtractor.js.map +1 -1
  17. package/dist/lib/FieldExternalizer.d.ts +3 -2
  18. package/dist/lib/FieldExternalizer.d.ts.map +1 -1
  19. package/dist/lib/FieldExternalizer.js +9 -5
  20. package/dist/lib/FieldExternalizer.js.map +1 -1
  21. package/dist/lib/RecordProcessor.d.ts +11 -0
  22. package/dist/lib/RecordProcessor.d.ts.map +1 -1
  23. package/dist/lib/RecordProcessor.js +41 -7
  24. package/dist/lib/RecordProcessor.js.map +1 -1
  25. package/dist/lib/RelatedEntityHandler.d.ts +6 -0
  26. package/dist/lib/RelatedEntityHandler.d.ts.map +1 -1
  27. package/dist/lib/RelatedEntityHandler.js +15 -3
  28. package/dist/lib/RelatedEntityHandler.js.map +1 -1
  29. package/dist/lib/batch-context-index.d.ts +17 -0
  30. package/dist/lib/batch-context-index.d.ts.map +1 -1
  31. package/dist/lib/batch-context-index.js +35 -7
  32. package/dist/lib/batch-context-index.js.map +1 -1
  33. package/dist/lib/collection-resolver.d.ts +2 -0
  34. package/dist/lib/collection-resolver.d.ts.map +1 -1
  35. package/dist/lib/collection-resolver.js +5 -1
  36. package/dist/lib/collection-resolver.js.map +1 -1
  37. package/dist/lib/config-manager.d.ts +8 -0
  38. package/dist/lib/config-manager.d.ts.map +1 -1
  39. package/dist/lib/config-manager.js +25 -9
  40. package/dist/lib/config-manager.js.map +1 -1
  41. package/dist/lib/database-reference-scanner.d.ts +6 -0
  42. package/dist/lib/database-reference-scanner.d.ts.map +1 -1
  43. package/dist/lib/database-reference-scanner.js +15 -3
  44. package/dist/lib/database-reference-scanner.js.map +1 -1
  45. package/dist/lib/deletion-auditor.d.ts +6 -0
  46. package/dist/lib/deletion-auditor.d.ts.map +1 -1
  47. package/dist/lib/deletion-auditor.js +15 -3
  48. package/dist/lib/deletion-auditor.js.map +1 -1
  49. package/dist/lib/deletion-report-generator.d.ts +4 -0
  50. package/dist/lib/deletion-report-generator.d.ts.map +1 -1
  51. package/dist/lib/deletion-report-generator.js +10 -2
  52. package/dist/lib/deletion-report-generator.js.map +1 -1
  53. package/dist/lib/entity-foreign-key-helper.d.ts +8 -0
  54. package/dist/lib/entity-foreign-key-helper.d.ts.map +1 -1
  55. package/dist/lib/entity-foreign-key-helper.js +20 -4
  56. package/dist/lib/entity-foreign-key-helper.js.map +1 -1
  57. package/dist/lib/entity-subclass-guard.d.ts +6 -0
  58. package/dist/lib/entity-subclass-guard.d.ts.map +1 -1
  59. package/dist/lib/entity-subclass-guard.js +10 -2
  60. package/dist/lib/entity-subclass-guard.js.map +1 -1
  61. package/dist/lib/existing-record-files.d.ts +14 -0
  62. package/dist/lib/existing-record-files.d.ts.map +1 -0
  63. package/dist/lib/existing-record-files.js +89 -0
  64. package/dist/lib/existing-record-files.js.map +1 -0
  65. package/dist/lib/file-backup-manager.d.ts +16 -0
  66. package/dist/lib/file-backup-manager.d.ts.map +1 -1
  67. package/dist/lib/file-backup-manager.js +31 -7
  68. package/dist/lib/file-backup-manager.js.map +1 -1
  69. package/dist/lib/file-write-batch.d.ts +14 -0
  70. package/dist/lib/file-write-batch.d.ts.map +1 -1
  71. package/dist/lib/file-write-batch.js +39 -11
  72. package/dist/lib/file-write-batch.js.map +1 -1
  73. package/dist/lib/graph-provider-pool.d.ts +16 -0
  74. package/dist/lib/graph-provider-pool.d.ts.map +1 -1
  75. package/dist/lib/graph-provider-pool.js +35 -7
  76. package/dist/lib/graph-provider-pool.js.map +1 -1
  77. package/dist/lib/json-preprocessor.d.ts +4 -0
  78. package/dist/lib/json-preprocessor.d.ts.map +1 -1
  79. package/dist/lib/json-preprocessor.js +12 -4
  80. package/dist/lib/json-preprocessor.js.map +1 -1
  81. package/dist/lib/json-subproperty-externalization.d.ts +90 -0
  82. package/dist/lib/json-subproperty-externalization.d.ts.map +1 -0
  83. package/dist/lib/json-subproperty-externalization.js +159 -0
  84. package/dist/lib/json-subproperty-externalization.js.map +1 -0
  85. package/dist/lib/json-write-helper.d.ts +9 -0
  86. package/dist/lib/json-write-helper.d.ts.map +1 -1
  87. package/dist/lib/json-write-helper.js +15 -3
  88. package/dist/lib/json-write-helper.js.map +1 -1
  89. package/dist/lib/provider-utils.d.ts +10 -0
  90. package/dist/lib/provider-utils.d.ts.map +1 -1
  91. package/dist/lib/provider-utils.js +27 -7
  92. package/dist/lib/provider-utils.js.map +1 -1
  93. package/dist/lib/push-outcome.d.ts +6 -0
  94. package/dist/lib/push-outcome.d.ts.map +1 -1
  95. package/dist/lib/push-outcome.js +17 -5
  96. package/dist/lib/push-outcome.js.map +1 -1
  97. package/dist/lib/push-write-mode.d.ts +8 -0
  98. package/dist/lib/push-write-mode.d.ts.map +1 -1
  99. package/dist/lib/push-write-mode.js +20 -4
  100. package/dist/lib/push-write-mode.js.map +1 -1
  101. package/dist/lib/record-dependency-analyzer.d.ts +14 -0
  102. package/dist/lib/record-dependency-analyzer.d.ts.map +1 -1
  103. package/dist/lib/record-dependency-analyzer.js +36 -8
  104. package/dist/lib/record-dependency-analyzer.js.map +1 -1
  105. package/dist/lib/record-primary-key.d.ts +6 -0
  106. package/dist/lib/record-primary-key.d.ts.map +1 -1
  107. package/dist/lib/record-primary-key.js +15 -3
  108. package/dist/lib/record-primary-key.js.map +1 -1
  109. package/dist/lib/reference-parser.d.ts +2 -0
  110. package/dist/lib/reference-parser.d.ts.map +1 -1
  111. package/dist/lib/reference-parser.js +5 -1
  112. package/dist/lib/reference-parser.js.map +1 -1
  113. package/dist/lib/singleton-manager.d.ts +4 -0
  114. package/dist/lib/singleton-manager.d.ts.map +1 -1
  115. package/dist/lib/singleton-manager.js +10 -2
  116. package/dist/lib/singleton-manager.js.map +1 -1
  117. package/dist/lib/sql-logger.d.ts +12 -0
  118. package/dist/lib/sql-logger.d.ts.map +1 -1
  119. package/dist/lib/sql-logger.js +31 -7
  120. package/dist/lib/sql-logger.js.map +1 -1
  121. package/dist/lib/sync-engine.d.ts +27 -0
  122. package/dist/lib/sync-engine.d.ts.map +1 -1
  123. package/dist/lib/sync-engine.js +83 -35
  124. package/dist/lib/sync-engine.js.map +1 -1
  125. package/dist/lib/sync-metadata-engine.d.ts +54 -0
  126. package/dist/lib/sync-metadata-engine.d.ts.map +1 -1
  127. package/dist/lib/sync-metadata-engine.js +142 -46
  128. package/dist/lib/sync-metadata-engine.js.map +1 -1
  129. package/dist/lib/sync-state-manager.d.ts +18 -0
  130. package/dist/lib/sync-state-manager.d.ts.map +1 -1
  131. package/dist/lib/sync-state-manager.js +45 -9
  132. package/dist/lib/sync-state-manager.js.map +1 -1
  133. package/dist/lib/transaction-manager.d.ts +10 -0
  134. package/dist/lib/transaction-manager.d.ts.map +1 -1
  135. package/dist/lib/transaction-manager.js +28 -8
  136. package/dist/lib/transaction-manager.js.map +1 -1
  137. package/dist/plugins/index.d.ts +10 -2
  138. package/dist/plugins/index.d.ts.map +1 -1
  139. package/dist/plugins/index.js +18 -2
  140. package/dist/plugins/index.js.map +1 -1
  141. package/dist/services/FileResetService.d.ts +2 -0
  142. package/dist/services/FileResetService.d.ts.map +1 -1
  143. package/dist/services/FileResetService.js +7 -3
  144. package/dist/services/FileResetService.js.map +1 -1
  145. package/dist/services/FormattingService.d.ts +25 -0
  146. package/dist/services/FormattingService.d.ts.map +1 -1
  147. package/dist/services/FormattingService.js +44 -12
  148. package/dist/services/FormattingService.js.map +1 -1
  149. package/dist/services/InitService.d.ts +6 -0
  150. package/dist/services/InitService.d.ts.map +1 -1
  151. package/dist/services/InitService.js +15 -3
  152. package/dist/services/InitService.js.map +1 -1
  153. package/dist/services/PullService.d.ts +9 -2
  154. package/dist/services/PullService.d.ts.map +1 -1
  155. package/dist/services/PullService.js +42 -55
  156. package/dist/services/PullService.js.map +1 -1
  157. package/dist/services/PushService.d.ts +5 -1
  158. package/dist/services/PushService.d.ts.map +1 -1
  159. package/dist/services/PushService.js +23 -15
  160. package/dist/services/PushService.js.map +1 -1
  161. package/dist/services/StatusService.d.ts +5 -0
  162. package/dist/services/StatusService.d.ts.map +1 -1
  163. package/dist/services/StatusService.js +10 -6
  164. package/dist/services/StatusService.js.map +1 -1
  165. package/dist/services/ValidationService.d.ts +2 -0
  166. package/dist/services/ValidationService.d.ts.map +1 -1
  167. package/dist/services/ValidationService.js +18 -14
  168. package/dist/services/ValidationService.js.map +1 -1
  169. package/dist/services/WatchService.d.ts +2 -0
  170. package/dist/services/WatchService.d.ts.map +1 -1
  171. package/dist/services/WatchService.js +10 -6
  172. package/dist/services/WatchService.js.map +1 -1
  173. package/dist/types/validation.d.ts +10 -2
  174. package/dist/types/validation.d.ts.map +1 -1
  175. package/dist/types/validation.js +20 -4
  176. package/dist/types/validation.js.map +1 -1
  177. package/package.json +14 -14
@@ -15,9 +15,9 @@ import { Metadata, RunView, CompositeKey } from '@memberjunction/core';
15
15
  import { resolveDbPlatformFromEnv } from '@memberjunction/generic-database-provider';
16
16
  import { GetDialect, IsDateSQLType, IsUuidSQLType } from '@memberjunction/sql-dialect';
17
17
  import { JsonPreprocessor } from './json-preprocessor.js';
18
- import { describeMissingEntitySubclass } from './entity-subclass-guard.js';
18
+ import { DescribeMissingEntitySubclass } from './entity-subclass-guard.js';
19
19
  import { BatchContextIndex } from './batch-context-index.js';
20
- import { METADATA_KEYWORDS, isMetadataKeyword, isNonKeywordAtSymbol, extractKeywordValue } from '../constants/metadata-keywords.js';
20
+ import { METADATA_KEYWORDS, IsMetadataKeyword, IsNonKeywordAtSymbol, ExtractKeywordValue } from '../constants/metadata-keywords.js';
21
21
  /**
22
22
  * Custom error class for lookup failures that can be deferred.
23
23
  * When a lookup with `?allowDefer` flag fails, this error is thrown instead of a regular Error.
@@ -48,9 +48,13 @@ export class DeferrableLookupError extends Error {
48
48
  * ```
49
49
  */
50
50
  export class SyncEngine {
51
- setMetadataEngine(engine) {
51
+ SetMetadataEngine(engine) {
52
52
  this.syncMetadataEngine = engine;
53
53
  }
54
+ /** @deprecated Use {@link SetMetadataEngine}. */
55
+ setMetadataEngine(engine) {
56
+ return this.SetMetadataEngine(engine);
57
+ }
54
58
  /** Routes a warning through {@link WarningSink}, else the console. Never throws. */
55
59
  warn(message) {
56
60
  if (this.WarningSink) {
@@ -60,9 +64,13 @@ export class SyncEngine {
60
64
  console.warn(`⚠️ ${message}`);
61
65
  }
62
66
  }
63
- getMetadataEngine() {
67
+ GetMetadataEngine() {
64
68
  return this.syncMetadataEngine;
65
69
  }
70
+ /** @deprecated Use {@link GetMetadataEngine}. */
71
+ getMetadataEngine() {
72
+ return this.GetMetadataEngine();
73
+ }
66
74
  /**
67
75
  * Returns the metadata provider this engine is using.
68
76
  *
@@ -72,9 +80,13 @@ export class SyncEngine {
72
80
  * keeps callers from reaching for `Metadata.Provider` directly and makes
73
81
  * it obvious which provider the sync is bound to.
74
82
  */
75
- getProvider() {
83
+ GetProvider() {
76
84
  return Metadata.Provider; // global-provider-ok: CLI single-process; see class doc
77
85
  }
86
+ /** @deprecated Use {@link GetProvider}. */
87
+ getProvider() {
88
+ return this.GetProvider();
89
+ }
78
90
  /**
79
91
  * Creates a new SyncEngine instance
80
92
  * @param contextUser - The user context for database operations
@@ -94,10 +106,14 @@ export class SyncEngine {
94
106
  * Initializes the sync engine by refreshing metadata cache
95
107
  * @returns Promise that resolves when initialization is complete
96
108
  */
97
- async initialize() {
109
+ async Initialize() {
98
110
  // Currently no initialization needed as metadata is managed globally
99
111
  // Keeping this method for backward compatibility and future use
100
112
  }
113
+ /** @deprecated Use {@link Initialize}. */
114
+ async initialize() {
115
+ return this.Initialize();
116
+ }
101
117
  /**
102
118
  * Process special references in field values and handle complex objects
103
119
  *
@@ -142,7 +158,7 @@ export class SyncEngine {
142
158
  * // collector.notes will contain the resolution info
143
159
  * ```
144
160
  */
145
- async processFieldValue(value, baseDir, parentRecord, rootRecord, depth = 0, batchContext, resolutionCollector, fieldName, recordProvider, ownerRecord) {
161
+ async ProcessFieldValue(value, baseDir, parentRecord, rootRecord, depth = 0, batchContext, resolutionCollector, fieldName, recordProvider, ownerRecord) {
146
162
  // Check recursion depth limit
147
163
  const MAX_RECURSION_DEPTH = 50;
148
164
  if (depth > MAX_RECURSION_DEPTH) {
@@ -166,7 +182,7 @@ export class SyncEngine {
166
182
  }
167
183
  // If string starts with @ but isn't one of our known reference types, return as-is
168
184
  // This handles cases like npm package names (@mui/material, @angular/core, etc.)
169
- if (isNonKeywordAtSymbol(value)) {
185
+ if (IsNonKeywordAtSymbol(value)) {
170
186
  return value; // Not a MetadataSync reference, just a string that happens to start with @
171
187
  }
172
188
  // Check for @owner: reference
@@ -174,7 +190,7 @@ export class SyncEngine {
174
190
  if (!ownerRecord) {
175
191
  throw new Error(`@owner reference used but no owner record available: ${value}`);
176
192
  }
177
- const ownerFieldName = extractKeywordValue(value) || '';
193
+ const ownerFieldName = ExtractKeywordValue(value) || '';
178
194
  const resolvedValue = ownerRecord.Get(ownerFieldName);
179
195
  if (resolvedValue === undefined) {
180
196
  const ownerName = ownerRecord.EntityInfo?.Name || 'unknown';
@@ -196,7 +212,7 @@ export class SyncEngine {
196
212
  if (!parentRecord) {
197
213
  throw new Error(`@parent reference used but no parent record available: ${value}`);
198
214
  }
199
- const parentFieldName = extractKeywordValue(value) || '';
215
+ const parentFieldName = ExtractKeywordValue(value) || '';
200
216
  const resolvedValue = parentRecord.Get(parentFieldName);
201
217
  // Track the resolution if collector is provided
202
218
  if (resolutionCollector && fieldName) {
@@ -214,12 +230,12 @@ export class SyncEngine {
214
230
  if (!rootRecord) {
215
231
  throw new Error(`@root reference used but no root record available: ${value}`);
216
232
  }
217
- const fieldName = extractKeywordValue(value) || '';
233
+ const fieldName = ExtractKeywordValue(value) || '';
218
234
  return rootRecord.Get(fieldName);
219
235
  }
220
236
  // Check for @file: reference
221
237
  if (value.startsWith(METADATA_KEYWORDS.FILE)) {
222
- const filePath = extractKeywordValue(value);
238
+ const filePath = ExtractKeywordValue(value);
223
239
  const fullPath = path.resolve(baseDir, filePath);
224
240
  if (await fs.pathExists(fullPath)) {
225
241
  // Check if this is a JSON file that might contain @include directives
@@ -267,7 +283,7 @@ export class SyncEngine {
267
283
  }
268
284
  // Check for @url: reference
269
285
  if (value.startsWith(METADATA_KEYWORDS.URL)) {
270
- const url = extractKeywordValue(value);
286
+ const url = ExtractKeywordValue(value);
271
287
  try {
272
288
  // A developer-authored `@url:` reference in a local metadata file — it may legitimately
273
289
  // point at an internal host, so this is deliberately not SSRF-guarded.
@@ -280,7 +296,7 @@ export class SyncEngine {
280
296
  }
281
297
  // Check for @lookup: reference
282
298
  if (value.startsWith(METADATA_KEYWORDS.LOOKUP)) {
283
- const lookupStr = extractKeywordValue(value);
299
+ const lookupStr = ExtractKeywordValue(value);
284
300
  // Parse lookup with optional flags: ?create, ?allowDefer
285
301
  // Format: EntityName.Field1=Value1&Field2=Value2?create&allowDefer&OtherField=Value
286
302
  const entityMatch = lookupStr.match(/^([^.]+)\./);
@@ -312,7 +328,7 @@ export class SyncEngine {
312
328
  // Recursively process the field value to resolve any nested @ commands
313
329
  // Create a temporary collector to capture nested resolutions
314
330
  const nestedCollector = { notes: [], fieldPrefix: '' };
315
- const processedValue = await this.processFieldValue(rawFieldValue, baseDir, parentRecord, rootRecord, depth + 1, batchContext, nestedCollector, lookupFieldName, // Pass field name for tracking
331
+ const processedValue = await this.ProcessFieldValue(rawFieldValue, baseDir, parentRecord, rootRecord, depth + 1, batchContext, nestedCollector, lookupFieldName, // Pass field name for tracking
316
332
  recordProvider);
317
333
  // If the raw value was a lookup expression that got resolved, track it as nested
318
334
  if (rawFieldValue.startsWith(METADATA_KEYWORDS.LOOKUP) && rawFieldValue !== processedValue) {
@@ -340,11 +356,11 @@ export class SyncEngine {
340
356
  if (key && val) {
341
357
  const decodedVal = decodeURIComponent(val);
342
358
  // Recursively process the field value to resolve any nested @ commands
343
- createFields[key] = await this.processFieldValue(decodedVal, baseDir, parentRecord, rootRecord, depth + 1, batchContext, undefined, undefined, recordProvider);
359
+ createFields[key] = await this.ProcessFieldValue(decodedVal, baseDir, parentRecord, rootRecord, depth + 1, batchContext, undefined, undefined, recordProvider);
344
360
  }
345
361
  }
346
362
  }
347
- const resolvedValue = await this.resolveLookup(entityName, lookupFields, hasCreate, createFields, batchContext, allowDefer, value, recordProvider);
363
+ const resolvedValue = await this.ResolveLookup(entityName, lookupFields, hasCreate, createFields, batchContext, allowDefer, value, recordProvider);
348
364
  // Track the resolution if collector is provided
349
365
  if (resolutionCollector && fieldName) {
350
366
  const note = {
@@ -363,7 +379,7 @@ export class SyncEngine {
363
379
  }
364
380
  // Check for @env: reference
365
381
  if (value.startsWith(METADATA_KEYWORDS.ENV)) {
366
- const envVar = extractKeywordValue(value);
382
+ const envVar = ExtractKeywordValue(value);
367
383
  const envValue = process.env[envVar];
368
384
  if (envValue === undefined) {
369
385
  throw new Error(`Environment variable not found: ${envVar}`);
@@ -372,6 +388,10 @@ export class SyncEngine {
372
388
  }
373
389
  return value;
374
390
  }
391
+ /** @deprecated Use {@link ProcessFieldValue}. */
392
+ async processFieldValue(value, baseDir, parentRecord, rootRecord, depth = 0, batchContext, resolutionCollector, fieldName, recordProvider, ownerRecord) {
393
+ return this.ProcessFieldValue(value, baseDir, parentRecord, rootRecord, depth, batchContext, resolutionCollector, fieldName, recordProvider, ownerRecord);
394
+ }
375
395
  /**
376
396
  * Resolve a lookup reference to an ID, optionally creating the record if it doesn't exist
377
397
  *
@@ -423,7 +443,7 @@ export class SyncEngine {
423
443
  });
424
444
  return `${encodeURIComponent(entityName.toLowerCase())}|${parts.join('&')}`;
425
445
  }
426
- async resolveLookup(entityName, lookupFields, autoCreate = false, createFields = {}, batchContext, allowDefer = false, originalValue, recordProvider) {
446
+ async ResolveLookup(entityName, lookupFields, autoCreate = false, createFields = {}, batchContext, allowDefer = false, originalValue, recordProvider) {
427
447
  const lookupCacheKey = this.buildLookupCacheKey(entityName, lookupFields);
428
448
  if (this.syncMetadataEngine) {
429
449
  const cachedId = this.syncMetadataEngine.getCachedLookup(lookupCacheKey);
@@ -573,7 +593,7 @@ export class SyncEngine {
573
593
  // If not found and auto-create is enabled, create the record
574
594
  if (autoCreate) {
575
595
  // Same silent-fallback hazard as PushService (issue #4199), on the lookup auto-create path.
576
- const subclassWarning = describeMissingEntitySubclass(entityName);
596
+ const subclassWarning = DescribeMissingEntitySubclass(entityName);
577
597
  if (subclassWarning) {
578
598
  this.warn(subclassWarning);
579
599
  }
@@ -634,6 +654,10 @@ export class SyncEngine {
634
654
  }
635
655
  throw new Error(errorMessage);
636
656
  }
657
+ /** @deprecated Use {@link ResolveLookup}. */
658
+ async resolveLookup(entityName, lookupFields, autoCreate = false, createFields = {}, batchContext, allowDefer = false, originalValue, recordProvider) {
659
+ return this.ResolveLookup(entityName, lookupFields, autoCreate, createFields, batchContext, allowDefer, originalValue, recordProvider);
660
+ }
637
661
  /**
638
662
  * Build cascading defaults for a file path and process field values
639
663
  *
@@ -646,7 +670,7 @@ export class SyncEngine {
646
670
  * @returns Processed defaults with all references resolved
647
671
  * @throws Error if any default value processing fails
648
672
  */
649
- async buildDefaults(filePath, entityConfig) {
673
+ async BuildDefaults(filePath, entityConfig) {
650
674
  const parts = path.dirname(filePath).split(path.sep);
651
675
  let defaults = { ...entityConfig.defaults };
652
676
  // Walk up the directory tree building defaults
@@ -663,7 +687,7 @@ export class SyncEngine {
663
687
  const baseDir = path.dirname(filePath);
664
688
  for (const [field, value] of Object.entries(defaults)) {
665
689
  try {
666
- processedDefaults[field] = await this.processFieldValue(value, baseDir, null, null, 0);
690
+ processedDefaults[field] = await this.ProcessFieldValue(value, baseDir, null, null, 0);
667
691
  }
668
692
  catch (error) {
669
693
  throw new Error(`Failed to process default for field '${field}': ${error}`);
@@ -671,6 +695,10 @@ export class SyncEngine {
671
695
  }
672
696
  return processedDefaults;
673
697
  }
698
+ /** @deprecated Use {@link BuildDefaults}. */
699
+ async buildDefaults(filePath, entityConfig) {
700
+ return this.BuildDefaults(filePath, entityConfig);
701
+ }
674
702
  /**
675
703
  * Load folder configuration from .mj-folder.json file
676
704
  *
@@ -711,13 +739,17 @@ export class SyncEngine {
711
739
  * // Returns consistent hash for same data structure
712
740
  * ```
713
741
  */
714
- calculateChecksum(data) {
742
+ CalculateChecksum(data) {
715
743
  const hash = crypto.createHash('sha256');
716
744
  // Use a replacer function to ensure consistent key ordering for deterministic checksums
717
745
  const sortedJson = JSON.stringify(data, this.sortedReplacer, 2);
718
746
  hash.update(sortedJson);
719
747
  return hash.digest('hex');
720
748
  }
749
+ /** @deprecated Use {@link CalculateChecksum}. */
750
+ calculateChecksum(data) {
751
+ return this.CalculateChecksum(data);
752
+ }
721
753
  /**
722
754
  * Replacer function for JSON.stringify that sorts object keys alphabetically
723
755
  * Ensures deterministic checksums regardless of property order
@@ -745,9 +777,13 @@ export class SyncEngine {
745
777
  * @param entityDir - Directory for resolving relative file paths
746
778
  * @returns Promise resolving to checksum string
747
779
  */
748
- async calculateChecksumWithFileContent(data, entityDir) {
780
+ async CalculateChecksumWithFileContent(data, entityDir) {
749
781
  const processedData = await this.resolveFileReferencesForChecksum(data, entityDir);
750
- return this.calculateChecksum(processedData);
782
+ return this.CalculateChecksum(processedData);
783
+ }
784
+ /** @deprecated Use {@link CalculateChecksumWithFileContent}. */
785
+ async calculateChecksumWithFileContent(data, entityDir) {
786
+ return this.CalculateChecksumWithFileContent(data, entityDir);
751
787
  }
752
788
  /**
753
789
  * Resolve @file references for checksum calculation
@@ -773,7 +809,7 @@ export class SyncEngine {
773
809
  if (typeof value === 'string' && value.startsWith(METADATA_KEYWORDS.FILE)) {
774
810
  // Process @file reference and include actual content
775
811
  try {
776
- const filePath = extractKeywordValue(value);
812
+ const filePath = ExtractKeywordValue(value);
777
813
  const fullPath = path.isAbsolute(filePath) ? filePath : path.join(entityDir, filePath);
778
814
  if (await fs.pathExists(fullPath)) {
779
815
  let processedContent;
@@ -850,9 +886,13 @@ export class SyncEngine {
850
886
  * }
851
887
  * ```
852
888
  */
853
- getEntityInfo(entityName) {
889
+ GetEntityInfo(entityName) {
854
890
  return this.metadata.EntityByName(entityName);
855
891
  }
892
+ /** @deprecated Use {@link GetEntityInfo}. */
893
+ getEntityInfo(entityName) {
894
+ return this.GetEntityInfo(entityName);
895
+ }
856
896
  /**
857
897
  * Create a new entity object instance
858
898
  *
@@ -871,7 +911,7 @@ export class SyncEngine {
871
911
  * await entity.Save();
872
912
  * ```
873
913
  */
874
- async createEntityObject(entityName, recordProvider) {
914
+ async CreateEntityObject(entityName, recordProvider) {
875
915
  const entity = recordProvider
876
916
  ? await recordProvider.GetEntityObject(entityName, this.contextUser)
877
917
  : await this.metadata.GetEntityObject(entityName, this.contextUser);
@@ -880,6 +920,10 @@ export class SyncEngine {
880
920
  }
881
921
  return entity;
882
922
  }
923
+ /** @deprecated Use {@link CreateEntityObject}. */
924
+ async createEntityObject(entityName, recordProvider) {
925
+ return this.CreateEntityObject(entityName, recordProvider);
926
+ }
883
927
  /**
884
928
  * Load an entity record by primary key
885
929
  *
@@ -903,8 +947,8 @@ export class SyncEngine {
903
947
  * });
904
948
  * ```
905
949
  */
906
- async loadEntity(entityName, primaryKey, recordProvider) {
907
- const entityInfo = this.getEntityInfo(entityName);
950
+ async LoadEntity(entityName, primaryKey, recordProvider) {
951
+ const entityInfo = this.GetEntityInfo(entityName);
908
952
  if (!entityInfo) {
909
953
  throw new Error(`Entity not found: ${entityName}`);
910
954
  }
@@ -952,7 +996,7 @@ export class SyncEngine {
952
996
  return null;
953
997
  }
954
998
  // Record exists, now load it properly through the entity
955
- const entity = await this.createEntityObject(entityName, recordProvider);
999
+ const entity = await this.CreateEntityObject(entityName, recordProvider);
956
1000
  const compositeKey = new CompositeKey();
957
1001
  compositeKey.LoadFromSimpleObject(primaryKey);
958
1002
  const loaded = await entity.InnerLoad(compositeKey);
@@ -962,6 +1006,10 @@ export class SyncEngine {
962
1006
  }
963
1007
  return loadedEntity;
964
1008
  }
1009
+ /** @deprecated Use {@link LoadEntity}. */
1010
+ async loadEntity(entityName, primaryKey, recordProvider) {
1011
+ return this.LoadEntity(entityName, primaryKey, recordProvider);
1012
+ }
965
1013
  /**
966
1014
  * Process file content with `{@include}` references
967
1015
  *
@@ -1054,8 +1102,8 @@ export class SyncEngine {
1054
1102
  }
1055
1103
  // Handle top-level strings (important for array elements that are strings with @ syntax)
1056
1104
  if (typeof obj === 'string') {
1057
- if (isMetadataKeyword(obj)) {
1058
- return this.processFieldValue(obj, baseDir, parentRecord, rootRecord, depth, batchContext, undefined, undefined, recordProvider, ownerRecord);
1105
+ if (IsMetadataKeyword(obj)) {
1106
+ return this.ProcessFieldValue(obj, baseDir, parentRecord, rootRecord, depth, batchContext, undefined, undefined, recordProvider, ownerRecord);
1059
1107
  }
1060
1108
  return obj;
1061
1109
  }
@@ -1071,8 +1119,8 @@ export class SyncEngine {
1071
1119
  if (typeof value === 'string') {
1072
1120
  // Check if this looks like a reference that needs processing
1073
1121
  // Only process known reference types, ignore other @ strings (like npm packages)
1074
- if (isMetadataKeyword(value)) {
1075
- result[key] = await this.processFieldValue(value, baseDir, parentRecord, rootRecord, depth, batchContext, undefined, undefined, recordProvider, ownerRecord);
1122
+ if (IsMetadataKeyword(value)) {
1123
+ result[key] = await this.ProcessFieldValue(value, baseDir, parentRecord, rootRecord, depth, batchContext, undefined, undefined, recordProvider, ownerRecord);
1076
1124
  }
1077
1125
  else {
1078
1126
  result[key] = value;
@@ -1 +1 @@
1
- {"version":3,"file":"sync-engine.js","sourceRoot":"","sources":["../../src/lib/sync-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAwE,QAAQ,EAAE,OAAO,EAAc,YAAY,EAAY,MAAM,sBAAsB,CAAC;AACnK,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAoB,MAAM,uBAAuB,CAAC;AAE5E,OAAO,EACL,iBAAiB,EAEjB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,gCAAgC,CAAC;AAKxC;;;;GAIG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAU9C,YACE,OAAe,EACf,UAAkB,EAClB,YAA4D,EAC5D,aAAqB,EACrB,eAAwB;QAExB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAEvC,yDAAyD;QACzD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC;CACF;AA4ED;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,UAAU;IAKd,iBAAiB,CAAC,MAA0B;QACjD,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC;IACnC,CAAC;IASD,oFAAoF;IAC5E,IAAI,CAAC,OAAe;QAC1B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAEM,iBAAiB;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED;;;;;;;;OAQG;IACI,WAAW;QAChB,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC,wDAAwD;IACpF,CAAC;IAED;;;OAGG;IACH,YAAY,WAAqB;QA3CzB,uBAAkB,GAA8B,IAAI,CAAC;QAM7D;;;;WAIG;QACI,gBAAW,GAAuC,IAAI,CAAC;QAiC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC,CAAC,6EAA6E;QAC7G,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU;QACd,qEAAqE;QACrE,gEAAgE;IAClE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACH,KAAK,CAAC,iBAAiB,CACrB,KAAU,EACV,OAAe,EACf,YAAmD,EACnD,UAAiD,EACjD,QAAgB,CAAC,EACjB,YAA2B,EAC3B,mBAA6C,EAC7C,SAAkB,EAClB,cAAkC,EAClC,WAAkD;QAElD,8BAA8B;QAC9B,MAAM,mBAAmB,GAAG,EAAE,CAAC;QAC/B,IAAI,KAAK,GAAG,mBAAmB,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,4BAA4B,mBAAmB,4CAA4C,KAAK,EAAE,CAAC,CAAC;QACtH,CAAC;QACD,wEAAwE;QACxE,4FAA4F;QAC5F,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAChD,8DAA8D;YAC9D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;gBACzD,qFAAqF;gBACrF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;gBACrJ,yEAAyE;gBACzE,0EAA0E;gBAC1E,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAED,gEAAgE;QAChE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,mFAAmF;QACnF,iFAAiF;QACjF,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC,CAAC,2EAA2E;QAC3F,CAAC;QAED,8BAA8B;QAC9B,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,wDAAwD,KAAK,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,MAAM,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACxD,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAEtD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,SAAS,GAAI,WAAkD,CAAC,UAAU,EAAE,IAAI,IAAI,SAAS,CAAC;gBACpG,MAAM,IAAI,KAAK,CAAC,UAAU,cAAc,mCAAmC,SAAS,gDAAgD,CAAC,CAAC;YACxI,CAAC;YAED,gDAAgD;YAChD,IAAI,mBAAmB,IAAI,SAAS,EAAE,CAAC;gBACrC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC;oBAC7B,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,GAAG,mBAAmB,CAAC,WAAW,IAAI,SAAS,EAAE;oBACxD,UAAU,EAAE,KAAK;oBACjB,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC;iBAChC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,+BAA+B;QAC/B,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,0DAA0D,KAAK,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,MAAM,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACzD,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAExD,gDAAgD;YAChD,IAAI,mBAAmB,IAAI,SAAS,EAAE,CAAC;gBACrC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC;oBAC7B,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,GAAG,mBAAmB,CAAC,WAAW,IAAI,SAAS,EAAE;oBACxD,UAAU,EAAE,KAAK;oBACjB,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC;iBAChC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,6BAA6B;QAC7B,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,sDAAsD,KAAK,EAAE,CAAC,CAAC;YACjF,CAAC;YACD,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACnD,OAAO,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,CAAC;QAED,6BAA6B;QAC7B,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAW,CAAC;YACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEjD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,sEAAsE;gBACtE,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/B,IAAI,CAAC;wBACH,kDAAkD;wBAClD,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;wBAEhD,qDAAqD;wBACrD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wBAC/C,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;wBAE1F,IAAI,aAAkB,CAAC;wBACvB,IAAI,WAAW,EAAE,CAAC;4BAChB,iEAAiE;4BACjE,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;4BAC5C,aAAa,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;wBAC3D,CAAC;6BAAM,CAAC;4BACN,aAAa,GAAG,WAAW,CAAC;wBAC9B,CAAC;wBAED,+DAA+D;wBAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;wBACvC,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,GAAG,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;wBAE7I,iEAAiE;wBACjE,8DAA8D;wBAC9D,wDAAwD;wBACxD,OAAO,aAAa,CAAC;oBACvB,CAAC;oBAAC,OAAO,SAAS,EAAE,CAAC;wBACnB,sEAAsE;wBACtE,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;wBACzD,mEAAmE;wBACnE,OAAO,MAAM,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;oBAC1E,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,2DAA2D;oBAC3D,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACzD,qDAAqD;oBACrD,OAAO,MAAM,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5C,MAAM,GAAG,GAAG,mBAAmB,CAAC,KAAK,CAAW,CAAC;YAEjD,IAAI,CAAC;gBACH,wFAAwF;gBACxF,uEAAuE;gBACvE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;gBACpC,OAAO,QAAQ,CAAC,IAAI,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,+BAA+B;QAC/B,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/C,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAW,CAAC;YAEvD,yDAAyD;YACzD,oFAAoF;YACpF,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAClD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC;YACrD,CAAC;YAED,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAE7D,wCAAwC;YACxC,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,iBAAiB,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAClG,MAAM,SAAS,GAAG,iBAAiB,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAE3F,4CAA4C;YAC5C,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACpF,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAE3C,mDAAmD;YACnD,MAAM,YAAY,GAAmD,EAAE,CAAC;YACxE,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAE1C,sDAAsD;YACtD,MAAM,iBAAiB,GAA2B,EAAE,CAAC;YAErD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;gBAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,OAAO,KAAK,EAAE,CAAC,CAAC;gBACtE,CAAC;gBACD,MAAM,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,GAAG,UAAU,CAAC;gBACnD,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;gBAExC,uEAAuE;gBACvE,6DAA6D;gBAC7D,MAAM,eAAe,GAA4B,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;gBAChF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACjD,aAAa,EACb,OAAO,EACP,YAAY,EACZ,UAAU,EACV,KAAK,GAAG,CAAC,EACT,YAAY,EACZ,eAAe,EACf,eAAe,EAAE,+BAA+B;gBAChD,cAAc,CACf,CAAC;gBAEF,iFAAiF;gBACjF,IAAI,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,aAAa,KAAK,cAAc,EAAE,CAAC;oBAC3F,iBAAiB,CAAC,IAAI,CAAC;wBACrB,UAAU,EAAE,aAAa;wBACzB,QAAQ,EAAE,MAAM,CAAC,cAAc,CAAC;qBACjC,CAAC,CAAC;gBACL,CAAC;gBAED,YAAY,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC;YACvF,CAAC;YAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAC;YAC1D,CAAC;YAED,6DAA6D;YAC7D,qFAAqF;YACrF,IAAI,YAAY,GAAwB,EAAE,CAAC;YAC3C,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;gBAC3B,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;oBAC7B,mBAAmB;oBACnB,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,YAAY,EAAE,CAAC;wBAC3E,SAAS;oBACX,CAAC;oBACD,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACnC,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;wBACf,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;wBAC3C,uEAAuE;wBACvE,YAAY,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC9C,UAAU,EACV,OAAO,EACP,YAAY,EACZ,UAAU,EACV,KAAK,GAAG,CAAC,EACT,YAAY,EACZ,SAAS,EACT,SAAS,EACT,cAAc,CACf,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;YAEnJ,gDAAgD;YAChD,IAAI,mBAAmB,IAAI,SAAS,EAAE,CAAC;gBACrC,MAAM,IAAI,GAAa;oBACrB,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,GAAG,mBAAmB,CAAC,WAAW,IAAI,SAAS,EAAE;oBACxD,UAAU,EAAE,KAAK;oBACjB,QAAQ,EAAE,MAAM,CAAC,aAAa,CAAC;iBAChC,CAAC;gBAEF,kDAAkD;gBAClD,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjC,IAAI,CAAC,MAAM,GAAG,iBAAiB,CAAC;gBAClC,CAAC;gBAED,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,CAAC;YAED,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,4BAA4B;QAC5B,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAW,CAAC;YACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAErC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,EAAE,CAAC,CAAC;YAC/D,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH;;;;OAIG;IACK,mBAAmB,CACzB,UAAkB,EAClB,YAA4D;QAE5D,MAAM,YAAY,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAC9F,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACjC,MAAM,IAAI,GAAG,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;YAC3D,MAAM,KAAK,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;YACrE,OAAO,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,UAAkB,EAClB,YAA4D,EAC5D,aAAsB,KAAK,EAC3B,eAAoC,EAAE,EACtC,YAA2B,EAC3B,aAAsB,KAAK,EAC3B,aAAsB,EACtB,cAAkC;QAElC,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC1E,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;YACzE,0EAA0E;YAC1E,6DAA6D;YAC7D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,mDAAmD;QACnD,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,YAAY,YAAY,iBAAiB,EAAE,CAAC;gBAC9C,sBAAsB;gBACtB,MAAM,OAAO,GAAG,YAAY,CAAC,cAAc,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;gBACtE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBAC5B,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,cAAc,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;oBAC/E,CAAC;oBACD,OAAO,OAAO,CAAC;gBACjB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,+DAA+D;gBAC/D,KAAK,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;oBACtC,yCAAyC;oBACzC,IAAI,MAAM,CAAC,UAAU,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;wBAC3C,mCAAmC;wBACnC,IAAI,QAAQ,GAAG,IAAI,CAAC;wBACpB,KAAK,MAAM,EAAC,SAAS,EAAE,UAAU,EAAC,IAAI,YAAY,EAAE,CAAC;4BACnD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;4BAC1C,MAAM,qBAAqB,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;4BAC5E,MAAM,qBAAqB,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;4BAE3E,IAAI,qBAAqB,KAAK,qBAAqB,EAAE,CAAC;gCACpD,QAAQ,GAAG,KAAK,CAAC;gCACjB,MAAM;4BACR,CAAC;wBACH,CAAC;wBAED,IAAI,QAAQ,EAAE,CAAC;4BACb,6CAA6C;4BAC7C,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCACtC,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,gGAAgG;gCACnJ,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gCACjC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oCAC5B,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,cAAc,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;gCAC1E,CAAC;gCACD,OAAO,EAAE,CAAC;4BACZ,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YACrF,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YAC1F,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,gGAAgG;gBACnJ,MAAM,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACvC,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,cAAc,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;gBACxE,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,yEAAyE;QACzE,oFAAoF;QACpF,MAAM,EAAE,GAAG,cAAc;YACvB,CAAC,CAAC,IAAI,OAAO,CAAC,cAA6C,CAAC;YAC5D,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC;QAElB,8CAA8C;QAC9C,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,KAAK,MAAM,EAAC,SAAS,EAAE,UAAU,EAAC,IAAI,YAAY,EAAE,CAAC;YACnD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YAC1G,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,0BAA0B,UAAU,GAAG,CAAC,CAAC;YAC9E,CAAC;YAED,8BAA8B;YAC9B,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;gBAC/C,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS,UAAU,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5C,kEAAkE;gBAClE,iEAAiE;gBACjE,6DAA6D;gBAC7D,yCAAyC;gBACzC,uEAAuE;gBACvE,0DAA0D;gBAC1D,+DAA+D;gBAC/D,mEAAmE;gBACnE,gEAAgE;gBAChE,uBAAuB;gBACvB,EAAE;gBACF,kEAAkE;gBAClE,iEAAiE;gBACjE,kEAAkE;gBAClE,oEAAoE;gBACpE,gEAAgE;gBAChE,gEAAgE;gBAChE,oEAAoE;gBACpE,0DAA0D;gBAC1D,EAAE;gBACF,wDAAwD;gBACxD,wEAAwE;gBACxE,gEAAgE;gBAChE,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW;uBACjC,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC;uBAC1B,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAChC,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,OAAO,GAAG,UAAU,CAAC,wBAAwB,EAAE,IAAI,WAAW,CAAC,CAAC;oBACtE,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBAC/C,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC7F,CAAC;qBAAM,CAAC;oBACN,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC;YAC9B,UAAU,EAAE,UAAU;YACtB,WAAW,EAAE,WAAW;YACxB,OAAO,EAAE,CAAC;YACV,+DAA+D;YAC/D,oEAAoE;YACpE,gEAAgE;YAChE,2DAA2D;YAC3D,qEAAqE;YACrE,kEAAkE;YAClE,8CAA8C;YAC9C,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;YACjD,WAAW,EAAE,IAAI;SACX,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAE5B,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChD,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,gGAAgG;gBACnJ,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBACxC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAC5B,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,cAAc,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;gBAC1E,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,6DAA6D;QAC7D,IAAI,UAAU,EAAE,CAAC;YACf,4FAA4F;YAC5F,MAAM,eAAe,GAAG,6BAA6B,CAAC,UAAU,CAAC,CAAC;YAClE,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC7B,CAAC;YAED,MAAM,SAAS,GAAG,cAAc;gBAC9B,CAAC,CAAC,MAAM,cAAc,CAAC,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC;gBACpE,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACtE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,UAAU,EAAE,CAAC,CAAC;YACvE,CAAC;YAED,SAAS,CAAC,SAAS,EAAE,CAAC;YAEtB,sEAAsE;YAEtE,wBAAwB;YACxB,KAAK,MAAM,EAAC,SAAS,EAAE,UAAU,EAAC,IAAI,YAAY,EAAE,CAAC;gBACnD,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;oBAC3B,8BAA8B;oBAC9B,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;wBACvC,SAAiB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;oBACvC,CAAC;yBAAM,CAAC;wBACL,SAAiB,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC;oBAC7C,CAAC;gBACH,CAAC;YACH,CAAC;YAED,qCAAqC;YACrC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBACxD,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC;oBACpB,SAAiB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBAClC,CAAC;YACH,CAAC;YAED,qDAAqD;YACrD,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAC,SAAS,EAAE,UAAU,EAAC,EAAE,EAAE,CAAC,GAAG,SAAS,KAAK,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/G,OAAO,CAAC,GAAG,CAAC,oBAAoB,UAAU,iBAAiB,UAAU,EAAE,CAAC,CAAC;YACzE,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC;gBAChD,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,IAAI,KAAK,CAAC,yBAAyB,UAAU,KAAK,OAAO,EAAE,CAAC,CAAC;gBACrE,CAAC;gBAED,MAAM,MAAM,GAAG,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CACvD,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CACtE,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,UAAU,KAAK,MAAM,EAAE,CAAC,CAAC;YACpE,CAAC;YAED,oBAAoB;YACpB,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,gGAAgG;gBACnJ,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACvC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAC5B,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;oBAC3E,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;gBAClE,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAC,SAAS,EAAE,UAAU,EAAC,EAAE,EAAE,CAAC,GAAG,SAAS,KAAK,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/G,MAAM,YAAY,GAAG,sCAAsC,UAAU,WAAW,UAAU,EAAE,CAAC;QAE7F,mFAAmF;QACnF,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,IAAI,qBAAqB,CAC7B,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,aAAa,IAAI,WAAW,UAAU,IAAI,UAAU,EAAE,CACvD,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,aAAa,CAAC,QAAgB,EAAE,YAA0B;QAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,QAAQ,GAAwB,EAAE,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;QAEjE,+CAA+C;QAC/C,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;YAE9D,IAAI,YAAY,EAAE,QAAQ,EAAE,CAAC;gBAC3B,QAAQ,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;YACvD,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,MAAM,iBAAiB,GAAwB,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEvC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC;gBACH,iBAAiB,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACzF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,wCAAwC,KAAK,MAAM,KAAK,EAAE,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QAED,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,gBAAgB,CAAC,GAAW;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;QAErD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACvC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,UAAU,GAAG,EAAE,KAAK,CAAC,CAAC;gBACtE,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,iBAAiB,CAAC,IAAS;QACzB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACzC,wFAAwF;QACxF,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,GAAW,EAAE,KAAU;QAC5C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,kCAAkC;YAClC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;iBACtB,IAAI,EAAE;iBACN,MAAM,CAAC,CAAC,MAAW,EAAE,GAAW,EAAE,EAAE;gBACnC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBACzB,OAAO,MAAM,CAAC;YAChB,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,gCAAgC,CAAC,IAAS,EAAE,SAAiB;QACjE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,gCAAgC,CAAC,GAAQ,EAAE,SAAiB;QACxE,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO,GAAG,CAAC;QACb,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,gCAAgC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;QAC9F,CAAC;QAED,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1E,qDAAqD;gBACrD,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAW,CAAC;oBACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;oBAEvF,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAClC,IAAI,gBAAwB,CAAC;wBAE7B,iGAAiG;wBACjG,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;4BAC/B,IAAI,CAAC;gCACH,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gCAChD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;gCAC/C,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;gCAE1F,IAAI,mBAAwB,CAAC;gCAC7B,IAAI,WAAW,EAAE,CAAC;oCAChB,oCAAoC;oCACpC,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;oCAC5C,mBAAmB,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gCACjE,CAAC;qCAAM,CAAC;oCACN,mBAAmB,GAAG,WAAW,CAAC;gCACpC,CAAC;gCAED,qEAAqE;gCACrE,yEAAyE;gCACzE,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,gCAAgC,CACtE,mBAAmB,EACnB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CACvB,CAAC;gCAEF,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;4BACnE,CAAC;4BAAC,MAAM,CAAC;gCACP,kCAAkC;gCAClC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gCACrD,gBAAgB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;4BAClF,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACN,4CAA4C;4BAC5C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;4BACrD,gBAAgB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;wBAClF,CAAC;wBAED,MAAM,CAAC,GAAG,CAAC,GAAG;4BACZ,aAAa,EAAE,MAAM;4BACrB,UAAU,EAAE,KAAK;4BACjB,QAAQ,EAAE,gBAAgB;yBAC3B,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,yCAAyC;wBACzC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;oBACtB,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,yCAAyC;oBACzC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBACtB,CAAC;YACH,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC9E,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa,CAAC,UAAkB;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,kBAAkB,CAAC,UAAkB,EAAE,cAAkC;QAC7E,MAAM,MAAM,GAAG,cAAc;YAC3B,CAAC,CAAC,MAAM,cAAc,CAAC,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC;YACpE,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,UAAU,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CAAC,UAAU,CAAC,UAAkB,EAAE,UAA+B,EAAE,cAAkC;QACtG,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAElD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YACrF,oEAAoE;YACpE,oEAAoE;YACpE,gEAAgE;YAChE,gDAAgD;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YACtF,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,CAAC,YAAY,CAAC,cAAgD,CAAC,CAAC;gBACxE,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,+FAA+F;QAC/F,gFAAgF;QAChF,4EAA4E;QAC5E,kDAAkD;QAClD,MAAM,EAAE,GAAG,cAAc;YACvB,CAAC,CAAC,IAAI,OAAO,CAAC,cAA6C,CAAC;YAC5D,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC;QAElB,kCAAkC;QAClC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CAAC,iCAAiC,EAAE,CAAC,IAAI,cAAc,UAAU,EAAE,CAAC,CAAC;YACtF,CAAC;YAED,8BAA8B;YAC9B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;YAC9D,MAAM,MAAM,GAAG,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,MAAM,YAAY,GAAG,KAAK,EAAE,WAAW,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACzG,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,MAAM,MAAM,GAAG,YAAY,GAAG,MAAM,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC;YAC9B,UAAU,EAAE,UAAU;YACtB,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAClC,OAAO,EAAE,CAAC;SACX,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAErB,6DAA6D;QAC7D,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,yDAAyD;QACzD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QACzE,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QACxC,YAAY,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAEpD,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5C,IAAI,YAAY,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5C,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACK,KAAK,CAAC,8BAA8B,CAC1C,OAAe,EACf,QAAgB,EAChB,eAA4B,IAAI,GAAG,EAAE;QAErC,kCAAkC;QAClC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,gCAAgC,YAAY,6BAA6B,CAAC,CAAC;QAC7F,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAE/B,8CAA8C;QAC9C,sDAAsD;QACtD,MAAM,cAAc,GAAG,6BAA6B,CAAC;QAErD,IAAI,gBAAgB,GAAG,OAAO,CAAC;QAC/B,IAAI,KAA6B,CAAC;QAElC,oCAAoC;QACpC,OAAO,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACvD,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC;YACvC,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;YAEvC,oEAAoE;YACpE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAE3D,IAAI,CAAC;gBACH,oCAAoC;gBACpC,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;oBACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBAED,yBAAyB;gBACzB,MAAM,eAAe,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBAEjE,+DAA+D;gBAC/D,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAChE,eAAe,EACf,YAAY,EACZ,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,2DAA2D;iBAClF,CAAC;gBAEF,+DAA+D;gBAC/D,4EAA4E;gBAC5E,0EAA0E;gBAC1E,2EAA2E;gBAC3E,sDAAsD;gBACtD,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC;YACjF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,qCAAqC;gBACrC,MAAM,IAAI,KAAK,CAAC,+BAA+B,WAAW,QAAQ,QAAQ,KAAK,KAAK,EAAE,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;QAED,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACK,KAAK,CAAC,sBAAsB,CAClC,GAAQ,EACR,OAAe,EACf,YAAmD,EACnD,UAAiD,EACjD,QAAgB,CAAC,EACjB,YAA2B,EAC3B,cAAkC,EAClC,WAAkD;QAElD,4BAA4B;QAC5B,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO,GAAG,CAAC;QACb,CAAC;QAED,yFAAyF;QACzF,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;YAChJ,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QAED,gBAAgB;QAChB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,GAAG,CAChB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CACb,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC,CACvH,CACF,CAAC;QACJ,CAAC;QAED,iBAAiB;QACjB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAQ,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/C,sDAAsD;gBACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC9B,6DAA6D;oBAC7D,iFAAiF;oBACjF,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC7B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;oBAC/J,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;oBACtB,CAAC;gBACH,CAAC;qBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACrC,qCAAqC;oBACrC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;gBAC9I,CAAC;qBAAM,CAAC;oBACN,8BAA8B;oBAC9B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBACtB,CAAC;YACH,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,gCAAgC;QAChC,OAAO,GAAG,CAAC;IACb,CAAC;CAEF"}
1
+ {"version":3,"file":"sync-engine.js","sourceRoot":"","sources":["../../src/lib/sync-engine.ts"],"names":[],"mappings":"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"}
@@ -120,15 +120,23 @@ export declare class SyncMetadataEngine extends BaseEngine<SyncMetadataEngine> {
120
120
  [key: `cached_${string}`]: BaseEntity[] | undefined;
121
121
  /** Non-fatal warnings collected during preload (malformed shapes, oversized entities). Drained by the caller after `Config()`. */
122
122
  private warnings;
123
+ InitializeEngine(syncEngine: SyncEngine): void;
124
+ /** @deprecated Use {@link InitializeEngine}. */
123
125
  initializeEngine(syncEngine: SyncEngine): void;
126
+ SetEntityDirs(dirs: string[]): void;
127
+ /** @deprecated Use {@link SetEntityDirs}. */
124
128
  setEntityDirs(dirs: string[]): void;
125
129
  /** Returns and clears the warnings collected during the last preload run. */
130
+ DrainWarnings(): string[];
131
+ /** @deprecated Use {@link DrainWarnings}. */
126
132
  drainWarnings(): string[];
127
133
  /**
128
134
  * Property name on this engine instance under which cached `BaseEntity[]`
129
135
  * arrays for the given entity are stored. `BaseEngine.applyImmediateMutation`
130
136
  * reads/writes these slots directly, so we use a deterministic naming scheme.
131
137
  */
138
+ GetPropertyNameForEntity(entityName: string): `cached_${string}`;
139
+ /** @deprecated Use {@link GetPropertyNameForEntity}. */
132
140
  getPropertyNameForEntity(entityName: string): `cached_${string}`;
133
141
  /**
134
142
  * Scan the metadata tree for touched entities, then fill one slot per
@@ -157,6 +165,11 @@ export declare class SyncMetadataEngine extends BaseEngine<SyncMetadataEngine> {
157
165
  * Build a deterministic composite key from lookup fields for indexed O(1) lookup.
158
166
  * Matches the normalization used in resolveLookup (trimmed, lowercased, sorted by field name).
159
167
  */
168
+ BuildLookupCompositeKey(fields: Array<{
169
+ fieldName: string;
170
+ fieldValue: unknown;
171
+ }>): string;
172
+ /** @deprecated Use {@link BuildLookupCompositeKey}. */
160
173
  buildLookupCompositeKey(fields: Array<{
161
174
  fieldName: string;
162
175
  fieldValue: unknown;
@@ -175,6 +188,8 @@ export declare class SyncMetadataEngine extends BaseEngine<SyncMetadataEngine> {
175
188
  * Rebuilds both the PK indexes and the lookup indexes for the specified entity names
176
189
  * (or all preloaded entity names if omitted). Useful when preloaded data has been updated.
177
190
  */
191
+ RebuildIndexes(entityNames?: Iterable<string>): void;
192
+ /** @deprecated Use {@link RebuildIndexes}. */
178
193
  rebuildIndexes(entityNames?: Iterable<string>): void;
179
194
  /**
180
195
  * O(1) lookup against the preload cache using field/value pairs, with an array-scan
@@ -182,6 +197,11 @@ export declare class SyncMetadataEngine extends BaseEngine<SyncMetadataEngine> {
182
197
  *
183
198
  * Returns matching `BaseEntity`, or `null` if not found in cache.
184
199
  */
200
+ FindCachedByLookup(entityName: string, lookupFields: Array<{
201
+ fieldName: string;
202
+ fieldValue: string;
203
+ }>): BaseEntity | null;
204
+ /** @deprecated Use {@link FindCachedByLookup}. */
185
205
  findCachedByLookup(entityName: string, lookupFields: Array<{
186
206
  fieldName: string;
187
207
  fieldValue: string;
@@ -194,8 +214,14 @@ export declare class SyncMetadataEngine extends BaseEngine<SyncMetadataEngine> {
194
214
  * Returns `null` when the entity isn't preloaded or the PK isn't in
195
215
  * the cache — callers fall through to a DB load.
196
216
  */
217
+ FindCachedByPrimaryKey(entityName: string, primaryKey: Record<string, unknown>): BaseEntity | null;
218
+ /** @deprecated Use {@link FindCachedByPrimaryKey}. */
197
219
  findCachedByPrimaryKey(entityName: string, primaryKey: Record<string, unknown>): BaseEntity | null;
220
+ MarkEntityAsPreloaded(entityName: string): void;
221
+ /** @deprecated Use {@link MarkEntityAsPreloaded}. */
198
222
  markEntityAsPreloaded(entityName: string): void;
223
+ IsEntityPreloaded(entityName: string): boolean;
224
+ /** @deprecated Use {@link IsEntityPreloaded}. */
199
225
  isEntityPreloaded(entityName: string): boolean;
200
226
  /**
201
227
  * Try to serve an entity's slot from another loaded engine's cache instead
@@ -213,8 +239,12 @@ export declare class SyncMetadataEngine extends BaseEngine<SyncMetadataEngine> {
213
239
  * Returns true when a donor was registered; the caller then skips the
214
240
  * self-load config for this entity.
215
241
  */
242
+ DelegateEntityIfCached(entityName: string): boolean;
243
+ /** @deprecated Use {@link DelegateEntityIfCached}. */
216
244
  delegateEntityIfCached(entityName: string): boolean;
217
245
  /** Delegated entity → donor engine pairings from the last `Config()` run, for logging. */
246
+ GetDelegationSummary(): DelegationSummaryEntry[];
247
+ /** @deprecated Use {@link GetDelegationSummary}. */
218
248
  getDelegationSummary(): DelegationSummaryEntry[];
219
249
  /**
220
250
  * The single resolution point for an entity's backing array: the donor
@@ -223,23 +253,43 @@ export declare class SyncMetadataEngine extends BaseEngine<SyncMetadataEngine> {
223
253
  * `undefined` when no slot exists yet.
224
254
  */
225
255
  private resolveSlot;
256
+ GetCachedEntities(entityName: string): BaseEntity[];
257
+ /** @deprecated Use {@link GetCachedEntities}. */
226
258
  getCachedEntities(entityName: string): BaseEntity[];
227
259
  /**
228
260
  * Test fixture helper to set preloaded entity array and build indexes.
229
261
  */
262
+ SetCachedEntitiesForTesting(entityName: string, entities: BaseEntity[]): void;
263
+ /** @deprecated Use {@link SetCachedEntitiesForTesting}. */
230
264
  setCachedEntitiesForTesting(entityName: string, entities: BaseEntity[]): void;
265
+ GetCachedFile(filePath: string): CachedFile | undefined;
266
+ /** @deprecated Use {@link GetCachedFile}. */
231
267
  getCachedFile(filePath: string): CachedFile | undefined;
268
+ CacheFile(filePath: string, rawData: unknown, fileData: unknown): void;
269
+ /** @deprecated Use {@link CacheFile}. */
232
270
  cacheFile(filePath: string, rawData: unknown, fileData: unknown): void;
233
271
  /**
234
272
  * Invalidate the cached file content for a path. Call this immediately
235
273
  * before (or after) any code path that writes back to a metadata JSON
236
274
  * file during the sync, so a subsequent reader gets fresh contents.
237
275
  */
276
+ InvalidateCachedFile(filePath: string): void;
277
+ /** @deprecated Use {@link InvalidateCachedFile}. */
238
278
  invalidateCachedFile(filePath: string): void;
279
+ AddEntityToCache(entityName: string, entity: BaseEntity): void;
280
+ /** @deprecated Use {@link AddEntityToCache}. */
239
281
  addEntityToCache(entityName: string, entity: BaseEntity): void;
282
+ RemoveEntityFromCache(entityName: string, primaryKey: Record<string, unknown>): void;
283
+ /** @deprecated Use {@link RemoveEntityFromCache}. */
240
284
  removeEntityFromCache(entityName: string, primaryKey: Record<string, unknown>): void;
285
+ GetCachedLookup(key: string): string | undefined;
286
+ /** @deprecated Use {@link GetCachedLookup}. */
241
287
  getCachedLookup(key: string): string | undefined;
288
+ SetCachedLookup(key: string, id: string, entityName?: string): void;
289
+ /** @deprecated Use {@link SetCachedLookup}. */
242
290
  setCachedLookup(key: string, id: string, entityName?: string): void;
291
+ ClearLookupCache(): void;
292
+ /** @deprecated Use {@link ClearLookupCache}. */
243
293
  clearLookupCache(): void;
244
294
  /**
245
295
  * Invalidate only the lookup entries that touch a given entity. Avoids
@@ -250,12 +300,16 @@ export declare class SyncMetadataEngine extends BaseEngine<SyncMetadataEngine> {
250
300
  * `resolveLookup` integration always passes the entity name, so this
251
301
  * is only a concern for callers that bypass that path.
252
302
  */
303
+ InvalidateLookupsForEntity(entityName: string): void;
304
+ /** @deprecated Use {@link InvalidateLookupsForEntity}. */
253
305
  invalidateLookupsForEntity(entityName: string): void;
254
306
  /**
255
307
  * Canonical string representation of a record's primary key, used as the
256
308
  * key in entity-cache dedup/removal lookups. UUID-typed components are
257
309
  * lower-cased to bridge SQL Server (upper) vs PG (lower).
258
310
  */
311
+ SerializePrimaryKey(entityInfo: EntityInfo, primaryKey: Record<string, unknown>): string;
312
+ /** @deprecated Use {@link SerializePrimaryKey}. */
259
313
  serializePrimaryKey(entityInfo: EntityInfo, primaryKey: Record<string, unknown>): string;
260
314
  /**
261
315
  * Walk every entity referenced by metadata files (including nested