foldkit 0.98.1 → 0.100.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.
@@ -34,13 +34,8 @@ export type InitConfig = BaseInitConfig & Readonly<{
34
34
  export declare const init: (config: InitConfig) => Model;
35
35
  /** Processes a listbox message and returns the next model and commands. Stays open on selection and toggles item membership (multi-select behavior). */
36
36
  export declare const update: (model: {
37
+ readonly selectedItems: readonly string[];
37
38
  readonly id: string;
38
- readonly maybeActiveItemIndex: Option.Option<number>;
39
- readonly maybeLastPointerPosition: Option.Option<{
40
- readonly screenX: number;
41
- readonly screenY: number;
42
- }>;
43
- readonly maybeLastButtonPointerType: Option.Option<string>;
44
39
  readonly isOpen: boolean;
45
40
  readonly isAnimated: boolean;
46
41
  readonly isModal: boolean;
@@ -50,18 +45,18 @@ export declare const update: (model: {
50
45
  readonly isShowing: boolean;
51
46
  readonly transitionState: "Idle" | "EnterStart" | "EnterAnimating" | "LeaveStart" | "LeaveAnimating";
52
47
  };
48
+ readonly maybeActiveItemIndex: Option.Option<number>;
53
49
  readonly activationTrigger: "Pointer" | "Keyboard";
54
50
  readonly searchQuery: string;
55
51
  readonly searchVersion: number;
56
- readonly selectedItems: readonly string[];
57
- }, message: Message) => readonly [{
58
- readonly id: string;
59
- readonly maybeActiveItemIndex: Option.Option<number>;
60
52
  readonly maybeLastPointerPosition: Option.Option<{
61
53
  readonly screenX: number;
62
54
  readonly screenY: number;
63
55
  }>;
64
56
  readonly maybeLastButtonPointerType: Option.Option<string>;
57
+ }, message: Message) => readonly [{
58
+ readonly selectedItems: readonly string[];
59
+ readonly id: string;
65
60
  readonly isOpen: boolean;
66
61
  readonly isAnimated: boolean;
67
62
  readonly isModal: boolean;
@@ -71,10 +66,15 @@ export declare const update: (model: {
71
66
  readonly isShowing: boolean;
72
67
  readonly transitionState: "Idle" | "EnterStart" | "EnterAnimating" | "LeaveStart" | "LeaveAnimating";
73
68
  };
69
+ readonly maybeActiveItemIndex: Option.Option<number>;
74
70
  readonly activationTrigger: "Pointer" | "Keyboard";
75
71
  readonly searchQuery: string;
76
72
  readonly searchVersion: number;
77
- readonly selectedItems: readonly string[];
73
+ readonly maybeLastPointerPosition: Option.Option<{
74
+ readonly screenX: number;
75
+ readonly screenY: number;
76
+ }>;
77
+ readonly maybeLastButtonPointerType: Option.Option<string>;
78
78
  }, readonly Readonly<{
79
79
  name: string;
80
80
  args?: Record<string, unknown>;
@@ -87,8 +87,8 @@ export declare const update: (model: {
87
87
  readonly _tag: "BlurredItems";
88
88
  } | {
89
89
  readonly _tag: "ActivatedItem";
90
- readonly activationTrigger: "Pointer" | "Keyboard";
91
90
  readonly index: number;
91
+ readonly activationTrigger: "Pointer" | "Keyboard";
92
92
  } | {
93
93
  readonly _tag: "DeactivatedItem";
94
94
  } | {
@@ -106,9 +106,9 @@ export declare const update: (model: {
106
106
  readonly version: number;
107
107
  } | {
108
108
  readonly _tag: "MovedPointerOverItem";
109
+ readonly index: number;
109
110
  readonly screenX: number;
110
111
  readonly screenY: number;
111
- readonly index: number;
112
112
  } | {
113
113
  readonly _tag: "CompletedLockScroll";
114
114
  } | {
@@ -146,8 +146,8 @@ export declare const update: (model: {
146
146
  };
147
147
  } | {
148
148
  readonly _tag: "PressedPointerOnButton";
149
- readonly button: number;
150
149
  readonly pointerType: string;
150
+ readonly button: number;
151
151
  }, never, never>;
152
152
  }>[]];
153
153
  /** Programmatically opens the listbox, updating the model and returning
@@ -163,13 +163,8 @@ export type ViewConfig<ParentMessage, Item> = BaseViewConfig<ParentMessage, Item
163
163
  /** Renders a headless multi-select listbox with typeahead search, keyboard navigation, selection tracking, and aria-activedescendant focus management. */
164
164
  export declare const view: <ParentMessage, Item>(config: Readonly<{
165
165
  model: {
166
+ readonly selectedItems: readonly string[];
166
167
  readonly id: string;
167
- readonly maybeActiveItemIndex: Option.Option<number>;
168
- readonly maybeLastPointerPosition: Option.Option<{
169
- readonly screenX: number;
170
- readonly screenY: number;
171
- }>;
172
- readonly maybeLastButtonPointerType: Option.Option<string>;
173
168
  readonly isOpen: boolean;
174
169
  readonly isAnimated: boolean;
175
170
  readonly isModal: boolean;
@@ -179,10 +174,15 @@ export declare const view: <ParentMessage, Item>(config: Readonly<{
179
174
  readonly isShowing: boolean;
180
175
  readonly transitionState: "Idle" | "EnterStart" | "EnterAnimating" | "LeaveStart" | "LeaveAnimating";
181
176
  };
177
+ readonly maybeActiveItemIndex: Option.Option<number>;
182
178
  readonly activationTrigger: "Pointer" | "Keyboard";
183
179
  readonly searchQuery: string;
184
180
  readonly searchVersion: number;
185
- readonly selectedItems: readonly string[];
181
+ readonly maybeLastPointerPosition: Option.Option<{
182
+ readonly screenX: number;
183
+ readonly screenY: number;
184
+ }>;
185
+ readonly maybeLastButtonPointerType: Option.Option<string>;
186
186
  };
187
187
  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 | {
188
188
  readonly _tag: "CompletedAnchorListbox";
@@ -246,8 +246,8 @@ export declare const makeUpdate: <Model extends BaseModel>(handleSelectedItem: (
246
246
  readonly _tag: "BlurredItems";
247
247
  } | {
248
248
  readonly _tag: "ActivatedItem";
249
- readonly activationTrigger: "Pointer" | "Keyboard";
250
249
  readonly index: number;
250
+ readonly activationTrigger: "Pointer" | "Keyboard";
251
251
  } | {
252
252
  readonly _tag: "DeactivatedItem";
253
253
  } | {
@@ -265,9 +265,9 @@ export declare const makeUpdate: <Model extends BaseModel>(handleSelectedItem: (
265
265
  readonly version: number;
266
266
  } | {
267
267
  readonly _tag: "MovedPointerOverItem";
268
+ readonly index: number;
268
269
  readonly screenX: number;
269
270
  readonly screenY: number;
270
- readonly index: number;
271
271
  } | {
272
272
  readonly _tag: "CompletedLockScroll";
273
273
  } | {
@@ -305,8 +305,8 @@ export declare const makeUpdate: <Model extends BaseModel>(handleSelectedItem: (
305
305
  };
306
306
  } | {
307
307
  readonly _tag: "PressedPointerOnButton";
308
- readonly button: number;
309
308
  readonly pointerType: string;
309
+ readonly button: number;
310
310
  }, never, never>;
311
311
  }>[]];
312
312
  /** The anchor-positioning Mount this Listbox renders when an anchor is
@@ -34,13 +34,8 @@ export type InitConfig = BaseInitConfig & Readonly<{
34
34
  export declare const init: (config: InitConfig) => Model;
35
35
  /** Processes a listbox message and returns the next model and commands. Closes the listbox on selection (single-select behavior). */
36
36
  export declare const update: (model: {
37
+ readonly maybeSelectedItem: Option.Option<string>;
37
38
  readonly id: string;
38
- readonly maybeActiveItemIndex: Option.Option<number>;
39
- readonly maybeLastPointerPosition: Option.Option<{
40
- readonly screenX: number;
41
- readonly screenY: number;
42
- }>;
43
- readonly maybeLastButtonPointerType: Option.Option<string>;
44
39
  readonly isOpen: boolean;
45
40
  readonly isAnimated: boolean;
46
41
  readonly isModal: boolean;
@@ -50,18 +45,18 @@ export declare const update: (model: {
50
45
  readonly isShowing: boolean;
51
46
  readonly transitionState: "Idle" | "EnterStart" | "EnterAnimating" | "LeaveStart" | "LeaveAnimating";
52
47
  };
48
+ readonly maybeActiveItemIndex: Option.Option<number>;
53
49
  readonly activationTrigger: "Pointer" | "Keyboard";
54
50
  readonly searchQuery: string;
55
51
  readonly searchVersion: number;
56
- readonly maybeSelectedItem: Option.Option<string>;
57
- }, message: Message) => readonly [{
58
- readonly id: string;
59
- readonly maybeActiveItemIndex: Option.Option<number>;
60
52
  readonly maybeLastPointerPosition: Option.Option<{
61
53
  readonly screenX: number;
62
54
  readonly screenY: number;
63
55
  }>;
64
56
  readonly maybeLastButtonPointerType: Option.Option<string>;
57
+ }, message: Message) => readonly [{
58
+ readonly maybeSelectedItem: Option.Option<string>;
59
+ readonly id: string;
65
60
  readonly isOpen: boolean;
66
61
  readonly isAnimated: boolean;
67
62
  readonly isModal: boolean;
@@ -71,10 +66,15 @@ export declare const update: (model: {
71
66
  readonly isShowing: boolean;
72
67
  readonly transitionState: "Idle" | "EnterStart" | "EnterAnimating" | "LeaveStart" | "LeaveAnimating";
73
68
  };
69
+ readonly maybeActiveItemIndex: Option.Option<number>;
74
70
  readonly activationTrigger: "Pointer" | "Keyboard";
75
71
  readonly searchQuery: string;
76
72
  readonly searchVersion: number;
77
- readonly maybeSelectedItem: Option.Option<string>;
73
+ readonly maybeLastPointerPosition: Option.Option<{
74
+ readonly screenX: number;
75
+ readonly screenY: number;
76
+ }>;
77
+ readonly maybeLastButtonPointerType: Option.Option<string>;
78
78
  }, readonly Readonly<{
79
79
  name: string;
80
80
  args?: Record<string, unknown>;
@@ -87,8 +87,8 @@ export declare const update: (model: {
87
87
  readonly _tag: "BlurredItems";
88
88
  } | {
89
89
  readonly _tag: "ActivatedItem";
90
- readonly activationTrigger: "Pointer" | "Keyboard";
91
90
  readonly index: number;
91
+ readonly activationTrigger: "Pointer" | "Keyboard";
92
92
  } | {
93
93
  readonly _tag: "DeactivatedItem";
94
94
  } | {
@@ -106,9 +106,9 @@ export declare const update: (model: {
106
106
  readonly version: number;
107
107
  } | {
108
108
  readonly _tag: "MovedPointerOverItem";
109
+ readonly index: number;
109
110
  readonly screenX: number;
110
111
  readonly screenY: number;
111
- readonly index: number;
112
112
  } | {
113
113
  readonly _tag: "CompletedLockScroll";
114
114
  } | {
@@ -146,8 +146,8 @@ export declare const update: (model: {
146
146
  };
147
147
  } | {
148
148
  readonly _tag: "PressedPointerOnButton";
149
- readonly button: number;
150
149
  readonly pointerType: string;
150
+ readonly button: number;
151
151
  }, never, never>;
152
152
  }>[]];
153
153
  /** Programmatically opens the listbox, updating the model and returning
@@ -164,13 +164,8 @@ export type ViewConfig<ParentMessage, Item> = BaseViewConfig<ParentMessage, Item
164
164
  /** Renders a headless single-select listbox with typeahead search, keyboard navigation, selection tracking, and aria-activedescendant focus management. */
165
165
  export declare const view: <ParentMessage, Item>(config: Readonly<{
166
166
  model: {
167
+ readonly maybeSelectedItem: Option.Option<string>;
167
168
  readonly id: string;
168
- readonly maybeActiveItemIndex: Option.Option<number>;
169
- readonly maybeLastPointerPosition: Option.Option<{
170
- readonly screenX: number;
171
- readonly screenY: number;
172
- }>;
173
- readonly maybeLastButtonPointerType: Option.Option<string>;
174
169
  readonly isOpen: boolean;
175
170
  readonly isAnimated: boolean;
176
171
  readonly isModal: boolean;
@@ -180,10 +175,15 @@ export declare const view: <ParentMessage, Item>(config: Readonly<{
180
175
  readonly isShowing: boolean;
181
176
  readonly transitionState: "Idle" | "EnterStart" | "EnterAnimating" | "LeaveStart" | "LeaveAnimating";
182
177
  };
178
+ readonly maybeActiveItemIndex: Option.Option<number>;
183
179
  readonly activationTrigger: "Pointer" | "Keyboard";
184
180
  readonly searchQuery: string;
185
181
  readonly searchVersion: number;
186
- readonly maybeSelectedItem: Option.Option<string>;
182
+ readonly maybeLastPointerPosition: Option.Option<{
183
+ readonly screenX: number;
184
+ readonly screenY: number;
185
+ }>;
186
+ readonly maybeLastButtonPointerType: Option.Option<string>;
187
187
  };
188
188
  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 | {
189
189
  readonly _tag: "CompletedAnchorListbox";
@@ -114,8 +114,8 @@ export declare const SubscriptionDependencies: S.Struct<{
114
114
  * rendered inside a Shadow DOM. The root is read lazily so consumers can
115
115
  * resolve it at subscription time. */
116
116
  export declare const subscriptionsForRoot: (getTrackRoot: () => Document | ShadowRoot) => import("../../runtime/subscription.js").Subscriptions<{
117
- readonly value: number;
118
117
  readonly id: string;
118
+ readonly value: number;
119
119
  readonly min: number;
120
120
  readonly max: number;
121
121
  readonly step: number;
@@ -153,8 +153,8 @@ export declare const subscriptionsForRoot: (getTrackRoot: () => Document | Shado
153
153
  }>, never>;
154
154
  /** Default drag subscriptions, with the track looked up via `document`. */
155
155
  export declare const subscriptions: import("../../runtime/subscription.js").Subscriptions<{
156
- readonly value: number;
157
156
  readonly id: string;
157
+ readonly value: number;
158
158
  readonly min: number;
159
159
  readonly max: number;
160
160
  readonly step: number;