@webflare/ui 0.0.0-stage → 0.1.1
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/LICENSE +21 -0
- package/README.md +234 -2
- package/dist/AccordionRoot-CNPxdTtA.cjs +182 -0
- package/dist/AccordionRoot-CmK-jaZz.js +178 -0
- package/dist/AlertRoot-B-M0xDFC.js +274 -0
- package/dist/AlertRoot-DRRwRAhA.cjs +278 -0
- package/dist/BadgeRoot-CzUSTR0W.cjs +136 -0
- package/dist/BadgeRoot-ffbcCd5B.js +132 -0
- package/dist/Button-A9BiKfSl.js +240 -0
- package/dist/Button-CwVAoJjO.cjs +244 -0
- package/dist/CardBody-BEbTLrA2.cjs +21 -0
- package/dist/CardBody-DbSW-Ssx.js +16 -0
- package/dist/CardHeader-Cx1pE9No.cjs +36 -0
- package/dist/CardHeader-DDRGpYth.js +31 -0
- package/dist/CardRoot-CZpgncJQ.cjs +49 -0
- package/dist/CardRoot-ia9NDth1.js +44 -0
- package/dist/CarouselItem-CJ9Kj2lU.cjs +21 -0
- package/dist/CarouselItem-Crs28MA9.js +16 -0
- package/dist/CarouselNavigation-BUZyy5GA.cjs +53 -0
- package/dist/CarouselNavigation-aM0v6IoI.js +48 -0
- package/dist/CarouselRoot-Co9IuVve.cjs +45 -0
- package/dist/CarouselRoot-DlGJZCox.js +40 -0
- package/dist/ControlSwitch-C-pzHgWm.cjs +188 -0
- package/dist/ControlSwitch-C0Rj6fSW.js +184 -0
- package/dist/DialogRoot-BiH9G8Jm.js +170 -0
- package/dist/DialogRoot-C6icP9Fb.cjs +174 -0
- package/dist/FieldBase-BwD6Dput.js +42 -0
- package/dist/FieldBase-X1FWOqPU.cjs +47 -0
- package/dist/FieldCheckbox-CYuyWgbl.cjs +139 -0
- package/dist/FieldCheckbox-DsQsNeX7.js +134 -0
- package/dist/FieldError-BPjk-uZc.js +36 -0
- package/dist/FieldError-XRz98TFe.cjs +41 -0
- package/dist/FieldFooter-05GxwrFg.cjs +29 -0
- package/dist/FieldFooter-CE598o7n.js +24 -0
- package/dist/FieldInput-bnC_fTws.cjs +155 -0
- package/dist/FieldInput-h3MgGC6J.js +150 -0
- package/dist/FieldLabel-BYlOJvXY.js +37 -0
- package/dist/FieldLabel-DBKhMbql.cjs +42 -0
- package/dist/FieldMessage-C83iNsEp.cjs +40 -0
- package/dist/FieldMessage-GyO_RQdK.js +35 -0
- package/dist/FieldRadioGroup-CLWFr3aL.cjs +158 -0
- package/dist/FieldRadioGroup-CmQ5JOjv.js +153 -0
- package/dist/FieldRequired-7fJtYCdt.js +16 -0
- package/dist/FieldRequired-CJtyr3cL.cjs +21 -0
- package/dist/FieldSelect-D6X_BwTS.js +239 -0
- package/dist/FieldSelect-DVcgCsHL.cjs +243 -0
- package/dist/FieldSwitch-C7VMSMoE.cjs +71 -0
- package/dist/FieldSwitch-DqagDsKK.js +66 -0
- package/dist/FieldTextarea-DBufxMQf.cjs +148 -0
- package/dist/FieldTextarea-_BtGkI0v.js +143 -0
- package/dist/FieldUrl-CcIOyPSl.js +387 -0
- package/dist/FieldUrl-DNnXDfBR.cjs +391 -0
- package/dist/FlyoutDropdown-Bw3pD8Tk.cjs +90 -0
- package/dist/FlyoutDropdown-ByXW9lqH.js +74 -0
- package/dist/FlyoutRoot-CuXnqpf8.js +110 -0
- package/dist/FlyoutRoot-DUoOHEoX.cjs +115 -0
- package/dist/FormPrompt-BDAVKk5i.cjs +63 -0
- package/dist/FormPrompt-BuS1lg-K.js +58 -0
- package/dist/FormPromptFooter-BhwWsaib.cjs +21 -0
- package/dist/FormPromptFooter-BrUOs40t.js +16 -0
- package/dist/HeroLead-BU-74-fX.js +151 -0
- package/dist/HeroLead-D52JBlM2.cjs +155 -0
- package/dist/ListItem-1sYxrNuv.cjs +164 -0
- package/dist/ListItem-rD49tsLw.js +148 -0
- package/dist/ListRoot-BRrC79y6.cjs +42 -0
- package/dist/ListRoot-CP7smMl_.js +37 -0
- package/dist/Loader-CMEggjED.cjs +121 -0
- package/dist/Loader-DSLPdX6P.js +116 -0
- package/dist/PricingCardBadge-DoHnRqTM.cjs +25 -0
- package/dist/PricingCardBadge-lh3Oq5fB.js +20 -0
- package/dist/PricingCardBody--EB7FzUU.cjs +60 -0
- package/dist/PricingCardBody-Dai1zKDL.js +49 -0
- package/dist/PricingCardHeader-DCEG6BUA.js +39 -0
- package/dist/PricingCardHeader-yebSjw8M.cjs +44 -0
- package/dist/PricingCardPricing-DvdbyMEh.cjs +30 -0
- package/dist/PricingCardPricing-Vbs2D8Fm.js +25 -0
- package/dist/PricingCardRoot-B9ztC1u9.cjs +46 -0
- package/dist/PricingCardRoot-Dagig8jr.js +41 -0
- package/dist/ProgressRoot-BV_wQKYv.js +251 -0
- package/dist/ProgressRoot-CWWNmB99.cjs +255 -0
- package/dist/SwitchRoot-CcipiBzA.cjs +61 -0
- package/dist/SwitchRoot-DGFu9ZWR.js +56 -0
- package/dist/TabItem--4wiBton.cjs +114 -0
- package/dist/TabItem-BTIrtLtp.js +104 -0
- package/dist/TabRoot-BNp4_dI_.cjs +77 -0
- package/dist/TabRoot-DDDJe5FC.js +72 -0
- package/dist/carousel-BrCOR927.cjs +144 -0
- package/dist/carousel-CBw9xA_6.js +139 -0
- package/dist/choiceStyles-DIVBtoZF.cjs +175 -0
- package/dist/choiceStyles-DRjL1Y2d.js +164 -0
- package/dist/components/Accordion/AccordionRoot.vue.d.ts +31 -0
- package/dist/components/Accordion/index.d.ts +59 -0
- package/dist/components/Accordion/styles.d.ts +67 -0
- package/dist/components/Accordion/types.d.ts +15 -0
- package/dist/components/Alert/AlertRoot.vue.d.ts +38 -0
- package/dist/components/Alert/index.d.ts +54 -0
- package/dist/components/Alert/styles.d.ts +132 -0
- package/dist/components/Alert/types.d.ts +6 -0
- package/dist/components/Badge/BadgeRoot.vue.d.ts +26 -0
- package/dist/components/Badge/index.d.ts +49 -0
- package/dist/components/Badge/styles.d.ts +94 -0
- package/dist/components/Button/Button.vue.d.ts +26 -0
- package/dist/components/Button/index.d.ts +4 -0
- package/dist/components/Button/styles.d.ts +140 -0
- package/dist/components/Card/CardBody.vue.d.ts +17 -0
- package/dist/components/Card/CardHeader.vue.d.ts +25 -0
- package/dist/components/Card/CardRoot.vue.d.ts +39 -0
- package/dist/components/Card/index.d.ts +98 -0
- package/dist/components/Card/styles.d.ts +169 -0
- package/dist/components/Card/types.d.ts +8 -0
- package/dist/components/Carousel/CarouselItem.vue.d.ts +17 -0
- package/dist/components/Carousel/CarouselNavigation.vue.d.ts +30 -0
- package/dist/components/Carousel/CarouselRoot.vue.d.ts +30 -0
- package/dist/components/Carousel/index.d.ts +117 -0
- package/dist/components/Carousel/styles.d.ts +1 -0
- package/dist/components/Carousel/types.d.ts +11 -0
- package/dist/components/Dialog/DialogRoot.vue.d.ts +39 -0
- package/dist/components/Dialog/index.d.ts +68 -0
- package/dist/components/Dialog/styles.d.ts +1 -0
- package/dist/components/Field/FieldBase.vue.d.ts +22 -0
- package/dist/components/Field/FieldCheckbox.vue.d.ts +15 -0
- package/dist/components/Field/FieldError.vue.d.ts +10 -0
- package/dist/components/Field/FieldFooter.vue.d.ts +3 -0
- package/dist/components/Field/FieldInput.vue.d.ts +21 -0
- package/dist/components/Field/FieldLabel.vue.d.ts +13 -0
- package/dist/components/Field/FieldMessage.vue.d.ts +10 -0
- package/dist/components/Field/FieldRadioGroup.vue.d.ts +19 -0
- package/dist/components/Field/FieldRequired.vue.d.ts +3 -0
- package/dist/components/Field/FieldSelect.vue.d.ts +20 -0
- package/dist/components/Field/FieldSwitch.vue.d.ts +18 -0
- package/dist/components/Field/FieldTextarea.vue.d.ts +19 -0
- package/dist/components/Field/FieldUrl.vue.d.ts +24 -0
- package/dist/components/Field/index.d.ts +220 -0
- package/dist/components/Field/styles.d.ts +20 -0
- package/dist/components/Field/types.d.ts +17 -0
- package/dist/components/Flyout/FlyoutDropdown.vue.d.ts +19 -0
- package/dist/components/Flyout/FlyoutRoot.vue.d.ts +43 -0
- package/dist/components/Flyout/index.d.ts +74 -0
- package/dist/components/Flyout/styles.d.ts +1 -0
- package/dist/components/Flyout/types.d.ts +10 -0
- package/dist/components/Form/FormPrompt.vue.d.ts +43 -0
- package/dist/components/Form/FormPromptFooter.vue.d.ts +20 -0
- package/dist/components/Form/index.d.ts +72 -0
- package/dist/components/Form/styles.d.ts +1 -0
- package/dist/components/Hero/HeroLead.vue.d.ts +39 -0
- package/dist/components/Hero/index.d.ts +49 -0
- package/dist/components/Hero/styles.d.ts +111 -0
- package/dist/components/List/ListItem.vue.d.ts +24 -0
- package/dist/components/List/ListRoot.vue.d.ts +26 -0
- package/dist/components/List/index.d.ts +74 -0
- package/dist/components/List/styles.d.ts +90 -0
- package/dist/components/List/types.d.ts +12 -0
- package/dist/components/Loader/Loader.vue.d.ts +14 -0
- package/dist/components/Loader/index.d.ts +4 -0
- package/dist/components/Loader/styles.d.ts +62 -0
- package/dist/components/PricingCard/PricingCardBadge.vue.d.ts +20 -0
- package/dist/components/PricingCard/PricingCardBody.vue.d.ts +20 -0
- package/dist/components/PricingCard/PricingCardHeader.vue.d.ts +28 -0
- package/dist/components/PricingCard/PricingCardPricing.vue.d.ts +22 -0
- package/dist/components/PricingCard/PricingCardRoot.vue.d.ts +27 -0
- package/dist/components/PricingCard/index.d.ts +138 -0
- package/dist/components/PricingCard/styles.d.ts +10 -0
- package/dist/components/PricingCard/types.d.ts +21 -0
- package/dist/components/Progress/ProgressRoot.vue.d.ts +41 -0
- package/dist/components/Progress/index.d.ts +81 -0
- package/dist/components/Progress/styles.d.ts +560 -0
- package/dist/components/Progress/types.d.ts +4 -0
- package/dist/components/Switch/SwitchRoot.vue.d.ts +25 -0
- package/dist/components/Switch/index.d.ts +35 -0
- package/dist/components/Switch/types.d.ts +2 -0
- package/dist/components/Tab/TabItem.vue.d.ts +19 -0
- package/dist/components/Tab/TabRoot.vue.d.ts +32 -0
- package/dist/components/Tab/index.d.ts +97 -0
- package/dist/components/Tab/styles.d.ts +1 -0
- package/dist/components/Tab/types.d.ts +14 -0
- package/dist/composables/carousel.d.ts +29 -0
- package/dist/composables/flyout.d.ts +30 -0
- package/dist/composables/form.d.ts +18 -0
- package/dist/composables/injection-key.d.ts +2 -0
- package/dist/context-Bk4uIMQS.js +4 -0
- package/dist/context-cK3z69qT.cjs +8 -0
- package/dist/controlStyles-Bf6fx2rL.js +92 -0
- package/dist/controlStyles-CClWH9EG.cjs +96 -0
- package/dist/css-BRRSQx3P.cjs +21 -0
- package/dist/css-DWYlz0rn.js +16 -0
- package/dist/flyout-BaVoXePQ.cjs +67 -0
- package/dist/flyout-QHh1jKmV.js +62 -0
- package/dist/form-BtxAsfYs.cjs +34 -0
- package/dist/form-CB12X8xv.js +29 -0
- package/dist/index.cjs +233 -0
- package/dist/index.d.ts +41 -0
- package/dist/index.js +168 -0
- package/dist/injection-key-BQYV9vIr.js +5 -0
- package/dist/injection-key-DPb_AXnh.cjs +10 -0
- package/dist/internal/controls/ControlCheckbox.vue.d.ts +23 -0
- package/dist/internal/controls/ControlInput.vue.d.ts +28 -0
- package/dist/internal/controls/ControlRadioGroup.vue.d.ts +24 -0
- package/dist/internal/controls/ControlSelect.vue.d.ts +27 -0
- package/dist/internal/controls/ControlSwitch.vue.d.ts +25 -0
- package/dist/internal/controls/ControlTextarea.vue.d.ts +27 -0
- package/dist/internal/controls/ControlUrl.vue.d.ts +31 -0
- package/dist/internal/controls/choiceStyles.d.ts +64 -0
- package/dist/internal/controls/context.d.ts +10 -0
- package/dist/internal/controls/controlStyles.d.ts +54 -0
- package/dist/internal/controls/index.d.ts +14 -0
- package/dist/internal/controls/selectStyles.d.ts +2 -0
- package/dist/internal/controls/switchStyles.d.ts +46 -0
- package/dist/internal/controls/types.d.ts +10 -0
- package/dist/internal/controls/urlStyles.d.ts +84 -0
- package/dist/internal/controls/urlUtils.d.ts +14 -0
- package/dist/internal/controls/useFieldControl.d.ts +17 -0
- package/dist/internal/css.d.ts +24 -0
- package/dist/nuxt/module.d.mts +21 -0
- package/dist/nuxt/module.json +9 -0
- package/dist/nuxt/module.mjs +126 -0
- package/dist/nuxt/types.d.mts +3 -0
- package/dist/nuxt-entries.json +49 -0
- package/dist/panda/buildinfo.json +5432 -0
- package/dist/panda/lib.json +18 -0
- package/dist/panda/preset.mjs +4092 -0
- package/dist/plugin.d.ts +3 -0
- package/dist/preset/index.cjs +692 -0
- package/dist/preset/index.d.cts +18 -0
- package/dist/preset/index.d.ts +18 -0
- package/dist/preset/index.js +656 -0
- package/dist/style.css +153 -0
- package/dist/styled-system/css/conditions.d.ts +7 -0
- package/dist/styled-system/css/conditions.js +32 -0
- package/dist/styled-system/css/css.d.ts +22 -0
- package/dist/styled-system/css/css.js +63 -0
- package/dist/styled-system/css/cva.d.ts +5 -0
- package/dist/styled-system/css/cva.js +51 -0
- package/dist/styled-system/css/cx.d.ts +6 -0
- package/dist/styled-system/css/cx.js +16 -0
- package/dist/styled-system/css/first-that-works.d.ts +22 -0
- package/dist/styled-system/css/first-that-works.js +1 -0
- package/dist/styled-system/css/index.d.ts +8 -0
- package/dist/styled-system/css/index.js +8 -0
- package/dist/styled-system/css/keyframes.d.ts +5 -0
- package/dist/styled-system/css/keyframes.js +8 -0
- package/dist/styled-system/css/position-try.d.ts +5 -0
- package/dist/styled-system/css/position-try.js +11 -0
- package/dist/styled-system/css/sva.d.ts +3 -0
- package/dist/styled-system/css/sva.js +49 -0
- package/dist/styled-system/css/view-transition.d.ts +7 -0
- package/dist/styled-system/css/view-transition.js +18 -0
- package/dist/styled-system/helpers.d.ts +67 -0
- package/dist/styled-system/helpers.js +624 -0
- package/dist/styled-system/patterns/aspect-ratio.d.ts +19 -0
- package/dist/styled-system/patterns/aspect-ratio.js +37 -0
- package/dist/styled-system/patterns/bleed.d.ts +20 -0
- package/dist/styled-system/patterns/bleed.js +30 -0
- package/dist/styled-system/patterns/box.d.ts +17 -0
- package/dist/styled-system/patterns/box.js +16 -0
- package/dist/styled-system/patterns/center.d.ts +19 -0
- package/dist/styled-system/patterns/center.js +22 -0
- package/dist/styled-system/patterns/circle.d.ts +19 -0
- package/dist/styled-system/patterns/circle.js +26 -0
- package/dist/styled-system/patterns/container.d.ts +17 -0
- package/dist/styled-system/patterns/container.js +37 -0
- package/dist/styled-system/patterns/cq.d.ts +21 -0
- package/dist/styled-system/patterns/cq.js +24 -0
- package/dist/styled-system/patterns/divider.d.ts +22 -0
- package/dist/styled-system/patterns/divider.js +31 -0
- package/dist/styled-system/patterns/flex.d.ts +25 -0
- package/dist/styled-system/patterns/flex.js +27 -0
- package/dist/styled-system/patterns/float.d.ts +23 -0
- package/dist/styled-system/patterns/float.js +78 -0
- package/dist/styled-system/patterns/grid-item.d.ts +24 -0
- package/dist/styled-system/patterns/grid-item.js +26 -0
- package/dist/styled-system/patterns/grid.d.ts +24 -0
- package/dist/styled-system/patterns/grid.js +30 -0
- package/dist/styled-system/patterns/hstack.d.ts +20 -0
- package/dist/styled-system/patterns/hstack.js +27 -0
- package/dist/styled-system/patterns/index.d.ts +20 -0
- package/dist/styled-system/patterns/index.js +20 -0
- package/dist/styled-system/patterns/link-overlay.d.ts +17 -0
- package/dist/styled-system/patterns/link-overlay.js +25 -0
- package/dist/styled-system/patterns/runtime.js +25 -0
- package/dist/styled-system/patterns/spacer.d.ts +20 -0
- package/dist/styled-system/patterns/spacer.js +25 -0
- package/dist/styled-system/patterns/square.d.ts +19 -0
- package/dist/styled-system/patterns/square.js +25 -0
- package/dist/styled-system/patterns/stack.d.ts +22 -0
- package/dist/styled-system/patterns/stack.js +30 -0
- package/dist/styled-system/patterns/visually-hidden.d.ts +17 -0
- package/dist/styled-system/patterns/visually-hidden.js +19 -0
- package/dist/styled-system/patterns/vstack.d.ts +20 -0
- package/dist/styled-system/patterns/vstack.js +27 -0
- package/dist/styled-system/patterns/wrap.d.ts +23 -0
- package/dist/styled-system/patterns/wrap.js +26 -0
- package/dist/styled-system/recipes/runtime.js +133 -0
- package/dist/styled-system/tokens/index.d.ts +8 -0
- package/dist/styled-system/tokens/index.js +18 -0
- package/dist/styled-system/types/index.d.ts +5 -0
- package/dist/styled-system/types/pattern.d.ts +26 -0
- package/dist/styled-system/types/recipe.d.ts +89 -0
- package/dist/styled-system/types/register.d.ts +36 -0
- package/dist/styled-system/types/system.d.ts +1880 -0
- package/dist/styled-system/types/tokens.d.ts +60 -0
- package/dist/styles-8a0pzMRc.js +88 -0
- package/dist/styles-BU90HeKh.js +72 -0
- package/dist/styles-BvLgeNpb.cjs +42 -0
- package/dist/styles-CK7DJVwO.js +72 -0
- package/dist/styles-Cjlvkx8i.cjs +92 -0
- package/dist/styles-CuN4CHU4.cjs +76 -0
- package/dist/styles-WOyB8APA.js +38 -0
- package/dist/styles-_I-I4HYc.cjs +76 -0
- package/dist/types-B1vOzUjg.js +5 -0
- package/dist/types-Boy3jvmf.js +4 -0
- package/dist/types-CBApDh_h.js +149 -0
- package/dist/types-D2v625uE.cjs +8 -0
- package/dist/types-DzEK6W6x.cjs +16 -0
- package/dist/types-cLDeFros.cjs +166 -0
- package/dist/useFieldControl-BkQi1zak.js +29 -0
- package/dist/useFieldControl-CEI7IRAa.cjs +34 -0
- package/dist/vue/AccordionRoot.cjs +6 -0
- package/dist/vue/AccordionRoot.d.ts +1 -0
- package/dist/vue/AccordionRoot.js +1 -0
- package/dist/vue/AlertRoot.cjs +6 -0
- package/dist/vue/AlertRoot.d.ts +1 -0
- package/dist/vue/AlertRoot.js +1 -0
- package/dist/vue/BadgeRoot.cjs +6 -0
- package/dist/vue/BadgeRoot.d.ts +1 -0
- package/dist/vue/BadgeRoot.js +1 -0
- package/dist/vue/Button.cjs +6 -0
- package/dist/vue/Button.d.ts +1 -0
- package/dist/vue/Button.js +1 -0
- package/dist/vue/CardBody.cjs +6 -0
- package/dist/vue/CardBody.d.ts +1 -0
- package/dist/vue/CardBody.js +1 -0
- package/dist/vue/CardHeader.cjs +6 -0
- package/dist/vue/CardHeader.d.ts +1 -0
- package/dist/vue/CardHeader.js +1 -0
- package/dist/vue/CardRoot.cjs +6 -0
- package/dist/vue/CardRoot.d.ts +1 -0
- package/dist/vue/CardRoot.js +1 -0
- package/dist/vue/CarouselItem.cjs +6 -0
- package/dist/vue/CarouselItem.d.ts +1 -0
- package/dist/vue/CarouselItem.js +1 -0
- package/dist/vue/CarouselNavigation.cjs +6 -0
- package/dist/vue/CarouselNavigation.d.ts +1 -0
- package/dist/vue/CarouselNavigation.js +1 -0
- package/dist/vue/CarouselRoot.cjs +6 -0
- package/dist/vue/CarouselRoot.d.ts +1 -0
- package/dist/vue/CarouselRoot.js +1 -0
- package/dist/vue/DialogRoot.cjs +6 -0
- package/dist/vue/DialogRoot.d.ts +1 -0
- package/dist/vue/DialogRoot.js +1 -0
- package/dist/vue/FieldBase.cjs +6 -0
- package/dist/vue/FieldBase.d.ts +1 -0
- package/dist/vue/FieldBase.js +1 -0
- package/dist/vue/FieldCheckbox.cjs +6 -0
- package/dist/vue/FieldCheckbox.d.ts +1 -0
- package/dist/vue/FieldCheckbox.js +1 -0
- package/dist/vue/FieldError.cjs +6 -0
- package/dist/vue/FieldError.d.ts +1 -0
- package/dist/vue/FieldError.js +1 -0
- package/dist/vue/FieldInput.cjs +6 -0
- package/dist/vue/FieldInput.d.ts +1 -0
- package/dist/vue/FieldInput.js +1 -0
- package/dist/vue/FieldLabel.cjs +6 -0
- package/dist/vue/FieldLabel.d.ts +1 -0
- package/dist/vue/FieldLabel.js +1 -0
- package/dist/vue/FieldMessage.cjs +6 -0
- package/dist/vue/FieldMessage.d.ts +1 -0
- package/dist/vue/FieldMessage.js +1 -0
- package/dist/vue/FieldRadioGroup.cjs +6 -0
- package/dist/vue/FieldRadioGroup.d.ts +1 -0
- package/dist/vue/FieldRadioGroup.js +1 -0
- package/dist/vue/FieldRequired.cjs +6 -0
- package/dist/vue/FieldRequired.d.ts +1 -0
- package/dist/vue/FieldRequired.js +1 -0
- package/dist/vue/FieldSelect.cjs +6 -0
- package/dist/vue/FieldSelect.d.ts +1 -0
- package/dist/vue/FieldSelect.js +1 -0
- package/dist/vue/FieldSwitch.cjs +6 -0
- package/dist/vue/FieldSwitch.d.ts +1 -0
- package/dist/vue/FieldSwitch.js +1 -0
- package/dist/vue/FieldTextarea.cjs +6 -0
- package/dist/vue/FieldTextarea.d.ts +1 -0
- package/dist/vue/FieldTextarea.js +1 -0
- package/dist/vue/FieldUrl.cjs +6 -0
- package/dist/vue/FieldUrl.d.ts +1 -0
- package/dist/vue/FieldUrl.js +1 -0
- package/dist/vue/FlyoutDropdown.cjs +6 -0
- package/dist/vue/FlyoutDropdown.d.ts +1 -0
- package/dist/vue/FlyoutDropdown.js +1 -0
- package/dist/vue/FlyoutRoot.cjs +6 -0
- package/dist/vue/FlyoutRoot.d.ts +1 -0
- package/dist/vue/FlyoutRoot.js +1 -0
- package/dist/vue/FormPrompt.cjs +6 -0
- package/dist/vue/FormPrompt.d.ts +1 -0
- package/dist/vue/FormPrompt.js +1 -0
- package/dist/vue/FormPromptFooter.cjs +6 -0
- package/dist/vue/FormPromptFooter.d.ts +1 -0
- package/dist/vue/FormPromptFooter.js +1 -0
- package/dist/vue/HeroLead.cjs +6 -0
- package/dist/vue/HeroLead.d.ts +1 -0
- package/dist/vue/HeroLead.js +1 -0
- package/dist/vue/ListItem.cjs +6 -0
- package/dist/vue/ListItem.d.ts +1 -0
- package/dist/vue/ListItem.js +1 -0
- package/dist/vue/ListRoot.cjs +6 -0
- package/dist/vue/ListRoot.d.ts +1 -0
- package/dist/vue/ListRoot.js +1 -0
- package/dist/vue/Loader.cjs +6 -0
- package/dist/vue/Loader.d.ts +1 -0
- package/dist/vue/Loader.js +1 -0
- package/dist/vue/PricingCardBadge.cjs +6 -0
- package/dist/vue/PricingCardBadge.d.ts +1 -0
- package/dist/vue/PricingCardBadge.js +1 -0
- package/dist/vue/PricingCardBody.cjs +6 -0
- package/dist/vue/PricingCardBody.d.ts +1 -0
- package/dist/vue/PricingCardBody.js +1 -0
- package/dist/vue/PricingCardHeader.cjs +6 -0
- package/dist/vue/PricingCardHeader.d.ts +1 -0
- package/dist/vue/PricingCardHeader.js +1 -0
- package/dist/vue/PricingCardPricing.cjs +6 -0
- package/dist/vue/PricingCardPricing.d.ts +1 -0
- package/dist/vue/PricingCardPricing.js +1 -0
- package/dist/vue/PricingCardRoot.cjs +6 -0
- package/dist/vue/PricingCardRoot.d.ts +1 -0
- package/dist/vue/PricingCardRoot.js +1 -0
- package/dist/vue/ProgressRoot.cjs +6 -0
- package/dist/vue/ProgressRoot.d.ts +1 -0
- package/dist/vue/ProgressRoot.js +1 -0
- package/dist/vue/SwitchRoot.cjs +6 -0
- package/dist/vue/SwitchRoot.d.ts +1 -0
- package/dist/vue/SwitchRoot.js +1 -0
- package/dist/vue/TabItem.cjs +6 -0
- package/dist/vue/TabItem.d.ts +1 -0
- package/dist/vue/TabItem.js +1 -0
- package/dist/vue/TabRoot.cjs +6 -0
- package/dist/vue/TabRoot.d.ts +1 -0
- package/dist/vue/TabRoot.js +1 -0
- package/dist/vue/useCarousel.cjs +3 -0
- package/dist/vue/useCarousel.d.ts +1 -0
- package/dist/vue/useCarousel.js +1 -0
- package/dist/vue/useFlyout.cjs +3 -0
- package/dist/vue/useFlyout.d.ts +1 -0
- package/dist/vue/useFlyout.js +1 -0
- package/dist/vue/useFormData.cjs +3 -0
- package/dist/vue/useFormData.d.ts +1 -0
- package/dist/vue/useFormData.js +1 -0
- package/dist/vue-components.d.ts +17 -0
- package/package.json +172 -4
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { n as tabStyles, t as TabItem_default } from "./TabItem-BTIrtLtp.js";
|
|
2
|
+
import { t as withCss } from "./css-DWYlz0rn.js";
|
|
3
|
+
import { Fragment, createBlock, createElementBlock, createVNode, defineComponent, normalizeClass, openBlock, ref, renderList, renderSlot, unref, watch, withCtx } from "vue";
|
|
4
|
+
import { TabsList, TabsRoot } from "reka-ui";
|
|
5
|
+
// src/components/Tab/TabRoot.vue
|
|
6
|
+
var TabRoot_default = /* @__PURE__ */ defineComponent({
|
|
7
|
+
__name: "TabRoot",
|
|
8
|
+
props: {
|
|
9
|
+
modelValue: {},
|
|
10
|
+
defaultValue: {},
|
|
11
|
+
orientation: { default: "horizontal" },
|
|
12
|
+
loop: {
|
|
13
|
+
type: Boolean,
|
|
14
|
+
default: true
|
|
15
|
+
},
|
|
16
|
+
items: { default: () => [] },
|
|
17
|
+
css: {}
|
|
18
|
+
},
|
|
19
|
+
emits: ["update:modelValue", "change"],
|
|
20
|
+
setup(__props, { emit: __emit }) {
|
|
21
|
+
const props = __props;
|
|
22
|
+
const emit = __emit;
|
|
23
|
+
const internalValue = ref(props.modelValue ?? props.defaultValue ?? void 0);
|
|
24
|
+
watch(() => props.modelValue, (value) => {
|
|
25
|
+
internalValue.value = value;
|
|
26
|
+
});
|
|
27
|
+
const styles = tabStyles.raw();
|
|
28
|
+
const handleUpdate = (value) => {
|
|
29
|
+
const stringValue = String(value);
|
|
30
|
+
const oldValue = internalValue.value;
|
|
31
|
+
const oldIndex = props.items.findIndex((i) => i.value === oldValue);
|
|
32
|
+
const newIndex = props.items.findIndex((i) => i.value === stringValue);
|
|
33
|
+
const direction = oldIndex !== -1 && newIndex !== -1 && newIndex < oldIndex ? "prev" : "next";
|
|
34
|
+
internalValue.value = stringValue;
|
|
35
|
+
emit("update:modelValue", stringValue);
|
|
36
|
+
emit("change", {
|
|
37
|
+
value: stringValue,
|
|
38
|
+
direction
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
return (_ctx, _cache) => {
|
|
42
|
+
return openBlock(), createBlock(unref(TabsRoot), {
|
|
43
|
+
"model-value": internalValue.value,
|
|
44
|
+
orientation: __props.orientation,
|
|
45
|
+
"onUpdate:modelValue": handleUpdate
|
|
46
|
+
}, {
|
|
47
|
+
default: withCtx(() => [createVNode(unref(TabsList), {
|
|
48
|
+
class: normalizeClass(unref(withCss)(unref(styles).root, props.css?.root)),
|
|
49
|
+
loop: __props.loop
|
|
50
|
+
}, {
|
|
51
|
+
default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item) => {
|
|
52
|
+
return openBlock(), createBlock(TabItem_default, {
|
|
53
|
+
key: item.value,
|
|
54
|
+
value: item.value,
|
|
55
|
+
label: item.label,
|
|
56
|
+
icon: item.icon,
|
|
57
|
+
disabled: item.disabled
|
|
58
|
+
}, null, 8, [
|
|
59
|
+
"value",
|
|
60
|
+
"label",
|
|
61
|
+
"icon",
|
|
62
|
+
"disabled"
|
|
63
|
+
]);
|
|
64
|
+
}), 128)), renderSlot(_ctx.$slots, "default")]),
|
|
65
|
+
_: 3
|
|
66
|
+
}, 8, ["class", "loop"])]),
|
|
67
|
+
_: 3
|
|
68
|
+
}, 8, ["model-value", "orientation"]);
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
export { TabRoot_default as t };
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
let vue = require("vue");
|
|
2
|
+
// src/composables/carousel.ts
|
|
3
|
+
/** Minimum time between two wheel-driven moves, so one gesture moves one step. */
|
|
4
|
+
var WHEEL_COOLDOWN_MS = 400;
|
|
5
|
+
/**
|
|
6
|
+
* Carousel scrolling for `item` and `viewport` modes.
|
|
7
|
+
*
|
|
8
|
+
* Navigation uses the scroller's overflow geometry (`scrollTo` + item offsets),
|
|
9
|
+
* not IntersectionObserver visibility. Observer callbacks only toggle the
|
|
10
|
+
* `visible` class — a `threshold` of `1` never marked items visible when the
|
|
11
|
+
* viewport was smaller than an item (issue #11).
|
|
12
|
+
*
|
|
13
|
+
* @param options Carousel options.
|
|
14
|
+
* @param options.scrollMode `item` moves one item; `viewport` moves past the visible ones.
|
|
15
|
+
* @param carousel The scroll container. Its direct children are the items.
|
|
16
|
+
*/
|
|
17
|
+
function useCarousel(options, carousel) {
|
|
18
|
+
const carouselItems = (0, vue.shallowRef)([]);
|
|
19
|
+
const currentCarouselItemIndex = (0, vue.ref)(0);
|
|
20
|
+
const visibleCarouselItems = (0, vue.shallowRef)([]);
|
|
21
|
+
const scrollDirection = (0, vue.ref)(null);
|
|
22
|
+
let observer = null;
|
|
23
|
+
let lastWheelAt = 0;
|
|
24
|
+
const carouselItem = (0, vue.computed)(() => carouselItems.value[currentCarouselItemIndex.value] ?? null);
|
|
25
|
+
const pages = (0, vue.computed)(() => {
|
|
26
|
+
const visibleCount = visibleCarouselItems.value.length;
|
|
27
|
+
if (visibleCount === 0) return 0;
|
|
28
|
+
return Math.ceil(carouselItems.value.length / visibleCount);
|
|
29
|
+
});
|
|
30
|
+
const allItemsVisible = (0, vue.computed)(() => {
|
|
31
|
+
const total = carouselItems.value.length;
|
|
32
|
+
return total > 0 && visibleCarouselItems.value.length === total;
|
|
33
|
+
});
|
|
34
|
+
(0, vue.watch)(carouselItem, (newItem, oldItem) => {
|
|
35
|
+
newItem?.classList.add("active");
|
|
36
|
+
if (oldItem && oldItem !== newItem) oldItem.classList.remove("active");
|
|
37
|
+
});
|
|
38
|
+
const isFullyVisible = (item, scroller) => {
|
|
39
|
+
const start = item.offsetLeft;
|
|
40
|
+
const end = start + item.offsetWidth;
|
|
41
|
+
const viewStart = scroller.scrollLeft;
|
|
42
|
+
const viewEnd = viewStart + scroller.clientWidth;
|
|
43
|
+
return start >= viewStart - 1 && end <= viewEnd + 1;
|
|
44
|
+
};
|
|
45
|
+
/** First item that still reaches into the viewport. */
|
|
46
|
+
const firstOverlappingIndex = (items, scroller) => {
|
|
47
|
+
const index = items.findIndex((item) => item.offsetLeft + item.offsetWidth > scroller.scrollLeft);
|
|
48
|
+
return index === -1 ? 0 : index;
|
|
49
|
+
};
|
|
50
|
+
const scrollToIndex = (index) => {
|
|
51
|
+
const item = carouselItems.value[index];
|
|
52
|
+
const scroller = carousel.value;
|
|
53
|
+
if (!item || !scroller) return;
|
|
54
|
+
scroller.scrollTo({
|
|
55
|
+
left: item.offsetLeft,
|
|
56
|
+
behavior: "smooth"
|
|
57
|
+
});
|
|
58
|
+
currentCarouselItemIndex.value = index;
|
|
59
|
+
};
|
|
60
|
+
const viewportTargetIndex = (direction) => {
|
|
61
|
+
const items = carouselItems.value;
|
|
62
|
+
const scroller = carousel.value;
|
|
63
|
+
if (!scroller || items.length === 0) return null;
|
|
64
|
+
const fullyVisible = items.filter((item) => isFullyVisible(item, scroller));
|
|
65
|
+
if (direction === "next") {
|
|
66
|
+
const lastFullyVisible = fullyVisible.at(-1);
|
|
67
|
+
const nextIndex = lastFullyVisible ? items.indexOf(lastFullyVisible) + 1 : firstOverlappingIndex(items, scroller) + 1;
|
|
68
|
+
return nextIndex < items.length ? nextIndex : null;
|
|
69
|
+
}
|
|
70
|
+
const firstFullyVisible = fullyVisible[0];
|
|
71
|
+
const prevIndex = firstFullyVisible ? items.indexOf(firstFullyVisible) - 1 : firstOverlappingIndex(items, scroller) - 1;
|
|
72
|
+
return prevIndex >= 0 ? prevIndex : null;
|
|
73
|
+
};
|
|
74
|
+
const move = (direction) => {
|
|
75
|
+
scrollDirection.value = direction;
|
|
76
|
+
if ((0, vue.toValue)(options.scrollMode) === "viewport") {
|
|
77
|
+
const index = viewportTargetIndex(direction);
|
|
78
|
+
if (index !== null) scrollToIndex(index);
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
scrollToIndex(currentCarouselItemIndex.value + (direction === "next" ? 1 : -1));
|
|
82
|
+
};
|
|
83
|
+
const handleNext = () => move("next");
|
|
84
|
+
const handlePrev = () => move("prev");
|
|
85
|
+
/**
|
|
86
|
+
* Wheel navigation (opt-in on `CarouselRoot` with `wheel-navigation`).
|
|
87
|
+
* Follows the dominant axis and moves at most one step per gesture.
|
|
88
|
+
*/
|
|
89
|
+
const handleWheel = (event) => {
|
|
90
|
+
const delta = Math.abs(event.deltaX) > Math.abs(event.deltaY) ? event.deltaX : event.deltaY;
|
|
91
|
+
if (delta === 0) return;
|
|
92
|
+
event.preventDefault();
|
|
93
|
+
const now = Date.now();
|
|
94
|
+
if (now - lastWheelAt < WHEEL_COOLDOWN_MS) return;
|
|
95
|
+
lastWheelAt = now;
|
|
96
|
+
move(delta > 0 ? "next" : "prev");
|
|
97
|
+
};
|
|
98
|
+
(0, vue.onMounted)(() => {
|
|
99
|
+
carouselItems.value = Array.from(carousel.value?.querySelectorAll(":scope > *") ?? []);
|
|
100
|
+
if (typeof IntersectionObserver === "undefined") return;
|
|
101
|
+
observer = new IntersectionObserver((entries) => {
|
|
102
|
+
for (const entry of entries) {
|
|
103
|
+
const target = entry.target;
|
|
104
|
+
if (entry.isIntersecting) {
|
|
105
|
+
target.dataset.carouselVisibility = "visible";
|
|
106
|
+
target.classList.add("visible");
|
|
107
|
+
} else {
|
|
108
|
+
delete target.dataset.carouselVisibility;
|
|
109
|
+
target.classList.remove("visible");
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
visibleCarouselItems.value = carouselItems.value.filter((item) => item.dataset.carouselVisibility === "visible");
|
|
113
|
+
}, {
|
|
114
|
+
root: carousel.value,
|
|
115
|
+
rootMargin: "0px",
|
|
116
|
+
threshold: .01
|
|
117
|
+
});
|
|
118
|
+
carouselItems.value.forEach((item) => observer?.observe(item));
|
|
119
|
+
});
|
|
120
|
+
(0, vue.onUnmounted)(() => {
|
|
121
|
+
observer?.disconnect();
|
|
122
|
+
observer = null;
|
|
123
|
+
carouselItems.value = [];
|
|
124
|
+
currentCarouselItemIndex.value = 0;
|
|
125
|
+
});
|
|
126
|
+
return {
|
|
127
|
+
handleNext,
|
|
128
|
+
handlePrev,
|
|
129
|
+
handleWheel,
|
|
130
|
+
carouselItems,
|
|
131
|
+
carouselItem,
|
|
132
|
+
currentCarouselItemIndex,
|
|
133
|
+
visibleCarouselItems,
|
|
134
|
+
scrollDirection,
|
|
135
|
+
allItemsVisible,
|
|
136
|
+
pages
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
Object.defineProperty(exports, "useCarousel", {
|
|
140
|
+
enumerable: true,
|
|
141
|
+
get: function() {
|
|
142
|
+
return useCarousel;
|
|
143
|
+
}
|
|
144
|
+
});
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { computed, onMounted, onUnmounted, ref, shallowRef, toValue, watch } from "vue";
|
|
2
|
+
// src/composables/carousel.ts
|
|
3
|
+
/** Minimum time between two wheel-driven moves, so one gesture moves one step. */
|
|
4
|
+
var WHEEL_COOLDOWN_MS = 400;
|
|
5
|
+
/**
|
|
6
|
+
* Carousel scrolling for `item` and `viewport` modes.
|
|
7
|
+
*
|
|
8
|
+
* Navigation uses the scroller's overflow geometry (`scrollTo` + item offsets),
|
|
9
|
+
* not IntersectionObserver visibility. Observer callbacks only toggle the
|
|
10
|
+
* `visible` class — a `threshold` of `1` never marked items visible when the
|
|
11
|
+
* viewport was smaller than an item (issue #11).
|
|
12
|
+
*
|
|
13
|
+
* @param options Carousel options.
|
|
14
|
+
* @param options.scrollMode `item` moves one item; `viewport` moves past the visible ones.
|
|
15
|
+
* @param carousel The scroll container. Its direct children are the items.
|
|
16
|
+
*/
|
|
17
|
+
function useCarousel(options, carousel) {
|
|
18
|
+
const carouselItems = shallowRef([]);
|
|
19
|
+
const currentCarouselItemIndex = ref(0);
|
|
20
|
+
const visibleCarouselItems = shallowRef([]);
|
|
21
|
+
const scrollDirection = ref(null);
|
|
22
|
+
let observer = null;
|
|
23
|
+
let lastWheelAt = 0;
|
|
24
|
+
const carouselItem = computed(() => carouselItems.value[currentCarouselItemIndex.value] ?? null);
|
|
25
|
+
const pages = computed(() => {
|
|
26
|
+
const visibleCount = visibleCarouselItems.value.length;
|
|
27
|
+
if (visibleCount === 0) return 0;
|
|
28
|
+
return Math.ceil(carouselItems.value.length / visibleCount);
|
|
29
|
+
});
|
|
30
|
+
const allItemsVisible = computed(() => {
|
|
31
|
+
const total = carouselItems.value.length;
|
|
32
|
+
return total > 0 && visibleCarouselItems.value.length === total;
|
|
33
|
+
});
|
|
34
|
+
watch(carouselItem, (newItem, oldItem) => {
|
|
35
|
+
newItem?.classList.add("active");
|
|
36
|
+
if (oldItem && oldItem !== newItem) oldItem.classList.remove("active");
|
|
37
|
+
});
|
|
38
|
+
const isFullyVisible = (item, scroller) => {
|
|
39
|
+
const start = item.offsetLeft;
|
|
40
|
+
const end = start + item.offsetWidth;
|
|
41
|
+
const viewStart = scroller.scrollLeft;
|
|
42
|
+
const viewEnd = viewStart + scroller.clientWidth;
|
|
43
|
+
return start >= viewStart - 1 && end <= viewEnd + 1;
|
|
44
|
+
};
|
|
45
|
+
/** First item that still reaches into the viewport. */
|
|
46
|
+
const firstOverlappingIndex = (items, scroller) => {
|
|
47
|
+
const index = items.findIndex((item) => item.offsetLeft + item.offsetWidth > scroller.scrollLeft);
|
|
48
|
+
return index === -1 ? 0 : index;
|
|
49
|
+
};
|
|
50
|
+
const scrollToIndex = (index) => {
|
|
51
|
+
const item = carouselItems.value[index];
|
|
52
|
+
const scroller = carousel.value;
|
|
53
|
+
if (!item || !scroller) return;
|
|
54
|
+
scroller.scrollTo({
|
|
55
|
+
left: item.offsetLeft,
|
|
56
|
+
behavior: "smooth"
|
|
57
|
+
});
|
|
58
|
+
currentCarouselItemIndex.value = index;
|
|
59
|
+
};
|
|
60
|
+
const viewportTargetIndex = (direction) => {
|
|
61
|
+
const items = carouselItems.value;
|
|
62
|
+
const scroller = carousel.value;
|
|
63
|
+
if (!scroller || items.length === 0) return null;
|
|
64
|
+
const fullyVisible = items.filter((item) => isFullyVisible(item, scroller));
|
|
65
|
+
if (direction === "next") {
|
|
66
|
+
const lastFullyVisible = fullyVisible.at(-1);
|
|
67
|
+
const nextIndex = lastFullyVisible ? items.indexOf(lastFullyVisible) + 1 : firstOverlappingIndex(items, scroller) + 1;
|
|
68
|
+
return nextIndex < items.length ? nextIndex : null;
|
|
69
|
+
}
|
|
70
|
+
const firstFullyVisible = fullyVisible[0];
|
|
71
|
+
const prevIndex = firstFullyVisible ? items.indexOf(firstFullyVisible) - 1 : firstOverlappingIndex(items, scroller) - 1;
|
|
72
|
+
return prevIndex >= 0 ? prevIndex : null;
|
|
73
|
+
};
|
|
74
|
+
const move = (direction) => {
|
|
75
|
+
scrollDirection.value = direction;
|
|
76
|
+
if (toValue(options.scrollMode) === "viewport") {
|
|
77
|
+
const index = viewportTargetIndex(direction);
|
|
78
|
+
if (index !== null) scrollToIndex(index);
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
scrollToIndex(currentCarouselItemIndex.value + (direction === "next" ? 1 : -1));
|
|
82
|
+
};
|
|
83
|
+
const handleNext = () => move("next");
|
|
84
|
+
const handlePrev = () => move("prev");
|
|
85
|
+
/**
|
|
86
|
+
* Wheel navigation (opt-in on `CarouselRoot` with `wheel-navigation`).
|
|
87
|
+
* Follows the dominant axis and moves at most one step per gesture.
|
|
88
|
+
*/
|
|
89
|
+
const handleWheel = (event) => {
|
|
90
|
+
const delta = Math.abs(event.deltaX) > Math.abs(event.deltaY) ? event.deltaX : event.deltaY;
|
|
91
|
+
if (delta === 0) return;
|
|
92
|
+
event.preventDefault();
|
|
93
|
+
const now = Date.now();
|
|
94
|
+
if (now - lastWheelAt < WHEEL_COOLDOWN_MS) return;
|
|
95
|
+
lastWheelAt = now;
|
|
96
|
+
move(delta > 0 ? "next" : "prev");
|
|
97
|
+
};
|
|
98
|
+
onMounted(() => {
|
|
99
|
+
carouselItems.value = Array.from(carousel.value?.querySelectorAll(":scope > *") ?? []);
|
|
100
|
+
if (typeof IntersectionObserver === "undefined") return;
|
|
101
|
+
observer = new IntersectionObserver((entries) => {
|
|
102
|
+
for (const entry of entries) {
|
|
103
|
+
const target = entry.target;
|
|
104
|
+
if (entry.isIntersecting) {
|
|
105
|
+
target.dataset.carouselVisibility = "visible";
|
|
106
|
+
target.classList.add("visible");
|
|
107
|
+
} else {
|
|
108
|
+
delete target.dataset.carouselVisibility;
|
|
109
|
+
target.classList.remove("visible");
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
visibleCarouselItems.value = carouselItems.value.filter((item) => item.dataset.carouselVisibility === "visible");
|
|
113
|
+
}, {
|
|
114
|
+
root: carousel.value,
|
|
115
|
+
rootMargin: "0px",
|
|
116
|
+
threshold: .01
|
|
117
|
+
});
|
|
118
|
+
carouselItems.value.forEach((item) => observer?.observe(item));
|
|
119
|
+
});
|
|
120
|
+
onUnmounted(() => {
|
|
121
|
+
observer?.disconnect();
|
|
122
|
+
observer = null;
|
|
123
|
+
carouselItems.value = [];
|
|
124
|
+
currentCarouselItemIndex.value = 0;
|
|
125
|
+
});
|
|
126
|
+
return {
|
|
127
|
+
handleNext,
|
|
128
|
+
handlePrev,
|
|
129
|
+
handleWheel,
|
|
130
|
+
carouselItems,
|
|
131
|
+
carouselItem,
|
|
132
|
+
currentCarouselItemIndex,
|
|
133
|
+
visibleCarouselItems,
|
|
134
|
+
scrollDirection,
|
|
135
|
+
allItemsVisible,
|
|
136
|
+
pages
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
export { useCarousel as t };
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
let styled_system_css = require("@webflare/ui/css");
|
|
2
|
+
// src/internal/controls/choiceStyles.ts
|
|
3
|
+
/** Checkbox: label wrapper, box, check indicator, text. */
|
|
4
|
+
var checkboxStyles = (0, styled_system_css.sva)({
|
|
5
|
+
slots: [
|
|
6
|
+
"root",
|
|
7
|
+
"control",
|
|
8
|
+
"indicator",
|
|
9
|
+
"label"
|
|
10
|
+
],
|
|
11
|
+
base: {
|
|
12
|
+
root: {
|
|
13
|
+
display: "inline-flex",
|
|
14
|
+
alignItems: "center",
|
|
15
|
+
gap: "sm",
|
|
16
|
+
cursor: "pointer",
|
|
17
|
+
userSelect: "none",
|
|
18
|
+
_disabled: {
|
|
19
|
+
cursor: "not-allowed",
|
|
20
|
+
opacity: "0.5"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
control: {
|
|
24
|
+
"display": "inline-flex",
|
|
25
|
+
"alignItems": "center",
|
|
26
|
+
"justifyContent": "center",
|
|
27
|
+
"borderWidth": "1px",
|
|
28
|
+
"borderStyle": "solid",
|
|
29
|
+
"borderColor": "border",
|
|
30
|
+
"backgroundColor": "surface",
|
|
31
|
+
"transition": "all 200ms",
|
|
32
|
+
"flexShrink": "0",
|
|
33
|
+
"_enabled": { _hover: { borderColor: "border.hover" } },
|
|
34
|
+
"_invalid": { borderColor: "danger.subtle" },
|
|
35
|
+
"borderRadius": "sm",
|
|
36
|
+
"color": "neutral",
|
|
37
|
+
"&[data-state=\"checked\"]": {
|
|
38
|
+
backgroundColor: "primary",
|
|
39
|
+
borderColor: "primary",
|
|
40
|
+
color: "grey.800"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
indicator: {
|
|
44
|
+
display: "flex",
|
|
45
|
+
alignItems: "center",
|
|
46
|
+
justifyContent: "center",
|
|
47
|
+
width: "100%",
|
|
48
|
+
height: "100%"
|
|
49
|
+
},
|
|
50
|
+
label: {
|
|
51
|
+
fontWeight: "500",
|
|
52
|
+
color: "neutral",
|
|
53
|
+
lineHeight: "1.4"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
variants: { size: {
|
|
57
|
+
sm: {
|
|
58
|
+
control: {
|
|
59
|
+
width: "1rem",
|
|
60
|
+
height: "1rem"
|
|
61
|
+
},
|
|
62
|
+
label: { fontSize: "sm" }
|
|
63
|
+
},
|
|
64
|
+
md: {
|
|
65
|
+
control: {
|
|
66
|
+
width: "1.125rem",
|
|
67
|
+
height: "1.125rem"
|
|
68
|
+
},
|
|
69
|
+
label: { fontSize: "md" }
|
|
70
|
+
},
|
|
71
|
+
lg: {
|
|
72
|
+
control: {
|
|
73
|
+
width: "1.375rem",
|
|
74
|
+
height: "1.375rem"
|
|
75
|
+
},
|
|
76
|
+
label: { fontSize: "lg" }
|
|
77
|
+
}
|
|
78
|
+
} },
|
|
79
|
+
defaultVariants: { size: "md" }
|
|
80
|
+
});
|
|
81
|
+
/** Radio group: shares the box, label, and size scale with the checkbox. */
|
|
82
|
+
var radioGroupStyles = (0, styled_system_css.sva)({
|
|
83
|
+
slots: [
|
|
84
|
+
"root",
|
|
85
|
+
"item",
|
|
86
|
+
"control",
|
|
87
|
+
"indicator",
|
|
88
|
+
"label"
|
|
89
|
+
],
|
|
90
|
+
base: {
|
|
91
|
+
root: {
|
|
92
|
+
display: "flex",
|
|
93
|
+
flexDirection: "column",
|
|
94
|
+
gap: "sm",
|
|
95
|
+
border: "none",
|
|
96
|
+
p: 0,
|
|
97
|
+
m: 0,
|
|
98
|
+
minWidth: "0"
|
|
99
|
+
},
|
|
100
|
+
item: {
|
|
101
|
+
display: "flex",
|
|
102
|
+
alignItems: "center",
|
|
103
|
+
gap: "sm",
|
|
104
|
+
cursor: "pointer",
|
|
105
|
+
userSelect: "none",
|
|
106
|
+
_disabled: {
|
|
107
|
+
cursor: "not-allowed",
|
|
108
|
+
opacity: "0.5"
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
control: {
|
|
112
|
+
"display": "inline-flex",
|
|
113
|
+
"alignItems": "center",
|
|
114
|
+
"justifyContent": "center",
|
|
115
|
+
"borderWidth": "1px",
|
|
116
|
+
"borderStyle": "solid",
|
|
117
|
+
"borderColor": "border",
|
|
118
|
+
"backgroundColor": "surface",
|
|
119
|
+
"transition": "all 200ms",
|
|
120
|
+
"flexShrink": "0",
|
|
121
|
+
"_enabled": { _hover: { borderColor: "border.hover" } },
|
|
122
|
+
"_invalid": { borderColor: "danger.subtle" },
|
|
123
|
+
"&[data-state=\"checked\"]": { borderColor: "primary" },
|
|
124
|
+
"borderRadius": "full"
|
|
125
|
+
},
|
|
126
|
+
indicator: {
|
|
127
|
+
display: "block",
|
|
128
|
+
width: "55%",
|
|
129
|
+
height: "55%",
|
|
130
|
+
borderRadius: "full",
|
|
131
|
+
backgroundColor: "primary"
|
|
132
|
+
},
|
|
133
|
+
label: {
|
|
134
|
+
fontWeight: "500",
|
|
135
|
+
color: "neutral",
|
|
136
|
+
lineHeight: "1.4"
|
|
137
|
+
}
|
|
138
|
+
},
|
|
139
|
+
variants: { size: {
|
|
140
|
+
sm: {
|
|
141
|
+
control: {
|
|
142
|
+
width: "1rem",
|
|
143
|
+
height: "1rem"
|
|
144
|
+
},
|
|
145
|
+
label: { fontSize: "sm" }
|
|
146
|
+
},
|
|
147
|
+
md: {
|
|
148
|
+
control: {
|
|
149
|
+
width: "1.125rem",
|
|
150
|
+
height: "1.125rem"
|
|
151
|
+
},
|
|
152
|
+
label: { fontSize: "md" }
|
|
153
|
+
},
|
|
154
|
+
lg: {
|
|
155
|
+
control: {
|
|
156
|
+
width: "1.375rem",
|
|
157
|
+
height: "1.375rem"
|
|
158
|
+
},
|
|
159
|
+
label: { fontSize: "lg" }
|
|
160
|
+
}
|
|
161
|
+
} },
|
|
162
|
+
defaultVariants: { size: "md" }
|
|
163
|
+
});
|
|
164
|
+
Object.defineProperty(exports, "checkboxStyles", {
|
|
165
|
+
enumerable: true,
|
|
166
|
+
get: function() {
|
|
167
|
+
return checkboxStyles;
|
|
168
|
+
}
|
|
169
|
+
});
|
|
170
|
+
Object.defineProperty(exports, "radioGroupStyles", {
|
|
171
|
+
enumerable: true,
|
|
172
|
+
get: function() {
|
|
173
|
+
return radioGroupStyles;
|
|
174
|
+
}
|
|
175
|
+
});
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { sva } from "@webflare/ui/css";
|
|
2
|
+
// src/internal/controls/choiceStyles.ts
|
|
3
|
+
/** Checkbox: label wrapper, box, check indicator, text. */
|
|
4
|
+
var checkboxStyles = sva({
|
|
5
|
+
slots: [
|
|
6
|
+
"root",
|
|
7
|
+
"control",
|
|
8
|
+
"indicator",
|
|
9
|
+
"label"
|
|
10
|
+
],
|
|
11
|
+
base: {
|
|
12
|
+
root: {
|
|
13
|
+
display: "inline-flex",
|
|
14
|
+
alignItems: "center",
|
|
15
|
+
gap: "sm",
|
|
16
|
+
cursor: "pointer",
|
|
17
|
+
userSelect: "none",
|
|
18
|
+
_disabled: {
|
|
19
|
+
cursor: "not-allowed",
|
|
20
|
+
opacity: "0.5"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
control: {
|
|
24
|
+
"display": "inline-flex",
|
|
25
|
+
"alignItems": "center",
|
|
26
|
+
"justifyContent": "center",
|
|
27
|
+
"borderWidth": "1px",
|
|
28
|
+
"borderStyle": "solid",
|
|
29
|
+
"borderColor": "border",
|
|
30
|
+
"backgroundColor": "surface",
|
|
31
|
+
"transition": "all 200ms",
|
|
32
|
+
"flexShrink": "0",
|
|
33
|
+
"_enabled": { _hover: { borderColor: "border.hover" } },
|
|
34
|
+
"_invalid": { borderColor: "danger.subtle" },
|
|
35
|
+
"borderRadius": "sm",
|
|
36
|
+
"color": "neutral",
|
|
37
|
+
"&[data-state=\"checked\"]": {
|
|
38
|
+
backgroundColor: "primary",
|
|
39
|
+
borderColor: "primary",
|
|
40
|
+
color: "grey.800"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
indicator: {
|
|
44
|
+
display: "flex",
|
|
45
|
+
alignItems: "center",
|
|
46
|
+
justifyContent: "center",
|
|
47
|
+
width: "100%",
|
|
48
|
+
height: "100%"
|
|
49
|
+
},
|
|
50
|
+
label: {
|
|
51
|
+
fontWeight: "500",
|
|
52
|
+
color: "neutral",
|
|
53
|
+
lineHeight: "1.4"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
variants: { size: {
|
|
57
|
+
sm: {
|
|
58
|
+
control: {
|
|
59
|
+
width: "1rem",
|
|
60
|
+
height: "1rem"
|
|
61
|
+
},
|
|
62
|
+
label: { fontSize: "sm" }
|
|
63
|
+
},
|
|
64
|
+
md: {
|
|
65
|
+
control: {
|
|
66
|
+
width: "1.125rem",
|
|
67
|
+
height: "1.125rem"
|
|
68
|
+
},
|
|
69
|
+
label: { fontSize: "md" }
|
|
70
|
+
},
|
|
71
|
+
lg: {
|
|
72
|
+
control: {
|
|
73
|
+
width: "1.375rem",
|
|
74
|
+
height: "1.375rem"
|
|
75
|
+
},
|
|
76
|
+
label: { fontSize: "lg" }
|
|
77
|
+
}
|
|
78
|
+
} },
|
|
79
|
+
defaultVariants: { size: "md" }
|
|
80
|
+
});
|
|
81
|
+
/** Radio group: shares the box, label, and size scale with the checkbox. */
|
|
82
|
+
var radioGroupStyles = sva({
|
|
83
|
+
slots: [
|
|
84
|
+
"root",
|
|
85
|
+
"item",
|
|
86
|
+
"control",
|
|
87
|
+
"indicator",
|
|
88
|
+
"label"
|
|
89
|
+
],
|
|
90
|
+
base: {
|
|
91
|
+
root: {
|
|
92
|
+
display: "flex",
|
|
93
|
+
flexDirection: "column",
|
|
94
|
+
gap: "sm",
|
|
95
|
+
border: "none",
|
|
96
|
+
p: 0,
|
|
97
|
+
m: 0,
|
|
98
|
+
minWidth: "0"
|
|
99
|
+
},
|
|
100
|
+
item: {
|
|
101
|
+
display: "flex",
|
|
102
|
+
alignItems: "center",
|
|
103
|
+
gap: "sm",
|
|
104
|
+
cursor: "pointer",
|
|
105
|
+
userSelect: "none",
|
|
106
|
+
_disabled: {
|
|
107
|
+
cursor: "not-allowed",
|
|
108
|
+
opacity: "0.5"
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
control: {
|
|
112
|
+
"display": "inline-flex",
|
|
113
|
+
"alignItems": "center",
|
|
114
|
+
"justifyContent": "center",
|
|
115
|
+
"borderWidth": "1px",
|
|
116
|
+
"borderStyle": "solid",
|
|
117
|
+
"borderColor": "border",
|
|
118
|
+
"backgroundColor": "surface",
|
|
119
|
+
"transition": "all 200ms",
|
|
120
|
+
"flexShrink": "0",
|
|
121
|
+
"_enabled": { _hover: { borderColor: "border.hover" } },
|
|
122
|
+
"_invalid": { borderColor: "danger.subtle" },
|
|
123
|
+
"&[data-state=\"checked\"]": { borderColor: "primary" },
|
|
124
|
+
"borderRadius": "full"
|
|
125
|
+
},
|
|
126
|
+
indicator: {
|
|
127
|
+
display: "block",
|
|
128
|
+
width: "55%",
|
|
129
|
+
height: "55%",
|
|
130
|
+
borderRadius: "full",
|
|
131
|
+
backgroundColor: "primary"
|
|
132
|
+
},
|
|
133
|
+
label: {
|
|
134
|
+
fontWeight: "500",
|
|
135
|
+
color: "neutral",
|
|
136
|
+
lineHeight: "1.4"
|
|
137
|
+
}
|
|
138
|
+
},
|
|
139
|
+
variants: { size: {
|
|
140
|
+
sm: {
|
|
141
|
+
control: {
|
|
142
|
+
width: "1rem",
|
|
143
|
+
height: "1rem"
|
|
144
|
+
},
|
|
145
|
+
label: { fontSize: "sm" }
|
|
146
|
+
},
|
|
147
|
+
md: {
|
|
148
|
+
control: {
|
|
149
|
+
width: "1.125rem",
|
|
150
|
+
height: "1.125rem"
|
|
151
|
+
},
|
|
152
|
+
label: { fontSize: "md" }
|
|
153
|
+
},
|
|
154
|
+
lg: {
|
|
155
|
+
control: {
|
|
156
|
+
width: "1.375rem",
|
|
157
|
+
height: "1.375rem"
|
|
158
|
+
},
|
|
159
|
+
label: { fontSize: "lg" }
|
|
160
|
+
}
|
|
161
|
+
} },
|
|
162
|
+
defaultVariants: { size: "md" }
|
|
163
|
+
});
|
|
164
|
+
export { radioGroupStyles as n, checkboxStyles as t };
|