@fileverse-dev/dsheet 4.1.23-stabilise-package-4 → 4.1.23-stabilise-package-5

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.
@@ -34,26 +34,23 @@ export type StructuralRemountRefs = RemoteApplyGuardRefs & {
34
34
  /**
35
35
  * Debounced structural remount under the remote-apply guard.
36
36
  *
37
- * The guard is begun once, right before `run`, and ended after paint, so each
38
- * remount owns exactly one begin and one end. It is NOT held while the timer
39
- * is merely pending or deferred by a cell edit: `remoteUpdateRef` makes
40
- * handleChange and the data-block work in afterUpdateCell drop local work, so
41
- * holding it across an edit would drop the user's typed edit. (The cell write
42
- * in afterUpdateCell and the commit-time write do not check it.) What must not
43
- * run while a remount is pending is the engine → Yjs echo hooks, which diff
44
- * the old grid against Yjs: they check `shouldSkipEchoWrite`. Events that
45
- * land while one is pending only re-arm its timer.
37
+ * Each pending remount owns exactly one begin and one end (B1): the guard is
38
+ * begun when the remount becomes pending (no remount was pending before),
39
+ * held while the timer is pending or deferred by a cell edit (B3), and ended
40
+ * after paint once `run` has finished. Events that land while one is pending
41
+ * only re-arm its timer.
46
42
  *
47
43
  * While `isEditing()` is true at fire time the timer re-arms (250 ms) and the
48
- * pending flag is kept; the remount runs once the edit ends.
44
+ * pending flag and guard depth are kept; the remount runs once the edit ends.
45
+ * The typed cell itself is still written: the commit-time write and the cell
46
+ * write in afterUpdateCell do not check the guard.
49
47
  */
50
48
  export declare function scheduleStructuralRemount(refs: StructuralRemountRefs, run: () => void, delayMs?: number, isEditing?: () => boolean): void;
51
49
  /** Re-arm interval while a cell edit blocks the remount. */
52
50
  export declare const STRUCTURAL_REMOUNT_EDIT_RETRY_MS = 250;
53
51
  /**
54
- * Drop a pending structural remount (observer teardown). The guard is only
55
- * held while `run` executes and until paint afterwards, so there is nothing
56
- * to release here.
52
+ * Drop a pending structural remount (observer teardown) and release the
53
+ * guard begun for it.
57
54
  */
58
55
  export declare function cancelStructuralRemount(refs: StructuralRemountRefs): void;
59
56
  /**