@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.
- package/dist/_commonjsHelpers-DKOUU3wS.cjs +1 -0
- package/dist/_commonjsHelpers-DaMA6jEr.js +8 -0
- package/dist/ar-CBrjAlIY.cjs +1 -0
- package/dist/ar-DjMvIww5.js +175 -0
- package/dist/{ar-NCCPhOpI.js → ar-DwDxAANU.js} +16 -1
- package/dist/ar-kZBzg02I.cjs +1 -0
- package/dist/auth/index.cjs.js +1 -1
- package/dist/auth/index.es.js +64 -1351
- package/dist/auth-divider-C3_CgC0l.js +1375 -0
- package/dist/auth-divider-C4WTL71M.cjs +1 -0
- package/dist/beatui.css +11183 -5596
- package/dist/beatui.tailwind.css +11210 -5623
- package/dist/better-auth/index.cjs.js +1 -0
- package/dist/better-auth/index.es.js +741 -0
- package/dist/{colors-B2yrgHSW.cjs → colors-BI0YhONJ.cjs} +1 -1
- package/dist/{colors-DPo9GEJR.js → colors-BmLYKmoH.js} +38 -30
- package/dist/de-B03SM9eF.cjs +1 -0
- package/dist/{de-BVK2MkCk.js → de-CSGSC0xX.js} +18 -3
- package/dist/de-CrBw41po.cjs +1 -0
- package/dist/{de-f2xcEb34.js → de-wChFYqM4.js} +79 -5
- package/dist/deep-merge-CmQoIYPC.js +1689 -0
- package/dist/deep-merge-UghuPcyW.cjs +1 -0
- package/dist/duration-input-BJzKgI15.cjs +1 -0
- package/dist/{duration-input-B3vnnwBZ.js → duration-input-DaB6s0rL.js} +24 -23
- package/dist/editor-toolbar-group-BslfdazC.js +32 -0
- package/dist/editor-toolbar-group-_V1rDM-1.cjs +1 -0
- package/dist/{es-BxBeTRCv.cjs → es-BRa0hV-7.cjs} +1 -1
- package/dist/es-Ca5xT3NE.cjs +1 -0
- package/dist/es-CmPF3IGl.js +175 -0
- package/dist/{es-BQS8PL9j.js → es-dR46FTMF.js} +16 -1
- package/dist/{fa-DxPseW3g.cjs → fa-BxCSKn9j.cjs} +1 -1
- package/dist/fa-D696e75R.js +175 -0
- package/dist/fa-DhZJYuC6.cjs +1 -0
- package/dist/{fa-T-tkJSJr.js → fa-FsHBFjdY.js} +16 -1
- package/dist/fr-1nSKSIlw.cjs +1 -0
- package/dist/{fr-yOW_68YY.js → fr-B0jeX1Hx.js} +83 -9
- package/dist/{fr-CSRRhyCG.js → fr-Di6BT9_V.js} +18 -3
- package/dist/fr-Dq6RAY9s.cjs +1 -0
- package/dist/he-BBX1h9uD.cjs +1 -0
- package/dist/{he-Bxdc4M08.js → he-CXujw1Lw.js} +16 -1
- package/dist/he-DhcurPt5.cjs +1 -0
- package/dist/he-SgAsIYJA.js +175 -0
- package/dist/{hi-CJeFvTBe.js → hi-Bvh4d9bO.js} +16 -1
- package/dist/hi-Cd0YQZTU.cjs +1 -0
- package/dist/hi-CxsIxbfM.cjs +1 -0
- package/dist/hi-s9oiIihq.js +175 -0
- package/dist/{hls.light.min-Bhrf47iR.cjs → hls.light.min-C6xKDzRR.cjs} +1 -1
- package/dist/{hls.light.min-C6VwviEa.js → hls.light.min-hEMf_E8u.js} +1 -1
- package/dist/{index-ChsRjiIp.cjs → index-Bm43lZqE.cjs} +19 -19
- package/dist/{index-C5YCCgnn.cjs → index-C2_iX1um.cjs} +1 -1
- package/dist/{index-DT6-HMMz.js → index-C32iUFIr.js} +1432 -1462
- package/dist/{index-CiAVfKIZ.js → index-CEqc0H3v.js} +1 -1
- package/dist/index-DH37GTQj.cjs +1 -0
- package/dist/{index-DklKfzD4.js → index-Di1_W_7Q.js} +351 -361
- package/dist/index.cjs.js +4 -4
- package/dist/index.es.js +6310 -3528
- package/dist/input-container-CSi72GI1.cjs +1 -0
- package/dist/input-container-Nx0gMAzS.js +258 -0
- package/dist/it-ByIEk5Cq.cjs +1 -0
- package/dist/it-D_IcaYxp.cjs +1 -0
- package/dist/{it-6e6X-4BB.js → it-Dc4IMciD.js} +80 -6
- package/dist/{it-Zmp0BhIj.js → it-EWhykhHv.js} +18 -3
- package/dist/ja-CMGqpPo7.cjs +1 -0
- package/dist/{ja-BxNuNo2H.js → ja-D2t2g5xj.js} +85 -11
- package/dist/ja-DV6Fpp18.cjs +1 -0
- package/dist/{ja-DWjoA-hQ.js → ja-YZ0P5woj.js} +16 -1
- package/dist/json-schema/index.cjs.js +1 -1
- package/dist/json-schema/index.es.js +212 -205
- package/dist/json-schema-display/index.cjs.js +1 -1
- package/dist/json-schema-display/index.es.js +1 -1
- package/dist/json-structure/index.cjs.js +1 -1
- package/dist/json-structure/index.es.js +623 -762
- package/dist/ko-BPl5rP97.cjs +1 -0
- package/dist/ko-BRylA5JZ.js +175 -0
- package/dist/ko-DR1f0as8.cjs +1 -0
- package/dist/{ko-BOlI-33h.js → ko-U7BSUAxZ.js} +16 -1
- package/dist/lexical/index.cjs.js +46 -0
- package/dist/lexical/index.es.js +21397 -0
- package/dist/lexical.css +1122 -0
- package/dist/menu-CX72LaZ3.cjs +1 -0
- package/dist/menu-D_slbwl8.js +374 -0
- package/dist/modal-DaI1jH-X.js +488 -0
- package/dist/modal-kyZfvVZb.cjs +1 -0
- package/dist/nl-BSfaHFt0.cjs +1 -0
- package/dist/{nl-Dr-l6zUy.cjs → nl-CQF0N7Mc.cjs} +1 -1
- package/dist/{nl-kQNcAdY1.js → nl-CqAxoB4J.js} +18 -3
- package/dist/nl-Dh7LUWAn.js +176 -0
- package/dist/notice-Bc1L4Zpr.cjs +1 -0
- package/dist/{notice-CZHWWwOQ.js → notice-Dz4nX57_.js} +49 -48
- package/dist/{oneof-branch-detection-BVNoKU9d.js → oneof-branch-detection-BED_n2MT.js} +523 -520
- package/dist/{oneof-branch-detection-C8g3eWnx.cjs → oneof-branch-detection-Vov_e3kI.cjs} +4 -4
- package/dist/{pl-CKyPFvss.js → pl-C-weXGCB.js} +16 -1
- package/dist/pl-D-O4sCnr.cjs +1 -0
- package/dist/{pl-Bs4nLJ__.js → pl-XEG-p1Q9.js} +77 -3
- package/dist/{pl-BK0i_yvq.cjs → pl-y_w3DWF3.cjs} +1 -1
- package/dist/prosemirror/index.cjs.js +1 -1
- package/dist/prosemirror/index.es.js +1 -1
- package/dist/{pt-DBmUhaNI.js → pt-BjNGOoZH.js} +18 -3
- package/dist/pt-DYsDA2sZ.js +175 -0
- package/dist/pt-DqaZWmbG.cjs +1 -0
- package/dist/pt-chEEYLlt.cjs +1 -0
- package/dist/ru-B46hVpFF.cjs +1 -0
- package/dist/{ru-Bi1_DEKM.js → ru-BTKBykp-.js} +86 -12
- package/dist/{ru-CsJ_yT-7.js → ru-CFmeZBXK.js} +16 -1
- package/dist/ru-CISMzCHR.cjs +1 -0
- package/dist/session-id-3KiilioY.js +8 -0
- package/dist/session-id-B5lJMzbB.cjs +1 -0
- package/dist/styles-url-CVCcF0ra.cjs +1 -0
- package/dist/styles-url-DUdp56Ts.js +4 -0
- package/dist/tailwind/index.cjs.js +1 -1
- package/dist/tailwind/index.es.js +3 -3
- package/dist/tailwind/preset.cjs.js +1 -1
- package/dist/tailwind/preset.es.js +74 -4
- package/dist/tailwind/vite-plugin.cjs.js +10 -10
- package/dist/tailwind/vite-plugin.es.js +289 -410
- package/dist/text-input-8v79fzEy.cjs +1 -0
- package/dist/text-input-CPJzUC2r.js +45 -0
- package/dist/{toolbar-DR2Zd4Oo.js → toolbar-CjQG7l7X.js} +4 -4
- package/dist/toolbar-D3ZsC0g_.cjs +1 -0
- package/dist/{tr-Bn5ldVJs.js → tr-C5X2gFZS.js} +17 -2
- package/dist/tr-CaMaflJL.cjs +1 -0
- package/dist/{tr-DiYB-FwX.js → tr-Cp8ZCUic.js} +77 -3
- package/dist/{tr-CgJ8uhZu.cjs → tr-mWu2E__o.cjs} +1 -1
- package/dist/{translations-Cq8bUKJP.js → translations-BGblCUBj.js} +144 -70
- package/dist/translations-CZ0KOii3.cjs +1 -0
- package/dist/translations-gVgMyNno.cjs +1 -0
- package/dist/translations-jUYta1_1.js +87 -0
- package/dist/types/auth/index.d.ts +13 -0
- package/dist/types/auth-i18n/default.d.ts +14 -0
- package/dist/types/auth-i18n/locales/ar.d.ts +14 -0
- package/dist/types/auth-i18n/locales/de.d.ts +14 -0
- package/dist/types/auth-i18n/locales/en.d.ts +14 -0
- package/dist/types/auth-i18n/locales/es.d.ts +14 -0
- package/dist/types/auth-i18n/locales/fa.d.ts +14 -0
- package/dist/types/auth-i18n/locales/fr.d.ts +14 -0
- package/dist/types/auth-i18n/locales/he.d.ts +14 -0
- package/dist/types/auth-i18n/locales/hi.d.ts +14 -0
- package/dist/types/auth-i18n/locales/it.d.ts +14 -0
- package/dist/types/auth-i18n/locales/ja.d.ts +14 -0
- package/dist/types/auth-i18n/locales/ko.d.ts +14 -0
- package/dist/types/auth-i18n/locales/nl.d.ts +14 -0
- package/dist/types/auth-i18n/locales/pl.d.ts +14 -0
- package/dist/types/auth-i18n/locales/pt.d.ts +14 -0
- package/dist/types/auth-i18n/locales/ru.d.ts +14 -0
- package/dist/types/auth-i18n/locales/tr.d.ts +14 -0
- package/dist/types/auth-i18n/locales/ur.d.ts +14 -0
- package/dist/types/auth-i18n/locales/vi.d.ts +14 -0
- package/dist/types/auth-i18n/locales/zh.d.ts +14 -0
- package/dist/types/auth-i18n/translations.d.ts +14 -0
- package/dist/types/beatui-i18n/default.d.ts +99 -0
- package/dist/types/beatui-i18n/index.d.ts +11 -0
- package/dist/types/beatui-i18n/locales/en.d.ts +63 -0
- package/dist/types/beatui-i18n/translations.d.ts +87 -0
- package/dist/types/better-auth/bridge.d.ts +2 -0
- package/dist/types/better-auth/callbacks.d.ts +6 -0
- package/dist/types/better-auth/components/authenticated.d.ts +4 -0
- package/dist/types/better-auth/components/better-auth-container.d.ts +4 -0
- package/dist/types/better-auth/components/better-auth-modal.d.ts +4 -0
- package/dist/types/better-auth/components/magic-link-form.d.ts +7 -0
- package/dist/types/better-auth/components/passkey-management.d.ts +6 -0
- package/dist/types/better-auth/components/passkey-signin.d.ts +12 -0
- package/dist/types/better-auth/components/two-factor-setup.d.ts +8 -0
- package/dist/types/better-auth/components/two-factor-verify.d.ts +10 -0
- package/dist/types/better-auth/i18n/default.d.ts +29 -0
- package/dist/types/better-auth/i18n/locales/en.d.ts +28 -0
- package/dist/types/better-auth/i18n/translations.d.ts +27 -0
- package/dist/types/better-auth/index.d.ts +35 -0
- package/dist/types/better-auth/provider.d.ts +39 -0
- package/dist/types/better-auth/session.d.ts +14 -0
- package/dist/types/better-auth/social-mapping.d.ts +2 -0
- package/dist/types/better-auth/types.d.ts +276 -0
- package/dist/types/components/auth/auth-container.d.ts +63 -2
- package/dist/types/components/auth/auth-divider.d.ts +30 -0
- package/dist/types/components/auth/auth-email-prop.d.ts +25 -0
- package/dist/types/components/auth/index.d.ts +9 -0
- package/dist/types/components/auth/password-strength-indicator.d.ts +58 -0
- package/dist/types/components/auth/reset-password-form.d.ts +33 -0
- package/dist/types/components/auth/schemas.d.ts +183 -5
- package/dist/types/components/auth/signin-form.d.ts +33 -0
- package/dist/types/components/auth/signup-form.d.ts +36 -0
- package/dist/types/components/auth/social-login-button.d.ts +213 -0
- package/dist/types/components/auth/social-providers.d.ts +27 -1
- package/dist/types/components/auth/types.d.ts +301 -0
- package/dist/types/components/auth/utils.d.ts +198 -0
- package/dist/types/components/beatui.d.ts +35 -0
- package/dist/types/components/button/button.d.ts +61 -0
- package/dist/types/components/button/close-button.d.ts +32 -1
- package/dist/types/components/button/index.d.ts +2 -0
- package/dist/types/components/button/toggle-button-group.d.ts +95 -0
- package/dist/types/components/button/toggle-button.d.ts +60 -0
- package/dist/types/components/data/avatar-group.d.ts +74 -0
- package/dist/types/components/data/avatar.d.ts +62 -0
- package/dist/types/components/data/badge.d.ts +49 -2
- package/dist/types/components/data/calendar-shared.d.ts +59 -0
- package/dist/types/components/data/calendar.d.ts +107 -0
- package/dist/types/components/data/history-timeline.d.ts +35 -0
- package/dist/types/components/data/icon-badge.d.ts +14 -0
- package/dist/types/components/data/icon.d.ts +55 -4
- package/dist/types/components/data/index.d.ts +9 -0
- package/dist/types/components/data/page-drop-zone.d.ts +61 -8
- package/dist/types/components/data/presence-overlay.d.ts +26 -0
- package/dist/types/components/data/progress-bar.d.ts +81 -0
- package/dist/types/components/data/range-calendar.d.ts +104 -0
- package/dist/types/components/data/skeleton.d.ts +70 -0
- package/dist/types/components/data/table.d.ts +38 -11
- package/dist/types/components/data/tag.d.ts +40 -0
- package/dist/types/components/data/unstyled-drop-zone.d.ts +73 -0
- package/dist/types/components/editor-toolbar/editor-toolbar-button.d.ts +16 -0
- package/dist/types/components/editor-toolbar/editor-toolbar-group.d.ts +9 -0
- package/dist/types/components/editor-toolbar/index.d.ts +2 -0
- package/dist/types/components/form/control/control.d.ts +155 -0
- package/dist/types/components/form/control/date-utils.d.ts +81 -0
- package/dist/types/components/form/control/ensure-control.d.ts +28 -0
- package/dist/types/components/form/control/form-status.d.ts +63 -0
- package/dist/types/components/form/control/index.d.ts +10 -0
- package/dist/types/components/form/control/list-control.d.ts +100 -1
- package/dist/types/components/form/control/list-item-controls.d.ts +65 -0
- package/dist/types/components/form/controller/color-controller.d.ts +29 -1
- package/dist/types/components/form/controller/controller-validation.d.ts +31 -0
- package/dist/types/components/form/controller/controller.d.ts +286 -0
- package/dist/types/components/form/controller/index.d.ts +12 -0
- package/dist/types/components/form/controller/path.d.ts +69 -0
- package/dist/types/components/form/controller/union-controller.d.ts +106 -11
- package/dist/types/components/form/controller/utils.d.ts +67 -0
- package/dist/types/components/form/input/advanced-slider.d.ts +143 -0
- package/dist/types/components/form/input/appearance-selector.d.ts +39 -0
- package/dist/types/components/form/input/base64-input.d.ts +34 -0
- package/dist/types/components/form/input/base64s-input.d.ts +47 -0
- package/dist/types/components/form/input/bigint-input.d.ts +27 -0
- package/dist/types/components/form/input/checkbox-input.d.ts +46 -0
- package/dist/types/components/form/input/color-input.d.ts +42 -0
- package/dist/types/components/form/input/color-swatch-input.d.ts +53 -0
- package/dist/types/components/form/input/combobox-input.d.ts +73 -0
- package/dist/types/components/form/input/combobox-tags-input.d.ts +54 -0
- package/dist/types/components/form/input/date-input.d.ts +33 -0
- package/dist/types/components/form/input/date-time-input.d.ts +34 -0
- package/dist/types/components/form/input/dropdown-base.d.ts +52 -0
- package/dist/types/components/form/input/dropdown-input.d.ts +86 -0
- package/dist/types/components/form/input/duration-input.d.ts +18 -0
- package/dist/types/components/form/input/duration-mask.d.ts +24 -0
- package/dist/types/components/form/input/editable-text.d.ts +33 -0
- package/dist/types/components/form/input/email-input.d.ts +34 -0
- package/dist/types/components/form/input/file-input.d.ts +33 -0
- package/dist/types/components/form/input/files-input.d.ts +44 -0
- package/dist/types/components/form/input/index.d.ts +5 -0
- package/dist/types/components/form/input/input-adornment.d.ts +38 -0
- package/dist/types/components/form/input/input-container.d.ts +65 -0
- package/dist/types/components/form/input/input-options.d.ts +70 -0
- package/dist/types/components/form/input/input-wrapper.d.ts +78 -0
- package/dist/types/components/form/input/instant-input.d.ts +18 -0
- package/dist/types/components/form/input/lazy-native-select.d.ts +43 -0
- package/dist/types/components/form/input/list-input.d.ts +50 -0
- package/dist/types/components/form/input/mask-input.d.ts +158 -0
- package/dist/types/components/form/input/native-select.d.ts +50 -0
- package/dist/types/components/form/input/nullable-base64-input.d.ts +25 -0
- package/dist/types/components/form/input/nullable-bigint-input.d.ts +26 -0
- package/dist/types/components/form/input/nullable-date-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-date-time-input.d.ts +19 -0
- package/dist/types/components/form/input/nullable-duration-input.d.ts +19 -0
- package/dist/types/components/form/input/nullable-email-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-instant-input.d.ts +19 -0
- package/dist/types/components/form/input/nullable-mask-input.d.ts +24 -0
- package/dist/types/components/form/input/nullable-number-input.d.ts +29 -0
- package/dist/types/components/form/input/nullable-password-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-plain-date-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-plain-date-time-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-plain-month-day-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-plain-time-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-plain-year-month-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-rating-input.d.ts +33 -0
- package/dist/types/components/form/input/nullable-text-area.d.ts +27 -0
- package/dist/types/components/form/input/nullable-text-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-url-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-utils.d.ts +22 -2
- package/dist/types/components/form/input/nullable-uuid-input.d.ts +18 -0
- package/dist/types/components/form/input/nullable-zoned-date-time-input.d.ts +20 -0
- package/dist/types/components/form/input/number-input.d.ts +49 -0
- package/dist/types/components/form/input/option.d.ts +165 -0
- package/dist/types/components/form/input/otp-input.d.ts +77 -0
- package/dist/types/components/form/input/password-input.d.ts +39 -0
- package/dist/types/components/form/input/plain-date-input.d.ts +17 -0
- package/dist/types/components/form/input/plain-date-time-input.d.ts +17 -0
- package/dist/types/components/form/input/plain-month-day-input.d.ts +18 -0
- package/dist/types/components/form/input/plain-time-input.d.ts +17 -0
- package/dist/types/components/form/input/plain-year-month-input.d.ts +17 -0
- package/dist/types/components/form/input/radio-group.d.ts +108 -0
- package/dist/types/components/form/input/rating-input.d.ts +57 -0
- package/dist/types/components/form/input/segmented-input.d.ts +70 -1
- package/dist/types/components/form/input/select-tags-input.d.ts +69 -0
- package/dist/types/components/form/input/slider-input.d.ts +82 -0
- package/dist/types/components/form/input/switch.d.ts +59 -1
- package/dist/types/components/form/input/tag-input.d.ts +19 -0
- package/dist/types/components/form/input/tag-utils.d.ts +111 -0
- package/dist/types/components/form/input/tags-input.d.ts +18 -0
- package/dist/types/components/form/input/text-area.d.ts +42 -0
- package/dist/types/components/form/input/text-input.d.ts +63 -1
- package/dist/types/components/form/input/url-input.d.ts +34 -0
- package/dist/types/components/form/input/uuid-input.d.ts +19 -0
- package/dist/types/components/form/input/zoned-date-time-input.d.ts +20 -0
- package/dist/types/components/form/schema/standard-schema-v1.d.ts +98 -23
- package/dist/types/components/form/use-form.d.ts +146 -2
- package/dist/types/components/i18n/index.d.ts +9 -0
- package/dist/types/components/i18n/locale-direction.d.ts +21 -1
- package/dist/types/components/i18n/locale-selector.d.ts +45 -0
- package/dist/types/components/i18n/make-i18nprovider.d.ts +42 -0
- package/dist/types/components/json-schema/schema-types.d.ts +133 -0
- package/dist/types/components/json-structure/controls/control-utils.d.ts +19 -0
- package/dist/types/components/json-structure/controls/deprecation-utils.d.ts +2 -3
- package/dist/types/components/json-structure/controls/index.d.ts +1 -0
- package/dist/types/components/json-structure/structure-types.d.ts +473 -19
- package/dist/types/components/layout/accordion.d.ts +77 -0
- package/dist/types/components/layout/action-card.d.ts +90 -2
- package/dist/types/components/layout/app-shell.d.ts +76 -0
- package/dist/types/components/layout/card.d.ts +27 -0
- package/dist/types/components/layout/center.d.ts +39 -0
- package/dist/types/components/layout/collapse.d.ts +28 -0
- package/dist/types/components/layout/divider.d.ts +84 -0
- package/dist/types/components/layout/group.d.ts +15 -0
- package/dist/types/components/layout/index.d.ts +2 -0
- package/dist/types/components/layout/nine-slice-scroll-view.d.ts +105 -0
- package/dist/types/components/layout/scrollable-panel.d.ts +54 -0
- package/dist/types/components/layout/sink.d.ts +46 -0
- package/dist/types/components/layout/stack.d.ts +16 -0
- package/dist/types/components/layout/with-breakpoint.d.ts +194 -0
- package/dist/types/components/lexical/bare-editor.d.ts +29 -0
- package/dist/types/components/lexical/code/index.d.ts +1 -0
- package/dist/types/components/lexical/code/language-selector.d.ts +13 -0
- package/dist/types/components/lexical/contextual-editor.d.ts +22 -0
- package/dist/types/components/lexical/docked-editor.d.ts +23 -0
- package/dist/types/components/lexical/floating/block-handle.d.ts +16 -0
- package/dist/types/components/lexical/floating/floating-toolbar.d.ts +12 -0
- package/dist/types/components/lexical/floating/index.d.ts +6 -0
- package/dist/types/components/lexical/floating/slash-command-palette.d.ts +20 -0
- package/dist/types/components/lexical/index.d.ts +8 -0
- package/dist/types/components/lexical/lexical-editor-input.d.ts +30 -0
- package/dist/types/components/lexical/table/index.d.ts +1 -0
- package/dist/types/components/lexical/table/table-controls.d.ts +12 -0
- package/dist/types/components/lexical/toolbar/index.d.ts +6 -0
- package/dist/types/components/lexical/toolbar/lexical-toolbar.d.ts +12 -0
- package/dist/types/components/lexical/toolbar/toolbar-button.d.ts +1 -0
- package/dist/types/components/lexical/toolbar/toolbar-group.d.ts +1 -0
- package/dist/types/components/lexical/toolbar/toolbar-helpers.d.ts +32 -0
- package/dist/types/components/misc/empty-state.d.ts +86 -0
- package/dist/types/components/misc/expando.d.ts +81 -0
- package/dist/types/components/misc/index.d.ts +2 -1
- package/dist/types/components/misc/link-portal.d.ts +40 -2
- package/dist/types/components/misc/notice.d.ts +93 -0
- package/dist/types/components/misc/notification-panel.d.ts +21 -0
- package/dist/types/components/misc/notification-provider.d.ts +141 -0
- package/dist/types/components/misc/notification.d.ts +93 -0
- package/dist/types/components/misc/style-portal.d.ts +31 -1
- package/dist/types/components/monaco/monaco-editor-input.d.ts +59 -2
- package/dist/types/components/navigation/breadcrumbs.d.ts +96 -0
- package/dist/types/components/navigation/flyout.d.ts +118 -16
- package/dist/types/components/navigation/index.d.ts +3 -0
- package/dist/types/components/navigation/link/link.d.ts +100 -0
- package/dist/types/components/navigation/menu.d.ts +155 -35
- package/dist/types/components/navigation/pagination.d.ts +82 -0
- package/dist/types/components/navigation/sidebar/sidebar-group.d.ts +42 -0
- package/dist/types/components/navigation/sidebar/sidebar-link.d.ts +101 -0
- package/dist/types/components/navigation/sidebar/sidebar-separator.d.ts +17 -0
- package/dist/types/components/navigation/sidebar/sidebar.d.ts +57 -0
- package/dist/types/components/navigation/tabs/tabs.d.ts +3 -2
- package/dist/types/components/navigation/toolbar/toolbar.d.ts +125 -0
- package/dist/types/components/navigation/tree-view.d.ts +95 -0
- package/dist/types/components/overlay/announcement-bar.d.ts +41 -2
- package/dist/types/components/overlay/block-command-palette.d.ts +25 -0
- package/dist/types/components/overlay/command-palette.d.ts +17 -0
- package/dist/types/components/overlay/dialogs.d.ts +213 -0
- package/dist/types/components/overlay/drawer.d.ts +76 -12
- package/dist/types/components/overlay/index.d.ts +4 -0
- package/dist/types/components/overlay/lightbox.d.ts +53 -10
- package/dist/types/components/overlay/modal.d.ts +113 -13
- package/dist/types/components/overlay/overlay.d.ts +61 -0
- package/dist/types/components/overlay/popover.d.ts +100 -0
- package/dist/types/components/overlay/ribbon.d.ts +58 -9
- package/dist/types/components/prosemirror/etoolbar-button.d.ts +11 -11
- package/dist/types/components/prosemirror/etoolbar-group.d.ts +11 -4
- package/dist/types/components/prosemirror/link-control.d.ts +43 -2
- package/dist/types/components/prosemirror/prosemirror-toolbar.d.ts +46 -6
- package/dist/types/components/prosemirror/utils.d.ts +113 -1
- package/dist/types/components/theme/style-utils.d.ts +95 -0
- package/dist/types/components/theme/theme.d.ts +39 -0
- package/dist/types/components/theme/types.d.ts +133 -1
- package/dist/types/components/typography/index.d.ts +1 -0
- package/dist/types/components/typography/kbd.d.ts +48 -0
- package/dist/types/components/typography/label.d.ts +45 -0
- package/dist/types/index.d.ts +14 -0
- package/dist/types/json-schema/index.d.ts +13 -0
- package/dist/types/json-schema-display/index.d.ts +12 -0
- package/dist/types/json-structure/index.d.ts +9 -4
- package/dist/types/lexical/commands/index.d.ts +17 -0
- package/dist/types/lexical/headless.d.ts +39 -0
- package/dist/types/lexical/horizontal-rule-node.d.ts +20 -0
- package/dist/types/lexical/index.d.ts +20 -0
- package/dist/types/lexical/lazy-loader.d.ts +35 -0
- package/dist/types/lexical/nodes.d.ts +29 -0
- package/dist/types/lexical/plugins/auto-link.d.ts +7 -0
- package/dist/types/lexical/plugins/clipboard.d.ts +11 -0
- package/dist/types/lexical/plugins/code-shiki.d.ts +11 -0
- package/dist/types/lexical/plugins/code.d.ts +7 -0
- package/dist/types/lexical/plugins/dragon.d.ts +6 -0
- package/dist/types/lexical/plugins/file-io.d.ts +10 -0
- package/dist/types/lexical/plugins/hashtag.d.ts +7 -0
- package/dist/types/lexical/plugins/history.d.ts +7 -0
- package/dist/types/lexical/plugins/horizontal-rule.d.ts +12 -0
- package/dist/types/lexical/plugins/html-io.d.ts +9 -0
- package/dist/types/lexical/plugins/index.d.ts +24 -0
- package/dist/types/lexical/plugins/link.d.ts +6 -0
- package/dist/types/lexical/plugins/list.d.ts +6 -0
- package/dist/types/lexical/plugins/mark.d.ts +15 -0
- package/dist/types/lexical/plugins/markdown-io.d.ts +13 -0
- package/dist/types/lexical/plugins/offset.d.ts +6 -0
- package/dist/types/lexical/plugins/overflow.d.ts +7 -0
- package/dist/types/lexical/plugins/plain-text.d.ts +6 -0
- package/dist/types/lexical/plugins/rich-text.d.ts +6 -0
- package/dist/types/lexical/plugins/selection.d.ts +6 -0
- package/dist/types/lexical/plugins/slash-commands.d.ts +26 -0
- package/dist/types/lexical/plugins/table.d.ts +11 -0
- package/dist/types/lexical/plugins/text.d.ts +13 -0
- package/dist/types/lexical/plugins/yjs.d.ts +9 -0
- package/dist/types/lexical/styles-url.d.ts +2 -0
- package/dist/types/lexical/styles.d.ts +2 -0
- package/dist/types/lexical/types.d.ts +634 -0
- package/dist/types/lexical-i18n/default.d.ts +92 -0
- package/dist/types/lexical-i18n/index.d.ts +21 -0
- package/dist/types/lexical-i18n/locales/ar.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/de.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/en.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/es.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/fa.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/fr.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/he.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/hi.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/it.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/ja.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/ko.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/nl.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/pl.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/pt.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/ru.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/tr.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/ur.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/vi.d.ts +91 -0
- package/dist/types/lexical-i18n/locales/zh.d.ts +91 -0
- package/dist/types/lexical-i18n/translations.d.ts +21 -0
- package/dist/types/markdown/index.d.ts +13 -0
- package/dist/types/monaco/index.d.ts +17 -0
- package/dist/types/monaco/lazy-loader.d.ts +79 -0
- package/dist/types/monaco/styles-url.d.ts +11 -0
- package/dist/types/monaco/styles.d.ts +11 -0
- package/dist/types/monaco/types.d.ts +47 -0
- package/dist/types/prosemirror/index.d.ts +12 -0
- package/dist/types/prosemirror/styles-url.d.ts +11 -0
- package/dist/types/prosemirror/styles.d.ts +10 -0
- package/dist/types/tailwind/google-fonts.d.ts +15 -0
- package/dist/types/tailwind/index.d.ts +13 -0
- package/dist/types/tailwind/preset.d.ts +111 -0
- package/dist/types/tailwind/vite-plugin.d.ts +39 -4
- package/dist/types/tokens/base-colors.d.ts +21 -0
- package/dist/types/tokens/breakpoints.d.ts +67 -0
- package/dist/types/tokens/colors.d.ts +213 -4
- package/dist/types/tokens/motion.d.ts +142 -3
- package/dist/types/tokens/radius.d.ts +99 -0
- package/dist/types/tokens/shadows.d.ts +85 -0
- package/dist/types/tokens/spacing.d.ts +111 -0
- package/dist/types/tokens/text-shadows.d.ts +82 -0
- package/dist/types/tokens/typography.d.ts +313 -25
- package/dist/types/tokens/z-index.d.ts +62 -0
- package/dist/types/utils/color.d.ts +297 -28
- package/dist/types/utils/download.d.ts +92 -0
- package/dist/types/utils/focus-trap.d.ts +67 -11
- package/dist/types/utils/format-file-size.d.ts +44 -0
- package/dist/ur-B6yB2JQ7.cjs +1 -0
- package/dist/ur-CvGP14xo.cjs +1 -0
- package/dist/{ur-Bg9eX81v.js → ur-Deo004ME.js} +16 -1
- package/dist/{ur-B69X-xNs.js → ur-DkIYJxsF.js} +82 -8
- package/dist/use-animated-toggle-89fKlXxy.js +195 -0
- package/dist/use-animated-toggle-DrqK7nUS.cjs +1 -0
- package/dist/{use-form-CgZyrACX.js → use-form-BurzbPVV.js} +271 -88
- package/dist/use-form-Uree6QFy.cjs +2 -0
- package/dist/vi-BYk1rJDv.js +53 -0
- package/dist/vi-DKw6PBja.js +175 -0
- package/dist/vi-Df4WZe9y.cjs +1 -0
- package/dist/vi-DneuUbkq.cjs +1 -0
- package/dist/{widget-customization-DRA7E9Zf.js → widget-customization-0is7oTeP.js} +233 -231
- package/dist/widget-customization-B-LmxkPE.cjs +1 -0
- package/dist/zh-C5a9NGFW.cjs +1 -0
- package/dist/zh-CaKHseXJ.js +175 -0
- package/dist/zh-DFHuW_5g.cjs +1 -0
- package/dist/{zh-BIykcEu9.js → zh-DR7QaM65.js} +16 -1
- package/package.json +48 -3
- package/dist/_commonjsHelpers-C6fGbg64.js +0 -6
- package/dist/_commonjsHelpers-DwGv2jUC.cjs +0 -1
- package/dist/ar-BsUm-TCn.cjs +0 -1
- package/dist/ar-D7CXDmVZ.cjs +0 -1
- package/dist/ar-nOSKXpIW.js +0 -101
- package/dist/de-BUFLEyKr.cjs +0 -1
- package/dist/de-WzsOu9Gn.cjs +0 -1
- package/dist/deep-merge-CiOwVWn8.js +0 -1619
- package/dist/deep-merge-DxZqCkE5.cjs +0 -1
- package/dist/duration-input-Dg5SX3lM.cjs +0 -1
- package/dist/es-CDqqzpCw.js +0 -101
- package/dist/es-Ds2Xf3wV.cjs +0 -1
- package/dist/fa-C7tE_hR3.js +0 -101
- package/dist/fa-Ct1UtDB7.cjs +0 -1
- package/dist/fr-Cdyopuz3.cjs +0 -1
- package/dist/fr-CzAkRFed.cjs +0 -1
- package/dist/he-D2oUloCJ.js +0 -101
- package/dist/he-DarDNPn0.cjs +0 -1
- package/dist/he-DlXALrK7.cjs +0 -1
- package/dist/hi-3dBhLwDs.cjs +0 -1
- package/dist/hi-D5ZlZoQq.js +0 -101
- package/dist/hi-tATwsXJ6.cjs +0 -1
- package/dist/index-DE2tjivA.cjs +0 -1
- package/dist/it-BmFag7j0.cjs +0 -1
- package/dist/it-DohtcWi9.cjs +0 -1
- package/dist/ja-Dj-bAKLf.cjs +0 -1
- package/dist/ja-eyTArrgS.cjs +0 -1
- package/dist/ko-BFLCDMMs.cjs +0 -1
- package/dist/ko-BomUE-yQ.cjs +0 -1
- package/dist/ko-Ch0jFsBV.js +0 -101
- package/dist/modal-D2xE47kr.cjs +0 -1
- package/dist/modal-hkQD1bqZ.js +0 -655
- package/dist/nl-Bx2ACvr4.cjs +0 -1
- package/dist/nl-NuTdZO1s.js +0 -102
- package/dist/notice-C0SmlheE.cjs +0 -1
- package/dist/pl-QHl6sl8f.cjs +0 -1
- package/dist/pt-BETjHZrL.js +0 -101
- package/dist/pt-DZGw2Z-1.cjs +0 -1
- package/dist/pt-oBMmVYcu.cjs +0 -1
- package/dist/ru-CtxMmoa6.cjs +0 -1
- package/dist/ru-D03IuLqh.cjs +0 -1
- package/dist/text-input-CByq5OIo.cjs +0 -1
- package/dist/text-input-CFJntP7G.js +0 -287
- package/dist/toolbar-TPWYzoiF.cjs +0 -1
- package/dist/tr-B_-_1wua.cjs +0 -1
- package/dist/translations-B4-Zd2LM.cjs +0 -1
- package/dist/translations-D62qqNV9.cjs +0 -1
- package/dist/translations-DPr6c05Z.js +0 -67
- package/dist/ur-DvqAg9gW.cjs +0 -1
- package/dist/ur-DyUSmIbo.cjs +0 -1
- package/dist/use-form-JjeKCINk.cjs +0 -2
- package/dist/vi-BdzxA60L.js +0 -101
- package/dist/vi-CBmPaHxg.cjs +0 -1
- package/dist/vi-D5R3YcU0.cjs +0 -1
- package/dist/vi-DhdsHHf_.js +0 -38
- package/dist/widget-customization-G-QLB1rw.cjs +0 -1
- package/dist/zh-CCGXcj5r.cjs +0 -1
- package/dist/zh-Cb1b8uik.cjs +0 -1
- package/dist/zh-Dn1UJiZa.js +0 -101
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* An input component for `Temporal.PlainTime` values.
|
|
3
|
+
*
|
|
4
|
+
* Renders a native HTML `time` input. Created via {@link createTemporalInput}
|
|
5
|
+
* with `PlainTime` serialization. Requires the Temporal polyfill.
|
|
6
|
+
*
|
|
7
|
+
* @param options - Standard input options for a `PlainTime` value.
|
|
8
|
+
* @returns A renderable plain time input component.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* PlainTimeInput({
|
|
13
|
+
* value: prop(Temporal.PlainTime.from('14:30')),
|
|
14
|
+
* onChange: time => console.log('Time:', time.toString()),
|
|
15
|
+
* })
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
1
18
|
export declare const PlainTimeInput: (options: {
|
|
2
19
|
autocomplete?: import("@tempots/dom").Value<string> | undefined;
|
|
3
20
|
autofocus?: import("@tempots/dom").Value<boolean> | undefined;
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* An input component for `Temporal.PlainYearMonth` values.
|
|
3
|
+
*
|
|
4
|
+
* Renders a native HTML `month` input. Created via {@link createTemporalInput}
|
|
5
|
+
* with `PlainYearMonth` serialization. Requires the Temporal polyfill.
|
|
6
|
+
*
|
|
7
|
+
* @param options - Standard input options for a `PlainYearMonth` value.
|
|
8
|
+
* @returns A renderable plain year-month input component.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* PlainYearMonthInput({
|
|
13
|
+
* value: prop(Temporal.PlainYearMonth.from('2024-01')),
|
|
14
|
+
* onChange: ym => console.log('YearMonth:', ym.toString()),
|
|
15
|
+
* })
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
1
18
|
export declare const PlainYearMonthInput: (options: {
|
|
2
19
|
autocomplete?: import("@tempots/dom").Value<string> | undefined;
|
|
3
20
|
autofocus?: import("@tempots/dom").Value<boolean> | undefined;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { TNode, Value } from '@tempots/dom';
|
|
2
|
+
import { ControlSize } from '../../theme';
|
|
3
|
+
/**
|
|
4
|
+
* Configuration for a single radio option within a {@link RadioGroup}.
|
|
5
|
+
*
|
|
6
|
+
* @template V - The type of the option's value
|
|
7
|
+
*/
|
|
8
|
+
export interface RadioOption<V = string> {
|
|
9
|
+
/** The value associated with this radio option */
|
|
10
|
+
value: V;
|
|
11
|
+
/** Display label for the radio option */
|
|
12
|
+
label: string;
|
|
13
|
+
/** Optional description text displayed below the label */
|
|
14
|
+
description?: string;
|
|
15
|
+
/** Whether this specific option is disabled */
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Configuration options for the {@link RadioGroup} component.
|
|
20
|
+
*
|
|
21
|
+
* @template V - The type of the radio values (defaults to string)
|
|
22
|
+
*/
|
|
23
|
+
export interface RadioGroupOptions<V = string> {
|
|
24
|
+
/** Array of radio options to render */
|
|
25
|
+
options: Value<RadioOption<V>[]>;
|
|
26
|
+
/** The currently selected value */
|
|
27
|
+
value: Value<V>;
|
|
28
|
+
/** Callback invoked when a different option is selected */
|
|
29
|
+
onChange?: (value: V) => void;
|
|
30
|
+
/** HTML name attribute for the radio group (generated if not provided) */
|
|
31
|
+
name?: string;
|
|
32
|
+
/** Whether the entire radio group is disabled */
|
|
33
|
+
disabled?: Value<boolean>;
|
|
34
|
+
/**
|
|
35
|
+
* Layout orientation of the radio options.
|
|
36
|
+
* @default 'vertical'
|
|
37
|
+
*/
|
|
38
|
+
orientation?: Value<'horizontal' | 'vertical'>;
|
|
39
|
+
/**
|
|
40
|
+
* Visual size of the radio controls.
|
|
41
|
+
* @default 'md'
|
|
42
|
+
*/
|
|
43
|
+
size?: Value<ControlSize>;
|
|
44
|
+
/**
|
|
45
|
+
* Additional CSS class name(s) to apply to the root element.
|
|
46
|
+
*/
|
|
47
|
+
class?: Value<string>;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Renders a group of radio buttons allowing the user to select one option from
|
|
51
|
+
* a list of mutually exclusive choices.
|
|
52
|
+
*
|
|
53
|
+
* Uses native `<input type="radio">` elements for proper form integration and
|
|
54
|
+
* accessibility, but applies custom styling via CSS. Each option can have a
|
|
55
|
+
* label and optional description text. The radio group supports both horizontal
|
|
56
|
+
* and vertical layouts, multiple size variants, and individual or group-wide
|
|
57
|
+
* disabled states.
|
|
58
|
+
*
|
|
59
|
+
* @template V - The type of values for the radio options
|
|
60
|
+
* @param options - Configuration options for the radio group
|
|
61
|
+
* @returns A styled radio group element with native radio inputs
|
|
62
|
+
*
|
|
63
|
+
* @example
|
|
64
|
+
* ```typescript
|
|
65
|
+
* import { prop } from '@tempots/dom'
|
|
66
|
+
* import { RadioGroup } from '@tempots/beatui'
|
|
67
|
+
*
|
|
68
|
+
* const theme = prop<'light' | 'dark'>('light')
|
|
69
|
+
* RadioGroup({
|
|
70
|
+
* options: [
|
|
71
|
+
* { value: 'light', label: 'Light Mode' },
|
|
72
|
+
* { value: 'dark', label: 'Dark Mode' },
|
|
73
|
+
* ],
|
|
74
|
+
* value: theme,
|
|
75
|
+
* onChange: theme.set,
|
|
76
|
+
* orientation: 'horizontal'
|
|
77
|
+
* })
|
|
78
|
+
* ```
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```typescript
|
|
82
|
+
* // With descriptions and disabled option
|
|
83
|
+
* RadioGroup({
|
|
84
|
+
* options: [
|
|
85
|
+
* {
|
|
86
|
+
* value: 'basic',
|
|
87
|
+
* label: 'Basic Plan',
|
|
88
|
+
* description: '$10/month - Essential features'
|
|
89
|
+
* },
|
|
90
|
+
* {
|
|
91
|
+
* value: 'pro',
|
|
92
|
+
* label: 'Pro Plan',
|
|
93
|
+
* description: '$30/month - Advanced features'
|
|
94
|
+
* },
|
|
95
|
+
* {
|
|
96
|
+
* value: 'enterprise',
|
|
97
|
+
* label: 'Enterprise',
|
|
98
|
+
* description: 'Contact sales',
|
|
99
|
+
* disabled: true
|
|
100
|
+
* }
|
|
101
|
+
* ],
|
|
102
|
+
* value: prop('basic'),
|
|
103
|
+
* onChange: (v) => console.log('Selected:', v),
|
|
104
|
+
* size: 'lg'
|
|
105
|
+
* })
|
|
106
|
+
* ```
|
|
107
|
+
*/
|
|
108
|
+
export declare function RadioGroup<V = string>({ options, value, onChange, name, disabled, orientation, size, class: cls, }: RadioGroupOptions<V>): TNode;
|
|
@@ -2,14 +2,71 @@ import { Value } from '@tempots/dom';
|
|
|
2
2
|
import { InputOptions } from './input-options';
|
|
3
3
|
import { ThemeColorName } from '../../../tokens';
|
|
4
4
|
import { ControlSize } from '../../theme/types';
|
|
5
|
+
/**
|
|
6
|
+
* Configuration options for the {@link RatingInput} component.
|
|
7
|
+
*
|
|
8
|
+
* Extends {@link InputOptions} for numeric values with properties to control the
|
|
9
|
+
* maximum rating, icon appearance, theme colors, and rounding precision.
|
|
10
|
+
*/
|
|
5
11
|
type RatingInputOptions = InputOptions<number> & {
|
|
12
|
+
/** Maximum number of rating icons (stars). @default 5 */
|
|
6
13
|
max?: Value<number>;
|
|
14
|
+
/** Theme color for filled (active) icons. @default 'yellow' */
|
|
7
15
|
fullColor?: Value<ThemeColorName>;
|
|
16
|
+
/** Theme color for empty (inactive) icons. @default 'neutral' */
|
|
8
17
|
emptyColor?: Value<ThemeColorName>;
|
|
18
|
+
/** Icon name for filled (active) rating icons. @default 'line-md:star-alt-filled' */
|
|
9
19
|
fullIcon?: Value<string>;
|
|
20
|
+
/** Icon name for empty (inactive) rating icons. @default 'line-md:star-alt' */
|
|
10
21
|
emptyIcon?: Value<string>;
|
|
22
|
+
/** Visual size of the rating icons. @default 'md' */
|
|
11
23
|
size?: Value<ControlSize>;
|
|
24
|
+
/** Step size for rounding during keyboard interactions (e.g., 0.25 for quarter steps). @default 1 */
|
|
12
25
|
rounding?: Value<number>;
|
|
13
26
|
};
|
|
27
|
+
/**
|
|
28
|
+
* A star rating input component with fractional precision support and ARIA slider semantics.
|
|
29
|
+
*
|
|
30
|
+
* Renders a row of rating icons (stars by default) inside an {@link InputContainer} that
|
|
31
|
+
* supports click-based fractional rating (the click position within each icon determines
|
|
32
|
+
* the fractional value) and full keyboard navigation via arrow keys, Home, and End.
|
|
33
|
+
* Each icon uses a CSS clip mask to show the precise fill level, enabling half-star or
|
|
34
|
+
* quarter-star precision based on the `rounding` option.
|
|
35
|
+
*
|
|
36
|
+
* Uses ARIA `role="slider"` with `aria-valuenow`, `aria-valuemin`, `aria-valuemax`,
|
|
37
|
+
* and `aria-valuetext` for accessibility.
|
|
38
|
+
*
|
|
39
|
+
* @param options - Configuration options for the rating input
|
|
40
|
+
* @returns A styled rating input element with interactive icons, wrapped in an InputContainer
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```ts
|
|
44
|
+
* import { prop } from '@tempots/dom'
|
|
45
|
+
* import { RatingInput } from '@tempots/beatui'
|
|
46
|
+
*
|
|
47
|
+
* const rating = prop(3.5)
|
|
48
|
+
* RatingInput({
|
|
49
|
+
* value: rating,
|
|
50
|
+
* onChange: rating.set,
|
|
51
|
+
* max: 5,
|
|
52
|
+
* rounding: 0.5,
|
|
53
|
+
* })
|
|
54
|
+
* ```
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ```ts
|
|
58
|
+
* // Custom heart icons with quarter-step precision
|
|
59
|
+
* RatingInput({
|
|
60
|
+
* value: prop(0),
|
|
61
|
+
* onChange: (v) => console.log('Rating:', v),
|
|
62
|
+
* max: 10,
|
|
63
|
+
* fullIcon: 'mdi:heart',
|
|
64
|
+
* emptyIcon: 'mdi:heart-outline',
|
|
65
|
+
* fullColor: 'red',
|
|
66
|
+
* rounding: 0.25,
|
|
67
|
+
* size: 'lg',
|
|
68
|
+
* })
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
14
71
|
export declare const RatingInput: (options: RatingInputOptions) => import("@tempots/dom").Renderable;
|
|
15
72
|
export {};
|
|
@@ -1,10 +1,79 @@
|
|
|
1
1
|
import { TNode, Value } from '@tempots/dom';
|
|
2
2
|
import { ControlSize } from '../../theme';
|
|
3
|
+
import { ThemeColorName } from '../../../tokens';
|
|
4
|
+
/**
|
|
5
|
+
* Configuration options for the {@link SegmentedInput} component.
|
|
6
|
+
*
|
|
7
|
+
* @template T - A record type mapping segment keys to their display labels (as TNode)
|
|
8
|
+
* @template K - The key type of the record (defaults to keyof T)
|
|
9
|
+
*/
|
|
3
10
|
export interface SegmentedInputOptions<T extends Record<string, TNode>, K extends keyof T = keyof T> {
|
|
11
|
+
/** A record mapping segment identifiers to their display content (text, icons, or any TNode) */
|
|
4
12
|
options: T;
|
|
13
|
+
/** The currently selected segment key */
|
|
5
14
|
value: Value<K>;
|
|
15
|
+
/** Callback invoked when a different segment is selected */
|
|
6
16
|
onChange?: (value: K) => void;
|
|
17
|
+
/** Visual size of the segmented control. @default 'md' */
|
|
7
18
|
size?: Value<ControlSize>;
|
|
19
|
+
/** Whether the segmented control is disabled. @default false */
|
|
8
20
|
disabled?: Value<boolean>;
|
|
21
|
+
/**
|
|
22
|
+
* Shape variant. `'pill'` uses fully rounded corners, `'squared'` uses control-like
|
|
23
|
+
* border-radius and taller padding to match the height of regular inputs like TextInput.
|
|
24
|
+
* @default 'pill'
|
|
25
|
+
*/
|
|
26
|
+
variant?: Value<'pill' | 'squared'>;
|
|
27
|
+
/**
|
|
28
|
+
* Theme color for the active segment indicator and text, using solid button-style coloring.
|
|
29
|
+
* When not set, uses the default white indicator with primary-tinted active text.
|
|
30
|
+
*/
|
|
31
|
+
color?: Value<ThemeColorName>;
|
|
9
32
|
}
|
|
10
|
-
|
|
33
|
+
/**
|
|
34
|
+
* A segmented control input that allows selecting one of several mutually exclusive options.
|
|
35
|
+
*
|
|
36
|
+
* Renders a horizontal row of clickable segments with a sliding indicator that animates
|
|
37
|
+
* to highlight the currently selected segment. Each segment is defined by a key-value pair
|
|
38
|
+
* in the `options` record, where keys serve as identifiers and values are rendered as
|
|
39
|
+
* segment labels (text, icons, or any TNode). The sliding indicator width and position
|
|
40
|
+
* are dynamically measured from the DOM using {@link ElementRect} and updated via
|
|
41
|
+
* `requestAnimationFrame`.
|
|
42
|
+
*
|
|
43
|
+
* @template T - A record type mapping segment keys to their display labels
|
|
44
|
+
* @param options - Configuration options for the segmented control
|
|
45
|
+
* @param children - Additional child nodes to render after the segmented control
|
|
46
|
+
* @returns A styled segmented control element with animated indicator
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```ts
|
|
50
|
+
* import { prop } from '@tempots/dom'
|
|
51
|
+
* import { SegmentedInput } from '@tempots/beatui'
|
|
52
|
+
*
|
|
53
|
+
* const view = prop<'list' | 'grid' | 'table'>('list')
|
|
54
|
+
* SegmentedInput({
|
|
55
|
+
* options: {
|
|
56
|
+
* list: 'List',
|
|
57
|
+
* grid: 'Grid',
|
|
58
|
+
* table: 'Table',
|
|
59
|
+
* },
|
|
60
|
+
* value: view,
|
|
61
|
+
* onChange: view.set,
|
|
62
|
+
* size: 'md',
|
|
63
|
+
* })
|
|
64
|
+
* ```
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```ts
|
|
68
|
+
* // With icon labels
|
|
69
|
+
* SegmentedInput({
|
|
70
|
+
* options: {
|
|
71
|
+
* light: Icon({ icon: 'line-md:sun' }),
|
|
72
|
+
* dark: Icon({ icon: 'line-md:moon' }),
|
|
73
|
+
* },
|
|
74
|
+
* value: prop<'light' | 'dark'>('light'),
|
|
75
|
+
* onChange: (v) => console.log('Theme:', v),
|
|
76
|
+
* })
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
export declare function SegmentedInput<T extends Record<string, TNode>>({ options, value, onChange, size, disabled, variant, color, }: SegmentedInputOptions<T, keyof T>, ...children: TNode[]): import("@tempots/dom").Renderable;
|
|
@@ -2,11 +2,41 @@ import { Value } from '@tempots/dom';
|
|
|
2
2
|
import { InputOptions } from './input-options';
|
|
3
3
|
import { DropdownOption } from './option';
|
|
4
4
|
import { BaseControllerOptions, ControllerOptions } from '../control';
|
|
5
|
+
/**
|
|
6
|
+
* Options for the {@link SelectTagsInput} component.
|
|
7
|
+
* Combines tag selection with a click-to-open dropdown menu.
|
|
8
|
+
*
|
|
9
|
+
* @typeParam T - The type of tag values.
|
|
10
|
+
*/
|
|
5
11
|
export type SelectTagsOptions<T> = {
|
|
12
|
+
/** The available dropdown options to choose from. */
|
|
6
13
|
options: Value<DropdownOption<T>[]>;
|
|
14
|
+
/**
|
|
15
|
+
* Custom equality function for comparing option values.
|
|
16
|
+
* @default (a, b) => a === b
|
|
17
|
+
*/
|
|
7
18
|
equality?: (a: T, b: T) => boolean;
|
|
19
|
+
/** Placeholder text shown when no tags are selected. */
|
|
8
20
|
placeholder?: Value<string>;
|
|
9
21
|
} & InputOptions<T[]>;
|
|
22
|
+
/**
|
|
23
|
+
* Renders selected values as removable tag chips with labels resolved from
|
|
24
|
+
* dropdown options. Shows a placeholder when no values are selected.
|
|
25
|
+
*
|
|
26
|
+
* @typeParam T - The type of tag values.
|
|
27
|
+
* @param opts - Options for the chips display.
|
|
28
|
+
* @returns A renderable chips component.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```ts
|
|
32
|
+
* Chips({
|
|
33
|
+
* values: prop(['react']),
|
|
34
|
+
* options: [{ type: 'value', value: 'react', label: 'React' }],
|
|
35
|
+
* equality: (a, b) => a === b,
|
|
36
|
+
* onRemove: v => console.log('Remove:', v),
|
|
37
|
+
* })
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
10
40
|
export declare function Chips<T>(opts: {
|
|
11
41
|
values: Value<T[]>;
|
|
12
42
|
placeholder?: Value<string>;
|
|
@@ -15,6 +45,45 @@ export declare function Chips<T>(opts: {
|
|
|
15
45
|
disabled?: Value<boolean>;
|
|
16
46
|
onRemove: (v: T) => void;
|
|
17
47
|
}): import("@tempots/dom").Renderable;
|
|
48
|
+
/**
|
|
49
|
+
* A multi-select tag input with a click-to-open dropdown menu.
|
|
50
|
+
*
|
|
51
|
+
* Selected values are displayed as removable chips. Clicking the input area
|
|
52
|
+
* opens a dropdown menu where items can be toggled on/off. Supports grouped
|
|
53
|
+
* options and custom equality comparisons.
|
|
54
|
+
*
|
|
55
|
+
* @typeParam T - The type of tag values.
|
|
56
|
+
* @param options - Configuration options for the select tags input.
|
|
57
|
+
* @returns A renderable select tags input component.
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```ts
|
|
61
|
+
* SelectTagsInput({
|
|
62
|
+
* value: prop<string[]>([]),
|
|
63
|
+
* options: [
|
|
64
|
+
* { type: 'value', value: 'red', label: 'Red' },
|
|
65
|
+
* { type: 'value', value: 'blue', label: 'Blue' },
|
|
66
|
+
* { type: 'value', value: 'green', label: 'Green' },
|
|
67
|
+
* ],
|
|
68
|
+
* placeholder: 'Select colors...',
|
|
69
|
+
* onChange: tags => console.log('Selected:', tags),
|
|
70
|
+
* })
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
18
73
|
export declare function SelectTagsInput<T>(options: SelectTagsOptions<T>): import("@tempots/dom").Renderable;
|
|
74
|
+
/**
|
|
75
|
+
* A base form control wrapper for {@link SelectTagsInput} using a raw controller.
|
|
76
|
+
*
|
|
77
|
+
* @typeParam T - The type of tag values.
|
|
78
|
+
* @param options - Base controller options for the select tags control.
|
|
79
|
+
* @returns A renderable form control component.
|
|
80
|
+
*/
|
|
19
81
|
export declare function BaseSelectTagsControl<T>(options: BaseControllerOptions<T[], SelectTagsOptions<T>>): any;
|
|
82
|
+
/**
|
|
83
|
+
* A full form control wrapper for {@link SelectTagsInput} with label, error, and description support.
|
|
84
|
+
*
|
|
85
|
+
* @typeParam T - The type of tag values.
|
|
86
|
+
* @param options - Controller options for the select tags control.
|
|
87
|
+
* @returns A renderable form control component with wrapper.
|
|
88
|
+
*/
|
|
20
89
|
export declare function SelectTagsControl<T>(options: ControllerOptions<T[], SelectTagsOptions<T>>): import("@tempots/dom").Renderable;
|
|
@@ -1,15 +1,97 @@
|
|
|
1
1
|
import { Value } from '@tempots/dom';
|
|
2
2
|
import { InputOptions } from './input-options';
|
|
3
3
|
import { Merge } from '@tempots/std';
|
|
4
|
+
/**
|
|
5
|
+
* Configuration options for the {@link SliderInput} component.
|
|
6
|
+
*
|
|
7
|
+
* Extends {@link InputOptions} for numeric values with properties to control the
|
|
8
|
+
* slider range boundaries and step increment.
|
|
9
|
+
*/
|
|
4
10
|
export type SliderInputOptions = Merge<InputOptions<number>, {
|
|
11
|
+
/** Step increment between valid values on the slider */
|
|
5
12
|
step?: Value<number>;
|
|
13
|
+
/** Minimum value of the slider range */
|
|
6
14
|
min?: Value<number>;
|
|
15
|
+
/** Maximum value of the slider range */
|
|
7
16
|
max?: Value<number>;
|
|
8
17
|
}>;
|
|
18
|
+
/**
|
|
19
|
+
* A range slider input component wrapping a native `<input type="range">` element.
|
|
20
|
+
*
|
|
21
|
+
* Renders a styled range slider inside an {@link InputContainer} with support for
|
|
22
|
+
* reactive min, max, and step values. The slider value is maintained as a number
|
|
23
|
+
* and emitted through the standard onChange/onInput/onBlur callbacks.
|
|
24
|
+
*
|
|
25
|
+
* @param options - Configuration options for the slider input
|
|
26
|
+
* @returns A styled range slider element wrapped in an InputContainer
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```ts
|
|
30
|
+
* import { prop } from '@tempots/dom'
|
|
31
|
+
* import { SliderInput } from '@tempots/beatui'
|
|
32
|
+
*
|
|
33
|
+
* const volume = prop(50)
|
|
34
|
+
* SliderInput({
|
|
35
|
+
* value: volume,
|
|
36
|
+
* onChange: volume.set,
|
|
37
|
+
* min: 0,
|
|
38
|
+
* max: 100,
|
|
39
|
+
* step: 1,
|
|
40
|
+
* })
|
|
41
|
+
* ```
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```ts
|
|
45
|
+
* // Fine-grained slider with decimal steps
|
|
46
|
+
* SliderInput({
|
|
47
|
+
* value: prop(0.5),
|
|
48
|
+
* onInput: (v) => console.log('Value:', v),
|
|
49
|
+
* min: 0,
|
|
50
|
+
* max: 1,
|
|
51
|
+
* step: 0.01,
|
|
52
|
+
* })
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
9
55
|
export declare const SliderInput: (options: SliderInputOptions) => import("@tempots/dom").Renderable;
|
|
56
|
+
/**
|
|
57
|
+
* Configuration options for the {@link NullableSliderInput} component.
|
|
58
|
+
*
|
|
59
|
+
* Similar to {@link SliderInputOptions} but accepts `null` as a valid value,
|
|
60
|
+
* representing an unset state. The slider visually defaults to the minimum value
|
|
61
|
+
* (or 0) when the value is null.
|
|
62
|
+
*/
|
|
10
63
|
export type NullableSliderInputOptions = Merge<InputOptions<number | null>, {
|
|
64
|
+
/** Step increment between valid values on the slider */
|
|
11
65
|
step?: Value<number>;
|
|
66
|
+
/** Minimum value of the slider range */
|
|
12
67
|
min?: Value<number>;
|
|
68
|
+
/** Maximum value of the slider range */
|
|
13
69
|
max?: Value<number>;
|
|
14
70
|
}>;
|
|
71
|
+
/**
|
|
72
|
+
* A nullable range slider input that supports an unset (null) state with a reset button.
|
|
73
|
+
*
|
|
74
|
+
* Behaves like {@link SliderInput} but allows a `null` value to represent "not set".
|
|
75
|
+
* When the value is null, the slider thumb visually rests at the minimum position
|
|
76
|
+
* (or 0 if no min is specified). A reset button appears when the value is non-null
|
|
77
|
+
* and the input is not disabled, allowing the user to clear back to null.
|
|
78
|
+
*
|
|
79
|
+
* @param options - Configuration options for the nullable slider input
|
|
80
|
+
* @returns A styled range slider element with optional reset button, wrapped in an InputContainer
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```ts
|
|
84
|
+
* import { prop } from '@tempots/dom'
|
|
85
|
+
* import { NullableSliderInput } from '@tempots/beatui'
|
|
86
|
+
*
|
|
87
|
+
* const brightness = prop<number | null>(null)
|
|
88
|
+
* NullableSliderInput({
|
|
89
|
+
* value: brightness,
|
|
90
|
+
* onChange: brightness.set,
|
|
91
|
+
* min: 0,
|
|
92
|
+
* max: 100,
|
|
93
|
+
* step: 5,
|
|
94
|
+
* })
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
15
97
|
export declare const NullableSliderInput: (options: NullableSliderInputOptions) => import("@tempots/dom").Renderable;
|
|
@@ -1,17 +1,75 @@
|
|
|
1
1
|
import { Value, TNode } from '@tempots/dom';
|
|
2
2
|
import { ControlSize } from '../../theme/types';
|
|
3
3
|
import { ThemeColorName } from '../../../tokens';
|
|
4
|
+
/**
|
|
5
|
+
* Configuration options for the {@link Switch} component.
|
|
6
|
+
*
|
|
7
|
+
* Defines the properties for a toggle switch including its value, event callbacks,
|
|
8
|
+
* optional on/off labels, visual size, theme color, and accessibility attributes.
|
|
9
|
+
*/
|
|
4
10
|
export type SwitchOptions = {
|
|
11
|
+
/** The current boolean state of the switch (on/off) */
|
|
5
12
|
value: Value<boolean>;
|
|
13
|
+
/** Callback invoked when the switch value changes (typically on click or keyboard toggle) */
|
|
6
14
|
onChange?: (value: boolean) => void;
|
|
15
|
+
/** Callback invoked on every input event (fires alongside onChange) */
|
|
7
16
|
onInput?: (value: boolean) => void;
|
|
17
|
+
/** Callback invoked when the switch loses focus */
|
|
8
18
|
onBlur?: () => void;
|
|
19
|
+
/** Optional label displayed when the switch is in the off state */
|
|
9
20
|
offLabel?: TNode;
|
|
21
|
+
/** Optional label displayed when the switch is in the on state */
|
|
10
22
|
onLabel?: TNode;
|
|
23
|
+
/** Whether the switch is disabled and cannot be toggled. @default false */
|
|
11
24
|
disabled?: Value<boolean>;
|
|
25
|
+
/** Visual size of the switch. @default 'md' */
|
|
12
26
|
size?: ControlSize;
|
|
27
|
+
/** Unique HTML id attribute for the switch element */
|
|
13
28
|
id?: string;
|
|
29
|
+
/** Theme color for the switch track when on. @default 'primary' */
|
|
14
30
|
color?: Value<ThemeColorName>;
|
|
31
|
+
/** Tab index for keyboard navigation order. @default 0 */
|
|
15
32
|
tabIndex?: Value<number>;
|
|
33
|
+
/** Whether to add vertical padding so the switch matches the height of text inputs at the same size. @default true */
|
|
34
|
+
matchInputHeight?: boolean;
|
|
16
35
|
};
|
|
17
|
-
|
|
36
|
+
/**
|
|
37
|
+
* A toggle switch component for boolean on/off states with animated thumb transition.
|
|
38
|
+
*
|
|
39
|
+
* Renders a custom switch control with ARIA `role="switch"` semantics, full keyboard
|
|
40
|
+
* support (Space and Enter to toggle), and a sliding thumb animation. The switch track
|
|
41
|
+
* color is theme-aware and configurable via the `color` property. Optional on/off labels
|
|
42
|
+
* appear inside the track and cross-fade based on the current state. The thumb position
|
|
43
|
+
* is calculated dynamically based on the track width and adapts to RTL layout direction.
|
|
44
|
+
*
|
|
45
|
+
* @param options - Configuration options for the switch
|
|
46
|
+
* @returns A styled switch element with animated thumb and optional labels
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```ts
|
|
50
|
+
* import { prop } from '@tempots/dom'
|
|
51
|
+
* import { Switch } from '@tempots/beatui'
|
|
52
|
+
*
|
|
53
|
+
* const enabled = prop(false)
|
|
54
|
+
* Switch({
|
|
55
|
+
* value: enabled,
|
|
56
|
+
* onChange: enabled.set,
|
|
57
|
+
* size: 'md',
|
|
58
|
+
* color: 'primary',
|
|
59
|
+
* })
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```ts
|
|
64
|
+
* // With on/off labels
|
|
65
|
+
* Switch({
|
|
66
|
+
* value: prop(true),
|
|
67
|
+
* onChange: (v) => console.log('Toggled:', v),
|
|
68
|
+
* onLabel: 'ON',
|
|
69
|
+
* offLabel: 'OFF',
|
|
70
|
+
* color: 'green',
|
|
71
|
+
* size: 'lg',
|
|
72
|
+
* })
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export declare const Switch: ({ value, onChange, onInput, onBlur, offLabel, onLabel, disabled, size, id, color, tabIndex, matchInputHeight, }: SwitchOptions) => import("@tempots/dom").Renderable;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { TNode, Value } from '@tempots/dom';
|
|
2
|
+
import { ControlSize } from '../../theme/types';
|
|
3
|
+
export interface TagInputOptions {
|
|
4
|
+
/** Current list of tag values */
|
|
5
|
+
values: Value<string[]>;
|
|
6
|
+
/** Callback when tags change */
|
|
7
|
+
onChange?: (values: string[]) => void;
|
|
8
|
+
/** Placeholder text when no tags and input is empty */
|
|
9
|
+
placeholder?: Value<string>;
|
|
10
|
+
/** Control size */
|
|
11
|
+
size?: Value<ControlSize>;
|
|
12
|
+
/** Whether the input is disabled */
|
|
13
|
+
disabled?: Value<boolean>;
|
|
14
|
+
/** Maximum number of tags allowed */
|
|
15
|
+
maxTags?: Value<number>;
|
|
16
|
+
/** Whether the input has an error */
|
|
17
|
+
hasError?: Value<boolean>;
|
|
18
|
+
}
|
|
19
|
+
export declare function TagInput(options: TagInputOptions): TNode;
|