@foldkit/ui 0.156.0 → 0.157.0-canary.009aa88d012f

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 (101) hide show
  1. package/dist/anchor/anchor.d.ts +18 -18
  2. package/dist/anchor/anchor.d.ts.map +1 -1
  3. package/dist/anchor/anchor.js +16 -16
  4. package/dist/animation/index.d.ts +4 -4
  5. package/dist/animation/index.d.ts.map +1 -1
  6. package/dist/animation/index.js +8 -8
  7. package/dist/animation/public.d.ts +1 -1
  8. package/dist/animation/public.d.ts.map +1 -1
  9. package/dist/animation/public.js +1 -1
  10. package/dist/animation/schema.d.ts +6 -6
  11. package/dist/animation/schema.d.ts.map +1 -1
  12. package/dist/animation/schema.js +5 -5
  13. package/dist/animation/update.d.ts +8 -2
  14. package/dist/animation/update.d.ts.map +1 -1
  15. package/dist/animation/update.js +22 -9
  16. package/dist/calendar/index.d.ts +56 -56
  17. package/dist/calendar/index.d.ts.map +1 -1
  18. package/dist/calendar/index.js +49 -37
  19. package/dist/checkbox/index.js +2 -2
  20. package/dist/combobox/multi.d.ts +19 -19
  21. package/dist/combobox/multi.d.ts.map +1 -1
  22. package/dist/combobox/multi.js +2 -2
  23. package/dist/combobox/shared.d.ts +61 -61
  24. package/dist/combobox/shared.d.ts.map +1 -1
  25. package/dist/combobox/shared.js +74 -62
  26. package/dist/combobox/single.d.ts +19 -19
  27. package/dist/combobox/single.d.ts.map +1 -1
  28. package/dist/combobox/single.js +2 -2
  29. package/dist/datePicker/index.d.ts +72 -72
  30. package/dist/datePicker/index.d.ts.map +1 -1
  31. package/dist/datePicker/index.js +12 -12
  32. package/dist/dialog/index.d.ts +14 -14
  33. package/dist/dialog/index.d.ts.map +1 -1
  34. package/dist/dialog/index.js +35 -23
  35. package/dist/disclosure/index.js +2 -2
  36. package/dist/dragAndDrop/index.d.ts +61 -61
  37. package/dist/dragAndDrop/index.d.ts.map +1 -1
  38. package/dist/dragAndDrop/index.js +85 -85
  39. package/dist/fileDrop/index.d.ts +6 -6
  40. package/dist/fileDrop/index.d.ts.map +1 -1
  41. package/dist/fileDrop/index.js +6 -6
  42. package/dist/hoverIntent/hoverIntent.d.ts +15 -15
  43. package/dist/hoverIntent/hoverIntent.d.ts.map +1 -1
  44. package/dist/hoverIntent/hoverIntent.js +17 -17
  45. package/dist/hoverIntent/message.d.ts +4 -4
  46. package/dist/hoverIntent/message.d.ts.map +1 -1
  47. package/dist/hoverIntent/message.js +4 -4
  48. package/dist/keyboard.js +2 -2
  49. package/dist/listbox/multi.d.ts +19 -19
  50. package/dist/listbox/multi.d.ts.map +1 -1
  51. package/dist/listbox/multi.js +2 -2
  52. package/dist/listbox/shared.d.ts +58 -58
  53. package/dist/listbox/shared.d.ts.map +1 -1
  54. package/dist/listbox/shared.js +74 -62
  55. package/dist/listbox/single.d.ts +19 -19
  56. package/dist/listbox/single.d.ts.map +1 -1
  57. package/dist/listbox/single.js +2 -2
  58. package/dist/menu/index.d.ts +67 -67
  59. package/dist/menu/index.d.ts.map +1 -1
  60. package/dist/menu/index.js +82 -67
  61. package/dist/popover/index.d.ts +34 -34
  62. package/dist/popover/index.d.ts.map +1 -1
  63. package/dist/popover/index.js +49 -37
  64. package/dist/radioGroup/index.d.ts +12 -12
  65. package/dist/radioGroup/index.d.ts.map +1 -1
  66. package/dist/radioGroup/index.js +16 -16
  67. package/dist/slider/index.d.ts +14 -14
  68. package/dist/slider/index.d.ts.map +1 -1
  69. package/dist/slider/index.js +31 -31
  70. package/dist/switch/index.js +2 -2
  71. package/dist/tabs/index.d.ts +14 -14
  72. package/dist/tabs/index.d.ts.map +1 -1
  73. package/dist/tabs/index.js +18 -18
  74. package/dist/test/apps/disabledButton.d.ts +12 -12
  75. package/dist/test/apps/disabledButton.d.ts.map +1 -1
  76. package/dist/test/apps/disabledButton.js +5 -5
  77. package/dist/textarea/index.d.ts +2 -2
  78. package/dist/textarea/index.d.ts.map +1 -1
  79. package/dist/toast/index.d.ts +63 -63
  80. package/dist/toast/index.d.ts.map +1 -1
  81. package/dist/toast/index.js +19 -19
  82. package/dist/toast/schema.d.ts +55 -55
  83. package/dist/toast/schema.d.ts.map +1 -1
  84. package/dist/toast/schema.js +29 -29
  85. package/dist/toast/test.d.ts.map +1 -1
  86. package/dist/toast/test.js +3 -3
  87. package/dist/toast/update.d.ts +61 -61
  88. package/dist/toast/update.d.ts.map +1 -1
  89. package/dist/toast/update.js +13 -13
  90. package/dist/tooltip/message.d.ts +3 -3
  91. package/dist/tooltip/message.d.ts.map +1 -1
  92. package/dist/tooltip/message.js +3 -3
  93. package/dist/tooltip/tooltip.d.ts +24 -24
  94. package/dist/tooltip/tooltip.d.ts.map +1 -1
  95. package/dist/tooltip/tooltip.js +13 -13
  96. package/dist/typeahead.d.ts.map +1 -1
  97. package/dist/typeahead.js +3 -3
  98. package/dist/virtualList/index.d.ts +16 -16
  99. package/dist/virtualList/index.d.ts.map +1 -1
  100. package/dist/virtualList/index.js +13 -13
  101. package/package.json +4 -4
@@ -1,30 +1,30 @@
1
- import { Schema as S } from 'effect';
1
+ import { Schema } from 'effect';
2
2
  /** Schema mirroring `@floating-ui/dom`'s `Placement` literal union: a side
3
3
  * (`top`/`right`/`bottom`/`left`) optionally suffixed with `-start` or `-end`. */
4
- export declare const Placement: S.Literals<readonly ["top", "right", "bottom", "left", "top-start", "top-end", "right-start", "right-end", "bottom-start", "bottom-end", "left-start", "left-end"]>;
4
+ export declare const Placement: Schema.Literals<readonly ["top", "right", "bottom", "left", "top-start", "top-end", "right-start", "right-end", "bottom-start", "bottom-end", "left-start", "left-end"]>;
5
5
  export type Placement = typeof Placement.Type;
6
6
  /** Schema mirroring `@floating-ui/dom`'s `Padding` type: a uniform number or a
7
7
  * partial per-side object (`top`/`right`/`bottom`/`left`). */
8
- export declare const Padding: S.Union<readonly [S.Number, S.Struct<{
9
- readonly top: S.optionalKey<S.Number>;
10
- readonly right: S.optionalKey<S.Number>;
11
- readonly bottom: S.optionalKey<S.Number>;
12
- readonly left: S.optionalKey<S.Number>;
8
+ export declare const Padding: Schema.Union<readonly [Schema.Number, Schema.Struct<{
9
+ readonly top: Schema.optionalKey<Schema.Number>;
10
+ readonly right: Schema.optionalKey<Schema.Number>;
11
+ readonly bottom: Schema.optionalKey<Schema.Number>;
12
+ readonly left: Schema.optionalKey<Schema.Number>;
13
13
  }>]>;
14
14
  export type Padding = typeof Padding.Type;
15
15
  /** Static configuration for anchor-based positioning of a floating element relative to a button. */
16
- export declare const AnchorConfig: S.Struct<{
17
- readonly placement: S.optional<S.Literals<readonly ["top", "right", "bottom", "left", "top-start", "top-end", "right-start", "right-end", "bottom-start", "bottom-end", "left-start", "left-end"]>>;
18
- readonly gap: S.optional<S.Number>;
19
- readonly offset: S.optional<S.Number>;
20
- readonly padding: S.optional<S.Union<readonly [S.Number, S.Struct<{
21
- readonly top: S.optionalKey<S.Number>;
22
- readonly right: S.optionalKey<S.Number>;
23
- readonly bottom: S.optionalKey<S.Number>;
24
- readonly left: S.optionalKey<S.Number>;
16
+ export declare const AnchorConfig: Schema.Struct<{
17
+ readonly placement: Schema.optional<Schema.Literals<readonly ["top", "right", "bottom", "left", "top-start", "top-end", "right-start", "right-end", "bottom-start", "bottom-end", "left-start", "left-end"]>>;
18
+ readonly gap: Schema.optional<Schema.Number>;
19
+ readonly offset: Schema.optional<Schema.Number>;
20
+ readonly padding: Schema.optional<Schema.Union<readonly [Schema.Number, Schema.Struct<{
21
+ readonly top: Schema.optionalKey<Schema.Number>;
22
+ readonly right: Schema.optionalKey<Schema.Number>;
23
+ readonly bottom: Schema.optionalKey<Schema.Number>;
24
+ readonly left: Schema.optionalKey<Schema.Number>;
25
25
  }>]>>;
26
- readonly portal: S.optional<S.Boolean>;
27
- readonly isPlacementLocked: S.optional<S.Boolean>;
26
+ readonly portal: Schema.optional<Schema.Boolean>;
27
+ readonly isPlacementLocked: Schema.optional<Schema.Boolean>;
28
28
  }>;
29
29
  export type AnchorConfig = typeof AnchorConfig.Type;
30
30
  /** Relocates an element into the shared `foldkit-portal-root` div within its
@@ -1 +1 @@
1
- {"version":3,"file":"anchor.d.ts","sourceRoot":"","sources":["../../src/anchor/anchor.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,MAAM,IAAI,CAAC,EAAgB,MAAM,QAAQ,CAAA;AAa3E;mFACmF;AACnF,eAAO,MAAM,SAAS,qKAapB,CAAA;AAEF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;AAE7C;+DAC+D;AAC/D,eAAO,MAAM,OAAO;;;;;IAQlB,CAAA;AAEF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,oGAAoG;AACpG,eAAO,MAAM,YAAY;;;;;;;;;;;;EAOvB,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAA;AAkCnD;;;;;;0DAM0D;AAC1D,eAAO,MAAM,sBAAsB,YAAa,OAAO,KAAG,CAAC,MAAM,IAAI,CAWpE,CAAA;AAKD;;;;;;;;;;;;;;;;;;;;;0BAqB0B;AAC1B,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,YAAY,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAC,CAAA;AAsBF;;;;;;;;;;;;;;;gFAegF;AAChF,eAAO,MAAM,WAAW,YACb,OAAO,UACR,WAAW,KAClB,CAAC,MAAM,IAAI,CAyOb,CAAA"}
1
+ {"version":3,"file":"anchor.d.ts","sourceRoot":"","sources":["../../src/anchor/anchor.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,MAAM,EAAgB,MAAM,QAAQ,CAAA;AAatE;mFACmF;AACnF,eAAO,MAAM,SAAS,0KAapB,CAAA;AAEF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;AAE7C;+DAC+D;AAC/D,eAAO,MAAM,OAAO;;;;;IAQlB,CAAA;AAEF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,oGAAoG;AACpG,eAAO,MAAM,YAAY;;;;;;;;;;;;EAOvB,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAA;AAkCnD;;;;;;0DAM0D;AAC1D,eAAO,MAAM,sBAAsB,YAAa,OAAO,KAAG,CAAC,MAAM,IAAI,CAWpE,CAAA;AAKD;;;;;;;;;;;;;;;;;;;;;0BAqB0B;AAC1B,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,YAAY,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAC,CAAA;AAsBF;;;;;;;;;;;;;;;gFAegF;AAChF,eAAO,MAAM,WAAW,YACb,OAAO,UACR,WAAW,KAClB,CAAC,MAAM,IAAI,CAyOb,CAAA"}
@@ -1,9 +1,9 @@
1
1
  import { brandViewResult as __foldkitBrandViewResult } from 'foldkit/brand'
2
- import { Array, Function, Option, Schema as S, String, pipe } from 'effect';
2
+ import { Array, Function, Option, Schema, String, pipe } from 'effect';
3
3
  import { arrow, autoUpdate, computePosition, flip, offset as floatingOffset, shift, size, } from '@floating-ui/dom';
4
4
  /** Schema mirroring `@floating-ui/dom`'s `Placement` literal union: a side
5
5
  * (`top`/`right`/`bottom`/`left`) optionally suffixed with `-start` or `-end`. */
6
- export const Placement = S.Literals([
6
+ export const Placement = Schema.Literals([
7
7
  'top',
8
8
  'right',
9
9
  'bottom',
@@ -19,23 +19,23 @@ export const Placement = S.Literals([
19
19
  ]);
20
20
  /** Schema mirroring `@floating-ui/dom`'s `Padding` type: a uniform number or a
21
21
  * partial per-side object (`top`/`right`/`bottom`/`left`). */
22
- export const Padding = S.Union([
23
- S.Number,
24
- S.Struct({
25
- top: S.optionalKey(S.Number),
26
- right: S.optionalKey(S.Number),
27
- bottom: S.optionalKey(S.Number),
28
- left: S.optionalKey(S.Number),
22
+ export const Padding = Schema.Union([
23
+ Schema.Number,
24
+ Schema.Struct({
25
+ top: Schema.optionalKey(Schema.Number),
26
+ right: Schema.optionalKey(Schema.Number),
27
+ bottom: Schema.optionalKey(Schema.Number),
28
+ left: Schema.optionalKey(Schema.Number),
29
29
  }),
30
30
  ]);
31
31
  /** Static configuration for anchor-based positioning of a floating element relative to a button. */
32
- export const AnchorConfig = S.Struct({
33
- placement: S.optional(Placement),
34
- gap: S.optional(S.Number),
35
- offset: S.optional(S.Number),
36
- padding: S.optional(Padding),
37
- portal: S.optional(S.Boolean),
38
- isPlacementLocked: S.optional(S.Boolean),
32
+ export const AnchorConfig = Schema.Struct({
33
+ placement: Schema.optional(Placement),
34
+ gap: Schema.optional(Schema.Number),
35
+ offset: Schema.optional(Schema.Number),
36
+ padding: Schema.optional(Padding),
37
+ portal: Schema.optional(Schema.Boolean),
38
+ isPlacementLocked: Schema.optional(Schema.Boolean),
39
39
  });
40
40
  const PORTAL_ROOT_ID = 'foldkit-portal-root';
41
41
  const getOrCreatePortalRoot = (element) => {
@@ -1,15 +1,15 @@
1
1
  import type { ChildAttribute, Html, TagName } from 'foldkit/html';
2
2
  import { Message, Model, OutMessage, TransitionState, init } from './schema.js';
3
- import { WaitForAnimationSettled, WaitForPaint, defaultLeaveCommand, update } from './update.js';
3
+ import { WaitForAnimationSettled, WaitForPaint, defaultLeaveCommand, hide, show, toggle, update } from './update.js';
4
4
  export type { Hid, InitConfig, Showed } from './schema.js';
5
5
  export { init, Message, Model, OutMessage, TransitionState };
6
- export { WaitForAnimationSettled, WaitForPaint, defaultLeaveCommand, update };
6
+ export { WaitForAnimationSettled, WaitForPaint, defaultLeaveCommand, hide, show, toggle, update, };
7
7
  /** Per-render view inputs passed to `view` via `h.submodel`'s `viewInputs` field. */
8
8
  export type ViewInputs = Readonly<{
9
9
  content: Html;
10
10
  className?: string;
11
11
  attributes?: ReadonlyArray<ChildAttribute>;
12
- element?: TagName;
12
+ element?: Exclude<TagName, 'textarea'>;
13
13
  /** When true, wraps content in a CSS grid container that smoothly animates
14
14
  * height via `grid-template-rows: 0fr → 1fr`. The element stays in the DOM
15
15
  * when hidden (collapsed to zero height) instead of being removed. */
@@ -40,7 +40,7 @@ export declare const view: import("foldkit/submodel").View<{
40
40
  content: Html;
41
41
  className?: string;
42
42
  attributes?: ReadonlyArray<ChildAttribute>;
43
- element?: TagName;
43
+ element?: Exclude<TagName, 'textarea'>;
44
44
  /** When true, wraps content in a CSS grid container that smoothly animates
45
45
  * height via `grid-template-rows: 0fr → 1fr`. The element stays in the DOM
46
46
  * when hidden (collapsed to zero height) instead of being removed. */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/animation/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAGjE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,mBAAmB,EACnB,MAAM,EACP,MAAM,aAAa,CAAA;AAEpB,YAAY,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,CAAA;AAE5D,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAA;AAI7E,qFAAqF;AACrF,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC;IAChC,OAAO,EAAE,IAAI,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,aAAa,CAAC,cAAc,CAAC,CAAA;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;2EAEuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB,CAAC,CAAA;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;aAnBN,IAAI;gBACD,MAAM;iBACL,aAAa,CAAC,cAAc,CAAC;cAChC,OAAO;IACjB;;2EAEuE;kBACzD,OAAO;GA2GtB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/animation/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAGjE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,mBAAmB,EACnB,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,MAAM,EACP,MAAM,aAAa,CAAA;AAEpB,YAAY,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC1D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,CAAA;AAE5D,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,mBAAmB,EACnB,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,MAAM,GACP,CAAA;AAID,qFAAqF;AACrF,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC;IAChC,OAAO,EAAE,IAAI,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,aAAa,CAAC,cAAc,CAAC,CAAA;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IACtC;;2EAEuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB,CAAC,CAAA;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;aAnBN,IAAI;gBACD,MAAM;iBACL,aAAa,CAAC,cAAc,CAAC;cAChC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC;IACtC;;2EAEuE;kBACzD,OAAO;GA2GtB,CAAA"}
@@ -1,10 +1,10 @@
1
1
  import { brandViewResult as __foldkitBrandViewResult } from 'foldkit/brand'
2
- import { Match as M } from 'effect';
2
+ import { Match } from 'effect';
3
3
  import { defineView } from 'foldkit/submodel';
4
4
  import { Message, Model, OutMessage, TransitionState, init } from './schema.js';
5
- import { WaitForAnimationSettled, WaitForPaint, defaultLeaveCommand, update, } from './update.js';
5
+ import { WaitForAnimationSettled, WaitForPaint, defaultLeaveCommand, hide, show, toggle, update, } from './update.js';
6
6
  export { init, Message, Model, OutMessage, TransitionState };
7
- export { WaitForAnimationSettled, WaitForPaint, defaultLeaveCommand, update };
7
+ export { WaitForAnimationSettled, WaitForPaint, defaultLeaveCommand, hide, show, toggle, update, };
8
8
  /** Renders a headless animation wrapper that coordinates CSS transitions and
9
9
  * CSS keyframe animations via data attributes.
10
10
  *
@@ -19,21 +19,21 @@ export const view = defineView((model, viewInputs, h) => {
19
19
  const { content, className, attributes = [], element = 'div', animateSize = false, } = viewInputs;
20
20
  const isLeaving = transitionState === 'LeaveStart' || transitionState === 'LeaveAnimating';
21
21
  const isVisible = isShowing || isLeaving;
22
- const transitionAttributes = M.value(transitionState).pipe(M.when('EnterStart', () => __foldkitBrandViewResult(([
22
+ const transitionAttributes = Match.value(transitionState).pipe(Match.when('EnterStart', () => __foldkitBrandViewResult(([
23
23
  h.DataAttribute('closed', ''),
24
24
  h.DataAttribute('enter', ''),
25
25
  h.DataAttribute('transition', ''),
26
- ]), "@foldkit/ui/animation/index.js#anonymous~2")), M.when('EnterAnimating', () => __foldkitBrandViewResult(([
26
+ ]), "@foldkit/ui/animation/index.js#anonymous~2")), Match.when('EnterAnimating', () => __foldkitBrandViewResult(([
27
27
  h.DataAttribute('enter', ''),
28
28
  h.DataAttribute('transition', ''),
29
- ]), "@foldkit/ui/animation/index.js#anonymous~3")), M.when('LeaveStart', () => __foldkitBrandViewResult(([
29
+ ]), "@foldkit/ui/animation/index.js#anonymous~3")), Match.when('LeaveStart', () => __foldkitBrandViewResult(([
30
30
  h.DataAttribute('leave', ''),
31
31
  h.DataAttribute('transition', ''),
32
- ]), "@foldkit/ui/animation/index.js#anonymous~4")), M.when('LeaveAnimating', () => __foldkitBrandViewResult(([
32
+ ]), "@foldkit/ui/animation/index.js#anonymous~4")), Match.when('LeaveAnimating', () => __foldkitBrandViewResult(([
33
33
  h.DataAttribute('closed', ''),
34
34
  h.DataAttribute('leave', ''),
35
35
  h.DataAttribute('transition', ''),
36
- ]), "@foldkit/ui/animation/index.js#anonymous~5")), M.orElse(() => __foldkitBrandViewResult(([]), "@foldkit/ui/animation/index.js#anonymous~6")));
36
+ ]), "@foldkit/ui/animation/index.js#anonymous~5")), Match.orElse(() => __foldkitBrandViewResult(([]), "@foldkit/ui/animation/index.js#anonymous~6")));
37
37
  if (animateSize) {
38
38
  const isClosed = transitionState === 'EnterStart' ||
39
39
  transitionState === 'LeaveAnimating' ||
@@ -1,3 +1,3 @@
1
- export { init, update, view, defaultLeaveCommand, Model, Message, OutMessage, type Showed, type Hid, TransitionState, WaitForPaint, WaitForAnimationSettled, } from './index.js';
1
+ export { init, show, hide, update, toggle, view, defaultLeaveCommand, Model, Message, OutMessage, type Showed, type Hid, TransitionState, WaitForPaint, WaitForAnimationSettled, } from './index.js';
2
2
  export type { InitConfig, ViewInputs } from './index.js';
3
3
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/animation/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,mBAAmB,EACnB,KAAK,EACL,OAAO,EACP,UAAU,EACV,KAAK,MAAM,EACX,KAAK,GAAG,EACR,eAAe,EACf,YAAY,EACZ,uBAAuB,GACxB,MAAM,YAAY,CAAA;AAEnB,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/animation/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,MAAM,EACN,IAAI,EACJ,mBAAmB,EACnB,KAAK,EACL,OAAO,EACP,UAAU,EACV,KAAK,MAAM,EACX,KAAK,GAAG,EACR,eAAe,EACf,YAAY,EACZ,uBAAuB,GACxB,MAAM,YAAY,CAAA;AAEnB,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA"}
@@ -1 +1 @@
1
- export { init, update, view, defaultLeaveCommand, Model, Message, OutMessage, TransitionState, WaitForPaint, WaitForAnimationSettled, } from './index.js';
1
+ export { init, show, hide, update, toggle, view, defaultLeaveCommand, Model, Message, OutMessage, TransitionState, WaitForPaint, WaitForAnimationSettled, } from './index.js';
@@ -1,12 +1,12 @@
1
- import { Schema as S } from 'effect';
1
+ import { Schema } from 'effect';
2
2
  /** Schema for the animation lifecycle state, tracking enter/leave phases. */
3
- export declare const TransitionState: S.Literals<readonly ["Idle", "EnterStart", "EnterAnimating", "LeaveStart", "LeaveAnimating"]>;
3
+ export declare const TransitionState: Schema.Literals<readonly ["Idle", "EnterStart", "EnterAnimating", "LeaveStart", "LeaveAnimating"]>;
4
4
  export type TransitionState = typeof TransitionState.Type;
5
5
  /** Schema for the animation component's state, tracking its unique ID, visibility intent, and lifecycle phase. */
6
- export declare const Model: S.Struct<{
7
- readonly id: S.String;
8
- readonly isShowing: S.Boolean;
9
- readonly transitionState: S.Literals<readonly ["Idle", "EnterStart", "EnterAnimating", "LeaveStart", "LeaveAnimating"]>;
6
+ export declare const Model: Schema.Struct<{
7
+ readonly id: Schema.String;
8
+ readonly isShowing: Schema.Boolean;
9
+ readonly transitionState: Schema.Literals<readonly ["Idle", "EnterStart", "EnterAnimating", "LeaveStart", "LeaveAnimating"]>;
10
10
  }>;
11
11
  export type Model = typeof Model.Type;
12
12
  /** Union of all messages the animation component can produce. */
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/animation/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAKpC,6EAA6E;AAC7E,eAAO,MAAM,eAAe,+FAM1B,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC,IAAI,CAAA;AAIzD,kHAAkH;AAClH,eAAO,MAAM,KAAK;;;;EAIhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,iEAAiE;AACjE,eAAO,MAAM,OAAO;;;;;EAKlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,MAAM,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA;AAC/C,MAAM,MAAM,GAAG,GAAG,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,UAAU;;;EAGrB,CAAA;AACF,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,IAAI,CAAA;AAI/C,iEAAiE;AACjE,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAC,CAAA;AAEF,4EAA4E;AAC5E,eAAO,MAAM,IAAI,WAAY,UAAU,KAAG,KAIxC,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/animation/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAK/B,6EAA6E;AAC7E,eAAO,MAAM,eAAe,oGAM1B,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC,IAAI,CAAA;AAIzD,kHAAkH;AAClH,eAAO,MAAM,KAAK;;;;EAIhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,iEAAiE;AACjE,eAAO,MAAM,OAAO;;;;;EAKlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,MAAM,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA;AAC/C,MAAM,MAAM,GAAG,GAAG,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,UAAU;;;EAGrB,CAAA;AACF,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,IAAI,CAAA;AAI/C,iEAAiE;AACjE,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAC,CAAA;AAEF,4EAA4E;AAC5E,eAAO,MAAM,IAAI,WAAY,UAAU,KAAG,KAIxC,CAAA"}
@@ -1,9 +1,9 @@
1
1
  import { brandViewResult as __foldkitBrandViewResult } from 'foldkit/brand'
2
- import { Schema as S } from 'effect';
2
+ import { Schema } from 'effect';
3
3
  import { defineMessageUnion } from 'foldkit/message';
4
4
  // TRANSITION STATE
5
5
  /** Schema for the animation lifecycle state, tracking enter/leave phases. */
6
- export const TransitionState = S.Literals([
6
+ export const TransitionState = Schema.Literals([
7
7
  'Idle',
8
8
  'EnterStart',
9
9
  'EnterAnimating',
@@ -12,9 +12,9 @@ export const TransitionState = S.Literals([
12
12
  ]);
13
13
  // MODEL
14
14
  /** Schema for the animation component's state, tracking its unique ID, visibility intent, and lifecycle phase. */
15
- export const Model = S.Struct({
16
- id: S.String,
17
- isShowing: S.Boolean,
15
+ export const Model = Schema.Struct({
16
+ id: Schema.String,
17
+ isShowing: Schema.Boolean,
18
18
  transitionState: TransitionState,
19
19
  });
20
20
  // MESSAGE
@@ -1,4 +1,4 @@
1
- import { Effect, Schema as S } from 'effect';
1
+ import { Effect, Schema } from 'effect';
2
2
  import { type Update } from 'foldkit';
3
3
  import * as Command from 'foldkit/command';
4
4
  import { type Hid, Message, type Model, OutMessage, type Showed } from './schema.js';
@@ -9,7 +9,7 @@ export declare const WaitForPaint: Command.CommandDefinitionNoArgs<"WaitForPaint
9
9
  }, never, never>>;
10
10
  /** Waits for all CSS animations on the element to settle. Covers both CSS transitions and CSS keyframe animations. */
11
11
  export declare const WaitForAnimationSettled: Command.CommandDefinitionWithArgs<"WaitForAnimationSettled", {
12
- id: S.String;
12
+ id: Schema.String;
13
13
  }, Effect.Effect<{
14
14
  readonly _tag: "EndedAnimation";
15
15
  }, never, never>>;
@@ -19,6 +19,12 @@ export declare const WaitForAnimationSettled: Command.CommandDefinitionWithArgs<
19
19
  * update result. */
20
20
  export declare function update(model: Model, message: Showed | Hid): Update.Return<Model, Message>;
21
21
  export declare function update(model: Model, message: Message): UpdateReturn;
22
+ /** Programmatically starts the enter lifecycle. */
23
+ export declare const show: (model: Model) => Update.Return<Model, Message>;
24
+ /** Programmatically starts the leave lifecycle. */
25
+ export declare const hide: (model: Model) => Update.Return<Model, Message>;
26
+ /** Toggles the animation between its shown and hidden states. */
27
+ export declare const toggle: (model: Model) => Update.Return<Model, Message>;
22
28
  /** Creates the standard leave-phase command that waits for CSS animations on the element to settle. Use this when handling the `StartedLeaveAnimating` OutMessage for components that don't need custom leave behavior. */
23
29
  export declare const defaultLeaveCommand: (model: Model) => Command.Command<Message>;
24
30
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/animation/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AACxD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAM1C,OAAO,EACL,KAAK,GAAG,EACR,OAAO,EACP,KAAK,KAAK,EACV,UAAU,EACV,KAAK,MAAM,EACZ,MAAM,aAAa,CAAA;AAMpB,KAAK,YAAY,GAAG,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;AAG3E,gFAAgF;AAChF,eAAO,MAAM,YAAY;;iBAGvB,CAAA;AACF,sHAAsH;AACtH,eAAO,MAAM,uBAAuB;;;;iBAUnC,CAAA;AAED;;;qBAGqB;AACrB,wBAAgB,MAAM,CACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,MAAM,GAAG,GAAG,GACpB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AAChC,wBAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAG,YAAY,CAAA;AAkEpE,2NAA2N;AAC3N,eAAO,MAAM,mBAAmB,UAAW,KAAK,KAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAC/B,CAAA"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/animation/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAS,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC9C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAM1C,OAAO,EACL,KAAK,GAAG,EACR,OAAO,EACP,KAAK,KAAK,EACV,UAAU,EACV,KAAK,MAAM,EACZ,MAAM,aAAa,CAAA;AAMpB,KAAK,YAAY,GAAG,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;AAG3E,gFAAgF;AAChF,eAAO,MAAM,YAAY;;iBAGvB,CAAA;AACF,sHAAsH;AACtH,eAAO,MAAM,uBAAuB;;;;iBAUnC,CAAA;AAED;;;qBAGqB;AACrB,wBAAgB,MAAM,CACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,MAAM,GAAG,GAAG,GACpB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AAChC,wBAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAG,YAAY,CAAA;AAkEpE,mDAAmD;AACnD,eAAO,MAAM,IAAI,UAAW,KAAK,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAC/B,CAAA;AAEjC,mDAAmD;AACnD,eAAO,MAAM,IAAI,UAAW,KAAK,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAClC,CAAA;AAE9B,iEAAiE;AACjE,eAAO,MAAM,MAAM,UAAW,KAAK,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAMjE,CAAA;AAED,2NAA2N;AAC3N,eAAO,MAAM,mBAAmB,UAAW,KAAK,KAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAC/B,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { brandViewResult as __foldkitBrandViewResult } from 'foldkit/brand'
2
- import { Effect, Match as M, Schema as S } from 'effect';
2
+ import { Effect, Match, Schema } from 'effect';
3
3
  import * as Command from 'foldkit/command';
4
4
  import * as Dom from 'foldkit/dom';
5
5
  import * as Render from 'foldkit/render';
@@ -8,7 +8,7 @@ import { idSelector } from '../internal/selectors.js';
8
8
  import { Message, OutMessage, } from './schema.js';
9
9
  // UPDATE
10
10
  const elementSelector = (id) => __foldkitBrandViewResult((idSelector(id)), "@foldkit/ui/animation/update.js#elementSelector");
11
- const withUpdateReturn = M.withReturnType();
11
+ const withUpdateReturn = Match.withReturnType();
12
12
  /** Waits for paint via double-rAF before the enter/leave lifecycle advances. */
13
13
  export const WaitForPaint = Command.define('WaitForPaint', {
14
14
  messages: [Message.CompletedWaitForPaint],
@@ -16,7 +16,7 @@ export const WaitForPaint = Command.define('WaitForPaint', {
16
16
  });
17
17
  /** Waits for all CSS animations on the element to settle. Covers both CSS transitions and CSS keyframe animations. */
18
18
  export const WaitForAnimationSettled = Command.define('WaitForAnimationSettled', {
19
- args: { id: S.String },
19
+ args: { id: Schema.String },
20
20
  messages: [Message.EndedAnimation],
21
21
  execute: ({ id }) => __foldkitBrandViewResult((Dom.waitForAnimationSettled(elementSelector(id)).pipe(Effect.as(Message.EndedAnimation()))), "@foldkit/ui/animation/update.js#execute"),
22
22
  });
@@ -49,20 +49,33 @@ export function update(model, message) {
49
49
  commands: [maybeNextFrame],
50
50
  }), "@foldkit/ui/animation/update.js#Hid");
51
51
  },
52
- CompletedWaitForPaint: () => __foldkitBrandViewResult((M.value(model.transitionState).pipe(withUpdateReturn, M.when('EnterStart', () => (__foldkitBrandViewResult(({
52
+ CompletedWaitForPaint: () => __foldkitBrandViewResult((Match.value(model.transitionState).pipe(withUpdateReturn, Match.when('EnterStart', () => (__foldkitBrandViewResult(({
53
53
  model: evo(model, { transitionState: () => __foldkitBrandViewResult(('EnterAnimating'), "@foldkit/ui/animation/update.js#transitionState~3") }),
54
54
  commands: [WaitForAnimationSettled({ id: model.id })],
55
- }), "@foldkit/ui/animation/update.js#anonymous"))), M.when('LeaveStart', () => (__foldkitBrandViewResult(({
55
+ }), "@foldkit/ui/animation/update.js#anonymous"))), Match.when('LeaveStart', () => (__foldkitBrandViewResult(({
56
56
  model: evo(model, { transitionState: () => __foldkitBrandViewResult(('LeaveAnimating'), "@foldkit/ui/animation/update.js#transitionState~4") }),
57
57
  outMessage: OutMessage.StartedLeaveAnimating(),
58
- }), "@foldkit/ui/animation/update.js#anonymous~2"))), M.orElse(() => (__foldkitBrandViewResult(({ model }), "@foldkit/ui/animation/update.js#anonymous~3"))))), "@foldkit/ui/animation/update.js#CompletedWaitForPaint"),
59
- EndedAnimation: () => __foldkitBrandViewResult((M.value(model.transitionState).pipe(withUpdateReturn, M.when('EnterAnimating', () => (__foldkitBrandViewResult(({
58
+ }), "@foldkit/ui/animation/update.js#anonymous~2"))), Match.orElse(() => (__foldkitBrandViewResult(({ model }), "@foldkit/ui/animation/update.js#anonymous~3"))))), "@foldkit/ui/animation/update.js#CompletedWaitForPaint"),
59
+ EndedAnimation: () => __foldkitBrandViewResult((Match.value(model.transitionState).pipe(withUpdateReturn, Match.when('EnterAnimating', () => (__foldkitBrandViewResult(({
60
60
  model: evo(model, { transitionState: () => __foldkitBrandViewResult(('Idle'), "@foldkit/ui/animation/update.js#transitionState~5") }),
61
- }), "@foldkit/ui/animation/update.js#anonymous~4"))), M.when('LeaveAnimating', () => (__foldkitBrandViewResult(({
61
+ }), "@foldkit/ui/animation/update.js#anonymous~4"))), Match.when('LeaveAnimating', () => (__foldkitBrandViewResult(({
62
62
  model: evo(model, { transitionState: () => __foldkitBrandViewResult(('Idle'), "@foldkit/ui/animation/update.js#transitionState~6") }),
63
63
  outMessage: OutMessage.TransitionedOut(),
64
- }), "@foldkit/ui/animation/update.js#anonymous~5"))), M.orElse(() => (__foldkitBrandViewResult(({ model }), "@foldkit/ui/animation/update.js#anonymous~6"))))), "@foldkit/ui/animation/update.js#EndedAnimation"),
64
+ }), "@foldkit/ui/animation/update.js#anonymous~5"))), Match.orElse(() => (__foldkitBrandViewResult(({ model }), "@foldkit/ui/animation/update.js#anonymous~6"))))), "@foldkit/ui/animation/update.js#EndedAnimation"),
65
65
  })), "@foldkit/ui/animation/update.js#update");
66
66
  }
67
+ /** Programmatically starts the enter lifecycle. */
68
+ export const show = (model) => __foldkitBrandViewResult((update(model, Message.Showed())), "@foldkit/ui/animation/update.js#show");
69
+ /** Programmatically starts the leave lifecycle. */
70
+ export const hide = (model) => __foldkitBrandViewResult((update(model, Message.Hid())), "@foldkit/ui/animation/update.js#hide");
71
+ /** Toggles the animation between its shown and hidden states. */
72
+ export const toggle = (model) => {
73
+ if (model.isShowing) {
74
+ return __foldkitBrandViewResult((hide(model)), "@foldkit/ui/animation/update.js#toggle");
75
+ }
76
+ else {
77
+ return __foldkitBrandViewResult((show(model)), "@foldkit/ui/animation/update.js#toggle");
78
+ }
79
+ };
67
80
  /** Creates the standard leave-phase command that waits for CSS animations on the element to settle. Use this when handling the `StartedLeaveAnimating` OutMessage for components that don't need custom leave behavior. */
68
81
  export const defaultLeaveCommand = (model) => __foldkitBrandViewResult((WaitForAnimationSettled({ id: model.id })), "@foldkit/ui/animation/update.js#defaultLeaveCommand");
@@ -1,4 +1,4 @@
1
- import { Effect, Option, Schema as S } from 'effect';
1
+ import { Effect, Option, Schema } from 'effect';
2
2
  import * as Calendar from 'foldkit/calendar';
3
3
  import type { CalendarDate } from 'foldkit/calendar';
4
4
  import * as Command from 'foldkit/command';
@@ -8,85 +8,85 @@ import * as Update from 'foldkit/update';
8
8
  /** Which grid the calendar is currently displaying. `Days` is the standard
9
9
  * 6×7 day grid; `Months` is a 3×4 month-name grid for fast month jumps;
10
10
  * `Years` is a 3×4 year grid paged in 12-year windows for fast year jumps. */
11
- export declare const ViewMode: S.Literals<readonly ["Days", "Months", "Years"]>;
11
+ export declare const ViewMode: Schema.Literals<readonly ["Days", "Months", "Years"]>;
12
12
  export type ViewMode = typeof ViewMode.Type;
13
13
  /** Schema for the calendar component's state. Tracks the visible month/year,
14
14
  * the keyboard-focused and user-selected dates, the active view mode, and
15
15
  * the configuration that governs navigation (locale, min/max, disabled
16
16
  * days). */
17
- export declare const Model: S.Struct<{
18
- readonly id: S.String;
19
- readonly today: S.Struct<{
20
- readonly year: S.Int;
21
- readonly month: S.Int;
22
- readonly day: S.Int;
17
+ export declare const Model: Schema.Struct<{
18
+ readonly id: Schema.String;
19
+ readonly today: Schema.Struct<{
20
+ readonly year: Schema.Int;
21
+ readonly month: Schema.Int;
22
+ readonly day: Schema.Int;
23
23
  }>;
24
- readonly viewYear: S.Int;
25
- readonly viewMonth: S.Int;
26
- readonly viewMode: S.Literals<readonly ["Days", "Months", "Years"]>;
27
- readonly maybeFocusedDate: S.Option<S.Struct<{
28
- readonly year: S.Int;
29
- readonly month: S.Int;
30
- readonly day: S.Int;
24
+ readonly viewYear: Schema.Int;
25
+ readonly viewMonth: Schema.Int;
26
+ readonly viewMode: Schema.Literals<readonly ["Days", "Months", "Years"]>;
27
+ readonly maybeFocusedDate: Schema.Option<Schema.Struct<{
28
+ readonly year: Schema.Int;
29
+ readonly month: Schema.Int;
30
+ readonly day: Schema.Int;
31
31
  }>>;
32
- readonly isGridFocused: S.Boolean;
33
- readonly locale: S.Struct<{
34
- readonly firstDayOfWeek: S.Literals<readonly ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]>;
35
- readonly monthNames: S.Tuple<readonly [S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String]>;
36
- readonly shortMonthNames: S.Tuple<readonly [S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String, S.String]>;
37
- readonly dayNames: S.Tuple<readonly [S.String, S.String, S.String, S.String, S.String, S.String, S.String]>;
38
- readonly shortDayNames: S.Tuple<readonly [S.String, S.String, S.String, S.String, S.String, S.String, S.String]>;
32
+ readonly isGridFocused: Schema.Boolean;
33
+ readonly locale: Schema.Struct<{
34
+ readonly firstDayOfWeek: Schema.Literals<readonly ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]>;
35
+ readonly monthNames: Schema.Tuple<readonly [Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String]>;
36
+ readonly shortMonthNames: Schema.Tuple<readonly [Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String]>;
37
+ readonly dayNames: Schema.Tuple<readonly [Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String]>;
38
+ readonly shortDayNames: Schema.Tuple<readonly [Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String, Schema.String]>;
39
39
  }>;
40
- readonly maybeMinDate: S.Option<S.Struct<{
41
- readonly year: S.Int;
42
- readonly month: S.Int;
43
- readonly day: S.Int;
40
+ readonly maybeMinDate: Schema.Option<Schema.Struct<{
41
+ readonly year: Schema.Int;
42
+ readonly month: Schema.Int;
43
+ readonly day: Schema.Int;
44
44
  }>>;
45
- readonly maybeMaxDate: S.Option<S.Struct<{
46
- readonly year: S.Int;
47
- readonly month: S.Int;
48
- readonly day: S.Int;
45
+ readonly maybeMaxDate: Schema.Option<Schema.Struct<{
46
+ readonly year: Schema.Int;
47
+ readonly month: Schema.Int;
48
+ readonly day: Schema.Int;
49
49
  }>>;
50
- readonly disabledDaysOfWeek: S.$Array<S.Literals<readonly ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]>>;
51
- readonly disabledDates: S.$Array<S.Struct<{
52
- readonly year: S.Int;
53
- readonly month: S.Int;
54
- readonly day: S.Int;
50
+ readonly disabledDaysOfWeek: Schema.$Array<Schema.Literals<readonly ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]>>;
51
+ readonly disabledDates: Schema.$Array<Schema.Struct<{
52
+ readonly year: Schema.Int;
53
+ readonly month: Schema.Int;
54
+ readonly day: Schema.Int;
55
55
  }>>;
56
56
  }>;
57
57
  export type Model = typeof Model.Type;
58
58
  /** Union of all messages the calendar component can produce. */
59
59
  export declare const Message: import("foldkit/message").MessageUnion<{
60
60
  readonly ClickedDay: {
61
- date: S.Struct<{
62
- readonly year: S.Int;
63
- readonly month: S.Int;
64
- readonly day: S.Int;
61
+ date: Schema.Struct<{
62
+ readonly year: Schema.Int;
63
+ readonly month: Schema.Int;
64
+ readonly day: Schema.Int;
65
65
  }>;
66
66
  };
67
67
  readonly PressedKeyOnGrid: {
68
- key: S.String;
69
- isShift: S.Boolean;
68
+ key: Schema.String;
69
+ isShift: Schema.Boolean;
70
70
  };
71
71
  readonly ClickedPreviousMonthButton: {};
72
72
  readonly ClickedNextMonthButton: {};
73
73
  readonly ClickedHeading: {};
74
74
  readonly SelectedMonth: {
75
- month: S.Int;
75
+ month: Schema.Int;
76
76
  };
77
77
  readonly SelectedYear: {
78
- year: S.Int;
78
+ year: Schema.Int;
79
79
  };
80
80
  readonly PagedYears: {
81
- direction: S.Literals<readonly [1, -1]>;
81
+ direction: Schema.Literals<readonly [1, -1]>;
82
82
  };
83
83
  readonly FocusedGrid: {};
84
84
  readonly BlurredGrid: {};
85
85
  readonly RefreshedToday: {
86
- today: S.Struct<{
87
- readonly year: S.Int;
88
- readonly month: S.Int;
89
- readonly day: S.Int;
86
+ today: Schema.Struct<{
87
+ readonly year: Schema.Int;
88
+ readonly month: Schema.Int;
89
+ readonly day: Schema.Int;
90
90
  }>;
91
91
  };
92
92
  readonly CompletedFocusGrid: {};
@@ -99,14 +99,14 @@ export type SelectedYear = typeof Message.SelectedYear.Type;
99
99
  /** Union of the calendar's OutMessages. */
100
100
  export declare const OutMessage: import("foldkit/message").MessageUnion<{
101
101
  readonly ChangedViewMonth: {
102
- year: S.Int;
103
- month: S.Int;
102
+ year: Schema.Int;
103
+ month: Schema.Int;
104
104
  };
105
105
  readonly SelectedDate: {
106
- date: S.Struct<{
107
- readonly year: S.Int;
108
- readonly month: S.Int;
109
- readonly day: S.Int;
106
+ date: Schema.Struct<{
107
+ readonly year: Schema.Int;
108
+ readonly month: Schema.Int;
109
+ readonly day: Schema.Int;
110
110
  }>;
111
111
  };
112
112
  }>;
@@ -133,7 +133,7 @@ type UpdateReturn = Update.ReturnWithOutMessage<Model, Message, OutMessage>;
133
133
  /** Focuses the calendar grid container. Parent components like DatePicker
134
134
  * dispatch this after opening to hand focus to the grid's keyboard layer. */
135
135
  export declare const FocusGrid: Command.CommandDefinitionWithArgs<"FocusGrid", {
136
- id: S.String;
136
+ id: Schema.String;
137
137
  }, Effect.Effect<{
138
138
  readonly _tag: "CompletedFocusGrid";
139
139
  }, never, never>>;
@@ -372,7 +372,7 @@ export type YearsModeAttributes = Readonly<{
372
372
  }>;
373
373
  /** Discriminated union of attribute groups and derived data the calendar
374
374
  * component provides to the consumer's `toView` callback. The variant
375
- * matches `model.viewMode`. Pattern-match on `_tag` with `M.tagsExhaustive`
375
+ * matches `model.viewMode`. Pattern-match on `_tag` with `Match.tagsExhaustive`
376
376
  * to render each mode. */
377
377
  export type CalendarAttributes = DaysModeAttributes | MonthsModeAttributes | YearsModeAttributes;
378
378
  /** Per-render view inputs passed to `view` via `h.submodel`'s `viewInputs` field.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/calendar/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/calendar/index.ts"],"names":[],"mappings":"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"}