foldkit 0.79.0 → 0.81.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.
- package/README.md +1 -0
- package/dist/html/index.d.ts +34 -27
- package/dist/html/index.d.ts.map +1 -1
- package/dist/html/index.js +31 -26
- package/dist/html/public.d.ts +1 -1
- package/dist/html/public.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/mount/index.d.ts +42 -0
- package/dist/mount/index.d.ts.map +1 -0
- package/dist/mount/index.js +38 -0
- package/dist/mount/public.d.ts +3 -0
- package/dist/mount/public.d.ts.map +1 -0
- package/dist/mount/public.js +1 -0
- package/dist/runtime/public.d.ts +1 -1
- package/dist/runtime/public.d.ts.map +1 -1
- package/dist/runtime/runtime.d.ts +1 -23
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +1 -2
- package/dist/ui/anchor.d.ts +13 -6
- package/dist/ui/anchor.d.ts.map +1 -1
- package/dist/ui/anchor.js +91 -86
- package/dist/ui/calendar/index.d.ts +117 -28
- package/dist/ui/calendar/index.d.ts.map +1 -1
- package/dist/ui/calendar/index.js +393 -105
- package/dist/ui/calendar/public.d.ts +2 -2
- package/dist/ui/calendar/public.d.ts.map +1 -1
- package/dist/ui/calendar/public.js +1 -1
- package/dist/ui/combobox/multi.d.ts +15 -3
- package/dist/ui/combobox/multi.d.ts.map +1 -1
- package/dist/ui/combobox/public.d.ts +2 -2
- package/dist/ui/combobox/public.d.ts.map +1 -1
- package/dist/ui/combobox/public.js +1 -1
- package/dist/ui/combobox/shared.d.ts +22 -7
- package/dist/ui/combobox/shared.d.ts.map +1 -1
- package/dist/ui/combobox/shared.js +73 -37
- package/dist/ui/combobox/single.d.ts +15 -3
- package/dist/ui/combobox/single.d.ts.map +1 -1
- package/dist/ui/datePicker/index.d.ts +7 -4
- package/dist/ui/datePicker/index.d.ts.map +1 -1
- package/dist/ui/datePicker/index.js +8 -2
- package/dist/ui/listbox/multi.d.ts +10 -2
- package/dist/ui/listbox/multi.d.ts.map +1 -1
- package/dist/ui/listbox/public.d.ts +2 -2
- package/dist/ui/listbox/public.d.ts.map +1 -1
- package/dist/ui/listbox/public.js +1 -1
- package/dist/ui/listbox/shared.d.ts +16 -6
- package/dist/ui/listbox/shared.d.ts.map +1 -1
- package/dist/ui/listbox/shared.js +37 -25
- package/dist/ui/listbox/single.d.ts +10 -2
- package/dist/ui/listbox/single.d.ts.map +1 -1
- package/dist/ui/menu/index.d.ts +11 -5
- package/dist/ui/menu/index.d.ts.map +1 -1
- package/dist/ui/menu/index.js +36 -24
- package/dist/ui/menu/public.d.ts +2 -2
- package/dist/ui/menu/public.d.ts.map +1 -1
- package/dist/ui/menu/public.js +1 -1
- package/dist/ui/popover/index.d.ts +8 -5
- package/dist/ui/popover/index.d.ts.map +1 -1
- package/dist/ui/popover/index.js +23 -16
- package/dist/ui/popover/public.d.ts +2 -2
- package/dist/ui/popover/public.d.ts.map +1 -1
- package/dist/ui/popover/public.js +1 -1
- package/dist/ui/tooltip/index.d.ts +5 -2
- package/dist/ui/tooltip/index.d.ts.map +1 -1
- package/dist/ui/tooltip/index.js +17 -10
- package/dist/ui/tooltip/public.d.ts +1 -1
- package/dist/ui/tooltip/public.d.ts.map +1 -1
- package/dist/ui/tooltip/public.js +1 -1
- package/package.json +5 -1
|
@@ -82,8 +82,6 @@ export declare const update: (model: {
|
|
|
82
82
|
name: string;
|
|
83
83
|
effect: import("effect/Effect").Effect<{
|
|
84
84
|
readonly _tag: "Closed";
|
|
85
|
-
} | {
|
|
86
|
-
readonly _tag: "ClosedByTab";
|
|
87
85
|
} | {
|
|
88
86
|
readonly _tag: "DeactivatedItem";
|
|
89
87
|
} | {
|
|
@@ -98,9 +96,13 @@ export declare const update: (model: {
|
|
|
98
96
|
readonly _tag: "CompletedScrollIntoView";
|
|
99
97
|
} | {
|
|
100
98
|
readonly _tag: "CompletedClickItem";
|
|
99
|
+
} | {
|
|
100
|
+
readonly _tag: "CompletedAnchorMount";
|
|
101
101
|
} | {
|
|
102
102
|
readonly _tag: "Opened";
|
|
103
103
|
readonly maybeActiveItemIndex: Option.Option<number>;
|
|
104
|
+
} | {
|
|
105
|
+
readonly _tag: "BlurredInput";
|
|
104
106
|
} | {
|
|
105
107
|
readonly _tag: "ActivatedItem";
|
|
106
108
|
readonly activationTrigger: "Pointer" | "Keyboard";
|
|
@@ -123,6 +125,10 @@ export declare const update: (model: {
|
|
|
123
125
|
readonly index: number;
|
|
124
126
|
} | {
|
|
125
127
|
readonly _tag: "CompletedFocusInput";
|
|
128
|
+
} | {
|
|
129
|
+
readonly _tag: "CompletedAttachPreventBlur";
|
|
130
|
+
} | {
|
|
131
|
+
readonly _tag: "CompletedAttachSelectOnFocus";
|
|
126
132
|
} | {
|
|
127
133
|
readonly _tag: "GotAnimationMessage";
|
|
128
134
|
readonly message: {
|
|
@@ -176,7 +182,13 @@ export declare const view: <Message, Item extends string>(config: Readonly<{
|
|
|
176
182
|
} & {
|
|
177
183
|
readonly selectedItems: readonly string[];
|
|
178
184
|
};
|
|
179
|
-
toParentMessage: (message: Opened | Closed | import("./shared.js").
|
|
185
|
+
toParentMessage: (message: Opened | Closed | import("./shared.js").BlurredInput | import("./shared.js").ActivatedItem | import("./shared.js").DeactivatedItem | SelectedItem | import("./shared.js").MovedPointerOverItem | import("./shared.js").RequestedItemClick | import("./shared.js").UpdatedInputValue | import("./shared.js").PressedToggleButton | {
|
|
186
|
+
readonly _tag: "CompletedAnchorMount";
|
|
187
|
+
} | {
|
|
188
|
+
readonly _tag: "CompletedAttachPreventBlur";
|
|
189
|
+
} | {
|
|
190
|
+
readonly _tag: "CompletedAttachSelectOnFocus";
|
|
191
|
+
}) => Message;
|
|
180
192
|
onSelectedItem?: (value: string) => Message;
|
|
181
193
|
items: readonly Item[];
|
|
182
194
|
itemToConfig: (item: Item, context: Readonly<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi.d.ts","sourceRoot":"","sources":["../../../src/ui/combobox/multi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEnD,OAAO,KAAK,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,KAAK,IAAI,EAAc,MAAM,qBAAqB,CAAA;AAE3D,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,MAAM,EACN,KAAK,OAAO,EACZ,MAAM,EACN,YAAY,EAKb,MAAM,aAAa,CAAA;AAIpB,yIAAyI;AACzI,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;GAEjB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,8RAA8R;AAC9R,MAAM,MAAM,UAAU,GAAG,cAAc,GACrC,QAAQ,CAAC;IACP,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;CACtC,CAAC,CAAA;AAEJ,2IAA2I;AAC3I,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAGxC,CAAA;AAcF,yJAAyJ;AACzJ,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"multi.d.ts","sourceRoot":"","sources":["../../../src/ui/combobox/multi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEnD,OAAO,KAAK,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,KAAK,IAAI,EAAc,MAAM,qBAAqB,CAAA;AAE3D,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,MAAM,EACN,KAAK,OAAO,EACZ,MAAM,EACN,YAAY,EAKb,MAAM,aAAa,CAAA;AAIpB,yIAAyI;AACzI,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;GAEjB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,8RAA8R;AAC9R,MAAM,MAAM,UAAU,GAAG,cAAc,GACrC,QAAQ,CAAC;IACP,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;CACtC,CAAC,CAAA;AAEJ,2IAA2I;AAC3I,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAGxC,CAAA;AAcF,yJAAyJ;AACzJ,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAwBjB,CAAA;AAEF;wFACwF;AACxF,eAAO,MAAM,IAAI,GACf,OAAO,KAAK,KACX,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CACK,CAAA;AAEhE;yFACyF;AACzF,eAAO,MAAM,KAAK,GAChB,OAAO,KAAK,KACX,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAClC,CAAA;AAEzB,gJAAgJ;AAChJ,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,EACZ,MAAM,MAAM,KACX,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CACD,CAAA;AAI1D,uEAAuE;AACvE,MAAM,MAAM,UAAU,CAAC,OAAO,EAAE,IAAI,SAAS,MAAM,IAAI,cAAc,CACnE,OAAO,EACP,IAAI,EACJ,KAAK,CACN,CAAA;AAED,yIAAyI;AACzI,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAIf,CAAA;AAEF;mFACmF;AACnF,eAAO,MAAM,IAAI,GAAI,OAAO,EAAE,IAAI,SAAS,MAAM,EAC/C,cAAc,IAAI,CAChB,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,EACzB,OAAO,GAAG,iBAAiB,GAAG,gBAAgB,CAC/C,KACA,CAAC,CACF,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,iBAAiB,CAAC,KACrE,IAAI,CAoBR,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { init, update, open, close, selectItem, view, lazy, Model, } from './single.js';
|
|
2
|
-
export { Message, SelectedItem, CompletedLockScroll, CompletedUnlockScroll, CompletedSetupInert, CompletedTeardownInert, CompletedFocusInput, CompletedScrollIntoView, CompletedClickItem, GotAnimationMessage, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusInput, ScrollIntoView, ClickItem, DetectMovementOrAnimationEnd, } from './shared.js';
|
|
3
|
-
export type { ActivationTrigger, Opened, Closed,
|
|
2
|
+
export { Message, SelectedItem, CompletedLockScroll, CompletedUnlockScroll, CompletedSetupInert, CompletedTeardownInert, CompletedFocusInput, CompletedScrollIntoView, CompletedClickItem, CompletedAnchorMount, CompletedAttachPreventBlur, CompletedAttachSelectOnFocus, GotAnimationMessage, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusInput, ScrollIntoView, ClickItem, DetectMovementOrAnimationEnd, } from './shared.js';
|
|
3
|
+
export type { ActivationTrigger, Opened, Closed, BlurredInput, ActivatedItem, DeactivatedItem, MovedPointerOverItem, RequestedItemClick, UpdatedInputValue, PressedToggleButton, ItemConfig, GroupHeading, } from './shared.js';
|
|
4
4
|
export type { InitConfig, ViewConfig } from './single.js';
|
|
5
5
|
export type { AnchorConfig } from '../anchor.js';
|
|
6
6
|
export * as Multi from './multiPublic.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../../src/ui/combobox/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,KAAK,GACN,MAAM,aAAa,CAAA;AAEpB,OAAO,EACL,OAAO,EACP,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,UAAU,EACV,cAAc,EACd,SAAS,EACT,4BAA4B,GAC7B,MAAM,aAAa,CAAA;AAEpB,YAAY,EACV,iBAAiB,EACjB,MAAM,EACN,MAAM,EACN,
|
|
1
|
+
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../../src/ui/combobox/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,KAAK,GACN,MAAM,aAAa,CAAA;AAEpB,OAAO,EACL,OAAO,EACP,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,oBAAoB,EACpB,0BAA0B,EAC1B,4BAA4B,EAC5B,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,UAAU,EACV,cAAc,EACd,SAAS,EACT,4BAA4B,GAC7B,MAAM,aAAa,CAAA;AAEpB,YAAY,EACV,iBAAiB,EACjB,MAAM,EACN,MAAM,EACN,YAAY,EACZ,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,UAAU,EACV,YAAY,GACb,MAAM,aAAa,CAAA;AAEpB,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAEzD,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEhD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { init, update, open, close, selectItem, view, lazy, Model, } from './single.js';
|
|
2
|
-
export { Message, SelectedItem, CompletedLockScroll, CompletedUnlockScroll, CompletedSetupInert, CompletedTeardownInert, CompletedFocusInput, CompletedScrollIntoView, CompletedClickItem, GotAnimationMessage, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusInput, ScrollIntoView, ClickItem, DetectMovementOrAnimationEnd, } from './shared.js';
|
|
2
|
+
export { Message, SelectedItem, CompletedLockScroll, CompletedUnlockScroll, CompletedSetupInert, CompletedTeardownInert, CompletedFocusInput, CompletedScrollIntoView, CompletedClickItem, CompletedAnchorMount, CompletedAttachPreventBlur, CompletedAttachSelectOnFocus, GotAnimationMessage, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusInput, ScrollIntoView, ClickItem, DetectMovementOrAnimationEnd, } from './shared.js';
|
|
3
3
|
export * as Multi from './multiPublic.js';
|
|
@@ -47,8 +47,8 @@ export declare const Opened: import("../../schema/index.js").CallableTaggedStruc
|
|
|
47
47
|
}>;
|
|
48
48
|
/** Sent when the combobox closes via Escape key or backdrop click. */
|
|
49
49
|
export declare const Closed: import("../../schema/index.js").CallableTaggedStruct<"Closed", {}>;
|
|
50
|
-
/** Sent when
|
|
51
|
-
export declare const
|
|
50
|
+
/** Sent when the combobox input loses focus. */
|
|
51
|
+
export declare const BlurredInput: import("../../schema/index.js").CallableTaggedStruct<"BlurredInput", {}>;
|
|
52
52
|
/** Sent when an item is highlighted via arrow keys or mouse hover. Includes activation trigger and optional immediate selection info. */
|
|
53
53
|
export declare const ActivatedItem: import("../../schema/index.js").CallableTaggedStruct<"ActivatedItem", {
|
|
54
54
|
index: typeof S.Number;
|
|
@@ -89,6 +89,12 @@ export declare const CompletedFocusInput: import("../../schema/index.js").Callab
|
|
|
89
89
|
export declare const CompletedScrollIntoView: import("../../schema/index.js").CallableTaggedStruct<"CompletedScrollIntoView", {}>;
|
|
90
90
|
/** Sent when the programmatic item click command completes. */
|
|
91
91
|
export declare const CompletedClickItem: import("../../schema/index.js").CallableTaggedStruct<"CompletedClickItem", {}>;
|
|
92
|
+
/** Sent when the items panel mounts and Floating UI has positioned it. Update no-ops; surfaces the positioning side effect for DevTools. */
|
|
93
|
+
export declare const CompletedAnchorMount: import("../../schema/index.js").CallableTaggedStruct<"CompletedAnchorMount", {}>;
|
|
94
|
+
/** Sent when the items panel mounts and the capture-phase pointerdown listener is attached (with or without anchor). Update no-ops; surfaces the listener-attach side effect for DevTools. */
|
|
95
|
+
export declare const CompletedAttachPreventBlur: import("../../schema/index.js").CallableTaggedStruct<"CompletedAttachPreventBlur", {}>;
|
|
96
|
+
/** Sent when the input mounts and the focus listener that auto-selects on focus is attached. Update no-ops; surfaces the listener-attach side effect for DevTools. */
|
|
97
|
+
export declare const CompletedAttachSelectOnFocus: import("../../schema/index.js").CallableTaggedStruct<"CompletedAttachSelectOnFocus", {}>;
|
|
92
98
|
/** Wraps an Animation submodel message for delegation. */
|
|
93
99
|
export declare const GotAnimationMessage: import("../../schema/index.js").CallableTaggedStruct<"GotAnimationMessage", {
|
|
94
100
|
message: S.Union<[import("../../schema/index.js").CallableTaggedStruct<"Showed", {}>, import("../../schema/index.js").CallableTaggedStruct<"Hid", {}>, import("../../schema/index.js").CallableTaggedStruct<"AdvancedAnimationFrame", {}>, import("../../schema/index.js").CallableTaggedStruct<"EndedAnimation", {}>]>;
|
|
@@ -103,7 +109,7 @@ export declare const PressedToggleButton: import("../../schema/index.js").Callab
|
|
|
103
109
|
export declare const Message: S.Union<[
|
|
104
110
|
typeof Opened,
|
|
105
111
|
typeof Closed,
|
|
106
|
-
typeof
|
|
112
|
+
typeof BlurredInput,
|
|
107
113
|
typeof ActivatedItem,
|
|
108
114
|
typeof DeactivatedItem,
|
|
109
115
|
typeof SelectedItem,
|
|
@@ -116,13 +122,16 @@ export declare const Message: S.Union<[
|
|
|
116
122
|
typeof CompletedFocusInput,
|
|
117
123
|
typeof CompletedScrollIntoView,
|
|
118
124
|
typeof CompletedClickItem,
|
|
125
|
+
typeof CompletedAnchorMount,
|
|
126
|
+
typeof CompletedAttachPreventBlur,
|
|
127
|
+
typeof CompletedAttachSelectOnFocus,
|
|
119
128
|
typeof GotAnimationMessage,
|
|
120
129
|
typeof UpdatedInputValue,
|
|
121
130
|
typeof PressedToggleButton
|
|
122
131
|
]>;
|
|
123
132
|
export type Opened = typeof Opened.Type;
|
|
124
133
|
export type Closed = typeof Closed.Type;
|
|
125
|
-
export type
|
|
134
|
+
export type BlurredInput = typeof BlurredInput.Type;
|
|
126
135
|
export type ActivatedItem = typeof ActivatedItem.Type;
|
|
127
136
|
export type DeactivatedItem = typeof DeactivatedItem.Type;
|
|
128
137
|
export type SelectedItem = typeof SelectedItem.Type;
|
|
@@ -201,8 +210,6 @@ export declare const makeUpdate: <Model extends BaseModel>(handlers: Readonly<{
|
|
|
201
210
|
name: string;
|
|
202
211
|
effect: Effect.Effect<{
|
|
203
212
|
readonly _tag: "Closed";
|
|
204
|
-
} | {
|
|
205
|
-
readonly _tag: "ClosedByTab";
|
|
206
213
|
} | {
|
|
207
214
|
readonly _tag: "DeactivatedItem";
|
|
208
215
|
} | {
|
|
@@ -217,9 +224,13 @@ export declare const makeUpdate: <Model extends BaseModel>(handlers: Readonly<{
|
|
|
217
224
|
readonly _tag: "CompletedScrollIntoView";
|
|
218
225
|
} | {
|
|
219
226
|
readonly _tag: "CompletedClickItem";
|
|
227
|
+
} | {
|
|
228
|
+
readonly _tag: "CompletedAnchorMount";
|
|
220
229
|
} | {
|
|
221
230
|
readonly _tag: "Opened";
|
|
222
231
|
readonly maybeActiveItemIndex: Option.Option<number>;
|
|
232
|
+
} | {
|
|
233
|
+
readonly _tag: "BlurredInput";
|
|
223
234
|
} | {
|
|
224
235
|
readonly _tag: "ActivatedItem";
|
|
225
236
|
readonly activationTrigger: "Pointer" | "Keyboard";
|
|
@@ -242,6 +253,10 @@ export declare const makeUpdate: <Model extends BaseModel>(handlers: Readonly<{
|
|
|
242
253
|
readonly index: number;
|
|
243
254
|
} | {
|
|
244
255
|
readonly _tag: "CompletedFocusInput";
|
|
256
|
+
} | {
|
|
257
|
+
readonly _tag: "CompletedAttachPreventBlur";
|
|
258
|
+
} | {
|
|
259
|
+
readonly _tag: "CompletedAttachSelectOnFocus";
|
|
245
260
|
} | {
|
|
246
261
|
readonly _tag: "GotAnimationMessage";
|
|
247
262
|
readonly message: {
|
|
@@ -273,7 +288,7 @@ export type GroupHeading = Readonly<{
|
|
|
273
288
|
/** Configuration for rendering a combobox with `view`. */
|
|
274
289
|
export type BaseViewConfig<Message, Item extends string, Model extends BaseModel> = Readonly<{
|
|
275
290
|
model: Model;
|
|
276
|
-
toParentMessage: (message: Opened | Closed |
|
|
291
|
+
toParentMessage: (message: Opened | Closed | BlurredInput | ActivatedItem | DeactivatedItem | SelectedItem | MovedPointerOverItem | RequestedItemClick | UpdatedInputValue | PressedToggleButton | typeof CompletedAnchorMount.Type | typeof CompletedAttachPreventBlur.Type | typeof CompletedAttachSelectOnFocus.Type) => Message;
|
|
277
292
|
onSelectedItem?: (value: string) => Message;
|
|
278
293
|
items: ReadonlyArray<Item>;
|
|
279
294
|
itemToConfig: (item: Item, context: Readonly<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/ui/combobox/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,MAAM,EAEN,MAAM,EAEN,MAAM,IAAI,CAAC,EAEZ,MAAM,QAAQ,CAAA;AAEf,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AAEjD,OAAO,
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/ui/combobox/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Array, Effect, Match as M, Option, Predicate, Schema as S, pipe, } from 'effect';
|
|
2
2
|
import * as Command from '../../command/index.js';
|
|
3
3
|
import { OptionExt } from '../../effectExtensions/index.js';
|
|
4
|
-
import { html } from '../../html/index.js';
|
|
4
|
+
import { html, } from '../../html/index.js';
|
|
5
5
|
import { m } from '../../message/index.js';
|
|
6
|
+
import * as Mount from '../../mount/index.js';
|
|
6
7
|
import { makeConstrainedEvo } from '../../struct/index.js';
|
|
7
8
|
import * as Task from '../../task/index.js';
|
|
8
|
-
import {
|
|
9
|
+
import { anchorSetup } from '../anchor.js';
|
|
9
10
|
// NOTE: Animation imports are split across schema + update to avoid a circular
|
|
10
11
|
// dependency: animation → html → runtime → devtools → combobox → animation.
|
|
11
12
|
// The barrel (../animation) imports from html, which starts the cycle.
|
|
@@ -54,8 +55,8 @@ export const Opened = m('Opened', {
|
|
|
54
55
|
});
|
|
55
56
|
/** Sent when the combobox closes via Escape key or backdrop click. */
|
|
56
57
|
export const Closed = m('Closed');
|
|
57
|
-
/** Sent when
|
|
58
|
-
export const
|
|
58
|
+
/** Sent when the combobox input loses focus. */
|
|
59
|
+
export const BlurredInput = m('BlurredInput');
|
|
59
60
|
/** Sent when an item is highlighted via arrow keys or mouse hover. Includes activation trigger and optional immediate selection info. */
|
|
60
61
|
export const ActivatedItem = m('ActivatedItem', {
|
|
61
62
|
index: S.Number,
|
|
@@ -93,6 +94,12 @@ export const CompletedFocusInput = m('CompletedFocusInput');
|
|
|
93
94
|
export const CompletedScrollIntoView = m('CompletedScrollIntoView');
|
|
94
95
|
/** Sent when the programmatic item click command completes. */
|
|
95
96
|
export const CompletedClickItem = m('CompletedClickItem');
|
|
97
|
+
/** Sent when the items panel mounts and Floating UI has positioned it. Update no-ops; surfaces the positioning side effect for DevTools. */
|
|
98
|
+
export const CompletedAnchorMount = m('CompletedAnchorMount');
|
|
99
|
+
/** Sent when the items panel mounts and the capture-phase pointerdown listener is attached (with or without anchor). Update no-ops; surfaces the listener-attach side effect for DevTools. */
|
|
100
|
+
export const CompletedAttachPreventBlur = m('CompletedAttachPreventBlur');
|
|
101
|
+
/** Sent when the input mounts and the focus listener that auto-selects on focus is attached. Update no-ops; surfaces the listener-attach side effect for DevTools. */
|
|
102
|
+
export const CompletedAttachSelectOnFocus = m('CompletedAttachSelectOnFocus');
|
|
96
103
|
/** Wraps an Animation submodel message for delegation. */
|
|
97
104
|
export const GotAnimationMessage = m('GotAnimationMessage', {
|
|
98
105
|
message: AnimationMessage,
|
|
@@ -104,7 +111,7 @@ export const UpdatedInputValue = m('UpdatedInputValue', {
|
|
|
104
111
|
/** Sent when the optional toggle button is clicked. */
|
|
105
112
|
export const PressedToggleButton = m('PressedToggleButton');
|
|
106
113
|
/** Union of all messages the combobox component can produce. */
|
|
107
|
-
export const Message = S.Union(Opened, Closed,
|
|
114
|
+
export const Message = S.Union(Opened, Closed, BlurredInput, ActivatedItem, DeactivatedItem, SelectedItem, MovedPointerOverItem, RequestedItemClick, CompletedLockScroll, CompletedUnlockScroll, CompletedSetupInert, CompletedTeardownInert, CompletedFocusInput, CompletedScrollIntoView, CompletedClickItem, CompletedAnchorMount, CompletedAttachPreventBlur, CompletedAttachSelectOnFocus, GotAnimationMessage, UpdatedInputValue, PressedToggleButton);
|
|
108
115
|
// SELECTORS
|
|
109
116
|
export const inputSelector = (id) => `#${id}-input`;
|
|
110
117
|
export const inputWrapperSelector = (id) => `#${id}-input-wrapper`;
|
|
@@ -203,7 +210,7 @@ export const makeUpdate = (handlers) => {
|
|
|
203
210
|
maybeLastPointerPosition: () => Option.none(),
|
|
204
211
|
})),
|
|
205
212
|
Closed: () => closeCombobox(model, [focusInput]),
|
|
206
|
-
|
|
213
|
+
BlurredInput: () => closeCombobox(model, []),
|
|
207
214
|
ActivatedItem: ({ index, activationTrigger, maybeImmediateSelection, }) => {
|
|
208
215
|
const highlightedModel = constrainedEvo(model, {
|
|
209
216
|
maybeActiveItemIndex: () => Option.some(index),
|
|
@@ -299,12 +306,42 @@ export const makeUpdate = (handlers) => {
|
|
|
299
306
|
CompletedFocusInput: () => [model, []],
|
|
300
307
|
CompletedScrollIntoView: () => [model, []],
|
|
301
308
|
CompletedClickItem: () => [model, []],
|
|
309
|
+
CompletedAnchorMount: () => [model, []],
|
|
310
|
+
CompletedAttachPreventBlur: () => [model, []],
|
|
311
|
+
CompletedAttachSelectOnFocus: () => [model, []],
|
|
302
312
|
}));
|
|
303
313
|
};
|
|
304
314
|
};
|
|
315
|
+
const ComboboxAnchor = Mount.define('ComboboxAnchor', CompletedAnchorMount);
|
|
316
|
+
const ComboboxAttachPreventBlur = Mount.define('ComboboxAttachPreventBlur', CompletedAttachPreventBlur);
|
|
317
|
+
const ComboboxAttachSelectOnFocus = Mount.define('ComboboxAttachSelectOnFocus', CompletedAttachSelectOnFocus);
|
|
318
|
+
const attachPreventBlurOnPointerDown = ComboboxAttachPreventBlur((element) => Effect.sync(() => {
|
|
319
|
+
const handler = (event) => {
|
|
320
|
+
event.preventDefault();
|
|
321
|
+
};
|
|
322
|
+
element.addEventListener('pointerdown', handler, { capture: true });
|
|
323
|
+
return {
|
|
324
|
+
message: CompletedAttachPreventBlur(),
|
|
325
|
+
cleanup: () => element.removeEventListener('pointerdown', handler, {
|
|
326
|
+
capture: true,
|
|
327
|
+
}),
|
|
328
|
+
};
|
|
329
|
+
}));
|
|
330
|
+
const attachSelectOnFocus = ComboboxAttachSelectOnFocus((element) => Effect.sync(() => {
|
|
331
|
+
const handler = () => {
|
|
332
|
+
if (element instanceof HTMLInputElement) {
|
|
333
|
+
element.select();
|
|
334
|
+
}
|
|
335
|
+
};
|
|
336
|
+
element.addEventListener('focus', handler);
|
|
337
|
+
return {
|
|
338
|
+
message: CompletedAttachSelectOnFocus(),
|
|
339
|
+
cleanup: () => element.removeEventListener('focus', handler),
|
|
340
|
+
};
|
|
341
|
+
}));
|
|
305
342
|
/** Creates a combobox view function from variant-specific behavior. Shared rendering logic (input, items, transitions, keyboard navigation) is handled internally; only selection display varies by variant. */
|
|
306
343
|
export const makeView = (behavior) => (config) => {
|
|
307
|
-
const { div, input, AriaActiveDescendant, AriaControls, AriaDisabled, AriaExpanded, AriaInvalid, AriaLabelledBy, AriaMultiSelectable, AriaSelected, Attribute, Autocomplete, Class, DataAttribute, Id, Name, OnBlur, OnClick,
|
|
344
|
+
const { div, input, AriaActiveDescendant, AriaControls, AriaDisabled, AriaExpanded, AriaInvalid, AriaLabelledBy, AriaMultiSelectable, AriaSelected, Attribute, Autocomplete, Class, DataAttribute, Id, Name, OnBlur, OnClick, OnFocus, OnInput, OnKeyDownPreventDefault, OnMount, OnPointerLeave, OnPointerMove, Placeholder, Role, Style, Tabindex, Type, Value, keyed, } = html();
|
|
308
345
|
const { model: { id, isOpen, immediate, animation: { transitionState }, maybeActiveItemIndex, }, toParentMessage, onSelectedItem, items, itemToConfig, itemToValue, itemToDisplayText, isItemDisabled, inputClassName, inputAttributes = [], inputPlaceholder, inputWrapperClassName, inputWrapperAttributes = [], itemsClassName, itemsAttributes = [], itemsScrollClassName, itemsScrollAttributes = [], backdropClassName, backdropAttributes = [], className, attributes = [], buttonContent, buttonClassName, buttonAttributes = [], formName, isDisabled, isInvalid, openOnFocus, itemGroupKey, groupToHeading, groupClassName, groupAttributes = [], separatorClassName, separatorAttributes = [], anchor, } = config;
|
|
309
346
|
const dispatchSelectedItem = (item, index) => onSelectedItem
|
|
310
347
|
? onSelectedItem(itemToValue(item, index))
|
|
@@ -386,11 +423,6 @@ export const makeView = (behavior) => (config) => {
|
|
|
386
423
|
maybeImmediateSelection: resolveImmediateSelection(targetIndex),
|
|
387
424
|
})));
|
|
388
425
|
}), M.orElse(() => Option.none()));
|
|
389
|
-
const preventBlurOnPointerDown = (element) => {
|
|
390
|
-
element.addEventListener('pointerdown', (event) => {
|
|
391
|
-
event.preventDefault();
|
|
392
|
-
}, { capture: true });
|
|
393
|
-
};
|
|
394
426
|
const maybeActiveDescendant = Option.match(maybeActiveItemIndex, {
|
|
395
427
|
onNone: () => [],
|
|
396
428
|
onSome: index => [AriaActiveDescendant(itemId(id, index))],
|
|
@@ -411,7 +443,7 @@ export const makeView = (behavior) => (config) => {
|
|
|
411
443
|
: [
|
|
412
444
|
OnInput(value => toParentMessage(UpdatedInputValue({ value }))),
|
|
413
445
|
OnKeyDownPreventDefault(handleInputKeyDown),
|
|
414
|
-
OnBlur(toParentMessage(
|
|
446
|
+
OnBlur(toParentMessage(BlurredInput())),
|
|
415
447
|
...(openOnFocus
|
|
416
448
|
? [
|
|
417
449
|
OnFocus(toParentMessage(Opened({ maybeActiveItemIndex: Option.none() }))),
|
|
@@ -421,36 +453,40 @@ export const makeView = (behavior) => (config) => {
|
|
|
421
453
|
...(isInvalid ? [AriaInvalid(true), DataAttribute('invalid', '')] : []),
|
|
422
454
|
...(isVisible ? [DataAttribute('open', '')] : []),
|
|
423
455
|
...(config.model.selectInputOnFocus
|
|
424
|
-
? [
|
|
425
|
-
OnInsert((element) => {
|
|
426
|
-
element.addEventListener('focus', () => {
|
|
427
|
-
if (element instanceof HTMLInputElement) {
|
|
428
|
-
element.select();
|
|
429
|
-
}
|
|
430
|
-
});
|
|
431
|
-
}),
|
|
432
|
-
]
|
|
456
|
+
? [OnMount(Mount.mapMessage(attachSelectOnFocus, toParentMessage))]
|
|
433
457
|
: []),
|
|
434
458
|
...(inputClassName ? [Class(inputClassName)] : []),
|
|
435
459
|
...inputAttributes,
|
|
436
460
|
];
|
|
437
|
-
const
|
|
438
|
-
? anchorHooks({
|
|
439
|
-
buttonId: `${id}-input-wrapper`,
|
|
440
|
-
anchor,
|
|
441
|
-
interceptTab: false,
|
|
442
|
-
})
|
|
443
|
-
: undefined;
|
|
444
|
-
const anchorAttributes = hooks
|
|
461
|
+
const anchorAttributes = anchor
|
|
445
462
|
? [
|
|
446
463
|
Style({ position: 'absolute', margin: '0', visibility: 'hidden' }),
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
464
|
+
OnMount(Mount.mapMessage(ComboboxAnchor((items) => Effect.sync(() => {
|
|
465
|
+
const preventBlur = (event) => {
|
|
466
|
+
event.preventDefault();
|
|
467
|
+
};
|
|
468
|
+
items.addEventListener('pointerdown', preventBlur, {
|
|
469
|
+
capture: true,
|
|
470
|
+
});
|
|
471
|
+
const teardownAnchor = anchorSetup({
|
|
472
|
+
buttonId: `${id}-input-wrapper`,
|
|
473
|
+
anchor,
|
|
474
|
+
interceptTab: false,
|
|
475
|
+
})(items);
|
|
476
|
+
return {
|
|
477
|
+
message: CompletedAnchorMount(),
|
|
478
|
+
cleanup: () => {
|
|
479
|
+
items.removeEventListener('pointerdown', preventBlur, {
|
|
480
|
+
capture: true,
|
|
481
|
+
});
|
|
482
|
+
teardownAnchor();
|
|
483
|
+
},
|
|
484
|
+
};
|
|
485
|
+
})), toParentMessage)),
|
|
452
486
|
]
|
|
453
|
-
: [
|
|
487
|
+
: [
|
|
488
|
+
OnMount(Mount.mapMessage(attachPreventBlurOnPointerDown, toParentMessage)),
|
|
489
|
+
];
|
|
454
490
|
const itemsContainerAttributes = [
|
|
455
491
|
Id(`${id}-items`),
|
|
456
492
|
Role('listbox'),
|
|
@@ -573,7 +609,7 @@ export const makeView = (behavior) => (config) => {
|
|
|
573
609
|
...(isDisabled
|
|
574
610
|
? [AriaDisabled(true), DataAttribute('disabled', '')]
|
|
575
611
|
: [OnClick(toParentMessage(PressedToggleButton()))]),
|
|
576
|
-
|
|
612
|
+
OnMount(Mount.mapMessage(attachPreventBlurOnPointerDown, toParentMessage)),
|
|
577
613
|
...(buttonClassName ? [Class(buttonClassName)] : []),
|
|
578
614
|
...buttonAttributes,
|
|
579
615
|
], [buttonContent]),
|
|
@@ -86,8 +86,6 @@ export declare const update: (model: {
|
|
|
86
86
|
name: string;
|
|
87
87
|
effect: import("effect/Effect").Effect<{
|
|
88
88
|
readonly _tag: "Closed";
|
|
89
|
-
} | {
|
|
90
|
-
readonly _tag: "ClosedByTab";
|
|
91
89
|
} | {
|
|
92
90
|
readonly _tag: "DeactivatedItem";
|
|
93
91
|
} | {
|
|
@@ -102,9 +100,13 @@ export declare const update: (model: {
|
|
|
102
100
|
readonly _tag: "CompletedScrollIntoView";
|
|
103
101
|
} | {
|
|
104
102
|
readonly _tag: "CompletedClickItem";
|
|
103
|
+
} | {
|
|
104
|
+
readonly _tag: "CompletedAnchorMount";
|
|
105
105
|
} | {
|
|
106
106
|
readonly _tag: "Opened";
|
|
107
107
|
readonly maybeActiveItemIndex: Option.Option<number>;
|
|
108
|
+
} | {
|
|
109
|
+
readonly _tag: "BlurredInput";
|
|
108
110
|
} | {
|
|
109
111
|
readonly _tag: "ActivatedItem";
|
|
110
112
|
readonly activationTrigger: "Pointer" | "Keyboard";
|
|
@@ -127,6 +129,10 @@ export declare const update: (model: {
|
|
|
127
129
|
readonly index: number;
|
|
128
130
|
} | {
|
|
129
131
|
readonly _tag: "CompletedFocusInput";
|
|
132
|
+
} | {
|
|
133
|
+
readonly _tag: "CompletedAttachPreventBlur";
|
|
134
|
+
} | {
|
|
135
|
+
readonly _tag: "CompletedAttachSelectOnFocus";
|
|
130
136
|
} | {
|
|
131
137
|
readonly _tag: "GotAnimationMessage";
|
|
132
138
|
readonly message: {
|
|
@@ -182,7 +188,13 @@ export declare const view: <Message, Item extends string>(config: Readonly<{
|
|
|
182
188
|
readonly maybeSelectedItem: Option.Option<string>;
|
|
183
189
|
readonly maybeSelectedDisplayText: Option.Option<string>;
|
|
184
190
|
};
|
|
185
|
-
toParentMessage: (message: Opened | Closed | import("./shared.js").
|
|
191
|
+
toParentMessage: (message: Opened | Closed | import("./shared.js").BlurredInput | import("./shared.js").ActivatedItem | import("./shared.js").DeactivatedItem | SelectedItem | import("./shared.js").MovedPointerOverItem | import("./shared.js").RequestedItemClick | import("./shared.js").UpdatedInputValue | import("./shared.js").PressedToggleButton | {
|
|
192
|
+
readonly _tag: "CompletedAnchorMount";
|
|
193
|
+
} | {
|
|
194
|
+
readonly _tag: "CompletedAttachPreventBlur";
|
|
195
|
+
} | {
|
|
196
|
+
readonly _tag: "CompletedAttachSelectOnFocus";
|
|
197
|
+
}) => Message;
|
|
186
198
|
onSelectedItem?: (value: string) => Message;
|
|
187
199
|
items: readonly Item[];
|
|
188
200
|
itemToConfig: (item: Item, context: Readonly<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"single.d.ts","sourceRoot":"","sources":["../../../src/ui/combobox/single.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,IAAI,CAAC,EAAQ,MAAM,QAAQ,CAAA;AAEzD,OAAO,KAAK,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,KAAK,IAAI,EAAc,MAAM,qBAAqB,CAAA;AAE3D,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,MAAM,EACN,KAAK,OAAO,EACZ,MAAM,EACN,YAAY,EAKb,MAAM,aAAa,CAAA;AAIpB,uJAAuJ;AACvJ,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;GAOjB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,8RAA8R;AAC9R,MAAM,MAAM,UAAU,GAAG,cAAc,GACrC,QAAQ,CAAC;IACP,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B,CAAC,CAAA;AAEJ,4IAA4I;AAC5I,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAMxC,CAAA;AAIF,uIAAuI;AACvI,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"single.d.ts","sourceRoot":"","sources":["../../../src/ui/combobox/single.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,IAAI,CAAC,EAAQ,MAAM,QAAQ,CAAA;AAEzD,OAAO,KAAK,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,KAAK,IAAI,EAAc,MAAM,qBAAqB,CAAA;AAE3D,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,MAAM,EACN,KAAK,OAAO,EACZ,MAAM,EACN,YAAY,EAKb,MAAM,aAAa,CAAA;AAIpB,uJAAuJ;AACvJ,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;GAOjB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,8RAA8R;AAC9R,MAAM,MAAM,UAAU,GAAG,cAAc,GACrC,QAAQ,CAAC;IACP,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B,CAAC,CAAA;AAEJ,4IAA4I;AAC5I,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAMxC,CAAA;AAIF,uIAAuI;AACvI,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiDjB,CAAA;AAEF;wFACwF;AACxF,eAAO,MAAM,IAAI,GACf,OAAO,KAAK,KACX,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CACK,CAAA;AAEhE;yFACyF;AACzF,eAAO,MAAM,KAAK,GAChB,OAAO,KAAK,KACX,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAClC,CAAA;AAEzB;iGACiG;AACjG,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,EACZ,MAAM,MAAM,EACZ,aAAa,MAAM,KAClB,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CACP,CAAA;AAIpD,wEAAwE;AACxE,MAAM,MAAM,UAAU,CAAC,OAAO,EAAE,IAAI,SAAS,MAAM,IAAI,cAAc,CACnE,OAAO,EACP,IAAI,EACJ,KAAK,CACN,CAAA;AAED,0IAA0I;AAC1I,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAOf,CAAA;AAEF;mFACmF;AACnF,eAAO,MAAM,IAAI,GAAI,OAAO,EAAE,IAAI,SAAS,MAAM,EAC/C,cAAc,IAAI,CAChB,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,EACzB,OAAO,GAAG,iBAAiB,GAAG,gBAAgB,CAC/C,KACA,CAAC,CACF,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,iBAAiB,CAAC,KACrE,IAAI,CAoBR,CAAA"}
|
|
@@ -24,6 +24,7 @@ export declare const Model: S.Struct<{
|
|
|
24
24
|
}>>;
|
|
25
25
|
viewYear: typeof S.Int;
|
|
26
26
|
viewMonth: S.filter<typeof S.Int>;
|
|
27
|
+
viewMode: S.Literal<["Days", "Months", "Years"]>;
|
|
27
28
|
maybeFocusedDate: S.OptionFromSelf<S.filter<S.Struct<{
|
|
28
29
|
year: typeof S.Int;
|
|
29
30
|
month: S.filter<typeof S.Int>;
|
|
@@ -85,10 +86,12 @@ export declare const GotCalendarMessage: import("../../schema/index.js").Callabl
|
|
|
85
86
|
}>, import("../../schema/index.js").CallableTaggedStruct<"PressedKeyOnGrid", {
|
|
86
87
|
key: typeof S.String;
|
|
87
88
|
isShift: typeof S.Boolean;
|
|
88
|
-
}>, import("../../schema/index.js").CallableTaggedStruct<"ClickedPreviousMonthButton", {}>, import("../../schema/index.js").CallableTaggedStruct<"ClickedNextMonthButton", {}>, import("../../schema/index.js").CallableTaggedStruct<"
|
|
89
|
+
}>, import("../../schema/index.js").CallableTaggedStruct<"ClickedPreviousMonthButton", {}>, import("../../schema/index.js").CallableTaggedStruct<"ClickedNextMonthButton", {}>, import("../../schema/index.js").CallableTaggedStruct<"ClickedHeading", {}>, import("../../schema/index.js").CallableTaggedStruct<"SelectedMonth", {
|
|
89
90
|
month: typeof S.Int;
|
|
90
|
-
}>, import("../../schema/index.js").CallableTaggedStruct<"
|
|
91
|
+
}>, import("../../schema/index.js").CallableTaggedStruct<"SelectedYear", {
|
|
91
92
|
year: typeof S.Int;
|
|
93
|
+
}>, import("../../schema/index.js").CallableTaggedStruct<"PagedYears", {
|
|
94
|
+
direction: S.Literal<[1, -1]>;
|
|
92
95
|
}>, import("../../schema/index.js").CallableTaggedStruct<"FocusedGrid", {}>, import("../../schema/index.js").CallableTaggedStruct<"BlurredGrid", {}>, import("../../schema/index.js").CallableTaggedStruct<"RefreshedToday", {
|
|
93
96
|
today: S.filter<S.Struct<{
|
|
94
97
|
year: typeof S.Int;
|
|
@@ -99,10 +102,10 @@ export declare const GotCalendarMessage: import("../../schema/index.js").Callabl
|
|
|
99
102
|
}>;
|
|
100
103
|
/** Wraps a Popover submodel message for delegation. */
|
|
101
104
|
export declare const GotPopoverMessage: import("../../schema/index.js").CallableTaggedStruct<"GotPopoverMessage", {
|
|
102
|
-
message: S.Union<[import("../../schema/index.js").CallableTaggedStruct<"Opened", {}>, import("../../schema/index.js").CallableTaggedStruct<"Closed", {}>, import("../../schema/index.js").CallableTaggedStruct<"
|
|
105
|
+
message: S.Union<[import("../../schema/index.js").CallableTaggedStruct<"Opened", {}>, import("../../schema/index.js").CallableTaggedStruct<"Closed", {}>, import("../../schema/index.js").CallableTaggedStruct<"BlurredPanel", {}>, import("../../schema/index.js").CallableTaggedStruct<"PressedPointerOnButton", {
|
|
103
106
|
pointerType: typeof S.String;
|
|
104
107
|
button: typeof S.Number;
|
|
105
|
-
}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedFocusPanel", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedFocusButton", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedLockScroll", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedUnlockScroll", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedSetupInert", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedTeardownInert", {}>, import("../../schema/index.js").CallableTaggedStruct<"IgnoredMouseClick", {}>, import("../../schema/index.js").CallableTaggedStruct<"SuppressedSpaceScroll", {}>, import("../../schema/index.js").CallableTaggedStruct<"GotAnimationMessage", {
|
|
108
|
+
}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedFocusPanel", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedFocusButton", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedLockScroll", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedUnlockScroll", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedSetupInert", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedTeardownInert", {}>, import("../../schema/index.js").CallableTaggedStruct<"IgnoredMouseClick", {}>, import("../../schema/index.js").CallableTaggedStruct<"SuppressedSpaceScroll", {}>, import("../../schema/index.js").CallableTaggedStruct<"CompletedAnchorMount", {}>, import("../../schema/index.js").CallableTaggedStruct<"GotAnimationMessage", {
|
|
106
109
|
message: S.Union<[import("../../schema/index.js").CallableTaggedStruct<"Showed", {}>, import("../../schema/index.js").CallableTaggedStruct<"Hid", {}>, import("../../schema/index.js").CallableTaggedStruct<"AdvancedAnimationFrame", {}>, import("../../schema/index.js").CallableTaggedStruct<"EndedAnimation", {}>]>;
|
|
107
110
|
}>]>;
|
|
108
111
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/datePicker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhE,OAAO,KAAK,QAAQ,MAAM,yBAAyB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACjD,OAAO,EACL,KAAK,SAAS,EACd,KAAK,IAAI,EAGV,MAAM,qBAAqB,CAAA;AAG5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,KAAK,UAAU,MAAM,sBAAsB,CAAA;AAKlD;;mDAEmD;AACnD,eAAO,MAAM,KAAK
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/datePicker/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,7 +108,10 @@ export const update = (model, message) => M.value(message).pipe(withUpdateReturn
|
|
|
108
108
|
Opened: () => {
|
|
109
109
|
const [nextPopover, popoverCommands] = Popover.open(model.popover);
|
|
110
110
|
return [
|
|
111
|
-
evo(model, {
|
|
111
|
+
evo(model, {
|
|
112
|
+
popover: () => nextPopover,
|
|
113
|
+
calendar: () => UiCalendar.dropToDays(model.calendar),
|
|
114
|
+
}),
|
|
112
115
|
mapPopoverCommands(popoverCommands),
|
|
113
116
|
Option.none(),
|
|
114
117
|
];
|
|
@@ -116,7 +119,10 @@ export const update = (model, message) => M.value(message).pipe(withUpdateReturn
|
|
|
116
119
|
Closed: () => {
|
|
117
120
|
const [nextPopover, popoverCommands] = Popover.close(model.popover);
|
|
118
121
|
return [
|
|
119
|
-
evo(model, {
|
|
122
|
+
evo(model, {
|
|
123
|
+
popover: () => nextPopover,
|
|
124
|
+
calendar: () => UiCalendar.dropToDays(model.calendar),
|
|
125
|
+
}),
|
|
120
126
|
mapPopoverCommands(popoverCommands),
|
|
121
127
|
Option.none(),
|
|
122
128
|
];
|
|
@@ -86,7 +86,7 @@ export declare const update: (model: {
|
|
|
86
86
|
} | {
|
|
87
87
|
readonly _tag: "Closed";
|
|
88
88
|
} | {
|
|
89
|
-
readonly _tag: "
|
|
89
|
+
readonly _tag: "BlurredItems";
|
|
90
90
|
} | {
|
|
91
91
|
readonly _tag: "ActivatedItem";
|
|
92
92
|
readonly activationTrigger: "Pointer" | "Keyboard";
|
|
@@ -131,6 +131,10 @@ export declare const update: (model: {
|
|
|
131
131
|
readonly _tag: "IgnoredMouseClick";
|
|
132
132
|
} | {
|
|
133
133
|
readonly _tag: "SuppressedSpaceScroll";
|
|
134
|
+
} | {
|
|
135
|
+
readonly _tag: "CompletedAnchorMount";
|
|
136
|
+
} | {
|
|
137
|
+
readonly _tag: "CompletedFocusItemsOnMount";
|
|
134
138
|
} | {
|
|
135
139
|
readonly _tag: "GotAnimationMessage";
|
|
136
140
|
readonly message: {
|
|
@@ -183,7 +187,11 @@ export declare const view: <Message, Item>(config: Readonly<{
|
|
|
183
187
|
} & {
|
|
184
188
|
readonly selectedItems: readonly string[];
|
|
185
189
|
};
|
|
186
|
-
toParentMessage: (message: Opened | Closed | import("./shared.js").
|
|
190
|
+
toParentMessage: (message: Opened | Closed | import("./shared.js").BlurredItems | import("./shared.js").ActivatedItem | import("./shared.js").DeactivatedItem | SelectedItem | import("./shared.js").MovedPointerOverItem | import("./shared.js").RequestedItemClick | import("./shared.js").Searched | import("./shared.js").PressedPointerOnButton | import("./shared.js").IgnoredMouseClick | import("./shared.js").SuppressedSpaceScroll | {
|
|
191
|
+
readonly _tag: "CompletedAnchorMount";
|
|
192
|
+
} | {
|
|
193
|
+
readonly _tag: "CompletedFocusItemsOnMount";
|
|
194
|
+
}) => Message;
|
|
187
195
|
onSelectedItem?: (value: string) => Message;
|
|
188
196
|
items: readonly Item[];
|
|
189
197
|
itemToConfig: (item: Item, context: Readonly<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi.d.ts","sourceRoot":"","sources":["../../../src/ui/listbox/multi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,IAAI,CAAC,EAAQ,MAAM,QAAQ,CAAA;AAEzD,OAAO,KAAK,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,KAAK,IAAI,EAAc,MAAM,qBAAqB,CAAA;AAE3D,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,MAAM,EACN,KAAK,OAAO,EACZ,MAAM,EACN,YAAY,EAIb,MAAM,aAAa,CAAA;AAIpB,iKAAiK;AACjK,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;GAEjB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,6RAA6R;AAC7R,MAAM,MAAM,UAAU,GAAG,cAAc,GACrC,QAAQ,CAAC;IACP,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;CACtC,CAAC,CAAA;AAEJ,4HAA4H;AAC5H,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAGxC,CAAA;AAIF,wJAAwJ;AACxJ,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"multi.d.ts","sourceRoot":"","sources":["../../../src/ui/listbox/multi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,IAAI,CAAC,EAAQ,MAAM,QAAQ,CAAA;AAEzD,OAAO,KAAK,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,KAAK,IAAI,EAAc,MAAM,qBAAqB,CAAA;AAE3D,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,MAAM,EACN,KAAK,OAAO,EACZ,MAAM,EACN,YAAY,EAIb,MAAM,aAAa,CAAA;AAIpB,iKAAiK;AACjK,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;GAEjB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,6RAA6R;AAC7R,MAAM,MAAM,UAAU,GAAG,cAAc,GACrC,QAAQ,CAAC;IACP,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;CACtC,CAAC,CAAA;AAEJ,4HAA4H;AAC5H,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAGxC,CAAA;AAIF,wJAAwJ;AACxJ,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAMjB,CAAA;AAEF;uFACuF;AACvF,eAAO,MAAM,IAAI,GACf,OAAO,KAAK,KACX,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CACK,CAAA;AAEhE;wFACwF;AACxF,eAAO,MAAM,KAAK,GAChB,OAAO,KAAK,KACX,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAClC,CAAA;AAEzB,8IAA8I;AAC9I,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,EACZ,MAAM,MAAM,KACX,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CACpB,CAAA;AAIvC,sEAAsE;AACtE,MAAM,MAAM,UAAU,CAAC,OAAO,EAAE,IAAI,IAAI,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;AAE5E,0JAA0J;AAC1J,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAYf,CAAA;AAEF;mFACmF;AACnF,eAAO,MAAM,IAAI,GAAI,OAAO,EAAE,IAAI,EAChC,cAAc,IAAI,CAChB,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,EACzB,OAAO,GAAG,iBAAiB,GAAG,gBAAgB,CAC/C,KACA,CAAC,CACF,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,iBAAiB,CAAC,KACrE,IAAI,CAoBR,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { init, update, open, close, selectItem, view, lazy, Model, } from './single.js';
|
|
2
|
-
export { Message, Orientation, SelectedItem, CompletedLockScroll, CompletedUnlockScroll, CompletedSetupInert, CompletedTeardownInert, CompletedFocusButton, CompletedFocusItems, CompletedScrollIntoView, CompletedClickItem, ClearedSearch, GotAnimationMessage, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusButton, FocusItems, ScrollIntoView, ClickItem, DelayClearSearch, DetectMovementOrAnimationEnd, } from './shared.js';
|
|
3
|
-
export type { ActivationTrigger, Opened, Closed,
|
|
2
|
+
export { Message, Orientation, SelectedItem, CompletedLockScroll, CompletedUnlockScroll, CompletedSetupInert, CompletedTeardownInert, CompletedFocusButton, CompletedFocusItems, CompletedScrollIntoView, CompletedClickItem, CompletedAnchorMount, CompletedFocusItemsOnMount, ClearedSearch, GotAnimationMessage, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusButton, FocusItems, ScrollIntoView, ClickItem, DelayClearSearch, DetectMovementOrAnimationEnd, } from './shared.js';
|
|
3
|
+
export type { ActivationTrigger, Opened, Closed, BlurredItems, ActivatedItem, DeactivatedItem, MovedPointerOverItem, RequestedItemClick, Searched, PressedPointerOnButton, IgnoredMouseClick, SuppressedSpaceScroll, ItemConfig, GroupHeading, } from './shared.js';
|
|
4
4
|
export type { InitConfig, ViewConfig } from './single.js';
|
|
5
5
|
export type { AnchorConfig } from '../anchor.js';
|
|
6
6
|
export * as Multi from './multiPublic.js';
|