effectable 1.2.0-canary.1 → 1.2.0-canary.10

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.
@@ -147,6 +147,12 @@ export declare class GraphRuntime {
147
147
  * unmount() must await this before concluding teardown is finished.
148
148
  */
149
149
  private pendingTeardown;
150
+ /**
151
+ * Imperative ref values bound for owners that expose `@UseImperativeHandle` methods.
152
+ * `commitRef` assigns a limited handle (not the Component instance) into `ref.current`;
153
+ * identity-safe clear must still recognize that handle as owned by the instance.
154
+ */
155
+ private readonly imperativeRefByOwner;
150
156
  /**
151
157
  * Instances are created only via {@link GraphRuntime.mount}; direct `new GraphRuntime()` is unavailable externally.
152
158
  */
@@ -184,9 +190,20 @@ export declare class GraphRuntime {
184
190
  */
185
191
  private disposeEffectableRuntimeBusWiring;
186
192
  /**
187
- * Identity-safe ref clearing: clears ref.current only if it still points to the expected owner.
193
+ * Builds the value assigned to `ref.current` for a mounted instance.
194
+ *
195
+ * When the constructor declares `@UseImperativeHandle` methods, only those methods
196
+ * are exposed (bound to the instance) — matching the refs.ts / CONCEPT contract.
197
+ * Without an allowlist, the full instance is assigned (legacy escape hatch).
198
+ *
199
+ * @param {Component<unknown, unknown>} instance - mounted component instance
200
+ * @returns {unknown} instance or limited imperative handle object
201
+ */
202
+ private resolveRefCurrentValue;
203
+ /**
204
+ * Identity-safe ref clearing: clears ref.current only if it still points to the expected owner
205
+ * (full instance) or the limited imperative handle previously bound for that owner.
188
206
  * Prevents an old rollback from clearing a ref that a newer materialization already reused.
189
- * No cast required (Component | null → unknown | null is assignable).
190
207
  *
191
208
  * @param {RefObject<unknown>} ref - ref object
192
209
  * @param {Component<unknown, unknown>} expectedOwner - expected current owner
@@ -199,12 +216,10 @@ export declare class GraphRuntime {
199
216
  *
200
217
  * Rules:
201
218
  * - Clear previousRef only if it still points to expectedPreviousOwner (identity-safe).
202
- * - Bind nextRef to instance if nextRef is provided.
219
+ * - Bind nextRef to the instance, or to a limited `@UseImperativeHandle` surface when declared.
203
220
  * - previousRef and nextRef can be the same object (ref reuse) or different (ref swap).
204
221
  * - Do not let an old disposer clear a newer owner.
205
222
  *
206
- * No casts: Component | null → unknown | null is assignable (widening).
207
- *
208
223
  * @param {RefObject<unknown> | undefined} previousRef - ref to clear (can be undefined if no previous ref)
209
224
  * @param {Component<unknown, unknown> | null} expectedPreviousOwner - expected owner of previousRef (null if unknown)
210
225
  * @param {RefObject<unknown> | undefined} nextRef - ref to bind to instance (can be undefined if removing ref)
@@ -228,11 +243,16 @@ export declare class GraphRuntime {
228
243
  * Transactional rollback for failed fiber materialization.
229
244
  * Releases acquired resources in reverse acquisition order:
230
245
  * 1. disable scheduler hook
231
- * 2. dispose runtime bus registrations
232
- * 3. clear bound ref (identity-safe)
233
- * 4. run failed-startup cleanup
234
- * 5. destroy mounted children in reverse order
246
+ * 2. destroy mounted children in compose order (same as {@link destroyFiber})
247
+ * 3. run failed-startup cleanup (parent onUnmount when startup ran)
248
+ * 4. dispose runtime bus registrations
249
+ * 5. clear bound ref (identity-safe)
235
250
  * 6. unlink the partial fiber
251
+ *
252
+ * Children must be destroyed before parent bus dispose / ref clear / onUnmount so
253
+ * child onUnmount still sees a live parent ref and parent @On* subscriptions
254
+ * (matches {@link destroyFiber} / {@link runFiberFailedCleanup}).
255
+ *
236
256
  * Cleanup is best-effort: one failure does not skip remaining steps.
237
257
  * Preserves the original materialization error; cleanup errors are attached.
238
258
  * Rollback is idempotent.
@@ -246,7 +266,7 @@ export declare class GraphRuntime {
246
266
  * Async continuation of rollback child destruction after one child's destroy returned a Promise.
247
267
  *
248
268
  * @param {RuntimeFiber<unknown>[]} children - mounted children
249
- * @param {number} lastIdx - index of the last processed child
269
+ * @param {number} pendingIdx - index of the child whose destroy is pending
250
270
  * @param {Promise<void>} pending - Promise from destroying the previous child
251
271
  * @param {Error} primaryError - original materialization error
252
272
  * @param {Error[]} cleanupErrors - accumulated cleanup errors
@@ -257,7 +277,8 @@ export declare class GraphRuntime {
257
277
  private continueRollbackDestroyAsync;
258
278
  /**
259
279
  * After rollback destroyed children: run parent failed-cleanup only when startup
260
- * actually ran (`status !== 'registered'`), then attach cleanup errors and rethrow.
280
+ * actually ran (`status !== 'registered'`), then dispose parent bus + clear parent
281
+ * ref (after children / onUnmount), then attach cleanup errors and rethrow.
261
282
  *
262
283
  * @param {RuntimeFiber<unknown>} fiber - parent fiber being rolled back
263
284
  * @param {Component<unknown, unknown> | null} instance - parent instance
@@ -266,6 +287,15 @@ export declare class GraphRuntime {
266
287
  * @returns {void | Promise<void>} always rejects via {@link finalizeRollback}
267
288
  */
268
289
  private finishRollbackParentCleanup;
290
+ /**
291
+ * Best-effort parent bus dispose + identity-safe ref clear after children (and
292
+ * parent onUnmount when applicable) have finished during materialize rollback.
293
+ *
294
+ * @param {RuntimeFiber<unknown>} fiber - parent fiber being rolled back
295
+ * @param {Error[]} cleanupErrors - accumulated cleanup errors
296
+ * @returns {void}
297
+ */
298
+ private disposeRollbackParentResources;
269
299
  /**
270
300
  * Attaches cleanup errors to the primary error and rethrows.
271
301
  *
@@ -461,6 +491,79 @@ export declare class GraphRuntime {
461
491
  * @returns {FiberInspectNode} node snapshot
462
492
  */
463
493
  private toFiberInspectNode;
494
+ /**
495
+ * Runs deferred {@link LifecycleEngine.runStartup} for a fiber subtree in
496
+ * children→parent order (siblings in compose order).
497
+ *
498
+ * Call only after the subtree (and any later siblings that must observe
499
+ * publishes) have completed bus wiring. Idempotent for fibers that already
500
+ * started.
501
+ *
502
+ * @param {RuntimeFiber<unknown>} fiber - subtree root
503
+ * @returns {void | Promise<void>}
504
+ */
505
+ private flushDeferredLifecycleTree;
506
+ /**
507
+ * Async continuation of {@link flushDeferredLifecycleTree} after a child flush returns a Promise.
508
+ *
509
+ * @param {RuntimeFiber<unknown>} fiber - subtree root
510
+ * @param {RuntimeFiber<unknown>[]} children - child fibers
511
+ * @param {number} pendingIdx - index of the pending child
512
+ * @param {PromiseLike<void>} pending - pending child flush
513
+ * @returns {Promise<void>}
514
+ */
515
+ private continueFlushDeferredLifecycleAsync;
516
+ /**
517
+ * Runs startup + update-hook injection when {@link FiberConstructionJournal.lifecycleDeferred}
518
+ * is set; no-op otherwise.
519
+ *
520
+ * @param {RuntimeFiber<unknown>} fiber - fiber to start
521
+ * @returns {void | Promise<void>}
522
+ */
523
+ private runDeferredLifecycleIfNeeded;
524
+ /**
525
+ * Async path for {@link runDeferredLifecycleIfNeeded} when startup returns a Promise.
526
+ *
527
+ * @param {RuntimeFiber<unknown>} fiber - fiber being started
528
+ * @param {PromiseLike<import('./lifecycle').LifecycleTransitionResult>} pendingStartup - pending startup
529
+ * @returns {Promise<void>}
530
+ */
531
+ private finalizeDeferredLifecycleAsync;
532
+ /**
533
+ * After bus wiring: either defer lifecycle (sibling/parent batching) or flush
534
+ * deferred children and run this fiber's startup.
535
+ *
536
+ * @template P node props type
537
+ * @param {RuntimeFiber<P>} fiber - fiber that just finished wiring
538
+ * @param {Component<unknown, P>} instance - component instance
539
+ * @param {LifecycleEngine} engine - lifecycle engine
540
+ * @param {boolean} deferLifecycle - when true, skip startup until a parent flush
541
+ * @returns {RuntimeFiber<P> | Promise<RuntimeFiber<P>>}
542
+ */
543
+ private completeMaterializeAfterWiring;
544
+ /**
545
+ * Async continuation after a deferred child flush during materialize completion.
546
+ *
547
+ * @template P node props type
548
+ * @param {RuntimeFiber<P>} fiber - parent fiber
549
+ * @param {Component<unknown, P>} instance - parent instance
550
+ * @param {LifecycleEngine} engine - parent engine
551
+ * @param {RuntimeFiber<unknown>[]} children - child fibers
552
+ * @param {number} pendingIdx - pending child index
553
+ * @param {PromiseLike<void>} pending - pending flush
554
+ * @returns {Promise<RuntimeFiber<P>>}
555
+ */
556
+ private continueCompleteMaterializeAfterWiringAsync;
557
+ /**
558
+ * Runs startup for a fiber that is completing materialize (not deferred).
559
+ *
560
+ * @template P node props type
561
+ * @param {RuntimeFiber<P>} fiber - fiber
562
+ * @param {Component<unknown, P>} instance - instance
563
+ * @param {LifecycleEngine} engine - engine
564
+ * @returns {RuntimeFiber<P> | Promise<RuntimeFiber<P>>}
565
+ */
566
+ private runMaterializeStartup;
464
567
  /**
465
568
  * Creates a RuntimeFiber for a virtual node: instantiates the component,
466
569
  * injects contexts, builds the child scope (for ContextProvider),
@@ -473,12 +576,14 @@ export declare class GraphRuntime {
473
576
  * @param {VirtualServiceNode<P>} vnode - virtual node
474
577
  * @param {RuntimeFiber | null} parentFiber - parent fiber
475
578
  * @param {ContextScope} parentScope - parent scope
579
+ * @param {boolean} [deferLifecycle=false] - when true, wire buses but defer onMount
580
+ * until {@link flushDeferredLifecycleTree} (used for sibling batching)
476
581
  * @returns {RuntimeFiber<P> | Promise<RuntimeFiber<P>>}
477
582
  */
478
583
  private materialize;
479
584
  /**
480
585
  * Async continuation of {@link materialize} after a child returned a Promise.
481
- * Finishes remaining child fibers with `await`, then runs parent startup.
586
+ * Finishes remaining child fibers with `await`, then completes wiring / lifecycle.
482
587
  *
483
588
  * @param {RuntimeFiber<P>} fiber - current fiber
484
589
  * @param {Component<unknown, P>} instance - component instance
@@ -488,6 +593,7 @@ export declare class GraphRuntime {
488
593
  * @param {ContextScope} childScope - scope for child nodes
489
594
  * @param {Promise<RuntimeFiber<unknown>>} pending - Promise for the current child
490
595
  * @param {number} pendingIdx - index of the current child
596
+ * @param {boolean} deferLifecycle - parent defer flag from {@link materialize}
491
597
  * @returns {Promise<RuntimeFiber<P>>}
492
598
  */
493
599
  private continueMaterializeAsync;
@@ -510,6 +616,9 @@ export declare class GraphRuntime {
510
616
  * @param {VirtualServiceNode<P>} nextVnode - new virtual node
511
617
  * @param {RuntimeFiber | null} parentFiber - parent fiber
512
618
  * @param {ContextScope} parentScope - parent scope
619
+ * @param {boolean} [deferLifecycle=false] - when true, REPLACE materialize wires buses but
620
+ * defers onMount until the sibling batch flush in {@link reconcileChildren} (same contract
621
+ * as PLACE). Root reconcile must leave this false — nothing else flushes the root.
513
622
  * @returns {Promise<RuntimeFiber<P>>}
514
623
  */
515
624
  private reconcileFiber;
@@ -535,6 +644,18 @@ export declare class GraphRuntime {
535
644
  * @returns {void | Promise<void>}
536
645
  */
537
646
  private runFiberFailedCleanup;
647
+ /**
648
+ * Destroys PLACE/REPLACE fibers in `nextChildren` that are not identity-in `currentChildren`.
649
+ * Used when child reconcile succeeded but a later step (e.g. ref commit in
650
+ * {@link applyFiberUpdate}) throws — those new fibers are not linked onto the parent
651
+ * yet, so fail-stop teardown of `currentRoot` cannot reach them.
652
+ *
653
+ * @param {RuntimeFiber<unknown>[]} currentChildren - parent children before apply
654
+ * @param {RuntimeFiber<unknown>[]} nextChildren - reconciled next children
655
+ * @param {unknown} primaryError - error to attach rollback failures onto
656
+ * @returns {void | Promise<void>}
657
+ */
658
+ private destroyOrphanedPlacedChildren;
538
659
  /**
539
660
  * Applies the reconcile result to the current fiber in-place.
540
661
  * In-place mutation instead of spread: 0 heap allocations on UPDATE
@@ -1 +1 @@
1
- {"version":3,"file":"GraphRuntime.d.ts","sourceRoot":"","sources":["../../src/component/GraphRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphRuntime.d.ts","sourceRoot":"","sources":["../../src/component/GraphRuntime.ts"],"names":[],"mappings":"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"}