@tempots/beatui 0.82.0 → 0.83.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 (551) hide show
  1. package/dist/_commonjsHelpers-DKOUU3wS.cjs +1 -0
  2. package/dist/_commonjsHelpers-DaMA6jEr.js +8 -0
  3. package/dist/ar-CBrjAlIY.cjs +1 -0
  4. package/dist/ar-DjMvIww5.js +175 -0
  5. package/dist/{ar-NCCPhOpI.js → ar-DwDxAANU.js} +16 -1
  6. package/dist/ar-kZBzg02I.cjs +1 -0
  7. package/dist/auth/index.cjs.js +1 -1
  8. package/dist/auth/index.es.js +64 -1351
  9. package/dist/auth-divider-C3_CgC0l.js +1375 -0
  10. package/dist/auth-divider-C4WTL71M.cjs +1 -0
  11. package/dist/beatui.css +11183 -5596
  12. package/dist/beatui.tailwind.css +11210 -5623
  13. package/dist/better-auth/index.cjs.js +1 -0
  14. package/dist/better-auth/index.es.js +741 -0
  15. package/dist/{colors-B2yrgHSW.cjs → colors-BI0YhONJ.cjs} +1 -1
  16. package/dist/{colors-DPo9GEJR.js → colors-BmLYKmoH.js} +38 -30
  17. package/dist/de-B03SM9eF.cjs +1 -0
  18. package/dist/{de-BVK2MkCk.js → de-CSGSC0xX.js} +18 -3
  19. package/dist/de-CrBw41po.cjs +1 -0
  20. package/dist/{de-f2xcEb34.js → de-wChFYqM4.js} +79 -5
  21. package/dist/deep-merge-CmQoIYPC.js +1689 -0
  22. package/dist/deep-merge-UghuPcyW.cjs +1 -0
  23. package/dist/duration-input-BJzKgI15.cjs +1 -0
  24. package/dist/{duration-input-B3vnnwBZ.js → duration-input-DaB6s0rL.js} +24 -23
  25. package/dist/editor-toolbar-group-BslfdazC.js +32 -0
  26. package/dist/editor-toolbar-group-_V1rDM-1.cjs +1 -0
  27. package/dist/{es-BxBeTRCv.cjs → es-BRa0hV-7.cjs} +1 -1
  28. package/dist/es-Ca5xT3NE.cjs +1 -0
  29. package/dist/es-CmPF3IGl.js +175 -0
  30. package/dist/{es-BQS8PL9j.js → es-dR46FTMF.js} +16 -1
  31. package/dist/{fa-DxPseW3g.cjs → fa-BxCSKn9j.cjs} +1 -1
  32. package/dist/fa-D696e75R.js +175 -0
  33. package/dist/fa-DhZJYuC6.cjs +1 -0
  34. package/dist/{fa-T-tkJSJr.js → fa-FsHBFjdY.js} +16 -1
  35. package/dist/fr-1nSKSIlw.cjs +1 -0
  36. package/dist/{fr-yOW_68YY.js → fr-B0jeX1Hx.js} +83 -9
  37. package/dist/{fr-CSRRhyCG.js → fr-Di6BT9_V.js} +18 -3
  38. package/dist/fr-Dq6RAY9s.cjs +1 -0
  39. package/dist/he-BBX1h9uD.cjs +1 -0
  40. package/dist/{he-Bxdc4M08.js → he-CXujw1Lw.js} +16 -1
  41. package/dist/he-DhcurPt5.cjs +1 -0
  42. package/dist/he-SgAsIYJA.js +175 -0
  43. package/dist/{hi-CJeFvTBe.js → hi-Bvh4d9bO.js} +16 -1
  44. package/dist/hi-Cd0YQZTU.cjs +1 -0
  45. package/dist/hi-CxsIxbfM.cjs +1 -0
  46. package/dist/hi-s9oiIihq.js +175 -0
  47. package/dist/{hls.light.min-Bhrf47iR.cjs → hls.light.min-C6xKDzRR.cjs} +1 -1
  48. package/dist/{hls.light.min-C6VwviEa.js → hls.light.min-hEMf_E8u.js} +1 -1
  49. package/dist/{index-ChsRjiIp.cjs → index-Bm43lZqE.cjs} +19 -19
  50. package/dist/{index-C5YCCgnn.cjs → index-C2_iX1um.cjs} +1 -1
  51. package/dist/{index-DT6-HMMz.js → index-C32iUFIr.js} +1432 -1462
  52. package/dist/{index-CiAVfKIZ.js → index-CEqc0H3v.js} +1 -1
  53. package/dist/index-DH37GTQj.cjs +1 -0
  54. package/dist/{index-DklKfzD4.js → index-Di1_W_7Q.js} +351 -361
  55. package/dist/index.cjs.js +4 -4
  56. package/dist/index.es.js +6310 -3528
  57. package/dist/input-container-CSi72GI1.cjs +1 -0
  58. package/dist/input-container-Nx0gMAzS.js +258 -0
  59. package/dist/it-ByIEk5Cq.cjs +1 -0
  60. package/dist/it-D_IcaYxp.cjs +1 -0
  61. package/dist/{it-6e6X-4BB.js → it-Dc4IMciD.js} +80 -6
  62. package/dist/{it-Zmp0BhIj.js → it-EWhykhHv.js} +18 -3
  63. package/dist/ja-CMGqpPo7.cjs +1 -0
  64. package/dist/{ja-BxNuNo2H.js → ja-D2t2g5xj.js} +85 -11
  65. package/dist/ja-DV6Fpp18.cjs +1 -0
  66. package/dist/{ja-DWjoA-hQ.js → ja-YZ0P5woj.js} +16 -1
  67. package/dist/json-schema/index.cjs.js +1 -1
  68. package/dist/json-schema/index.es.js +212 -205
  69. package/dist/json-schema-display/index.cjs.js +1 -1
  70. package/dist/json-schema-display/index.es.js +1 -1
  71. package/dist/json-structure/index.cjs.js +1 -1
  72. package/dist/json-structure/index.es.js +623 -762
  73. package/dist/ko-BPl5rP97.cjs +1 -0
  74. package/dist/ko-BRylA5JZ.js +175 -0
  75. package/dist/ko-DR1f0as8.cjs +1 -0
  76. package/dist/{ko-BOlI-33h.js → ko-U7BSUAxZ.js} +16 -1
  77. package/dist/lexical/index.cjs.js +46 -0
  78. package/dist/lexical/index.es.js +21397 -0
  79. package/dist/lexical.css +1122 -0
  80. package/dist/menu-CX72LaZ3.cjs +1 -0
  81. package/dist/menu-D_slbwl8.js +374 -0
  82. package/dist/modal-DaI1jH-X.js +488 -0
  83. package/dist/modal-kyZfvVZb.cjs +1 -0
  84. package/dist/nl-BSfaHFt0.cjs +1 -0
  85. package/dist/{nl-Dr-l6zUy.cjs → nl-CQF0N7Mc.cjs} +1 -1
  86. package/dist/{nl-kQNcAdY1.js → nl-CqAxoB4J.js} +18 -3
  87. package/dist/nl-Dh7LUWAn.js +176 -0
  88. package/dist/notice-Bc1L4Zpr.cjs +1 -0
  89. package/dist/{notice-CZHWWwOQ.js → notice-Dz4nX57_.js} +49 -48
  90. package/dist/{oneof-branch-detection-BVNoKU9d.js → oneof-branch-detection-BED_n2MT.js} +523 -520
  91. package/dist/{oneof-branch-detection-C8g3eWnx.cjs → oneof-branch-detection-Vov_e3kI.cjs} +4 -4
  92. package/dist/{pl-CKyPFvss.js → pl-C-weXGCB.js} +16 -1
  93. package/dist/pl-D-O4sCnr.cjs +1 -0
  94. package/dist/{pl-Bs4nLJ__.js → pl-XEG-p1Q9.js} +77 -3
  95. package/dist/{pl-BK0i_yvq.cjs → pl-y_w3DWF3.cjs} +1 -1
  96. package/dist/prosemirror/index.cjs.js +1 -1
  97. package/dist/prosemirror/index.es.js +1 -1
  98. package/dist/{pt-DBmUhaNI.js → pt-BjNGOoZH.js} +18 -3
  99. package/dist/pt-DYsDA2sZ.js +175 -0
  100. package/dist/pt-DqaZWmbG.cjs +1 -0
  101. package/dist/pt-chEEYLlt.cjs +1 -0
  102. package/dist/ru-B46hVpFF.cjs +1 -0
  103. package/dist/{ru-Bi1_DEKM.js → ru-BTKBykp-.js} +86 -12
  104. package/dist/{ru-CsJ_yT-7.js → ru-CFmeZBXK.js} +16 -1
  105. package/dist/ru-CISMzCHR.cjs +1 -0
  106. package/dist/session-id-3KiilioY.js +8 -0
  107. package/dist/session-id-B5lJMzbB.cjs +1 -0
  108. package/dist/styles-url-CVCcF0ra.cjs +1 -0
  109. package/dist/styles-url-DUdp56Ts.js +4 -0
  110. package/dist/tailwind/index.cjs.js +1 -1
  111. package/dist/tailwind/index.es.js +3 -3
  112. package/dist/tailwind/preset.cjs.js +1 -1
  113. package/dist/tailwind/preset.es.js +74 -4
  114. package/dist/tailwind/vite-plugin.cjs.js +10 -10
  115. package/dist/tailwind/vite-plugin.es.js +289 -410
  116. package/dist/text-input-8v79fzEy.cjs +1 -0
  117. package/dist/text-input-CPJzUC2r.js +45 -0
  118. package/dist/{toolbar-DR2Zd4Oo.js → toolbar-CjQG7l7X.js} +4 -4
  119. package/dist/toolbar-D3ZsC0g_.cjs +1 -0
  120. package/dist/{tr-Bn5ldVJs.js → tr-C5X2gFZS.js} +17 -2
  121. package/dist/tr-CaMaflJL.cjs +1 -0
  122. package/dist/{tr-DiYB-FwX.js → tr-Cp8ZCUic.js} +77 -3
  123. package/dist/{tr-CgJ8uhZu.cjs → tr-mWu2E__o.cjs} +1 -1
  124. package/dist/{translations-Cq8bUKJP.js → translations-BGblCUBj.js} +144 -70
  125. package/dist/translations-CZ0KOii3.cjs +1 -0
  126. package/dist/translations-gVgMyNno.cjs +1 -0
  127. package/dist/translations-jUYta1_1.js +87 -0
  128. package/dist/types/auth/index.d.ts +13 -0
  129. package/dist/types/auth-i18n/default.d.ts +14 -0
  130. package/dist/types/auth-i18n/locales/ar.d.ts +14 -0
  131. package/dist/types/auth-i18n/locales/de.d.ts +14 -0
  132. package/dist/types/auth-i18n/locales/en.d.ts +14 -0
  133. package/dist/types/auth-i18n/locales/es.d.ts +14 -0
  134. package/dist/types/auth-i18n/locales/fa.d.ts +14 -0
  135. package/dist/types/auth-i18n/locales/fr.d.ts +14 -0
  136. package/dist/types/auth-i18n/locales/he.d.ts +14 -0
  137. package/dist/types/auth-i18n/locales/hi.d.ts +14 -0
  138. package/dist/types/auth-i18n/locales/it.d.ts +14 -0
  139. package/dist/types/auth-i18n/locales/ja.d.ts +14 -0
  140. package/dist/types/auth-i18n/locales/ko.d.ts +14 -0
  141. package/dist/types/auth-i18n/locales/nl.d.ts +14 -0
  142. package/dist/types/auth-i18n/locales/pl.d.ts +14 -0
  143. package/dist/types/auth-i18n/locales/pt.d.ts +14 -0
  144. package/dist/types/auth-i18n/locales/ru.d.ts +14 -0
  145. package/dist/types/auth-i18n/locales/tr.d.ts +14 -0
  146. package/dist/types/auth-i18n/locales/ur.d.ts +14 -0
  147. package/dist/types/auth-i18n/locales/vi.d.ts +14 -0
  148. package/dist/types/auth-i18n/locales/zh.d.ts +14 -0
  149. package/dist/types/auth-i18n/translations.d.ts +14 -0
  150. package/dist/types/beatui-i18n/default.d.ts +99 -0
  151. package/dist/types/beatui-i18n/index.d.ts +11 -0
  152. package/dist/types/beatui-i18n/locales/en.d.ts +63 -0
  153. package/dist/types/beatui-i18n/translations.d.ts +87 -0
  154. package/dist/types/better-auth/bridge.d.ts +2 -0
  155. package/dist/types/better-auth/callbacks.d.ts +6 -0
  156. package/dist/types/better-auth/components/authenticated.d.ts +4 -0
  157. package/dist/types/better-auth/components/better-auth-container.d.ts +4 -0
  158. package/dist/types/better-auth/components/better-auth-modal.d.ts +4 -0
  159. package/dist/types/better-auth/components/magic-link-form.d.ts +7 -0
  160. package/dist/types/better-auth/components/passkey-management.d.ts +6 -0
  161. package/dist/types/better-auth/components/passkey-signin.d.ts +12 -0
  162. package/dist/types/better-auth/components/two-factor-setup.d.ts +8 -0
  163. package/dist/types/better-auth/components/two-factor-verify.d.ts +10 -0
  164. package/dist/types/better-auth/i18n/default.d.ts +29 -0
  165. package/dist/types/better-auth/i18n/locales/en.d.ts +28 -0
  166. package/dist/types/better-auth/i18n/translations.d.ts +27 -0
  167. package/dist/types/better-auth/index.d.ts +35 -0
  168. package/dist/types/better-auth/provider.d.ts +39 -0
  169. package/dist/types/better-auth/session.d.ts +14 -0
  170. package/dist/types/better-auth/social-mapping.d.ts +2 -0
  171. package/dist/types/better-auth/types.d.ts +276 -0
  172. package/dist/types/components/auth/auth-container.d.ts +63 -2
  173. package/dist/types/components/auth/auth-divider.d.ts +30 -0
  174. package/dist/types/components/auth/auth-email-prop.d.ts +25 -0
  175. package/dist/types/components/auth/index.d.ts +9 -0
  176. package/dist/types/components/auth/password-strength-indicator.d.ts +58 -0
  177. package/dist/types/components/auth/reset-password-form.d.ts +33 -0
  178. package/dist/types/components/auth/schemas.d.ts +183 -5
  179. package/dist/types/components/auth/signin-form.d.ts +33 -0
  180. package/dist/types/components/auth/signup-form.d.ts +36 -0
  181. package/dist/types/components/auth/social-login-button.d.ts +213 -0
  182. package/dist/types/components/auth/social-providers.d.ts +27 -1
  183. package/dist/types/components/auth/types.d.ts +301 -0
  184. package/dist/types/components/auth/utils.d.ts +198 -0
  185. package/dist/types/components/beatui.d.ts +35 -0
  186. package/dist/types/components/button/button.d.ts +61 -0
  187. package/dist/types/components/button/close-button.d.ts +32 -1
  188. package/dist/types/components/button/index.d.ts +2 -0
  189. package/dist/types/components/button/toggle-button-group.d.ts +95 -0
  190. package/dist/types/components/button/toggle-button.d.ts +60 -0
  191. package/dist/types/components/data/avatar-group.d.ts +74 -0
  192. package/dist/types/components/data/avatar.d.ts +62 -0
  193. package/dist/types/components/data/badge.d.ts +49 -2
  194. package/dist/types/components/data/calendar-shared.d.ts +59 -0
  195. package/dist/types/components/data/calendar.d.ts +107 -0
  196. package/dist/types/components/data/history-timeline.d.ts +35 -0
  197. package/dist/types/components/data/icon-badge.d.ts +14 -0
  198. package/dist/types/components/data/icon.d.ts +55 -4
  199. package/dist/types/components/data/index.d.ts +9 -0
  200. package/dist/types/components/data/page-drop-zone.d.ts +61 -8
  201. package/dist/types/components/data/presence-overlay.d.ts +26 -0
  202. package/dist/types/components/data/progress-bar.d.ts +81 -0
  203. package/dist/types/components/data/range-calendar.d.ts +104 -0
  204. package/dist/types/components/data/skeleton.d.ts +70 -0
  205. package/dist/types/components/data/table.d.ts +38 -11
  206. package/dist/types/components/data/tag.d.ts +40 -0
  207. package/dist/types/components/data/unstyled-drop-zone.d.ts +73 -0
  208. package/dist/types/components/editor-toolbar/editor-toolbar-button.d.ts +16 -0
  209. package/dist/types/components/editor-toolbar/editor-toolbar-group.d.ts +9 -0
  210. package/dist/types/components/editor-toolbar/index.d.ts +2 -0
  211. package/dist/types/components/form/control/control.d.ts +155 -0
  212. package/dist/types/components/form/control/date-utils.d.ts +81 -0
  213. package/dist/types/components/form/control/ensure-control.d.ts +28 -0
  214. package/dist/types/components/form/control/form-status.d.ts +63 -0
  215. package/dist/types/components/form/control/index.d.ts +10 -0
  216. package/dist/types/components/form/control/list-control.d.ts +100 -1
  217. package/dist/types/components/form/control/list-item-controls.d.ts +65 -0
  218. package/dist/types/components/form/controller/color-controller.d.ts +29 -1
  219. package/dist/types/components/form/controller/controller-validation.d.ts +31 -0
  220. package/dist/types/components/form/controller/controller.d.ts +286 -0
  221. package/dist/types/components/form/controller/index.d.ts +12 -0
  222. package/dist/types/components/form/controller/path.d.ts +69 -0
  223. package/dist/types/components/form/controller/union-controller.d.ts +106 -11
  224. package/dist/types/components/form/controller/utils.d.ts +67 -0
  225. package/dist/types/components/form/input/advanced-slider.d.ts +143 -0
  226. package/dist/types/components/form/input/appearance-selector.d.ts +39 -0
  227. package/dist/types/components/form/input/base64-input.d.ts +34 -0
  228. package/dist/types/components/form/input/base64s-input.d.ts +47 -0
  229. package/dist/types/components/form/input/bigint-input.d.ts +27 -0
  230. package/dist/types/components/form/input/checkbox-input.d.ts +46 -0
  231. package/dist/types/components/form/input/color-input.d.ts +42 -0
  232. package/dist/types/components/form/input/color-swatch-input.d.ts +53 -0
  233. package/dist/types/components/form/input/combobox-input.d.ts +73 -0
  234. package/dist/types/components/form/input/combobox-tags-input.d.ts +54 -0
  235. package/dist/types/components/form/input/date-input.d.ts +33 -0
  236. package/dist/types/components/form/input/date-time-input.d.ts +34 -0
  237. package/dist/types/components/form/input/dropdown-base.d.ts +52 -0
  238. package/dist/types/components/form/input/dropdown-input.d.ts +86 -0
  239. package/dist/types/components/form/input/duration-input.d.ts +18 -0
  240. package/dist/types/components/form/input/duration-mask.d.ts +24 -0
  241. package/dist/types/components/form/input/editable-text.d.ts +33 -0
  242. package/dist/types/components/form/input/email-input.d.ts +34 -0
  243. package/dist/types/components/form/input/file-input.d.ts +33 -0
  244. package/dist/types/components/form/input/files-input.d.ts +44 -0
  245. package/dist/types/components/form/input/index.d.ts +5 -0
  246. package/dist/types/components/form/input/input-adornment.d.ts +38 -0
  247. package/dist/types/components/form/input/input-container.d.ts +65 -0
  248. package/dist/types/components/form/input/input-options.d.ts +70 -0
  249. package/dist/types/components/form/input/input-wrapper.d.ts +78 -0
  250. package/dist/types/components/form/input/instant-input.d.ts +18 -0
  251. package/dist/types/components/form/input/lazy-native-select.d.ts +43 -0
  252. package/dist/types/components/form/input/list-input.d.ts +50 -0
  253. package/dist/types/components/form/input/mask-input.d.ts +158 -0
  254. package/dist/types/components/form/input/native-select.d.ts +50 -0
  255. package/dist/types/components/form/input/nullable-base64-input.d.ts +25 -0
  256. package/dist/types/components/form/input/nullable-bigint-input.d.ts +26 -0
  257. package/dist/types/components/form/input/nullable-date-input.d.ts +18 -0
  258. package/dist/types/components/form/input/nullable-date-time-input.d.ts +19 -0
  259. package/dist/types/components/form/input/nullable-duration-input.d.ts +19 -0
  260. package/dist/types/components/form/input/nullable-email-input.d.ts +18 -0
  261. package/dist/types/components/form/input/nullable-instant-input.d.ts +19 -0
  262. package/dist/types/components/form/input/nullable-mask-input.d.ts +24 -0
  263. package/dist/types/components/form/input/nullable-number-input.d.ts +29 -0
  264. package/dist/types/components/form/input/nullable-password-input.d.ts +18 -0
  265. package/dist/types/components/form/input/nullable-plain-date-input.d.ts +18 -0
  266. package/dist/types/components/form/input/nullable-plain-date-time-input.d.ts +18 -0
  267. package/dist/types/components/form/input/nullable-plain-month-day-input.d.ts +18 -0
  268. package/dist/types/components/form/input/nullable-plain-time-input.d.ts +18 -0
  269. package/dist/types/components/form/input/nullable-plain-year-month-input.d.ts +18 -0
  270. package/dist/types/components/form/input/nullable-rating-input.d.ts +33 -0
  271. package/dist/types/components/form/input/nullable-text-area.d.ts +27 -0
  272. package/dist/types/components/form/input/nullable-text-input.d.ts +18 -0
  273. package/dist/types/components/form/input/nullable-url-input.d.ts +18 -0
  274. package/dist/types/components/form/input/nullable-utils.d.ts +22 -2
  275. package/dist/types/components/form/input/nullable-uuid-input.d.ts +18 -0
  276. package/dist/types/components/form/input/nullable-zoned-date-time-input.d.ts +20 -0
  277. package/dist/types/components/form/input/number-input.d.ts +49 -0
  278. package/dist/types/components/form/input/option.d.ts +165 -0
  279. package/dist/types/components/form/input/otp-input.d.ts +77 -0
  280. package/dist/types/components/form/input/password-input.d.ts +39 -0
  281. package/dist/types/components/form/input/plain-date-input.d.ts +17 -0
  282. package/dist/types/components/form/input/plain-date-time-input.d.ts +17 -0
  283. package/dist/types/components/form/input/plain-month-day-input.d.ts +18 -0
  284. package/dist/types/components/form/input/plain-time-input.d.ts +17 -0
  285. package/dist/types/components/form/input/plain-year-month-input.d.ts +17 -0
  286. package/dist/types/components/form/input/radio-group.d.ts +108 -0
  287. package/dist/types/components/form/input/rating-input.d.ts +57 -0
  288. package/dist/types/components/form/input/segmented-input.d.ts +70 -1
  289. package/dist/types/components/form/input/select-tags-input.d.ts +69 -0
  290. package/dist/types/components/form/input/slider-input.d.ts +82 -0
  291. package/dist/types/components/form/input/switch.d.ts +59 -1
  292. package/dist/types/components/form/input/tag-input.d.ts +19 -0
  293. package/dist/types/components/form/input/tag-utils.d.ts +111 -0
  294. package/dist/types/components/form/input/tags-input.d.ts +18 -0
  295. package/dist/types/components/form/input/text-area.d.ts +42 -0
  296. package/dist/types/components/form/input/text-input.d.ts +63 -1
  297. package/dist/types/components/form/input/url-input.d.ts +34 -0
  298. package/dist/types/components/form/input/uuid-input.d.ts +19 -0
  299. package/dist/types/components/form/input/zoned-date-time-input.d.ts +20 -0
  300. package/dist/types/components/form/schema/standard-schema-v1.d.ts +98 -23
  301. package/dist/types/components/form/use-form.d.ts +146 -2
  302. package/dist/types/components/i18n/index.d.ts +9 -0
  303. package/dist/types/components/i18n/locale-direction.d.ts +21 -1
  304. package/dist/types/components/i18n/locale-selector.d.ts +45 -0
  305. package/dist/types/components/i18n/make-i18nprovider.d.ts +42 -0
  306. package/dist/types/components/json-schema/schema-types.d.ts +133 -0
  307. package/dist/types/components/json-structure/controls/control-utils.d.ts +19 -0
  308. package/dist/types/components/json-structure/controls/deprecation-utils.d.ts +2 -3
  309. package/dist/types/components/json-structure/controls/index.d.ts +1 -0
  310. package/dist/types/components/json-structure/structure-types.d.ts +473 -19
  311. package/dist/types/components/layout/accordion.d.ts +77 -0
  312. package/dist/types/components/layout/action-card.d.ts +90 -2
  313. package/dist/types/components/layout/app-shell.d.ts +76 -0
  314. package/dist/types/components/layout/card.d.ts +27 -0
  315. package/dist/types/components/layout/center.d.ts +39 -0
  316. package/dist/types/components/layout/collapse.d.ts +28 -0
  317. package/dist/types/components/layout/divider.d.ts +84 -0
  318. package/dist/types/components/layout/group.d.ts +15 -0
  319. package/dist/types/components/layout/index.d.ts +2 -0
  320. package/dist/types/components/layout/nine-slice-scroll-view.d.ts +105 -0
  321. package/dist/types/components/layout/scrollable-panel.d.ts +54 -0
  322. package/dist/types/components/layout/sink.d.ts +46 -0
  323. package/dist/types/components/layout/stack.d.ts +16 -0
  324. package/dist/types/components/layout/with-breakpoint.d.ts +194 -0
  325. package/dist/types/components/lexical/bare-editor.d.ts +29 -0
  326. package/dist/types/components/lexical/code/index.d.ts +1 -0
  327. package/dist/types/components/lexical/code/language-selector.d.ts +13 -0
  328. package/dist/types/components/lexical/contextual-editor.d.ts +22 -0
  329. package/dist/types/components/lexical/docked-editor.d.ts +23 -0
  330. package/dist/types/components/lexical/floating/block-handle.d.ts +16 -0
  331. package/dist/types/components/lexical/floating/floating-toolbar.d.ts +12 -0
  332. package/dist/types/components/lexical/floating/index.d.ts +6 -0
  333. package/dist/types/components/lexical/floating/slash-command-palette.d.ts +20 -0
  334. package/dist/types/components/lexical/index.d.ts +8 -0
  335. package/dist/types/components/lexical/lexical-editor-input.d.ts +30 -0
  336. package/dist/types/components/lexical/table/index.d.ts +1 -0
  337. package/dist/types/components/lexical/table/table-controls.d.ts +12 -0
  338. package/dist/types/components/lexical/toolbar/index.d.ts +6 -0
  339. package/dist/types/components/lexical/toolbar/lexical-toolbar.d.ts +12 -0
  340. package/dist/types/components/lexical/toolbar/toolbar-button.d.ts +1 -0
  341. package/dist/types/components/lexical/toolbar/toolbar-group.d.ts +1 -0
  342. package/dist/types/components/lexical/toolbar/toolbar-helpers.d.ts +32 -0
  343. package/dist/types/components/misc/empty-state.d.ts +86 -0
  344. package/dist/types/components/misc/expando.d.ts +81 -0
  345. package/dist/types/components/misc/index.d.ts +2 -1
  346. package/dist/types/components/misc/link-portal.d.ts +40 -2
  347. package/dist/types/components/misc/notice.d.ts +93 -0
  348. package/dist/types/components/misc/notification-panel.d.ts +21 -0
  349. package/dist/types/components/misc/notification-provider.d.ts +141 -0
  350. package/dist/types/components/misc/notification.d.ts +93 -0
  351. package/dist/types/components/misc/style-portal.d.ts +31 -1
  352. package/dist/types/components/monaco/monaco-editor-input.d.ts +59 -2
  353. package/dist/types/components/navigation/breadcrumbs.d.ts +96 -0
  354. package/dist/types/components/navigation/flyout.d.ts +118 -16
  355. package/dist/types/components/navigation/index.d.ts +3 -0
  356. package/dist/types/components/navigation/link/link.d.ts +100 -0
  357. package/dist/types/components/navigation/menu.d.ts +155 -35
  358. package/dist/types/components/navigation/pagination.d.ts +82 -0
  359. package/dist/types/components/navigation/sidebar/sidebar-group.d.ts +42 -0
  360. package/dist/types/components/navigation/sidebar/sidebar-link.d.ts +101 -0
  361. package/dist/types/components/navigation/sidebar/sidebar-separator.d.ts +17 -0
  362. package/dist/types/components/navigation/sidebar/sidebar.d.ts +57 -0
  363. package/dist/types/components/navigation/tabs/tabs.d.ts +3 -2
  364. package/dist/types/components/navigation/toolbar/toolbar.d.ts +125 -0
  365. package/dist/types/components/navigation/tree-view.d.ts +95 -0
  366. package/dist/types/components/overlay/announcement-bar.d.ts +41 -2
  367. package/dist/types/components/overlay/block-command-palette.d.ts +25 -0
  368. package/dist/types/components/overlay/command-palette.d.ts +17 -0
  369. package/dist/types/components/overlay/dialogs.d.ts +213 -0
  370. package/dist/types/components/overlay/drawer.d.ts +76 -12
  371. package/dist/types/components/overlay/index.d.ts +4 -0
  372. package/dist/types/components/overlay/lightbox.d.ts +53 -10
  373. package/dist/types/components/overlay/modal.d.ts +113 -13
  374. package/dist/types/components/overlay/overlay.d.ts +61 -0
  375. package/dist/types/components/overlay/popover.d.ts +100 -0
  376. package/dist/types/components/overlay/ribbon.d.ts +58 -9
  377. package/dist/types/components/prosemirror/etoolbar-button.d.ts +11 -11
  378. package/dist/types/components/prosemirror/etoolbar-group.d.ts +11 -4
  379. package/dist/types/components/prosemirror/link-control.d.ts +43 -2
  380. package/dist/types/components/prosemirror/prosemirror-toolbar.d.ts +46 -6
  381. package/dist/types/components/prosemirror/utils.d.ts +113 -1
  382. package/dist/types/components/theme/style-utils.d.ts +95 -0
  383. package/dist/types/components/theme/theme.d.ts +39 -0
  384. package/dist/types/components/theme/types.d.ts +133 -1
  385. package/dist/types/components/typography/index.d.ts +1 -0
  386. package/dist/types/components/typography/kbd.d.ts +48 -0
  387. package/dist/types/components/typography/label.d.ts +45 -0
  388. package/dist/types/index.d.ts +14 -0
  389. package/dist/types/json-schema/index.d.ts +13 -0
  390. package/dist/types/json-schema-display/index.d.ts +12 -0
  391. package/dist/types/json-structure/index.d.ts +9 -4
  392. package/dist/types/lexical/commands/index.d.ts +17 -0
  393. package/dist/types/lexical/headless.d.ts +39 -0
  394. package/dist/types/lexical/horizontal-rule-node.d.ts +20 -0
  395. package/dist/types/lexical/index.d.ts +20 -0
  396. package/dist/types/lexical/lazy-loader.d.ts +35 -0
  397. package/dist/types/lexical/nodes.d.ts +29 -0
  398. package/dist/types/lexical/plugins/auto-link.d.ts +7 -0
  399. package/dist/types/lexical/plugins/clipboard.d.ts +11 -0
  400. package/dist/types/lexical/plugins/code-shiki.d.ts +11 -0
  401. package/dist/types/lexical/plugins/code.d.ts +7 -0
  402. package/dist/types/lexical/plugins/dragon.d.ts +6 -0
  403. package/dist/types/lexical/plugins/file-io.d.ts +10 -0
  404. package/dist/types/lexical/plugins/hashtag.d.ts +7 -0
  405. package/dist/types/lexical/plugins/history.d.ts +7 -0
  406. package/dist/types/lexical/plugins/horizontal-rule.d.ts +12 -0
  407. package/dist/types/lexical/plugins/html-io.d.ts +9 -0
  408. package/dist/types/lexical/plugins/index.d.ts +24 -0
  409. package/dist/types/lexical/plugins/link.d.ts +6 -0
  410. package/dist/types/lexical/plugins/list.d.ts +6 -0
  411. package/dist/types/lexical/plugins/mark.d.ts +15 -0
  412. package/dist/types/lexical/plugins/markdown-io.d.ts +13 -0
  413. package/dist/types/lexical/plugins/offset.d.ts +6 -0
  414. package/dist/types/lexical/plugins/overflow.d.ts +7 -0
  415. package/dist/types/lexical/plugins/plain-text.d.ts +6 -0
  416. package/dist/types/lexical/plugins/rich-text.d.ts +6 -0
  417. package/dist/types/lexical/plugins/selection.d.ts +6 -0
  418. package/dist/types/lexical/plugins/slash-commands.d.ts +26 -0
  419. package/dist/types/lexical/plugins/table.d.ts +11 -0
  420. package/dist/types/lexical/plugins/text.d.ts +13 -0
  421. package/dist/types/lexical/plugins/yjs.d.ts +9 -0
  422. package/dist/types/lexical/styles-url.d.ts +2 -0
  423. package/dist/types/lexical/styles.d.ts +2 -0
  424. package/dist/types/lexical/types.d.ts +634 -0
  425. package/dist/types/lexical-i18n/default.d.ts +92 -0
  426. package/dist/types/lexical-i18n/index.d.ts +21 -0
  427. package/dist/types/lexical-i18n/locales/ar.d.ts +91 -0
  428. package/dist/types/lexical-i18n/locales/de.d.ts +91 -0
  429. package/dist/types/lexical-i18n/locales/en.d.ts +91 -0
  430. package/dist/types/lexical-i18n/locales/es.d.ts +91 -0
  431. package/dist/types/lexical-i18n/locales/fa.d.ts +91 -0
  432. package/dist/types/lexical-i18n/locales/fr.d.ts +91 -0
  433. package/dist/types/lexical-i18n/locales/he.d.ts +91 -0
  434. package/dist/types/lexical-i18n/locales/hi.d.ts +91 -0
  435. package/dist/types/lexical-i18n/locales/it.d.ts +91 -0
  436. package/dist/types/lexical-i18n/locales/ja.d.ts +91 -0
  437. package/dist/types/lexical-i18n/locales/ko.d.ts +91 -0
  438. package/dist/types/lexical-i18n/locales/nl.d.ts +91 -0
  439. package/dist/types/lexical-i18n/locales/pl.d.ts +91 -0
  440. package/dist/types/lexical-i18n/locales/pt.d.ts +91 -0
  441. package/dist/types/lexical-i18n/locales/ru.d.ts +91 -0
  442. package/dist/types/lexical-i18n/locales/tr.d.ts +91 -0
  443. package/dist/types/lexical-i18n/locales/ur.d.ts +91 -0
  444. package/dist/types/lexical-i18n/locales/vi.d.ts +91 -0
  445. package/dist/types/lexical-i18n/locales/zh.d.ts +91 -0
  446. package/dist/types/lexical-i18n/translations.d.ts +21 -0
  447. package/dist/types/markdown/index.d.ts +13 -0
  448. package/dist/types/monaco/index.d.ts +17 -0
  449. package/dist/types/monaco/lazy-loader.d.ts +79 -0
  450. package/dist/types/monaco/styles-url.d.ts +11 -0
  451. package/dist/types/monaco/styles.d.ts +11 -0
  452. package/dist/types/monaco/types.d.ts +47 -0
  453. package/dist/types/prosemirror/index.d.ts +12 -0
  454. package/dist/types/prosemirror/styles-url.d.ts +11 -0
  455. package/dist/types/prosemirror/styles.d.ts +10 -0
  456. package/dist/types/tailwind/google-fonts.d.ts +15 -0
  457. package/dist/types/tailwind/index.d.ts +13 -0
  458. package/dist/types/tailwind/preset.d.ts +111 -0
  459. package/dist/types/tailwind/vite-plugin.d.ts +39 -4
  460. package/dist/types/tokens/base-colors.d.ts +21 -0
  461. package/dist/types/tokens/breakpoints.d.ts +67 -0
  462. package/dist/types/tokens/colors.d.ts +213 -4
  463. package/dist/types/tokens/motion.d.ts +142 -3
  464. package/dist/types/tokens/radius.d.ts +99 -0
  465. package/dist/types/tokens/shadows.d.ts +85 -0
  466. package/dist/types/tokens/spacing.d.ts +111 -0
  467. package/dist/types/tokens/text-shadows.d.ts +82 -0
  468. package/dist/types/tokens/typography.d.ts +313 -25
  469. package/dist/types/tokens/z-index.d.ts +62 -0
  470. package/dist/types/utils/color.d.ts +297 -28
  471. package/dist/types/utils/download.d.ts +92 -0
  472. package/dist/types/utils/focus-trap.d.ts +67 -11
  473. package/dist/types/utils/format-file-size.d.ts +44 -0
  474. package/dist/ur-B6yB2JQ7.cjs +1 -0
  475. package/dist/ur-CvGP14xo.cjs +1 -0
  476. package/dist/{ur-Bg9eX81v.js → ur-Deo004ME.js} +16 -1
  477. package/dist/{ur-B69X-xNs.js → ur-DkIYJxsF.js} +82 -8
  478. package/dist/use-animated-toggle-89fKlXxy.js +195 -0
  479. package/dist/use-animated-toggle-DrqK7nUS.cjs +1 -0
  480. package/dist/{use-form-CgZyrACX.js → use-form-BurzbPVV.js} +271 -88
  481. package/dist/use-form-Uree6QFy.cjs +2 -0
  482. package/dist/vi-BYk1rJDv.js +53 -0
  483. package/dist/vi-DKw6PBja.js +175 -0
  484. package/dist/vi-Df4WZe9y.cjs +1 -0
  485. package/dist/vi-DneuUbkq.cjs +1 -0
  486. package/dist/{widget-customization-DRA7E9Zf.js → widget-customization-0is7oTeP.js} +233 -231
  487. package/dist/widget-customization-B-LmxkPE.cjs +1 -0
  488. package/dist/zh-C5a9NGFW.cjs +1 -0
  489. package/dist/zh-CaKHseXJ.js +175 -0
  490. package/dist/zh-DFHuW_5g.cjs +1 -0
  491. package/dist/{zh-BIykcEu9.js → zh-DR7QaM65.js} +16 -1
  492. package/package.json +48 -3
  493. package/dist/_commonjsHelpers-C6fGbg64.js +0 -6
  494. package/dist/_commonjsHelpers-DwGv2jUC.cjs +0 -1
  495. package/dist/ar-BsUm-TCn.cjs +0 -1
  496. package/dist/ar-D7CXDmVZ.cjs +0 -1
  497. package/dist/ar-nOSKXpIW.js +0 -101
  498. package/dist/de-BUFLEyKr.cjs +0 -1
  499. package/dist/de-WzsOu9Gn.cjs +0 -1
  500. package/dist/deep-merge-CiOwVWn8.js +0 -1619
  501. package/dist/deep-merge-DxZqCkE5.cjs +0 -1
  502. package/dist/duration-input-Dg5SX3lM.cjs +0 -1
  503. package/dist/es-CDqqzpCw.js +0 -101
  504. package/dist/es-Ds2Xf3wV.cjs +0 -1
  505. package/dist/fa-C7tE_hR3.js +0 -101
  506. package/dist/fa-Ct1UtDB7.cjs +0 -1
  507. package/dist/fr-Cdyopuz3.cjs +0 -1
  508. package/dist/fr-CzAkRFed.cjs +0 -1
  509. package/dist/he-D2oUloCJ.js +0 -101
  510. package/dist/he-DarDNPn0.cjs +0 -1
  511. package/dist/he-DlXALrK7.cjs +0 -1
  512. package/dist/hi-3dBhLwDs.cjs +0 -1
  513. package/dist/hi-D5ZlZoQq.js +0 -101
  514. package/dist/hi-tATwsXJ6.cjs +0 -1
  515. package/dist/index-DE2tjivA.cjs +0 -1
  516. package/dist/it-BmFag7j0.cjs +0 -1
  517. package/dist/it-DohtcWi9.cjs +0 -1
  518. package/dist/ja-Dj-bAKLf.cjs +0 -1
  519. package/dist/ja-eyTArrgS.cjs +0 -1
  520. package/dist/ko-BFLCDMMs.cjs +0 -1
  521. package/dist/ko-BomUE-yQ.cjs +0 -1
  522. package/dist/ko-Ch0jFsBV.js +0 -101
  523. package/dist/modal-D2xE47kr.cjs +0 -1
  524. package/dist/modal-hkQD1bqZ.js +0 -655
  525. package/dist/nl-Bx2ACvr4.cjs +0 -1
  526. package/dist/nl-NuTdZO1s.js +0 -102
  527. package/dist/notice-C0SmlheE.cjs +0 -1
  528. package/dist/pl-QHl6sl8f.cjs +0 -1
  529. package/dist/pt-BETjHZrL.js +0 -101
  530. package/dist/pt-DZGw2Z-1.cjs +0 -1
  531. package/dist/pt-oBMmVYcu.cjs +0 -1
  532. package/dist/ru-CtxMmoa6.cjs +0 -1
  533. package/dist/ru-D03IuLqh.cjs +0 -1
  534. package/dist/text-input-CByq5OIo.cjs +0 -1
  535. package/dist/text-input-CFJntP7G.js +0 -287
  536. package/dist/toolbar-TPWYzoiF.cjs +0 -1
  537. package/dist/tr-B_-_1wua.cjs +0 -1
  538. package/dist/translations-B4-Zd2LM.cjs +0 -1
  539. package/dist/translations-D62qqNV9.cjs +0 -1
  540. package/dist/translations-DPr6c05Z.js +0 -67
  541. package/dist/ur-DvqAg9gW.cjs +0 -1
  542. package/dist/ur-DyUSmIbo.cjs +0 -1
  543. package/dist/use-form-JjeKCINk.cjs +0 -2
  544. package/dist/vi-BdzxA60L.js +0 -101
  545. package/dist/vi-CBmPaHxg.cjs +0 -1
  546. package/dist/vi-D5R3YcU0.cjs +0 -1
  547. package/dist/vi-DhdsHHf_.js +0 -38
  548. package/dist/widget-customization-G-QLB1rw.cjs +0 -1
  549. package/dist/zh-CCGXcj5r.cjs +0 -1
  550. package/dist/zh-Cb1b8uik.cjs +0 -1
  551. package/dist/zh-Dn1UJiZa.js +0 -101
@@ -1,2 +1,36 @@
1
1
  import { InputOptions } from './input-options';
2
+ /**
3
+ * An email input component wrapping a native `<input type="email">` element.
4
+ *
5
+ * Renders a styled email field inside an {@link InputContainer} with an email icon
6
+ * displayed by default in the `before` slot. The autocomplete attribute defaults to
7
+ * `'email'` and the name defaults to `'email'` for browser autofill compatibility.
8
+ * Placeholder text is sourced from the BeatUI i18n system when not explicitly provided.
9
+ *
10
+ * @param options - Configuration options following the {@link InputOptions} pattern for string values
11
+ * @returns A styled email input element with an email icon, wrapped in an InputContainer
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { prop } from '@tempots/dom'
16
+ * import { EmailInput } from '@tempots/beatui'
17
+ *
18
+ * const email = prop('')
19
+ * EmailInput({
20
+ * value: email,
21
+ * onChange: email.set,
22
+ * })
23
+ * ```
24
+ *
25
+ * @example
26
+ * ```ts
27
+ * // Override the default before icon
28
+ * EmailInput({
29
+ * value: prop(''),
30
+ * onChange: (v) => console.log('Email:', v),
31
+ * before: Icon({ icon: 'custom-email-icon' }),
32
+ * placeholder: 'user@example.com',
33
+ * })
34
+ * ```
35
+ */
2
36
  export declare const EmailInput: (options: InputOptions<string>) => import("@tempots/dom").Renderable;
@@ -2,10 +2,43 @@ import { Value } from '@tempots/dom';
2
2
  import { InputOptions } from './input-options';
3
3
  import { Merge } from '@tempots/std';
4
4
  import { FileInputMode } from './files-input';
5
+ /**
6
+ * Options for the {@link FileInput} component.
7
+ * Extends standard `InputOptions` for a single file with file-specific settings.
8
+ */
5
9
  export type FileInputOptions = Merge<InputOptions<File | undefined>, {
10
+ /** Comma-separated list of accepted MIME types or file extensions (e.g., `'image/*,.pdf'`). */
6
11
  accept?: Value<string>;
12
+ /** Maximum allowed file size in bytes. Files exceeding this size are rejected. */
7
13
  maxFileSize?: Value<number>;
14
+ /**
15
+ * Display mode for the file input.
16
+ * @default 'default'
17
+ */
8
18
  mode?: Value<FileInputMode>;
19
+ /**
20
+ * Whether to show the selected file in a list below the drop zone.
21
+ * @default true
22
+ */
9
23
  showFileList?: Value<boolean>;
10
24
  }>;
25
+ /**
26
+ * A single-file input component built on top of {@link FilesInput}.
27
+ *
28
+ * Provides a drag-and-drop zone and click-to-select interface for uploading
29
+ * a single file. Internally delegates to `FilesInput` with `maxFiles: 1`.
30
+ *
31
+ * @param options - Configuration options for the file input.
32
+ * @returns A renderable file input component.
33
+ *
34
+ * @example
35
+ * ```ts
36
+ * FileInput({
37
+ * value: prop<File | undefined>(undefined),
38
+ * accept: 'image/*',
39
+ * maxFileSize: 5 * 1024 * 1024, // 5 MB
40
+ * onChange: file => console.log('Selected:', file?.name),
41
+ * })
42
+ * ```
43
+ */
11
44
  export declare const FileInput: (options: FileInputOptions) => import("@tempots/dom").Renderable;
@@ -1,12 +1,56 @@
1
1
  import { Value, TNode } from '@tempots/dom';
2
2
  import { InputOptions } from './input-options';
3
3
  import { Merge } from '@tempots/std';
4
+ /**
5
+ * Display mode for file input components.
6
+ * - `'default'` - Full drop zone with file list below.
7
+ * - `'input'` - Inline input-style with compact file chips.
8
+ * - `'compact'` - Compact drop zone with inline file previews.
9
+ */
4
10
  export type FileInputMode = 'default' | 'input' | 'compact';
11
+ /**
12
+ * Options for the {@link FilesInput} component.
13
+ * Extends standard `InputOptions` for a `File[]` value with file-specific settings.
14
+ */
5
15
  export type FilesInputOptions = Merge<InputOptions<File[]>, {
16
+ /** Comma-separated list of accepted MIME types or file extensions (e.g., `'image/*,.pdf'`). */
6
17
  accept?: Value<string>;
18
+ /** Maximum number of files that can be selected. */
7
19
  maxFiles?: Value<number>;
20
+ /** Maximum allowed file size in bytes. Files exceeding this size are filtered out. */
8
21
  maxFileSize?: Value<number>;
22
+ /**
23
+ * Display mode for the file input.
24
+ * @default 'default'
25
+ */
9
26
  mode?: Value<FileInputMode>;
27
+ /**
28
+ * Whether to show the selected files in a list below the drop zone.
29
+ * @default true
30
+ */
10
31
  showFileList?: Value<boolean>;
11
32
  }>;
33
+ /**
34
+ * A multi-file input component with drag-and-drop support.
35
+ *
36
+ * Supports multiple display modes (`default`, `input`, `compact`), file type
37
+ * filtering, file size limits, thumbnail previews for images, and per-file
38
+ * removal. Integrates with the i18n system for localized messages.
39
+ *
40
+ * @param options - Configuration options for the multi-file input.
41
+ * @param children - Additional child nodes to render inside the container.
42
+ * @returns A renderable file input component.
43
+ *
44
+ * @example
45
+ * ```ts
46
+ * FilesInput({
47
+ * value: prop<File[]>([]),
48
+ * accept: 'image/*,.pdf',
49
+ * maxFiles: 5,
50
+ * maxFileSize: 10 * 1024 * 1024, // 10 MB
51
+ * mode: 'default',
52
+ * onChange: files => console.log('Files:', files.length),
53
+ * })
54
+ * ```
55
+ */
12
56
  export declare const FilesInput: (options: FilesInputOptions, ...children: TNode[]) => import("@tempots/dom").Renderable;
@@ -15,6 +15,7 @@ export * from './editable-text';
15
15
  export * from './email-input';
16
16
  export * from './file-input';
17
17
  export * from './files-input';
18
+ export * from './input-adornment';
18
19
  export * from './input-container';
19
20
  export * from './input-options';
20
21
  export * from './input-wrapper';
@@ -37,6 +38,7 @@ export * from './nullable-bigint-input';
37
38
  export * from './password-input';
38
39
  export * from './segmented-input';
39
40
  export * from './switch';
41
+ export * from './tag-input';
40
42
  export * from './tags-input';
41
43
  export * from './text-area';
42
44
  export * from './text-input';
@@ -44,7 +46,10 @@ export * from './uuid-input';
44
46
  export * from './nullable-uuid-input';
45
47
  export * from './rating-input';
46
48
  export * from './nullable-rating-input';
49
+ export * from './radio-group';
47
50
  export * from './slider-input';
51
+ export * from './advanced-slider';
52
+ export * from './otp-input';
48
53
  export * from './plain-date-input';
49
54
  export * from './nullable-plain-date-input';
50
55
  export * from './plain-time-input';
@@ -0,0 +1,38 @@
1
+ import { TNode, Value } from '@tempots/dom';
2
+ import { ControlSize } from '../../theme';
3
+ /**
4
+ * Configuration options for {@link InputAdornment}.
5
+ */
6
+ export type InputAdornmentOptions = {
7
+ /**
8
+ * The size of the adornment, controlling padding and font size.
9
+ * @default 'md'
10
+ */
11
+ size?: Value<ControlSize>;
12
+ /**
13
+ * When true, applies a subtle background fill and stretches to full height.
14
+ * @default false
15
+ */
16
+ filled?: Value<boolean>;
17
+ };
18
+ /**
19
+ * Renders a styled adornment for use in the `before` or `after` slots of {@link InputContainer}.
20
+ *
21
+ * Provides consistent padding, dimmed text color, and an optional background fill.
22
+ * Useful for prefixes (e.g., "$", "https://"), suffixes (e.g., "kg", ".com"),
23
+ * or any small decorative text around an input.
24
+ *
25
+ * @param options - Adornment configuration
26
+ * @param children - Content to display inside the adornment
27
+ * @returns A span element with adornment styling
28
+ *
29
+ * @example
30
+ * ```ts
31
+ * InputContainer({
32
+ * input: html.input(attr.type('text')),
33
+ * before: InputAdornment({ filled: true }, '$'),
34
+ * after: InputAdornment({}, '.00'),
35
+ * })
36
+ * ```
37
+ */
38
+ export declare function InputAdornment(options: InputAdornmentOptions, ...children: TNode[]): import("@tempots/dom").Renderable;
@@ -1,7 +1,51 @@
1
1
  import { TNode, Value } from '@tempots/dom';
2
2
  import { ControlSize } from '../../theme';
3
3
  import { ThemeColorName } from '../../../tokens';
4
+ /**
5
+ * Generates CSS class names for the input element wrapper based on size and container type.
6
+ *
7
+ * @param baseContainer - Whether to use base container styles (skips padding/text size)
8
+ * @param size - The control size ('xs' | 'sm' | 'md' | 'lg' | 'xl')
9
+ * @returns Space-separated string of CSS class names
10
+ */
4
11
  export declare function generateInputContainerInputClasses(baseContainer: boolean, size: ControlSize): string;
12
+ /**
13
+ * Wraps an input element with the standard BeatUI input container styling.
14
+ *
15
+ * This component provides:
16
+ * - Consistent border, background, and focus styles via `bc-input-container`
17
+ * - Error state styling when `hasError` is true
18
+ * - Optional `before` and `after` slots for icons, buttons, or other decorations
19
+ * - Click-to-focus behavior (clicking the container focuses the input)
20
+ * - Responsive sizing based on the `size` prop
21
+ *
22
+ * Used by most form inputs (TextInput, NumberInput, DateInput, etc.) to ensure
23
+ * visual consistency across the component library.
24
+ *
25
+ * @param options - Container configuration options
26
+ * @param options.input - The actual input element (or custom control) to wrap
27
+ * @param options.disabled - Whether the input is disabled
28
+ * @param options.hasError - Whether to apply error styling
29
+ * @param options.before - Node to render before the input (e.g., icon)
30
+ * @param options.after - Node to render after the input (e.g., clear button)
31
+ * @param options.baseContainer - Use minimal "base" container styles instead of full styling
32
+ * @param options.focusableSelector - CSS selector to find the focusable element (default: 'input, select, textarea')
33
+ * @param options.growInput - Whether the input should grow to fill available space (default: true)
34
+ * @param options.size - Visual size of the control (default: 'md')
35
+ * @param children - Additional child nodes to append to the container
36
+ * @returns A div element with the input container structure
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * InputContainer({
41
+ * input: html.input(attr.type('text')),
42
+ * before: InputIcon({ icon: 'search' }),
43
+ * after: html.button('Clear'),
44
+ * hasError: prop(false),
45
+ * size: 'md'
46
+ * })
47
+ * ```
48
+ */
5
49
  export declare const InputContainer: ({ baseContainer, disabled, input, before, after, hasError, focusableSelector, growInput, size, }: {
6
50
  disabled?: Value<boolean>;
7
51
  input: TNode;
@@ -13,6 +57,27 @@ export declare const InputContainer: ({ baseContainer, disabled, input, before,
13
57
  baseContainer?: Value<boolean>;
14
58
  size?: Value<ControlSize>;
15
59
  }, ...children: TNode[]) => import("@tempots/dom").Renderable;
60
+ /**
61
+ * Renders an icon with proper styling for use within an input container.
62
+ *
63
+ * This is a convenience component that wraps the `Icon` component with
64
+ * the `bc-input-container__icon` class, which provides appropriate spacing
65
+ * and sizing when placed in the `before` or `after` slots of `InputContainer`.
66
+ *
67
+ * @param options - Icon configuration
68
+ * @param options.icon - Icon name or reactive signal
69
+ * @param options.size - Size of the icon, aligned with input size (default: 'md')
70
+ * @param options.color - Theme color for the icon (default: 'neutral')
71
+ * @returns A span element containing the styled icon
72
+ *
73
+ * @example
74
+ * ```ts
75
+ * InputContainer({
76
+ * input: html.input(),
77
+ * before: InputIcon({ icon: 'search', color: 'primary' })
78
+ * })
79
+ * ```
80
+ */
16
81
  export declare function InputIcon({ icon, size, color, }: {
17
82
  icon: Value<string>;
18
83
  size?: Value<ControlSize>;
@@ -1,16 +1,36 @@
1
1
  import { TNode, Value } from '@tempots/dom';
2
2
  import { ControlSize } from '../../theme';
3
3
  import { Merge } from '@tempots/std';
4
+ /**
5
+ * Common options shared across all input components in BeatUI.
6
+ *
7
+ * This type defines the foundational properties that every input component
8
+ * accepts, such as disabled state, size, placeholder text, and accessibility
9
+ * attributes. It serves as the base for more specific input option types.
10
+ *
11
+ * All properties accept `Value<T>`, meaning they can be either static values
12
+ * or reactive signals from Tempo's `prop()` function.
13
+ */
4
14
  export type CommonInputOptions = {
15
+ /** HTML autocomplete attribute for browser autofill suggestions */
5
16
  autocomplete?: Value<string>;
17
+ /** Whether the input should automatically receive focus when mounted */
6
18
  autofocus?: Value<boolean>;
19
+ /** Additional CSS classes to apply to the input element */
7
20
  class?: Value<string>;
21
+ /** Whether the input is disabled and cannot be interacted with */
8
22
  disabled?: Value<boolean>;
23
+ /** Whether the input has a validation error (applies error styling) */
9
24
  hasError?: Value<boolean>;
25
+ /** HTML name attribute, used for form submission */
10
26
  name?: Value<string>;
27
+ /** Placeholder text displayed when the input is empty */
11
28
  placeholder?: Value<string>;
29
+ /** Unique HTML id attribute for the input element */
12
30
  id?: Value<string>;
31
+ /** Whether the input is required for form validation */
13
32
  required?: Value<boolean>;
33
+ /** Tab index for keyboard navigation order */
14
34
  tabIndex?: Value<number>;
15
35
  /**
16
36
  * Visual size of the control, aligned with Button sizes.
@@ -18,12 +38,62 @@ export type CommonInputOptions = {
18
38
  */
19
39
  size?: Value<ControlSize>;
20
40
  };
41
+ /**
42
+ * Generic input options that extend `CommonInputOptions` with value handling.
43
+ *
44
+ * This type is used by most form input components (TextInput, NumberInput, etc.)
45
+ * to provide both common input properties and value-specific callbacks.
46
+ *
47
+ * @template V - The type of the input's value (e.g., string, number, Date)
48
+ *
49
+ * @example
50
+ * ```ts
51
+ * const options: InputOptions<string> = {
52
+ * value: prop('initial'),
53
+ * onChange: (val) => console.log('Changed:', val),
54
+ * placeholder: 'Enter text...',
55
+ * disabled: false,
56
+ * size: 'md'
57
+ * }
58
+ * ```
59
+ */
21
60
  export type InputOptions<V> = Merge<CommonInputOptions, {
61
+ /** The current value of the input (can be static or reactive signal) */
22
62
  value: Value<V>;
63
+ /** Optional node to render before the input element (e.g., icon) */
23
64
  before?: TNode;
65
+ /** Optional node to render after the input element (e.g., button) */
24
66
  after?: TNode;
67
+ /** Callback invoked when the value changes (typically on blur or enter) */
25
68
  onChange?: (value: V) => void;
69
+ /** Callback invoked on every input event (real-time changes) */
26
70
  onInput?: (value: V) => void;
71
+ /** Callback invoked when the input loses focus */
27
72
  onBlur?: () => void;
28
73
  }>;
74
+ /**
75
+ * Helper function that applies common HTML attributes to an input element.
76
+ *
77
+ * This utility converts `CommonInputOptions` into Tempo DOM attribute nodes,
78
+ * handling standard HTML attributes and ARIA attributes for accessibility.
79
+ * It's used internally by all input components to ensure consistent attribute
80
+ * application.
81
+ *
82
+ * Note: The `name` attribute falls back to `id` if not explicitly provided.
83
+ *
84
+ * @param options - Common input options to convert to attributes
85
+ * @returns A Fragment containing all applicable attribute nodes
86
+ *
87
+ * @example
88
+ * ```ts
89
+ * html.input(
90
+ * CommonInputAttributes({
91
+ * id: 'email',
92
+ * placeholder: 'Enter email',
93
+ * required: true,
94
+ * hasError: prop(false)
95
+ * })
96
+ * )
97
+ * ```
98
+ */
29
99
  export declare const CommonInputAttributes: ({ autocomplete, autofocus, class: cls, disabled, name, placeholder, id, required, tabIndex, hasError, }: CommonInputOptions) => import("@tempots/dom").Renderable<import("@tempots/dom").DOMContext>;
@@ -1,19 +1,97 @@
1
1
  import { TNode, Value } from '@tempots/dom';
2
+ /**
3
+ * A visual indicator (asterisk) appended to labels for required fields.
4
+ *
5
+ * Renders as a red asterisk (" *") with the `bc-input-wrapper__required` class.
6
+ */
2
7
  export declare const RequiredSymbol: import("@tempots/dom").Renderable;
8
+ /**
9
+ * Layout modes for the input wrapper structure.
10
+ *
11
+ * - `'vertical'` - Label above input (default)
12
+ * - `'horizontal'` - Label and input side-by-side with flexible label width
13
+ * - `'horizontal-label-right'` - Label on the right side of the input
14
+ * - `'horizontal-fixed'` - Label on the left with fixed width (use `labelWidth` option)
15
+ */
3
16
  export type InputWrapperLayout = 'vertical' | 'horizontal' | 'horizontal-label-right' | 'horizontal-fixed';
17
+ /**
18
+ * Configuration options for the `InputWrapper` component.
19
+ *
20
+ * This type defines all the options for wrapping an input with label, description,
21
+ * error message, and contextual information. It's used by form controls and
22
+ * standalone inputs to provide consistent labeling and error display.
23
+ */
4
24
  export type InputWrapperOptions = {
25
+ /** Whether the wrapper should take full width of its container */
5
26
  fullWidth?: Value<boolean>;
27
+ /** Label text or node to display above/beside the input */
6
28
  label?: TNode;
29
+ /** Additional content to render after the label (e.g., badges, tooltips) */
7
30
  labelChildren?: TNode;
31
+ /** Contextual information displayed in the header area (e.g., character count) */
8
32
  context?: TNode;
33
+ /** Helpful description text displayed below the input (or under label in horizontal layouts) */
9
34
  description?: TNode;
35
+ /** Error message to display when the input has a validation error */
10
36
  error?: TNode;
37
+ /** Whether the input is required (adds asterisk to label) */
11
38
  required?: Value<boolean>;
39
+ /** The actual input element or control to wrap */
12
40
  content: TNode;
41
+ /** ID of the input element for the label's `for` attribute */
13
42
  labelFor?: Value<string>;
43
+ /** Whether the input has a validation error (applies error styling) */
14
44
  hasError?: Value<boolean>;
45
+ /** Whether the input is disabled (applies disabled styling to label) */
15
46
  disabled?: Value<boolean>;
47
+ /** Layout mode for label and input positioning */
16
48
  layout?: Value<InputWrapperLayout>;
49
+ /** CSS width value for label in 'horizontal-fixed' layout (e.g., '120px', '10rem') */
17
50
  labelWidth?: Value<string>;
18
51
  };
52
+ /**
53
+ * Wraps an input element with label, description, error message, and accessibility attributes.
54
+ *
55
+ * This is the primary wrapper component used by all form controls in BeatUI. It provides:
56
+ * - Label with optional required indicator (asterisk)
57
+ * - Contextual information (e.g., character count)
58
+ * - Description text for additional guidance
59
+ * - Error message display with ARIA live region announcements
60
+ * - Proper accessibility attributes (aria-describedby, aria-invalid, role="alert")
61
+ * - Multiple layout modes (vertical, horizontal, horizontal-label-right, horizontal-fixed)
62
+ * - Automatic ID generation for linking label, description, and error to the input
63
+ *
64
+ * The component handles state styling (error, disabled) and ensures screen readers
65
+ * receive appropriate context through ARIA attributes.
66
+ *
67
+ * @param options - Configuration options for the wrapper
68
+ * @param options.content - The input element or control to wrap (required)
69
+ * @param options.label - Label text or node
70
+ * @param options.description - Help text displayed below the input
71
+ * @param options.error - Error message (automatically sets hasError to true)
72
+ * @param options.required - Whether to show the required asterisk
73
+ * @param options.labelFor - ID of the input element
74
+ * @param options.hasError - Whether to apply error styling
75
+ * @param options.disabled - Whether to apply disabled styling
76
+ * @param options.layout - Layout mode (default: 'vertical')
77
+ * @param options.labelWidth - Fixed width for label in 'horizontal-fixed' layout
78
+ * @param options.context - Contextual info in the header (e.g., character count)
79
+ * @param options.labelChildren - Additional content after the label
80
+ * @param options.fullWidth - Whether to take full container width
81
+ * @param children - Additional nodes to append to the wrapper
82
+ * @returns A div element with the complete input wrapper structure
83
+ *
84
+ * @example
85
+ * ```ts
86
+ * InputWrapper({
87
+ * label: 'Email',
88
+ * description: 'We will never share your email',
89
+ * required: true,
90
+ * labelFor: 'email-input',
91
+ * content: html.input(attr.type('email'), attr.id('email-input')),
92
+ * error: prop<string | undefined>(undefined),
93
+ * layout: 'vertical'
94
+ * })
95
+ * ```
96
+ */
19
97
  export declare const InputWrapper: ({ fullWidth, required, label, labelChildren, context, description, content, error, labelFor, hasError, disabled, layout, labelWidth, }: InputWrapperOptions, ...children: TNode[]) => import("@tempots/dom").Renderable;
@@ -1,3 +1,21 @@
1
1
  import { InputOptions } from './input-options';
2
2
  import { Instant } from '../../../temporal';
3
+ /**
4
+ * An input component for `Temporal.Instant` values.
5
+ *
6
+ * Renders a `datetime-local` HTML input. Converts the instant to a local
7
+ * date-time string for display and parses the input back to an `Instant`
8
+ * via ISO string conversion. Requires the Temporal polyfill.
9
+ *
10
+ * @param options - Standard input options for an `Instant` value.
11
+ * @returns A renderable instant input component.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * InstantInput({
16
+ * value: prop(Temporal.Now.instant()),
17
+ * onChange: instant => console.log('Instant:', instant.toString()),
18
+ * })
19
+ * ```
20
+ */
3
21
  export declare const InstantInput: (options: InputOptions<Instant>) => import("@tempots/dom").Renderable;
@@ -1,8 +1,21 @@
1
1
  import { Signal, Value } from '@tempots/dom';
2
2
  import { InputOptions } from './input-options';
3
3
  import { SelectOption } from './option';
4
+ /**
5
+ * Options for the {@link LazyNativeSelect} component.
6
+ * Extends standard `InputOptions` with async option loading.
7
+ *
8
+ * @typeParam T - The type of option values.
9
+ * @typeParam R - The type of the request signal that triggers loading.
10
+ */
4
11
  export type LazyNativeSelectOptions<T, R> = InputOptions<T> & {
12
+ /** A reactive signal whose changes trigger option reloading. */
5
13
  request: Signal<R>;
14
+ /**
15
+ * Async function that loads options. Receives the current request value
16
+ * and an abort signal for cancellation. Can return either `SelectOption<T>`
17
+ * objects or simplified `{ id, label }` objects.
18
+ */
6
19
  load: (options: {
7
20
  request: R;
8
21
  abortSignal: AbortSignal;
@@ -10,7 +23,37 @@ export type LazyNativeSelectOptions<T, R> = InputOptions<T> & {
10
23
  id: T;
11
24
  label: string;
12
25
  })[]>;
26
+ /** Label for the initial unselected/placeholder option. */
13
27
  unselectedLabel?: Value<string>;
28
+ /**
29
+ * Custom equality function for comparing option values.
30
+ * @default (a, b) => a === b
31
+ */
14
32
  equality?: (a: T, b: T) => boolean;
15
33
  };
34
+ /**
35
+ * A native select input that loads its options asynchronously.
36
+ *
37
+ * Shows a loading spinner while options are being fetched, then renders a
38
+ * standard {@link NativeSelect} once loaded. Options are reloaded whenever
39
+ * the `request` signal changes.
40
+ *
41
+ * @typeParam T - The type of option values.
42
+ * @typeParam R - The type of the request signal that triggers loading.
43
+ * @param options - Configuration options for the lazy native select.
44
+ * @returns A renderable lazy native select component.
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * LazyNativeSelect({
49
+ * value: prop<string>(''),
50
+ * request: prop({ search: '' }),
51
+ * load: async ({ request, abortSignal }) => {
52
+ * const response = await fetch(`/api/options?q=${request.search}`, { signal: abortSignal })
53
+ * return response.json()
54
+ * },
55
+ * onChange: value => console.log('Selected:', value),
56
+ * })
57
+ * ```
58
+ */
16
59
  export declare const LazyNativeSelect: <T, R>(options: LazyNativeSelectOptions<T, R>) => import("@tempots/dom").Renderable;
@@ -1,14 +1,64 @@
1
1
  import { ElementPosition, Signal, TNode } from '@tempots/dom';
2
2
  import { ArrayController, Controller } from '../controller/controller';
3
+ /**
4
+ * Payload passed to the element render function of a {@link ListInput}.
5
+ * Provides the controller, item data, position information, and
6
+ * actions for removing and reordering items.
7
+ *
8
+ * @typeParam T - The type of individual list items.
9
+ */
3
10
  export type ListInputPayload<T> = {
11
+ /** The array controller managing the entire list. */
4
12
  list: ArrayController<T[]>;
13
+ /** The controller for this specific item. */
5
14
  item: Controller<T>;
15
+ /** The element's position information (index, isFirst, isLast, etc.). */
6
16
  position: ElementPosition;
17
+ /** Removes this item from the list. */
7
18
  remove: () => void;
19
+ /** Moves this item in the specified direction. */
8
20
  move: (direction: MoveDirection) => void;
21
+ /** Returns a reactive signal indicating whether the item can be moved in the given direction. */
9
22
  canMove: (direction: MovableDirection) => Signal<boolean>;
23
+ /** Returns a reactive signal indicating whether the item cannot be moved in the given direction. */
10
24
  cannotMove: (direction: MovableDirection) => Signal<boolean>;
11
25
  };
26
+ /**
27
+ * Direction in which a list item can be moved.
28
+ */
12
29
  export type MoveDirection = 'up' | 'down' | 'first' | 'last';
30
+ /**
31
+ * Directions that can be checked for movability (only up and down, since
32
+ * first/last are always possible when movement in that direction is possible).
33
+ */
13
34
  export type MovableDirection = 'up' | 'down';
35
+ /**
36
+ * A dynamic list input component that renders a repeating set of items from an
37
+ * array controller. Each item receives a payload with actions for removal and
38
+ * reordering (move up, down, first, last).
39
+ *
40
+ * @typeParam T - The type of individual list items.
41
+ * @param controller - The array controller managing the list state.
42
+ * @param element - Render function called for each list item. Receives a
43
+ * {@link ListInputPayload} with the item controller and action callbacks.
44
+ * @param separator - Optional render function for separators between items.
45
+ * @returns A renderable list of items with management actions.
46
+ *
47
+ * @example
48
+ * ```ts
49
+ * ListInput(
50
+ * myArrayController,
51
+ * ({ item, remove, move, canMove }) =>
52
+ * html.div(
53
+ * TextInput({ value: item.signal, onChange: item.set }),
54
+ * html.button(on.click(remove), 'Remove'),
55
+ * html.button(
56
+ * attr.disabled(canMove('up').map(v => !v)),
57
+ * on.click(() => move('up')),
58
+ * 'Move Up'
59
+ * ),
60
+ * )
61
+ * )
62
+ * ```
63
+ */
14
64
  export declare function ListInput<T>(controller: ArrayController<T[]>, element: (payload: ListInputPayload<T>) => TNode, separator?: (pos: ElementPosition) => TNode): import("@tempots/dom").Renderable<import("@tempots/dom").DOMContext>;