foldkit 0.82.9 → 0.84.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 -1
- package/dist/devTools/overlay.d.ts.map +1 -1
- package/dist/devTools/overlay.js +66 -4
- package/dist/devTools/protocol.d.ts +19 -2
- package/dist/devTools/protocol.d.ts.map +1 -1
- package/dist/devTools/protocol.js +5 -2
- package/dist/devTools/serialize.d.ts.map +1 -1
- package/dist/devTools/serialize.js +2 -0
- package/dist/devTools/store.d.ts +5 -1
- package/dist/devTools/store.d.ts.map +1 -1
- package/dist/devTools/store.js +37 -1
- package/dist/devTools/webSocketBridge.js +1 -0
- package/dist/html/index.d.ts +11 -0
- package/dist/html/index.d.ts.map +1 -1
- package/dist/html/index.js +58 -39
- package/dist/mount/index.d.ts +14 -1
- package/dist/mount/index.d.ts.map +1 -1
- package/dist/mount/index.js +9 -1
- package/dist/mount/public.d.ts +1 -1
- package/dist/mount/public.d.ts.map +1 -1
- package/dist/mount/public.js +1 -1
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +38 -3
- package/dist/scene/public.d.ts +2 -0
- package/dist/scene/public.d.ts.map +1 -0
- package/dist/scene/public.js +1 -0
- package/dist/story/public.d.ts +2 -0
- package/dist/story/public.d.ts.map +1 -0
- package/dist/story/public.js +1 -0
- package/dist/test/apps/mountPanel.d.ts +42 -0
- package/dist/test/apps/mountPanel.d.ts.map +1 -0
- package/dist/test/apps/mountPanel.js +76 -0
- package/dist/test/internal.d.ts +38 -0
- package/dist/test/internal.d.ts.map +1 -1
- package/dist/test/internal.js +75 -0
- package/dist/test/scene.d.ts +37 -14
- package/dist/test/scene.d.ts.map +1 -1
- package/dist/test/scene.js +141 -8
- package/dist/test/story.d.ts +17 -13
- package/dist/test/story.d.ts.map +1 -1
- package/dist/test/story.js +19 -5
- package/dist/ui/anchor.d.ts +6 -0
- package/dist/ui/anchor.d.ts.map +1 -1
- package/dist/ui/anchor.js +27 -16
- package/dist/ui/animation/index.d.ts +4 -4
- package/dist/ui/animation/index.d.ts.map +1 -1
- package/dist/ui/button/index.d.ts +6 -6
- package/dist/ui/button/index.d.ts.map +1 -1
- package/dist/ui/calendar/index.js +2 -2
- package/dist/ui/checkbox/index.d.ts +10 -10
- package/dist/ui/checkbox/index.d.ts.map +1 -1
- package/dist/ui/checkbox/index.js +2 -2
- package/dist/ui/combobox/multi.d.ts +18 -14
- package/dist/ui/combobox/multi.d.ts.map +1 -1
- package/dist/ui/combobox/multi.js +2 -2
- package/dist/ui/combobox/public.d.ts +1 -1
- 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 +44 -13
- package/dist/ui/combobox/shared.d.ts.map +1 -1
- package/dist/ui/combobox/shared.js +27 -4
- package/dist/ui/combobox/single.d.ts +18 -14
- package/dist/ui/combobox/single.d.ts.map +1 -1
- package/dist/ui/combobox/single.js +2 -2
- package/dist/ui/datePicker/index.d.ts +1 -1
- package/dist/ui/datePicker/index.js +2 -2
- package/dist/ui/dialog/index.d.ts +8 -8
- package/dist/ui/dialog/index.d.ts.map +1 -1
- package/dist/ui/dialog/index.js +2 -2
- package/dist/ui/disclosure/index.d.ts +8 -8
- package/dist/ui/disclosure/index.d.ts.map +1 -1
- package/dist/ui/disclosure/index.js +2 -2
- package/dist/ui/dragAndDrop/index.d.ts +5 -5
- package/dist/ui/dragAndDrop/index.d.ts.map +1 -1
- package/dist/ui/fieldset/index.d.ts +7 -7
- package/dist/ui/fieldset/index.d.ts.map +1 -1
- package/dist/ui/fileDrop/index.js +2 -2
- package/dist/ui/input/index.d.ts +8 -8
- package/dist/ui/input/index.d.ts.map +1 -1
- package/dist/ui/listbox/multi.d.ts +16 -12
- package/dist/ui/listbox/multi.d.ts.map +1 -1
- package/dist/ui/listbox/multi.js +2 -2
- package/dist/ui/listbox/public.d.ts +1 -1
- 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 +35 -11
- package/dist/ui/listbox/shared.d.ts.map +1 -1
- package/dist/ui/listbox/shared.js +22 -3
- package/dist/ui/listbox/single.d.ts +16 -12
- package/dist/ui/listbox/single.d.ts.map +1 -1
- package/dist/ui/listbox/single.js +2 -2
- package/dist/ui/menu/index.d.ts +34 -12
- package/dist/ui/menu/index.d.ts.map +1 -1
- package/dist/ui/menu/index.js +24 -5
- package/dist/ui/menu/public.d.ts +1 -1
- 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 +26 -10
- package/dist/ui/popover/index.d.ts.map +1 -1
- package/dist/ui/popover/index.js +20 -4
- package/dist/ui/popover/public.d.ts +1 -1
- package/dist/ui/popover/public.d.ts.map +1 -1
- package/dist/ui/popover/public.js +1 -1
- package/dist/ui/radioGroup/index.d.ts +13 -13
- package/dist/ui/radioGroup/index.d.ts.map +1 -1
- package/dist/ui/radioGroup/index.js +2 -2
- package/dist/ui/select/index.d.ts +8 -8
- package/dist/ui/select/index.d.ts.map +1 -1
- package/dist/ui/slider/index.d.ts +12 -12
- package/dist/ui/slider/index.d.ts.map +1 -1
- package/dist/ui/slider/index.js +2 -2
- package/dist/ui/switch/index.d.ts +10 -10
- package/dist/ui/switch/index.d.ts.map +1 -1
- package/dist/ui/switch/index.js +2 -2
- package/dist/ui/tabs/index.d.ts +11 -11
- package/dist/ui/tabs/index.d.ts.map +1 -1
- package/dist/ui/tabs/index.js +2 -2
- package/dist/ui/textarea/index.d.ts +8 -8
- package/dist/ui/textarea/index.d.ts.map +1 -1
- package/dist/ui/toast/index.js +2 -2
- package/dist/ui/tooltip/index.d.ts +14 -7
- package/dist/ui/tooltip/index.d.ts.map +1 -1
- package/dist/ui/tooltip/index.js +6 -3
- 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/dist/ui/virtualList/index.d.ts +4 -4
- package/dist/ui/virtualList/index.d.ts.map +1 -1
- package/package.json +9 -1
package/dist/test/story.d.ts
CHANGED
|
@@ -21,21 +21,25 @@ export { with_ as with };
|
|
|
21
21
|
declare const with_: <Model>(model: Model) => WithStep<Model>;
|
|
22
22
|
/** Sends a Message through update. Commands stay pending until resolve or resolveAll. */
|
|
23
23
|
export declare const message: <Message>(message_: NoInfer<Message>) => <Model, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
24
|
-
/** Resolves a specific pending Command with the given result Message. */
|
|
25
|
-
export declare const resolve: {
|
|
26
|
-
<Name extends string, ResultMessage>(definition: CommandDefinition<Name, ResultMessage>, resultMessage: ResultMessage): <Model, Message, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
27
|
-
<Name extends string, ResultMessage, ParentMessage>(definition: CommandDefinition<Name, ResultMessage>, resultMessage: ResultMessage, toParentMessage: (message: ResultMessage) => ParentMessage): <Model, Message, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
28
|
-
};
|
|
29
|
-
/** Resolves all listed Commands with their result Messages. Handles cascading resolution. */
|
|
30
|
-
export declare const resolveAll: <R extends ReadonlyArray<unknown>>(...resolvers: { [K in keyof R]: Resolver<R[K]>; }) => <Model, Message, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
31
24
|
/** Runs an assertion function against the current Model. */
|
|
32
25
|
export declare const model: <Model, Message, OutMessage = undefined>(f: (model: Model) => void) => (simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
33
|
-
/**
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
26
|
+
/** Steps that operate on the pending Commands of a story simulation.
|
|
27
|
+
* Destructure as `const { Command } = Story` for concise call sites. */
|
|
28
|
+
export declare const Command: {
|
|
29
|
+
/** Resolves a specific pending Command with the given result Message. */
|
|
30
|
+
readonly resolve: {
|
|
31
|
+
<Name extends string, ResultMessage>(definition: CommandDefinition<Name, ResultMessage>, resultMessage: ResultMessage): <Model, Message, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
32
|
+
<Name extends string, ResultMessage, ParentMessage>(definition: CommandDefinition<Name, ResultMessage>, resultMessage: ResultMessage, toParentMessage: (message: ResultMessage) => ParentMessage): <Model, Message, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
33
|
+
};
|
|
34
|
+
/** Resolves all listed Commands with their result Messages. Handles cascading resolution. */
|
|
35
|
+
readonly resolveAll: <R extends ReadonlyArray<unknown>>(...resolvers: { [K in keyof R]: Resolver<R[K]>; }) => <Model, Message, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
36
|
+
/** Asserts that every given Command is among the pending Commands. */
|
|
37
|
+
readonly expectHas: (...definitions: ReadonlyArray<CommandDefinition<string, unknown>>) => <Model, Message, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
38
|
+
/** Asserts that the pending Commands match the given definitions exactly (order-independent). */
|
|
39
|
+
readonly expectExact: (...definitions: ReadonlyArray<CommandDefinition<string, unknown>>) => <Model, Message, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
40
|
+
/** Asserts that there are no pending Commands. */
|
|
41
|
+
readonly expectNone: () => <Model, Message, OutMessage = undefined>(simulation: StorySimulation<Model, Message, OutMessage>) => StorySimulation<Model, Message, OutMessage>;
|
|
42
|
+
};
|
|
39
43
|
/** Asserts that the OutMessage is Some with the expected value. */
|
|
40
44
|
export declare const expectOutMessage: <OutMessage>(expected: OutMessage) => <Model, Message>(simulation: StorySimulation<Model, Message, Option.Option<OutMessage>>) => StorySimulation<Model, Message, Option.Option<OutMessage>>;
|
|
41
45
|
/** Asserts that the OutMessage is None. */
|
package/dist/test/story.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../../src/test/story.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAmB,MAAM,QAAQ,CAAA;AAEvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAgB,QAAQ,EAAE,MAAM,eAAe,CAAA;AAWvE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAA;AAEpC,yDAAyD;AACzD,MAAM,MAAM,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,GAAG,SAAS,IAAI,QAAQ,CAAC;IAC7E,iEAAiE;IACjE,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,KAAK,EAAE,KAAK,CAAA;IACZ,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;IACnC,UAAU,EAAE,UAAU,CAAA;CACvB,CAAC,CAAA;AAEF,qGAAqG;AACrG,MAAM,MAAM,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC;IAAE,aAAa,EAAE,KAAK,CAAA;CAAE,CAAC,GAC9D,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,GAAG,SAAS,EAClC,UAAU,EAAE,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,KAChD,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;AAE/C,sFAAsF;AACtF,MAAM,MAAM,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,IAC5C,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GACxB,CAAC,CACC,UAAU,EAAE,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,KACpD,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;AA8BrD,+CAA+C;AAC/C,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,CAAA;AACxB,QAAA,MAAM,KAAK,GAAI,KAAK,EAAE,OAAO,KAAK,KAAG,QAAQ,CAAC,KAAK,CAiBlD,CAAA;AAED,yFAAyF;AACzF,eAAO,MAAM,OAAO,GACjB,OAAO,EAAE,UAAU,OAAO,CAAC,OAAO,CAAC,MACnC,KAAK,EAAE,UAAU,GAAG,SAAS,EAC5B,YAAY,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,KACtD,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAkB5C,CAAA;
|
|
1
|
+
{"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../../src/test/story.ts"],"names":[],"mappings":"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"}
|
package/dist/test/story.js
CHANGED
|
@@ -36,7 +36,7 @@ export const message = (message_) => (simulation) => {
|
|
|
36
36
|
};
|
|
37
37
|
};
|
|
38
38
|
/** Resolves a specific pending Command with the given result Message. */
|
|
39
|
-
|
|
39
|
+
const resolveCommand = (definition, resultMessage, toParentMessage) => (simulation) => {
|
|
40
40
|
/* eslint-disable @typescript-eslint/consistent-type-assertions */
|
|
41
41
|
const internal = toInternal(simulation);
|
|
42
42
|
const messageForUpdate = (Predicate.isUndefined(toParentMessage)
|
|
@@ -55,7 +55,7 @@ export const resolve = (definition, resultMessage, toParentMessage) => (simulati
|
|
|
55
55
|
/* eslint-enable @typescript-eslint/consistent-type-assertions */
|
|
56
56
|
};
|
|
57
57
|
/** Resolves all listed Commands with their result Messages. Handles cascading resolution. */
|
|
58
|
-
|
|
58
|
+
const resolveAllCommands = (...resolvers) => (simulation) =>
|
|
59
59
|
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
60
60
|
resolveAllInternal(toInternal(simulation), resolvers);
|
|
61
61
|
/** Runs an assertion function against the current Model. */
|
|
@@ -64,20 +64,34 @@ export const model = (f) => (simulation) => {
|
|
|
64
64
|
return simulation;
|
|
65
65
|
};
|
|
66
66
|
/** Asserts that every given Command is among the pending Commands. */
|
|
67
|
-
|
|
67
|
+
const expectHasCommandsStep = (...definitions) => (simulation) => {
|
|
68
68
|
assertHasCommands(toInternal(simulation).commands, definitions);
|
|
69
69
|
return simulation;
|
|
70
70
|
};
|
|
71
71
|
/** Asserts that the pending Commands match the given definitions exactly (order-independent). */
|
|
72
|
-
|
|
72
|
+
const expectExactCommandsStep = (...definitions) => (simulation) => {
|
|
73
73
|
assertExactCommands(toInternal(simulation).commands, definitions);
|
|
74
74
|
return simulation;
|
|
75
75
|
};
|
|
76
76
|
/** Asserts that there are no pending Commands. */
|
|
77
|
-
|
|
77
|
+
const expectNoCommandsStep = () => (simulation) => {
|
|
78
78
|
assertZeroCommands(toInternal(simulation).commands);
|
|
79
79
|
return simulation;
|
|
80
80
|
};
|
|
81
|
+
/** Steps that operate on the pending Commands of a story simulation.
|
|
82
|
+
* Destructure as `const { Command } = Story` for concise call sites. */
|
|
83
|
+
export const Command = {
|
|
84
|
+
/** Resolves a specific pending Command with the given result Message. */
|
|
85
|
+
resolve: resolveCommand,
|
|
86
|
+
/** Resolves all listed Commands with their result Messages. Handles cascading resolution. */
|
|
87
|
+
resolveAll: resolveAllCommands,
|
|
88
|
+
/** Asserts that every given Command is among the pending Commands. */
|
|
89
|
+
expectHas: expectHasCommandsStep,
|
|
90
|
+
/** Asserts that the pending Commands match the given definitions exactly (order-independent). */
|
|
91
|
+
expectExact: expectExactCommandsStep,
|
|
92
|
+
/** Asserts that there are no pending Commands. */
|
|
93
|
+
expectNone: expectNoCommandsStep,
|
|
94
|
+
};
|
|
81
95
|
/** Asserts that the OutMessage is Some with the expected value. */
|
|
82
96
|
export const expectOutMessage = (expected) => (simulation) => {
|
|
83
97
|
const internal = toInternal(simulation);
|
package/dist/ui/anchor.d.ts
CHANGED
|
@@ -7,6 +7,12 @@ export type AnchorConfig = Readonly<{
|
|
|
7
7
|
padding?: number;
|
|
8
8
|
portal?: boolean;
|
|
9
9
|
}>;
|
|
10
|
+
/** Relocates an element into the shared `foldkit-portal-root` div appended to
|
|
11
|
+
* `document.body`, escaping any ancestor stacking context. Returns a cleanup
|
|
12
|
+
* function that removes the element from the portal root. Designed to be
|
|
13
|
+
* called from inside an `OnMount` action: the consumer wraps the call in
|
|
14
|
+
* `Effect.sync` and stashes the returned cleanup in the `Mount` result. */
|
|
15
|
+
export declare const portalToBody: (element: Element) => (() => void);
|
|
10
16
|
/** Positions a floating element relative to its button using Floating UI, then
|
|
11
17
|
* returns a cleanup function. Designed to be called inside an `OnMount`
|
|
12
18
|
* action: the consumer wraps the call in `Effect.sync` and stashes the
|
package/dist/ui/anchor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchor.d.ts","sourceRoot":"","sources":["../../src/ui/anchor.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD,oGAAoG;AACpG,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IAClC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"anchor.d.ts","sourceRoot":"","sources":["../../src/ui/anchor.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD,oGAAoG;AACpG,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IAClC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAC,CAAA;AAwBF;;;;4EAI4E;AAC5E,eAAO,MAAM,YAAY,GAAI,SAAS,OAAO,KAAG,CAAC,MAAM,IAAI,CAW1D,CAAA;AAED;;;;;;;;;;2DAU2D;AAC3D,eAAO,MAAM,WAAW,GACrB,QAAQ;IACP,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;CACvB,MACA,OAAO,OAAO,KAAG,CAAC,MAAM,IAAI,CAiF5B,CAAA"}
|
package/dist/ui/anchor.js
CHANGED
|
@@ -7,7 +7,32 @@ const getOrCreatePortalRoot = () => {
|
|
|
7
7
|
}
|
|
8
8
|
const root = document.createElement('div');
|
|
9
9
|
root.id = PORTAL_ROOT_ID;
|
|
10
|
-
|
|
10
|
+
// NOTE: prepended (not appended) so portaled overlays sit BEFORE the page's
|
|
11
|
+
// listbox/popover/menu wrappers in tree order. Those wrappers are
|
|
12
|
+
// `position: relative; z-index: auto` and paint at CSS step 8 in tree order;
|
|
13
|
+
// a backdrop appended after them would paint on top of every button on the
|
|
14
|
+
// page, breaking click-outside detection. Prepending makes wrappers paint
|
|
15
|
+
// above the backdrop, while panels (z-10) still win via step 9.
|
|
16
|
+
document.body.insertBefore(root, document.body.firstChild);
|
|
17
|
+
return root;
|
|
18
|
+
};
|
|
19
|
+
/** Relocates an element into the shared `foldkit-portal-root` div appended to
|
|
20
|
+
* `document.body`, escaping any ancestor stacking context. Returns a cleanup
|
|
21
|
+
* function that removes the element from the portal root. Designed to be
|
|
22
|
+
* called from inside an `OnMount` action: the consumer wraps the call in
|
|
23
|
+
* `Effect.sync` and stashes the returned cleanup in the `Mount` result. */
|
|
24
|
+
export const portalToBody = (element) => {
|
|
25
|
+
getOrCreatePortalRoot().appendChild(element);
|
|
26
|
+
return () => {
|
|
27
|
+
try {
|
|
28
|
+
element.remove();
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
// NOTE: a re-render may unmount the element before this cleanup fires,
|
|
32
|
+
// so the remove() call can throw on a node that's already been removed.
|
|
33
|
+
// Swallow the error.
|
|
34
|
+
}
|
|
35
|
+
};
|
|
11
36
|
};
|
|
12
37
|
/** Positions a floating element relative to its button using Floating UI, then
|
|
13
38
|
* returns a cleanup function. Designed to be called inside an `OnMount`
|
|
@@ -26,9 +51,7 @@ export const anchorSetup = (config) => (items) => {
|
|
|
26
51
|
return () => { };
|
|
27
52
|
}
|
|
28
53
|
const isPortal = config.anchor.portal ?? true;
|
|
29
|
-
|
|
30
|
-
getOrCreatePortalRoot().appendChild(items);
|
|
31
|
-
}
|
|
54
|
+
const portalCleanup = isPortal ? portalToBody(items) : undefined;
|
|
32
55
|
const { placement, gap, offset: crossAxis, padding } = config.anchor;
|
|
33
56
|
const shouldInterceptTab = config.interceptTab ?? true;
|
|
34
57
|
let isFirstUpdate = true;
|
|
@@ -72,18 +95,6 @@ export const anchorSetup = (config) => (items) => {
|
|
|
72
95
|
}
|
|
73
96
|
});
|
|
74
97
|
});
|
|
75
|
-
const portalCleanup = isPortal
|
|
76
|
-
? () => {
|
|
77
|
-
try {
|
|
78
|
-
items.remove();
|
|
79
|
-
}
|
|
80
|
-
catch {
|
|
81
|
-
// NOTE: a blur-triggered re-render may unmount the items element
|
|
82
|
-
// before this cleanup runs, so the remove() call can throw on a
|
|
83
|
-
// node that's already been removed. Swallow the error.
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
: undefined;
|
|
87
98
|
if (isPortal && shouldInterceptTab) {
|
|
88
99
|
const handleTabKey = (event) => {
|
|
89
100
|
if (event instanceof KeyboardEvent && event.key === 'Tab') {
|
|
@@ -5,11 +5,11 @@ export type { InitConfig } from './schema.js';
|
|
|
5
5
|
export { AdvancedAnimationFrame, EndedAnimation, Hid, init, Message, Model, OutMessage, Showed, StartedLeaveAnimating, TransitionState, TransitionedOut, };
|
|
6
6
|
export { RequestFrame, WaitForAnimationSettled, defaultLeaveCommand, update };
|
|
7
7
|
/** Configuration for rendering an animation with `view`. */
|
|
8
|
-
export type ViewConfig<
|
|
8
|
+
export type ViewConfig<ParentMessage> = Readonly<{
|
|
9
9
|
model: Model;
|
|
10
10
|
content: Html;
|
|
11
11
|
className?: string;
|
|
12
|
-
attributes?: ReadonlyArray<Attribute<
|
|
12
|
+
attributes?: ReadonlyArray<Attribute<ParentMessage>>;
|
|
13
13
|
element?: TagName;
|
|
14
14
|
/** When true, wraps content in a CSS grid container that smoothly animates
|
|
15
15
|
* height via `grid-template-rows: 0fr → 1fr`. The element stays in the DOM
|
|
@@ -25,9 +25,9 @@ export type ViewConfig<Message> = Readonly<{
|
|
|
25
25
|
* - `data-leave` — leave animation is active
|
|
26
26
|
* - `data-transition` — any animation is active
|
|
27
27
|
*/
|
|
28
|
-
export declare const view: <
|
|
28
|
+
export declare const view: <ParentMessage>(config: ViewConfig<ParentMessage>) => Html;
|
|
29
29
|
/** Creates a memoized animation view. Static config (className, element, etc.)
|
|
30
30
|
* is captured in a closure. Dynamic fields — `model` and `content` — are
|
|
31
31
|
* compared by reference per render via `createLazy`. */
|
|
32
|
-
export declare const lazy: <
|
|
32
|
+
export declare const lazy: <ParentMessage>(staticConfig: Omit<ViewConfig<ParentMessage>, "model" | "content">) => ((model: Model, content: Html) => Html);
|
|
33
33
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/animation/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,SAAS,EACd,KAAK,IAAI,EACT,KAAK,OAAO,EAGb,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,GAAG,EACH,OAAO,EACP,KAAK,EACL,UAAU,EACV,MAAM,EACN,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,IAAI,EACL,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,MAAM,EACP,MAAM,aAAa,CAAA;AAEpB,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,GAAG,EACH,IAAI,EACJ,OAAO,EACP,KAAK,EACL,UAAU,EACV,MAAM,EACN,qBAAqB,EACrB,eAAe,EACf,eAAe,GAChB,CAAA;AAED,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAA;AAI7E,4DAA4D;AAC5D,MAAM,MAAM,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/animation/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,SAAS,EACd,KAAK,IAAI,EACT,KAAK,OAAO,EAGb,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,GAAG,EACH,OAAO,EACP,KAAK,EACL,UAAU,EACV,MAAM,EACN,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,IAAI,EACL,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,mBAAmB,EACnB,MAAM,EACP,MAAM,aAAa,CAAA;AAEpB,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,GAAG,EACH,IAAI,EACJ,OAAO,EACP,KAAK,EACL,UAAU,EACV,MAAM,EACN,qBAAqB,EACrB,eAAe,EACf,eAAe,GAChB,CAAA;AAED,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAA;AAI7E,4DAA4D;AAC5D,MAAM,MAAM,UAAU,CAAC,aAAa,IAAI,QAAQ,CAAC;IAC/C,KAAK,EAAE,KAAK,CAAA;IACZ,OAAO,EAAE,IAAI,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;IACpD,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;2EAEuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB,CAAC,CAAA;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,IAAI,GAAI,aAAa,EAChC,QAAQ,UAAU,CAAC,aAAa,CAAC,KAChC,IA+FF,CAAA;AAED;;yDAEyD;AACzD,eAAO,MAAM,IAAI,GAAI,aAAa,EAChC,cAAc,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC,KACjE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,KAAK,IAAI,CAaxC,CAAA"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import type { Attribute } from '../../html/index.js';
|
|
2
2
|
import type { Html } from '../../html/index.js';
|
|
3
3
|
/** Attribute groups the button component provides to the consumer's `toView` callback. */
|
|
4
|
-
export type ButtonAttributes<
|
|
5
|
-
button: ReadonlyArray<Attribute<
|
|
4
|
+
export type ButtonAttributes<ParentMessage> = Readonly<{
|
|
5
|
+
button: ReadonlyArray<Attribute<ParentMessage>>;
|
|
6
6
|
}>;
|
|
7
7
|
/** Configuration for rendering a button with `view`. */
|
|
8
|
-
export type ViewConfig<
|
|
9
|
-
toView: (attributes: ButtonAttributes<
|
|
10
|
-
onClick?:
|
|
8
|
+
export type ViewConfig<ParentMessage> = Readonly<{
|
|
9
|
+
toView: (attributes: ButtonAttributes<ParentMessage>) => Html;
|
|
10
|
+
onClick?: ParentMessage;
|
|
11
11
|
isDisabled?: boolean;
|
|
12
12
|
type?: 'button' | 'submit' | 'reset';
|
|
13
13
|
isAutofocus?: boolean;
|
|
14
14
|
}>;
|
|
15
15
|
/** Renders an accessible button by building attribute groups and delegating layout to the consumer's `toView` callback. */
|
|
16
|
-
export declare const view: <
|
|
16
|
+
export declare const view: <ParentMessage>(config: ViewConfig<ParentMessage>) => Html;
|
|
17
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/button/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAI/C,0FAA0F;AAC1F,MAAM,MAAM,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/button/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAI/C,0FAA0F;AAC1F,MAAM,MAAM,gBAAgB,CAAC,aAAa,IAAI,QAAQ,CAAC;IACrD,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;CAChD,CAAC,CAAA;AAEF,wDAAwD;AACxD,MAAM,MAAM,UAAU,CAAC,aAAa,IAAI,QAAQ,CAAC;IAC/C,MAAM,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAC,aAAa,CAAC,KAAK,IAAI,CAAA;IAC7D,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;IACpC,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB,CAAC,CAAA;AAEF,2HAA2H;AAC3H,eAAO,MAAM,IAAI,GAAI,aAAa,EAChC,QAAQ,UAAU,CAAC,aAAa,CAAC,KAChC,IAgCF,CAAA"}
|
|
@@ -828,9 +828,9 @@ export const view = (config) => config.toView(M.value(config.model.viewMode).pip
|
|
|
828
828
|
* only `model` and `toParentMessage` are compared per render via `createLazy`. */
|
|
829
829
|
export const lazy = (staticConfig) => {
|
|
830
830
|
const lazyView = createLazy();
|
|
831
|
-
return (model, toParentMessage) => lazyView((currentModel,
|
|
831
|
+
return (model, toParentMessage) => lazyView((currentModel, currentToParentMessage) => view({
|
|
832
832
|
...staticConfig,
|
|
833
833
|
model: currentModel,
|
|
834
|
-
toParentMessage:
|
|
834
|
+
toParentMessage: currentToParentMessage,
|
|
835
835
|
}), [model, toParentMessage]);
|
|
836
836
|
};
|
|
@@ -23,25 +23,25 @@ export declare const init: (config: InitConfig) => Model;
|
|
|
23
23
|
/** Processes a checkbox message and returns the next model and commands. */
|
|
24
24
|
export declare const update: (model: Model, _message: Message) => readonly [Model, ReadonlyArray<Command<Message>>];
|
|
25
25
|
/** Attribute groups the checkbox component provides to the consumer's `toView` callback. */
|
|
26
|
-
export type CheckboxAttributes<
|
|
27
|
-
checkbox: ReadonlyArray<Attribute<
|
|
28
|
-
label: ReadonlyArray<Attribute<
|
|
29
|
-
description: ReadonlyArray<Attribute<
|
|
30
|
-
hiddenInput: ReadonlyArray<Attribute<
|
|
26
|
+
export type CheckboxAttributes<ParentMessage> = Readonly<{
|
|
27
|
+
checkbox: ReadonlyArray<Attribute<ParentMessage>>;
|
|
28
|
+
label: ReadonlyArray<Attribute<ParentMessage>>;
|
|
29
|
+
description: ReadonlyArray<Attribute<ParentMessage>>;
|
|
30
|
+
hiddenInput: ReadonlyArray<Attribute<ParentMessage>>;
|
|
31
31
|
}>;
|
|
32
32
|
/** Configuration for rendering a checkbox with `view`. */
|
|
33
|
-
export type ViewConfig<
|
|
33
|
+
export type ViewConfig<ParentMessage> = Readonly<{
|
|
34
34
|
model: Model;
|
|
35
|
-
toParentMessage: (message: Toggled) =>
|
|
36
|
-
toView: (attributes: CheckboxAttributes<
|
|
35
|
+
toParentMessage: (message: Toggled) => ParentMessage;
|
|
36
|
+
toView: (attributes: CheckboxAttributes<ParentMessage>) => Html;
|
|
37
37
|
isDisabled?: boolean;
|
|
38
38
|
isIndeterminate?: boolean;
|
|
39
39
|
name?: string;
|
|
40
40
|
value?: string;
|
|
41
41
|
}>;
|
|
42
42
|
/** Renders an accessible checkbox by building ARIA attribute groups and delegating layout to the consumer's `toView` callback. */
|
|
43
|
-
export declare const view: <
|
|
43
|
+
export declare const view: <ParentMessage>(config: ViewConfig<ParentMessage>) => Html;
|
|
44
44
|
/** Creates a memoized checkbox view. Static config is captured in a closure;
|
|
45
45
|
* only `model` and `toParentMessage` are compared per render via `createLazy`. */
|
|
46
|
-
export declare const lazy: <
|
|
46
|
+
export declare const lazy: <ParentMessage>(staticConfig: Omit<ViewConfig<ParentMessage>, "model" | "toParentMessage">) => ((model: Model, toParentMessage: ViewConfig<ParentMessage>["toParentMessage"]) => Html);
|
|
47
47
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/checkbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EACL,KAAK,SAAS,EACd,KAAK,IAAI,EAGV,MAAM,qBAAqB,CAAA;AAM5B,8EAA8E;AAC9E,eAAO,MAAM,KAAK;;;EAGhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,sEAAsE;AACtE,eAAO,MAAM,OAAO,qEAAe,CAAA;AAEnC,kEAAkE;AAClE,eAAO,MAAM,OAAO,qEAAU,CAAA;AAE9B,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,+DAA+D;AAC/D,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAC,CAAA;AAEF,8EAA8E;AAC9E,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAGxC,CAAA;AAIF,4EAA4E;AAC5E,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,UAAU,OAAO,KAChB,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAGlD,CAAA;AAID,4FAA4F;AAC5F,MAAM,MAAM,kBAAkB,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/checkbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EACL,KAAK,SAAS,EACd,KAAK,IAAI,EAGV,MAAM,qBAAqB,CAAA;AAM5B,8EAA8E;AAC9E,eAAO,MAAM,KAAK;;;EAGhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,sEAAsE;AACtE,eAAO,MAAM,OAAO,qEAAe,CAAA;AAEnC,kEAAkE;AAClE,eAAO,MAAM,OAAO,qEAAU,CAAA;AAE9B,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,+DAA+D;AAC/D,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAC,CAAA;AAEF,8EAA8E;AAC9E,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAGxC,CAAA;AAIF,4EAA4E;AAC5E,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,UAAU,OAAO,KAChB,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAGlD,CAAA;AAID,4FAA4F;AAC5F,MAAM,MAAM,kBAAkB,CAAC,aAAa,IAAI,QAAQ,CAAC;IACvD,QAAQ,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;IACjD,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;IAC9C,WAAW,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;IACpD,WAAW,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;CACrD,CAAC,CAAA;AAEF,0DAA0D;AAC1D,MAAM,MAAM,UAAU,CAAC,aAAa,IAAI,QAAQ,CAAC;IAC/C,KAAK,EAAE,KAAK,CAAA;IACZ,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,aAAa,CAAA;IACpD,MAAM,EAAE,CAAC,UAAU,EAAE,kBAAkB,CAAC,aAAa,CAAC,KAAK,IAAI,CAAA;IAC/D,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAC,CAAA;AAKF,kIAAkI;AAClI,eAAO,MAAM,IAAI,GAAI,aAAa,EAChC,QAAQ,UAAU,CAAC,aAAa,CAAC,KAChC,IA2EF,CAAA;AAED;mFACmF;AACnF,eAAO,MAAM,IAAI,GAAI,aAAa,EAChC,cAAc,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAC,KACzE,CAAC,CACF,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,iBAAiB,CAAC,KAC1D,IAAI,CAgBR,CAAA"}
|
|
@@ -73,9 +73,9 @@ export const view = (config) => {
|
|
|
73
73
|
* only `model` and `toParentMessage` are compared per render via `createLazy`. */
|
|
74
74
|
export const lazy = (staticConfig) => {
|
|
75
75
|
const lazyView = createLazy();
|
|
76
|
-
return (model, toParentMessage) => lazyView((currentModel,
|
|
76
|
+
return (model, toParentMessage) => lazyView((currentModel, currentToParentMessage) => view({
|
|
77
77
|
...staticConfig,
|
|
78
78
|
model: currentModel,
|
|
79
|
-
toParentMessage:
|
|
79
|
+
toParentMessage: currentToParentMessage,
|
|
80
80
|
}), [model, toParentMessage]);
|
|
81
81
|
};
|
|
@@ -95,6 +95,8 @@ export declare const update: (model: {
|
|
|
95
95
|
readonly _tag: "CompletedClickItem";
|
|
96
96
|
} | {
|
|
97
97
|
readonly _tag: "CompletedAnchorMount";
|
|
98
|
+
} | {
|
|
99
|
+
readonly _tag: "CompletedBackdropPortal";
|
|
98
100
|
} | {
|
|
99
101
|
readonly _tag: "Opened";
|
|
100
102
|
readonly maybeActiveItemIndex: Option.Option<number>;
|
|
@@ -153,9 +155,9 @@ export declare const close: (model: Model) => readonly [Model, ReadonlyArray<Com
|
|
|
153
155
|
/** Programmatically toggles an item in the multi-select combobox. Use this in domain-event handlers when the combobox uses `onSelectedItem`. */
|
|
154
156
|
export declare const selectItem: (model: Model, item: string) => readonly [Model, ReadonlyArray<Command.Command<Message>>];
|
|
155
157
|
/** Configuration for rendering a multi-select combobox with `view`. */
|
|
156
|
-
export type ViewConfig<
|
|
158
|
+
export type ViewConfig<ParentMessage, Item extends string> = BaseViewConfig<ParentMessage, Item, Model>;
|
|
157
159
|
/** Renders a headless multi-select combobox with keyboard navigation, selection tracking, and aria-activedescendant focus management. */
|
|
158
|
-
export declare const view: <
|
|
160
|
+
export declare const view: <ParentMessage, Item extends string>(config: Readonly<{
|
|
159
161
|
model: {
|
|
160
162
|
readonly id: string;
|
|
161
163
|
readonly maybeActiveItemIndex: Option.Option<number>;
|
|
@@ -184,8 +186,10 @@ export declare const view: <Message, Item extends string>(config: Readonly<{
|
|
|
184
186
|
readonly _tag: "CompletedAttachPreventBlur";
|
|
185
187
|
} | {
|
|
186
188
|
readonly _tag: "CompletedAttachSelectOnFocus";
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
+
} | {
|
|
190
|
+
readonly _tag: "CompletedBackdropPortal";
|
|
191
|
+
}) => ParentMessage;
|
|
192
|
+
onSelectedItem?: (value: string) => ParentMessage;
|
|
189
193
|
items: readonly Item[];
|
|
190
194
|
itemToConfig: (item: Item, context: Readonly<{
|
|
191
195
|
isActive: boolean;
|
|
@@ -199,21 +203,21 @@ export declare const view: <Message, Item extends string>(config: Readonly<{
|
|
|
199
203
|
itemToDisplayText: (item: Item, index: number) => string;
|
|
200
204
|
isItemDisabled?: (item: Item, index: number) => boolean;
|
|
201
205
|
inputClassName?: string;
|
|
202
|
-
inputAttributes?: readonly import("../../html/index.js").Attribute<
|
|
206
|
+
inputAttributes?: readonly import("../../html/index.js").Attribute<ParentMessage>[];
|
|
203
207
|
inputPlaceholder?: string;
|
|
204
208
|
inputWrapperClassName?: string;
|
|
205
|
-
inputWrapperAttributes?: readonly import("../../html/index.js").Attribute<
|
|
209
|
+
inputWrapperAttributes?: readonly import("../../html/index.js").Attribute<ParentMessage>[];
|
|
206
210
|
itemsClassName?: string;
|
|
207
|
-
itemsAttributes?: readonly import("../../html/index.js").Attribute<
|
|
211
|
+
itemsAttributes?: readonly import("../../html/index.js").Attribute<ParentMessage>[];
|
|
208
212
|
itemsScrollClassName?: string;
|
|
209
|
-
itemsScrollAttributes?: readonly import("../../html/index.js").Attribute<
|
|
213
|
+
itemsScrollAttributes?: readonly import("../../html/index.js").Attribute<ParentMessage>[];
|
|
210
214
|
backdropClassName?: string;
|
|
211
|
-
backdropAttributes?: readonly import("../../html/index.js").Attribute<
|
|
215
|
+
backdropAttributes?: readonly import("../../html/index.js").Attribute<ParentMessage>[];
|
|
212
216
|
className?: string;
|
|
213
|
-
attributes?: readonly import("../../html/index.js").Attribute<
|
|
217
|
+
attributes?: readonly import("../../html/index.js").Attribute<ParentMessage>[];
|
|
214
218
|
buttonContent?: Html;
|
|
215
219
|
buttonClassName?: string;
|
|
216
|
-
buttonAttributes?: readonly import("../../html/index.js").Attribute<
|
|
220
|
+
buttonAttributes?: readonly import("../../html/index.js").Attribute<ParentMessage>[];
|
|
217
221
|
formName?: string;
|
|
218
222
|
isDisabled?: boolean;
|
|
219
223
|
isInvalid?: boolean;
|
|
@@ -224,9 +228,9 @@ export declare const view: <Message, Item extends string>(config: Readonly<{
|
|
|
224
228
|
className?: string;
|
|
225
229
|
}> | undefined;
|
|
226
230
|
groupClassName?: string;
|
|
227
|
-
groupAttributes?: readonly import("../../html/index.js").Attribute<
|
|
231
|
+
groupAttributes?: readonly import("../../html/index.js").Attribute<ParentMessage>[];
|
|
228
232
|
separatorClassName?: string;
|
|
229
|
-
separatorAttributes?: readonly import("../../html/index.js").Attribute<
|
|
233
|
+
separatorAttributes?: readonly import("../../html/index.js").Attribute<ParentMessage>[];
|
|
230
234
|
anchor?: Readonly<{
|
|
231
235
|
placement?: import("@floating-ui/dom").Placement;
|
|
232
236
|
gap?: number;
|
|
@@ -237,5 +241,5 @@ export declare const view: <Message, Item extends string>(config: Readonly<{
|
|
|
237
241
|
}>) => Html;
|
|
238
242
|
/** Creates a memoized multi-select combobox view. Static config is captured in a closure;
|
|
239
243
|
* only `model` and `toParentMessage` are compared per render via `createLazy`. */
|
|
240
|
-
export declare const lazy: <
|
|
244
|
+
export declare const lazy: <ParentMessage, Item extends string>(staticConfig: Omit<ViewConfig<ParentMessage, Item>, "model" | "toParentMessage" | "onSelectedItem">) => ((model: Model, toParentMessage: BaseViewConfig<ParentMessage, Item, Model>["toParentMessage"]) => Html);
|
|
241
245
|
//# sourceMappingURL=multi.d.ts.map
|
|
@@ -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;;;;;;;;;;;;;;;;;;;;;EAGhB,CAAA;AAEF,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;;;;;;;;;;;;;;;;;;;;;EAGhB,CAAA;AAEF,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,aAAa,EAAE,IAAI,SAAS,MAAM,IAAI,cAAc,CACzE,aAAa,EACb,IAAI,EACJ,KAAK,CACN,CAAA;AAED,yIAAyI;AACzI,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAIf,CAAA;AAEF;mFACmF;AACnF,eAAO,MAAM,IAAI,GAAI,aAAa,EAAE,IAAI,SAAS,MAAM,EACrD,cAAc,IAAI,CAChB,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,EAC/B,OAAO,GAAG,iBAAiB,GAAG,gBAAgB,CAC/C,KACA,CAAC,CACF,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,cAAc,CAC7B,aAAa,EACb,IAAI,EACJ,KAAK,CACN,CAAC,iBAAiB,CAAC,KACjB,IAAI,CAoBR,CAAA"}
|
|
@@ -56,9 +56,9 @@ export const view = makeView({
|
|
|
56
56
|
* only `model` and `toParentMessage` are compared per render via `createLazy`. */
|
|
57
57
|
export const lazy = (staticConfig) => {
|
|
58
58
|
const lazyView = createLazy();
|
|
59
|
-
return (model, toParentMessage) => lazyView((currentModel,
|
|
59
|
+
return (model, toParentMessage) => lazyView((currentModel, currentToParentMessage) => view({
|
|
60
60
|
...staticConfig,
|
|
61
61
|
model: currentModel,
|
|
62
|
-
toParentMessage:
|
|
62
|
+
toParentMessage: currentToParentMessage,
|
|
63
63
|
}), [model, toParentMessage]);
|
|
64
64
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
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, CompletedAnchorMount, CompletedAttachPreventBlur, CompletedAttachSelectOnFocus, 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, CompletedBackdropPortal, ComboboxAnchor, ComboboxAttachPreventBlur, ComboboxAttachSelectOnFocus, ComboboxBackdropPortal, GotAnimationMessage, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusInput, ScrollIntoView, ClickItem, DetectMovementOrAnimationEnd, } from './shared.js';
|
|
3
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';
|
|
@@ -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,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
|
+
{"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,uBAAuB,EACvB,cAAc,EACd,yBAAyB,EACzB,2BAA2B,EAC3B,sBAAsB,EACtB,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, CompletedAnchorMount, CompletedAttachPreventBlur, CompletedAttachSelectOnFocus, 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, CompletedBackdropPortal, ComboboxAnchor, ComboboxAttachPreventBlur, ComboboxAttachSelectOnFocus, ComboboxBackdropPortal, GotAnimationMessage, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusInput, ScrollIntoView, ClickItem, DetectMovementOrAnimationEnd, } from './shared.js';
|
|
3
3
|
export * as Multi from './multiPublic.js';
|