@foldkit/ui 0.168.0-canary.b6c5fa38ee97 → 0.168.0-canary.e1bac2b2ac98

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 (273) hide show
  1. package/README.md +8 -6
  2. package/dist/anchor/index.d.ts +1 -1
  3. package/dist/anchor/index.d.ts.map +1 -1
  4. package/dist/anchor/index.js +1 -1
  5. package/dist/animation/block.d.ts +750 -0
  6. package/dist/animation/block.d.ts.map +1 -0
  7. package/dist/animation/block.js +99 -0
  8. package/dist/animation/index.d.ts +1 -51
  9. package/dist/animation/index.d.ts.map +1 -1
  10. package/dist/animation/index.js +1 -74
  11. package/dist/animation/public.d.ts +1 -1
  12. package/dist/animation/public.d.ts.map +1 -1
  13. package/dist/animation/public.js +1 -1
  14. package/dist/animation/schema.d.ts +7 -0
  15. package/dist/animation/schema.d.ts.map +1 -1
  16. package/dist/animation/schema.js +5 -0
  17. package/dist/animation/update.d.ts +311 -17
  18. package/dist/animation/update.d.ts.map +1 -1
  19. package/dist/animation/update.js +117 -84
  20. package/dist/button/button.d.ts +24 -0
  21. package/dist/button/button.d.ts.map +1 -0
  22. package/dist/button/button.js +29 -0
  23. package/dist/button/index.d.ts +1 -23
  24. package/dist/button/index.d.ts.map +1 -1
  25. package/dist/button/index.js +1 -29
  26. package/dist/calendar/block.d.ts +8646 -0
  27. package/dist/calendar/block.d.ts.map +1 -0
  28. package/dist/calendar/block.js +816 -0
  29. package/dist/calendar/index.d.ts +1 -877
  30. package/dist/calendar/index.d.ts.map +1 -1
  31. package/dist/calendar/index.js +1 -785
  32. package/dist/calendar/public.d.ts +1 -1
  33. package/dist/calendar/public.d.ts.map +1 -1
  34. package/dist/calendar/public.js +1 -1
  35. package/dist/checkbox/checkbox.d.ts +84 -0
  36. package/dist/checkbox/checkbox.d.ts.map +1 -0
  37. package/dist/checkbox/checkbox.js +81 -0
  38. package/dist/checkbox/index.d.ts +1 -83
  39. package/dist/checkbox/index.d.ts.map +1 -1
  40. package/dist/checkbox/index.js +1 -81
  41. package/dist/combobox/multi.d.ts +5669 -75
  42. package/dist/combobox/multi.d.ts.map +1 -1
  43. package/dist/combobox/multi.js +75 -19
  44. package/dist/combobox/multiPublic.d.ts +2 -2
  45. package/dist/combobox/multiPublic.d.ts.map +1 -1
  46. package/dist/combobox/multiPublic.js +1 -1
  47. package/dist/combobox/public.d.ts +3 -3
  48. package/dist/combobox/public.d.ts.map +1 -1
  49. package/dist/combobox/public.js +2 -2
  50. package/dist/combobox/shared.d.ts +6586 -90
  51. package/dist/combobox/shared.d.ts.map +1 -1
  52. package/dist/combobox/shared.js +293 -249
  53. package/dist/combobox/single.d.ts +5675 -82
  54. package/dist/combobox/single.d.ts.map +1 -1
  55. package/dist/combobox/single.js +101 -31
  56. package/dist/datePicker/block.d.ts +49702 -0
  57. package/dist/datePicker/block.d.ts.map +1 -0
  58. package/dist/datePicker/block.js +295 -0
  59. package/dist/datePicker/index.d.ts +1 -995
  60. package/dist/datePicker/index.d.ts.map +1 -1
  61. package/dist/datePicker/index.js +1 -305
  62. package/dist/datePicker/public.d.ts +1 -1
  63. package/dist/datePicker/public.d.ts.map +1 -1
  64. package/dist/datePicker/public.js +1 -1
  65. package/dist/dialog/block.d.ts +4074 -0
  66. package/dist/dialog/block.d.ts.map +1 -0
  67. package/dist/dialog/block.js +393 -0
  68. package/dist/dialog/index.d.ts +1 -335
  69. package/dist/dialog/index.d.ts.map +1 -1
  70. package/dist/dialog/index.js +1 -420
  71. package/dist/dialog/public.d.ts +1 -1
  72. package/dist/dialog/public.d.ts.map +1 -1
  73. package/dist/dialog/public.js +1 -1
  74. package/dist/disclosure/disclosure.d.ts +85 -0
  75. package/dist/disclosure/disclosure.d.ts.map +1 -0
  76. package/dist/disclosure/disclosure.js +96 -0
  77. package/dist/disclosure/index.d.ts +1 -84
  78. package/dist/disclosure/index.d.ts.map +1 -1
  79. package/dist/disclosure/index.js +1 -96
  80. package/dist/dragAndDrop/block.d.ts +2126 -0
  81. package/dist/dragAndDrop/block.d.ts.map +1 -0
  82. package/dist/dragAndDrop/block.js +528 -0
  83. package/dist/dragAndDrop/index.d.ts +1 -650
  84. package/dist/dragAndDrop/index.d.ts.map +1 -1
  85. package/dist/dragAndDrop/index.js +1 -493
  86. package/dist/dragAndDrop/public.d.ts +1 -1
  87. package/dist/dragAndDrop/public.d.ts.map +1 -1
  88. package/dist/dragAndDrop/public.js +1 -1
  89. package/dist/fieldset/fieldset.d.ts +21 -0
  90. package/dist/fieldset/fieldset.d.ts.map +1 -0
  91. package/dist/fieldset/fieldset.js +27 -0
  92. package/dist/fieldset/index.d.ts +1 -20
  93. package/dist/fieldset/index.d.ts.map +1 -1
  94. package/dist/fieldset/index.js +1 -27
  95. package/dist/fileDrop/block.d.ts +282 -0
  96. package/dist/fileDrop/block.d.ts.map +1 -0
  97. package/dist/fileDrop/block.js +111 -0
  98. package/dist/fileDrop/index.d.ts +1 -102
  99. package/dist/fileDrop/index.d.ts.map +1 -1
  100. package/dist/fileDrop/index.js +1 -96
  101. package/dist/fileDrop/public.d.ts +1 -1
  102. package/dist/fileDrop/public.d.ts.map +1 -1
  103. package/dist/fileDrop/public.js +1 -1
  104. package/dist/hoverIntent/block.d.ts +843 -0
  105. package/dist/hoverIntent/block.d.ts.map +1 -0
  106. package/dist/hoverIntent/{hoverIntent.js → block.js} +90 -69
  107. package/dist/hoverIntent/index.d.ts +2 -2
  108. package/dist/hoverIntent/index.d.ts.map +1 -1
  109. package/dist/hoverIntent/index.js +1 -1
  110. package/dist/hoverIntent/message.d.ts +2 -0
  111. package/dist/hoverIntent/message.d.ts.map +1 -1
  112. package/dist/hoverIntent/message.js +1 -0
  113. package/dist/hoverIntent/public.d.ts +1 -1
  114. package/dist/hoverIntent/public.d.ts.map +1 -1
  115. package/dist/hoverIntent/public.js +1 -1
  116. package/dist/input/index.d.ts +1 -26
  117. package/dist/input/index.d.ts.map +1 -1
  118. package/dist/input/index.js +1 -52
  119. package/dist/input/input.d.ts +27 -0
  120. package/dist/input/input.d.ts.map +1 -0
  121. package/dist/input/input.js +52 -0
  122. package/dist/listbox/multi.d.ts +5540 -67
  123. package/dist/listbox/multi.d.ts.map +1 -1
  124. package/dist/listbox/multi.js +59 -26
  125. package/dist/listbox/multiPublic.d.ts +2 -2
  126. package/dist/listbox/multiPublic.d.ts.map +1 -1
  127. package/dist/listbox/multiPublic.js +1 -1
  128. package/dist/listbox/public.d.ts +3 -3
  129. package/dist/listbox/public.d.ts.map +1 -1
  130. package/dist/listbox/public.js +2 -2
  131. package/dist/listbox/shared.d.ts +5909 -120
  132. package/dist/listbox/shared.d.ts.map +1 -1
  133. package/dist/listbox/shared.js +233 -216
  134. package/dist/listbox/single.d.ts +5547 -82
  135. package/dist/listbox/single.d.ts.map +1 -1
  136. package/dist/listbox/single.js +64 -46
  137. package/dist/menu/definition.d.ts +4 -0
  138. package/dist/menu/definition.d.ts.map +1 -0
  139. package/dist/menu/definition.js +3 -0
  140. package/dist/menu/index.d.ts +1 -467
  141. package/dist/menu/index.d.ts.map +1 -1
  142. package/dist/menu/index.js +1 -726
  143. package/dist/menu/menu.d.ts +13071 -0
  144. package/dist/menu/menu.d.ts.map +1 -0
  145. package/dist/menu/menu.js +785 -0
  146. package/dist/menu/public.d.ts +2 -2
  147. package/dist/menu/public.d.ts.map +1 -1
  148. package/dist/menu/public.js +1 -1
  149. package/dist/meter/index.d.ts +1 -25
  150. package/dist/meter/index.d.ts.map +1 -1
  151. package/dist/meter/index.js +1 -67
  152. package/dist/meter/meter.d.ts +26 -0
  153. package/dist/meter/meter.d.ts.map +1 -0
  154. package/dist/meter/meter.js +67 -0
  155. package/dist/nav/index.d.ts +1 -48
  156. package/dist/nav/index.d.ts.map +1 -1
  157. package/dist/nav/index.js +1 -43
  158. package/dist/nav/nav.d.ts +49 -0
  159. package/dist/nav/nav.d.ts.map +1 -0
  160. package/dist/nav/nav.js +42 -0
  161. package/dist/popover/block.d.ts +4803 -0
  162. package/dist/popover/block.d.ts.map +1 -0
  163. package/dist/popover/block.js +413 -0
  164. package/dist/popover/index.d.ts +1 -348
  165. package/dist/popover/index.d.ts.map +1 -1
  166. package/dist/popover/index.js +1 -401
  167. package/dist/popover/public.d.ts +2 -2
  168. package/dist/popover/public.d.ts.map +1 -1
  169. package/dist/popover/public.js +1 -1
  170. package/dist/progress/index.d.ts +1 -23
  171. package/dist/progress/index.d.ts.map +1 -1
  172. package/dist/progress/index.js +1 -85
  173. package/dist/progress/progress.d.ts +24 -0
  174. package/dist/progress/progress.d.ts.map +1 -0
  175. package/dist/progress/progress.js +85 -0
  176. package/dist/radioGroup/definition.d.ts +4 -0
  177. package/dist/radioGroup/definition.d.ts.map +1 -0
  178. package/dist/radioGroup/definition.js +3 -0
  179. package/dist/radioGroup/index.d.ts +1 -180
  180. package/dist/radioGroup/index.d.ts.map +1 -1
  181. package/dist/radioGroup/index.js +1 -216
  182. package/dist/radioGroup/public.d.ts +2 -2
  183. package/dist/radioGroup/public.d.ts.map +1 -1
  184. package/dist/radioGroup/public.js +1 -1
  185. package/dist/radioGroup/radioGroup.d.ts +592 -0
  186. package/dist/radioGroup/radioGroup.d.ts.map +1 -0
  187. package/dist/radioGroup/radioGroup.js +247 -0
  188. package/dist/select/index.d.ts +1 -23
  189. package/dist/select/index.d.ts.map +1 -1
  190. package/dist/select/index.js +1 -42
  191. package/dist/select/select.d.ts +24 -0
  192. package/dist/select/select.d.ts.map +1 -0
  193. package/dist/select/select.js +42 -0
  194. package/dist/slider/index.d.ts +1 -414
  195. package/dist/slider/index.d.ts.map +1 -1
  196. package/dist/slider/index.js +1 -384
  197. package/dist/slider/public.d.ts +1 -1
  198. package/dist/slider/public.d.ts.map +1 -1
  199. package/dist/slider/public.js +1 -1
  200. package/dist/slider/slider.d.ts +1605 -0
  201. package/dist/slider/slider.d.ts.map +1 -0
  202. package/dist/slider/slider.js +432 -0
  203. package/dist/switch/index.d.ts +1 -73
  204. package/dist/switch/index.d.ts.map +1 -1
  205. package/dist/switch/index.js +1 -71
  206. package/dist/switch/switch.d.ts +74 -0
  207. package/dist/switch/switch.d.ts.map +1 -0
  208. package/dist/switch/switch.js +71 -0
  209. package/dist/tabs/definition.d.ts +4 -0
  210. package/dist/tabs/definition.d.ts.map +1 -0
  211. package/dist/tabs/definition.js +3 -0
  212. package/dist/tabs/index.d.ts +1 -176
  213. package/dist/tabs/index.d.ts.map +1 -1
  214. package/dist/tabs/index.js +1 -181
  215. package/dist/tabs/public.d.ts +2 -2
  216. package/dist/tabs/public.d.ts.map +1 -1
  217. package/dist/tabs/public.js +1 -1
  218. package/dist/tabs/tabs.d.ts +596 -0
  219. package/dist/tabs/tabs.d.ts.map +1 -0
  220. package/dist/tabs/tabs.js +212 -0
  221. package/dist/test/apps/disabledButton.d.ts +2895 -14
  222. package/dist/test/apps/disabledButton.d.ts.map +1 -1
  223. package/dist/test/apps/disabledButton.js +40 -23
  224. package/dist/textarea/index.d.ts +1 -26
  225. package/dist/textarea/index.d.ts.map +1 -1
  226. package/dist/textarea/index.js +1 -53
  227. package/dist/textarea/textarea.d.ts +27 -0
  228. package/dist/textarea/textarea.d.ts.map +1 -0
  229. package/dist/textarea/textarea.js +53 -0
  230. package/dist/toast/index.d.ts +1 -1448
  231. package/dist/toast/index.d.ts.map +1 -1
  232. package/dist/toast/index.js +1 -206
  233. package/dist/toast/public.d.ts +2 -2
  234. package/dist/toast/public.d.ts.map +1 -1
  235. package/dist/toast/public.js +1 -1
  236. package/dist/toast/schema.d.ts +46 -17
  237. package/dist/toast/schema.d.ts.map +1 -1
  238. package/dist/toast/schema.js +21 -12
  239. package/dist/toast/test.d.ts +40 -7
  240. package/dist/toast/test.d.ts.map +1 -1
  241. package/dist/toast/test.js +18 -20
  242. package/dist/toast/toast.d.ts +9713 -0
  243. package/dist/toast/toast.d.ts.map +1 -0
  244. package/dist/toast/toast.js +211 -0
  245. package/dist/toast/update.d.ts +10742 -533
  246. package/dist/toast/update.d.ts.map +1 -1
  247. package/dist/toast/update.js +337 -291
  248. package/dist/tooltip/block.d.ts +912 -0
  249. package/dist/tooltip/block.d.ts.map +1 -0
  250. package/dist/tooltip/{tooltip.js → block.js} +95 -68
  251. package/dist/tooltip/index.d.ts +1 -1
  252. package/dist/tooltip/index.d.ts.map +1 -1
  253. package/dist/tooltip/index.js +1 -1
  254. package/dist/tooltip/message.d.ts +3 -0
  255. package/dist/tooltip/message.d.ts.map +1 -1
  256. package/dist/tooltip/message.js +1 -0
  257. package/dist/tooltip/public.d.ts +1 -1
  258. package/dist/tooltip/public.d.ts.map +1 -1
  259. package/dist/tooltip/public.js +1 -1
  260. package/dist/virtualList/index.d.ts +1 -476
  261. package/dist/virtualList/index.d.ts.map +1 -1
  262. package/dist/virtualList/index.js +1 -781
  263. package/dist/virtualList/public.d.ts +2 -2
  264. package/dist/virtualList/public.d.ts.map +1 -1
  265. package/dist/virtualList/public.js +1 -1
  266. package/dist/virtualList/virtualList.d.ts +10756 -0
  267. package/dist/virtualList/virtualList.d.ts.map +1 -0
  268. package/dist/virtualList/virtualList.js +866 -0
  269. package/package.json +5 -4
  270. package/dist/hoverIntent/hoverIntent.d.ts +0 -106
  271. package/dist/hoverIntent/hoverIntent.d.ts.map +0 -1
  272. package/dist/tooltip/tooltip.d.ts +0 -130
  273. package/dist/tooltip/tooltip.d.ts.map +0 -1
package/README.md CHANGED
@@ -18,7 +18,7 @@ yarn add @foldkit/ui
18
18
 
19
19
  ## Usage
20
20
 
21
- Import a component by name. Each import is a namespace that groups the component's `view` and, for stateful components, its `Model`, `Message`, `init`, and `update`.
21
+ Import a component namespace by name. Stateful components are completed Blocks: `Application.bindChild(Dialog.block, config)` connects their state, Messages, public operations, view, and lifecycle effects to the parent. Stateless render helpers such as Button expose a view function.
22
22
 
23
23
  ```typescript
24
24
  import type { HtmlBuilder } from 'foldkit/html'
@@ -28,7 +28,7 @@ import { Button } from '@foldkit/ui'
28
28
  const view = (h: HtmlBuilder<Message>) =>
29
29
  Button.view(
30
30
  {
31
- onClick: ClickedSave(), // your Message
31
+ onClick: Message.ClickedSave(),
32
32
  toView: attributes =>
33
33
  h.button(
34
34
  [...attributes.button, h.Class('px-4 py-2 rounded-lg')],
@@ -42,12 +42,14 @@ const view = (h: HtmlBuilder<Message>) =>
42
42
  Components come in two shapes:
43
43
 
44
44
  - **Render helpers** (Button, Input, Textarea, Select, Checkbox, Switch, Disclosure, Fieldset) are stateless. Call their `view` directly with a typed config. The controlled helpers (Checkbox, Switch, Disclosure) take the current value in through their config and dispatch a parent Message when the user changes it; you store that value in your own Model.
45
- - **Submodels** (Combobox, Dialog, Listbox, Menu, Popover, RadioGroup, and the like) own a Model. Embed them with `h.submodel`, drive them through their `update`, and consume their `OutMessage` in the parent.
45
+ - **Blocks** (Combobox, Dialog, Listbox, Menu, Popover, RadioGroup, and the like) own a Model. Create a Binding through the parent authoring value, such as `const DialogBinding = Application.bindChild(Dialog.block, config)`, include it in the Composition's `childBindings`, and render its `embedView(...)` descriptor with `h.block`. The Binding also folds the child's Messages and OutMessages into the parent.
46
46
 
47
- Every component is also available as a subpath import:
47
+ Component subpaths also expose domain helpers and types. Generic factories are separate exports: `Combobox.create(City)` returns a completed Block with Schema-refined payloads, and `Tabs.create<Tab>()` refines a type-only tab value. Import component ViewInputs and other helper types from their subpaths.
48
+
49
+ Stateless render helpers are also available as subpath namespaces:
48
50
 
49
51
  ```typescript
50
- import { Button } from '@foldkit/ui/button'
52
+ import * as Button from '@foldkit/ui/button'
51
53
  ```
52
54
 
53
55
  When a component name collides with another import (for example core's `Calendar`), alias it:
@@ -64,7 +66,7 @@ See the [component documentation](https://foldkit.dev/ui/overview) for the full
64
66
 
65
67
  ## Anchor
66
68
 
67
- `Anchor` is the positioning runtime the floating components share, exported at `@foldkit/ui/anchor`. It is neither a render helper nor a Submodel, so it is not in the list above. Reach for it when you need to anchor and portal a panel of your own from a Mount, and none of Listbox, Combobox, Menu, Popover, Tooltip, or DatePicker fits. See the [Anchor documentation](https://foldkit.dev/ui/anchor).
69
+ `Anchor` is the positioning runtime the floating components share, exported at `@foldkit/ui/anchor`. It is neither a render helper nor a Block, so it is not in the list above. Reach for it when you need to anchor and portal a panel of your own from a Mount, and none of Listbox, Combobox, Menu, Popover, Tooltip, or DatePicker fits. See the [Anchor documentation](https://foldkit.dev/ui/anchor).
68
70
 
69
71
  ## License
70
72
 
@@ -1,2 +1,2 @@
1
- export * from './anchor.js';
1
+ export { Placement, Padding, AnchorConfig, portalToContainingRoot, portalBackdrop, anchorSetup, type SetupConfig, } from './anchor.js';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/anchor/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/anchor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,OAAO,EACP,YAAY,EACZ,sBAAsB,EACtB,cAAc,EACd,WAAW,EACX,KAAK,WAAW,GACjB,MAAM,aAAa,CAAA"}
@@ -1 +1 @@
1
- export * from './anchor.js';
1
+ export { Placement, Padding, AnchorConfig, portalToContainingRoot, portalBackdrop, anchorSetup, } from './anchor.js';