@verdant-web/store 2.6.0 → 2.7.0

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 (105) hide show
  1. package/dist/bundle/index.js +9 -9
  2. package/dist/bundle/index.js.map +4 -4
  3. package/dist/cjs/{entities/FakeWeakRef.d.ts → FakeWeakRef.d.ts} +2 -2
  4. package/dist/cjs/{entities/FakeWeakRef.js → FakeWeakRef.js} +4 -4
  5. package/dist/cjs/FakeWeakRef.js.map +1 -0
  6. package/dist/cjs/IDBService.d.ts +1 -1
  7. package/dist/cjs/IDBService.js +18 -1
  8. package/dist/cjs/IDBService.js.map +1 -1
  9. package/dist/cjs/__tests__/documents.test.js +17 -0
  10. package/dist/cjs/__tests__/documents.test.js.map +1 -1
  11. package/dist/cjs/__tests__/fixtures/testStorage.d.ts +1 -1
  12. package/dist/cjs/__tests__/fixtures/testStorage.js +3 -2
  13. package/dist/cjs/__tests__/fixtures/testStorage.js.map +1 -1
  14. package/dist/cjs/__tests__/mutations.test.d.ts +1 -0
  15. package/dist/cjs/__tests__/mutations.test.js +42 -0
  16. package/dist/cjs/__tests__/mutations.test.js.map +1 -0
  17. package/dist/cjs/client/Client.d.ts +6 -4
  18. package/dist/cjs/client/Client.js +1 -5
  19. package/dist/cjs/client/Client.js.map +1 -1
  20. package/dist/cjs/client/ClientDescriptor.d.ts +12 -4
  21. package/dist/cjs/client/ClientDescriptor.js +17 -0
  22. package/dist/cjs/client/ClientDescriptor.js.map +1 -1
  23. package/dist/cjs/context.d.ts +1 -0
  24. package/dist/cjs/entities/DocumentFamiliyCache.d.ts +2 -1
  25. package/dist/cjs/entities/DocumentFamiliyCache.js +6 -3
  26. package/dist/cjs/entities/DocumentFamiliyCache.js.map +1 -1
  27. package/dist/cjs/entities/Entity.d.ts +7 -2
  28. package/dist/cjs/entities/Entity.js +33 -3
  29. package/dist/cjs/entities/Entity.js.map +1 -1
  30. package/dist/cjs/entities/EntityStore.js +14 -13
  31. package/dist/cjs/entities/EntityStore.js.map +1 -1
  32. package/dist/cjs/index.d.ts +1 -1
  33. package/dist/cjs/index.js +2 -1
  34. package/dist/cjs/index.js.map +1 -1
  35. package/dist/cjs/metadata/BaselinesStore.js +15 -5
  36. package/dist/cjs/metadata/BaselinesStore.js.map +1 -1
  37. package/dist/cjs/migration/openDatabase.js +5 -16
  38. package/dist/cjs/migration/openDatabase.js.map +1 -1
  39. package/dist/cjs/sync/Sync.d.ts +6 -5
  40. package/dist/cjs/sync/Sync.js.map +1 -1
  41. package/dist/esm/{entities/FakeWeakRef.d.ts → FakeWeakRef.d.ts} +2 -2
  42. package/dist/esm/{entities/FakeWeakRef.js → FakeWeakRef.js} +2 -2
  43. package/dist/esm/FakeWeakRef.js.map +1 -0
  44. package/dist/esm/IDBService.d.ts +1 -1
  45. package/dist/esm/IDBService.js +18 -1
  46. package/dist/esm/IDBService.js.map +1 -1
  47. package/dist/esm/__tests__/documents.test.js +17 -0
  48. package/dist/esm/__tests__/documents.test.js.map +1 -1
  49. package/dist/esm/__tests__/fixtures/testStorage.d.ts +1 -1
  50. package/dist/esm/__tests__/fixtures/testStorage.js +4 -3
  51. package/dist/esm/__tests__/fixtures/testStorage.js.map +1 -1
  52. package/dist/esm/__tests__/mutations.test.d.ts +1 -0
  53. package/dist/esm/__tests__/mutations.test.js +40 -0
  54. package/dist/esm/__tests__/mutations.test.js.map +1 -0
  55. package/dist/esm/client/Client.d.ts +6 -4
  56. package/dist/esm/client/Client.js +2 -6
  57. package/dist/esm/client/Client.js.map +1 -1
  58. package/dist/esm/client/ClientDescriptor.d.ts +12 -4
  59. package/dist/esm/client/ClientDescriptor.js +17 -0
  60. package/dist/esm/client/ClientDescriptor.js.map +1 -1
  61. package/dist/esm/context.d.ts +1 -0
  62. package/dist/esm/entities/DocumentFamiliyCache.d.ts +2 -1
  63. package/dist/esm/entities/DocumentFamiliyCache.js +6 -3
  64. package/dist/esm/entities/DocumentFamiliyCache.js.map +1 -1
  65. package/dist/esm/entities/Entity.d.ts +7 -2
  66. package/dist/esm/entities/Entity.js +33 -3
  67. package/dist/esm/entities/Entity.js.map +1 -1
  68. package/dist/esm/entities/EntityStore.js +15 -14
  69. package/dist/esm/entities/EntityStore.js.map +1 -1
  70. package/dist/esm/index.d.ts +1 -1
  71. package/dist/esm/index.js +1 -1
  72. package/dist/esm/index.js.map +1 -1
  73. package/dist/esm/metadata/BaselinesStore.js +16 -6
  74. package/dist/esm/metadata/BaselinesStore.js.map +1 -1
  75. package/dist/esm/migration/openDatabase.js +6 -17
  76. package/dist/esm/migration/openDatabase.js.map +1 -1
  77. package/dist/esm/sync/Sync.d.ts +6 -5
  78. package/dist/esm/sync/Sync.js.map +1 -1
  79. package/dist/tsconfig-cjs.tsbuildinfo +1 -1
  80. package/dist/tsconfig.tsbuildinfo +1 -1
  81. package/package.json +9 -4
  82. package/src/{entities/FakeWeakRef.ts → FakeWeakRef.ts} +2 -2
  83. package/src/IDBService.ts +20 -2
  84. package/src/__tests__/documents.test.ts +19 -0
  85. package/src/__tests__/fixtures/testStorage.ts +4 -7
  86. package/src/__tests__/mutations.test.ts +51 -0
  87. package/src/client/Client.ts +5 -11
  88. package/src/client/ClientDescriptor.ts +34 -7
  89. package/src/context.ts +1 -0
  90. package/src/entities/DocumentFamiliyCache.ts +7 -2
  91. package/src/entities/Entity.ts +41 -6
  92. package/src/entities/EntityStore.ts +23 -15
  93. package/src/index.ts +1 -0
  94. package/src/metadata/BaselinesStore.ts +17 -6
  95. package/src/migration/openDatabase.ts +11 -21
  96. package/src/sync/Sync.ts +13 -9
  97. package/dist/cjs/entities/FakeWeakRef.js.map +0 -1
  98. package/dist/cjs/indexes.d.ts +0 -3
  99. package/dist/cjs/indexes.js +0 -20
  100. package/dist/cjs/indexes.js.map +0 -1
  101. package/dist/esm/entities/FakeWeakRef.js.map +0 -1
  102. package/dist/esm/indexes.d.ts +0 -3
  103. package/dist/esm/indexes.js +0 -15
  104. package/dist/esm/indexes.js.map +0 -1
  105. package/src/indexes.ts +0 -31
@@ -1,6 +1,5 @@
1
1
  import { applyPatch, assignOid, cloneDeep, compareTimestampSchemaVersions, EventSubscriber, } from '@verdant-web/common';
2
2
  import { Entity, refreshEntity } from './Entity.js';
3
- import { WeakRef } from './FakeWeakRef.js';
4
3
  import { Resolvable } from '../utils/Resolvable.js';
5
4
  /**
6
5
  * Local operations: operations on this client that haven't
@@ -203,7 +202,7 @@ export class DocumentFamilyCache extends EventSubscriber {
203
202
  return null;
204
203
  return this.storeTools.time.getWallClockTime(logicalTimestamp);
205
204
  };
206
- this.getEntity = (oid, schema, parent) => {
205
+ this.getEntity = (oid, schema, parent, readonlyKeys) => {
207
206
  let entityRef = this.entities.get(oid);
208
207
  let entity = entityRef === null || entityRef === void 0 ? void 0 : entityRef.deref();
209
208
  if (!entity) {
@@ -213,9 +212,10 @@ export class DocumentFamilyCache extends EventSubscriber {
213
212
  fieldSchema: schema,
214
213
  store: this.storeTools,
215
214
  parent,
215
+ readonlyKeys,
216
216
  });
217
217
  // immediately add to cache and queue a removal if nobody subscribed
218
- this.entities.set(oid, new WeakRef(entity));
218
+ this.entities.set(oid, this.context.weakRef(entity));
219
219
  }
220
220
  return entity;
221
221
  };
@@ -272,5 +272,8 @@ export class DocumentFamilyCache extends EventSubscriber {
272
272
  };
273
273
  this.context = context;
274
274
  }
275
+ get weakRef() {
276
+ return this.context.weakRef;
277
+ }
275
278
  }
276
279
  //# sourceMappingURL=DocumentFamiliyCache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentFamiliyCache.js","sourceRoot":"","sources":["../../../src/entities/DocumentFamiliyCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DocumentFamiliyCache.js","sourceRoot":"","sources":["../../../src/entities/DocumentFamiliyCache.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { EventSubscriber, FileData, ObjectIdentifier, Operation, PatchCreator, StorageFieldSchema, StorageFieldsSchema, TimestampProvider } from '@verdant-web/common';
2
2
  import { EntityFile } from '../files/EntityFile.js';
3
- import { WeakRef } from './FakeWeakRef.js';
4
3
  export declare const ADD_OPERATIONS = "@@addOperations";
5
4
  export declare const DELETE = "@@delete";
6
5
  export declare const REBASE = "@@rebase";
@@ -14,6 +13,7 @@ export interface CacheTools {
14
13
  };
15
14
  getEntity(oid: ObjectIdentifier, schema: StorageFieldSchema, parent?: Entity): Entity;
16
15
  hasOid(oid: ObjectIdentifier): boolean;
16
+ weakRef<T extends object>(value: T): WeakRef<T>;
17
17
  }
18
18
  export interface StoreTools {
19
19
  addLocalOperations(operations: Operation[]): void;
@@ -56,6 +56,7 @@ export declare class Entity<Init = any, KeyValue extends BaseEntityValue = any,
56
56
  protected readonly cache: CacheTools;
57
57
  protected _deleted: boolean;
58
58
  protected parent: WeakRef<Entity<any, any>> | undefined;
59
+ protected readonly readonlyKeys: (keyof Init)[];
59
60
  private cachedSnapshot;
60
61
  private cachedDestructure;
61
62
  private cachedDeepUpdatedAt;
@@ -69,13 +70,14 @@ export declare class Entity<Init = any, KeyValue extends BaseEntityValue = any,
69
70
  get updatedAt(): number | null;
70
71
  get deepUpdatedAt(): number | null;
71
72
  get uid(): string;
72
- constructor({ oid, store, fieldSchema, cache, parent, onAllUnsubscribed, }: {
73
+ constructor({ oid, store, fieldSchema, cache, parent, onAllUnsubscribed, readonlyKeys, }: {
73
74
  oid: ObjectIdentifier;
74
75
  store: StoreTools;
75
76
  fieldSchema: StorageFieldSchema | StorageFieldsSchema;
76
77
  cache: CacheTools;
77
78
  parent?: Entity<any, any>;
78
79
  onAllUnsubscribed?: () => void;
80
+ readonlyKeys?: (keyof Init)[];
79
81
  });
80
82
  private [REFRESH];
81
83
  private [DEEP_CHANGE];
@@ -89,6 +91,7 @@ export declare class Entity<Init = any, KeyValue extends BaseEntityValue = any,
89
91
  protected processInputValue: (value: any, key: any) => any;
90
92
  get: <Key extends keyof KeyValue>(key: Key) => KeyValue[Key];
91
93
  getAll: () => KeyValue;
94
+ private getFileSnapshot;
92
95
  /**
93
96
  * Returns a copy of the entity and all sub-objects as
94
97
  * a plain object or array.
@@ -145,6 +148,7 @@ export declare class Entity<Init = any, KeyValue extends BaseEntityValue = any,
145
148
  some: (predicate: (value: ListItemValue<KeyValue>) => boolean) => boolean;
146
149
  every: (predicate: (value: ListItemValue<KeyValue>) => boolean) => boolean;
147
150
  find: (predicate: (value: ListItemValue<KeyValue>) => boolean) => ListItemValue<KeyValue> | undefined;
151
+ includes: (item: ListItemValue<KeyValue>) => any;
148
152
  }
149
153
  export interface BaseEntity<Init, Value extends BaseEntityValue, Snapshot = DataFromInit<Init>> {
150
154
  dispose: () => void;
@@ -190,6 +194,7 @@ export interface ListEntity<Init, Value extends BaseEntityValue, Snapshot = Data
190
194
  some(predicate: (value: ListItemValue<Value>) => boolean): boolean;
191
195
  every(predicate: (value: ListItemValue<Value>) => boolean): boolean;
192
196
  find(predicate: (value: ListItemValue<Value>) => boolean): ListItemValue<Value> | undefined;
197
+ includes(value: ListItemValue<Value>): boolean;
193
198
  }
194
199
  export type AnyEntity<Init, KeyValue extends BaseEntityValue, Snapshot extends any> = ListEntity<Init, KeyValue, Snapshot> | ObjectEntity<Init, KeyValue, Snapshot>;
195
200
  type ListItemValue<KeyValue> = KeyValue extends Array<infer T> ? T : never;
@@ -1,7 +1,6 @@
1
1
  var _a, _b;
2
2
  import { assert, assignOid, cloneDeep, decomposeOid, EventSubscriber, isFileRef, isObjectRef, maybeGetOid, traverseCollectionFieldsAndApplyDefaults, } from '@verdant-web/common';
3
3
  import { processValueFiles } from '../files/utils.js';
4
- import { WeakRef } from './FakeWeakRef.js';
5
4
  export const ADD_OPERATIONS = '@@addOperations';
6
5
  export const DELETE = '@@delete';
7
6
  export const REBASE = '@@rebase';
@@ -73,7 +72,7 @@ export class Entity {
73
72
  get uid() {
74
73
  return this.oid;
75
74
  }
76
- constructor({ oid, store, fieldSchema, cache, parent, onAllUnsubscribed, }) {
75
+ constructor({ oid, store, fieldSchema, cache, parent, onAllUnsubscribed, readonlyKeys = [], }) {
77
76
  // if current is null, the entity was deleted.
78
77
  this._current = null;
79
78
  this._deleted = false;
@@ -243,6 +242,9 @@ export class Entity {
243
242
  if (isObjectRef(item)) {
244
243
  return (_c = this.getSubObject(item.id, idx)) === null || _c === void 0 ? void 0 : _c.getSnapshot();
245
244
  }
245
+ else if (isFileRef(item)) {
246
+ return this.getFileSnapshot(item);
247
+ }
246
248
  return item;
247
249
  });
248
250
  }
@@ -252,6 +254,9 @@ export class Entity {
252
254
  if (isObjectRef(value)) {
253
255
  snapshot[key] = (_c = this.getSubObject(value.id, key)) === null || _c === void 0 ? void 0 : _c.getSnapshot();
254
256
  }
257
+ else if (isFileRef(value)) {
258
+ snapshot[key] = this.getFileSnapshot(value);
259
+ }
255
260
  }
256
261
  }
257
262
  assignOid(snapshot, this.oid);
@@ -271,6 +276,9 @@ export class Entity {
271
276
  return Object.values(this.getAll());
272
277
  };
273
278
  this.set = (key, value) => {
279
+ if (this.readonlyKeys.includes(key)) {
280
+ throw new Error(`Cannot set readonly key ${key.toString()}`);
281
+ }
274
282
  this.addPatches(this.store.patchCreator.createSet(this.oid, key, this.processInputValue(value, key)));
275
283
  };
276
284
  this.delete = (key) => {
@@ -292,6 +300,9 @@ export class Entity {
292
300
  }
293
301
  };
294
302
  this.getDeleteMode = (key) => {
303
+ if (this.readonlyKeys.includes(key)) {
304
+ return false;
305
+ }
295
306
  // 'any' is always deletable, and map values can be removed completely
296
307
  if (this.fieldSchema.type === 'any' || this.fieldSchema.type === 'map') {
297
308
  return 'delete';
@@ -335,6 +346,9 @@ export class Entity {
335
346
  throw new Error('Cannot use .update without merge if the field has a strict schema type. merge: false is only available on "any" or "map" types.');
336
347
  }
337
348
  for (const [key, field] of Object.entries(value)) {
349
+ if (this.readonlyKeys.includes(key)) {
350
+ throw new Error(`Cannot set readonly key ${key.toString()}`);
351
+ }
338
352
  const fieldSchema = this.getChildFieldSchema(key);
339
353
  if (fieldSchema) {
340
354
  traverseCollectionFieldsAndApplyDefaults(field, fieldSchema);
@@ -438,13 +452,17 @@ export class Entity {
438
452
  this.find = (predicate) => {
439
453
  return this.getAsWrapped().find(predicate);
440
454
  };
455
+ this.includes = (item) => {
456
+ return this.has(item);
457
+ };
441
458
  this.oid = oid;
442
459
  const { collection } = decomposeOid(oid);
443
460
  this.collection = collection;
444
- this.parent = parent && new WeakRef(parent);
445
461
  this.store = store;
446
462
  this.fieldSchema = fieldSchema;
463
+ this.readonlyKeys = readonlyKeys;
447
464
  this.cache = cache;
465
+ this.parent = parent && this.cache.weakRef(parent);
448
466
  const { view, deleted, lastTimestamp } = this.cache.computeView(oid);
449
467
  this._current = view;
450
468
  this._deleted = deleted;
@@ -460,6 +478,18 @@ export class Entity {
460
478
  }
461
479
  assert(!!fieldSchema, 'Field schema must be provided');
462
480
  }
481
+ getFileSnapshot(item) {
482
+ const file = this.store.getFile(item.id);
483
+ if (file.url) {
484
+ return { id: item.id, url: file.url };
485
+ }
486
+ else if (file.loading || file.failed) {
487
+ return { id: item.id, url: undefined };
488
+ }
489
+ else {
490
+ return { id: item.id, url: null };
491
+ }
492
+ }
463
493
  get length() {
464
494
  return this.value.length;
465
495
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../../src/entities/Entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../../src/entities/Entity.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { assert, assignIndexValues, assignOid, assignOidPropertiesToAllSubObjects, Batcher, cloneDeep, decomposeOid, generateId, getOidRoot, getUndoOperations, groupBaselinesByRootOid, groupPatchesByIdentifier, groupPatchesByRootOid, removeOidsFromAllSubObjects, } from '@verdant-web/common';
1
+ import { assert, assignOid, Batcher, decomposeOid, generateId, getIndexValues, getOidRoot, getUndoOperations, groupBaselinesByRootOid, groupPatchesByIdentifier, groupPatchesByRootOid, removeOidsFromAllSubObjects, } from '@verdant-web/common';
2
2
  import { processValueFiles } from '../files/utils.js';
3
3
  import { storeRequestPromise } from '../idb.js';
4
4
  import { DocumentFamilyCache } from './DocumentFamiliyCache.js';
@@ -28,11 +28,15 @@ export class EntityStore {
28
28
  const { collection } = decomposeOid(oid);
29
29
  if (!this.schema.collections[collection]) {
30
30
  this.log('warn', `Missing schema for collection: ${collection}`);
31
- return null;
31
+ return { schema: null, readonlyKeys: [] };
32
32
  }
33
+ const schema = this.schema.collections[collection];
33
34
  return {
34
- type: 'object',
35
- properties: this.schema.collections[collection].fields,
35
+ readonlyKeys: [schema.primaryKey],
36
+ schema: {
37
+ type: 'object',
38
+ properties: schema.fields,
39
+ },
36
40
  };
37
41
  };
38
42
  this.refreshFamilyCache = async (familyCache, dropUnconfirmed = false, dropAll = false) => {
@@ -117,10 +121,7 @@ export class EntityStore {
117
121
  }
118
122
  const snapshot = entity === null || entity === void 0 ? void 0 : entity.getSnapshot();
119
123
  if (snapshot) {
120
- const stored = cloneDeep(snapshot);
121
- assignIndexValues(this.schema.collections[collection], stored);
122
- // IMPORTANT! this property must be assigned
123
- assignOidPropertiesToAllSubObjects(stored);
124
+ const stored = getIndexValues(this.schema.collections[collection], snapshot);
124
125
  try {
125
126
  const tx = this.db.transaction(collection, 'readwrite');
126
127
  const store = tx.objectStore(collection);
@@ -142,11 +143,11 @@ export class EntityStore {
142
143
  };
143
144
  this.get = async (oid) => {
144
145
  const familyCache = await this.openFamilyCache(oid);
145
- const schema = this.getDocumentSchema(oid);
146
+ const { schema, readonlyKeys } = this.getDocumentSchema(oid);
146
147
  if (!schema) {
147
148
  return null;
148
149
  }
149
- return familyCache.getEntity(oid, schema);
150
+ return familyCache.getEntity(oid, schema, undefined, readonlyKeys);
150
151
  };
151
152
  /**
152
153
  * Advanced usage!
@@ -156,11 +157,11 @@ export class EntityStore {
156
157
  this.getCached = (oid) => {
157
158
  const cache = this.documentFamilyCaches.get(oid);
158
159
  if (cache) {
159
- const schema = this.getDocumentSchema(oid);
160
+ const { schema, readonlyKeys } = this.getDocumentSchema(oid);
160
161
  if (!schema) {
161
162
  return null;
162
163
  }
163
- return cache.getEntity(oid, schema);
164
+ return cache.getEntity(oid, schema, undefined, readonlyKeys);
164
165
  }
165
166
  return null;
166
167
  };
@@ -182,11 +183,11 @@ export class EntityStore {
182
183
  // only holding it in memory would introduce lag before it shows up
183
184
  // in other queries.
184
185
  await this.submitOperations(operations, options);
185
- const schema = this.getDocumentSchema(oid);
186
+ const { schema, readonlyKeys } = this.getDocumentSchema(oid);
186
187
  if (!schema) {
187
188
  throw new Error(`Cannot create a document in the ${decomposeOid(oid).collection} collection; it is not defined in the current schema version.`);
188
189
  }
189
- return familyCache.getEntity(oid, schema);
190
+ return familyCache.getEntity(oid, schema, undefined, readonlyKeys);
190
191
  };
191
192
  this.addOperationsToOpenCaches = async (operations, info) => {
192
193
  const operationsByOid = groupPatchesByRootOid(operations);
@@ -1 +1 @@
1
- {"version":3,"file":"EntityStore.js","sourceRoot":"","sources":["../../../src/entities/EntityStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityStore.js","sourceRoot":"","sources":["../../../src/entities/EntityStore.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,MAAM,EAEN,SAAS,EAET,OAAO,EAEP,YAAY,EAGZ,UAAU,EACV,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EAGrB,2BAA2B,GAG3B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAEhD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,MAAM,iBAAiB,GAAG,WAAW,CAAC;AAQtC,MAAM,OAAO,WAAW;IAavB,IAAY,GAAG;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;IACzB,CAAC;IACD,IAAY,EAAE;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;IAChC,CAAC;IACD,IAAY,WAAW;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;IACjC,CAAC;IACD,IAAY,MAAM;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAC5B,CAAC;IAKD,YAAY,EACX,OAAO,EACP,IAAI,EACJ,YAAY,GAAG,GAAG,EAClB,KAAK,GAML;QAtCO,yBAAoB,GAAG,IAAI,GAAG,EAA+B,CAAC;QAQ9D,iBAAY,GAAmB,EAAE,CAAC;QAElC,cAAS,GAAG,KAAK,CAAC;QAelB,oBAAe,GAAG,iBAAiB,CAAC;QAiC5C,eAAU,GAAG,CAAC,OAAgB,EAAE,EAAE;YACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACxB,CAAC,CAAC;QAEM,sBAAiB,GAAG,CAC3B,GAAqB,EACiD,EAAE;YACxE,MAAM,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;gBACzC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,kCAAkC,UAAU,EAAE,CAAC,CAAC;gBACjE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;aAC1C;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACnD,OAAO;gBACN,YAAY,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC;gBACjC,MAAM,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,MAAM,CAAC,MAAa;iBACvB;aACV,CAAC;QACH,CAAC,CAAC;QAEM,uBAAkB,GAAG,KAAK,EACjC,WAAgC,EAChC,eAAe,GAAG,KAAK,EACvB,OAAO,GAAG,KAAK,EACd,EAAE;YACH,+BAA+B;YAC/B,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,OAAO,CAAC,GAAG,CACf,OAAO,EACP,2CAA2C,WAAW,CAAC,GAAG,QAAQ,CAClE,CAAC;gBACF,OAAO;aACP;YAED,mEAAmE;YACnE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;gBAC/C,WAAW;gBACX,YAAY;aACZ,CAAC,CAAC;YAEH,MAAM,SAAS,GAAuB,EAAE,CAAC;YACzC,MAAM,UAAU,GAAsB,EAAE,CAAC;YAEzC,MAAM,OAAO,CAAC,GAAG,CAAC;gBACjB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAC5C,WAAW,CAAC,GAAG,EACf,CAAC,QAAQ,EAAE,EAAE;oBACZ,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC1B,CAAC,EACD;oBACC,WAAW;oBACX,IAAI,EAAE,WAAW;iBACjB,CACD;gBACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,mCAAmC,CACvD,WAAW,CAAC,GAAG,EACf,CAAC,EAAE,EAAE,EAAE;oBACL,EAAsB,CAAC,SAAS,GAAG,IAAI,CAAC;oBACzC,UAAU,CAAC,IAAI,CAAC,EAAqB,CAAC,CAAC;gBACxC,CAAC,EACD,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,CAClC;aACD,CAAC,CAAC;YACH,WAAW,CAAC,KAAK,CAAC;gBACjB,UAAU;gBACV,SAAS;gBACT,uBAAuB,EAAE,eAAe;gBACxC,OAAO;aACP,CAAC,CAAC;QACJ,CAAC,CAAC;QAEM,oBAAe,GAAG,KAAK,EAAE,GAAqB,EAAE,EAAE;YACzD,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YACpC,IAAI,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC7D,IAAI,CAAC,WAAW,EAAE;gBACjB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,0BAA0B,EAAE,WAAW,CAAC,CAAC;gBACnE,mEAAmE;gBACnE,WAAW,GAAG,IAAI,mBAAmB,CAAC;oBACrC,GAAG,EAAE,WAAW;oBAChB,KAAK,EAAE,IAAI;oBACX,OAAO,EAAE,IAAI,CAAC,OAAO;iBACrB,CAAC,CAAC;gBAEH,wDAAwD;gBACxD,uDAAuD;gBACvD,oDAAoD;gBACpD,oDAAoD;gBACpD,0BAA0B;gBAC1B,qDAAqD;gBACrD,kDAAkD;gBAClD,qDAAqD;gBACrD,8CAA8C;gBAC9C,6CAA6C;gBAC7C,SAAS;gBACT,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBACxD,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;gBAC3C,WAAW,CAAC,cAAc,EAAE,CAAC;gBAE7B,0BAA0B;gBAC1B,2DAA2D;gBAC3D,KAAK;gBAEL,sDAAsD;aACtD;YACD,MAAM,WAAW,CAAC,kBAAkB,CAAC;YAErC,OAAO,WAAW,CAAC;QACpB,CAAC,CAAC;QAEM,mBAAc,GAAG,KAAK,EAAE,GAAqB,EAAE,EAAE;YACxD,0DAA0D;QAC3D,CAAC,CAAC;QAEM,2BAAsB,GAAG,KAAK,EAAE,GAAqB,EAAE,EAAE;YAChE,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,iDAAiD,CAAC,CAAC;gBACpE,OAAO;aACP;YACD,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEvC,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,iDAAiD,CAAC,CAAC;gBACpE,OAAO;aACP;YAED,MAAM,QAAQ,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,EAAE,CAAC;YACvC,IAAI,QAAQ,EAAE;gBACb,MAAM,MAAM,GAAG,cAAc,CAC5B,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,EACnC,QAAQ,CACR,CAAC;gBACF,IAAI;oBACH,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;oBACxD,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;oBACzC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC7C,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;iBACtE;gBAAC,OAAO,GAAG,EAAE;oBACb,8DAA8D;oBAC9D,+BAA+B;oBAC/B,IAAI,CAAC,GAAG,CACP,2KAA2K,EAC3K,IAAI,EACJ,eAAe,EACf,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CACtB,CAAC;iBACF;aACD;iBAAM;gBACN,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBACxD,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;gBACzC,MAAM,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;aACjE;QACF,CAAC,CAAC;QAEF,QAAG,GAAG,KAAK,EAAE,GAAqB,EAAE,EAAE;YACrC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YACpD,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAC7D,IAAI,CAAC,MAAM,EAAE;gBACZ,OAAO,IAAI,CAAC;aACZ;YACD,OAAO,WAAW,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;QACpE,CAAC,CAAC;QAEF;;;;WAIG;QACH,cAAS,GAAG,CAAC,GAAqB,EAAE,EAAE;YACrC,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjD,IAAI,KAAK,EAAE;gBACV,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBAC7D,IAAI,CAAC,MAAM,EAAE;oBACZ,OAAO,IAAI,CAAC;iBACZ;gBACD,OAAO,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;aAC7D;YACD,OAAO,IAAI,CAAC;QACb,CAAC,CAAC;QAEF;;;WAGG;QACH,WAAM,GAAG,KAAK,EACb,OAAY,EACZ,GAAqB,EACrB,OAA+B,EAC9B,EAAE;YACH,gDAAgD;YAChD,2BAA2B,CAAC,OAAO,CAAC,CAAC;YACrC,iDAAiD;YACjD,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAE7D,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC3E,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YACpD,WAAW,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAC9C,qDAAqD;YACrD,gEAAgE;YAChE,mEAAmE;YACnE,oBAAoB;YACpB,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACjD,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAC7D,IAAI,CAAC,MAAM,EAAE;gBACZ,MAAM,IAAI,KAAK,CACd,mCACC,YAAY,CAAC,GAAG,CAAC,CAAC,UACnB,+DAA+D,CAC/D,CAAC;aACF;YACD,OAAO,WAAW,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;QACpE,CAAC,CAAC;QAEM,8BAAyB,GAAG,KAAK,EACxC,UAAuB,EACvB,IAA+C,EAC9C,EAAE;YACH,MAAM,eAAe,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC1C,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACpB,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACvD,IAAI,WAAW,EAAE;oBAChB,IAAI,CAAC,GAAG,CACP,QAAQ,EACR,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EAC5C,qBAAqB,EACrB,GAAG,EACH,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,CAC3B,CAAC;oBACF,IAAI,IAAI,CAAC,OAAO,EAAE;wBACjB,WAAW,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;qBACxD;yBAAM;wBACN,WAAW,CAAC,gBAAgB,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;qBACzD;iBACD;YACF,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC;QAEM,6BAAwB,GAAG,KAAK,EACvC,SAA6B,EAC7B,IAA0B,EACzB,EAAE;YACH,MAAM,cAAc,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;YAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACzC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACpB,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACjD,IAAI,KAAK,EAAE;oBACV,IAAI,CAAC,GAAG,CACP,QAAQ,EACR,oBAAoB,EACpB,GAAG,EACH,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,CAC1B,CAAC;oBACF,KAAK,CAAC,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;iBACjD;YACF,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC;QAEM,wBAAmB,GAAG,CAAC,EAC9B,SAAS,EACT,UAAU,EACV,KAAK,EACL,OAAO,GAMP,EAAE,EAAE;;YACJ,MAAM,sBAAsB,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;YAClE,MAAM,uBAAuB,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAClE,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CACjC,IAAI,GAAG,CACN,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,CACzC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CACpC,CACD,CACD,CAAC;YACF,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE;gBAClC,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACvD,IAAI,WAAW,EAAE;oBAChB,WAAW,CAAC,OAAO,CAAC;wBACnB,UAAU,EAAE,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE;wBAC9C,SAAS,EAAE,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE;wBAC5C,KAAK;wBACL,OAAO;qBACP,CAAC,CAAC;oBACH,IAAI,CAAC,GAAG,CACP,OAAO,EACP,yBAAyB,EACzB,GAAG,EACH,MAAA,MAAA,uBAAuB,CAAC,GAAG,CAAC,0CAAE,MAAM,mCAAI,CAAC,EACzC,YAAY,EACZ,MAAA,MAAA,sBAAsB,CAAC,GAAG,CAAC,0CAAE,MAAM,mCAAI,CAAC,EACxC,WAAW,CACX,CAAC;iBACF;qBAAM;oBACN,IAAI,CAAC,GAAG,CACP,OAAO,EACP,iCAAiC,EACjC,GAAG,EACH,wBAAwB,CACxB,CAAC;iBACF;aACD;YAED,OAAO,eAAe,CAAC;QACxB,CAAC,CAAC;QAEF,YAAO,GAAG,KAAK,EAAE,EAChB,UAAU,EACV,SAAS,EACT,KAAK,GAKL,EAAE,EAAE;YACJ,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,0CAA0C,CAAC,CAAC;gBAC7D,OAAO;aACP;YACD,iEAAiE;YACjE,6DAA6D;YAC7D,qCAAqC;YACrC,MAAM,gBAAgB,GAAG,UAA+B,CAAC;YACzD,KAAK,MAAM,EAAE,IAAI,gBAAgB,EAAE;gBAClC,EAAE,CAAC,SAAS,GAAG,KAAK,CAAC;aACrB;YAED,IAAI,eAAe,GAAa,EAAE,CAAC;YACnC,4DAA4D;YAC5D,4DAA4D;YAC5D,yBAAyB;YACzB,IAAI,KAAK,EAAE;gBACV,IAAI,CAAC,GAAG,CACP,uDAAuD,EACvD,SAAS,CAAC,MAAM,EAChB,gBAAgB,EAChB,UAAU,CAAC,MAAM,EACjB,YAAY,CACZ,CAAC;gBACF,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACxB,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAClC,eAAe,GAAG,KAAK,CAAC,IAAI,CAC3B,IAAI,GAAG,CACN,SAAS;qBACP,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;qBAC7B,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAClD,CACD,CAAC;aACF;iBAAM;gBACN,oFAAoF;gBACpF,eAAe,GAAG,IAAI,CAAC,mBAAmB,CAAC;oBAC1C,UAAU,EAAE,gBAAgB;oBAC5B,SAAS;oBACT,KAAK;iBACL,CAAC,CAAC;aACH;YAED,2CAA2C;YAC3C,MAAM,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;YACjD,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;YAEnD,IAAI,KAAK,EAAE;gBACV,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aACxC;YAED,gDAAgD;YAChD,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE;gBAClC,MAAM,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;aACvC;YAED,wBAAwB;YACxB,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CACrC,IAAI,GAAG,CACN,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAC1D,CACD,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;YAChE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;QAC3E,CAAC,CAAC;QAEF,uBAAkB,GAAG,KAAK,EAAE,UAAuB,EAAE,EAAE;YACtD,IAAI,CAAC,GAAG,CAAC,yBAAyB,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YACvD,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE;gBAC1C,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,KAAK;aAChB,CAAC,CAAC;YACH,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;gBACzB,GAAG,EAAE,IAAI,CAAC,eAAe;gBACzB,KAAK,EAAE,UAAU;aACjB,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,UAAK,GAAG,CAAC,EACR,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,UAAU,EAAE,EACxB,GAAG,GAAG,IAAI,EACV,OAAO,GAAG,IAAI,CAAC,mBAAmB,MAM/B,EAAE,EAAkB,EAAE;YACzB,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;gBAC/C,GAAG,EAAE,SAAS;gBACd,GAAG;gBACH,OAAO;gBACP,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,EAAE,QAAQ,EAAE;aACtB,CAAC,CAAC;YACH,MAAM,WAAW,GAAmB;gBACnC,GAAG,EAAE,CAAC,EAAc,EAAE,EAAE;oBACvB,6DAA6D;oBAC7D,mEAAmE;oBACnE,qBAAqB;oBACrB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;oBACjC,EAAE,EAAE,CAAC;oBACL,IAAI,CAAC,eAAe,GAAG,iBAAiB,CAAC;oBACzC,OAAO,WAAW,CAAC;gBACpB,CAAC;gBACD,KAAK,EAAE,KAAK,IAAI,EAAE;oBACjB,iEAAiE;oBACjE,iDAAiD;oBACjD,kEAAkE;oBAClE,iEAAiE;oBACjE,gEAAgE;oBAChE,+DAA+D;oBAC/D,gEAAgE;oBAChE,gCAAgC;oBAChC,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;oBACrD,OAAO,aAAa,CAAC,KAAK,EAAE,CAAC;gBAC9B,CAAC;gBACD,OAAO,EAAE,GAAG,EAAE;oBACb,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC1C,CAAC;aACD,CAAC;YACF,OAAO,WAAW,CAAC;QACpB,CAAC,CAAC;QAEF;;WAEG;QACH,iBAAY,GAAG,KAAK,IAAI,EAAE;YACzB,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACzD,CAAC,CAAC;QAEF,oBAAe,GAAG,KAAK,IAAI,EAAE;YAC5B,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrD,CAAC,CAAC;QAEM,oBAAe,GAAG,KAAK,EAC9B,UAAuB,EACvB,QAAgB,EAChB,IAA4B,EAC3B,EAAE;YACH,IAAI,CAAC,UAAU,CAAC,MAAM;gBAAE,OAAO;YAE/B,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,UAAU,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;YACxE,+DAA+D;YAC/D,iEAAiE;YACjE,+DAA+D;YAC/D,+DAA+D;YAC/D,0DAA0D;YAC1D,qEAAqE;YACrE,yEAAyE;YACzE,mEAAmE;YACnE,uEAAuE;YACvE,wFAAwF;YACxF,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE;gBAC5B,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;aAC7B;YACD,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC,CAAC;QAEM,qBAAgB,GAAG,KAAK,EAC/B,UAAuB,EACvB,EAAE,QAAQ,GAAG,IAAI,KAA6B,EAAE,EAC/C,EAAE;YACH,IAAI,QAAQ,EAAE;gBACb,qDAAqD;gBACrD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;aAC5D;YACD,MAAM,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;YAEjD,yBAAyB;YACzB,IAAI,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;YAExD,gDAAgD;YAChD,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CACjC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CACnD,CAAC;YACF,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE;gBAClC,MAAM,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;aACvC;YAED,yEAAyE;YACzE,6BAA6B;YAC7B,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAClC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CACzD,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;YAChE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAC7B,oBAAoB,EACpB,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAC/B,CAAC;QACH,CAAC,CAAC;QAEM,yBAAoB,GAAG,KAAK,EAAE,GAAgB,EAAE,EAAE;YACzD,MAAM,OAAO,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;YAC9C,MAAM,UAAU,GAAgB,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;YACnC,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBACrD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;gBACpD,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBAC9D,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC9D,UAAU,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;aAC/B;YACD,OAAO,UAAU,CAAC;QACnB,CAAC,CAAC;QAEM,eAAU,GAAG,KAAK,EAAE,GAAgB,EAAE,EAAE;YAC/C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YACxD,OAAO,KAAK,IAAI,EAAE;gBACjB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAC/C,MAAM,IAAI,CAAC,gBAAgB,CAC1B,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;oBACrB,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC7B,OAAO,EAAE,CAAC;gBACX,CAAC,CAAC;gBACF,sDAAsD;gBACtD,oDAAoD;gBACpD,EAAE,QAAQ,EAAE,KAAK,EAAE,CACnB,CAAC;gBACF,OAAO,IAAI,CAAC;YACb,CAAC,CAAC;QACH,CAAC,CAAC;QAEF,WAAM,GAAG,KAAK,EAAE,GAAqB,EAAE,OAAgC,EAAE,EAAE;YAC1E,MAAM,CACL,GAAG,KAAK,UAAU,CAAC,GAAG,CAAC,EACvB,uDAAuD,CACvD,CAAC;YACF,kEAAkE;YAClE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAChE,oDAAoD;YACpD,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC,CAAC;QAEF,cAAS,GAAG,KAAK,EAChB,IAAwB,EACxB,OAAgC,EAC/B,EAAE;YACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAC3D,CAAC;YACF,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACvE,oDAAoD;YACpD,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC,CAAC;QAEF,UAAK,GAAG,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAClC,kCAAkC;YAClC,yBAAyB;YACzB,yCAAyC;YACzC,KAAK;QACN,CAAC,CAAC;QAEF,YAAO,GAAG,KAAK,IAAI,EAAE;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE;gBAC5C,WAAW,EAAE,CAAC;aACd;YACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,EAAE;gBACvD,KAAK,CAAC,OAAO,EAAE,CAAC;aAChB;YACD,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC9B,CAAC,CAAC;QAEM,iBAAY,GAAG,CAAC,SAA6B,EAAE,EAAE;YACxD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,qBAAqB,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YAC3D,oEAAoE;YACpE,uCAAuC;YACvC,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,CAAC,CAAC;QAEM,yBAAoB,GAAG,KAAK,IAAI,EAAE;YACzC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAC7B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EACpC,WAAW,CACX,CAAC;YACF,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;gBAC9D,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;gBACzC,MAAM,mBAAmB,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;aACzC;QACF,CAAC,CAAC;QAEM,qBAAgB,GAAG,KAAK,EAC/B,eAAe,GAAG,KAAK,EACvB,OAAO,GAAG,KAAK,EACd,EAAE;YACH,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,oBAAoB,EAAE;gBACnD,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;aAC/D;QACF,CAAC,CAAC;QA3nBD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,IAAI,CAAC,mBAAmB,GAAG,YAAY,CAAC;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,gBAAgB,GAAG,IAAI,OAAO,CAClC,IAAI,CAAC,eAAe,CACpB,CAAC;QACF,2BAA2B;QAC3B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;YACzB,GAAG,EAAE,iBAAiB;YACtB,KAAK,EAAE,EAAE;YACT,GAAG,EAAE,GAAG;YACR,OAAO,EAAE,YAAY;YACrB,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;SAC5B,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAC1E,CAAC;CA2mBD"}
@@ -12,7 +12,7 @@ export type { ObjectEntity, ListEntity, EntityShape, AccessibleEntityProperty, A
12
12
  export { ServerSync } from './sync/Sync.js';
13
13
  export type { SyncTransportMode } from './sync/Sync.js';
14
14
  export { EntityFile } from './files/EntityFile.js';
15
- export { collection, schema, createDefaultMigration, migrate, } from '@verdant-web/common';
15
+ export { collection, schema, createDefaultMigration, migrate, createMigration, } from '@verdant-web/common';
16
16
  export type { StorageDocument, StorageSchema, StorageCollectionSchema, Migration, } from '@verdant-web/common';
17
17
  export type { UserInfo } from '@verdant-web/common';
18
18
  export type { Query } from './queries/types.js';
package/dist/esm/index.js CHANGED
@@ -8,6 +8,6 @@ export { Client as Storage };
8
8
  export { Entity } from './entities/Entity.js';
9
9
  export { ServerSync } from './sync/Sync.js';
10
10
  export { EntityFile } from './files/EntityFile.js';
11
- export { collection, schema, createDefaultMigration, migrate, } from '@verdant-web/common';
11
+ export { collection, schema, createDefaultMigration, migrate, createMigration, } from '@verdant-web/common';
12
12
  export { MigrationPathError } from './migration/errors.js';
13
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,gBAAgB,GAEhB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;AAClB,kBAAkB;AAClB,OAAO,EAAE,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;AACjD,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,CAAC;AAG7B,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAS9C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACN,UAAU,EACV,MAAM,EACN,sBAAsB,EACtB,OAAO,GACP,MAAM,qBAAqB,CAAC;AAW7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,gBAAgB,GAEhB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;AAClB,kBAAkB;AAClB,OAAO,EAAE,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;AACjD,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,CAAC;AAG7B,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAS9C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACN,UAAU,EACV,MAAM,EACN,sBAAsB,EACtB,OAAO,EACP,eAAe,GACf,MAAM,qBAAqB,CAAC;AAW7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { getOidRange, } from '@verdant-web/common';
1
+ import { getOidSubIdRange, getOidRoot, } from '@verdant-web/common';
2
2
  import { IDBService } from '../IDBService.js';
3
3
  export class BaselinesStore extends IDBService {
4
4
  constructor(db) {
@@ -12,15 +12,25 @@ export class BaselinesStore extends IDBService {
12
12
  };
13
13
  this.iterateOverAllForDocument = async (oid, iterator, { mode = 'readonly', transaction, } = {}) => {
14
14
  return this.iterate('baselines', (store) => {
15
- const [start, end] = getOidRange(oid);
16
- return store.openCursor(IDBKeyRange.bound(start, end, false, false));
15
+ const root = getOidRoot(oid);
16
+ const [start, end] = getOidSubIdRange(oid);
17
+ return [
18
+ // first the root itself
19
+ store.openCursor(IDBKeyRange.only(root)),
20
+ // then the range of its possible subdocuments
21
+ store.openCursor(IDBKeyRange.bound(start, end, false, false)),
22
+ ];
17
23
  }, iterator, mode, transaction);
18
24
  };
19
25
  this.getAllForMultipleDocuments = async (docOids, { mode = 'readonly' } = {}) => {
20
26
  const result = await this.runAll('baselines', (store) => {
21
- return docOids.map((oid) => {
22
- const [start, end] = getOidRange(oid);
23
- return store.getAll(IDBKeyRange.bound(start, end, false, false));
27
+ return docOids.flatMap((oid) => {
28
+ const root = getOidRoot(oid);
29
+ const [start, end] = getOidSubIdRange(oid);
30
+ return [
31
+ store.get(root),
32
+ store.getAll(IDBKeyRange.bound(start, end, false, false)),
33
+ ];
24
34
  });
25
35
  }, mode);
26
36
  return result.flat();
@@ -1 +1 @@
1
- {"version":3,"file":"BaselinesStore.js","sourceRoot":"","sources":["../../../src/metadata/BaselinesStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaselinesStore.js","sourceRoot":"","sources":["../../../src/metadata/BaselinesStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,gBAAgB,EAChB,UAAU,GAEV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,OAAO,cAAe,SAAQ,UAAU;IAC7C,YAAY,EAAe;QAC1B,KAAK,CAAC,EAAE,CAAC,CAAC;QAGX,sBAAiB,GAAG,KAAK,EACxB,GAAqB,EACrB,EACC,IAAI,GAAG,UAAU,EACjB,WAAW,MAC2D,EAAE,EACxE,EAAE;YACH,MAAM,SAAS,GAAuB,EAAE,CAAC;YACzC,MAAM,IAAI,CAAC,yBAAyB,CACnC,GAAG,EACH,CAAC,QAAQ,EAAE,EAAE;gBACZ,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1B,CAAC,EACD,EAAE,IAAI,EAAE,WAAW,EAAE,CACrB,CAAC;YACF,OAAO,SAAS,CAAC;QAClB,CAAC,CAAC;QACF,8BAAyB,GAAG,KAAK,EAChC,GAAqB,EACrB,QAAqE,EACrE,EACC,IAAI,GAAG,UAAU,EACjB,WAAW,MAC2D,EAAE,EACxE,EAAE;YACH,OAAO,IAAI,CAAC,OAAO,CAClB,WAAW,EACX,CAAC,KAAK,EAAE,EAAE;gBACT,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;gBAC7B,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBAC3C,OAAO;oBACN,wBAAwB;oBACxB,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACxC,8CAA8C;oBAC9C,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;iBAC7D,CAAC;YACH,CAAC,EACD,QAAQ,EACR,IAAI,EACJ,WAAW,CACX,CAAC;QACH,CAAC,CAAC;QAEF,+BAA0B,GAAG,KAAK,EACjC,OAAiB,EACjB,EAAE,IAAI,GAAG,UAAU,KAA0C,EAAE,EAC9D,EAAE;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAC/B,WAAW,EACX,CAAC,KAAK,EAAE,EAAE;gBACT,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC9B,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;oBAC7B,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;oBAC3C,OAAO;wBACN,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;wBACf,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;qBACzD,CAAC;gBACH,CAAC,CAAC,CAAC;YACJ,CAAC,EACD,IAAI,CACJ,CAAC;YACF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC,CAAC;QAEF,gBAAW,GAAG,KAAK,EAClB,SAAwB,EACxB,EAAE,IAAI,GAAG,UAAU,KAA0C,EAAE,EAC9D,EAAE;YACH,OAAO,IAAI,CAAC,GAAG,CACd,WAAW,EACX,CAAC,KAAK,EAAE,EAAE;gBACT,MAAM,KAAK,GAAG,SAAS;oBACtB,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC;oBACzC,CAAC,CAAC,SAAS,CAAC;gBACb,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACvC,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC,EACD,IAAI,CACJ,CAAC;QACH,CAAC,CAAC;QAEF,QAAG,GAAG,KAAK,EACV,GAAqB,EACrB,EACC,WAAW,EACX,IAAI,GAAG,UAAU,MACqD,EAAE,EACxE,EAAE;YACH,OAAO,IAAI,CAAC,GAAG,CACd,WAAW,EACX,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EACzB,IAAI,EACJ,WAAW,CACX,CAAC;QACH,CAAC,CAAC;QAEF,QAAG,GAAG,KAAK,EACV,QAA6B,EAC7B,EAAE,WAAW,KAAuC,EAAE,EACrD,EAAE;YACH,MAAM,IAAI,CAAC,GAAG,CACb,WAAW,EACX,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAC9B,WAAW,EACX,WAAW,CACX,CAAC;QACH,CAAC,CAAC;QAEF,WAAM,GAAG,KAAK,EACb,SAAgC,EAChC,EAAE,WAAW,KAAuC,EAAE,EACrD,EAAE;YACH,MAAM,IAAI,CAAC,MAAM,CAChB,WAAW,EACX,CAAC,KAAK,EAAE,EAAE;gBACT,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzD,CAAC,EACD,WAAW,EACX,WAAW,CACX,CAAC;QACH,CAAC,CAAC;QAEF,UAAK,GAAG,GAAG,EAAE;YACZ,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAChC,CAAC,CAAC;QAEF,WAAM,GAAG,KAAK,EACb,GAAqB,EACrB,EAAE,WAAW,EAAoC,EAChD,EAAE;YACH,MAAM,IAAI,CAAC,GAAG,CACb,WAAW,EACX,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAC5B,WAAW,EACX,WAAW,CACX,CAAC;QACH,CAAC,CAAC;IA1IF,CAAC;CA2ID"}