@rasamjs/core 0.2.0 → 0.3.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 (178) hide show
  1. package/API.md +14 -4
  2. package/CHANGELOG.md +71 -0
  3. package/COMPONENTS.md +229 -0
  4. package/README.md +46 -6
  5. package/RELEASING.md +4 -2
  6. package/dist/advanced.d.ts +1 -1
  7. package/dist/advanced.d.ts.map +1 -1
  8. package/dist/catalog/fragment.d.ts +2 -2
  9. package/dist/catalog/fragment.d.ts.map +1 -1
  10. package/dist/catalog/fragment.js.map +1 -1
  11. package/dist/changes/derived.d.ts +10 -0
  12. package/dist/changes/derived.d.ts.map +1 -0
  13. package/dist/changes/derived.js +14 -0
  14. package/dist/changes/derived.js.map +1 -0
  15. package/dist/changes/restore.d.ts.map +1 -1
  16. package/dist/changes/restore.js +76 -28
  17. package/dist/changes/restore.js.map +1 -1
  18. package/dist/changes/service.d.ts +5 -0
  19. package/dist/changes/service.d.ts.map +1 -1
  20. package/dist/changes/service.js +18 -4
  21. package/dist/changes/service.js.map +1 -1
  22. package/dist/changes/state.d.ts.map +1 -1
  23. package/dist/changes/state.js +33 -27
  24. package/dist/changes/state.js.map +1 -1
  25. package/dist/changes.d.ts.map +1 -1
  26. package/dist/changes.js +20 -4
  27. package/dist/changes.js.map +1 -1
  28. package/dist/components/changes.d.ts +34 -0
  29. package/dist/components/changes.d.ts.map +1 -0
  30. package/dist/components/changes.js +119 -0
  31. package/dist/components/changes.js.map +1 -0
  32. package/dist/components/component.d.ts +62 -0
  33. package/dist/components/component.d.ts.map +1 -0
  34. package/dist/components/component.js +355 -0
  35. package/dist/components/component.js.map +1 -0
  36. package/dist/components/decorators.d.ts +7 -0
  37. package/dist/components/decorators.d.ts.map +1 -0
  38. package/dist/components/decorators.js +83 -0
  39. package/dist/components/decorators.js.map +1 -0
  40. package/dist/components/metadata.d.ts +10 -0
  41. package/dist/components/metadata.d.ts.map +1 -0
  42. package/dist/components/metadata.js +85 -0
  43. package/dist/components/metadata.js.map +1 -0
  44. package/dist/components/registry.d.ts +24 -0
  45. package/dist/components/registry.d.ts.map +1 -0
  46. package/dist/components/registry.js +78 -0
  47. package/dist/components/registry.js.map +1 -0
  48. package/dist/components/types.d.ts +54 -0
  49. package/dist/components/types.d.ts.map +1 -0
  50. package/dist/components/types.js +2 -0
  51. package/dist/components/types.js.map +1 -0
  52. package/dist/components/view.d.ts +9 -0
  53. package/dist/components/view.d.ts.map +1 -0
  54. package/dist/components/view.js +104 -0
  55. package/dist/components/view.js.map +1 -0
  56. package/dist/components.d.ts +6 -0
  57. package/dist/components.d.ts.map +1 -0
  58. package/dist/components.js +5 -0
  59. package/dist/components.js.map +1 -0
  60. package/dist/core/node.d.ts +7 -0
  61. package/dist/core/node.d.ts.map +1 -1
  62. package/dist/core/node.js +30 -0
  63. package/dist/core/node.js.map +1 -1
  64. package/dist/interchange/clone.d.ts.map +1 -1
  65. package/dist/interchange/clone.js +3 -2
  66. package/dist/interchange/clone.js.map +1 -1
  67. package/dist/interchange/reconstruct.d.ts.map +1 -1
  68. package/dist/interchange/reconstruct.js +16 -12
  69. package/dist/interchange/reconstruct.js.map +1 -1
  70. package/dist/interchange/references.d.ts.map +1 -1
  71. package/dist/interchange/references.js +10 -4
  72. package/dist/interchange/references.js.map +1 -1
  73. package/dist/mixins/parent-internals.d.ts +6 -0
  74. package/dist/mixins/parent-internals.d.ts.map +1 -1
  75. package/dist/mixins/parent-internals.js +34 -0
  76. package/dist/mixins/parent-internals.js.map +1 -1
  77. package/dist/mixins/parent.d.ts.map +1 -1
  78. package/dist/mixins/parent.js +6 -1
  79. package/dist/mixins/parent.js.map +1 -1
  80. package/dist/mixins/types.d.ts +2 -2
  81. package/dist/mixins/types.d.ts.map +1 -1
  82. package/dist/resources/references.d.ts +2 -0
  83. package/dist/resources/references.d.ts.map +1 -1
  84. package/dist/resources/references.js +3 -3
  85. package/dist/resources/references.js.map +1 -1
  86. package/dist/services/catalog.d.ts.map +1 -1
  87. package/dist/services/catalog.js +5 -3
  88. package/dist/services/catalog.js.map +1 -1
  89. package/dist/services/claims.d.ts +7 -0
  90. package/dist/services/claims.d.ts.map +1 -0
  91. package/dist/services/claims.js +11 -0
  92. package/dist/services/claims.js.map +1 -0
  93. package/dist/services/defs-manager.d.ts +2 -0
  94. package/dist/services/defs-manager.d.ts.map +1 -1
  95. package/dist/services/defs-manager.js +4 -0
  96. package/dist/services/defs-manager.js.map +1 -1
  97. package/dist/services/element-key.d.ts +4 -0
  98. package/dist/services/element-key.d.ts.map +1 -0
  99. package/dist/services/element-key.js +12 -0
  100. package/dist/services/element-key.js.map +1 -0
  101. package/dist/services/initialization.d.ts +7 -0
  102. package/dist/services/initialization.d.ts.map +1 -0
  103. package/dist/services/initialization.js +27 -0
  104. package/dist/services/initialization.js.map +1 -0
  105. package/dist/services/registry.d.ts +8 -0
  106. package/dist/services/registry.d.ts.map +1 -1
  107. package/dist/services/registry.js +47 -10
  108. package/dist/services/registry.js.map +1 -1
  109. package/dist/services/types.d.ts +17 -0
  110. package/dist/services/types.d.ts.map +1 -1
  111. package/dist/template/parts.d.ts +12 -6
  112. package/dist/template/parts.d.ts.map +1 -1
  113. package/dist/template/parts.js +36 -29
  114. package/dist/template/parts.js.map +1 -1
  115. package/dist/template/render.d.ts +6 -7
  116. package/dist/template/render.d.ts.map +1 -1
  117. package/dist/template/render.js +188 -44
  118. package/dist/template/render.js.map +1 -1
  119. package/dist/template/svg-tag.d.ts +5 -1
  120. package/dist/template/svg-tag.d.ts.map +1 -1
  121. package/dist/template/svg-tag.js.map +1 -1
  122. package/dist/text/internals.d.ts +1 -0
  123. package/dist/text/internals.d.ts.map +1 -1
  124. package/dist/types/common.d.ts +27 -0
  125. package/dist/types/common.d.ts.map +1 -1
  126. package/package.json +10 -1
  127. package/reports/adoption.json +20 -20
  128. package/reports/animation-benchmark.json +613 -613
  129. package/reports/benchmark.json +27 -27
  130. package/reports/change-groups-benchmark.json +471 -0
  131. package/reports/components-benchmark-before.json +10 -0
  132. package/reports/components-benchmark.json +10 -0
  133. package/reports/creation.json +26 -26
  134. package/reports/interchange-benchmark.json +85 -85
  135. package/reports/phase-3-core-after.json +40 -0
  136. package/reports/phase-3-core-before.json +40 -0
  137. package/reports/public-api-contract.json +335 -17
  138. package/reports/size-components.json +103 -0
  139. package/reports/size-parity.json +50 -34
  140. package/reports/size.json +7 -4
  141. package/reports/svgjs-comparison.json +3049 -3049
  142. package/reports/svgjs-comparison.md +15 -15
  143. package/reports/svgjs-parity-current.json +133 -46
  144. package/src/advanced.ts +1 -1
  145. package/src/catalog/fragment.ts +2 -2
  146. package/src/changes/derived.ts +19 -0
  147. package/src/changes/restore.ts +78 -36
  148. package/src/changes/service.ts +23 -8
  149. package/src/changes/state.ts +37 -28
  150. package/src/changes.ts +24 -5
  151. package/src/components/changes.ts +131 -0
  152. package/src/components/component.ts +401 -0
  153. package/src/components/decorators.ts +106 -0
  154. package/src/components/metadata.ts +111 -0
  155. package/src/components/registry.ts +79 -0
  156. package/src/components/types.ts +66 -0
  157. package/src/components/view.ts +123 -0
  158. package/src/components.ts +15 -0
  159. package/src/core/node.ts +32 -1
  160. package/src/interchange/clone.ts +3 -2
  161. package/src/interchange/reconstruct.ts +16 -12
  162. package/src/interchange/references.ts +12 -4
  163. package/src/mixins/parent-internals.ts +37 -0
  164. package/src/mixins/parent.ts +13 -4
  165. package/src/mixins/types.ts +2 -2
  166. package/src/resources/references.ts +5 -5
  167. package/src/services/catalog.ts +5 -3
  168. package/src/services/claims.ts +14 -0
  169. package/src/services/defs-manager.ts +5 -0
  170. package/src/services/element-key.ts +14 -0
  171. package/src/services/initialization.ts +25 -0
  172. package/src/services/registry.ts +49 -10
  173. package/src/services/types.ts +21 -0
  174. package/src/template/parts.ts +54 -39
  175. package/src/template/render.ts +211 -54
  176. package/src/template/svg-tag.ts +6 -1
  177. package/src/text/internals.ts +1 -0
  178. package/src/types/common.ts +29 -0
@@ -1,7 +1,9 @@
1
1
  import { destroySubtrees } from '../core/destruction.js';
2
- import { validateChild } from '../mixins/parent-internals.js';
2
+ import { validateChild, withInternalStructure } from '../mixins/parent-internals.js';
3
3
  import { readTransformState } from '../mixins/transform-state.js';
4
4
  import { referenceValue } from '../services/reference-value.js';
5
+ import { initializeNode } from '../services/initialization.js';
6
+ import { isDerivedChange, ownsDerived } from './derived.js';
5
7
  import { captureState, sameState, stateAdapter, combineChanges } from './state.js';
6
8
  import { ChangeConflictError, ChangeRollbackError, restoreModelState, validateModelState, } from './types.js';
7
9
  function currentValue(snapshot, change) {
@@ -15,6 +17,13 @@ function currentValue(snapshot, change) {
15
17
  return snapshot.contributesToBounds;
16
18
  return snapshot[change.domain];
17
19
  }
20
+ /** An owner's derived child list is redrawn, not restored, so conflicts ignore it. */
21
+ function comparable(value, change) {
22
+ const snapshot = value;
23
+ return change.domain === 'existence' && snapshot && ownsDerived(snapshot.constructor)
24
+ ? { ...snapshot, children: undefined }
25
+ : value;
26
+ }
18
27
  function contentFeatures(content) {
19
28
  return {
20
29
  parts: content.parts.map((part) => (typeof part === 'string' ? part : part.node)),
@@ -42,9 +51,8 @@ function applyStateChange(snapshot, change, value) {
42
51
  },
43
52
  };
44
53
  }
45
- if (change.domain === 'bounds')
46
- return { ...snapshot, contributesToBounds: value };
47
- return { ...snapshot, [change.domain]: value };
54
+ const field = change.domain === 'bounds' ? 'contributesToBounds' : change.domain;
55
+ return { ...snapshot, [field]: value };
48
56
  }
49
57
  /** Validates the whole patch before writing; rolls back logical state on failure. */
50
58
  export function restoreChanges(owner, changes, direction) {
@@ -56,7 +64,8 @@ export function restoreChanges(owner, changes, direction) {
56
64
  }
57
65
  function applyChanges(owner, changes, direction) {
58
66
  const service = owner.context.changes;
59
- changes = combineChanges(changes);
67
+ // An owner redraws its derived children after replay, from the state replay restored.
68
+ changes = combineChanges(changes).filter((change) => !isDerivedChange(change));
60
69
  service.resetOrders();
61
70
  service.configure(stateAdapter);
62
71
  try {
@@ -73,7 +82,8 @@ function applyChanges(owner, changes, direction) {
73
82
  domains.set(change.target, new Set());
74
83
  }
75
84
  const expected = direction === 'undo' ? change.after : change.before;
76
- if (!sameState(currentValue(before.get(change.target), change), expected))
85
+ const current = currentValue(before.get(change.target), change);
86
+ if (!sameState(comparable(current, change), comparable(expected, change)))
77
87
  throw new ChangeConflictError(`Conflicting ${change.domain} state on node ${change.target.id}`);
78
88
  desired.set(change.target, applyStateChange(desired.get(change.target), change, direction === 'undo' ? change.before : change.after));
79
89
  domains
@@ -133,15 +143,40 @@ function preflight(owner, states) {
133
143
  function validateGraph(owner, states, counts) {
134
144
  const context = owner.context;
135
145
  const removed = new Set([...states].filter(([, state]) => !state).map(([target]) => target.node));
146
+ let ids;
147
+ const siblingCounts = new Map();
148
+ for (const state of states.values()) {
149
+ const parent = state?.placement.parent;
150
+ if (!parent)
151
+ continue;
152
+ let count = siblingCounts.get(parent);
153
+ if (count === undefined) {
154
+ count = 0;
155
+ if (!parent.node.isDestroyed && 'children' in parent.node)
156
+ for (const node of parent.node.children)
157
+ if (!states.has(context.changes.handle(node)))
158
+ count++;
159
+ }
160
+ siblingCounts.set(parent, count + 1);
161
+ }
136
162
  for (const [target, state] of states) {
137
163
  if (!state)
138
164
  continue;
139
- if (context.registry.get(state.constructor.tag) !== state.constructor)
165
+ if (context.registry.registered(state.constructor) !== state.constructor)
140
166
  throw new ChangeConflictError(`Constructor is not registered: ${state.constructor.tag}`);
141
167
  const id = state.properties.id?.value;
142
- if (id !== undefined &&
143
- context.registry.nodes.some((node) => node !== target.node && !removed.has(node) && node.getAttributeValue('id') === id))
144
- throw new ChangeConflictError(`SVG ID is already in use: ${id}`);
168
+ if (id !== undefined) {
169
+ if (!ids) {
170
+ ids = new Map();
171
+ for (const node of context.registry.nodes) {
172
+ const value = node.getAttributeValue('id');
173
+ if (value !== undefined && !removed.has(node))
174
+ ids.set(value, ids.has(value) ? null : node);
175
+ }
176
+ }
177
+ if (ids.has(id) && ids.get(id) !== target.node)
178
+ throw new ChangeConflictError(`SVG ID is already in use: ${id}`);
179
+ }
145
180
  if (!target.node.isDestroyed) {
146
181
  for (const [attribute, property] of Object.entries(state.properties))
147
182
  target.node.validateAttribute(attribute, property.value);
@@ -164,17 +199,9 @@ function validateGraph(owner, states, counts) {
164
199
  throw new ChangeConflictError('The reference value and its planned target ID disagree');
165
200
  }
166
201
  if (state.placement.parent) {
167
- const parent = state.placement.parent;
168
- const existing = !parent.node.isDestroyed && 'children' in parent.node
169
- ? parent.node.children.map((node) => context.changes.handle(node))
170
- : [];
171
- const children = new Set(existing.filter((child) => !states.has(child) || states.get(child)?.placement.parent === parent));
172
- for (const [child, planned] of states)
173
- if (planned?.placement.parent === parent)
174
- children.add(child);
175
202
  if (!Number.isInteger(state.placement.index) ||
176
203
  state.placement.index < 0 ||
177
- state.placement.index >= children.size)
204
+ state.placement.index >= siblingCounts.get(state.placement.parent))
178
205
  throw new ChangeConflictError('The history sibling position is no longer available');
179
206
  }
180
207
  const seen = new Set([target]);
@@ -203,7 +230,11 @@ function validateGraph(owner, states, counts) {
203
230
  if (counts.get(node) > 0)
204
231
  throw new ChangeConflictError('A removed node would retain live typed references');
205
232
  }
233
+ /** Replay restores exact prior trees, including children that their class owns. */
206
234
  function applyPrepared(owner, states, domains) {
235
+ withInternalStructure(() => applyStates(owner, states, domains));
236
+ }
237
+ function applyStates(owner, states, domains) {
207
238
  const context = owner.context;
208
239
  const recreated = new Set();
209
240
  // Allocate all nodes before restoring any reference or content edge.
@@ -266,25 +297,40 @@ function applyPrepared(owner, states, domains) {
266
297
  for (const [target] of placements)
267
298
  if (target.node.parent)
268
299
  target.node.remove();
269
- const pending = [...placements];
270
- while (pending.length) {
271
- const ready = pending.filter(([, state]) => !state.placement.parent || !pending.some(([target]) => target === state.placement.parent));
272
- if (!ready.length)
273
- throw new ChangeConflictError('Cyclic placements');
274
- ready.sort((a, b) => a[1].placement.index - b[1].placement.index);
275
- for (const entry of ready) {
276
- const [target, state] = entry;
300
+ const positions = new Map(placements.map(([target], index) => [target, index]));
301
+ const dependants = new Map();
302
+ let ready = [];
303
+ for (const entry of placements) {
304
+ const parent = entry[1].placement.parent;
305
+ if (!parent || !positions.has(parent))
306
+ ready.push(entry);
307
+ else {
308
+ let children = dependants.get(parent);
309
+ if (!children)
310
+ dependants.set(parent, (children = []));
311
+ children.push(entry);
312
+ }
313
+ }
314
+ // Preflight has already rejected parent cycles.
315
+ while (ready.length) {
316
+ ready.sort((a, b) => a[1].placement.index - b[1].placement.index ||
317
+ positions.get(a[0]) - positions.get(b[0]));
318
+ const next = [];
319
+ for (const [target, state] of ready) {
277
320
  const parent = state.placement.parent?.node;
278
321
  if (parent) {
279
322
  parent[validateChild](target.node);
280
323
  parent.add(target.node, Math.min(state.placement.index, parent.children.length));
281
324
  }
282
- pending.splice(pending.indexOf(entry), 1);
325
+ for (const child of dependants.get(target) ?? [])
326
+ next.push(child);
283
327
  }
328
+ ready = next;
284
329
  }
285
330
  // Parent order is authoritative across compound edits and separate edit callbacks.
286
331
  for (const [target, state] of states)
287
332
  if (state?.children &&
333
+ !ownsDerived(state.constructor) &&
288
334
  (recreated.has(target) ||
289
335
  domains.get(target).has('children') ||
290
336
  domains.get(target).has('existence'))) {
@@ -312,6 +358,8 @@ function applyPrepared(owner, states, domains) {
312
358
  const roots = [...retired].filter((node) => !node.parent || !retired.has(node.parent));
313
359
  if (roots.length)
314
360
  owner[destroySubtrees](roots);
361
+ for (const target of recreated)
362
+ initializeNode(target.node);
315
363
  context.bounds.invalidate();
316
364
  }
317
365
  //# sourceMappingURL=restore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"restore.js","sourceRoot":"","sources":["../../src/changes/restore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"restore.js","sourceRoot":"","sources":["../../src/changes/restore.ts"],"names":[],"mappings":"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"}
@@ -28,12 +28,17 @@ export declare class ChangeService {
28
28
  private adapter?;
29
29
  private validationCounts?;
30
30
  private childOrders;
31
+ private liveOrders;
31
32
  constructor(context: DrawingContext);
32
33
  get observed(): boolean;
33
34
  get replaying(): boolean;
35
+ /** The surrounding synchronous edit, if one is already grouping model writes. */
36
+ get currentGroup(): number | undefined;
34
37
  children(node: AnyNode): readonly AnyNode[] | undefined;
35
38
  index(node: AnyNode): number;
36
39
  resetOrders(): void;
40
+ /** Keep the operation's original order, but invalidate the live order after a tree edit. */
41
+ invalidateOrder(node: AnyNode): void;
37
42
  reading<Result>(callback: () => Result): Result;
38
43
  referenceCount(node: AnyNode, liveCount: number): number;
39
44
  validating<Result>(counts: ReadonlyMap<AnyNode, number>, callback: () => Result): Result;
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/changes/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/changes/service.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ export class ChangeService {
21
21
  adapter;
22
22
  validationCounts;
23
23
  childOrders = new Map();
24
+ liveOrders = new WeakMap();
24
25
  constructor(context) {
25
26
  this.context = context;
26
27
  }
@@ -30,13 +31,21 @@ export class ChangeService {
30
31
  get replaying() {
31
32
  return this.replayDepth > 0;
32
33
  }
34
+ /** The surrounding synchronous edit, if one is already grouping model writes. */
35
+ get currentGroup() {
36
+ return this.metadata.group;
37
+ }
33
38
  children(node) {
34
39
  if (!('children' in node))
35
40
  return undefined;
36
41
  let order = this.childOrders.get(node);
37
42
  if (!order) {
38
- const nodes = [...node.children];
39
- order = { nodes, indices: new Map(nodes.map((child, index) => [child, index])) };
43
+ order = this.liveOrders.get(node);
44
+ if (!order) {
45
+ const nodes = [...node.children];
46
+ order = { nodes, indices: new Map(nodes.map((child, index) => [child, index])) };
47
+ this.liveOrders.set(node, order);
48
+ }
40
49
  this.childOrders.set(node, order);
41
50
  }
42
51
  return order.nodes;
@@ -50,6 +59,10 @@ export class ChangeService {
50
59
  resetOrders() {
51
60
  this.childOrders = new Map();
52
61
  }
62
+ /** Keep the operation's original order, but invalidate the live order after a tree edit. */
63
+ invalidateOrder(node) {
64
+ this.liveOrders.delete(node);
65
+ }
53
66
  reading(callback) {
54
67
  const previous = this.capturing;
55
68
  this.capturing = true;
@@ -354,8 +367,7 @@ export class ChangeService {
354
367
  this.delivering = true;
355
368
  const failures = [];
356
369
  try {
357
- while (this.queue.length) {
358
- const next = this.queue.shift();
370
+ for (const next of this.queue) {
359
371
  for (const listener of [...this.listeners]) {
360
372
  if (!this.listeners.has(listener))
361
373
  continue;
@@ -369,6 +381,7 @@ export class ChangeService {
369
381
  }
370
382
  }
371
383
  finally {
384
+ this.queue.length = 0;
372
385
  this.delivering = false;
373
386
  }
374
387
  if (failures.length === 1 && failures[0] instanceof ChangeConflictError)
@@ -385,6 +398,7 @@ export class ChangeService {
385
398
  this.groups.clear();
386
399
  this.owner = null;
387
400
  this.childOrders.clear();
401
+ this.liveOrders = new WeakMap();
388
402
  }
389
403
  }
390
404
  //# sourceMappingURL=service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/changes/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/changes/service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/changes/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAExF,oFAAoF;AACpF,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAShE;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAIpD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,aAAa,CAEzD;AAqDD,wBAAgB,SAAS,CACvB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,aAAa,GACnB,WAAW,EAAE,CAwCf;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAErD;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,GAAG,SAAS,WAAW,EAAE,CAiFtF;AA+BD,eAAO,MAAM,YAAY;;;;EAAuE,CAAC"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/changes/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAExF,oFAAoF;AACpF,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAShE;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAIpD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,aAAa,CAEzD;AAqDD,wBAAgB,SAAS,CACvB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,aAAa,GACnB,WAAW,EAAE,CA0Cf;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAErD;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,GAAG,SAAS,WAAW,EAAE,CAyFtF;AA8BD,eAAO,MAAM,YAAY;;;;EAAuE,CAAC"}
@@ -82,25 +82,24 @@ export function diffState(target, before, after) {
82
82
  if (!sameState(previous, value))
83
83
  changes.push({ target, domain: 'property', attribute, before: previous, after: value });
84
84
  }
85
- if (transform && before.transform && after.transform)
86
- changes.push({ target, domain: 'transform', before: before.transform, after: after.transform });
87
- if (!sameState(before.content, after.content) && before.content && after.content)
88
- changes.push({ target, domain: 'content', before: before.content, after: after.content });
89
- if (!sameState(before.presentation, after.presentation))
90
- changes.push({
91
- target,
92
- domain: 'presentation',
93
- before: before.presentation,
94
- after: after.presentation,
95
- });
96
- if (!sameState(before.custom, after.custom))
97
- changes.push({ target, domain: 'custom', before: before.custom, after: after.custom });
98
- if (!sameState(before.native, after.native) && before.native && after.native)
99
- changes.push({ target, domain: 'native', before: before.native, after: after.native });
100
- if (!sameState(before.placement, after.placement))
101
- changes.push({ target, domain: 'placement', before: before.placement, after: after.placement });
102
- if (!sameState(before.children, after.children) && before.children && after.children)
103
- changes.push({ target, domain: 'children', before: before.children, after: after.children });
85
+ for (const domain of [
86
+ 'transform',
87
+ 'content',
88
+ 'presentation',
89
+ 'custom',
90
+ 'native',
91
+ 'placement',
92
+ 'children',
93
+ ]) {
94
+ const previous = before[domain], value = after[domain];
95
+ if (domain !== 'presentation' &&
96
+ domain !== 'custom' &&
97
+ domain !== 'placement' &&
98
+ (!previous || !value))
99
+ continue;
100
+ if (domain === 'transform' ? transform : !sameState(previous, value))
101
+ changes.push({ target, domain, before: previous, after: value });
102
+ }
104
103
  if (before.contributesToBounds !== after.contributesToBounds)
105
104
  changes.push({
106
105
  target,
@@ -126,7 +125,8 @@ export function combineChanges(changes) {
126
125
  for (const [target, records] of lifecycle) {
127
126
  const first = records.findIndex((change) => change.domain === 'existence');
128
127
  if (first < 0) {
129
- normalized.push(...records);
128
+ for (const record of records)
129
+ normalized.push(record);
130
130
  continue;
131
131
  }
132
132
  let last = records.length - 1;
@@ -149,18 +149,25 @@ export function combineChanges(changes) {
149
149
  merged.set(key, previous ? { ...change, before: previous.before } : change);
150
150
  }
151
151
  const orders = new Map();
152
+ const indices = (children) => {
153
+ const positions = new Map();
154
+ // Reverse traversal retains indexOf's first match even for repeated handles.
155
+ for (let index = children.length - 1; index >= 0; index--)
156
+ positions.set(children[index], index);
157
+ return positions;
158
+ };
152
159
  for (const change of merged.values()) {
153
160
  if (change.domain === 'children')
154
- orders.set(change.target, change);
161
+ orders.set(change.target, { before: indices(change.before), after: indices(change.after) });
155
162
  if (change.domain === 'existence' && (change.before?.children || change.after?.children))
156
163
  orders.set(change.target, {
157
- before: change.before?.children ?? [],
158
- after: change.after?.children ?? [],
164
+ before: indices(change.before?.children ?? []),
165
+ after: indices(change.after?.children ?? []),
159
166
  });
160
167
  }
161
168
  const placement = (target, value, edge) => {
162
169
  const siblings = value.parent ? orders.get(value.parent)?.[edge] : undefined;
163
- return siblings ? { ...value, index: siblings.indexOf(target) } : value;
170
+ return siblings ? { ...value, index: siblings.get(target) ?? -1 } : value;
164
171
  };
165
172
  return Object.freeze([...merged.values()]
166
173
  .map((change) => {
@@ -218,9 +225,8 @@ function patchSnapshot(snapshot, change, edge) {
218
225
  properties.transform = { value: transform.transform };
219
226
  return immutable({ ...snapshot, properties, transform });
220
227
  }
221
- if (change.domain === 'bounds')
222
- return immutable({ ...snapshot, contributesToBounds: change[edge] });
223
- return immutable({ ...snapshot, [change.domain]: change[edge] });
228
+ const field = change.domain === 'bounds' ? 'contributesToBounds' : change.domain;
229
+ return immutable({ ...snapshot, [field]: change[edge] });
224
230
  }
225
231
  export const stateAdapter = Object.freeze({ capture: captureState, diff: diffState, immutable });
226
232
  //# sourceMappingURL=state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/changes/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/changes/state.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"changes.d.ts","sourceRoot":"","sources":["../src/changes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAe,MAAM,oBAAoB,CAAC;AAKhG,YAAY,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,aAAa,EACb,UAAU,EACV,aAAa,EACb,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE1E,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GACrC,MAAM,IAAI,CAGZ;AACD,gGAAgG;AAChG,wBAAgB,aAAa,CAC3B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,oBAAoB,EAAE,gBAAgB,KAAK,IAAI,GACrE,MAAM,IAAI,CASZ;AACD,wBAAgB,WAAW,CAAC,MAAM,EAChC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,MAAM,GACrB,MAAM,CAGR;AACD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,GAAE,cAAmB,GAAG,WAAW,CA2E7F;AAED,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,IAAI,CAG5E"}
1
+ {"version":3,"file":"changes.d.ts","sourceRoot":"","sources":["../src/changes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,cAAc,EAGf,MAAM,oBAAoB,CAAC;AAK5B,YAAY,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,aAAa,EACb,UAAU,EACV,aAAa,EACb,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE1E,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GACrC,MAAM,IAAI,CAGZ;AACD,gGAAgG;AAChG,wBAAgB,aAAa,CAC3B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,oBAAoB,EAAE,gBAAgB,KAAK,IAAI,GACrE,MAAM,IAAI,CASZ;AACD,wBAAgB,WAAW,CAAC,MAAM,EAChC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,MAAM,GACrB,MAAM,CAGR;AACD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,GAAE,cAAmB,GAAG,WAAW,CAwF7F;AAED,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,IAAI,CAG5E"}