foldkit 0.100.1 → 0.102.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.
Files changed (217) hide show
  1. package/README.md +3 -2
  2. package/dist/canvas/view.d.ts +1 -1
  3. package/dist/canvas/view.d.ts.map +1 -1
  4. package/dist/canvas/view.js +5 -5
  5. package/dist/command/index.d.ts +71 -0
  6. package/dist/command/index.d.ts.map +1 -1
  7. package/dist/command/index.js +34 -1
  8. package/dist/command/public.d.ts +1 -1
  9. package/dist/command/public.d.ts.map +1 -1
  10. package/dist/command/public.js +1 -1
  11. package/dist/devTools/overlay.d.ts.map +1 -1
  12. package/dist/devTools/overlay.js +156 -149
  13. package/dist/dom/dom.d.ts +8 -11
  14. package/dist/dom/dom.d.ts.map +1 -1
  15. package/dist/dom/dom.js +8 -11
  16. package/dist/dom/elementMovement.d.ts +1 -3
  17. package/dist/dom/elementMovement.d.ts.map +1 -1
  18. package/dist/dom/elementMovement.js +1 -3
  19. package/dist/dom/inert.d.ts +2 -4
  20. package/dist/dom/inert.d.ts.map +1 -1
  21. package/dist/dom/inert.js +2 -4
  22. package/dist/dom/scrollLock.d.ts +2 -2
  23. package/dist/dom/scrollLock.js +2 -2
  24. package/dist/dom/waitForAnimation.d.ts +1 -1
  25. package/dist/dom/waitForAnimation.js +1 -1
  26. package/dist/html/boundary.d.ts +98 -0
  27. package/dist/html/boundary.d.ts.map +1 -0
  28. package/dist/html/boundary.js +176 -0
  29. package/dist/html/childAttribute.d.ts +44 -0
  30. package/dist/html/childAttribute.d.ts.map +1 -0
  31. package/dist/html/childAttribute.js +34 -0
  32. package/dist/html/index.d.ts +70 -23
  33. package/dist/html/index.d.ts.map +1 -1
  34. package/dist/html/index.js +639 -575
  35. package/dist/html/lazy.d.ts +12 -7
  36. package/dist/html/lazy.d.ts.map +1 -1
  37. package/dist/html/lazy.js +30 -11
  38. package/dist/html/public.d.ts +2 -2
  39. package/dist/html/public.d.ts.map +1 -1
  40. package/dist/html/public.js +1 -1
  41. package/dist/html/runtimeSingleton.d.ts +72 -0
  42. package/dist/html/runtimeSingleton.d.ts.map +1 -0
  43. package/dist/html/runtimeSingleton.js +112 -0
  44. package/dist/html/submodel.d.ts +98 -0
  45. package/dist/html/submodel.d.ts.map +1 -0
  46. package/dist/html/submodel.js +190 -0
  47. package/dist/index.d.ts +1 -0
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +1 -0
  50. package/dist/render/render.d.ts +1 -1
  51. package/dist/render/render.js +1 -1
  52. package/dist/runtime/messagePriority.d.ts +5 -1
  53. package/dist/runtime/messagePriority.d.ts.map +1 -1
  54. package/dist/runtime/messagePriority.js +25 -4
  55. package/dist/runtime/runtime.d.ts +11 -11
  56. package/dist/runtime/runtime.d.ts.map +1 -1
  57. package/dist/runtime/runtime.js +118 -63
  58. package/dist/runtime/subscription.d.ts +139 -19
  59. package/dist/runtime/subscription.d.ts.map +1 -1
  60. package/dist/runtime/subscription.js +90 -9
  61. package/dist/submodel/public.d.ts +4 -0
  62. package/dist/submodel/public.d.ts.map +1 -0
  63. package/dist/submodel/public.js +1 -0
  64. package/dist/submodel/submodel.d.ts +32 -0
  65. package/dist/submodel/submodel.d.ts.map +1 -0
  66. package/dist/submodel/submodel.js +1 -0
  67. package/dist/subscription/animationFrame.d.ts +23 -26
  68. package/dist/subscription/animationFrame.d.ts.map +1 -1
  69. package/dist/subscription/animationFrame.js +17 -18
  70. package/dist/subscription/public.d.ts +2 -2
  71. package/dist/subscription/public.d.ts.map +1 -1
  72. package/dist/subscription/public.js +1 -1
  73. package/dist/test/apps/disabledButton.d.ts +4 -5
  74. package/dist/test/apps/disabledButton.d.ts.map +1 -1
  75. package/dist/test/apps/disabledButton.js +16 -16
  76. package/dist/test/scene.d.ts +8 -8
  77. package/dist/test/scene.d.ts.map +1 -1
  78. package/dist/test/scene.js +25 -13
  79. package/dist/test/story.d.ts +15 -8
  80. package/dist/test/story.d.ts.map +1 -1
  81. package/dist/test/story.js +21 -9
  82. package/dist/ui/animation/index.d.ts +30 -14
  83. package/dist/ui/animation/index.d.ts.map +1 -1
  84. package/dist/ui/animation/index.js +9 -19
  85. package/dist/ui/animation/public.d.ts +2 -2
  86. package/dist/ui/animation/public.d.ts.map +1 -1
  87. package/dist/ui/animation/public.js +1 -1
  88. package/dist/ui/calendar/index.d.ts +199 -84
  89. package/dist/ui/calendar/index.d.ts.map +1 -1
  90. package/dist/ui/calendar/index.js +129 -140
  91. package/dist/ui/calendar/public.d.ts +2 -2
  92. package/dist/ui/calendar/public.d.ts.map +1 -1
  93. package/dist/ui/calendar/public.js +1 -1
  94. package/dist/ui/checkbox/index.d.ts +93 -21
  95. package/dist/ui/checkbox/index.d.ts.map +1 -1
  96. package/dist/ui/checkbox/index.js +62 -33
  97. package/dist/ui/checkbox/public.d.ts +2 -2
  98. package/dist/ui/checkbox/public.d.ts.map +1 -1
  99. package/dist/ui/checkbox/public.js +1 -1
  100. package/dist/ui/combobox/multi.d.ts +35 -91
  101. package/dist/ui/combobox/multi.d.ts.map +1 -1
  102. package/dist/ui/combobox/multi.js +34 -17
  103. package/dist/ui/combobox/multiPublic.d.ts +2 -2
  104. package/dist/ui/combobox/multiPublic.d.ts.map +1 -1
  105. package/dist/ui/combobox/multiPublic.js +1 -1
  106. package/dist/ui/combobox/public.d.ts +3 -3
  107. package/dist/ui/combobox/public.d.ts.map +1 -1
  108. package/dist/ui/combobox/public.js +2 -2
  109. package/dist/ui/combobox/shared.d.ts +56 -31
  110. package/dist/ui/combobox/shared.d.ts.map +1 -1
  111. package/dist/ui/combobox/shared.js +333 -322
  112. package/dist/ui/combobox/single.d.ts +46 -93
  113. package/dist/ui/combobox/single.d.ts.map +1 -1
  114. package/dist/ui/combobox/single.js +44 -17
  115. package/dist/ui/datePicker/index.d.ts +256 -48
  116. package/dist/ui/datePicker/index.d.ts.map +1 -1
  117. package/dist/ui/datePicker/index.js +149 -104
  118. package/dist/ui/datePicker/public.d.ts +2 -2
  119. package/dist/ui/datePicker/public.d.ts.map +1 -1
  120. package/dist/ui/datePicker/public.js +1 -1
  121. package/dist/ui/dialog/index.d.ts +95 -39
  122. package/dist/ui/dialog/index.d.ts.map +1 -1
  123. package/dist/ui/dialog/index.js +71 -62
  124. package/dist/ui/dialog/public.d.ts +2 -2
  125. package/dist/ui/dialog/public.d.ts.map +1 -1
  126. package/dist/ui/dialog/public.js +1 -1
  127. package/dist/ui/disclosure/index.d.ts +71 -31
  128. package/dist/ui/disclosure/index.d.ts.map +1 -1
  129. package/dist/ui/disclosure/index.js +57 -62
  130. package/dist/ui/disclosure/public.d.ts +2 -2
  131. package/dist/ui/disclosure/public.d.ts.map +1 -1
  132. package/dist/ui/disclosure/public.js +1 -1
  133. package/dist/ui/dragAndDrop/index.d.ts +385 -103
  134. package/dist/ui/dragAndDrop/index.d.ts.map +1 -1
  135. package/dist/ui/dragAndDrop/index.js +26 -31
  136. package/dist/ui/dragAndDrop/public.d.ts +1 -1
  137. package/dist/ui/dragAndDrop/public.d.ts.map +1 -1
  138. package/dist/ui/dragAndDrop/public.js +1 -1
  139. package/dist/ui/fileDrop/index.d.ts +42 -46
  140. package/dist/ui/fileDrop/index.d.ts.map +1 -1
  141. package/dist/ui/fileDrop/index.js +30 -46
  142. package/dist/ui/fileDrop/public.d.ts +2 -2
  143. package/dist/ui/fileDrop/public.d.ts.map +1 -1
  144. package/dist/ui/fileDrop/public.js +1 -1
  145. package/dist/ui/listbox/multi.d.ts +39 -84
  146. package/dist/ui/listbox/multi.d.ts.map +1 -1
  147. package/dist/ui/listbox/multi.js +38 -20
  148. package/dist/ui/listbox/multiPublic.d.ts +2 -2
  149. package/dist/ui/listbox/multiPublic.d.ts.map +1 -1
  150. package/dist/ui/listbox/multiPublic.js +1 -1
  151. package/dist/ui/listbox/public.d.ts +3 -3
  152. package/dist/ui/listbox/public.d.ts.map +1 -1
  153. package/dist/ui/listbox/public.js +2 -2
  154. package/dist/ui/listbox/shared.d.ts +71 -30
  155. package/dist/ui/listbox/shared.d.ts.map +1 -1
  156. package/dist/ui/listbox/shared.js +319 -296
  157. package/dist/ui/listbox/single.d.ts +57 -85
  158. package/dist/ui/listbox/single.d.ts.map +1 -1
  159. package/dist/ui/listbox/single.js +48 -24
  160. package/dist/ui/menu/index.d.ts +80 -36
  161. package/dist/ui/menu/index.d.ts.map +1 -1
  162. package/dist/ui/menu/index.js +117 -86
  163. package/dist/ui/menu/public.d.ts +2 -2
  164. package/dist/ui/menu/public.d.ts.map +1 -1
  165. package/dist/ui/menu/public.js +1 -1
  166. package/dist/ui/popover/index.d.ts +117 -44
  167. package/dist/ui/popover/index.d.ts.map +1 -1
  168. package/dist/ui/popover/index.js +88 -101
  169. package/dist/ui/popover/public.d.ts +2 -2
  170. package/dist/ui/popover/public.d.ts.map +1 -1
  171. package/dist/ui/popover/public.js +1 -1
  172. package/dist/ui/radioGroup/index.d.ts +122 -45
  173. package/dist/ui/radioGroup/index.d.ts.map +1 -1
  174. package/dist/ui/radioGroup/index.js +111 -72
  175. package/dist/ui/radioGroup/public.d.ts +2 -2
  176. package/dist/ui/radioGroup/public.d.ts.map +1 -1
  177. package/dist/ui/radioGroup/public.js +1 -1
  178. package/dist/ui/slider/index.d.ts +247 -103
  179. package/dist/ui/slider/index.d.ts.map +1 -1
  180. package/dist/ui/slider/index.js +52 -68
  181. package/dist/ui/slider/public.d.ts +2 -2
  182. package/dist/ui/slider/public.d.ts.map +1 -1
  183. package/dist/ui/slider/public.js +1 -1
  184. package/dist/ui/switch/index.d.ts +74 -21
  185. package/dist/ui/switch/index.d.ts.map +1 -1
  186. package/dist/ui/switch/index.js +62 -33
  187. package/dist/ui/switch/public.d.ts +2 -2
  188. package/dist/ui/switch/public.d.ts.map +1 -1
  189. package/dist/ui/switch/public.js +1 -1
  190. package/dist/ui/tabs/index.d.ts +107 -45
  191. package/dist/ui/tabs/index.d.ts.map +1 -1
  192. package/dist/ui/tabs/index.js +99 -81
  193. package/dist/ui/tabs/public.d.ts +2 -2
  194. package/dist/ui/tabs/public.d.ts.map +1 -1
  195. package/dist/ui/tabs/public.js +1 -1
  196. package/dist/ui/toast/index.d.ts +93 -109
  197. package/dist/ui/toast/index.d.ts.map +1 -1
  198. package/dist/ui/toast/index.js +16 -29
  199. package/dist/ui/toast/schema.d.ts +15 -4
  200. package/dist/ui/toast/schema.d.ts.map +1 -1
  201. package/dist/ui/toast/schema.js +11 -4
  202. package/dist/ui/toast/update.d.ts +36 -18
  203. package/dist/ui/toast/update.d.ts.map +1 -1
  204. package/dist/ui/toast/update.js +33 -14
  205. package/dist/ui/tooltip/index.d.ts +94 -42
  206. package/dist/ui/tooltip/index.d.ts.map +1 -1
  207. package/dist/ui/tooltip/index.js +64 -73
  208. package/dist/ui/tooltip/public.d.ts +2 -2
  209. package/dist/ui/tooltip/public.d.ts.map +1 -1
  210. package/dist/ui/tooltip/public.js +1 -1
  211. package/dist/ui/virtualList/index.d.ts +63 -80
  212. package/dist/ui/virtualList/index.d.ts.map +1 -1
  213. package/dist/ui/virtualList/index.js +22 -49
  214. package/dist/ui/virtualList/public.d.ts +2 -2
  215. package/dist/ui/virtualList/public.d.ts.map +1 -1
  216. package/dist/ui/virtualList/public.js +1 -1
  217. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { Effect, Option, Schema as S } from 'effect';
1
+ import { Effect, Equivalence, Option, Schema as S, Stream } from 'effect';
2
2
  import * as Command from '../../command/index.js';
3
3
  import { type Attribute } from '../../html/index.js';
4
4
  declare const DropTarget: S.Struct<{
@@ -84,7 +84,7 @@ export declare const PressedArrowKey: import("../../schema/index.js").CallableTa
84
84
  direction: S.Literals<readonly ["Up", "Down", "Left", "Right", "NextContainer", "PreviousContainer"]>;
85
85
  }>;
86
86
  /** An animation frame fired during auto-scroll. */
87
- export declare const CompletedAutoScroll: import("../../schema/index.js").CallableTaggedStruct<"CompletedAutoScroll", {}>;
87
+ export declare const AdvancedAutoScrollFrame: import("../../schema/index.js").CallableTaggedStruct<"AdvancedAutoScrollFrame", {}>;
88
88
  /** The FocusItem Command completed. */
89
89
  export declare const CompletedFocusItem: import("../../schema/index.js").CallableTaggedStruct<"CompletedFocusItem", {}>;
90
90
  /** Union of all messages the drag-and-drop component can produce. */
@@ -97,7 +97,7 @@ export declare const Message: S.Union<[
97
97
  typeof ResolvedKeyboardMove,
98
98
  typeof ConfirmedKeyboardDrop,
99
99
  typeof PressedArrowKey,
100
- typeof CompletedAutoScroll,
100
+ typeof AdvancedAutoScrollFrame,
101
101
  typeof CompletedFocusItem
102
102
  ]>;
103
103
  export type Message = typeof Message.Type;
@@ -151,119 +151,401 @@ type UpdateReturn = readonly [
151
151
  ];
152
152
  /** Processes a drag-and-drop message and returns the next model, commands, and an optional out-message for the parent. */
153
153
  export declare const update: (model: Model, message: Message) => UpdateReturn;
154
- /** Schema describing the subscription dependencies for document-level drag tracking. */
155
- export declare const SubscriptionDependencies: S.Struct<{
156
- readonly documentPointer: S.Struct<{
157
- readonly dragActivity: S.Literals<readonly ["Idle", "Active"]>;
158
- readonly orientation: S.Literals<readonly ["Horizontal", "Vertical"]>;
159
- }>;
160
- readonly documentEscape: S.Struct<{
161
- readonly dragActivity: S.Literals<readonly ["Idle", "Active"]>;
162
- }>;
163
- readonly documentKeyboard: S.Struct<{
164
- readonly dragActivity: S.Literals<readonly ["Idle", "Active"]>;
165
- }>;
166
- readonly autoScroll: S.Struct<{
167
- readonly isDragging: S.Boolean;
168
- readonly clientY: S.Number;
169
- }>;
170
- }>;
171
154
  /** Document-level subscriptions for pointer and keyboard events during drag operations. */
172
- export declare const subscriptions: import("../../runtime/subscription.js").Subscriptions<{
173
- readonly id: string;
174
- readonly orientation: "Vertical" | "Horizontal";
175
- readonly activationThreshold: number;
176
- readonly dragState: {
177
- readonly _tag: "Idle";
178
- } | {
179
- readonly _tag: "Pending";
180
- readonly itemId: string;
181
- readonly containerId: string;
182
- readonly index: number;
183
- readonly origin: {
155
+ export declare const subscriptions: {
156
+ readonly documentPointer: {
157
+ readonly dependenciesSchema: S.Schema<{
158
+ readonly dragActivity: "Idle" | "Active";
159
+ readonly orientation: "Vertical" | "Horizontal";
160
+ }> & {
161
+ readonly fields: S.Struct.Fields;
162
+ };
163
+ readonly modelToDependencies: (model: {
164
+ readonly id: string;
165
+ readonly orientation: "Vertical" | "Horizontal";
166
+ readonly activationThreshold: number;
167
+ readonly dragState: {
168
+ readonly _tag: "Idle";
169
+ } | {
170
+ readonly _tag: "Pending";
171
+ readonly itemId: string;
172
+ readonly containerId: string;
173
+ readonly index: number;
174
+ readonly origin: {
175
+ readonly screenX: number;
176
+ readonly screenY: number;
177
+ };
178
+ } | {
179
+ readonly _tag: "Dragging";
180
+ readonly itemId: string;
181
+ readonly sourceContainerId: string;
182
+ readonly sourceIndex: number;
183
+ readonly origin: {
184
+ readonly screenX: number;
185
+ readonly screenY: number;
186
+ };
187
+ readonly current: {
188
+ readonly clientX: number;
189
+ readonly clientY: number;
190
+ };
191
+ readonly maybeDropTarget: Option.Option<{
192
+ readonly containerId: string;
193
+ readonly index: number;
194
+ }>;
195
+ } | {
196
+ readonly _tag: "KeyboardDragging";
197
+ readonly itemId: string;
198
+ readonly sourceContainerId: string;
199
+ readonly sourceIndex: number;
200
+ readonly targetContainerId: string;
201
+ readonly targetIndex: number;
202
+ };
203
+ }) => {
204
+ readonly dragActivity: "Idle" | "Active";
205
+ readonly orientation: "Vertical" | "Horizontal";
206
+ };
207
+ readonly keepAliveEquivalence?: never;
208
+ readonly dependenciesToStream: (dependencies: {
209
+ readonly dragActivity: "Idle" | "Active";
210
+ readonly orientation: "Vertical" | "Horizontal";
211
+ }) => Stream.Stream<{
212
+ readonly _tag: "CancelledDrag";
213
+ } | {
214
+ readonly _tag: "PressedDraggable";
215
+ readonly itemId: string;
216
+ readonly containerId: string;
217
+ readonly index: number;
184
218
  readonly screenX: number;
185
219
  readonly screenY: number;
186
- };
187
- } | {
188
- readonly _tag: "Dragging";
189
- readonly itemId: string;
190
- readonly sourceContainerId: string;
191
- readonly sourceIndex: number;
192
- readonly origin: {
220
+ } | {
221
+ readonly _tag: "MovedPointer";
193
222
  readonly screenX: number;
194
223
  readonly screenY: number;
224
+ readonly clientX: number;
225
+ readonly clientY: number;
226
+ readonly maybeDropTarget: Option.Option<{
227
+ readonly containerId: string;
228
+ readonly index: number;
229
+ }>;
230
+ } | {
231
+ readonly _tag: "ReleasedPointer";
232
+ } | {
233
+ readonly _tag: "ActivatedKeyboardDrag";
234
+ readonly itemId: string;
235
+ readonly containerId: string;
236
+ readonly index: number;
237
+ } | {
238
+ readonly _tag: "ResolvedKeyboardMove";
239
+ readonly targetContainerId: string;
240
+ readonly targetIndex: number;
241
+ } | {
242
+ readonly _tag: "ConfirmedKeyboardDrop";
243
+ } | {
244
+ readonly _tag: "PressedArrowKey";
245
+ readonly direction: "Left" | "Right" | "Up" | "Down" | "NextContainer" | "PreviousContainer";
246
+ } | {
247
+ readonly _tag: "AdvancedAutoScrollFrame";
248
+ } | {
249
+ readonly _tag: "CompletedFocusItem";
250
+ }, never, never>;
251
+ } & {
252
+ readonly __subscription: never;
253
+ };
254
+ readonly documentEscape: {
255
+ readonly dependenciesSchema: S.Schema<{
256
+ readonly dragActivity: "Idle" | "Active";
257
+ }> & {
258
+ readonly fields: S.Struct.Fields;
259
+ };
260
+ readonly modelToDependencies: (model: {
261
+ readonly id: string;
262
+ readonly orientation: "Vertical" | "Horizontal";
263
+ readonly activationThreshold: number;
264
+ readonly dragState: {
265
+ readonly _tag: "Idle";
266
+ } | {
267
+ readonly _tag: "Pending";
268
+ readonly itemId: string;
269
+ readonly containerId: string;
270
+ readonly index: number;
271
+ readonly origin: {
272
+ readonly screenX: number;
273
+ readonly screenY: number;
274
+ };
275
+ } | {
276
+ readonly _tag: "Dragging";
277
+ readonly itemId: string;
278
+ readonly sourceContainerId: string;
279
+ readonly sourceIndex: number;
280
+ readonly origin: {
281
+ readonly screenX: number;
282
+ readonly screenY: number;
283
+ };
284
+ readonly current: {
285
+ readonly clientX: number;
286
+ readonly clientY: number;
287
+ };
288
+ readonly maybeDropTarget: Option.Option<{
289
+ readonly containerId: string;
290
+ readonly index: number;
291
+ }>;
292
+ } | {
293
+ readonly _tag: "KeyboardDragging";
294
+ readonly itemId: string;
295
+ readonly sourceContainerId: string;
296
+ readonly sourceIndex: number;
297
+ readonly targetContainerId: string;
298
+ readonly targetIndex: number;
299
+ };
300
+ }) => {
301
+ readonly dragActivity: "Idle" | "Active";
195
302
  };
196
- readonly current: {
303
+ readonly keepAliveEquivalence?: never;
304
+ readonly dependenciesToStream: (dependencies: {
305
+ readonly dragActivity: "Idle" | "Active";
306
+ }) => Stream.Stream<{
307
+ readonly _tag: "CancelledDrag";
308
+ } | {
309
+ readonly _tag: "PressedDraggable";
310
+ readonly itemId: string;
311
+ readonly containerId: string;
312
+ readonly index: number;
313
+ readonly screenX: number;
314
+ readonly screenY: number;
315
+ } | {
316
+ readonly _tag: "MovedPointer";
317
+ readonly screenX: number;
318
+ readonly screenY: number;
197
319
  readonly clientX: number;
198
320
  readonly clientY: number;
321
+ readonly maybeDropTarget: Option.Option<{
322
+ readonly containerId: string;
323
+ readonly index: number;
324
+ }>;
325
+ } | {
326
+ readonly _tag: "ReleasedPointer";
327
+ } | {
328
+ readonly _tag: "ActivatedKeyboardDrag";
329
+ readonly itemId: string;
330
+ readonly containerId: string;
331
+ readonly index: number;
332
+ } | {
333
+ readonly _tag: "ResolvedKeyboardMove";
334
+ readonly targetContainerId: string;
335
+ readonly targetIndex: number;
336
+ } | {
337
+ readonly _tag: "ConfirmedKeyboardDrop";
338
+ } | {
339
+ readonly _tag: "PressedArrowKey";
340
+ readonly direction: "Left" | "Right" | "Up" | "Down" | "NextContainer" | "PreviousContainer";
341
+ } | {
342
+ readonly _tag: "AdvancedAutoScrollFrame";
343
+ } | {
344
+ readonly _tag: "CompletedFocusItem";
345
+ }, never, never>;
346
+ } & {
347
+ readonly __subscription: never;
348
+ };
349
+ readonly documentKeyboard: {
350
+ readonly dependenciesSchema: S.Schema<{
351
+ readonly dragActivity: "Idle" | "Active";
352
+ }> & {
353
+ readonly fields: S.Struct.Fields;
354
+ };
355
+ readonly modelToDependencies: (model: {
356
+ readonly id: string;
357
+ readonly orientation: "Vertical" | "Horizontal";
358
+ readonly activationThreshold: number;
359
+ readonly dragState: {
360
+ readonly _tag: "Idle";
361
+ } | {
362
+ readonly _tag: "Pending";
363
+ readonly itemId: string;
364
+ readonly containerId: string;
365
+ readonly index: number;
366
+ readonly origin: {
367
+ readonly screenX: number;
368
+ readonly screenY: number;
369
+ };
370
+ } | {
371
+ readonly _tag: "Dragging";
372
+ readonly itemId: string;
373
+ readonly sourceContainerId: string;
374
+ readonly sourceIndex: number;
375
+ readonly origin: {
376
+ readonly screenX: number;
377
+ readonly screenY: number;
378
+ };
379
+ readonly current: {
380
+ readonly clientX: number;
381
+ readonly clientY: number;
382
+ };
383
+ readonly maybeDropTarget: Option.Option<{
384
+ readonly containerId: string;
385
+ readonly index: number;
386
+ }>;
387
+ } | {
388
+ readonly _tag: "KeyboardDragging";
389
+ readonly itemId: string;
390
+ readonly sourceContainerId: string;
391
+ readonly sourceIndex: number;
392
+ readonly targetContainerId: string;
393
+ readonly targetIndex: number;
394
+ };
395
+ }) => {
396
+ readonly dragActivity: "Idle" | "Active";
199
397
  };
200
- readonly maybeDropTarget: Option.Option<{
398
+ readonly keepAliveEquivalence?: never;
399
+ readonly dependenciesToStream: (dependencies: {
400
+ readonly dragActivity: "Idle" | "Active";
401
+ }) => Stream.Stream<{
402
+ readonly _tag: "CancelledDrag";
403
+ } | {
404
+ readonly _tag: "PressedDraggable";
405
+ readonly itemId: string;
406
+ readonly containerId: string;
407
+ readonly index: number;
408
+ readonly screenX: number;
409
+ readonly screenY: number;
410
+ } | {
411
+ readonly _tag: "MovedPointer";
412
+ readonly screenX: number;
413
+ readonly screenY: number;
414
+ readonly clientX: number;
415
+ readonly clientY: number;
416
+ readonly maybeDropTarget: Option.Option<{
417
+ readonly containerId: string;
418
+ readonly index: number;
419
+ }>;
420
+ } | {
421
+ readonly _tag: "ReleasedPointer";
422
+ } | {
423
+ readonly _tag: "ActivatedKeyboardDrag";
424
+ readonly itemId: string;
201
425
  readonly containerId: string;
202
426
  readonly index: number;
427
+ } | {
428
+ readonly _tag: "ResolvedKeyboardMove";
429
+ readonly targetContainerId: string;
430
+ readonly targetIndex: number;
431
+ } | {
432
+ readonly _tag: "ConfirmedKeyboardDrop";
433
+ } | {
434
+ readonly _tag: "PressedArrowKey";
435
+ readonly direction: "Left" | "Right" | "Up" | "Down" | "NextContainer" | "PreviousContainer";
436
+ } | {
437
+ readonly _tag: "AdvancedAutoScrollFrame";
438
+ } | {
439
+ readonly _tag: "CompletedFocusItem";
440
+ }, never, never>;
441
+ } & {
442
+ readonly __subscription: never;
443
+ };
444
+ readonly autoScroll: {
445
+ readonly dependenciesSchema: S.Schema<{
446
+ readonly isDragging: boolean;
447
+ readonly clientY: number;
448
+ }> & {
449
+ readonly fields: S.Struct.Fields;
450
+ };
451
+ readonly modelToDependencies: (model: {
452
+ readonly id: string;
453
+ readonly orientation: "Vertical" | "Horizontal";
454
+ readonly activationThreshold: number;
455
+ readonly dragState: {
456
+ readonly _tag: "Idle";
457
+ } | {
458
+ readonly _tag: "Pending";
459
+ readonly itemId: string;
460
+ readonly containerId: string;
461
+ readonly index: number;
462
+ readonly origin: {
463
+ readonly screenX: number;
464
+ readonly screenY: number;
465
+ };
466
+ } | {
467
+ readonly _tag: "Dragging";
468
+ readonly itemId: string;
469
+ readonly sourceContainerId: string;
470
+ readonly sourceIndex: number;
471
+ readonly origin: {
472
+ readonly screenX: number;
473
+ readonly screenY: number;
474
+ };
475
+ readonly current: {
476
+ readonly clientX: number;
477
+ readonly clientY: number;
478
+ };
479
+ readonly maybeDropTarget: Option.Option<{
480
+ readonly containerId: string;
481
+ readonly index: number;
482
+ }>;
483
+ } | {
484
+ readonly _tag: "KeyboardDragging";
485
+ readonly itemId: string;
486
+ readonly sourceContainerId: string;
487
+ readonly sourceIndex: number;
488
+ readonly targetContainerId: string;
489
+ readonly targetIndex: number;
490
+ };
491
+ }) => {
492
+ readonly isDragging: boolean;
493
+ readonly clientY: number;
494
+ };
495
+ readonly keepAliveEquivalence: Equivalence.Equivalence<{
496
+ readonly isDragging: boolean;
497
+ readonly clientY: number;
203
498
  }>;
204
- } | {
205
- readonly _tag: "KeyboardDragging";
206
- readonly itemId: string;
207
- readonly sourceContainerId: string;
208
- readonly sourceIndex: number;
209
- readonly targetContainerId: string;
210
- readonly targetIndex: number;
499
+ readonly dependenciesToStream: (dependencies: {
500
+ readonly isDragging: boolean;
501
+ readonly clientY: number;
502
+ }, readDependencies: () => {
503
+ readonly isDragging: boolean;
504
+ readonly clientY: number;
505
+ }) => Stream.Stream<{
506
+ readonly _tag: "CancelledDrag";
507
+ } | {
508
+ readonly _tag: "PressedDraggable";
509
+ readonly itemId: string;
510
+ readonly containerId: string;
511
+ readonly index: number;
512
+ readonly screenX: number;
513
+ readonly screenY: number;
514
+ } | {
515
+ readonly _tag: "MovedPointer";
516
+ readonly screenX: number;
517
+ readonly screenY: number;
518
+ readonly clientX: number;
519
+ readonly clientY: number;
520
+ readonly maybeDropTarget: Option.Option<{
521
+ readonly containerId: string;
522
+ readonly index: number;
523
+ }>;
524
+ } | {
525
+ readonly _tag: "ReleasedPointer";
526
+ } | {
527
+ readonly _tag: "ActivatedKeyboardDrag";
528
+ readonly itemId: string;
529
+ readonly containerId: string;
530
+ readonly index: number;
531
+ } | {
532
+ readonly _tag: "ResolvedKeyboardMove";
533
+ readonly targetContainerId: string;
534
+ readonly targetIndex: number;
535
+ } | {
536
+ readonly _tag: "ConfirmedKeyboardDrop";
537
+ } | {
538
+ readonly _tag: "PressedArrowKey";
539
+ readonly direction: "Left" | "Right" | "Up" | "Down" | "NextContainer" | "PreviousContainer";
540
+ } | {
541
+ readonly _tag: "AdvancedAutoScrollFrame";
542
+ } | {
543
+ readonly _tag: "CompletedFocusItem";
544
+ }, never, never>;
545
+ } & {
546
+ readonly __subscription: never;
211
547
  };
212
- }, {
213
- readonly _tag: "CancelledDrag";
214
- } | {
215
- readonly _tag: "PressedDraggable";
216
- readonly itemId: string;
217
- readonly containerId: string;
218
- readonly index: number;
219
- readonly screenX: number;
220
- readonly screenY: number;
221
- } | {
222
- readonly _tag: "MovedPointer";
223
- readonly screenX: number;
224
- readonly screenY: number;
225
- readonly clientX: number;
226
- readonly clientY: number;
227
- readonly maybeDropTarget: Option.Option<{
228
- readonly containerId: string;
229
- readonly index: number;
230
- }>;
231
- } | {
232
- readonly _tag: "ReleasedPointer";
233
- } | {
234
- readonly _tag: "ActivatedKeyboardDrag";
235
- readonly itemId: string;
236
- readonly containerId: string;
237
- readonly index: number;
238
- } | {
239
- readonly _tag: "ResolvedKeyboardMove";
240
- readonly targetContainerId: string;
241
- readonly targetIndex: number;
242
- } | {
243
- readonly _tag: "ConfirmedKeyboardDrop";
244
- } | {
245
- readonly _tag: "PressedArrowKey";
246
- readonly direction: "Left" | "Right" | "Up" | "Down" | "NextContainer" | "PreviousContainer";
247
- } | {
248
- readonly _tag: "CompletedAutoScroll";
249
- } | {
250
- readonly _tag: "CompletedFocusItem";
251
- }, S.Struct<{
252
- readonly documentPointer: S.Struct<{
253
- readonly dragActivity: S.Literals<readonly ["Idle", "Active"]>;
254
- readonly orientation: S.Literals<readonly ["Horizontal", "Vertical"]>;
255
- }>;
256
- readonly documentEscape: S.Struct<{
257
- readonly dragActivity: S.Literals<readonly ["Idle", "Active"]>;
258
- }>;
259
- readonly documentKeyboard: S.Struct<{
260
- readonly dragActivity: S.Literals<readonly ["Idle", "Active"]>;
261
- }>;
262
- readonly autoScroll: S.Struct<{
263
- readonly isDragging: S.Boolean;
264
- readonly clientY: S.Number;
265
- }>;
266
- }>, never>;
548
+ };
267
549
  /** Messages the draggable view helper can dispatch. */
268
550
  export type DraggableMessage = typeof PressedDraggable.Type | typeof ActivatedKeyboardDrag.Type;
269
551
  /** Configuration for creating draggable attributes with `draggable`. */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/dragAndDrop/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/dragAndDrop/index.ts"],"names":[],"mappings":"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"}