@ifc-lite/mutations 2.1.0 → 2.3.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 (55) hide show
  1. package/dist/apply-mutations.d.ts +4 -3
  2. package/dist/apply-mutations.d.ts.map +1 -1
  3. package/dist/apply-mutations.js +13 -3
  4. package/dist/apply-mutations.js.map +1 -1
  5. package/dist/bulk-query-engine.d.ts +2 -4
  6. package/dist/bulk-query-engine.d.ts.map +1 -1
  7. package/dist/bulk-query-engine.js +2 -1
  8. package/dist/bulk-query-engine.js.map +1 -1
  9. package/dist/cooperative-clone.d.ts +4 -0
  10. package/dist/cooperative-clone.d.ts.map +1 -0
  11. package/dist/cooperative-clone.js +93 -0
  12. package/dist/cooperative-clone.js.map +1 -0
  13. package/dist/cooperative-control.d.ts +17 -0
  14. package/dist/cooperative-control.d.ts.map +1 -0
  15. package/dist/cooperative-control.js +67 -0
  16. package/dist/cooperative-control.js.map +1 -0
  17. package/dist/cooperative-operation-types.d.ts +53 -0
  18. package/dist/cooperative-operation-types.d.ts.map +1 -0
  19. package/dist/cooperative-operation-types.js +2 -0
  20. package/dist/cooperative-operation-types.js.map +1 -0
  21. package/dist/cooperative-overlay-access.d.ts +14 -0
  22. package/dist/cooperative-overlay-access.d.ts.map +1 -0
  23. package/dist/cooperative-overlay-access.js +12 -0
  24. package/dist/cooperative-overlay-access.js.map +1 -0
  25. package/dist/execute-entity-operation.d.ts +6 -0
  26. package/dist/execute-entity-operation.d.ts.map +1 -0
  27. package/dist/execute-entity-operation.js +39 -0
  28. package/dist/execute-entity-operation.js.map +1 -0
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/mutable-overlay-state.d.ts +143 -0
  32. package/dist/mutable-overlay-state.d.ts.map +1 -0
  33. package/dist/mutable-overlay-state.js +115 -0
  34. package/dist/mutable-overlay-state.js.map +1 -0
  35. package/dist/mutable-property-view.d.ts +23 -83
  36. package/dist/mutable-property-view.d.ts.map +1 -1
  37. package/dist/mutable-property-view.js +113 -117
  38. package/dist/mutable-property-view.js.map +1 -1
  39. package/dist/overlay-value-equality.d.ts +3 -0
  40. package/dist/overlay-value-equality.d.ts.map +1 -0
  41. package/dist/overlay-value-equality.js +52 -0
  42. package/dist/overlay-value-equality.js.map +1 -0
  43. package/dist/prepare-entity-operations.d.ts +7 -0
  44. package/dist/prepare-entity-operations.d.ts.map +1 -0
  45. package/dist/prepare-entity-operations.js +117 -0
  46. package/dist/prepare-entity-operations.js.map +1 -0
  47. package/dist/quantity-member-delete.d.ts +34 -0
  48. package/dist/quantity-member-delete.d.ts.map +1 -0
  49. package/dist/quantity-member-delete.js +55 -0
  50. package/dist/quantity-member-delete.js.map +1 -0
  51. package/dist/store-editor.d.ts +12 -14
  52. package/dist/store-editor.d.ts.map +1 -1
  53. package/dist/store-editor.js +42 -0
  54. package/dist/store-editor.js.map +1 -1
  55. package/package.json +4 -3
@@ -19,6 +19,7 @@ export interface MutationApplyTarget {
19
19
  deleteProperty(entityId: number, psetName: string, propName: string): unknown;
20
20
  deletePropertySet(entityId: number, psetName: string): unknown;
21
21
  deleteQuantitySet(entityId: number, qsetName: string): unknown;
22
+ deleteQuantity(entityId: number, qsetName: string, quantName: string): unknown;
22
23
  setQuantity(entityId: number, qsetName: string, quantName: string, value: number, quantityType: QuantityType, unit?: string): unknown;
23
24
  createQuantitySet(entityId: number, qsetName: string, quantities: Array<{
24
25
  name: string;
@@ -39,9 +40,9 @@ export interface MutationApplyTarget {
39
40
  }
40
41
  /**
41
42
  * Apply a batch of mutations (e.g., from imported change set) against
42
- * `target`. `hasNewEntity` and `markQuantitySetDeleted` give this function
43
- * the two bits of the view's private state the dispatcher needs without
43
+ * `target`. The callbacks give this function the narrow pieces of the view's
44
+ * private state the dispatcher needs without
44
45
  * exposing those fields publicly.
45
46
  */
46
- export declare function applyMutationsBatch(target: MutationApplyTarget, mutations: Mutation[], hasNewEntity: (entityId: number) => boolean, markQuantitySetDeleted: (entityId: number, qsetName: string) => void): void;
47
+ export declare function applyMutationsBatch(target: MutationApplyTarget, mutations: Mutation[], hasNewEntity: (entityId: number) => boolean, markQuantitySetDeleted: (entityId: number, qsetName: string) => void, ensureQuantityDeletion: (mutation: Mutation, qsetName: string, quantName: string, retainHistory: boolean) => void): void;
47
48
  //# sourceMappingURL=apply-mutations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"apply-mutations.d.ts","sourceRoot":"","sources":["../src/apply-mutations.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE7E;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,WAAW,CACT,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,aAAa,EACvB,SAAS,CAAC,EAAE,iBAAiB,GAC5B,OAAO,CAAC;IACX,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9E,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/D,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/D,WAAW,CACT,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,YAAY,EAC1B,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC;IACX,iBAAiB,CACf,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,YAAY,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAC5F,OAAO,CAAC;IACX,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC;IAC3F,aAAa,CACX,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,GAAG,IAAI,EAC7B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;IACX,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACpG,iBAAiB,CACf,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,aAAa,CAAC;QAAC,IAAI,CAAC,EAAE,iBAAiB,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GACjG,OAAO,CAAC;IACX,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,mBAAmB,EAC3B,SAAS,EAAE,QAAQ,EAAE,EACrB,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,EAC3C,sBAAsB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,GACnE,IAAI,CAoNN"}
1
+ {"version":3,"file":"apply-mutations.d.ts","sourceRoot":"","sources":["../src/apply-mutations.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE7E;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,WAAW,CACT,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,aAAa,EACvB,SAAS,CAAC,EAAE,iBAAiB,GAC5B,OAAO,CAAC;IACX,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9E,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/D,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/D,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/E,WAAW,CACT,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,YAAY,EAC1B,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC;IACX,iBAAiB,CACf,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,YAAY,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAC5F,OAAO,CAAC;IACX,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC;IAC3F,aAAa,CACX,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,GAAG,IAAI,EAC7B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;IACX,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACpG,iBAAiB,CACf,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,aAAa,CAAC;QAAC,IAAI,CAAC,EAAE,iBAAiB,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GACjG,OAAO,CAAC;IACX,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,mBAAmB,EAC3B,SAAS,EAAE,QAAQ,EAAE,EACrB,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,EAC3C,sBAAsB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,EACpE,sBAAsB,EAAE,CACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,OAAO,KACnB,IAAI,GACR,IAAI,CAoON"}
@@ -12,11 +12,11 @@
12
12
  import { QuantityType } from '@ifc-lite/data';
13
13
  /**
14
14
  * Apply a batch of mutations (e.g., from imported change set) against
15
- * `target`. `hasNewEntity` and `markQuantitySetDeleted` give this function
16
- * the two bits of the view's private state the dispatcher needs without
15
+ * `target`. The callbacks give this function the narrow pieces of the view's
16
+ * private state the dispatcher needs without
17
17
  * exposing those fields publicly.
18
18
  */
19
- export function applyMutationsBatch(target, mutations, hasNewEntity, markQuantitySetDeleted) {
19
+ export function applyMutationsBatch(target, mutations, hasNewEntity, markQuantitySetDeleted, ensureQuantityDeletion) {
20
20
  // CREATE_ENTITY records are skipped (callers must restore the
21
21
  // payload via restoreNewEntity). Track the ids we've skipped so a
22
22
  // matching DELETE_ENTITY in the same batch doesn't tombstone an
@@ -95,6 +95,16 @@ export function applyMutationsBatch(target, mutations, hasNewEntity, markQuantit
95
95
  markQuantitySetDeleted(mutation.entityId, mutation.psetName);
96
96
  }
97
97
  break;
98
+ case 'DELETE_QUANTITY':
99
+ if (mutation.psetName && mutation.propName) {
100
+ const applied = target.deleteQuantity(mutation.entityId, mutation.psetName, mutation.propName);
101
+ // Like whole-set deletion, replay must retain intent before the
102
+ // optional base extractor is configured. A successful delete has
103
+ // already recorded one history row; only the no-op path needs the
104
+ // supplied record retained explicitly.
105
+ ensureQuantityDeletion(mutation, mutation.psetName, mutation.propName, applied === null);
106
+ }
107
+ break;
98
108
  case 'CREATE_QUANTITY':
99
109
  case 'UPDATE_QUANTITY':
100
110
  if (mutation.psetName && mutation.propName && mutation.newValue !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"apply-mutations.js","sourceRoot":"","sources":["../src/apply-mutations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apply-mutations.js","sourceRoot":"","sources":["../src/apply-mutations.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,6 @@
1
1
  /**
2
- * Bulk Query Engine for mass property updates
3
- *
4
- * Provides SQL-like query capabilities for selecting and modifying
5
- * multiple IFC entities at once.
2
+ * Bulk Query Engine: SQL-like selection and modification for multiple
3
+ * IFC entities at once.
6
4
  */
7
5
  import type { EntityTable, SpatialHierarchy, PropertyTable } from '@ifc-lite/data';
8
6
  import { PropertyValueType } from '@ifc-lite/data';
@@ -1 +1 @@
1
- {"version":3,"file":"bulk-query-engine.d.ts","sourceRoot":"","sources":["../src/bulk-query-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bulk-query-engine.d.ts","sourceRoot":"","sources":["../src/bulk-query-engine.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * License, v. 2.0. If a copy of the MPL was not distributed with this
3
3
  * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
4
  import { checkMutationGuard } from './mutation-guard.js';
5
+ import { compileGuardedRegex } from '@ifc-lite/regex-guard';
5
6
  /**
6
7
  * Bulk Query Engine for mass property updates
7
8
  */
@@ -131,7 +132,7 @@ export class BulkQueryEngine {
131
132
  }
132
133
  // Filter by name pattern
133
134
  if (criteria.namePattern && this.strings) {
134
- const regex = new RegExp(criteria.namePattern, 'i');
135
+ const regex = compileGuardedRegex(criteria.namePattern, 'i'); // caller-supplied: guard against ReDoS
135
136
  candidates = candidates.filter((id) => {
136
137
  const idx = this.findEntityIndex(id);
137
138
  if (idx === -1)
@@ -1 +1 @@
1
- {"version":3,"file":"bulk-query-engine.js","sourceRoot":"","sources":["../src/bulk-query-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bulk-query-engine.js","sourceRoot":"","sources":["../src/bulk-query-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { CooperativeControl } from './cooperative-control.js';
2
+ /** The overlay's data vocabulary, not a polyfill for every structuredClone host type. */
3
+ export declare function cloneCooperatively<T>(input: T, control: CooperativeControl): Promise<T>;
4
+ //# sourceMappingURL=cooperative-clone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cooperative-clone.d.ts","sourceRoot":"","sources":["../src/cooperative-clone.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAK9D,yFAAyF;AACzF,wBAAsB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC,CAiE7F"}
@@ -0,0 +1,93 @@
1
+ /** The overlay's data vocabulary, not a polyfill for every structuredClone host type. */
2
+ export async function cloneCooperatively(input, control) {
3
+ const memo = new WeakMap();
4
+ const frames = [];
5
+ let shouldPause = false;
6
+ const charge = (bytes) => {
7
+ const due = control.step(bytes);
8
+ shouldPause = shouldPause || due;
9
+ };
10
+ const copy = value => {
11
+ if (value === null || value === undefined || typeof value === 'boolean' || typeof value === 'number') {
12
+ charge(16);
13
+ return value;
14
+ }
15
+ if (typeof value === 'string') {
16
+ charge(16 + value.length * 2);
17
+ return value;
18
+ }
19
+ if (typeof value !== 'object')
20
+ throw new TypeError('Unsupported value in cooperative entity preparation.');
21
+ const known = memo.get(value);
22
+ if (known) {
23
+ charge(8);
24
+ return known;
25
+ }
26
+ charge(128);
27
+ if (value instanceof Map) {
28
+ const result = new Map();
29
+ memo.set(value, result);
30
+ frames.push((function* () {
31
+ for (const [key, item] of value) {
32
+ if (key !== null && typeof key === 'object')
33
+ throw new TypeError('Mutable map keys are unsupported during cooperative entity preparation.');
34
+ result.set(copy(key), copy(item));
35
+ yield;
36
+ }
37
+ })());
38
+ return result;
39
+ }
40
+ if (value instanceof Set) {
41
+ const result = new Set();
42
+ memo.set(value, result);
43
+ frames.push((function* () {
44
+ for (const item of value) {
45
+ if (item !== null && typeof item === 'object')
46
+ throw new TypeError('Mutable set members are unsupported during cooperative entity preparation.');
47
+ result.add(copy(item));
48
+ yield;
49
+ }
50
+ })());
51
+ return result;
52
+ }
53
+ const array = Array.isArray(value);
54
+ const prototype = Object.getPrototypeOf(value);
55
+ if (!array && prototype !== Object.prototype && prototype !== null) {
56
+ throw new TypeError('Cooperative entity preparation supports plain values, arrays, maps and sets only.');
57
+ }
58
+ if (array)
59
+ charge(value.length * 8);
60
+ const result = (array ? new Array(value.length) : Object.create(prototype));
61
+ memo.set(value, result);
62
+ frames.push((function* () {
63
+ // Incremental own-property enumeration preserves sparse arrays and extra
64
+ // enumerable properties without constructing Object.keys(hugeArray).
65
+ for (const key in value) {
66
+ charge(48 + key.length * 2);
67
+ if (!Object.hasOwn(value, key)) {
68
+ yield;
69
+ continue;
70
+ }
71
+ const descriptor = Object.getOwnPropertyDescriptor(value, key);
72
+ if (!descriptor || !('value' in descriptor))
73
+ throw new TypeError('Accessors are unsupported during cooperative entity preparation.');
74
+ Object.defineProperty(result, key, { value: copy(descriptor.value), enumerable: true, writable: true, configurable: true });
75
+ yield;
76
+ }
77
+ })());
78
+ return result;
79
+ };
80
+ const result = copy(input);
81
+ while (frames.length || shouldPause) {
82
+ if (shouldPause) {
83
+ shouldPause = false;
84
+ await control.pause();
85
+ }
86
+ control.checkAbort();
87
+ const frame = frames[frames.length - 1];
88
+ if (frame && frame.next().done)
89
+ frames.pop();
90
+ }
91
+ return result;
92
+ }
93
+ //# sourceMappingURL=cooperative-clone.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cooperative-clone.js","sourceRoot":"","sources":["../src/cooperative-clone.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { EntityPreparationOptions } from './cooperative-operation-types.js';
2
+ export declare class CooperativeControl {
3
+ private work;
4
+ private bytes;
5
+ private sliceWork;
6
+ private deadline;
7
+ private readonly maxWork;
8
+ private readonly maxBytes;
9
+ private readonly sliceMs;
10
+ private readonly signal;
11
+ private readonly yieldTask;
12
+ constructor(options: EntityPreparationOptions);
13
+ checkAbort(): void;
14
+ step(bytes?: number): boolean;
15
+ pause(): Promise<void>;
16
+ }
17
+ //# sourceMappingURL=cooperative-control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cooperative-control.d.ts","sourceRoot":"","sources":["../src/cooperative-control.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAEjF,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;gBAEpC,OAAO,EAAE,wBAAwB;IAe7C,UAAU,IAAI,IAAI;IAIlB,IAAI,CAAC,KAAK,SAAI,GAAG,OAAO;IAalB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAmB7B"}
@@ -0,0 +1,67 @@
1
+ export class CooperativeControl {
2
+ work = 0;
3
+ bytes = 0;
4
+ sliceWork = 0;
5
+ deadline = 0;
6
+ maxWork;
7
+ maxBytes;
8
+ sliceMs;
9
+ signal;
10
+ yieldTask;
11
+ constructor(options) {
12
+ this.signal = options.signal;
13
+ this.maxWork = options.maxWork ?? 16_000_000;
14
+ this.maxBytes = options.maxBytes ?? 512 * 1024 * 1024;
15
+ this.sliceMs = options.maxSliceMs ?? 4;
16
+ if (!Number.isSafeInteger(this.maxWork) || this.maxWork <= 0
17
+ || !Number.isSafeInteger(this.maxBytes) || this.maxBytes <= 0
18
+ || !Number.isFinite(this.sliceMs) || this.sliceMs <= 0) {
19
+ throw new RangeError('Cooperative preparation budgets must be finite and positive.');
20
+ }
21
+ this.yieldTask = options.yieldTask ?? (() => new Promise(resolve => setTimeout(resolve, 0)));
22
+ this.deadline = performance.now() + this.sliceMs;
23
+ this.checkAbort();
24
+ }
25
+ checkAbort() {
26
+ if (this.signal?.aborted)
27
+ throw new DOMException('Entity preparation was cancelled.', 'AbortError');
28
+ }
29
+ step(bytes = 0) {
30
+ this.checkAbort();
31
+ this.work++;
32
+ this.bytes += bytes;
33
+ if (this.work > this.maxWork || this.bytes > this.maxBytes) {
34
+ throw new RangeError('Entity preparation exceeds its work or allocation budget.');
35
+ }
36
+ if (++this.sliceWork >= 256 && (this.sliceWork >= 4096 || performance.now() >= this.deadline)) {
37
+ return true;
38
+ }
39
+ return false;
40
+ }
41
+ async pause() {
42
+ this.checkAbort();
43
+ const signal = this.signal;
44
+ let onAbort;
45
+ try {
46
+ await new Promise((resolve, reject) => {
47
+ onAbort = () => reject(new DOMException('Entity preparation was cancelled.', 'AbortError'));
48
+ signal?.addEventListener('abort', onAbort, { once: true });
49
+ // Handle both a thrown scheduler error and abort inside the scheduler.
50
+ try {
51
+ Promise.resolve(this.yieldTask()).then(resolve, reject);
52
+ }
53
+ catch (error) {
54
+ reject(error);
55
+ }
56
+ });
57
+ this.checkAbort();
58
+ }
59
+ finally {
60
+ if (onAbort)
61
+ signal?.removeEventListener('abort', onAbort);
62
+ }
63
+ this.sliceWork = 0;
64
+ this.deadline = performance.now() + this.sliceMs;
65
+ }
66
+ }
67
+ //# sourceMappingURL=cooperative-control.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cooperative-control.js","sourceRoot":"","sources":["../src/cooperative-control.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import type { IfcAttributeValue, Mutation, NewEntity } from './types.js';
2
+ export type EntityOperation = {
3
+ kind: 'create';
4
+ expressId: number;
5
+ type: string;
6
+ attributes: IfcAttributeValue[];
7
+ } | {
8
+ kind: 'setPositionalAttribute';
9
+ expressId: number;
10
+ index: number;
11
+ value: IfcAttributeValue;
12
+ skipHistory?: boolean;
13
+ } | {
14
+ kind: 'remove';
15
+ expressId: number;
16
+ };
17
+ export type EntityOperationEffect = {
18
+ kind: 'create';
19
+ entity: NewEntity;
20
+ } | {
21
+ kind: 'setPositionalAttribute';
22
+ expressId: number;
23
+ index: number;
24
+ present: boolean;
25
+ value: IfcAttributeValue | undefined;
26
+ } | {
27
+ kind: 'remove';
28
+ expressId: number;
29
+ entity: NewEntity | null;
30
+ };
31
+ export interface EntityPreparationOptions {
32
+ signal?: AbortSignal;
33
+ /** Must yield to a browser/host task, not only a microtask. No draft is passed. */
34
+ yieldTask?: () => Promise<void>;
35
+ /** Cooperative target, not a guarantee for uninterruptible host operations. Default 4ms. */
36
+ maxSliceMs?: number;
37
+ /** Cumulative visited values/entries across all snapshots. Default 16 million. */
38
+ maxWork?: number;
39
+ /** Conservative cumulative allocation accounting; not measured JS heap size. Default 512MiB. */
40
+ maxBytes?: number;
41
+ }
42
+ export interface PreparedEntityOperations {
43
+ /** Detached caller-owned records; changing these cannot edit publication/checkpoints. */
44
+ readonly effects: readonly EntityOperationEffect[];
45
+ readonly mutations: readonly Mutation[];
46
+ /** Exact synchronous live-overlay AND operation-input fence. Linear in their size. */
47
+ validate(): void;
48
+ commit(): void;
49
+ rollback(): void;
50
+ /** Idempotent. Before commit discards work; after commit relinquishes rollback. */
51
+ dispose(): void;
52
+ }
53
+ //# sourceMappingURL=cooperative-operation-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cooperative-operation-types.d.ts","sourceRoot":"","sources":["../src/cooperative-operation-types.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,iBAAiB,EAAE,CAAA;CAAE,GACpF;IAAE,IAAI,EAAE,wBAAwB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,iBAAiB,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,GACrH;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1C,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,wBAAwB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,iBAAiB,GAAG,SAAS,CAAA;CAAE,GAC5H;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAA;CAAE,CAAC;AAEpE,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,4FAA4F;IAC5F,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gGAAgG;IAChG,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,yFAAyF;IACzF,QAAQ,CAAC,OAAO,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACnD,QAAQ,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;IACxC,sFAAsF;IACtF,QAAQ,IAAI,IAAI,CAAC;IACjB,MAAM,IAAI,IAAI,CAAC;IACf,QAAQ,IAAI,IAAI,CAAC;IACjB,mFAAmF;IACnF,OAAO,IAAI,IAAI,CAAC;CACjB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cooperative-operation-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cooperative-operation-types.js","sourceRoot":"","sources":["../src/cooperative-operation-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ import type { MutablePropertyView } from './mutable-property-view.js';
2
+ import type { MutableOverlayState } from './mutable-overlay-state.js';
3
+ export type OverlaySnapshot = ReturnType<MutableOverlayState['copyOverlayState']>;
4
+ interface OverlayAccess {
5
+ capture(): OverlaySnapshot;
6
+ matches(snapshot: OverlaySnapshot): boolean;
7
+ draft(snapshot: OverlaySnapshot): MutablePropertyView;
8
+ publish(snapshot: OverlaySnapshot): void;
9
+ }
10
+ /** Package-private capability; no mutable graph is exposed by the public handle. */
11
+ export declare function registerCooperativeOverlay(view: MutablePropertyView, capabilities: OverlayAccess): void;
12
+ export declare function cooperativeOverlay(view: MutablePropertyView): OverlayAccess;
13
+ export {};
14
+ //# sourceMappingURL=cooperative-overlay-access.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cooperative-overlay-access.d.ts","sourceRoot":"","sources":["../src/cooperative-overlay-access.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAClF,UAAU,aAAa;IACrB,OAAO,IAAI,eAAe,CAAC;IAC3B,OAAO,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC;IAC5C,KAAK,CAAC,QAAQ,EAAE,eAAe,GAAG,mBAAmB,CAAC;IACtD,OAAO,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAC;CAC1C;AAED,oFAAoF;AACpF,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,mBAAmB,EAAE,YAAY,EAAE,aAAa,GAAG,IAAI,CAEvG;AACD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB,GAAG,aAAa,CAI3E"}
@@ -0,0 +1,12 @@
1
+ const access = new WeakMap();
2
+ /** Package-private capability; no mutable graph is exposed by the public handle. */
3
+ export function registerCooperativeOverlay(view, capabilities) {
4
+ access.set(view, capabilities);
5
+ }
6
+ export function cooperativeOverlay(view) {
7
+ const result = access.get(view);
8
+ if (!result)
9
+ throw new Error('Unregistered mutation view.');
10
+ return result;
11
+ }
12
+ //# sourceMappingURL=cooperative-overlay-access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cooperative-overlay-access.js","sourceRoot":"","sources":["../src/cooperative-overlay-access.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,GAAG,IAAI,OAAO,EAAsC,CAAC;AACjE,oFAAoF;AACpF,MAAM,UAAU,0BAA0B,CAAC,IAAyB,EAAE,YAA2B;IAC/F,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AACjC,CAAC;AACD,MAAM,UAAU,kBAAkB,CAAC,IAAyB;IAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { StoreEditor } from './store-editor.js';
2
+ import type { MutablePropertyView } from './mutable-property-view.js';
3
+ import type { EntityOperation, EntityOperationEffect } from './cooperative-operation-types.js';
4
+ /** Reuse the canonical editor, including type normalization, allocation and removal rules. */
5
+ export declare function executeEntityOperation(editor: StoreEditor, view: MutablePropertyView, operation: EntityOperation): EntityOperationEffect;
6
+ //# sourceMappingURL=execute-entity-operation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-entity-operation.d.ts","sourceRoot":"","sources":["../src/execute-entity-operation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAE/F,8FAA8F;AAC9F,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,eAAe,GAAG,qBAAqB,CAgCxI"}
@@ -0,0 +1,39 @@
1
+ /** Reuse the canonical editor, including type normalization, allocation and removal rules. */
2
+ export function executeEntityOperation(editor, view, operation) {
3
+ if (!operation || !Number.isSafeInteger(operation.expressId) || operation.expressId <= 0) {
4
+ throw new TypeError('Entity operations require a positive integral expressId.');
5
+ }
6
+ switch (operation.kind) {
7
+ case 'create': {
8
+ if (operation.expressId !== view.peekNextExpressId() || !Array.isArray(operation.attributes)) {
9
+ throw new Error('Entity operation allocation changed or attributes are invalid.');
10
+ }
11
+ const entity = editor.addEntity(operation.type, operation.attributes);
12
+ if (entity.expressId !== operation.expressId)
13
+ throw new Error('Entity operation allocation changed.');
14
+ return { kind: 'create', entity: editor.getNewEntity(entity.expressId) };
15
+ }
16
+ case 'setPositionalAttribute': {
17
+ if (!editor.hasEntity(operation.expressId) || !Number.isSafeInteger(operation.index) || operation.index < 0) {
18
+ throw new Error('Invalid positional entity operation target.');
19
+ }
20
+ const attributes = view.getPositionalMutationsForEntity(operation.expressId);
21
+ const effect = { kind: operation.kind, expressId: operation.expressId,
22
+ index: operation.index, present: attributes?.has(operation.index) ?? false, value: attributes?.get(operation.index) };
23
+ // The view owns skip-history semantics; StoreEditor owns ordinary writes.
24
+ if (operation.skipHistory)
25
+ view.setPositionalAttribute(operation.expressId, operation.index, operation.value, true);
26
+ else
27
+ editor.setPositionalAttribute(operation.expressId, operation.index, operation.value);
28
+ return effect;
29
+ }
30
+ case 'remove': {
31
+ const entity = editor.getNewEntity(operation.expressId);
32
+ if (!editor.removeEntity(operation.expressId))
33
+ throw new Error(`Cannot remove missing IFC entity #${operation.expressId}.`);
34
+ return { kind: operation.kind, expressId: operation.expressId, entity };
35
+ }
36
+ default: throw new TypeError('Unsupported entity operation.');
37
+ }
38
+ }
39
+ //# sourceMappingURL=execute-entity-operation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-entity-operation.js","sourceRoot":"","sources":["../src/execute-entity-operation.ts"],"names":[],"mappings":"AAOA,8FAA8F;AAC9F,MAAM,UAAU,sBAAsB,CAAC,MAAmB,EAAE,IAAyB,EAAE,SAA0B;IAC/G,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;QACzF,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;IAClF,CAAC;IACD,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;QACvB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,SAAS,CAAC,SAAS,KAAK,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7F,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;YACpF,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;YACtE,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACtG,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAE,EAAE,CAAC;QAC5E,CAAC;QACD,KAAK,wBAAwB,CAAC,CAAC,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC5G,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACjE,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,+BAA+B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAC7E,MAAM,MAAM,GAA0B,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC1F,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACxH,0EAA0E;YAC1E,IAAI,SAAS,CAAC,WAAW;gBAAE,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;;gBAC/G,MAAM,CAAC,sBAAsB,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;YAC1F,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC;YAC5H,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;QAC1E,CAAC;QACD,OAAO,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC,+BAA+B,CAAC,CAAC;IAChE,CAAC;AACH,CAAC"}
package/dist/index.d.ts CHANGED
@@ -9,4 +9,5 @@ export { MutationGuardError, type MutationGuard } from './mutation-guard.js';
9
9
  export { BulkQueryEngine, type SelectionCriteria, type BulkAction, type BulkQuery, type BulkQueryPreview, type BulkQueryResult, type PropertyFilter, type FilterOperator, } from './bulk-query-engine.js';
10
10
  export { CsvConnector, type CsvRow, type MatchStrategy, type PropertyMapping, type DataMapping, type MatchResult, type ImportStats, type ImportProgress, type CsvParseOptions, } from './csv-connector.js';
11
11
  export { changeSetToOps, deriveEntityIdentity, type ChangeSetOp, type ChangeSetOpsResult, type DerivedIdentityEntry, type EntityIdentityResolver, } from './change-set-to-ops.js';
12
+ export type { EntityOperation, EntityOperationEffect, EntityPreparationOptions, PreparedEntityOperations } from './cooperative-operation-types.js';
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,GACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,oBAAoB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EACL,eAAe,EACf,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,cAAc,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,YAAY,EACZ,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,eAAe,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,GAC5B,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,GACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,oBAAoB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EACL,eAAe,EACf,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,cAAc,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,YAAY,EACZ,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,eAAe,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,GAC5B,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC"}