@passui/react 0.1.47 → 0.2.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 (427) hide show
  1. package/README.md +29 -109
  2. package/THIRD_PARTY_NOTICES.md +29 -0
  3. package/dist/accordion.d.ts +15 -0
  4. package/dist/accordion.js +93 -0
  5. package/dist/alert-dialog.d.ts +26 -0
  6. package/dist/alert-dialog.js +142 -0
  7. package/dist/alert.d.ts +10 -0
  8. package/dist/alert.js +28 -0
  9. package/dist/{types/src/components/ambient/ambient.d.ts → ambient.d.ts} +4 -4
  10. package/dist/ambient.js +22 -0
  11. package/dist/{types/src/appearance → appearance}/platform.d.ts +3 -3
  12. package/dist/appearance/platform.js +43 -0
  13. package/dist/appearance/theme.d.ts +71 -0
  14. package/dist/appearance/theme.js +236 -0
  15. package/dist/appearance.d.ts +3 -0
  16. package/dist/appearance.js +3 -0
  17. package/dist/{types/src/components/aspect-ratio/aspect-ratio.d.ts → aspect-ratio.d.ts} +4 -4
  18. package/dist/aspect-ratio.js +17 -0
  19. package/dist/avatar.d.ts +5 -0
  20. package/dist/avatar.js +43 -0
  21. package/dist/badge.d.ts +8 -0
  22. package/dist/badge.js +21 -0
  23. package/dist/breadcrumb.d.ts +13 -0
  24. package/dist/breadcrumb.js +63 -0
  25. package/dist/button-group.d.ts +5 -0
  26. package/dist/button-group.js +14 -0
  27. package/dist/button.d.ts +21 -0
  28. package/dist/button.js +58 -0
  29. package/dist/calendar.d.ts +35 -0
  30. package/dist/calendar.js +225 -0
  31. package/dist/card.d.ts +9 -0
  32. package/dist/card.js +54 -0
  33. package/dist/chart.d.ts +30 -0
  34. package/dist/chart.js +226 -0
  35. package/dist/checkbox.d.ts +13 -0
  36. package/dist/checkbox.js +53 -0
  37. package/dist/{types/src/lib/clipboard.d.ts → clipboard.d.ts} +1 -1
  38. package/dist/clipboard.js +16 -0
  39. package/dist/cn.d.ts +2 -0
  40. package/dist/cn.js +10 -0
  41. package/dist/code-block.d.ts +34 -0
  42. package/dist/code-block.js +87 -0
  43. package/dist/collapsible.d.ts +13 -0
  44. package/dist/collapsible.js +49 -0
  45. package/dist/combobox.d.ts +25 -0
  46. package/dist/combobox.js +112 -0
  47. package/dist/command.d.ts +22 -0
  48. package/dist/command.js +129 -0
  49. package/dist/components/toast/toast-store.d.ts +60 -0
  50. package/dist/components/toast/toast-store.js +96 -0
  51. package/dist/{types/src/components → components}/toast/toaster.d.ts +4 -4
  52. package/dist/components/toast/toaster.js +345 -0
  53. package/dist/context-menu.d.ts +2 -0
  54. package/dist/context-menu.js +2 -0
  55. package/dist/conversation.d.ts +48 -0
  56. package/dist/conversation.js +202 -0
  57. package/dist/date-time-picker.d.ts +50 -0
  58. package/dist/date-time-picker.js +235 -0
  59. package/dist/date.d.ts +50 -0
  60. package/dist/date.js +77 -0
  61. package/dist/dialog.d.ts +21 -0
  62. package/dist/dialog.js +113 -0
  63. package/dist/drawer.d.ts +30 -0
  64. package/dist/drawer.js +140 -0
  65. package/dist/dropdown-menu.d.ts +56 -0
  66. package/dist/dropdown-menu.js +295 -0
  67. package/dist/empty.d.ts +11 -0
  68. package/dist/empty.js +51 -0
  69. package/dist/field.d.ts +16 -0
  70. package/dist/field.js +47 -0
  71. package/{src/hooks/scroll/minimize-decision.ts → dist/hooks/scroll/minimize-decision.js} +3 -5
  72. package/dist/{types/src/hooks → hooks}/use-anchored-placement.d.ts +2 -2
  73. package/dist/hooks/use-anchored-placement.js +33 -0
  74. package/dist/{types/src/hooks → hooks}/use-minimize-on-scroll.d.ts +1 -1
  75. package/dist/hooks/use-minimize-on-scroll.js +59 -0
  76. package/dist/{types/src/hooks → hooks}/use-visual-viewport.d.ts +2 -2
  77. package/{src/hooks/use-visual-viewport.ts → dist/hooks/use-visual-viewport.js} +20 -35
  78. package/dist/hooks/viewport/types.d.ts +7 -0
  79. package/dist/hooks/viewport/viewport-metrics.js +13 -0
  80. package/dist/index.d.ts +84 -0
  81. package/dist/index.js +80 -0
  82. package/dist/input-group.d.ts +17 -0
  83. package/dist/input-group.js +55 -0
  84. package/dist/input-otp.d.ts +13 -0
  85. package/dist/input-otp.js +36 -0
  86. package/dist/input.d.ts +4 -0
  87. package/dist/input.js +14 -0
  88. package/dist/item.d.ts +49 -0
  89. package/dist/item.js +142 -0
  90. package/dist/kbd.d.ts +4 -0
  91. package/dist/kbd.js +86 -0
  92. package/dist/label.d.ts +3 -0
  93. package/dist/label.js +12 -0
  94. package/dist/labeled-content.d.ts +24 -0
  95. package/dist/labeled-content.js +41 -0
  96. package/dist/{types/src/lib/language.d.ts → language.d.ts} +1 -1
  97. package/dist/language.js +11 -0
  98. package/dist/layout.d.ts +24 -0
  99. package/dist/layout.js +36 -0
  100. package/dist/{types/src/lib → lib}/anchored-placement.d.ts +27 -27
  101. package/dist/lib/anchored-placement.js +42 -0
  102. package/dist/lib/calendar-month.js +90 -0
  103. package/dist/lib/cx.js +6 -0
  104. package/dist/lib/drawer.math.js +29 -0
  105. package/dist/lib/floating-layers.d.ts +3 -0
  106. package/dist/lib/floating-layers.js +25 -0
  107. package/dist/{types/src/lib → lib}/haptics.d.ts +1 -1
  108. package/dist/lib/haptics.js +13 -0
  109. package/dist/lib/liquid-step.js +33 -0
  110. package/dist/lib/page-scale.js +58 -0
  111. package/dist/lib/portal.js +12 -0
  112. package/dist/lib/presence.js +53 -0
  113. package/dist/lib/range-value.js +25 -0
  114. package/dist/lib/render.d.ts +8 -0
  115. package/dist/lib/render.js +42 -0
  116. package/dist/lib/rolling-digit.js +83 -0
  117. package/dist/{types/src/lib → lib}/screen-edges.d.ts +5 -5
  118. package/dist/lib/screen-edges.js +30 -0
  119. package/dist/lib/swipe-touch-action.js +34 -0
  120. package/dist/lib/visual-viewport.js +27 -0
  121. package/dist/lib/water-drop.js +412 -0
  122. package/dist/lib/wheel.js +125 -0
  123. package/dist/list.d.ts +26 -0
  124. package/dist/list.js +80 -0
  125. package/dist/locales.d.ts +18 -0
  126. package/dist/locales.js +36 -0
  127. package/dist/marker.d.ts +13 -0
  128. package/dist/marker.js +33 -0
  129. package/dist/motion/transitions.d.ts +170 -0
  130. package/dist/motion/transitions.js +156 -0
  131. package/dist/pagination.d.ts +30 -0
  132. package/dist/pagination.js +117 -0
  133. package/dist/popover.d.ts +26 -0
  134. package/dist/popover.js +101 -0
  135. package/dist/progress.d.ts +9 -0
  136. package/dist/progress.js +24 -0
  137. package/dist/questionnaire.d.ts +46 -0
  138. package/dist/questionnaire.js +133 -0
  139. package/dist/radio-group.d.ts +21 -0
  140. package/dist/radio-group.js +67 -0
  141. package/dist/search-field.d.ts +18 -0
  142. package/dist/search-field.js +45 -0
  143. package/dist/segmented-control.d.ts +16 -0
  144. package/dist/segmented-control.js +25 -0
  145. package/dist/select.d.ts +24 -0
  146. package/dist/select.js +107 -0
  147. package/dist/separator.d.ts +9 -0
  148. package/dist/separator.js +17 -0
  149. package/dist/{types/src/lib/shapes.d.ts → shapes.d.ts} +2 -2
  150. package/dist/shapes.js +65 -0
  151. package/dist/sheet.d.ts +24 -0
  152. package/dist/sheet.js +141 -0
  153. package/dist/sidebar.d.ts +32 -0
  154. package/dist/sidebar.js +85 -0
  155. package/dist/skeleton.d.ts +3 -0
  156. package/dist/skeleton.js +13 -0
  157. package/dist/slider.d.ts +9 -0
  158. package/dist/slider.js +42 -0
  159. package/dist/slosh-slider.d.ts +21 -0
  160. package/dist/slosh-slider.js +205 -0
  161. package/dist/spinner.d.ts +3 -0
  162. package/dist/spinner.js +20 -0
  163. package/dist/stat-tile.d.ts +20 -0
  164. package/dist/stat-tile.js +53 -0
  165. package/dist/stepper.d.ts +22 -0
  166. package/dist/stepper.js +98 -0
  167. package/dist/swatch-picker.d.ts +22 -0
  168. package/dist/swatch-picker.js +70 -0
  169. package/dist/switch.d.ts +10 -0
  170. package/dist/switch.js +44 -0
  171. package/dist/tab-bar.d.ts +15 -0
  172. package/dist/tab-bar.js +34 -0
  173. package/dist/{types/src/components/table/table.d.ts → table.d.ts} +3 -3
  174. package/dist/table.js +93 -0
  175. package/dist/tabs.d.ts +32 -0
  176. package/dist/tabs.js +131 -0
  177. package/dist/text.d.ts +25 -0
  178. package/dist/text.js +44 -0
  179. package/dist/textarea.d.ts +3 -0
  180. package/dist/textarea.js +13 -0
  181. package/dist/toast.d.ts +3 -0
  182. package/dist/toast.js +3 -0
  183. package/dist/toggle-group.d.ts +20 -0
  184. package/dist/toggle-group.js +68 -0
  185. package/dist/toggle.d.ts +24 -0
  186. package/dist/toggle.js +37 -0
  187. package/dist/tokens.d.ts +1 -0
  188. package/dist/tooltip.d.ts +21 -0
  189. package/dist/tooltip.js +61 -0
  190. package/dist/trace.d.ts +14 -0
  191. package/dist/trace.js +54 -0
  192. package/dist/{types/src/hooks/use-dismiss.d.ts → use-dismiss.d.ts} +3 -3
  193. package/dist/use-dismiss.js +38 -0
  194. package/dist/{types/src/hooks/use-media-query.d.ts → use-media-query.d.ts} +12 -12
  195. package/dist/use-media-query.js +56 -0
  196. package/dist/use-os.d.ts +12 -0
  197. package/dist/use-os.js +17 -0
  198. package/dist/wake-slider.d.ts +15 -0
  199. package/dist/wake-slider.js +174 -0
  200. package/package.json +122 -253
  201. package/src/styles/code-block.css +4 -0
  202. package/src/styles/globals.css +5 -0
  203. package/src/styles/motion-controls.css +10 -0
  204. package/src/styles/page-scale.css +27 -0
  205. package/src/styles/styles.css +4 -2
  206. package/dist/types/src/appearance/index.d.ts +0 -2
  207. package/dist/types/src/appearance/theme.d.ts +0 -71
  208. package/dist/types/src/components/accordion/accordion.d.ts +0 -23
  209. package/dist/types/src/components/ambient/index.d.ts +0 -1
  210. package/dist/types/src/components/breadcrumb/breadcrumb.d.ts +0 -19
  211. package/dist/types/src/components/button/button-styles.d.ts +0 -12
  212. package/dist/types/src/components/button/button.d.ts +0 -32
  213. package/dist/types/src/components/button/icon-button.d.ts +0 -10
  214. package/dist/types/src/components/button/pending-spinner.d.ts +0 -5
  215. package/dist/types/src/components/button/use-pending-indicator.d.ts +0 -2
  216. package/dist/types/src/components/chip/chip.d.ts +0 -10
  217. package/dist/types/src/components/code-block/code-block.d.ts +0 -13
  218. package/dist/types/src/components/combo-box/combo-box.d.ts +0 -9
  219. package/dist/types/src/components/command/command.d.ts +0 -18
  220. package/dist/types/src/components/compact-date-picker/calendar-month.d.ts +0 -25
  221. package/dist/types/src/components/compact-date-picker/compact-date-picker.d.ts +0 -30
  222. package/dist/types/src/components/compact-time-picker/compact-time-picker.d.ts +0 -29
  223. package/dist/types/src/components/compact-time-picker/time-value.d.ts +0 -18
  224. package/dist/types/src/components/content-unavailable-view/content-unavailable-view.d.ts +0 -12
  225. package/dist/types/src/components/content-view/content-view.d.ts +0 -51
  226. package/dist/types/src/components/content-view/index.d.ts +0 -1
  227. package/dist/types/src/components/context-menu/conceal-menu-source.d.ts +0 -2
  228. package/dist/types/src/components/context-menu/context-menu-host.d.ts +0 -2
  229. package/dist/types/src/components/context-menu/context-menu-store.d.ts +0 -62
  230. package/dist/types/src/components/context-menu/menu-navigation.d.ts +0 -6
  231. package/dist/types/src/components/context-menu/menu-position.d.ts +0 -21
  232. package/dist/types/src/components/context-menu/menu-reveal.d.ts +0 -26
  233. package/dist/types/src/components/context-menu/use-context-menu.d.ts +0 -14
  234. package/dist/types/src/components/conversation/conversation.d.ts +0 -48
  235. package/dist/types/src/components/conversation/index.d.ts +0 -1
  236. package/dist/types/src/components/date-picker/date-picker.d.ts +0 -19
  237. package/dist/types/src/components/date-picker/date-value.d.ts +0 -2
  238. package/dist/types/src/components/dialog/dialog-host.d.ts +0 -6
  239. package/dist/types/src/components/dialog/dialog-store.d.ts +0 -23
  240. package/dist/types/src/components/dialog/dialog.d.ts +0 -33
  241. package/dist/types/src/components/dialog/index.d.ts +0 -1
  242. package/dist/types/src/components/disclosure-group/disclosure-group.d.ts +0 -18
  243. package/dist/types/src/components/divider/divider.d.ts +0 -9
  244. package/dist/types/src/components/inline-disclosure/inline-disclosure.d.ts +0 -15
  245. package/dist/types/src/components/keyboard-shortcut/keyboard-shortcut.d.ts +0 -8
  246. package/dist/types/src/components/labeled-content/labeled-content.d.ts +0 -22
  247. package/dist/types/src/components/locale-switcher/index.d.ts +0 -1
  248. package/dist/types/src/components/locale-switcher/locale-switcher.d.ts +0 -13
  249. package/dist/types/src/components/menu/menu.d.ts +0 -16
  250. package/dist/types/src/components/morph/index.d.ts +0 -2
  251. package/dist/types/src/components/morph/morph.d.ts +0 -32
  252. package/dist/types/src/components/morph/use-morph-disclosure.d.ts +0 -13
  253. package/dist/types/src/components/one-time-code/one-time-code.d.ts +0 -26
  254. package/dist/types/src/components/picker/picker-trigger.d.ts +0 -3
  255. package/dist/types/src/components/picker/picker.d.ts +0 -46
  256. package/dist/types/src/components/popover/anchored-surface.d.ts +0 -17
  257. package/dist/types/src/components/popover/index.d.ts +0 -41
  258. package/dist/types/src/components/popover/popover-content.d.ts +0 -38
  259. package/dist/types/src/components/popover/popover-root.d.ts +0 -22
  260. package/dist/types/src/components/popover/popover-trigger.d.ts +0 -23
  261. package/dist/types/src/components/profile-image/profile-image.d.ts +0 -9
  262. package/dist/types/src/components/progress-view/progress-view.d.ts +0 -13
  263. package/dist/types/src/components/progress-view/use-liquid-progress.d.ts +0 -3
  264. package/dist/types/src/components/radio-group/radio-group.d.ts +0 -20
  265. package/dist/types/src/components/search-field/expanding-search-field.d.ts +0 -5
  266. package/dist/types/src/components/search-field/search-field.d.ts +0 -9
  267. package/dist/types/src/components/search-list/search-list.d.ts +0 -22
  268. package/dist/types/src/components/section/section.d.ts +0 -18
  269. package/dist/types/src/components/secure-field/secure-field.d.ts +0 -4
  270. package/dist/types/src/components/segmented-control/segmented-control.d.ts +0 -25
  271. package/dist/types/src/components/sheet/modal-environment.d.ts +0 -2
  272. package/dist/types/src/components/sheet/sheet-portal.d.ts +0 -5
  273. package/dist/types/src/components/sheet/sheet.d.ts +0 -26
  274. package/dist/types/src/components/sheet/use-sheet-focus.d.ts +0 -3
  275. package/dist/types/src/components/sidebar/sidebar.d.ts +0 -24
  276. package/dist/types/src/components/skeleton/skeleton.d.ts +0 -9
  277. package/dist/types/src/components/slider/slider.d.ts +0 -17
  278. package/dist/types/src/components/slosh-slider/liquid-step.d.ts +0 -6
  279. package/dist/types/src/components/slosh-slider/slosh-slider.d.ts +0 -21
  280. package/dist/types/src/components/stat-tile/index.d.ts +0 -1
  281. package/dist/types/src/components/stat-tile/stat-tile.d.ts +0 -20
  282. package/dist/types/src/components/status-indicator/status-indicator.d.ts +0 -17
  283. package/dist/types/src/components/stepper/rolling-digit.d.ts +0 -11
  284. package/dist/types/src/components/stepper/stepper.d.ts +0 -22
  285. package/dist/types/src/components/swatch-picker/swatch-picker.d.ts +0 -22
  286. package/dist/types/src/components/tab-bar/tab-bar.d.ts +0 -43
  287. package/dist/types/src/components/tab-view/tab-view.d.ts +0 -27
  288. package/dist/types/src/components/text-editor/text-editor.d.ts +0 -9
  289. package/dist/types/src/components/text-field/text-field.d.ts +0 -33
  290. package/dist/types/src/components/toast/toast-store.d.ts +0 -52
  291. package/dist/types/src/components/toggle/toggle.d.ts +0 -22
  292. package/dist/types/src/components/tooltip/tooltip-host.d.ts +0 -7
  293. package/dist/types/src/components/view-controller/index.d.ts +0 -1
  294. package/dist/types/src/components/view-controller/view-controller.d.ts +0 -21
  295. package/dist/types/src/components/wake-slider/wake-slider.d.ts +0 -15
  296. package/dist/types/src/hooks/scroll/minimize-decision.d.ts +0 -2
  297. package/dist/types/src/hooks/use-anchored-disclosure.d.ts +0 -9
  298. package/dist/types/src/hooks/use-floating-dismiss.d.ts +0 -3
  299. package/dist/types/src/hooks/viewport/types.d.ts +0 -19
  300. package/dist/types/src/hooks/viewport/viewport-metrics.d.ts +0 -3
  301. package/dist/types/src/icons/icons.d.ts +0 -616
  302. package/dist/types/src/index.d.ts +0 -73
  303. package/dist/types/src/lib/class-names.d.ts +0 -2
  304. package/dist/types/src/lib/date.d.ts +0 -50
  305. package/dist/types/src/lib/floating-layers.d.ts +0 -8
  306. package/dist/types/src/lib/range-value.d.ts +0 -4
  307. package/dist/types/src/machines/popover.machine.d.ts +0 -30
  308. package/dist/types/src/motion/transitions.d.ts +0 -170
  309. package/src/appearance/index.ts +0 -2
  310. package/src/appearance/platform.tsx +0 -102
  311. package/src/appearance/theme.tsx +0 -467
  312. package/src/components/accordion/accordion.tsx +0 -70
  313. package/src/components/ambient/ambient.tsx +0 -35
  314. package/src/components/ambient/index.ts +0 -1
  315. package/src/components/aspect-ratio/aspect-ratio.tsx +0 -27
  316. package/src/components/breadcrumb/breadcrumb.tsx +0 -73
  317. package/src/components/button/button-styles.ts +0 -49
  318. package/src/components/button/button.tsx +0 -107
  319. package/src/components/button/icon-button.tsx +0 -33
  320. package/src/components/button/pending-spinner.tsx +0 -14
  321. package/src/components/button/use-pending-indicator.ts +0 -22
  322. package/src/components/chip/chip.tsx +0 -45
  323. package/src/components/code-block/code-block.tsx +0 -48
  324. package/src/components/combo-box/combo-box.tsx +0 -13
  325. package/src/components/command/command.tsx +0 -149
  326. package/src/components/compact-date-picker/calendar-month.ts +0 -109
  327. package/src/components/compact-date-picker/compact-date-picker.tsx +0 -337
  328. package/src/components/compact-time-picker/compact-time-picker.tsx +0 -321
  329. package/src/components/compact-time-picker/time-value.ts +0 -58
  330. package/src/components/content-unavailable-view/content-unavailable-view.tsx +0 -78
  331. package/src/components/content-view/content-view.tsx +0 -215
  332. package/src/components/content-view/index.ts +0 -1
  333. package/src/components/context-menu/conceal-menu-source.ts +0 -30
  334. package/src/components/context-menu/context-menu-host.tsx +0 -459
  335. package/src/components/context-menu/context-menu-store.ts +0 -167
  336. package/src/components/context-menu/menu-navigation.ts +0 -36
  337. package/src/components/context-menu/menu-position.ts +0 -38
  338. package/src/components/context-menu/menu-reveal.ts +0 -42
  339. package/src/components/context-menu/use-context-menu.ts +0 -73
  340. package/src/components/conversation/conversation.tsx +0 -309
  341. package/src/components/conversation/index.ts +0 -1
  342. package/src/components/date-picker/date-picker.tsx +0 -106
  343. package/src/components/date-picker/date-value.ts +0 -22
  344. package/src/components/dialog/dialog-host.tsx +0 -119
  345. package/src/components/dialog/dialog-store.ts +0 -66
  346. package/src/components/dialog/dialog.tsx +0 -211
  347. package/src/components/dialog/index.ts +0 -1
  348. package/src/components/disclosure-group/disclosure-group.tsx +0 -108
  349. package/src/components/divider/divider.tsx +0 -33
  350. package/src/components/inline-disclosure/inline-disclosure.tsx +0 -53
  351. package/src/components/keyboard-shortcut/keyboard-shortcut.tsx +0 -32
  352. package/src/components/labeled-content/labeled-content.tsx +0 -84
  353. package/src/components/locale-switcher/index.ts +0 -1
  354. package/src/components/locale-switcher/locale-switcher.tsx +0 -310
  355. package/src/components/menu/menu.tsx +0 -85
  356. package/src/components/morph/index.ts +0 -2
  357. package/src/components/morph/morph.tsx +0 -258
  358. package/src/components/morph/use-morph-disclosure.ts +0 -27
  359. package/src/components/one-time-code/one-time-code.tsx +0 -234
  360. package/src/components/picker/picker-trigger.ts +0 -22
  361. package/src/components/picker/picker.tsx +0 -404
  362. package/src/components/popover/anchored-surface.tsx +0 -264
  363. package/src/components/popover/index.ts +0 -50
  364. package/src/components/popover/popover-content.tsx +0 -374
  365. package/src/components/popover/popover-root.tsx +0 -97
  366. package/src/components/popover/popover-trigger.tsx +0 -71
  367. package/src/components/profile-image/profile-image.tsx +0 -96
  368. package/src/components/progress-view/progress-view.tsx +0 -72
  369. package/src/components/progress-view/use-liquid-progress.ts +0 -43
  370. package/src/components/radio-group/radio-group.tsx +0 -86
  371. package/src/components/search-field/expanding-search-field.tsx +0 -197
  372. package/src/components/search-field/search-field.tsx +0 -66
  373. package/src/components/search-list/search-list.tsx +0 -276
  374. package/src/components/section/section.tsx +0 -75
  375. package/src/components/secure-field/secure-field.tsx +0 -8
  376. package/src/components/segmented-control/segmented-control.tsx +0 -157
  377. package/src/components/sheet/modal-environment.ts +0 -82
  378. package/src/components/sheet/sheet-portal.tsx +0 -62
  379. package/src/components/sheet/sheet.tsx +0 -165
  380. package/src/components/sheet/use-sheet-focus.ts +0 -109
  381. package/src/components/sidebar/sidebar.tsx +0 -102
  382. package/src/components/skeleton/skeleton.tsx +0 -38
  383. package/src/components/slider/slider.tsx +0 -134
  384. package/src/components/slosh-slider/liquid-step.ts +0 -43
  385. package/src/components/slosh-slider/slosh-slider.tsx +0 -294
  386. package/src/components/stat-tile/index.ts +0 -1
  387. package/src/components/stat-tile/stat-tile.tsx +0 -90
  388. package/src/components/status-indicator/status-indicator.tsx +0 -54
  389. package/src/components/stepper/rolling-digit.tsx +0 -91
  390. package/src/components/stepper/stepper.tsx +0 -136
  391. package/src/components/swatch-picker/swatch-picker.tsx +0 -138
  392. package/src/components/tab-bar/tab-bar.tsx +0 -182
  393. package/src/components/tab-view/tab-view.tsx +0 -155
  394. package/src/components/table/table.tsx +0 -151
  395. package/src/components/text-editor/text-editor.tsx +0 -42
  396. package/src/components/text-field/text-field.tsx +0 -200
  397. package/src/components/toast/toast-store.ts +0 -164
  398. package/src/components/toast/toaster.tsx +0 -407
  399. package/src/components/toggle/toggle.tsx +0 -320
  400. package/src/components/tooltip/tooltip-host.tsx +0 -178
  401. package/src/components/view-controller/index.ts +0 -1
  402. package/src/components/view-controller/view-controller.tsx +0 -75
  403. package/src/components/wake-slider/wake-slider.tsx +0 -260
  404. package/src/hooks/use-anchored-disclosure.ts +0 -23
  405. package/src/hooks/use-anchored-placement.ts +0 -40
  406. package/src/hooks/use-dismiss.ts +0 -44
  407. package/src/hooks/use-floating-dismiss.ts +0 -30
  408. package/src/hooks/use-media-query.ts +0 -94
  409. package/src/hooks/use-minimize-on-scroll.ts +0 -77
  410. package/src/hooks/viewport/types.ts +0 -19
  411. package/src/hooks/viewport/viewport-metrics.ts +0 -19
  412. package/src/icons/icons.tsx +0 -458
  413. package/src/index.ts +0 -107
  414. package/src/lib/anchored-placement.ts +0 -91
  415. package/src/lib/class-names.ts +0 -21
  416. package/src/lib/clipboard.ts +0 -15
  417. package/src/lib/date.ts +0 -86
  418. package/src/lib/floating-layers.ts +0 -53
  419. package/src/lib/haptics.ts +0 -23
  420. package/src/lib/language.ts +0 -16
  421. package/src/lib/range-value.ts +0 -38
  422. package/src/lib/screen-edges.ts +0 -44
  423. package/src/lib/shapes.ts +0 -59
  424. package/src/machines/popover.machine.ts +0 -51
  425. package/src/motion/transitions.ts +0 -97
  426. package/src/tokens.ts +0 -1
  427. /package/dist/{types/src/tokens.d.ts → tokens.js} +0 -0
@@ -1,18 +0,0 @@
1
- import { type HTMLAttributes, type ReactNode } from "react";
2
- export type SectionSize = "sm" | "md" | "lg";
3
- export interface SectionProps extends HTMLAttributes<HTMLElement> {
4
- /** Optional group heading and accessible name. */
5
- title?: string;
6
- /** Supporting text below the grouped rows. */
7
- footer?: ReactNode;
8
- /** Rows, typically LabeledContent. */
9
- children?: ReactNode;
10
- /** Title and footer text scale + padding. @default "md" */
11
- size?: SectionSize;
12
- }
13
- /**
14
- * A titled, inset group of rows with an optional footer, as in iOS Settings
15
- * and SwiftUI's grouped `List` with `Section(header:footer:)`. Rows are
16
- * usually `LabeledContent`; dividers between them come for free.
17
- */
18
- export declare function Section({ title, footer, children, className, size, ...props }: SectionProps): import("react").JSX.Element;
@@ -1,4 +0,0 @@
1
- import { type TextFieldProps } from "../text-field/text-field";
2
- /** TextField's native input props, with the password type managed by SecureField. */
3
- export type SecureFieldProps = Omit<TextFieldProps, "type">;
4
- export declare function SecureField(props: SecureFieldProps): import("react").JSX.Element;
@@ -1,25 +0,0 @@
1
- export type SegmentedControlSize = "sm" | "md" | "lg";
2
- export interface SegmentedControlProps<T extends string> {
3
- /** Value of the selected segment. */
4
- value: T;
5
- /** The choices, in display order. */
6
- options: ReadonlyArray<{
7
- value: T;
8
- label: string;
9
- }>;
10
- /** Called with the selected segment's value. */
11
- onChange: (value: NoInfer<T>) => void;
12
- /** Accessible name for the group and its compact picker. */
13
- label: string;
14
- /** Custom classes for the control container. */
15
- className?: string;
16
- /** Segment padding, label text scale and min-width. @default "md" */
17
- size?: SegmentedControlSize;
18
- }
19
- /**
20
- * Mutually exclusive choices with a sliding selection, as on Apple
21
- * platforms. When the labels can't all fit the space it is given (a long
22
- * translation, a narrow pane) it becomes a pop-up button instead of
23
- * squeezing or spilling its text.
24
- */
25
- export declare function SegmentedControl<T extends string>({ value, options, onChange, label, className, size, }: SegmentedControlProps<T>): import("react").JSX.Element;
@@ -1,2 +0,0 @@
1
- /** Keeps nested sheets and their portaled controls above an inactive background. */
2
- export declare function enterModalEnvironment(surface: HTMLElement): () => void;
@@ -1,5 +0,0 @@
1
- import { type ReactNode } from "react";
2
- /** Escape transformed page layers while retaining the source's scoped appearance. */
3
- export declare function SheetPortal({ children }: {
4
- children: ReactNode;
5
- }): import("react").JSX.Element;
@@ -1,26 +0,0 @@
1
- import { type ReactNode } from "react";
2
- export type SheetPlacement = "adaptive" | "center";
3
- export type SheetSize = "sm" | "md" | "lg";
4
- export interface SheetProps {
5
- /** Controls whether the sheet is presented. */
6
- open: boolean;
7
- /** Called on Escape or an outside press. */
8
- onClose: () => void;
9
- /** Allow tapping the backdrop to close. Escape still calls onClose. @default true */
10
- dismissOnOutsidePress?: boolean;
11
- /** Read out by screen readers as the sheet's name. */
12
- label: string;
13
- /** ID of a visible heading to use instead of label for the accessible name. */
14
- labelledBy?: string;
15
- /** `adaptive` rises from the bottom on phones; `center` always floats. @default "adaptive" */
16
- placement?: SheetPlacement;
17
- /** Outer padding and panel max-width. @default "md" */
18
- size?: SheetSize;
19
- className?: string;
20
- children: ReactNode;
21
- }
22
- /**
23
- * A modal card: rises from the bottom edge on phones and floats in the
24
- * middle on larger screens. Escape or a tap outside closes it.
25
- */
26
- export declare function Sheet({ open, ...props }: SheetProps): import("react").JSX.Element;
@@ -1,3 +0,0 @@
1
- import { type RefObject } from "react";
2
- /** Keeps keyboard focus in the foremost sheet, including its floating pickers. */
3
- export declare function useSheetFocus(panel: RefObject<HTMLDivElement | null>, onClose: () => void): void;
@@ -1,24 +0,0 @@
1
- import { type ReactNode } from "react";
2
- export interface SidebarSectionProps {
3
- /** Visible heading for this group of navigation rows. */
4
- title: string;
5
- children: ReactNode;
6
- }
7
- export interface SidebarItemContentProps {
8
- icon?: ReactNode;
9
- /** Optional trailing count. */
10
- count?: number;
11
- /** Matches the router link's active state. */
12
- active?: boolean;
13
- children: ReactNode;
14
- }
15
- export declare function SidebarSection({ title, children, size, }: SidebarSectionProps & {
16
- size?: SidebarSize;
17
- }): import("react").JSX.Element;
18
- /** Classes for a sidebar row; apply to the app's router link. */
19
- export type SidebarDensity = "regular" | "compact";
20
- export type SidebarSize = "sm" | "md" | "lg";
21
- export declare function sidebarItemClass(active?: boolean, density?: SidebarDensity, size?: SidebarSize): string;
22
- export declare function SidebarItemContent({ icon, count, active, size, children, }: SidebarItemContentProps & {
23
- size?: SidebarSize;
24
- }): import("react").JSX.Element;
@@ -1,9 +0,0 @@
1
- import type { ComponentProps } from "react";
2
- export type SkeletonSize = "sm" | "md" | "lg";
3
- export interface SkeletonProps extends ComponentProps<"div"> {
4
- label?: string;
5
- /** Minimum height and rounding. @default "md" */
6
- size?: SkeletonSize;
7
- }
8
- /** A loading placeholder that becomes still when Reduce Motion is enabled. */
9
- export declare function Skeleton({ label, size, className, ...props }: SkeletonProps): import("react").JSX.Element;
@@ -1,17 +0,0 @@
1
- import { type ComponentProps } from "react";
2
- export type SliderSize = "sm" | "md" | "lg";
3
- export interface SliderProps extends Omit<ComponentProps<"input">, "type" | "value" | "defaultValue" | "onChange" | "min" | "max" | "step" | "size"> {
4
- value: number;
5
- onChange: (value: number) => void;
6
- label: string;
7
- min?: number;
8
- max?: number;
9
- step?: number;
10
- description?: string;
11
- /** Provides a localized, spoken description of the current value. */
12
- formatValue?: (value: number) => string;
13
- /** Track height, thumb size and label/description text scale. @default "md" */
14
- size?: SliderSize;
15
- }
16
- /** Native keyboard, touch and pointer behavior with Passui's control treatment. */
17
- export declare function Slider({ value, onChange, label, min, max, step, description, formatValue, size, id: suppliedId, className, disabled, ...props }: SliderProps): import("react").JSX.Element;
@@ -1,6 +0,0 @@
1
- export interface LiquidState {
2
- fill: number;
3
- velocity: number;
4
- }
5
- /** Bencho's frame-normalized liquid spring. See THIRD_PARTY_NOTICES.md. */
6
- export declare function stepLiquid(state: LiquidState, target: number, viscosity: number, dt: number): LiquidState;
@@ -1,21 +0,0 @@
1
- export type SloshSliderSize = "sm" | "md" | "lg";
2
- export interface SloshSliderProps {
3
- label: string;
4
- value?: number;
5
- defaultValue?: number;
6
- onChange?: (value: number) => void;
7
- /** 0 is rigid; 100 is loose liquid. @default 15 */
8
- viscosity?: number;
9
- /** How far the handle coasts after release, 0–100. @default 55 */
10
- momentum?: number;
11
- /** Lean of the liquid's leading edge, 0–100. @default 45 */
12
- tilt?: number;
13
- /** Track corner, from square to a pill, 0–20. @default 20 */
14
- corner?: number;
15
- /** Track height and knob scale. @default "md" */
16
- size?: SloshSliderSize;
17
- disabled?: boolean;
18
- className?: string;
19
- formatValue?: (value: number) => string;
20
- }
21
- export declare function SloshSlider({ label, value, defaultValue, onChange, viscosity, momentum, tilt, corner, size, disabled, className, formatValue, }: SloshSliderProps): import("react").JSX.Element;
@@ -1 +0,0 @@
1
- export * from "./stat-tile";
@@ -1,20 +0,0 @@
1
- import type { ReactNode } from "react";
2
- export type StatTileTone = "critical";
3
- export type StatTileSize = "sm" | "md" | "lg";
4
- export interface StatTileProps {
5
- label: string;
6
- value: number;
7
- /** A quiet line under the number, like "3 signed in now". */
8
- caption?: ReactNode;
9
- /** Turns the number red once it's above zero. */
10
- tone?: StatTileTone;
11
- /** Makes the tile a toggle, e.g. a filter. */
12
- onClick?: () => void;
13
- active?: boolean;
14
- /** Custom classes for the tile container. */
15
- className?: string;
16
- /** Tile padding and number scale. @default "md" */
17
- size?: StatTileSize;
18
- }
19
- /** One number with its label, optionally a toggle. */
20
- export declare function StatTile({ label, value, caption, tone, onClick, active, className, size, }: StatTileProps): import("react").JSX.Element;
@@ -1,17 +0,0 @@
1
- import type { HTMLAttributes, ReactNode } from "react";
2
- declare const dots: {
3
- readonly saved: "bg-success";
4
- readonly syncing: "bg-warning animate-pulse";
5
- readonly offline: "bg-label-tertiary";
6
- };
7
- export type StatusIndicatorState = keyof typeof dots;
8
- export type StatusIndicatorSize = "sm" | "md";
9
- export interface StatusIndicatorProps extends HTMLAttributes<HTMLSpanElement> {
10
- /** Visual treatment of the status dot. */
11
- state: StatusIndicatorState;
12
- children: ReactNode;
13
- /** Dot diameter and text scale. @default "md" */
14
- size?: StatusIndicatorSize;
15
- }
16
- export declare function StatusIndicator({ state, children, size, className, ...props }: StatusIndicatorProps): import("react").JSX.Element;
17
- export {};
@@ -1,11 +0,0 @@
1
- /** Counts at a place retain carries: the tens column of 1284 targets 128. */
2
- export declare function digitAt(count: number): number;
3
- export declare function advanceDigit(position: number, velocity: number, target: number, frames: number): {
4
- position: number;
5
- velocity: number;
6
- };
7
- /** Three recycled cells keep the strip continuous through either side of zero. */
8
- export declare function RollingDigit({ count, place, }: {
9
- count: number;
10
- place: number;
11
- }): import("react").JSX.Element;
@@ -1,22 +0,0 @@
1
- export type StepperSize = "sm" | "md" | "lg";
2
- export interface StepperProps {
3
- value: number;
4
- onChange: (value: number) => void;
5
- label: string;
6
- /** Localized accessible names for each action. */
7
- labels: {
8
- decrement: string;
9
- increment: string;
10
- };
11
- min?: number;
12
- max?: number;
13
- step?: number;
14
- disabled?: boolean;
15
- className?: string;
16
- /** Formats the displayed value. */
17
- formatValue?: (value: number) => string;
18
- /** Label, output and +/- button scale. @default "md" */
19
- size?: StepperSize;
20
- }
21
- /** Discrete increments with disabled boundary actions and a spoken value. */
22
- export declare function Stepper({ value, onChange, label, labels, min, max, step, disabled, className, formatValue, size, }: StepperProps): import("react").JSX.Element;
@@ -1,22 +0,0 @@
1
- export interface SwatchPickerOption<T extends string> {
2
- value: T;
3
- label: string;
4
- /** Swatch background color. */
5
- color: string;
6
- /** Color of the selected checkmark. */
7
- ink: string;
8
- }
9
- export type SwatchPickerSize = "sm" | "md" | "lg";
10
- export interface SwatchPickerProps<T extends string> {
11
- value: T;
12
- options: ReadonlyArray<SwatchPickerOption<T>>;
13
- onChange: (value: T) => void;
14
- /** Accessible name for the group. */
15
- label: string;
16
- /** Custom classes for the swatch container. */
17
- className?: string;
18
- /** Swatch diameter, check icon and caption scale. @default "md" */
19
- size?: SwatchPickerSize;
20
- }
21
- /** Colour swatches with a check on the chosen one. */
22
- export declare function SwatchPicker<T extends string>({ value, options, onChange, label, className, size, }: SwatchPickerProps<T>): import("react").JSX.Element;
@@ -1,43 +0,0 @@
1
- import { type ReactNode } from "react";
2
- export interface TabBarTab<Id extends string = string> {
3
- id: Id;
4
- label: string;
5
- icon: ReactNode;
6
- }
7
- /** What a tab's link receives; spread it onto the router's own link. */
8
- export interface TabBarLinkProps {
9
- className: string;
10
- "aria-current": "page" | undefined;
11
- onClick: () => void;
12
- children: ReactNode;
13
- }
14
- export type TabBarMinimizeBehavior = "platform" | "scroll" | "never";
15
- export type TabBarSize = "sm" | "md" | "lg";
16
- export interface TabBarProps<Tab extends TabBarTab> {
17
- /** `platform` follows the platform, `scroll` always minimizes, `never` stays expanded. @default "platform" */
18
- minimizeBehavior?: TabBarMinimizeBehavior;
19
- tabs: readonly Tab[];
20
- /** Active tab ID, or null for a destination outside the bar. */
21
- active: Tab["id"] | null;
22
- /** Renders your router's link with the supplied appearance and accessibility props. */
23
- renderLink: (tab: Tab, props: TabBarLinkProps) => ReactNode;
24
- search?: {
25
- label: string;
26
- onPress: () => void;
27
- };
28
- /** Accessible name for the navigation. */
29
- label: string;
30
- /** Tab height, label text, minimized width and search button diameter. @default "md" */
31
- size?: TabBarSize;
32
- className?: string;
33
- }
34
- /**
35
- * The app's main places a thumb's reach away, drawn as iOS 26 draws them: a
36
- * floating glass capsule of tabs, with Search as its own round button at the
37
- * trailing end. Scrolling down through content shrinks the capsule to the
38
- * current tab; scrolling back up, or a tap, restores it. Android shares the
39
- * glass, but its bar stays full size, as Android's own bars do.
40
- *
41
- * Links stay the app's own (`renderLink`), so the bar works with any router.
42
- */
43
- export declare function TabBar<Tab extends TabBarTab>({ tabs, active, renderLink, search, label, className, size, minimizeBehavior, }: TabBarProps<Tab>): import("react").JSX.Element;
@@ -1,27 +0,0 @@
1
- import { type ReactNode } from "react";
2
- export type TabViewAlign = "start" | "center";
3
- export type TabViewSize = "sm" | "md" | "lg";
4
- export interface TabViewProps<Value extends string> {
5
- /** Available tabs, in keyboard navigation order. */
6
- options: readonly {
7
- value: Value;
8
- label: string;
9
- disabled?: boolean;
10
- }[];
11
- /** Initial selection when value is not controlled. */
12
- defaultValue: Value;
13
- /** Controlled selection; omit to keep selection inside TabView. */
14
- value?: Value;
15
- onValueChange?: (value: Value) => void;
16
- /** Tab alignment: `start` or `center`. @default "center" */
17
- align?: TabViewAlign;
18
- /** Accessible name for the tab list. */
19
- label: string;
20
- /** Renders the selected tab's panel. */
21
- children: (value: Value) => ReactNode;
22
- /** Tablist height, tab text scale and underline offset. @default "md" */
23
- size?: TabViewSize;
24
- className?: string;
25
- }
26
- /** Content tabs with native buttons, roving focus and automatic keyboard activation. */
27
- export declare function TabView<Value extends string>({ options, defaultValue, value: controlledValue, onValueChange, align, label, children, size, className, }: TabViewProps<Value>): import("react").JSX.Element | null;
@@ -1,9 +0,0 @@
1
- import type { ComponentProps } from "react";
2
- import { type TextFieldSize } from "../text-field/text-field";
3
- export type TextEditorSize = TextFieldSize;
4
- export interface TextEditorProps extends Omit<ComponentProps<"textarea">, "size"> {
5
- /** Field surface scale; matches TextField's xs | sm | md | lg. @default "md" */
6
- size?: TextEditorSize;
7
- }
8
- /** A multi-line text field that reuses TextField's shared surface treatment. */
9
- export declare function TextEditor({ className, size, ...props }: TextEditorProps): import("react").JSX.Element;
@@ -1,33 +0,0 @@
1
- import { type ComponentProps, type ReactNode } from "react";
2
- /** Shared text control classes for components that reuse TextField's surface. */
3
- export declare const textControlClasses: string;
4
- /** Size scale shared across TextField, SecureField, and form fields. */
5
- export type TextFieldSize = "xs" | "sm" | "md" | "lg";
6
- export interface FieldSize {
7
- height: string;
8
- floatingHeight: string;
9
- padding: string;
10
- text: string;
11
- radius: string;
12
- }
13
- export declare function fieldSize(size: TextFieldSize): FieldSize;
14
- export type TextFieldProps = Omit<ComponentProps<"input">, "size"> & {
15
- label: string;
16
- description?: ReactNode;
17
- errors?: string[];
18
- /** A decorative icon before the text, such as a mail glyph. */
19
- icon?: ReactNode;
20
- /** A decorative icon after the text, such as a unit or a check. */
21
- trailingIcon?: ReactNode;
22
- /** An interactive control after the text, such as a clear button. Size it to the field: an `xs` or `icon-xs` button, never the default. */
23
- action?: ReactNode;
24
- revealLabels?: {
25
- show: string;
26
- hide: string;
27
- };
28
- /** Float the label into the outline on focus or when filled. @default "above" */
29
- labelPlacement?: "above" | "floating";
30
- /** Field height and text scale. @default "md" */
31
- size?: TextFieldSize;
32
- };
33
- export declare function TextField({ label, description, errors, icon, trailingIcon, action, revealLabels, labelPlacement, size, placeholder, type, id: suppliedId, className, ...props }: TextFieldProps): import("react").JSX.Element;
@@ -1,52 +0,0 @@
1
- /**
2
- * App-wide toasts: short messages that confirm, report progress or explain
3
- * a failure. Call `toast` from anywhere; render one `<Toaster />`.
4
- */
5
- export type ToastTone = "neutral" | "success" | "error" | "loading";
6
- export type ToastSize = "sm" | "md" | "lg";
7
- export interface ToastAction {
8
- label: string;
9
- onClick: () => void;
10
- }
11
- export interface Toast {
12
- id: number;
13
- tone: ToastTone;
14
- title: string;
15
- description?: string;
16
- action?: ToastAction;
17
- /** Milliseconds before it leaves on its own; `null` stays until dismissed. */
18
- duration: number | null;
19
- createdAt: number;
20
- /** Pill size, content padding and title/description text scale. @default "md" */
21
- size: ToastSize;
22
- }
23
- export interface ToastOptions {
24
- description?: string;
25
- action?: ToastAction;
26
- duration?: number | null;
27
- /** Pill size, content padding and title/description text scale. @default "md" */
28
- size?: ToastSize;
29
- }
30
- /** Changes a toast in place; it morphs to its new state. */
31
- declare function update(id: number, tone: ToastTone, title: string, options?: ToastOptions): number;
32
- declare function dismiss(id: number): void;
33
- interface PromiseMessages<T> {
34
- loading: string;
35
- success: string | ((value: T) => string);
36
- error: string | ((error: unknown) => string);
37
- }
38
- export declare const toast: ((title: string, options?: ToastOptions) => number) & {
39
- success: (title: string, options?: ToastOptions) => number;
40
- error: (title: string, options?: ToastOptions) => number;
41
- loading: (title: string, options?: ToastOptions) => number;
42
- update: typeof update;
43
- dismiss: typeof dismiss;
44
- /** Shows progress, then morphs into the outcome. Returns the promise. */
45
- promise<T>(promise: Promise<T>, messages: PromiseMessages<T>): Promise<T>;
46
- };
47
- export declare function subscribeToasts(listener: () => void): () => void;
48
- export declare function getToasts(): Toast[];
49
- export declare const toastLimits: {
50
- readonly visible: 3;
51
- };
52
- export {};
@@ -1,22 +0,0 @@
1
- export type ToggleStyle = "switch" | "checkbox";
2
- export type ToggleSize = "sm" | "md" | "lg";
3
- export interface ToggleProps {
4
- /** Current on or off state. */
5
- checked: boolean;
6
- /** Called with the next checked state. */
7
- onChange: (checked: boolean) => void;
8
- /** Accessible name, including when the visible label is hidden. */
9
- label: string;
10
- disabled?: boolean;
11
- /** `switch` for a setting, `checkbox` for a selection. @default "switch" */
12
- style?: ToggleStyle;
13
- /** Reports a mixed selection to assistive technology. @default false */
14
- mixed?: boolean;
15
- /** Keeps the accessible name while hiding the visible label. @default false */
16
- labelHidden?: boolean;
17
- /** Switch track size, thumb travel, checkbox box and label text scale. @default "md" */
18
- size?: ToggleSize;
19
- /** Custom classes for the toggle container. */
20
- className?: string;
21
- }
22
- export declare function Toggle({ checked, onChange, label, disabled, style, mixed, labelHidden, size, className, }: ToggleProps): import("react").JSX.Element;
@@ -1,7 +0,0 @@
1
- export type TooltipSize = "sm" | "md" | "lg";
2
- /**
3
- * Tooltips for any element with `data-tooltip`, on devices that can hover.
4
- * One listener for the whole app: a short delay before the first, then
5
- * instant while moving between controls, as on macOS.
6
- */
7
- export declare function TooltipHost(): import("react").JSX.Element;
@@ -1 +0,0 @@
1
- export * from "./view-controller";
@@ -1,21 +0,0 @@
1
- import type { PropsWithChildren, ReactNode } from "react";
2
- type ViewControllerProps = PropsWithChildren<{
3
- heading: ReactNode;
4
- className?: string;
5
- }>;
6
- type HeadingProps = {
7
- title: ReactNode;
8
- description?: ReactNode;
9
- action?: ReactNode;
10
- size?: keyof typeof titleSizes;
11
- };
12
- declare const titleSizes: {
13
- readonly default: "text-large-title leading-large-title";
14
- readonly compact: "text-title leading-title font-semibold tracking-tight";
15
- };
16
- export declare function ViewController({ heading, className, children, }: ViewControllerProps): import("react").JSX.Element;
17
- export declare namespace ViewController {
18
- export { Heading };
19
- }
20
- declare function Heading({ title, description, action, size, }: HeadingProps): import("react").JSX.Element;
21
- export {};
@@ -1,15 +0,0 @@
1
- export type WakeSliderSize = "sm" | "md" | "lg";
2
- export interface WakeSliderProps {
3
- label: string;
4
- value?: number;
5
- defaultValue?: number;
6
- onChange?: (value: number) => void;
7
- bars?: number;
8
- wake?: number;
9
- disabled?: boolean;
10
- className?: string;
11
- formatValue?: (value: number) => string;
12
- /** Bar height at rest and value text scale. @default "md" */
13
- size?: WakeSliderSize;
14
- }
15
- export declare function WakeSlider({ label, value: controlledValue, defaultValue, onChange, disabled, className, formatValue, size, bars, wake, }: WakeSliderProps): import("react").JSX.Element;
@@ -1,2 +0,0 @@
1
- /** Programmatic restoration does not collapse chrome; reaching the top always restores it. */
2
- export declare function minimizeDecision(top: number, anchor: number, userDriven: boolean): boolean | null;
@@ -1,9 +0,0 @@
1
- /** Keep the panel mounted until its material has returned to the trigger. */
2
- export declare function useAnchoredDisclosure(disabled?: boolean): {
3
- open: boolean;
4
- mounted: boolean;
5
- show: () => void;
6
- toggle: () => void;
7
- close: () => void;
8
- onExited: () => void;
9
- };
@@ -1,3 +0,0 @@
1
- import { type RefObject } from "react";
2
- /** Dismiss an anchored portal without stealing focus from outside pointer interactions. */
3
- export declare function useFloatingDismiss(surface: RefObject<HTMLElement | null>, anchor: HTMLElement, onDismiss: (restoreFocus: boolean) => void): void;
@@ -1,19 +0,0 @@
1
- export type ViewportInput = {
2
- width: number;
3
- height: number;
4
- top: number;
5
- left: number;
6
- layoutHeight: number;
7
- editing: boolean;
8
- };
9
- export type ViewportMetrics = {
10
- width: number;
11
- height: number;
12
- top: number;
13
- left: number;
14
- keyboardOpen: boolean;
15
- };
16
- export type ViewportBaseline = {
17
- width: number;
18
- height: number;
19
- };
@@ -1,3 +0,0 @@
1
- import type { ViewportBaseline, ViewportInput, ViewportMetrics } from "./types";
2
- /** A resized WebView and Safari's overlaid keyboard share one visible rectangle. */
3
- export declare function viewportMetrics(input: ViewportInput, baseline: ViewportBaseline): ViewportMetrics;