@tempots/beatui 0.82.1 → 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 (462) hide show
  1. package/dist/ar-CBrjAlIY.cjs +1 -0
  2. package/dist/ar-DjMvIww5.js +175 -0
  3. package/dist/{ar-NCCPhOpI.js → ar-DwDxAANU.js} +16 -1
  4. package/dist/ar-kZBzg02I.cjs +1 -0
  5. package/dist/auth/index.cjs.js +1 -1
  6. package/dist/auth/index.es.js +33 -32
  7. package/dist/{auth-divider-Wr-S16kF.js → auth-divider-C3_CgC0l.js} +589 -569
  8. package/dist/auth-divider-C4WTL71M.cjs +1 -0
  9. package/dist/beatui.css +5678 -1438
  10. package/dist/beatui.tailwind.css +5662 -1422
  11. package/dist/better-auth/index.cjs.js +1 -1
  12. package/dist/better-auth/index.es.js +18 -31
  13. package/dist/{colors-B2yrgHSW.cjs → colors-BI0YhONJ.cjs} +1 -1
  14. package/dist/{colors-DPo9GEJR.js → colors-BmLYKmoH.js} +38 -30
  15. package/dist/de-B03SM9eF.cjs +1 -0
  16. package/dist/{de-BVK2MkCk.js → de-CSGSC0xX.js} +18 -3
  17. package/dist/de-CrBw41po.cjs +1 -0
  18. package/dist/{de-f2xcEb34.js → de-wChFYqM4.js} +79 -5
  19. package/dist/deep-merge-CmQoIYPC.js +1689 -0
  20. package/dist/deep-merge-UghuPcyW.cjs +1 -0
  21. package/dist/{duration-input-B9UNmUCh.cjs → duration-input-BJzKgI15.cjs} +1 -1
  22. package/dist/{duration-input-DqcJbxKD.js → duration-input-DaB6s0rL.js} +4 -4
  23. package/dist/editor-toolbar-group-BslfdazC.js +32 -0
  24. package/dist/editor-toolbar-group-_V1rDM-1.cjs +1 -0
  25. package/dist/{es-BxBeTRCv.cjs → es-BRa0hV-7.cjs} +1 -1
  26. package/dist/es-Ca5xT3NE.cjs +1 -0
  27. package/dist/es-CmPF3IGl.js +175 -0
  28. package/dist/{es-BQS8PL9j.js → es-dR46FTMF.js} +16 -1
  29. package/dist/{fa-DxPseW3g.cjs → fa-BxCSKn9j.cjs} +1 -1
  30. package/dist/fa-D696e75R.js +175 -0
  31. package/dist/fa-DhZJYuC6.cjs +1 -0
  32. package/dist/{fa-T-tkJSJr.js → fa-FsHBFjdY.js} +16 -1
  33. package/dist/fr-1nSKSIlw.cjs +1 -0
  34. package/dist/{fr-yOW_68YY.js → fr-B0jeX1Hx.js} +83 -9
  35. package/dist/{fr-CSRRhyCG.js → fr-Di6BT9_V.js} +18 -3
  36. package/dist/fr-Dq6RAY9s.cjs +1 -0
  37. package/dist/he-BBX1h9uD.cjs +1 -0
  38. package/dist/{he-Bxdc4M08.js → he-CXujw1Lw.js} +16 -1
  39. package/dist/he-DhcurPt5.cjs +1 -0
  40. package/dist/he-SgAsIYJA.js +175 -0
  41. package/dist/{hi-CJeFvTBe.js → hi-Bvh4d9bO.js} +16 -1
  42. package/dist/hi-Cd0YQZTU.cjs +1 -0
  43. package/dist/hi-CxsIxbfM.cjs +1 -0
  44. package/dist/hi-s9oiIihq.js +175 -0
  45. package/dist/{index-Bt7FYl80.cjs → index-Bm43lZqE.cjs} +2 -2
  46. package/dist/{index-05UbKOYe.cjs → index-C2_iX1um.cjs} +1 -1
  47. package/dist/{index-C2Lq1m45.js → index-C32iUFIr.js} +5 -5
  48. package/dist/{index-lYhXnu6I.js → index-CEqc0H3v.js} +1 -1
  49. package/dist/index-DH37GTQj.cjs +1 -0
  50. package/dist/{index-DklKfzD4.js → index-Di1_W_7Q.js} +351 -361
  51. package/dist/index.cjs.js +4 -4
  52. package/dist/index.es.js +6220 -3084
  53. package/dist/input-container-CSi72GI1.cjs +1 -0
  54. package/dist/{input-container-DiCjOzR2.js → input-container-Nx0gMAzS.js} +86 -75
  55. package/dist/it-ByIEk5Cq.cjs +1 -0
  56. package/dist/it-D_IcaYxp.cjs +1 -0
  57. package/dist/{it-6e6X-4BB.js → it-Dc4IMciD.js} +80 -6
  58. package/dist/{it-Zmp0BhIj.js → it-EWhykhHv.js} +18 -3
  59. package/dist/ja-CMGqpPo7.cjs +1 -0
  60. package/dist/{ja-BxNuNo2H.js → ja-D2t2g5xj.js} +85 -11
  61. package/dist/ja-DV6Fpp18.cjs +1 -0
  62. package/dist/{ja-DWjoA-hQ.js → ja-YZ0P5woj.js} +16 -1
  63. package/dist/json-schema/index.cjs.js +1 -1
  64. package/dist/json-schema/index.es.js +191 -185
  65. package/dist/json-schema-display/index.cjs.js +1 -1
  66. package/dist/json-schema-display/index.es.js +1 -1
  67. package/dist/json-structure/index.cjs.js +1 -1
  68. package/dist/json-structure/index.es.js +679 -660
  69. package/dist/ko-BPl5rP97.cjs +1 -0
  70. package/dist/ko-BRylA5JZ.js +175 -0
  71. package/dist/ko-DR1f0as8.cjs +1 -0
  72. package/dist/{ko-BOlI-33h.js → ko-U7BSUAxZ.js} +16 -1
  73. package/dist/lexical/index.cjs.js +31 -31
  74. package/dist/lexical/index.es.js +5248 -5221
  75. package/dist/lexical.css +5 -7
  76. package/dist/menu-CX72LaZ3.cjs +1 -0
  77. package/dist/menu-D_slbwl8.js +374 -0
  78. package/dist/{modal-v3u2Fpnd.js → modal-DaI1jH-X.js} +4 -4
  79. package/dist/{modal-I5srcntN.cjs → modal-kyZfvVZb.cjs} +1 -1
  80. package/dist/nl-BSfaHFt0.cjs +1 -0
  81. package/dist/{nl-Dr-l6zUy.cjs → nl-CQF0N7Mc.cjs} +1 -1
  82. package/dist/{nl-kQNcAdY1.js → nl-CqAxoB4J.js} +18 -3
  83. package/dist/nl-Dh7LUWAn.js +176 -0
  84. package/dist/{notice-CLDdy1MW.cjs → notice-Bc1L4Zpr.cjs} +1 -1
  85. package/dist/{notice-BuZvdvZh.js → notice-Dz4nX57_.js} +4 -4
  86. package/dist/{oneof-branch-detection-Dt8ss9lc.js → oneof-branch-detection-BED_n2MT.js} +522 -519
  87. package/dist/{oneof-branch-detection-DsM1K5xc.cjs → oneof-branch-detection-Vov_e3kI.cjs} +4 -4
  88. package/dist/{pl-CKyPFvss.js → pl-C-weXGCB.js} +16 -1
  89. package/dist/pl-D-O4sCnr.cjs +1 -0
  90. package/dist/{pl-Bs4nLJ__.js → pl-XEG-p1Q9.js} +77 -3
  91. package/dist/{pl-BK0i_yvq.cjs → pl-y_w3DWF3.cjs} +1 -1
  92. package/dist/prosemirror/index.cjs.js +1 -1
  93. package/dist/prosemirror/index.es.js +1 -1
  94. package/dist/{pt-DBmUhaNI.js → pt-BjNGOoZH.js} +18 -3
  95. package/dist/pt-DYsDA2sZ.js +175 -0
  96. package/dist/pt-DqaZWmbG.cjs +1 -0
  97. package/dist/pt-chEEYLlt.cjs +1 -0
  98. package/dist/ru-B46hVpFF.cjs +1 -0
  99. package/dist/{ru-Bi1_DEKM.js → ru-BTKBykp-.js} +86 -12
  100. package/dist/{ru-CsJ_yT-7.js → ru-CFmeZBXK.js} +16 -1
  101. package/dist/ru-CISMzCHR.cjs +1 -0
  102. package/dist/{styles-url-B2dzXrYt.cjs → styles-url-CVCcF0ra.cjs} +1 -1
  103. package/dist/{styles-url-Cw_mxshe.js → styles-url-DUdp56Ts.js} +1 -1
  104. package/dist/tailwind/index.cjs.js +1 -1
  105. package/dist/tailwind/index.es.js +3 -3
  106. package/dist/tailwind/preset.cjs.js +1 -1
  107. package/dist/tailwind/preset.es.js +74 -4
  108. package/dist/tailwind/vite-plugin.cjs.js +10 -10
  109. package/dist/tailwind/vite-plugin.es.js +289 -410
  110. package/dist/text-input-8v79fzEy.cjs +1 -0
  111. package/dist/text-input-CPJzUC2r.js +45 -0
  112. package/dist/{toolbar-D994_E_s.js → toolbar-CjQG7l7X.js} +1 -1
  113. package/dist/{toolbar-x0_8lmKu.cjs → toolbar-D3ZsC0g_.cjs} +1 -1
  114. package/dist/{tr-Bn5ldVJs.js → tr-C5X2gFZS.js} +17 -2
  115. package/dist/tr-CaMaflJL.cjs +1 -0
  116. package/dist/{tr-DiYB-FwX.js → tr-Cp8ZCUic.js} +77 -3
  117. package/dist/{tr-CgJ8uhZu.cjs → tr-mWu2E__o.cjs} +1 -1
  118. package/dist/{translations-Cq8bUKJP.js → translations-BGblCUBj.js} +144 -70
  119. package/dist/translations-CZ0KOii3.cjs +1 -0
  120. package/dist/translations-gVgMyNno.cjs +1 -0
  121. package/dist/translations-jUYta1_1.js +87 -0
  122. package/dist/types/auth/index.d.ts +13 -0
  123. package/dist/types/auth-i18n/default.d.ts +14 -0
  124. package/dist/types/auth-i18n/locales/ar.d.ts +14 -0
  125. package/dist/types/auth-i18n/locales/de.d.ts +14 -0
  126. package/dist/types/auth-i18n/locales/en.d.ts +14 -0
  127. package/dist/types/auth-i18n/locales/es.d.ts +14 -0
  128. package/dist/types/auth-i18n/locales/fa.d.ts +14 -0
  129. package/dist/types/auth-i18n/locales/fr.d.ts +14 -0
  130. package/dist/types/auth-i18n/locales/he.d.ts +14 -0
  131. package/dist/types/auth-i18n/locales/hi.d.ts +14 -0
  132. package/dist/types/auth-i18n/locales/it.d.ts +14 -0
  133. package/dist/types/auth-i18n/locales/ja.d.ts +14 -0
  134. package/dist/types/auth-i18n/locales/ko.d.ts +14 -0
  135. package/dist/types/auth-i18n/locales/nl.d.ts +14 -0
  136. package/dist/types/auth-i18n/locales/pl.d.ts +14 -0
  137. package/dist/types/auth-i18n/locales/pt.d.ts +14 -0
  138. package/dist/types/auth-i18n/locales/ru.d.ts +14 -0
  139. package/dist/types/auth-i18n/locales/tr.d.ts +14 -0
  140. package/dist/types/auth-i18n/locales/ur.d.ts +14 -0
  141. package/dist/types/auth-i18n/locales/vi.d.ts +14 -0
  142. package/dist/types/auth-i18n/locales/zh.d.ts +14 -0
  143. package/dist/types/auth-i18n/translations.d.ts +14 -0
  144. package/dist/types/beatui-i18n/default.d.ts +99 -0
  145. package/dist/types/beatui-i18n/index.d.ts +11 -0
  146. package/dist/types/beatui-i18n/locales/en.d.ts +63 -0
  147. package/dist/types/beatui-i18n/translations.d.ts +87 -0
  148. package/dist/types/better-auth/components/authenticated.d.ts +2 -2
  149. package/dist/types/better-auth/components/better-auth-container.d.ts +1 -1
  150. package/dist/types/better-auth/components/better-auth-modal.d.ts +1 -1
  151. package/dist/types/better-auth/index.d.ts +13 -0
  152. package/dist/types/better-auth/provider.d.ts +33 -0
  153. package/dist/types/better-auth/types.d.ts +112 -0
  154. package/dist/types/components/auth/auth-container.d.ts +63 -2
  155. package/dist/types/components/auth/auth-divider.d.ts +30 -0
  156. package/dist/types/components/auth/auth-email-prop.d.ts +25 -0
  157. package/dist/types/components/auth/index.d.ts +9 -0
  158. package/dist/types/components/auth/password-strength-indicator.d.ts +58 -0
  159. package/dist/types/components/auth/reset-password-form.d.ts +33 -0
  160. package/dist/types/components/auth/schemas.d.ts +183 -5
  161. package/dist/types/components/auth/signin-form.d.ts +33 -0
  162. package/dist/types/components/auth/signup-form.d.ts +36 -0
  163. package/dist/types/components/auth/social-login-button.d.ts +213 -0
  164. package/dist/types/components/auth/social-providers.d.ts +27 -1
  165. package/dist/types/components/auth/types.d.ts +299 -0
  166. package/dist/types/components/auth/utils.d.ts +198 -0
  167. package/dist/types/components/beatui.d.ts +35 -0
  168. package/dist/types/components/button/button.d.ts +61 -0
  169. package/dist/types/components/button/close-button.d.ts +32 -1
  170. package/dist/types/components/button/index.d.ts +2 -0
  171. package/dist/types/components/button/toggle-button-group.d.ts +95 -0
  172. package/dist/types/components/button/toggle-button.d.ts +60 -0
  173. package/dist/types/components/data/avatar-group.d.ts +74 -0
  174. package/dist/types/components/data/avatar.d.ts +62 -0
  175. package/dist/types/components/data/badge.d.ts +49 -2
  176. package/dist/types/components/data/calendar-shared.d.ts +59 -0
  177. package/dist/types/components/data/calendar.d.ts +107 -0
  178. package/dist/types/components/data/history-timeline.d.ts +35 -0
  179. package/dist/types/components/data/icon-badge.d.ts +14 -0
  180. package/dist/types/components/data/icon.d.ts +55 -4
  181. package/dist/types/components/data/index.d.ts +9 -0
  182. package/dist/types/components/data/page-drop-zone.d.ts +61 -8
  183. package/dist/types/components/data/presence-overlay.d.ts +26 -0
  184. package/dist/types/components/data/progress-bar.d.ts +81 -0
  185. package/dist/types/components/data/range-calendar.d.ts +104 -0
  186. package/dist/types/components/data/skeleton.d.ts +70 -0
  187. package/dist/types/components/data/table.d.ts +38 -11
  188. package/dist/types/components/data/tag.d.ts +40 -0
  189. package/dist/types/components/data/unstyled-drop-zone.d.ts +73 -0
  190. package/dist/types/components/form/control/control.d.ts +155 -0
  191. package/dist/types/components/form/control/date-utils.d.ts +81 -0
  192. package/dist/types/components/form/control/ensure-control.d.ts +28 -0
  193. package/dist/types/components/form/control/form-status.d.ts +63 -0
  194. package/dist/types/components/form/control/index.d.ts +10 -0
  195. package/dist/types/components/form/control/list-control.d.ts +100 -1
  196. package/dist/types/components/form/control/list-item-controls.d.ts +65 -0
  197. package/dist/types/components/form/controller/color-controller.d.ts +29 -1
  198. package/dist/types/components/form/controller/controller-validation.d.ts +31 -0
  199. package/dist/types/components/form/controller/controller.d.ts +286 -0
  200. package/dist/types/components/form/controller/index.d.ts +12 -0
  201. package/dist/types/components/form/controller/path.d.ts +69 -0
  202. package/dist/types/components/form/controller/union-controller.d.ts +106 -11
  203. package/dist/types/components/form/controller/utils.d.ts +67 -0
  204. package/dist/types/components/form/input/advanced-slider.d.ts +143 -0
  205. package/dist/types/components/form/input/appearance-selector.d.ts +39 -0
  206. package/dist/types/components/form/input/base64-input.d.ts +34 -0
  207. package/dist/types/components/form/input/base64s-input.d.ts +47 -0
  208. package/dist/types/components/form/input/bigint-input.d.ts +27 -0
  209. package/dist/types/components/form/input/checkbox-input.d.ts +46 -0
  210. package/dist/types/components/form/input/color-input.d.ts +42 -0
  211. package/dist/types/components/form/input/color-swatch-input.d.ts +53 -0
  212. package/dist/types/components/form/input/combobox-input.d.ts +73 -0
  213. package/dist/types/components/form/input/combobox-tags-input.d.ts +54 -0
  214. package/dist/types/components/form/input/date-input.d.ts +33 -0
  215. package/dist/types/components/form/input/date-time-input.d.ts +34 -0
  216. package/dist/types/components/form/input/dropdown-base.d.ts +52 -0
  217. package/dist/types/components/form/input/dropdown-input.d.ts +86 -0
  218. package/dist/types/components/form/input/duration-input.d.ts +18 -0
  219. package/dist/types/components/form/input/duration-mask.d.ts +24 -0
  220. package/dist/types/components/form/input/editable-text.d.ts +33 -0
  221. package/dist/types/components/form/input/email-input.d.ts +34 -0
  222. package/dist/types/components/form/input/file-input.d.ts +33 -0
  223. package/dist/types/components/form/input/files-input.d.ts +44 -0
  224. package/dist/types/components/form/input/index.d.ts +5 -0
  225. package/dist/types/components/form/input/input-adornment.d.ts +38 -0
  226. package/dist/types/components/form/input/input-container.d.ts +65 -0
  227. package/dist/types/components/form/input/input-options.d.ts +70 -0
  228. package/dist/types/components/form/input/input-wrapper.d.ts +78 -0
  229. package/dist/types/components/form/input/instant-input.d.ts +18 -0
  230. package/dist/types/components/form/input/lazy-native-select.d.ts +43 -0
  231. package/dist/types/components/form/input/list-input.d.ts +50 -0
  232. package/dist/types/components/form/input/mask-input.d.ts +158 -0
  233. package/dist/types/components/form/input/native-select.d.ts +50 -0
  234. package/dist/types/components/form/input/nullable-base64-input.d.ts +25 -0
  235. package/dist/types/components/form/input/nullable-bigint-input.d.ts +26 -0
  236. package/dist/types/components/form/input/nullable-date-input.d.ts +18 -0
  237. package/dist/types/components/form/input/nullable-date-time-input.d.ts +19 -0
  238. package/dist/types/components/form/input/nullable-duration-input.d.ts +19 -0
  239. package/dist/types/components/form/input/nullable-email-input.d.ts +18 -0
  240. package/dist/types/components/form/input/nullable-instant-input.d.ts +19 -0
  241. package/dist/types/components/form/input/nullable-mask-input.d.ts +24 -0
  242. package/dist/types/components/form/input/nullable-number-input.d.ts +29 -0
  243. package/dist/types/components/form/input/nullable-password-input.d.ts +18 -0
  244. package/dist/types/components/form/input/nullable-plain-date-input.d.ts +18 -0
  245. package/dist/types/components/form/input/nullable-plain-date-time-input.d.ts +18 -0
  246. package/dist/types/components/form/input/nullable-plain-month-day-input.d.ts +18 -0
  247. package/dist/types/components/form/input/nullable-plain-time-input.d.ts +18 -0
  248. package/dist/types/components/form/input/nullable-plain-year-month-input.d.ts +18 -0
  249. package/dist/types/components/form/input/nullable-rating-input.d.ts +33 -0
  250. package/dist/types/components/form/input/nullable-text-area.d.ts +27 -0
  251. package/dist/types/components/form/input/nullable-text-input.d.ts +18 -0
  252. package/dist/types/components/form/input/nullable-url-input.d.ts +18 -0
  253. package/dist/types/components/form/input/nullable-utils.d.ts +22 -2
  254. package/dist/types/components/form/input/nullable-uuid-input.d.ts +18 -0
  255. package/dist/types/components/form/input/nullable-zoned-date-time-input.d.ts +20 -0
  256. package/dist/types/components/form/input/number-input.d.ts +49 -0
  257. package/dist/types/components/form/input/option.d.ts +165 -0
  258. package/dist/types/components/form/input/otp-input.d.ts +77 -0
  259. package/dist/types/components/form/input/password-input.d.ts +39 -0
  260. package/dist/types/components/form/input/plain-date-input.d.ts +17 -0
  261. package/dist/types/components/form/input/plain-date-time-input.d.ts +17 -0
  262. package/dist/types/components/form/input/plain-month-day-input.d.ts +18 -0
  263. package/dist/types/components/form/input/plain-time-input.d.ts +17 -0
  264. package/dist/types/components/form/input/plain-year-month-input.d.ts +17 -0
  265. package/dist/types/components/form/input/radio-group.d.ts +108 -0
  266. package/dist/types/components/form/input/rating-input.d.ts +57 -0
  267. package/dist/types/components/form/input/segmented-input.d.ts +70 -1
  268. package/dist/types/components/form/input/select-tags-input.d.ts +69 -0
  269. package/dist/types/components/form/input/slider-input.d.ts +82 -0
  270. package/dist/types/components/form/input/switch.d.ts +59 -1
  271. package/dist/types/components/form/input/tag-input.d.ts +19 -0
  272. package/dist/types/components/form/input/tag-utils.d.ts +111 -0
  273. package/dist/types/components/form/input/tags-input.d.ts +18 -0
  274. package/dist/types/components/form/input/text-area.d.ts +42 -0
  275. package/dist/types/components/form/input/text-input.d.ts +63 -1
  276. package/dist/types/components/form/input/url-input.d.ts +34 -0
  277. package/dist/types/components/form/input/uuid-input.d.ts +19 -0
  278. package/dist/types/components/form/input/zoned-date-time-input.d.ts +20 -0
  279. package/dist/types/components/form/schema/standard-schema-v1.d.ts +98 -23
  280. package/dist/types/components/form/use-form.d.ts +146 -2
  281. package/dist/types/components/i18n/index.d.ts +9 -0
  282. package/dist/types/components/i18n/locale-direction.d.ts +21 -1
  283. package/dist/types/components/i18n/locale-selector.d.ts +45 -0
  284. package/dist/types/components/i18n/make-i18nprovider.d.ts +42 -0
  285. package/dist/types/components/json-schema/schema-types.d.ts +133 -0
  286. package/dist/types/components/json-structure/controls/deprecation-utils.d.ts +2 -3
  287. package/dist/types/components/json-structure/structure-types.d.ts +473 -19
  288. package/dist/types/components/layout/accordion.d.ts +77 -0
  289. package/dist/types/components/layout/action-card.d.ts +90 -2
  290. package/dist/types/components/layout/app-shell.d.ts +76 -0
  291. package/dist/types/components/layout/card.d.ts +27 -0
  292. package/dist/types/components/layout/center.d.ts +39 -0
  293. package/dist/types/components/layout/collapse.d.ts +28 -0
  294. package/dist/types/components/layout/divider.d.ts +84 -0
  295. package/dist/types/components/layout/group.d.ts +15 -0
  296. package/dist/types/components/layout/index.d.ts +2 -0
  297. package/dist/types/components/layout/nine-slice-scroll-view.d.ts +105 -0
  298. package/dist/types/components/layout/scrollable-panel.d.ts +54 -0
  299. package/dist/types/components/layout/sink.d.ts +46 -0
  300. package/dist/types/components/layout/stack.d.ts +16 -0
  301. package/dist/types/components/layout/with-breakpoint.d.ts +194 -0
  302. package/dist/types/components/lexical/code/language-selector.d.ts +2 -2
  303. package/dist/types/components/lexical/floating/block-handle.d.ts +2 -2
  304. package/dist/types/components/lexical/floating/floating-toolbar.d.ts +2 -2
  305. package/dist/types/components/lexical/floating/slash-command-palette.d.ts +2 -2
  306. package/dist/types/components/lexical/table/table-controls.d.ts +2 -2
  307. package/dist/types/components/lexical/toolbar/lexical-toolbar.d.ts +2 -2
  308. package/dist/types/components/lexical/toolbar/toolbar-helpers.d.ts +4 -2
  309. package/dist/types/components/misc/empty-state.d.ts +86 -0
  310. package/dist/types/components/misc/expando.d.ts +81 -0
  311. package/dist/types/components/misc/index.d.ts +2 -1
  312. package/dist/types/components/misc/link-portal.d.ts +40 -2
  313. package/dist/types/components/misc/notice.d.ts +93 -0
  314. package/dist/types/components/misc/notification-panel.d.ts +21 -0
  315. package/dist/types/components/misc/notification-provider.d.ts +141 -0
  316. package/dist/types/components/misc/notification.d.ts +93 -0
  317. package/dist/types/components/misc/style-portal.d.ts +31 -1
  318. package/dist/types/components/monaco/monaco-editor-input.d.ts +59 -2
  319. package/dist/types/components/navigation/breadcrumbs.d.ts +96 -0
  320. package/dist/types/components/navigation/flyout.d.ts +118 -16
  321. package/dist/types/components/navigation/index.d.ts +3 -0
  322. package/dist/types/components/navigation/link/link.d.ts +100 -0
  323. package/dist/types/components/navigation/menu.d.ts +155 -35
  324. package/dist/types/components/navigation/pagination.d.ts +82 -0
  325. package/dist/types/components/navigation/sidebar/sidebar-group.d.ts +42 -0
  326. package/dist/types/components/navigation/sidebar/sidebar-link.d.ts +101 -0
  327. package/dist/types/components/navigation/sidebar/sidebar-separator.d.ts +17 -0
  328. package/dist/types/components/navigation/sidebar/sidebar.d.ts +57 -0
  329. package/dist/types/components/navigation/tabs/tabs.d.ts +3 -2
  330. package/dist/types/components/navigation/toolbar/toolbar.d.ts +125 -0
  331. package/dist/types/components/navigation/tree-view.d.ts +95 -0
  332. package/dist/types/components/overlay/announcement-bar.d.ts +41 -2
  333. package/dist/types/components/overlay/block-command-palette.d.ts +25 -0
  334. package/dist/types/components/overlay/command-palette.d.ts +17 -0
  335. package/dist/types/components/overlay/dialogs.d.ts +213 -0
  336. package/dist/types/components/overlay/drawer.d.ts +76 -12
  337. package/dist/types/components/overlay/index.d.ts +4 -0
  338. package/dist/types/components/overlay/lightbox.d.ts +53 -10
  339. package/dist/types/components/overlay/modal.d.ts +113 -13
  340. package/dist/types/components/overlay/overlay.d.ts +61 -0
  341. package/dist/types/components/overlay/popover.d.ts +100 -0
  342. package/dist/types/components/overlay/ribbon.d.ts +58 -9
  343. package/dist/types/components/prosemirror/etoolbar-button.d.ts +10 -0
  344. package/dist/types/components/prosemirror/etoolbar-group.d.ts +10 -0
  345. package/dist/types/components/prosemirror/link-control.d.ts +43 -2
  346. package/dist/types/components/prosemirror/prosemirror-toolbar.d.ts +46 -6
  347. package/dist/types/components/prosemirror/utils.d.ts +113 -1
  348. package/dist/types/components/theme/style-utils.d.ts +95 -0
  349. package/dist/types/components/theme/theme.d.ts +39 -0
  350. package/dist/types/components/theme/types.d.ts +133 -1
  351. package/dist/types/components/typography/index.d.ts +1 -0
  352. package/dist/types/components/typography/kbd.d.ts +48 -0
  353. package/dist/types/components/typography/label.d.ts +45 -0
  354. package/dist/types/index.d.ts +14 -0
  355. package/dist/types/json-schema/index.d.ts +13 -0
  356. package/dist/types/json-schema-display/index.d.ts +12 -0
  357. package/dist/types/json-structure/index.d.ts +9 -4
  358. package/dist/types/markdown/index.d.ts +13 -0
  359. package/dist/types/monaco/index.d.ts +17 -0
  360. package/dist/types/monaco/lazy-loader.d.ts +79 -0
  361. package/dist/types/monaco/styles-url.d.ts +11 -0
  362. package/dist/types/monaco/styles.d.ts +11 -0
  363. package/dist/types/monaco/types.d.ts +47 -0
  364. package/dist/types/prosemirror/index.d.ts +12 -0
  365. package/dist/types/prosemirror/styles-url.d.ts +11 -0
  366. package/dist/types/prosemirror/styles.d.ts +10 -0
  367. package/dist/types/tailwind/google-fonts.d.ts +15 -0
  368. package/dist/types/tailwind/index.d.ts +13 -0
  369. package/dist/types/tailwind/preset.d.ts +111 -0
  370. package/dist/types/tailwind/vite-plugin.d.ts +39 -4
  371. package/dist/types/tokens/base-colors.d.ts +21 -0
  372. package/dist/types/tokens/breakpoints.d.ts +67 -0
  373. package/dist/types/tokens/colors.d.ts +213 -4
  374. package/dist/types/tokens/motion.d.ts +142 -3
  375. package/dist/types/tokens/radius.d.ts +99 -0
  376. package/dist/types/tokens/shadows.d.ts +85 -0
  377. package/dist/types/tokens/spacing.d.ts +111 -0
  378. package/dist/types/tokens/text-shadows.d.ts +82 -0
  379. package/dist/types/tokens/typography.d.ts +313 -25
  380. package/dist/types/tokens/z-index.d.ts +62 -0
  381. package/dist/types/utils/color.d.ts +297 -28
  382. package/dist/types/utils/download.d.ts +92 -0
  383. package/dist/types/utils/focus-trap.d.ts +67 -11
  384. package/dist/types/utils/format-file-size.d.ts +44 -0
  385. package/dist/ur-B6yB2JQ7.cjs +1 -0
  386. package/dist/ur-CvGP14xo.cjs +1 -0
  387. package/dist/{ur-Bg9eX81v.js → ur-Deo004ME.js} +16 -1
  388. package/dist/{ur-B69X-xNs.js → ur-DkIYJxsF.js} +82 -8
  389. package/dist/use-animated-toggle-89fKlXxy.js +195 -0
  390. package/dist/use-animated-toggle-DrqK7nUS.cjs +1 -0
  391. package/dist/{use-form-B56E_x5Y.js → use-form-BurzbPVV.js} +190 -2
  392. package/dist/{use-form-Cnp3XQ5X.cjs → use-form-Uree6QFy.cjs} +1 -1
  393. package/dist/vi-BYk1rJDv.js +53 -0
  394. package/dist/vi-DKw6PBja.js +175 -0
  395. package/dist/vi-Df4WZe9y.cjs +1 -0
  396. package/dist/vi-DneuUbkq.cjs +1 -0
  397. package/dist/{widget-customization-Ds9sicAg.js → widget-customization-0is7oTeP.js} +205 -204
  398. package/dist/widget-customization-B-LmxkPE.cjs +1 -0
  399. package/dist/zh-C5a9NGFW.cjs +1 -0
  400. package/dist/zh-CaKHseXJ.js +175 -0
  401. package/dist/zh-DFHuW_5g.cjs +1 -0
  402. package/dist/{zh-BIykcEu9.js → zh-DR7QaM65.js} +16 -1
  403. package/package.json +1 -1
  404. package/dist/ar-BsUm-TCn.cjs +0 -1
  405. package/dist/ar-D7CXDmVZ.cjs +0 -1
  406. package/dist/ar-nOSKXpIW.js +0 -101
  407. package/dist/auth-divider-BqZPH1-z.cjs +0 -1
  408. package/dist/de-BUFLEyKr.cjs +0 -1
  409. package/dist/de-WzsOu9Gn.cjs +0 -1
  410. package/dist/deep-merge-BYm0y62g.js +0 -1620
  411. package/dist/deep-merge-d7sf0xmN.cjs +0 -1
  412. package/dist/editor-toolbar-group--a-xgsJw.cjs +0 -1
  413. package/dist/editor-toolbar-group-CVpl5mxF.js +0 -31
  414. package/dist/es-CDqqzpCw.js +0 -101
  415. package/dist/es-Ds2Xf3wV.cjs +0 -1
  416. package/dist/fa-C7tE_hR3.js +0 -101
  417. package/dist/fa-Ct1UtDB7.cjs +0 -1
  418. package/dist/fr-Cdyopuz3.cjs +0 -1
  419. package/dist/fr-CzAkRFed.cjs +0 -1
  420. package/dist/he-D2oUloCJ.js +0 -101
  421. package/dist/he-DarDNPn0.cjs +0 -1
  422. package/dist/he-DlXALrK7.cjs +0 -1
  423. package/dist/hi-3dBhLwDs.cjs +0 -1
  424. package/dist/hi-D5ZlZoQq.js +0 -101
  425. package/dist/hi-tATwsXJ6.cjs +0 -1
  426. package/dist/index-DE2tjivA.cjs +0 -1
  427. package/dist/input-container-C6qEIjcA.cjs +0 -1
  428. package/dist/it-BmFag7j0.cjs +0 -1
  429. package/dist/it-DohtcWi9.cjs +0 -1
  430. package/dist/ja-Dj-bAKLf.cjs +0 -1
  431. package/dist/ja-eyTArrgS.cjs +0 -1
  432. package/dist/ko-BFLCDMMs.cjs +0 -1
  433. package/dist/ko-BomUE-yQ.cjs +0 -1
  434. package/dist/ko-Ch0jFsBV.js +0 -101
  435. package/dist/menu-CZzRsQP_.js +0 -372
  436. package/dist/menu-ClrU72xH.cjs +0 -1
  437. package/dist/nl-Bx2ACvr4.cjs +0 -1
  438. package/dist/nl-NuTdZO1s.js +0 -102
  439. package/dist/pl-QHl6sl8f.cjs +0 -1
  440. package/dist/pt-BETjHZrL.js +0 -101
  441. package/dist/pt-DZGw2Z-1.cjs +0 -1
  442. package/dist/pt-oBMmVYcu.cjs +0 -1
  443. package/dist/ru-CtxMmoa6.cjs +0 -1
  444. package/dist/ru-D03IuLqh.cjs +0 -1
  445. package/dist/text-input-B3VBat1k.js +0 -44
  446. package/dist/text-input-Ds8e7Z1G.cjs +0 -1
  447. package/dist/tr-B_-_1wua.cjs +0 -1
  448. package/dist/translations-B4-Zd2LM.cjs +0 -1
  449. package/dist/translations-D62qqNV9.cjs +0 -1
  450. package/dist/translations-DPr6c05Z.js +0 -67
  451. package/dist/ur-DvqAg9gW.cjs +0 -1
  452. package/dist/ur-DyUSmIbo.cjs +0 -1
  453. package/dist/use-animated-toggle-ChycsEoj.js +0 -175
  454. package/dist/use-animated-toggle-DR6CyMac.cjs +0 -1
  455. package/dist/vi-BdzxA60L.js +0 -101
  456. package/dist/vi-CBmPaHxg.cjs +0 -1
  457. package/dist/vi-D5R3YcU0.cjs +0 -1
  458. package/dist/vi-DhdsHHf_.js +0 -38
  459. package/dist/widget-customization-Dk7XcVly.cjs +0 -1
  460. package/dist/zh-CCGXcj5r.cjs +0 -1
  461. package/dist/zh-Cb1b8uik.cjs +0 -1
  462. package/dist/zh-Dn1UJiZa.js +0 -101
@@ -0,0 +1,213 @@
1
+ import { TNode, Value, Renderable } from '@tempots/dom';
2
+ import { ThemeColorName } from '../../tokens';
3
+ /**
4
+ * Configuration options for the {@link ConfirmationDialog} component.
5
+ */
6
+ export interface ConfirmationDialogOptions {
7
+ /**
8
+ * Dialog title displayed next to the icon.
9
+ */
10
+ title: Value<string>;
11
+ /**
12
+ * Descriptive body text explaining what the action does.
13
+ */
14
+ body: Value<string>;
15
+ /**
16
+ * Iconify icon identifier displayed in a colored circle.
17
+ * @default 'lucide:alert-triangle'
18
+ */
19
+ icon?: Value<string>;
20
+ /**
21
+ * Semantic color applied to the icon background and confirm button.
22
+ * @default 'danger'
23
+ */
24
+ color?: Value<ThemeColorName>;
25
+ /**
26
+ * Optional list of consequences displayed as bullet points.
27
+ */
28
+ consequences?: string[];
29
+ /**
30
+ * Custom label for the confirm button. Falls back to i18n `confirm` string.
31
+ */
32
+ confirmText?: Value<string>;
33
+ /**
34
+ * Custom label for the cancel button. Falls back to i18n `cancel` string.
35
+ */
36
+ cancelText?: Value<string>;
37
+ /**
38
+ * Callback invoked when the user clicks the confirm button.
39
+ */
40
+ onConfirm?: () => void;
41
+ /**
42
+ * Callback invoked when the user clicks the cancel button or dismisses the dialog.
43
+ */
44
+ onCancel?: () => void;
45
+ /**
46
+ * Whether the dialog can be closed by clicking outside or pressing Escape.
47
+ * @default true
48
+ */
49
+ dismissable?: Value<boolean>;
50
+ }
51
+ /**
52
+ * A confirmation dialog for destructive or warning actions.
53
+ *
54
+ * Displays a title with an icon, a descriptive body, optional consequence list,
55
+ * and confirm/cancel action buttons. Built on top of {@link Modal}.
56
+ *
57
+ * @param options - Configuration options for the dialog content and callbacks
58
+ * @param fn - A render function that receives `open` and `close` callbacks and returns the trigger content.
59
+ * @returns A renderable node
60
+ *
61
+ * @example
62
+ * ```typescript
63
+ * ConfirmationDialog(
64
+ * {
65
+ * title: 'Delete collection',
66
+ * body: 'This will permanently remove all 24 records.',
67
+ * icon: 'lucide:trash-2',
68
+ * color: 'danger',
69
+ * consequences: [
70
+ * 'All records will be moved to trash',
71
+ * 'Shared access will be revoked',
72
+ * ],
73
+ * confirmText: 'Delete collection',
74
+ * cancelText: 'Keep collection',
75
+ * onConfirm: () => deleteCollection(),
76
+ * },
77
+ * (open, close) => Button({ onClick: open }, 'Delete')
78
+ * )
79
+ * ```
80
+ */
81
+ export declare function ConfirmationDialog(options: ConfirmationDialogOptions, fn: (open: () => void, close: () => void) => TNode): Renderable;
82
+ /**
83
+ * Visual variant for the {@link AlertDialog}, controlling the default icon and color.
84
+ */
85
+ export type AlertDialogVariant = 'info' | 'success' | 'warning' | 'error';
86
+ /**
87
+ * Configuration options for the {@link AlertDialog} component.
88
+ */
89
+ export interface AlertDialogOptions {
90
+ /**
91
+ * Dialog title displayed next to the icon.
92
+ */
93
+ title: Value<string>;
94
+ /**
95
+ * Body content of the alert.
96
+ */
97
+ body: TNode;
98
+ /**
99
+ * Visual variant controlling the default icon and color.
100
+ * @default 'info'
101
+ */
102
+ variant?: AlertDialogVariant;
103
+ /**
104
+ * Override icon. If not provided, a default icon is used based on the variant.
105
+ */
106
+ icon?: Value<string>;
107
+ /**
108
+ * Custom label for the OK button.
109
+ * @default 'OK'
110
+ */
111
+ okText?: Value<string>;
112
+ /**
113
+ * Callback invoked when the user acknowledges the alert.
114
+ */
115
+ onOk?: () => void;
116
+ /**
117
+ * Whether the dialog can be closed by clicking outside or pressing Escape.
118
+ * @default true
119
+ */
120
+ dismissable?: Value<boolean>;
121
+ }
122
+ /**
123
+ * An alert dialog for displaying important messages to the user.
124
+ *
125
+ * Supports info, success, warning, and error variants with appropriate icons and colors.
126
+ * Has a single acknowledge button. Built on top of {@link Modal}.
127
+ *
128
+ * @param options - Configuration options for the alert content
129
+ * @param fn - A render function that receives `open` and `close` callbacks and returns the trigger content.
130
+ * @returns A renderable node
131
+ *
132
+ * @example
133
+ * ```typescript
134
+ * AlertDialog(
135
+ * {
136
+ * title: 'Changes saved',
137
+ * body: html.p('Your settings have been updated successfully.'),
138
+ * variant: 'success',
139
+ * },
140
+ * (open, close) => Button({ onClick: open }, 'Save')
141
+ * )
142
+ * ```
143
+ */
144
+ export declare function AlertDialog(options: AlertDialogOptions, fn: (open: () => void, close: () => void) => TNode): Renderable;
145
+ /**
146
+ * Configuration options for the {@link PromptDialog} component.
147
+ */
148
+ export interface PromptDialogOptions {
149
+ /**
150
+ * Dialog title displayed in the header.
151
+ */
152
+ title: Value<string>;
153
+ /**
154
+ * Optional descriptive text above the input field.
155
+ */
156
+ body?: TNode;
157
+ /**
158
+ * Placeholder text for the input field.
159
+ */
160
+ placeholder?: Value<string>;
161
+ /**
162
+ * Default value pre-filled in the input field.
163
+ * @default ''
164
+ */
165
+ defaultValue?: string;
166
+ /**
167
+ * Custom label for the confirm button. Falls back to i18n `confirm` string.
168
+ */
169
+ confirmText?: Value<string>;
170
+ /**
171
+ * Custom label for the cancel button. Falls back to i18n `cancel` string.
172
+ */
173
+ cancelText?: Value<string>;
174
+ /**
175
+ * Callback invoked with the input value when the user confirms.
176
+ */
177
+ onConfirm?: (value: string) => void;
178
+ /**
179
+ * Callback invoked when the user cancels or dismisses the dialog.
180
+ */
181
+ onCancel?: () => void;
182
+ /**
183
+ * Whether the dialog can be closed by clicking outside or pressing Escape.
184
+ * @default true
185
+ */
186
+ dismissable?: Value<boolean>;
187
+ }
188
+ /**
189
+ * A prompt dialog for collecting text input from the user.
190
+ *
191
+ * Displays a title, optional description, a text input field, and confirm/cancel buttons.
192
+ * Built on top of {@link Modal}.
193
+ *
194
+ * @param options - Configuration options for the prompt
195
+ * @param fn - A render function that receives `open` and `close` callbacks and returns the trigger content.
196
+ * @returns A renderable node
197
+ *
198
+ * @example
199
+ * ```typescript
200
+ * PromptDialog(
201
+ * {
202
+ * title: 'Rename file',
203
+ * body: html.p('Enter a new name for this file.'),
204
+ * placeholder: 'File name',
205
+ * defaultValue: 'untitled.txt',
206
+ * confirmText: 'Rename',
207
+ * onConfirm: (name) => renameFile(name),
208
+ * },
209
+ * (open, close) => Button({ onClick: open }, 'Rename')
210
+ * )
211
+ * ```
212
+ */
213
+ export declare function PromptDialog(options: PromptDialogOptions, fn: (open: () => void, close: () => void) => TNode): Renderable;
@@ -1,29 +1,93 @@
1
1
  import { TNode, Renderable, Value } from '@tempots/dom';
2
2
  import { OverlayEffect } from '../theme/types';
3
+ /**
4
+ * Configuration options for the {@link Drawer} component, defining its content layout
5
+ * and behavioral properties.
6
+ */
3
7
  export interface DrawerOptions {
4
- /** Size of the drawer */
8
+ /**
9
+ * Size preset controlling the width (for left/right drawers) or height (for top/bottom drawers).
10
+ * @default 'md'
11
+ */
5
12
  size?: Value<'sm' | 'md' | 'lg' | 'xl'>;
6
- /** Side of the viewport/element to anchor the drawer to */
13
+ /**
14
+ * Side of the viewport or container element to anchor the drawer to.
15
+ * Logical values `'inline-start'` and `'inline-end'` respect the document's writing direction.
16
+ * @default 'right'
17
+ */
7
18
  side?: Value<'top' | 'right' | 'bottom' | 'left' | 'inline-start' | 'inline-end'>;
8
- /** Whether the drawer can be closed by clicking outside or pressing escape */
19
+ /**
20
+ * Whether the drawer can be closed by clicking outside or pressing the Escape key.
21
+ * When `false`, the overlay enters non-capturing mode and ignores dismiss gestures.
22
+ * @default true
23
+ */
9
24
  dismissable?: Value<boolean>;
10
- /** Whether to show the close button in header (only applies if header is provided) */
25
+ /**
26
+ * Whether to show the close button in the drawer header.
27
+ * Only rendered when header content is provided.
28
+ * @default true
29
+ */
11
30
  showCloseButton?: Value<boolean>;
12
- /** Callback when drawer is closed */
31
+ /**
32
+ * Callback invoked when the drawer is closed via dismiss gestures (click outside or Escape).
33
+ */
13
34
  onClose?: () => void;
14
- /** Overlay effect */
35
+ /**
36
+ * Visual effect applied to the overlay backdrop behind the drawer.
37
+ * @default 'opaque'
38
+ */
15
39
  overlayEffect?: Value<OverlayEffect>;
16
- /** Container for the overlay: 'body' (default) or 'element' (current element) */
40
+ /**
41
+ * Where to attach the overlay in the DOM.
42
+ * - `'body'` - Renders via a portal to the document body.
43
+ * - `'element'` - Renders as a child of the current element context.
44
+ * @default 'body'
45
+ */
17
46
  container?: 'body' | 'element';
18
- /** Header content for the drawer */
47
+ /**
48
+ * Optional header content displayed at the top of the drawer panel.
49
+ * When provided alongside `showCloseButton`, a close button is rendered in the header.
50
+ */
19
51
  header?: TNode;
20
- /** Body content for the drawer */
52
+ /**
53
+ * Main body content of the drawer. Rendered inside a scrollable panel.
54
+ */
21
55
  body: TNode;
22
- /** Footer content for the drawer */
56
+ /**
57
+ * Optional footer content, typically used for action buttons at the bottom of the drawer.
58
+ */
23
59
  footer?: TNode;
24
60
  }
25
61
  /**
26
- * Drawer component that provides a slide-out panel anchored to any side
27
- * Built on top of the overlay component
62
+ * Slide-out panel component that anchors to any side of the viewport or container.
63
+ *
64
+ * Built on top of {@link Overlay}, the Drawer provides animated open/close transitions,
65
+ * focus trapping, keyboard and click-outside dismissal, and proper ARIA attributes
66
+ * (`role="dialog"`, `aria-modal`). The body content is rendered inside a
67
+ * {@link ScrollablePanel} for built-in scrolling behavior.
68
+ *
69
+ * @param fn - A render function that receives `open` and `close` callbacks and returns the trigger content.
70
+ * Call `open(options)` with a {@link DrawerOptions} object to display the drawer.
71
+ * @returns A renderable node
72
+ *
73
+ * @example
74
+ * ```typescript
75
+ * Drawer((open, close) =>
76
+ * Button(
77
+ * { onClick: () => open({
78
+ * side: 'right',
79
+ * size: 'md',
80
+ * header: html.h3('Settings'),
81
+ * body: html.div(
82
+ * html.p('Drawer body content here'),
83
+ * FormField({ label: 'Name' }, TextInput({ value: prop('') }))
84
+ * ),
85
+ * footer: Button({ variant: 'filled', onClick: close }, 'Save'),
86
+ * onClose: () => console.log('Drawer closed'),
87
+ * })},
88
+ * 'Open Drawer'
89
+ * )
90
+ * )
91
+ * ```
28
92
  */
29
93
  export declare function Drawer(fn: (open: (options: DrawerOptions) => void, close: () => void) => TNode): Renderable;
@@ -2,6 +2,10 @@ export * from './overlay';
2
2
  export * from './modal';
3
3
  export * from './drawer';
4
4
  export * from './tooltip';
5
+ export * from './popover';
5
6
  export * from './ribbon';
6
7
  export * from './lightbox';
7
8
  export * from './announcement-bar';
9
+ export * from './command-palette';
10
+ export * from './block-command-palette';
11
+ export * from './dialogs';
@@ -1,22 +1,65 @@
1
1
  import { Renderable, Value, TNode } from '@tempots/dom';
2
2
  import { OverlayEffect } from '../theme';
3
+ /**
4
+ * Configuration options for the {@link Lightbox} component.
5
+ */
3
6
  export interface LightboxOptions {
4
- /** Whether clicking outside/Escape closes the lightbox (default: true) */
7
+ /**
8
+ * Whether the lightbox can be closed by clicking outside or pressing the Escape key.
9
+ * When `false`, the overlay ignores dismiss gestures.
10
+ * @default true
11
+ */
5
12
  dismissable?: Value<boolean>;
6
- /** Whether to show the close button in the top-end corner (default: true) */
13
+ /**
14
+ * Whether to show a close button in the top-end corner of the lightbox.
15
+ * @default true
16
+ */
7
17
  showCloseButton?: Value<boolean>;
8
- /** Overlay effect (default: 'opaque') */
18
+ /**
19
+ * Visual effect applied to the overlay backdrop behind the lightbox.
20
+ * @default 'opaque'
21
+ */
9
22
  overlayEffect?: Value<OverlayEffect>;
10
- /** Container for the overlay: 'body' (default) or 'element' */
23
+ /**
24
+ * Where to attach the overlay in the DOM.
25
+ * - `'body'` - Renders via a portal to the document body.
26
+ * - `'element'` - Renders as a child of the current element context.
27
+ * @default 'body'
28
+ */
11
29
  container?: 'body' | 'element';
12
- /** Padding (in px) kept around content; content is capped by viewport minus padding (default: 32) */
30
+ /**
31
+ * Padding in pixels kept around the content. The content is constrained to the
32
+ * viewport dimensions minus this padding on each side.
33
+ * @default 32
34
+ */
13
35
  padding?: Value<number>;
14
36
  }
15
37
  /**
16
- * Lightbox overlay for displaying arbitrary content maximized and centered.
17
- * - Attaches via Portal to body by default
18
- * - Dark background via Overlay effect
19
- * - Fades in/out using the overlay's animated toggle
20
- * - Caps content to viewport (minus padding) and clips overflow; no transform scaling
38
+ * Lightbox overlay for displaying arbitrary content maximized and centered over a dark backdrop.
39
+ *
40
+ * The lightbox attaches via a portal to the document body by default, fades in/out using
41
+ * the overlay's animated toggle, and constrains content to the viewport dimensions minus
42
+ * configurable padding. Overflow is clipped without transform scaling.
43
+ *
44
+ * Built on top of {@link Overlay}.
45
+ *
46
+ * @param options - Configuration options controlling dismissability, close button, overlay effect, and padding
47
+ * @param fn - A render function that receives `open` and `close` callbacks and returns the trigger content.
48
+ * Call `open(content)` with a `TNode` to display the lightbox content.
49
+ * @returns A renderable node
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * Lightbox(
54
+ * { dismissable: true, padding: 48 },
55
+ * (open, close) => html.img(
56
+ * attr.src('/thumb.jpg'),
57
+ * attr.alt('Thumbnail'),
58
+ * on.click(() => open(
59
+ * html.img(attr.src('/full-size.jpg'), attr.alt('Full size image'))
60
+ * ))
61
+ * )
62
+ * )
63
+ * ```
21
64
  */
22
65
  export declare function Lightbox(options: LightboxOptions, fn: (open: (content: TNode) => void, close: () => void) => TNode): Renderable;
@@ -1,40 +1,140 @@
1
1
  import { TNode, Value, Renderable } from '@tempots/dom';
2
2
  import { OverlayEffect } from '../theme';
3
+ /**
4
+ * Configuration options for the {@link Modal} component.
5
+ */
3
6
  export interface ModalOptions {
4
- /** Size of the modal */
7
+ /**
8
+ * Size preset controlling the maximum width of the modal dialog.
9
+ * @default 'md'
10
+ */
5
11
  size?: Value<'sm' | 'md' | 'lg' | 'xl'>;
6
- /** Whether the modal can be closed by clicking outside or pressing escape */
12
+ /**
13
+ * Whether the modal can be closed by clicking outside or pressing the Escape key.
14
+ * When `false`, the overlay enters non-capturing mode and ignores dismiss gestures.
15
+ * @default true
16
+ */
7
17
  dismissable?: Value<boolean>;
8
- /** Whether to show the close button in header (only applies if header is provided) */
18
+ /**
19
+ * Whether to show the close button in the modal header.
20
+ * Only rendered when header content is provided.
21
+ * @default true
22
+ */
9
23
  showCloseButton?: Value<boolean>;
10
- /** Callback when modal is closed */
24
+ /**
25
+ * Callback invoked when the modal is closed via dismiss gestures (click outside or Escape).
26
+ */
11
27
  onClose?: () => void;
12
- /** Overlay effect */
28
+ /**
29
+ * Visual effect applied to the overlay backdrop behind the modal.
30
+ * @default 'opaque'
31
+ */
13
32
  overlayEffect?: Value<OverlayEffect>;
14
- /** Container for the overlay: 'body' (default) or 'element' (current element) */
33
+ /**
34
+ * Where to attach the overlay in the DOM.
35
+ * - `'body'` - Renders via a portal to the document body.
36
+ * - `'element'` - Renders as a child of the current element context.
37
+ * @default 'body'
38
+ */
15
39
  container?: 'body' | 'element';
16
- /** Position of the modal: 'center' (default), 'top', 'bottom', 'left', 'right', 'top-start', 'top-end', 'bottom-start', 'bottom-end' */
40
+ /**
41
+ * Position of the modal dialog within the overlay.
42
+ * Controls alignment relative to the viewport or container.
43
+ * @default 'center'
44
+ */
17
45
  position?: Value<'center' | 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end'>;
18
46
  }
47
+ /**
48
+ * Content layout options for a modal dialog, defining the header, body, and footer sections.
49
+ */
19
50
  export interface ModalContentOptions {
20
- /** Optional header content - if provided, overrides title */
51
+ /**
52
+ * Optional header content displayed at the top of the modal.
53
+ * When provided, an ARIA `labelledby` association is created for accessibility.
54
+ */
21
55
  header?: TNode;
22
- /** Main body content */
56
+ /**
57
+ * Main body content of the modal dialog. This section is always rendered
58
+ * and is referenced via ARIA `describedby` for screen readers.
59
+ */
23
60
  body: TNode;
24
- /** Optional footer content with action items */
61
+ /**
62
+ * Optional footer content, typically used for action buttons (e.g., confirm, cancel).
63
+ */
25
64
  footer?: TNode;
26
65
  }
27
66
  /**
28
- * Modal component that provides a structured dialog with optional header, body, and footer
29
- * Built on top of the overlay component
67
+ * Modal dialog component with structured header, body, and footer sections.
68
+ *
69
+ * Built on top of {@link Overlay}, it provides focus trapping, keyboard dismissal,
70
+ * click-outside dismissal, and proper ARIA attributes (`role="dialog"`, `aria-modal`,
71
+ * `aria-labelledby`, `aria-describedby`).
72
+ *
73
+ * @param options - Configuration options controlling size, position, dismissability, and overlay effect
74
+ * @param fn - A render function that receives `open` and `close` callbacks and returns the trigger content.
75
+ * Call `open(content)` with a {@link ModalContentOptions} object to display the modal.
76
+ * @returns A renderable node
77
+ *
78
+ * @example
79
+ * ```typescript
80
+ * const isOpen = prop(false)
81
+ *
82
+ * Modal(
83
+ * { size: 'lg', dismissable: true, onClose: () => isOpen.set(false) },
84
+ * (open, close) => Button(
85
+ * { onClick: () => open({
86
+ * header: html.h2('Confirm Action'),
87
+ * body: html.p('Are you sure you want to proceed?'),
88
+ * footer: Fragment(
89
+ * Button({ variant: 'outline', onClick: close }, 'Cancel'),
90
+ * Button({ color: 'primary', variant: 'filled', onClick: close }, 'OK')
91
+ * ),
92
+ * })},
93
+ * 'Open Modal'
94
+ * )
95
+ * )
96
+ * ```
30
97
  */
31
98
  export declare function Modal(options: ModalOptions, fn: (open: (content: ModalContentOptions) => void, close: () => void) => TNode): Renderable;
32
99
  /**
33
- * Convenience function to create a confirmation modal
100
+ * Convenience wrapper around {@link Modal} that provides a pre-built confirmation dialog
101
+ * with configurable confirm and cancel buttons.
102
+ *
103
+ * The modal automatically includes localized button labels (via {@link BeatUII18n}) and
104
+ * hides the header close button by default.
105
+ *
106
+ * @param options - Combined {@link ModalOptions} plus confirmation-specific settings:
107
+ * @param options.confirmText - Custom label for the confirm button. Falls back to the i18n `confirm` string.
108
+ * @param options.cancelText - Custom label for the cancel button. Falls back to the i18n `cancel` string.
109
+ * @param options.onConfirm - Callback invoked when the user clicks the confirm button.
110
+ * @param options.onCancel - Callback invoked when the user clicks the cancel button.
111
+ * @param fn - A render function that receives `open` and `close` callbacks and returns the trigger content.
112
+ * Call `open(message)` with a `TNode` to display the confirmation message.
113
+ * @returns A renderable node
114
+ *
115
+ * @example
116
+ * ```typescript
117
+ * ConfirmModal(
118
+ * {
119
+ * onConfirm: () => console.log('Confirmed'),
120
+ * onCancel: () => console.log('Cancelled'),
121
+ * confirmText: 'Delete',
122
+ * cancelText: 'Keep',
123
+ * },
124
+ * (open, close) => Button(
125
+ * { onClick: () => open(html.p('Delete this item permanently?')) },
126
+ * 'Delete Item'
127
+ * )
128
+ * )
129
+ * ```
34
130
  */
35
131
  export declare function ConfirmModal(options: ModalOptions & {
132
+ /** Custom label for the confirm button. Falls back to the i18n `confirm` string. */
36
133
  confirmText?: Value<string>;
134
+ /** Custom label for the cancel button. Falls back to the i18n `cancel` string. */
37
135
  cancelText?: Value<string>;
136
+ /** Callback invoked when the user clicks the confirm button. */
38
137
  onConfirm?: () => void;
138
+ /** Callback invoked when the user clicks the cancel button. */
39
139
  onCancel?: () => void;
40
140
  }, fn: (open: (message: TNode) => void, close: () => void) => TNode): Renderable;
@@ -1,11 +1,72 @@
1
1
  import { TNode, Value } from '@tempots/dom';
2
2
  import { OverlayEffect } from '../theme/types';
3
+ /**
4
+ * Configuration options for the Overlay component.
5
+ */
3
6
  export type OverlayOptions = {
7
+ /**
8
+ * Visual effect applied to the overlay backdrop.
9
+ * @default 'opaque'
10
+ */
4
11
  effect?: Value<OverlayEffect>;
12
+ /**
13
+ * Interaction mode for the overlay.
14
+ * - `'capturing'` - Listens for Escape key presses and click-outside events to close the overlay.
15
+ * - `'non-capturing'` - Does not register any close event listeners, making the overlay non-dismissable via user interaction.
16
+ * @default 'capturing'
17
+ */
5
18
  mode?: Value<'capturing' | 'non-capturing'>;
19
+ /**
20
+ * Callback invoked when the user clicks outside the overlay content area.
21
+ * Only fires when `mode` is `'capturing'`.
22
+ */
6
23
  onClickOutside?: () => void;
24
+ /**
25
+ * Callback invoked when the user presses the Escape key.
26
+ * Only fires when `mode` is `'capturing'`.
27
+ */
7
28
  onEscape?: () => void;
29
+ /**
30
+ * Content to render inside the overlay.
31
+ */
8
32
  content?: TNode;
33
+ /**
34
+ * Where to attach the overlay in the DOM.
35
+ * - `'body'` - Renders via a portal to the document body.
36
+ * - `'element'` - Renders as a child of the current element context.
37
+ * @default 'body'
38
+ */
9
39
  container?: 'body' | 'element';
10
40
  };
41
+ /**
42
+ * Low-level overlay primitive that manages a full-screen backdrop with animated open/close transitions.
43
+ *
44
+ * The overlay handles event delegation (Escape key, click-outside), inerts sibling elements
45
+ * for accessibility, and supports portal rendering to the document body.
46
+ *
47
+ * Higher-level components such as {@link Modal}, {@link Drawer}, and {@link Lightbox} are built
48
+ * on top of this primitive.
49
+ *
50
+ * @param fn - A render function that receives `open` and `close` callbacks and returns the trigger content.
51
+ * Call `open(options)` to display the overlay and `close()` to dismiss it.
52
+ * @returns A renderable node
53
+ *
54
+ * @example
55
+ * ```typescript
56
+ * Overlay((open, close) => {
57
+ * return Button(
58
+ * { onClick: () => open({
59
+ * effect: 'opaque',
60
+ * content: html.div(
61
+ * html.p('Overlay content'),
62
+ * Button({ onClick: close }, 'Close')
63
+ * ),
64
+ * onEscape: close,
65
+ * onClickOutside: close,
66
+ * })},
67
+ * 'Open Overlay'
68
+ * )
69
+ * })
70
+ * ```
71
+ */
11
72
  export declare function Overlay(fn: (open: (options: OverlayOptions) => void, close: () => void) => TNode): import("@tempots/dom").Renderable;