foldkit 0.84.0 → 0.86.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 (62) hide show
  1. package/dist/runtime/runtime.d.ts.map +1 -1
  2. package/dist/runtime/runtime.js +16 -6
  3. package/dist/task/dom.d.ts +11 -7
  4. package/dist/task/dom.d.ts.map +1 -1
  5. package/dist/task/dom.js +17 -20
  6. package/dist/task/elementMovement.d.ts.map +1 -1
  7. package/dist/task/elementMovement.js +4 -5
  8. package/dist/task/index.d.ts +1 -1
  9. package/dist/task/index.d.ts.map +1 -1
  10. package/dist/task/index.js +1 -1
  11. package/dist/task/public.d.ts +1 -1
  12. package/dist/task/public.d.ts.map +1 -1
  13. package/dist/task/public.js +1 -1
  14. package/dist/task/timing.d.ts +23 -0
  15. package/dist/task/timing.d.ts.map +1 -1
  16. package/dist/task/timing.js +26 -0
  17. package/dist/test/apps/mountPanel.d.ts +3 -3
  18. package/dist/test/apps/mountPanel.js +9 -9
  19. package/dist/test/internal.d.ts +6 -1
  20. package/dist/test/internal.d.ts.map +1 -1
  21. package/dist/test/internal.js +18 -0
  22. package/dist/test/scene.d.ts +3 -0
  23. package/dist/test/scene.d.ts.map +1 -1
  24. package/dist/test/scene.js +62 -8
  25. package/dist/ui/combobox/multi.d.ts +10 -10
  26. package/dist/ui/combobox/public.d.ts +1 -1
  27. package/dist/ui/combobox/public.d.ts.map +1 -1
  28. package/dist/ui/combobox/public.js +1 -1
  29. package/dist/ui/combobox/shared.d.ts +27 -27
  30. package/dist/ui/combobox/shared.d.ts.map +1 -1
  31. package/dist/ui/combobox/shared.js +36 -36
  32. package/dist/ui/combobox/single.d.ts +10 -10
  33. package/dist/ui/datePicker/index.d.ts +1 -1
  34. package/dist/ui/listbox/multi.d.ts +4 -8
  35. package/dist/ui/listbox/multi.d.ts.map +1 -1
  36. package/dist/ui/listbox/public.d.ts +1 -1
  37. package/dist/ui/listbox/public.d.ts.map +1 -1
  38. package/dist/ui/listbox/public.js +1 -1
  39. package/dist/ui/listbox/shared.d.ts +13 -24
  40. package/dist/ui/listbox/shared.d.ts.map +1 -1
  41. package/dist/ui/listbox/shared.js +22 -40
  42. package/dist/ui/listbox/single.d.ts +4 -8
  43. package/dist/ui/listbox/single.d.ts.map +1 -1
  44. package/dist/ui/menu/index.d.ts +11 -20
  45. package/dist/ui/menu/index.d.ts.map +1 -1
  46. package/dist/ui/menu/index.js +26 -40
  47. package/dist/ui/menu/public.d.ts +1 -1
  48. package/dist/ui/menu/public.d.ts.map +1 -1
  49. package/dist/ui/menu/public.js +1 -1
  50. package/dist/ui/popover/index.d.ts +11 -11
  51. package/dist/ui/popover/index.d.ts.map +1 -1
  52. package/dist/ui/popover/index.js +21 -21
  53. package/dist/ui/popover/public.d.ts +1 -1
  54. package/dist/ui/popover/public.d.ts.map +1 -1
  55. package/dist/ui/popover/public.js +1 -1
  56. package/dist/ui/tooltip/index.d.ts +6 -6
  57. package/dist/ui/tooltip/index.d.ts.map +1 -1
  58. package/dist/ui/tooltip/index.js +11 -11
  59. package/dist/ui/tooltip/public.d.ts +1 -1
  60. package/dist/ui/tooltip/public.d.ts.map +1 -1
  61. package/dist/ui/tooltip/public.js +1 -1
  62. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"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"}
@@ -223,7 +223,15 @@ const makeRuntime = ({ Model, flags: resolveFlags, init, update, view, subscript
223
223
  commands, command => command.name), currentModel !== nextModel),
224
224
  });
225
225
  });
226
- const render = (model, message) => Effect.gen(function* () {
226
+ // NOTE: `dispatchService` defaults to the live dispatch but is
227
+ // overridable so the DevTools time-travel render path can pass
228
+ // `noOpDispatch`. Mount Effects forked during a replay render still
229
+ // execute (so the rendered DOM looks correct: positioning,
230
+ // observer attachment, library setup), but their result Messages
231
+ // reach a no-op dispatchSync and never enter the runtime queue.
232
+ // This prevents mount-derived Messages from polluting history when
233
+ // the user is just inspecting past state.
234
+ const render = (model, message, dispatchService = dispatch) => Effect.gen(function* () {
227
235
  const viewStart = performance.now();
228
236
  const nextDocument = view(model);
229
237
  const nullableNextVNode = yield* nextDocument.body;
@@ -245,7 +253,7 @@ const makeRuntime = ({ Model, flags: resolveFlags, init, update, view, subscript
245
253
  const patchedVNode = yield* Effect.sync(() => patchVNode(maybeCurrentVNode, nullableNextVNode, container));
246
254
  yield* Ref.set(maybeCurrentVNodeRef, Option.some(patchedVNode));
247
255
  yield* Effect.sync(() => applyDocumentMetadata(nextDocument, container));
248
- }).pipe(Effect.provideService(Dispatch, dispatch), Effect.provideService(MountTracker, mountTracker));
256
+ }).pipe(Effect.provideService(Dispatch, dispatchService), Effect.provideService(MountTracker, mountTracker));
249
257
  const isInIframe = window.self !== window.top;
250
258
  const resolvedDevTools = pipe(devTools ?? {}, Option.liftPredicate(config => config !== false), Option.filter(config => Match.value(config.show ?? DEFAULT_DEV_TOOLS_SHOW).pipe(Match.when('Always', () => true), Match.when('Development', () => !!import.meta.hot && !isInIframe), Match.exhaustive)), Option.map(config => ({
251
259
  position: config.position ?? DEFAULT_DEV_TOOLS_POSITION,
@@ -263,13 +271,15 @@ const makeRuntime = ({ Model, flags: resolveFlags, init, update, view, subscript
263
271
  // NOTE: clears the dirty bit on direct DevTools renders (jumpTo,
264
272
  // resume) so the renderLoop's Stream.changes sees the next
265
273
  // dispatch as a real false-to-true transition rather than a
266
- // deduped no-op. Also discards mount events fired during the
267
- // time-travel render so they don't get attributed to the next
268
- // user-initiated dispatch.
274
+ // deduped no-op. Passes `noOpDispatch` so mount Effects forked
275
+ // during the replay render dispatch their result Messages into
276
+ // a no-op (instead of enqueueing them as new history entries).
277
+ // Also discards mount events fired during the render so they
278
+ // don't get attributed to the next user-initiated dispatch.
269
279
  render: model => Effect.gen(function* () {
270
280
  yield* SubscriptionRef.set(isRenderPendingRef, false);
271
281
  /* eslint-disable-next-line @typescript-eslint/consistent-type-assertions */
272
- yield* render(model, Option.none());
282
+ yield* render(model, Option.none(), noOpDispatch);
273
283
  drainMountEvents();
274
284
  }),
275
285
  getCurrentModel: Ref.get(modelRef),
@@ -4,13 +4,17 @@ import { ElementNotFound } from './error.js';
4
4
  * Focuses an element matching the given selector after the next render has
5
5
  * committed.
6
6
  *
7
- * For focus that should happen because an element just appeared (an input
8
- * mounting, a dialog opening), prefer `OnMount` with a `Mount.define`'d
9
- * action focus is then a consequence of the element's lifecycle and runs
10
- * synchronously inside the snabbdom insert hook with no race window.
11
- * Reserve `Task.focus` for the post-Message case (returning focus to a
12
- * trigger button after a popover closes, refocusing on blur, keyboard
13
- * navigation across a stable layout).
7
+ * Use `Task.focus` inside a Command for focus that's caused by a Message
8
+ * dispatching: a dialog opening, an input becoming the active step in a
9
+ * form, returning focus to a trigger button after a popover closes,
10
+ * keyboard navigation across a stable layout. The Command fires from
11
+ * `update`'s return; the focus runs after the next render commits, so the
12
+ * element is in place by the time `.focus()` runs.
13
+ *
14
+ * Do not use `OnMount` for focus. The cause of focus-on-open is the
15
+ * Message, not the element appearing. Mount is for per-instance lifecycle
16
+ * effects bound to a VNode existing where the live element handle is
17
+ * needed (positioning, portaling, observer attachment, library setup).
14
18
  *
15
19
  * Fails with `ElementNotFound` if the selector does not match an `HTMLElement`.
16
20
  *
@@ -1 +1 @@
1
- {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../src/task/dom.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,MAAM,EAMP,MAAM,QAAQ,CAAA;AAEf,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAsC5C;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,KAAK,GAAI,UAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAKxE,CAAA;AAEJ;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,SAAS,GACpB,UAAU,MAAM,EAChB,UAAU,QAAQ,CAAC;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,KAC7C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAgDlC,CAAA;AAuBJ;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,GACrB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAclC,CAAA;AAEJ;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAKlC,CAAA;AAEJ;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,GACzB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAKlC,CAAA;AAEJ,0EAA0E;AAC1E,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,CAAA;AAEhD;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,MAAM,EAChB,WAAW,cAAc,KACxB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAiClC,CAAA"}
1
+ {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../src/task/dom.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,MAAM,EAMP,MAAM,QAAQ,CAAA;AAEf,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AA8B5C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,KAAK,GAAI,UAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAKxE,CAAA;AAEJ;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,SAAS,GACpB,UAAU,MAAM,EAChB,UAAU,QAAQ,CAAC;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,KAC7C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAgDlC,CAAA;AAuBJ;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,GACrB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAclC,CAAA;AAEJ;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAKlC,CAAA;AAEJ;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,GACzB,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAKlC,CAAA;AAEJ,0EAA0E;AAC1E,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,CAAA;AAEhD;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,MAAM,EAChB,WAAW,cAAc,KACxB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAiClC,CAAA"}
package/dist/task/dom.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Array, Effect, Equal, Function, Match as M, Number, Option, } from 'effect';
2
2
  import { ElementNotFound } from './error.js';
3
+ import { afterRender } from './timing.js';
3
4
  const BASE_DIALOG_Z_INDEX = 2147483600;
4
5
  let openDialogCount = 0;
5
6
  const dialogCleanups = new WeakMap();
@@ -11,14 +12,6 @@ const FOCUSABLE_SELECTOR = Array.join([
11
12
  'textarea:not([disabled]):not([tabindex="-1"])',
12
13
  '[tabindex]:not([tabindex="-1"])',
13
14
  ], ', ');
14
- // NOTE: DOM tasks await one rAF before walking the tree. The runtime defers
15
- // renders to the next animation frame and forks Commands on the microtask
16
- // queue, so without this wait a Task that runs immediately after a dirtying
17
- // Message would query the DOM before the matching VDOM patch has committed.
18
- const awaitNextFrame = Effect.callback(resume => {
19
- const handle = requestAnimationFrame(() => resume(Effect.void));
20
- return Effect.sync(() => cancelAnimationFrame(handle));
21
- });
22
15
  const queryHTMLElement = (selector) => Effect.suspend(() => {
23
16
  const element = document.querySelector(selector);
24
17
  return element instanceof HTMLElement
@@ -29,13 +22,17 @@ const queryHTMLElement = (selector) => Effect.suspend(() => {
29
22
  * Focuses an element matching the given selector after the next render has
30
23
  * committed.
31
24
  *
32
- * For focus that should happen because an element just appeared (an input
33
- * mounting, a dialog opening), prefer `OnMount` with a `Mount.define`'d
34
- * action focus is then a consequence of the element's lifecycle and runs
35
- * synchronously inside the snabbdom insert hook with no race window.
36
- * Reserve `Task.focus` for the post-Message case (returning focus to a
37
- * trigger button after a popover closes, refocusing on blur, keyboard
38
- * navigation across a stable layout).
25
+ * Use `Task.focus` inside a Command for focus that's caused by a Message
26
+ * dispatching: a dialog opening, an input becoming the active step in a
27
+ * form, returning focus to a trigger button after a popover closes,
28
+ * keyboard navigation across a stable layout. The Command fires from
29
+ * `update`'s return; the focus runs after the next render commits, so the
30
+ * element is in place by the time `.focus()` runs.
31
+ *
32
+ * Do not use `OnMount` for focus. The cause of focus-on-open is the
33
+ * Message, not the element appearing. Mount is for per-instance lifecycle
34
+ * effects bound to a VNode existing where the live element handle is
35
+ * needed (positioning, portaling, observer attachment, library setup).
39
36
  *
40
37
  * Fails with `ElementNotFound` if the selector does not match an `HTMLElement`.
41
38
  *
@@ -45,7 +42,7 @@ const queryHTMLElement = (selector) => Effect.suspend(() => {
45
42
  * ```
46
43
  */
47
44
  export const focus = (selector) => Effect.gen(function* () {
48
- yield* awaitNextFrame;
45
+ yield* afterRender;
49
46
  const element = yield* queryHTMLElement(selector);
50
47
  element.focus();
51
48
  });
@@ -65,7 +62,7 @@ export const focus = (selector) => Effect.gen(function* () {
65
62
  * ```
66
63
  */
67
64
  export const showModal = (selector, options) => Effect.gen(function* () {
68
- yield* awaitNextFrame;
65
+ yield* afterRender;
69
66
  const element = document.querySelector(selector);
70
67
  if (!(element instanceof HTMLDialogElement)) {
71
68
  return yield* Effect.fail(new ElementNotFound({ selector }));
@@ -147,7 +144,7 @@ export const closeModal = (selector) => Effect.suspend(() => {
147
144
  * ```
148
145
  */
149
146
  export const clickElement = (selector) => Effect.gen(function* () {
150
- yield* awaitNextFrame;
147
+ yield* afterRender;
151
148
  const element = yield* queryHTMLElement(selector);
152
149
  element.click();
153
150
  });
@@ -161,7 +158,7 @@ export const clickElement = (selector) => Effect.gen(function* () {
161
158
  * ```
162
159
  */
163
160
  export const scrollIntoView = (selector) => Effect.gen(function* () {
164
- yield* awaitNextFrame;
161
+ yield* afterRender;
165
162
  const element = yield* queryHTMLElement(selector);
166
163
  element.scrollIntoView({ block: 'nearest' });
167
164
  });
@@ -175,7 +172,7 @@ export const scrollIntoView = (selector) => Effect.gen(function* () {
175
172
  * ```
176
173
  */
177
174
  export const advanceFocus = (selector, direction) => Effect.gen(function* () {
178
- yield* awaitNextFrame;
175
+ yield* afterRender;
179
176
  const reference = yield* queryHTMLElement(selector);
180
177
  const focusableElements = Array.fromIterable(document.querySelectorAll(FOCUSABLE_SELECTOR));
181
178
  const referenceElementIndex = Array.findFirstIndex(focusableElements, Equal.equals(reference));
@@ -1 +1 @@
1
- {"version":3,"file":"elementMovement.d.ts","sourceRoot":"","sources":["../../src/task/elementMovement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAI/B;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAqCvE,CAAA"}
1
+ {"version":3,"file":"elementMovement.d.ts","sourceRoot":"","sources":["../../src/task/elementMovement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAM/B;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,MAAM,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAmCvE,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import { Effect } from 'effect';
2
+ import { afterRender } from './timing.js';
2
3
  const rectToPosition = (rect) => `${rect.x},${rect.y}`;
3
4
  /**
4
5
  * Detects if the element matching the given selector moves in the viewport.
@@ -18,11 +19,9 @@ const rectToPosition = (rect) => `${rect.x},${rect.y}`;
18
19
  * )
19
20
  * ```
20
21
  */
21
- export const detectElementMovement = (selector) => Effect.callback((resume, signal) => {
22
- requestAnimationFrame(() => {
23
- if (signal.aborted) {
24
- return;
25
- }
22
+ export const detectElementMovement = (selector) => Effect.gen(function* () {
23
+ yield* afterRender;
24
+ return yield* Effect.callback((resume, signal) => {
26
25
  const element = document.querySelector(selector);
27
26
  if (!(element instanceof HTMLElement)) {
28
27
  return resume(Effect.void);
@@ -3,7 +3,7 @@ export { getTime, getTimeZone, getZonedTime, getZonedTimeIn } from './time.js';
3
3
  export { advanceFocus, focus, showModal, closeModal, clickElement, scrollIntoView, } from './dom.js';
4
4
  export type { FocusDirection } from './dom.js';
5
5
  export { detectElementMovement } from './elementMovement.js';
6
- export { delay, nextFrame, waitForAnimationSettled } from './timing.js';
6
+ export { afterRender, delay, nextFrame, waitForAnimationSettled, } from './timing.js';
7
7
  export { randomInt, uuid } from './random.js';
8
8
  export { lockScroll, unlockScroll } from './scrollLock.js';
9
9
  export { inertOthers, restoreInert } from './inert.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC9E,OAAO,EACL,YAAY,EACZ,KAAK,EACL,SAAS,EACT,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,UAAU,CAAA;AACjB,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACvE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC9E,OAAO,EACL,YAAY,EACZ,KAAK,EACL,SAAS,EACT,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,UAAU,CAAA;AACjB,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EACL,WAAW,EACX,KAAK,EACL,SAAS,EACT,uBAAuB,GACxB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA"}
@@ -2,7 +2,7 @@ export { ElementNotFound, TimeZoneError } from './error.js';
2
2
  export { getTime, getTimeZone, getZonedTime, getZonedTimeIn } from './time.js';
3
3
  export { advanceFocus, focus, showModal, closeModal, clickElement, scrollIntoView, } from './dom.js';
4
4
  export { detectElementMovement } from './elementMovement.js';
5
- export { delay, nextFrame, waitForAnimationSettled } from './timing.js';
5
+ export { afterRender, delay, nextFrame, waitForAnimationSettled, } from './timing.js';
6
6
  export { randomInt, uuid } from './random.js';
7
7
  export { lockScroll, unlockScroll } from './scrollLock.js';
8
8
  export { inertOthers, restoreInert } from './inert.js';
@@ -1,2 +1,2 @@
1
- export { ElementNotFound, TimeZoneError, getTime, getTimeZone, getZonedTime, getZonedTimeIn, focus, showModal, closeModal, clickElement, delay, scrollIntoView, randomInt, uuid, nextFrame, waitForAnimationSettled, } from './index.js';
1
+ export { ElementNotFound, TimeZoneError, afterRender, clickElement, closeModal, delay, focus, getTime, getTimeZone, getZonedTime, getZonedTimeIn, nextFrame, randomInt, scrollIntoView, showModal, uuid, waitForAnimationSettled, } from './index.js';
2
2
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/task/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,aAAa,EACb,OAAO,EACP,WAAW,EACX,YAAY,EACZ,cAAc,EACd,KAAK,EACL,SAAS,EACT,UAAU,EACV,YAAY,EACZ,KAAK,EACL,cAAc,EACd,SAAS,EACT,IAAI,EACJ,SAAS,EACT,uBAAuB,GACxB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/task/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,aAAa,EACb,WAAW,EACX,YAAY,EACZ,UAAU,EACV,KAAK,EACL,KAAK,EACL,OAAO,EACP,WAAW,EACX,YAAY,EACZ,cAAc,EACd,SAAS,EACT,SAAS,EACT,cAAc,EACd,SAAS,EACT,IAAI,EACJ,uBAAuB,GACxB,MAAM,YAAY,CAAA"}
@@ -1 +1 @@
1
- export { ElementNotFound, TimeZoneError, getTime, getTimeZone, getZonedTime, getZonedTimeIn, focus, showModal, closeModal, clickElement, delay, scrollIntoView, randomInt, uuid, nextFrame, waitForAnimationSettled, } from './index.js';
1
+ export { ElementNotFound, TimeZoneError, afterRender, clickElement, closeModal, delay, focus, getTime, getTimeZone, getZonedTime, getZonedTimeIn, nextFrame, randomInt, scrollIntoView, showModal, uuid, waitForAnimationSettled, } from './index.js';
@@ -9,6 +9,29 @@ import { Duration, Effect } from 'effect';
9
9
  * ```
10
10
  */
11
11
  export declare const delay: (duration: Duration.Input) => Effect.Effect<void>;
12
+ /**
13
+ * Completes after the runtime's next render commits. The runtime batches
14
+ * renders to `requestAnimationFrame`, so a Command, Subscription, or other
15
+ * Effect that runs immediately after a dirtying Message would otherwise
16
+ * query the DOM before the matching VDOM patch has applied. Yield this
17
+ * before any DOM read or write whose target was just brought into existence
18
+ * (or moved, or had its attributes changed) by the same Message.
19
+ *
20
+ * The Task DOM helpers (`focus`, `clickElement`, `scrollIntoView`, etc.)
21
+ * already gate themselves with this internally; reach for `afterRender`
22
+ * directly when building custom Commands or DOM-observing Subscriptions
23
+ * that need the same guarantee.
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * Effect.gen(function* () {
28
+ * yield* Task.afterRender
29
+ * const element = document.getElementById(id)
30
+ * // element reflects the post-Message DOM
31
+ * })
32
+ * ```
33
+ */
34
+ export declare const afterRender: Effect.Effect<void>;
12
35
  /**
13
36
  * Completes after two animation frames, ensuring the browser has painted
14
37
  * the current state before proceeding. Used for CSS transition orchestration —
@@ -1 +1 @@
1
- {"version":3,"file":"timing.d.ts","sourceRoot":"","sources":["../../src/task/timing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAEzC;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,GAAI,UAAU,QAAQ,CAAC,KAAK,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAC3C,CAAA;AAExB;;;;;;;;;;GAUG;AACH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAMxC,CAAA;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,GAClC,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAYjB,CAAA"}
1
+ {"version":3,"file":"timing.d.ts","sourceRoot":"","sources":["../../src/task/timing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAEzC;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,GAAI,UAAU,QAAQ,CAAC,KAAK,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAC3C,CAAA;AAExB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAK3C,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAMxC,CAAA;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,GAClC,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAYjB,CAAA"}
@@ -9,6 +9,32 @@ import { Effect } from 'effect';
9
9
  * ```
10
10
  */
11
11
  export const delay = (duration) => Effect.sleep(duration);
12
+ /**
13
+ * Completes after the runtime's next render commits. The runtime batches
14
+ * renders to `requestAnimationFrame`, so a Command, Subscription, or other
15
+ * Effect that runs immediately after a dirtying Message would otherwise
16
+ * query the DOM before the matching VDOM patch has applied. Yield this
17
+ * before any DOM read or write whose target was just brought into existence
18
+ * (or moved, or had its attributes changed) by the same Message.
19
+ *
20
+ * The Task DOM helpers (`focus`, `clickElement`, `scrollIntoView`, etc.)
21
+ * already gate themselves with this internally; reach for `afterRender`
22
+ * directly when building custom Commands or DOM-observing Subscriptions
23
+ * that need the same guarantee.
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * Effect.gen(function* () {
28
+ * yield* Task.afterRender
29
+ * const element = document.getElementById(id)
30
+ * // element reflects the post-Message DOM
31
+ * })
32
+ * ```
33
+ */
34
+ export const afterRender = Effect.callback(resume => {
35
+ const handle = requestAnimationFrame(() => resume(Effect.void));
36
+ return Effect.sync(() => cancelAnimationFrame(handle));
37
+ });
12
38
  /**
13
39
  * Completes after two animation frames, ensuring the browser has painted
14
40
  * the current state before proceeding. Used for CSS transition orchestration —
@@ -22,21 +22,21 @@ export declare const Message: S.Union<readonly [import("../../schema/index.js").
22
22
  reason: S.String;
23
23
  }>, import("../../schema/index.js").CallableTaggedStruct<"ClickedIncrement", {}>]>;
24
24
  export type Message = typeof Message.Type;
25
- export declare const PanelMeasure: Mount.MountDefinition<"PanelMeasure", {
25
+ export declare const MeasurePanel: Mount.MountDefinition<"MeasurePanel", {
26
26
  readonly _tag: "MeasuredPanel";
27
27
  readonly width: number;
28
28
  } | {
29
29
  readonly _tag: "FailedMountSidebar";
30
30
  readonly reason: string;
31
31
  }>;
32
- export declare const ButtonFocus: Mount.MountDefinition<"ButtonFocus", {
32
+ export declare const FocusButton: Mount.MountDefinition<"FocusButton", {
33
33
  readonly _tag: "CompletedFocusButton";
34
34
  }>;
35
35
  export declare const initialModel: Model;
36
36
  export declare const update: (model: Model, message: Message) => readonly [Model, ReadonlyArray<never>];
37
37
  export declare const view: (model: Model) => Html;
38
38
  /** A view that always renders both the toggle button and the panel, exposing
39
- * two PanelMeasure mounts simultaneously so we can exercise the (name,
39
+ * two MeasurePanel mounts simultaneously so we can exercise the (name,
40
40
  * occurrence) tracking. */
41
41
  export declare const twoPanelView: (model: Model) => Html;
42
42
  //# sourceMappingURL=mountPanel.d.ts.map
@@ -22,8 +22,8 @@ export const Message = S.Union([
22
22
  ClickedIncrement,
23
23
  ]);
24
24
  // MOUNT
25
- export const PanelMeasure = Mount.define('PanelMeasure', MeasuredPanel, FailedMountSidebar);
26
- export const ButtonFocus = Mount.define('ButtonFocus', CompletedFocusButton);
25
+ export const MeasurePanel = Mount.define('MeasurePanel', MeasuredPanel, FailedMountSidebar);
26
+ export const FocusButton = Mount.define('FocusButton', CompletedFocusButton);
27
27
  // INIT
28
28
  export const initialModel = {
29
29
  isOpen: false,
@@ -43,19 +43,19 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
43
43
  }));
44
44
  // VIEW
45
45
  const { div, button, span, OnMount, OnClick, Class, Key } = html();
46
- const panelMount = PanelMeasure(() => Effect.succeed({
46
+ const measurePanel = MeasurePanel(() => Effect.succeed({
47
47
  message: MeasuredPanel({ width: 320 }),
48
48
  cleanup: () => { },
49
49
  }));
50
- const buttonFocusMount = ButtonFocus(() => Effect.succeed({
50
+ const focusButton = FocusButton(() => Effect.succeed({
51
51
  message: CompletedFocusButton(),
52
52
  cleanup: () => { },
53
53
  }));
54
54
  export const view = (model) => div([Class('panel-test')], [
55
- button([Key('toggle'), OnClick(ClickedToggle()), OnMount(buttonFocusMount)], [model.isOpen ? 'Close' : 'Open']),
55
+ button([Key('toggle'), OnClick(ClickedToggle()), OnMount(focusButton)], [model.isOpen ? 'Close' : 'Open']),
56
56
  ...(model.isOpen
57
57
  ? [
58
- div([Key('panel'), OnMount(panelMount)], [
58
+ div([Key('panel'), OnMount(measurePanel)], [
59
59
  span([], [
60
60
  Option.match(model.measuredWidth, {
61
61
  onNone: () => 'unmeasured',
@@ -67,10 +67,10 @@ export const view = (model) => div([Class('panel-test')], [
67
67
  : []),
68
68
  ]);
69
69
  /** A view that always renders both the toggle button and the panel, exposing
70
- * two PanelMeasure mounts simultaneously so we can exercise the (name,
70
+ * two MeasurePanel mounts simultaneously so we can exercise the (name,
71
71
  * occurrence) tracking. */
72
72
  export const twoPanelView = (model) => div([Class('two-panels')], [
73
- div([Key('panel-a'), OnMount(panelMount)], [span([], ['A'])]),
74
- div([Key('panel-b'), OnMount(panelMount)], [span([], ['B'])]),
73
+ div([Key('panel-a'), OnMount(measurePanel)], [span([], ['A'])]),
74
+ div([Key('panel-b'), OnMount(measurePanel)], [span([], ['B'])]),
75
75
  button([Key('inc'), OnClick(ClickedIncrement())], [`count: ${model.count}`]),
76
76
  ]);
@@ -6,7 +6,7 @@ export type AnyCommand = Readonly<{
6
6
  }>;
7
7
  /** A pending Mount in a Scene simulation. Identified by `name` and an
8
8
  * `occurrence` index that disambiguates same-named mounts in the rendered
9
- * tree (e.g. two open popovers each contributing a `PopoverAnchor`). The
9
+ * tree (e.g. two open popovers each contributing an `AnchorPopover`). The
10
10
  * occurrence is the 0-based position among same-named markers in
11
11
  * tree-traversal order. */
12
12
  export type PendingMount = Readonly<{
@@ -69,7 +69,12 @@ export declare const assertZeroMounts: (pendingMounts: ReadonlyArray<PendingMoun
69
69
  /** Throws when trying to send a Message with unresolved Mounts in the
70
70
  * rendered view. */
71
71
  export declare const assertNoUnresolvedMounts: (pendingMounts: ReadonlyArray<PendingMount>, context: string) => void;
72
+ /** Throws when trying to send a Message with unacknowledged unmounts
73
+ * from previous renders. */
74
+ export declare const assertNoUnacknowledgedUnmounts: (unacknowledgedEnded: ReadonlyArray<PendingMount>, context: string) => void;
72
75
  /** Throws when Mounts remain at the end of a test. */
73
76
  export declare const assertAllMountsResolved: (pendingMounts: ReadonlyArray<PendingMount>) => void;
77
+ /** Throws when Mounts ended (unmounted) without being acknowledged. */
78
+ export declare const assertAllUnmountsAcknowledged: (unacknowledgedEnded: ReadonlyArray<PendingMount>) => void;
74
79
  export {};
75
80
  //# sourceMappingURL=internal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/test/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/test/internal.ts"],"names":[],"mappings":"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"}
@@ -166,6 +166,15 @@ export const assertNoUnresolvedMounts = (pendingMounts, context) => {
166
166
  'or resolveAllMounts(...resolvers) to resolve them all at once.');
167
167
  }
168
168
  };
169
+ /** Throws when trying to send a Message with unacknowledged unmounts
170
+ * from previous renders. */
171
+ export const assertNoUnacknowledgedUnmounts = (unacknowledgedEnded, context) => {
172
+ if (Array.isReadonlyArrayNonEmpty(unacknowledgedEnded)) {
173
+ throw new Error(`I found unacknowledged unmounts ${context}:\n\n${formatMountList(unacknowledgedEnded)}\n\n` +
174
+ 'Acknowledge unmounts before sending the next Message.\n' +
175
+ 'Use Scene.Mount.expectEnded(Definition) for each one.');
176
+ }
177
+ };
169
178
  /** Throws when Mounts remain at the end of a test. */
170
179
  export const assertAllMountsResolved = (pendingMounts) => {
171
180
  if (Array.isReadonlyArrayNonEmpty(pendingMounts)) {
@@ -175,3 +184,12 @@ export const assertAllMountsResolved = (pendingMounts) => {
175
184
  'or resolveAllMounts(...resolvers) to resolve them all at once.');
176
185
  }
177
186
  };
187
+ /** Throws when Mounts ended (unmounted) without being acknowledged. */
188
+ export const assertAllUnmountsAcknowledged = (unacknowledgedEnded) => {
189
+ if (Array.isReadonlyArrayNonEmpty(unacknowledgedEnded)) {
190
+ throw new Error(`I found Mounts that ended without being acknowledged:\n\n${formatMountList(unacknowledgedEnded)}\n\n` +
191
+ 'Every Mount that fires and then unmounts during a scene must be\n' +
192
+ 'acknowledged with Scene.Mount.expectEnded(Definition), even if it\n' +
193
+ 'was previously resolved.');
194
+ }
195
+ };
@@ -86,6 +86,9 @@ export declare const Mount: {
86
86
  readonly expectExact: (...definitions: ReadonlyArray<MountDefinition<string, unknown>>) => <Model, Message, OutMessage = undefined>(simulation: SceneSimulation<Model, Message, OutMessage>) => SceneSimulation<Model, Message, OutMessage>;
87
87
  /** Asserts that there are no pending Mounts. */
88
88
  readonly expectNone: () => <Model, Message, OutMessage = undefined>(simulation: SceneSimulation<Model, Message, OutMessage>) => SceneSimulation<Model, Message, OutMessage>;
89
+ /** Acknowledges Mounts that disappeared from the rendered tree. Required for
90
+ * every Mount that fires and then unmounts during a scene. */
91
+ readonly expectEnded: (...definitions: ReadonlyArray<MountDefinition<string, unknown>>) => <Model, Message, OutMessage = undefined>(simulation: SceneSimulation<Model, Message, OutMessage>) => SceneSimulation<Model, Message, OutMessage>;
89
92
  };
90
93
  /** Runs a function for side effects (e.g. assertions) without breaking the step chain. */
91
94
  export declare const tap: <Model, Message, OutMessage = undefined>(f: (simulation: SceneSimulation<Model, Message, OutMessage>) => void) => (simulation: SceneSimulation<Model, Message, OutMessage>) => SceneSimulation<Model, Message, OutMessage>;
@@ -1 +1 @@
1
- {"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/test/scene.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/test/scene.ts"],"names":[],"mappings":"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"}