foldkit 0.36.3 → 0.38.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 +4 -5
- package/dist/command/index.d.ts +36 -2
- package/dist/command/index.d.ts.map +1 -1
- package/dist/command/index.js +11 -1
- package/dist/command/public.d.ts +1 -0
- package/dist/command/public.d.ts.map +1 -1
- package/dist/command/public.js +1 -1
- package/dist/devtools/overlay.d.ts.map +1 -1
- package/dist/devtools/overlay.js +16 -15
- package/dist/devtools/store.d.ts +2 -2
- package/dist/devtools/store.d.ts.map +1 -1
- package/dist/devtools/store.js +2 -2
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +10 -4
- package/dist/runtime/subscription.d.ts +5 -5
- package/dist/runtime/subscription.d.ts.map +1 -1
- package/dist/ui/combobox/multi.d.ts +55 -52
- package/dist/ui/combobox/multi.d.ts.map +1 -1
- package/dist/ui/combobox/shared.d.ts +62 -59
- package/dist/ui/combobox/shared.d.ts.map +1 -1
- package/dist/ui/combobox/shared.js +11 -10
- package/dist/ui/combobox/single.d.ts +55 -52
- package/dist/ui/combobox/single.d.ts.map +1 -1
- package/dist/ui/dialog/index.d.ts +2 -2
- package/dist/ui/dialog/index.d.ts.map +1 -1
- package/dist/ui/dialog/index.js +7 -6
- package/dist/ui/disclosure/index.d.ts +2 -2
- package/dist/ui/disclosure/index.d.ts.map +1 -1
- package/dist/ui/disclosure/index.js +3 -2
- package/dist/ui/listbox/multi.d.ts +64 -61
- package/dist/ui/listbox/multi.d.ts.map +1 -1
- package/dist/ui/listbox/shared.d.ts +70 -67
- package/dist/ui/listbox/shared.d.ts.map +1 -1
- package/dist/ui/listbox/shared.js +14 -13
- package/dist/ui/listbox/single.d.ts +64 -61
- package/dist/ui/listbox/single.d.ts.map +1 -1
- package/dist/ui/menu/index.d.ts +2 -2
- package/dist/ui/menu/index.d.ts.map +1 -1
- package/dist/ui/menu/index.js +17 -16
- package/dist/ui/popover/index.d.ts +2 -2
- package/dist/ui/popover/index.d.ts.map +1 -1
- package/dist/ui/popover/index.js +12 -11
- package/dist/ui/radioGroup/index.d.ts +2 -2
- package/dist/ui/radioGroup/index.d.ts.map +1 -1
- package/dist/ui/radioGroup/index.js +2 -1
- package/dist/ui/tabs/index.d.ts +2 -2
- package/dist/ui/tabs/index.d.ts.map +1 -1
- package/dist/ui/tabs/index.js +3 -2
- package/package.json +1 -1
|
@@ -65,67 +65,70 @@ export declare const update: (model: {
|
|
|
65
65
|
readonly maybeLastButtonPointerType: Option.Option<string>;
|
|
66
66
|
} & {
|
|
67
67
|
readonly selectedItems: readonly string[];
|
|
68
|
-
}, readonly
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
} | {
|
|
73
|
-
|
|
74
|
-
} | {
|
|
75
|
-
|
|
76
|
-
} | {
|
|
77
|
-
|
|
78
|
-
} | {
|
|
79
|
-
|
|
80
|
-
} | {
|
|
81
|
-
|
|
82
|
-
} | {
|
|
83
|
-
|
|
84
|
-
} | {
|
|
85
|
-
|
|
86
|
-
} | {
|
|
87
|
-
|
|
88
|
-
} | {
|
|
89
|
-
|
|
90
|
-
} | {
|
|
91
|
-
|
|
92
|
-
} | {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
} | {
|
|
120
|
-
|
|
121
|
-
} | {
|
|
122
|
-
|
|
123
|
-
} | {
|
|
124
|
-
|
|
125
|
-
} | {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
68
|
+
}, readonly Readonly<{
|
|
69
|
+
name: string;
|
|
70
|
+
effect: import("effect/Effect").Effect<{
|
|
71
|
+
readonly _tag: "Closed";
|
|
72
|
+
} | {
|
|
73
|
+
readonly _tag: "ClosedByTab";
|
|
74
|
+
} | {
|
|
75
|
+
readonly _tag: "DeactivatedItem";
|
|
76
|
+
} | {
|
|
77
|
+
readonly _tag: "CompletedScrollLock";
|
|
78
|
+
} | {
|
|
79
|
+
readonly _tag: "CompletedScrollUnlock";
|
|
80
|
+
} | {
|
|
81
|
+
readonly _tag: "CompletedInertSetup";
|
|
82
|
+
} | {
|
|
83
|
+
readonly _tag: "CompletedInertTeardown";
|
|
84
|
+
} | {
|
|
85
|
+
readonly _tag: "CompletedScrollIntoView";
|
|
86
|
+
} | {
|
|
87
|
+
readonly _tag: "CompletedItemClick";
|
|
88
|
+
} | {
|
|
89
|
+
readonly _tag: "AdvancedTransitionFrame";
|
|
90
|
+
} | {
|
|
91
|
+
readonly _tag: "EndedTransition";
|
|
92
|
+
} | {
|
|
93
|
+
readonly _tag: "CompletedButtonFocus";
|
|
94
|
+
} | {
|
|
95
|
+
readonly _tag: "Opened";
|
|
96
|
+
readonly maybeActiveItemIndex: Option.Option<number>;
|
|
97
|
+
} | {
|
|
98
|
+
readonly _tag: "ActivatedItem";
|
|
99
|
+
readonly index: number;
|
|
100
|
+
readonly activationTrigger: "Pointer" | "Keyboard";
|
|
101
|
+
} | {
|
|
102
|
+
readonly _tag: "SelectedItem";
|
|
103
|
+
readonly item: string;
|
|
104
|
+
} | {
|
|
105
|
+
readonly _tag: "RequestedItemClick";
|
|
106
|
+
readonly index: number;
|
|
107
|
+
} | {
|
|
108
|
+
readonly _tag: "Searched";
|
|
109
|
+
readonly key: string;
|
|
110
|
+
readonly maybeTargetIndex: Option.Option<number>;
|
|
111
|
+
} | {
|
|
112
|
+
readonly _tag: "ClearedSearch";
|
|
113
|
+
readonly version: number;
|
|
114
|
+
} | {
|
|
115
|
+
readonly _tag: "MovedPointerOverItem";
|
|
116
|
+
readonly index: number;
|
|
117
|
+
readonly screenX: number;
|
|
118
|
+
readonly screenY: number;
|
|
119
|
+
} | {
|
|
120
|
+
readonly _tag: "CompletedItemsFocus";
|
|
121
|
+
} | {
|
|
122
|
+
readonly _tag: "IgnoredMouseClick";
|
|
123
|
+
} | {
|
|
124
|
+
readonly _tag: "SuppressedSpaceScroll";
|
|
125
|
+
} | {
|
|
126
|
+
readonly _tag: "DetectedButtonMovement";
|
|
127
|
+
} | {
|
|
128
|
+
readonly _tag: "PressedPointerOnButton";
|
|
129
|
+
readonly button: number;
|
|
130
|
+
readonly pointerType: string;
|
|
131
|
+
}, never, never>;
|
|
129
132
|
}>[]];
|
|
130
133
|
/** Configuration for rendering a multi-select listbox with `view`. */
|
|
131
134
|
export type ViewConfig<Message, Item> = BaseViewConfig<Message, Item, Model>;
|
|
@@ -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,EAAE,KAAK,IAAI,EAAc,MAAM,YAAY,CAAA;AAElD,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EAIpB,MAAM,UAAU,CAAA;AAIjB,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,EAAE,KAAK,IAAI,EAAc,MAAM,YAAY,CAAA;AAElD,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EAIpB,MAAM,UAAU,CAAA;AAIjB,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;AAIF,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;6EAC6E;AAC7E,eAAO,MAAM,IAAI,GAAI,OAAO,EAAE,IAAI,EAChC,cAAc,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC,KACnE,CAAC,CACF,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,WAAW,CAAC,KACzD,IAAI,CAgBR,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Option, Schema as S } from 'effect';
|
|
2
|
-
import
|
|
1
|
+
import { Effect, Option, Schema as S } from 'effect';
|
|
2
|
+
import * as Command from '../../command';
|
|
3
3
|
import { type Attribute, type Html } from '../../html';
|
|
4
4
|
import type { AnchorConfig } from '../anchor';
|
|
5
5
|
import { resolveTypeaheadMatch } from '../typeahead';
|
|
@@ -159,72 +159,75 @@ export declare const itemSelector: (id: string, index: number) => string;
|
|
|
159
159
|
export declare const itemId: (id: string, index: number) => string;
|
|
160
160
|
export declare const closedModel: <Model extends BaseModel>(model: Model) => Model;
|
|
161
161
|
type SelectedItemContext = Readonly<{
|
|
162
|
-
focusButton: Command<Message>;
|
|
163
|
-
maybeNextFrame: Option.Option<Command<Message>>;
|
|
164
|
-
maybeUnlockScroll: Option.Option<Command<Message>>;
|
|
165
|
-
maybeRestoreInert: Option.Option<Command<Message>>;
|
|
162
|
+
focusButton: Command.Command<Message>;
|
|
163
|
+
maybeNextFrame: Option.Option<Command.Command<Message>>;
|
|
164
|
+
maybeUnlockScroll: Option.Option<Command.Command<Message>>;
|
|
165
|
+
maybeRestoreInert: Option.Option<Command.Command<Message>>;
|
|
166
166
|
}>;
|
|
167
|
-
export declare const makeUpdate: <Model extends BaseModel>(handleSelectedItem: (model: Model, item: string, context: SelectedItemContext) => [Model, ReadonlyArray<Command<Message>>]) => (model: Model, message: Message) => [Model, readonly
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
} | {
|
|
172
|
-
|
|
173
|
-
} | {
|
|
174
|
-
|
|
175
|
-
} | {
|
|
176
|
-
|
|
177
|
-
} | {
|
|
178
|
-
|
|
179
|
-
} | {
|
|
180
|
-
|
|
181
|
-
} | {
|
|
182
|
-
|
|
183
|
-
} | {
|
|
184
|
-
|
|
185
|
-
} | {
|
|
186
|
-
|
|
187
|
-
} | {
|
|
188
|
-
|
|
189
|
-
} | {
|
|
190
|
-
|
|
191
|
-
} | {
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
} | {
|
|
219
|
-
|
|
220
|
-
} | {
|
|
221
|
-
|
|
222
|
-
} | {
|
|
223
|
-
|
|
224
|
-
} | {
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
167
|
+
export declare const makeUpdate: <Model extends BaseModel>(handleSelectedItem: (model: Model, item: string, context: SelectedItemContext) => [Model, ReadonlyArray<Command.Command<Message>>]) => (model: Model, message: Message) => [Model, readonly Readonly<{
|
|
168
|
+
name: string;
|
|
169
|
+
effect: Effect.Effect<{
|
|
170
|
+
readonly _tag: "Closed";
|
|
171
|
+
} | {
|
|
172
|
+
readonly _tag: "ClosedByTab";
|
|
173
|
+
} | {
|
|
174
|
+
readonly _tag: "DeactivatedItem";
|
|
175
|
+
} | {
|
|
176
|
+
readonly _tag: "CompletedScrollLock";
|
|
177
|
+
} | {
|
|
178
|
+
readonly _tag: "CompletedScrollUnlock";
|
|
179
|
+
} | {
|
|
180
|
+
readonly _tag: "CompletedInertSetup";
|
|
181
|
+
} | {
|
|
182
|
+
readonly _tag: "CompletedInertTeardown";
|
|
183
|
+
} | {
|
|
184
|
+
readonly _tag: "CompletedScrollIntoView";
|
|
185
|
+
} | {
|
|
186
|
+
readonly _tag: "CompletedItemClick";
|
|
187
|
+
} | {
|
|
188
|
+
readonly _tag: "AdvancedTransitionFrame";
|
|
189
|
+
} | {
|
|
190
|
+
readonly _tag: "EndedTransition";
|
|
191
|
+
} | {
|
|
192
|
+
readonly _tag: "CompletedButtonFocus";
|
|
193
|
+
} | {
|
|
194
|
+
readonly _tag: "Opened";
|
|
195
|
+
readonly maybeActiveItemIndex: Option.Option<number>;
|
|
196
|
+
} | {
|
|
197
|
+
readonly _tag: "ActivatedItem";
|
|
198
|
+
readonly index: number;
|
|
199
|
+
readonly activationTrigger: "Pointer" | "Keyboard";
|
|
200
|
+
} | {
|
|
201
|
+
readonly _tag: "SelectedItem";
|
|
202
|
+
readonly item: string;
|
|
203
|
+
} | {
|
|
204
|
+
readonly _tag: "RequestedItemClick";
|
|
205
|
+
readonly index: number;
|
|
206
|
+
} | {
|
|
207
|
+
readonly _tag: "Searched";
|
|
208
|
+
readonly key: string;
|
|
209
|
+
readonly maybeTargetIndex: Option.Option<number>;
|
|
210
|
+
} | {
|
|
211
|
+
readonly _tag: "ClearedSearch";
|
|
212
|
+
readonly version: number;
|
|
213
|
+
} | {
|
|
214
|
+
readonly _tag: "MovedPointerOverItem";
|
|
215
|
+
readonly index: number;
|
|
216
|
+
readonly screenX: number;
|
|
217
|
+
readonly screenY: number;
|
|
218
|
+
} | {
|
|
219
|
+
readonly _tag: "CompletedItemsFocus";
|
|
220
|
+
} | {
|
|
221
|
+
readonly _tag: "IgnoredMouseClick";
|
|
222
|
+
} | {
|
|
223
|
+
readonly _tag: "SuppressedSpaceScroll";
|
|
224
|
+
} | {
|
|
225
|
+
readonly _tag: "DetectedButtonMovement";
|
|
226
|
+
} | {
|
|
227
|
+
readonly _tag: "PressedPointerOnButton";
|
|
228
|
+
readonly button: number;
|
|
229
|
+
readonly pointerType: string;
|
|
230
|
+
}, never, never>;
|
|
228
231
|
}>[]];
|
|
229
232
|
/** Configuration for an individual listbox item's appearance. */
|
|
230
233
|
export type ItemConfig = Readonly<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/ui/listbox/shared.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/ui/listbox/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Array, Effect, Match as M, Option, Predicate, Schema as S, String as Str, pipe, } from 'effect';
|
|
2
|
+
import * as Command from '../../command';
|
|
2
3
|
import { OptionExt } from '../../effectExtensions';
|
|
3
4
|
import { html } from '../../html';
|
|
4
5
|
import { m } from '../../message';
|
|
@@ -136,15 +137,15 @@ export const closedModel = (model) => constrainedEvo(model, {
|
|
|
136
137
|
export const makeUpdate = (handleSelectedItem) => {
|
|
137
138
|
const withUpdateReturn = M.withReturnType();
|
|
138
139
|
return (model, message) => {
|
|
139
|
-
const maybeNextFrame = OptionExt.when(model.isAnimated, Task.nextFrame.pipe(Effect.as(AdvancedTransitionFrame())));
|
|
140
|
-
const maybeLockScroll = OptionExt.when(model.isModal, Task.lockScroll.pipe(Effect.as(CompletedScrollLock())));
|
|
141
|
-
const maybeUnlockScroll = OptionExt.when(model.isModal, Task.unlockScroll.pipe(Effect.as(CompletedScrollUnlock())));
|
|
140
|
+
const maybeNextFrame = OptionExt.when(model.isAnimated, Task.nextFrame.pipe(Effect.as(AdvancedTransitionFrame()), Command.make('RequestFrame')));
|
|
141
|
+
const maybeLockScroll = OptionExt.when(model.isModal, Task.lockScroll.pipe(Effect.as(CompletedScrollLock()), Command.make('LockScroll')));
|
|
142
|
+
const maybeUnlockScroll = OptionExt.when(model.isModal, Task.unlockScroll.pipe(Effect.as(CompletedScrollUnlock()), Command.make('UnlockScroll')));
|
|
142
143
|
const maybeInertOthers = OptionExt.when(model.isModal, Task.inertOthers(model.id, [
|
|
143
144
|
buttonSelector(model.id),
|
|
144
145
|
itemsSelector(model.id),
|
|
145
|
-
]).pipe(Effect.as(CompletedInertSetup())));
|
|
146
|
-
const maybeRestoreInert = OptionExt.when(model.isModal, Task.restoreInert(model.id).pipe(Effect.as(CompletedInertTeardown())));
|
|
147
|
-
const focusButton = Task.focus(buttonSelector(model.id)).pipe(Effect.ignore, Effect.as(CompletedButtonFocus()));
|
|
146
|
+
]).pipe(Effect.as(CompletedInertSetup()), Command.make('InertOthers')));
|
|
147
|
+
const maybeRestoreInert = OptionExt.when(model.isModal, Task.restoreInert(model.id).pipe(Effect.as(CompletedInertTeardown()), Command.make('RestoreInert')));
|
|
148
|
+
const focusButton = Task.focus(buttonSelector(model.id)).pipe(Effect.ignore, Effect.as(CompletedButtonFocus()), Command.make('FocusButton'));
|
|
148
149
|
return M.value(message).pipe(withUpdateReturn, M.tagsExhaustive({
|
|
149
150
|
Opened: ({ maybeActiveItemIndex }) => {
|
|
150
151
|
const nextModel = constrainedEvo(model, {
|
|
@@ -165,7 +166,7 @@ export const makeUpdate = (handleSelectedItem) => {
|
|
|
165
166
|
maybeNextFrame,
|
|
166
167
|
maybeLockScroll,
|
|
167
168
|
maybeInertOthers,
|
|
168
|
-
]), Array.prepend(Task.focus(itemsSelector(model.id)).pipe(Effect.ignore, Effect.as(CompletedItemsFocus())))),
|
|
169
|
+
]), Array.prepend(Task.focus(itemsSelector(model.id)).pipe(Effect.ignore, Effect.as(CompletedItemsFocus()), Command.make('FocusItems')))),
|
|
169
170
|
];
|
|
170
171
|
},
|
|
171
172
|
Closed: () => [
|
|
@@ -191,7 +192,7 @@ export const makeUpdate = (handleSelectedItem) => {
|
|
|
191
192
|
}),
|
|
192
193
|
activationTrigger === 'Keyboard'
|
|
193
194
|
? [
|
|
194
|
-
Task.scrollIntoView(itemSelector(model.id, index)).pipe(Effect.ignore, Effect.as(CompletedScrollIntoView())),
|
|
195
|
+
Task.scrollIntoView(itemSelector(model.id, index)).pipe(Effect.ignore, Effect.as(CompletedScrollIntoView()), Command.make('ScrollIntoView')),
|
|
195
196
|
]
|
|
196
197
|
: [],
|
|
197
198
|
],
|
|
@@ -226,7 +227,7 @@ export const makeUpdate = (handleSelectedItem) => {
|
|
|
226
227
|
RequestedItemClick: ({ index }) => [
|
|
227
228
|
model,
|
|
228
229
|
[
|
|
229
|
-
Task.clickElement(itemSelector(model.id, index)).pipe(Effect.ignore, Effect.as(CompletedItemClick())),
|
|
230
|
+
Task.clickElement(itemSelector(model.id, index)).pipe(Effect.ignore, Effect.as(CompletedItemClick()), Command.make('ClickItem')),
|
|
230
231
|
],
|
|
231
232
|
],
|
|
232
233
|
Searched: ({ key, maybeTargetIndex }) => {
|
|
@@ -239,7 +240,7 @@ export const makeUpdate = (handleSelectedItem) => {
|
|
|
239
240
|
maybeActiveItemIndex: () => Option.orElse(maybeTargetIndex, () => model.maybeActiveItemIndex),
|
|
240
241
|
}),
|
|
241
242
|
[
|
|
242
|
-
Task.delay(SEARCH_DEBOUNCE_MILLISECONDS).pipe(Effect.as(ClearedSearch({ version: nextSearchVersion }))),
|
|
243
|
+
Task.delay(SEARCH_DEBOUNCE_MILLISECONDS).pipe(Effect.as(ClearedSearch({ version: nextSearchVersion })), Command.make('DelayClearSearch')),
|
|
243
244
|
],
|
|
244
245
|
];
|
|
245
246
|
},
|
|
@@ -254,14 +255,14 @@ export const makeUpdate = (handleSelectedItem) => {
|
|
|
254
255
|
transitionState: () => 'EnterAnimating',
|
|
255
256
|
}),
|
|
256
257
|
[
|
|
257
|
-
Task.waitForTransitions(itemsSelector(model.id)).pipe(Effect.as(EndedTransition())),
|
|
258
|
+
Task.waitForTransitions(itemsSelector(model.id)).pipe(Effect.as(EndedTransition()), Command.make('WaitForTransitions')),
|
|
258
259
|
],
|
|
259
260
|
]), M.when('LeaveStart', () => [
|
|
260
261
|
constrainedEvo(model, {
|
|
261
262
|
transitionState: () => 'LeaveAnimating',
|
|
262
263
|
}),
|
|
263
264
|
[
|
|
264
|
-
Effect.raceFirst(Task.detectElementMovement(buttonSelector(model.id)).pipe(Effect.as(DetectedButtonMovement())), Task.waitForTransitions(itemsSelector(model.id)).pipe(Effect.as(EndedTransition()))),
|
|
265
|
+
Effect.raceFirst(Task.detectElementMovement(buttonSelector(model.id)).pipe(Effect.as(DetectedButtonMovement())), Task.waitForTransitions(itemsSelector(model.id)).pipe(Effect.as(EndedTransition()))).pipe(Command.make('DetectMovementOrTransitionEnd')),
|
|
265
266
|
],
|
|
266
267
|
]), M.orElse(() => [model, []])),
|
|
267
268
|
EndedTransition: () => M.value(model.transitionState).pipe(withUpdateReturn, M.whenOr('EnterAnimating', 'LeaveAnimating', () => [
|
|
@@ -304,7 +305,7 @@ export const makeUpdate = (handleSelectedItem) => {
|
|
|
304
305
|
maybeNextFrame,
|
|
305
306
|
maybeLockScroll,
|
|
306
307
|
maybeInertOthers,
|
|
307
|
-
]), Array.prepend(Task.focus(itemsSelector(model.id)).pipe(Effect.ignore, Effect.as(CompletedItemsFocus())))),
|
|
308
|
+
]), Array.prepend(Task.focus(itemsSelector(model.id)).pipe(Effect.ignore, Effect.as(CompletedItemsFocus()), Command.make('FocusItems')))),
|
|
308
309
|
];
|
|
309
310
|
},
|
|
310
311
|
CompletedScrollLock: () => [model, []],
|
|
@@ -65,67 +65,70 @@ export declare const update: (model: {
|
|
|
65
65
|
readonly maybeLastButtonPointerType: Option.Option<string>;
|
|
66
66
|
} & {
|
|
67
67
|
readonly maybeSelectedItem: Option.Option<string>;
|
|
68
|
-
}, readonly
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
} | {
|
|
73
|
-
|
|
74
|
-
} | {
|
|
75
|
-
|
|
76
|
-
} | {
|
|
77
|
-
|
|
78
|
-
} | {
|
|
79
|
-
|
|
80
|
-
} | {
|
|
81
|
-
|
|
82
|
-
} | {
|
|
83
|
-
|
|
84
|
-
} | {
|
|
85
|
-
|
|
86
|
-
} | {
|
|
87
|
-
|
|
88
|
-
} | {
|
|
89
|
-
|
|
90
|
-
} | {
|
|
91
|
-
|
|
92
|
-
} | {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
} | {
|
|
120
|
-
|
|
121
|
-
} | {
|
|
122
|
-
|
|
123
|
-
} | {
|
|
124
|
-
|
|
125
|
-
} | {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
68
|
+
}, readonly Readonly<{
|
|
69
|
+
name: string;
|
|
70
|
+
effect: import("effect/Effect").Effect<{
|
|
71
|
+
readonly _tag: "Closed";
|
|
72
|
+
} | {
|
|
73
|
+
readonly _tag: "ClosedByTab";
|
|
74
|
+
} | {
|
|
75
|
+
readonly _tag: "DeactivatedItem";
|
|
76
|
+
} | {
|
|
77
|
+
readonly _tag: "CompletedScrollLock";
|
|
78
|
+
} | {
|
|
79
|
+
readonly _tag: "CompletedScrollUnlock";
|
|
80
|
+
} | {
|
|
81
|
+
readonly _tag: "CompletedInertSetup";
|
|
82
|
+
} | {
|
|
83
|
+
readonly _tag: "CompletedInertTeardown";
|
|
84
|
+
} | {
|
|
85
|
+
readonly _tag: "CompletedScrollIntoView";
|
|
86
|
+
} | {
|
|
87
|
+
readonly _tag: "CompletedItemClick";
|
|
88
|
+
} | {
|
|
89
|
+
readonly _tag: "AdvancedTransitionFrame";
|
|
90
|
+
} | {
|
|
91
|
+
readonly _tag: "EndedTransition";
|
|
92
|
+
} | {
|
|
93
|
+
readonly _tag: "CompletedButtonFocus";
|
|
94
|
+
} | {
|
|
95
|
+
readonly _tag: "Opened";
|
|
96
|
+
readonly maybeActiveItemIndex: Option.Option<number>;
|
|
97
|
+
} | {
|
|
98
|
+
readonly _tag: "ActivatedItem";
|
|
99
|
+
readonly index: number;
|
|
100
|
+
readonly activationTrigger: "Pointer" | "Keyboard";
|
|
101
|
+
} | {
|
|
102
|
+
readonly _tag: "SelectedItem";
|
|
103
|
+
readonly item: string;
|
|
104
|
+
} | {
|
|
105
|
+
readonly _tag: "RequestedItemClick";
|
|
106
|
+
readonly index: number;
|
|
107
|
+
} | {
|
|
108
|
+
readonly _tag: "Searched";
|
|
109
|
+
readonly key: string;
|
|
110
|
+
readonly maybeTargetIndex: Option.Option<number>;
|
|
111
|
+
} | {
|
|
112
|
+
readonly _tag: "ClearedSearch";
|
|
113
|
+
readonly version: number;
|
|
114
|
+
} | {
|
|
115
|
+
readonly _tag: "MovedPointerOverItem";
|
|
116
|
+
readonly index: number;
|
|
117
|
+
readonly screenX: number;
|
|
118
|
+
readonly screenY: number;
|
|
119
|
+
} | {
|
|
120
|
+
readonly _tag: "CompletedItemsFocus";
|
|
121
|
+
} | {
|
|
122
|
+
readonly _tag: "IgnoredMouseClick";
|
|
123
|
+
} | {
|
|
124
|
+
readonly _tag: "SuppressedSpaceScroll";
|
|
125
|
+
} | {
|
|
126
|
+
readonly _tag: "DetectedButtonMovement";
|
|
127
|
+
} | {
|
|
128
|
+
readonly _tag: "PressedPointerOnButton";
|
|
129
|
+
readonly button: number;
|
|
130
|
+
readonly pointerType: string;
|
|
131
|
+
}, never, never>;
|
|
129
132
|
}>[]];
|
|
130
133
|
/** Configuration for rendering a single-select listbox with `view`. */
|
|
131
134
|
export type ViewConfig<Message, Item> = BaseViewConfig<Message, Item, Model>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"single.d.ts","sourceRoot":"","sources":["../../../src/ui/listbox/single.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,IAAI,CAAC,EAAQ,MAAM,QAAQ,CAAA;AAEzD,OAAO,EAAE,KAAK,IAAI,EAAc,MAAM,YAAY,CAAA;AAElD,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EAKpB,MAAM,UAAU,CAAA;AAIjB,mJAAmJ;AACnJ,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,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAC,CAAA;AAEJ,6HAA6H;AAC7H,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAGxC,CAAA;AAIF,qIAAqI;AACrI,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"single.d.ts","sourceRoot":"","sources":["../../../src/ui/listbox/single.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,IAAI,CAAC,EAAQ,MAAM,QAAQ,CAAA;AAEzD,OAAO,EAAE,KAAK,IAAI,EAAc,MAAM,YAAY,CAAA;AAElD,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EAKpB,MAAM,UAAU,CAAA;AAIjB,mJAAmJ;AACnJ,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,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAC,CAAA;AAEJ,6HAA6H;AAC7H,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAGxC,CAAA;AAIF,qIAAqI;AACrI,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAYjB,CAAA;AAIF,uEAAuE;AACvE,MAAM,MAAM,UAAU,CAAC,OAAO,EAAE,IAAI,IAAI,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;AAE5E,2JAA2J;AAC3J,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAWf,CAAA;AAEF;6EAC6E;AAC7E,eAAO,MAAM,IAAI,GAAI,OAAO,EAAE,IAAI,EAChC,cAAc,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC,KACnE,CAAC,CACF,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,WAAW,CAAC,KACzD,IAAI,CAgBR,CAAA"}
|
package/dist/ui/menu/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Schema as S } from 'effect';
|
|
2
|
-
import
|
|
2
|
+
import * as Command from '../../command';
|
|
3
3
|
import { type Attribute, type Html } from '../../html';
|
|
4
4
|
import type { AnchorConfig } from '../anchor';
|
|
5
5
|
import { groupContiguous } from '../group';
|
|
@@ -165,7 +165,7 @@ export type InitConfig = Readonly<{
|
|
|
165
165
|
}>;
|
|
166
166
|
/** Creates an initial menu model from a config. Defaults to closed with no active item. */
|
|
167
167
|
export declare const init: (config: InitConfig) => Model;
|
|
168
|
-
type UpdateReturn = [Model, ReadonlyArray<Command<Message>>];
|
|
168
|
+
type UpdateReturn = [Model, ReadonlyArray<Command.Command<Message>>];
|
|
169
169
|
/** Processes a menu message and returns the next model and commands. */
|
|
170
170
|
export declare const update: (model: Model, message: Message) => UpdateReturn;
|
|
171
171
|
/** Configuration for an individual menu item's appearance. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,MAAM,IAAI,CAAC,EAGZ,MAAM,QAAQ,CAAA;AAEf,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/menu/index.ts"],"names":[],"mappings":"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"}
|