@tribepad/themis 1.0.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/CHANGELOG.md +17 -0
- package/LICENSE +21 -0
- package/README.md +114 -0
- package/dist/Carousel-NTZX5TOW.js +16 -0
- package/dist/Carousel-NTZX5TOW.js.map +1 -0
- package/dist/Carousel-YH3DOQJU.mjs +7 -0
- package/dist/Carousel-YH3DOQJU.mjs.map +1 -0
- package/dist/chunk-2HIUTHMU.mjs +234 -0
- package/dist/chunk-2HIUTHMU.mjs.map +1 -0
- package/dist/chunk-34GTFTDO.js +431 -0
- package/dist/chunk-34GTFTDO.js.map +1 -0
- package/dist/chunk-3H7ASYR7.js +250 -0
- package/dist/chunk-3H7ASYR7.js.map +1 -0
- package/dist/chunk-3IEN7JOP.js +316 -0
- package/dist/chunk-3IEN7JOP.js.map +1 -0
- package/dist/chunk-3JHN4GAL.js +326 -0
- package/dist/chunk-3JHN4GAL.js.map +1 -0
- package/dist/chunk-3MJPASQU.js +232 -0
- package/dist/chunk-3MJPASQU.js.map +1 -0
- package/dist/chunk-3XD2JUL3.js +572 -0
- package/dist/chunk-3XD2JUL3.js.map +1 -0
- package/dist/chunk-3YOY2VJ6.js +189 -0
- package/dist/chunk-3YOY2VJ6.js.map +1 -0
- package/dist/chunk-4DU5JSXB.js +408 -0
- package/dist/chunk-4DU5JSXB.js.map +1 -0
- package/dist/chunk-4E4E2GSS.js +352 -0
- package/dist/chunk-4E4E2GSS.js.map +1 -0
- package/dist/chunk-4NHAP4AN.mjs +3 -0
- package/dist/chunk-4NHAP4AN.mjs.map +1 -0
- package/dist/chunk-4S33J5NY.mjs +415 -0
- package/dist/chunk-4S33J5NY.mjs.map +1 -0
- package/dist/chunk-5SMGRT3G.mjs +354 -0
- package/dist/chunk-5SMGRT3G.mjs.map +1 -0
- package/dist/chunk-5SVLJN2C.mjs +22 -0
- package/dist/chunk-5SVLJN2C.mjs.map +1 -0
- package/dist/chunk-66WTU4EB.mjs +299 -0
- package/dist/chunk-66WTU4EB.mjs.map +1 -0
- package/dist/chunk-6S25NMOT.mjs +335 -0
- package/dist/chunk-6S25NMOT.mjs.map +1 -0
- package/dist/chunk-6SP7UB3D.js +4 -0
- package/dist/chunk-6SP7UB3D.js.map +1 -0
- package/dist/chunk-6TYWWQHM.mjs +565 -0
- package/dist/chunk-6TYWWQHM.mjs.map +1 -0
- package/dist/chunk-A3YUJA6W.mjs +384 -0
- package/dist/chunk-A3YUJA6W.mjs.map +1 -0
- package/dist/chunk-A6KEDVUR.js +61 -0
- package/dist/chunk-A6KEDVUR.js.map +1 -0
- package/dist/chunk-A77RUEWL.js +730 -0
- package/dist/chunk-A77RUEWL.js.map +1 -0
- package/dist/chunk-AA4IKMPE.mjs +3 -0
- package/dist/chunk-AA4IKMPE.mjs.map +1 -0
- package/dist/chunk-AKIA6GW6.mjs +163 -0
- package/dist/chunk-AKIA6GW6.mjs.map +1 -0
- package/dist/chunk-AL6P275L.mjs +435 -0
- package/dist/chunk-AL6P275L.mjs.map +1 -0
- package/dist/chunk-AZ3RJYTB.js +37 -0
- package/dist/chunk-AZ3RJYTB.js.map +1 -0
- package/dist/chunk-B5Q4UPL6.js +32 -0
- package/dist/chunk-B5Q4UPL6.js.map +1 -0
- package/dist/chunk-B6DHPMDP.mjs +335 -0
- package/dist/chunk-B6DHPMDP.mjs.map +1 -0
- package/dist/chunk-BDXKKMBZ.mjs +184 -0
- package/dist/chunk-BDXKKMBZ.mjs.map +1 -0
- package/dist/chunk-BL6E2DLZ.mjs +52 -0
- package/dist/chunk-BL6E2DLZ.mjs.map +1 -0
- package/dist/chunk-CGFDS4XS.mjs +121 -0
- package/dist/chunk-CGFDS4XS.mjs.map +1 -0
- package/dist/chunk-CJIW5TKI.js +139 -0
- package/dist/chunk-CJIW5TKI.js.map +1 -0
- package/dist/chunk-CKNISJOQ.js +314 -0
- package/dist/chunk-CKNISJOQ.js.map +1 -0
- package/dist/chunk-D6CBOECS.mjs +1757 -0
- package/dist/chunk-D6CBOECS.mjs.map +1 -0
- package/dist/chunk-DDWEVC2S.js +166 -0
- package/dist/chunk-DDWEVC2S.js.map +1 -0
- package/dist/chunk-DZ556D2F.mjs +176 -0
- package/dist/chunk-DZ556D2F.mjs.map +1 -0
- package/dist/chunk-E2KQFV3O.mjs +10 -0
- package/dist/chunk-E2KQFV3O.mjs.map +1 -0
- package/dist/chunk-EMMLADSC.js +126 -0
- package/dist/chunk-EMMLADSC.js.map +1 -0
- package/dist/chunk-EP4WOI5D.mjs +926 -0
- package/dist/chunk-EP4WOI5D.mjs.map +1 -0
- package/dist/chunk-FJRXLJC2.mjs +160 -0
- package/dist/chunk-FJRXLJC2.mjs.map +1 -0
- package/dist/chunk-FKQI434R.js +345 -0
- package/dist/chunk-FKQI434R.js.map +1 -0
- package/dist/chunk-FPKEAJRZ.mjs +100 -0
- package/dist/chunk-FPKEAJRZ.mjs.map +1 -0
- package/dist/chunk-FWQYB22U.js +183 -0
- package/dist/chunk-FWQYB22U.js.map +1 -0
- package/dist/chunk-GD5GHTMA.js +189 -0
- package/dist/chunk-GD5GHTMA.js.map +1 -0
- package/dist/chunk-GE5XTSDZ.js +447 -0
- package/dist/chunk-GE5XTSDZ.js.map +1 -0
- package/dist/chunk-GVE47ZAX.mjs +32 -0
- package/dist/chunk-GVE47ZAX.mjs.map +1 -0
- package/dist/chunk-HK46BT5U.mjs +18 -0
- package/dist/chunk-HK46BT5U.mjs.map +1 -0
- package/dist/chunk-HQVRMR6N.js +365 -0
- package/dist/chunk-HQVRMR6N.js.map +1 -0
- package/dist/chunk-HSGBJPJO.mjs +398 -0
- package/dist/chunk-HSGBJPJO.mjs.map +1 -0
- package/dist/chunk-I3AUTOMZ.mjs +125 -0
- package/dist/chunk-I3AUTOMZ.mjs.map +1 -0
- package/dist/chunk-IEI5LD5C.mjs +1161 -0
- package/dist/chunk-IEI5LD5C.mjs.map +1 -0
- package/dist/chunk-IIPTC2X7.mjs +118 -0
- package/dist/chunk-IIPTC2X7.mjs.map +1 -0
- package/dist/chunk-J7TLHF2Q.js +4 -0
- package/dist/chunk-J7TLHF2Q.js.map +1 -0
- package/dist/chunk-JJOWXFXQ.mjs +765 -0
- package/dist/chunk-JJOWXFXQ.mjs.map +1 -0
- package/dist/chunk-JPTSS2OA.mjs +3 -0
- package/dist/chunk-JPTSS2OA.mjs.map +1 -0
- package/dist/chunk-KFXXRLTP.js +396 -0
- package/dist/chunk-KFXXRLTP.js.map +1 -0
- package/dist/chunk-KPRRBSG6.mjs +272 -0
- package/dist/chunk-KPRRBSG6.mjs.map +1 -0
- package/dist/chunk-NFSBGRDB.mjs +57 -0
- package/dist/chunk-NFSBGRDB.mjs.map +1 -0
- package/dist/chunk-NGJVCFTM.js +219 -0
- package/dist/chunk-NGJVCFTM.js.map +1 -0
- package/dist/chunk-NSQ6MZJ6.mjs +728 -0
- package/dist/chunk-NSQ6MZJ6.mjs.map +1 -0
- package/dist/chunk-NYQYHT76.mjs +296 -0
- package/dist/chunk-NYQYHT76.mjs.map +1 -0
- package/dist/chunk-OLJJGI5B.js +1193 -0
- package/dist/chunk-OLJJGI5B.js.map +1 -0
- package/dist/chunk-Q3572X2J.js +292 -0
- package/dist/chunk-Q3572X2J.js.map +1 -0
- package/dist/chunk-QH7N7D4I.mjs +210 -0
- package/dist/chunk-QH7N7D4I.mjs.map +1 -0
- package/dist/chunk-R7XUIV25.js +466 -0
- package/dist/chunk-R7XUIV25.js.map +1 -0
- package/dist/chunk-RFFO4KPM.js +135 -0
- package/dist/chunk-RFFO4KPM.js.map +1 -0
- package/dist/chunk-RFX7QKA7.mjs +180 -0
- package/dist/chunk-RFX7QKA7.mjs.map +1 -0
- package/dist/chunk-SN5LFAP3.js +940 -0
- package/dist/chunk-SN5LFAP3.js.map +1 -0
- package/dist/chunk-T4COXKQ3.js +24 -0
- package/dist/chunk-T4COXKQ3.js.map +1 -0
- package/dist/chunk-TS54QM27.js +125 -0
- package/dist/chunk-TS54QM27.js.map +1 -0
- package/dist/chunk-UE2S4PCX.mjs +220 -0
- package/dist/chunk-UE2S4PCX.mjs.map +1 -0
- package/dist/chunk-UTW3QX2A.mjs +282 -0
- package/dist/chunk-UTW3QX2A.mjs.map +1 -0
- package/dist/chunk-V74LGMAE.js +1767 -0
- package/dist/chunk-V74LGMAE.js.map +1 -0
- package/dist/chunk-VIREG536.js +12 -0
- package/dist/chunk-VIREG536.js.map +1 -0
- package/dist/chunk-VY7M7346.js +4 -0
- package/dist/chunk-VY7M7346.js.map +1 -0
- package/dist/chunk-W3TJOO7H.mjs +319 -0
- package/dist/chunk-W3TJOO7H.mjs.map +1 -0
- package/dist/chunk-WIUOB36M.js +54 -0
- package/dist/chunk-WIUOB36M.js.map +1 -0
- package/dist/chunk-WJGLM4CY.js +291 -0
- package/dist/chunk-WJGLM4CY.js.map +1 -0
- package/dist/chunk-WNURH5OO.mjs +453 -0
- package/dist/chunk-WNURH5OO.mjs.map +1 -0
- package/dist/chunk-X25TNRSD.mjs +364 -0
- package/dist/chunk-X25TNRSD.mjs.map +1 -0
- package/dist/chunk-Y3GT7ETK.js +108 -0
- package/dist/chunk-Y3GT7ETK.js.map +1 -0
- package/dist/chunk-Z4FRNOF6.mjs +115 -0
- package/dist/chunk-Z4FRNOF6.mjs.map +1 -0
- package/dist/chunk-ZMYLD3BN.js +166 -0
- package/dist/chunk-ZMYLD3BN.js.map +1 -0
- package/dist/chunk-ZP2KV6EX.js +815 -0
- package/dist/chunk-ZP2KV6EX.js.map +1 -0
- package/dist/chunk-ZVKXFELU.js +366 -0
- package/dist/chunk-ZVKXFELU.js.map +1 -0
- package/dist/elements/Accordion/Accordion.d.ts +139 -0
- package/dist/elements/Accordion/Accordion.d.ts.map +1 -0
- package/dist/elements/Accordion/Accordion.types.d.ts +143 -0
- package/dist/elements/Accordion/Accordion.types.d.ts.map +1 -0
- package/dist/elements/Accordion/index.d.ts +13 -0
- package/dist/elements/Accordion/index.d.ts.map +1 -0
- package/dist/elements/Accordion/index.js +78 -0
- package/dist/elements/Accordion/index.js.map +1 -0
- package/dist/elements/Accordion/index.mjs +5 -0
- package/dist/elements/Accordion/index.mjs.map +1 -0
- package/dist/elements/Avatar/Avatar.d.ts +51 -0
- package/dist/elements/Avatar/Avatar.d.ts.map +1 -0
- package/dist/elements/Avatar/Avatar.types.d.ts +145 -0
- package/dist/elements/Avatar/Avatar.types.d.ts.map +1 -0
- package/dist/elements/Avatar/AvatarGroup.d.ts +32 -0
- package/dist/elements/Avatar/AvatarGroup.d.ts.map +1 -0
- package/dist/elements/Avatar/index.d.ts +11 -0
- package/dist/elements/Avatar/index.d.ts.map +1 -0
- package/dist/elements/Avatar/index.js +54 -0
- package/dist/elements/Avatar/index.js.map +1 -0
- package/dist/elements/Avatar/index.mjs +5 -0
- package/dist/elements/Avatar/index.mjs.map +1 -0
- package/dist/elements/Badge/Badge.d.ts +39 -0
- package/dist/elements/Badge/Badge.d.ts.map +1 -0
- package/dist/elements/Badge/Badge.types.d.ts +76 -0
- package/dist/elements/Badge/Badge.types.d.ts.map +1 -0
- package/dist/elements/Badge/index.d.ts +18 -0
- package/dist/elements/Badge/index.d.ts.map +1 -0
- package/dist/elements/Badge/index.js +43 -0
- package/dist/elements/Badge/index.js.map +1 -0
- package/dist/elements/Badge/index.mjs +6 -0
- package/dist/elements/Badge/index.mjs.map +1 -0
- package/dist/elements/Breadcrumbs/Breadcrumbs.d.ts +91 -0
- package/dist/elements/Breadcrumbs/Breadcrumbs.d.ts.map +1 -0
- package/dist/elements/Breadcrumbs/Breadcrumbs.types.d.ts +114 -0
- package/dist/elements/Breadcrumbs/Breadcrumbs.types.d.ts.map +1 -0
- package/dist/elements/Breadcrumbs/index.d.ts +14 -0
- package/dist/elements/Breadcrumbs/index.d.ts.map +1 -0
- package/dist/elements/Breadcrumbs/index.js +54 -0
- package/dist/elements/Breadcrumbs/index.js.map +1 -0
- package/dist/elements/Breadcrumbs/index.mjs +9 -0
- package/dist/elements/Breadcrumbs/index.mjs.map +1 -0
- package/dist/elements/Button/Button.d.ts +92 -0
- package/dist/elements/Button/Button.d.ts.map +1 -0
- package/dist/elements/Button/Button.types.d.ts +54 -0
- package/dist/elements/Button/Button.types.d.ts.map +1 -0
- package/dist/elements/Button/index.d.ts +18 -0
- package/dist/elements/Button/index.d.ts.map +1 -0
- package/dist/elements/Button/index.js +27 -0
- package/dist/elements/Button/index.js.map +1 -0
- package/dist/elements/Button/index.mjs +6 -0
- package/dist/elements/Button/index.mjs.map +1 -0
- package/dist/elements/ButtonGroup/ButtonGroup.d.ts +53 -0
- package/dist/elements/ButtonGroup/ButtonGroup.d.ts.map +1 -0
- package/dist/elements/ButtonGroup/ButtonGroup.types.d.ts +98 -0
- package/dist/elements/ButtonGroup/ButtonGroup.types.d.ts.map +1 -0
- package/dist/elements/ButtonGroup/ButtonGroup.utils.d.ts +60 -0
- package/dist/elements/ButtonGroup/ButtonGroup.utils.d.ts.map +1 -0
- package/dist/elements/ButtonGroup/ButtonGroup.variants.d.ts +39 -0
- package/dist/elements/ButtonGroup/ButtonGroup.variants.d.ts.map +1 -0
- package/dist/elements/ButtonGroup/ButtonGroupContext.d.ts +42 -0
- package/dist/elements/ButtonGroup/ButtonGroupContext.d.ts.map +1 -0
- package/dist/elements/ButtonGroup/index.d.ts +35 -0
- package/dist/elements/ButtonGroup/index.d.ts.map +1 -0
- package/dist/elements/ButtonGroup/index.js +66 -0
- package/dist/elements/ButtonGroup/index.js.map +1 -0
- package/dist/elements/ButtonGroup/index.mjs +5 -0
- package/dist/elements/ButtonGroup/index.mjs.map +1 -0
- package/dist/elements/Card/Card.d.ts +104 -0
- package/dist/elements/Card/Card.d.ts.map +1 -0
- package/dist/elements/Card/Card.types.d.ts +227 -0
- package/dist/elements/Card/Card.types.d.ts.map +1 -0
- package/dist/elements/Card/index.d.ts +38 -0
- package/dist/elements/Card/index.d.ts.map +1 -0
- package/dist/elements/Card/index.js +85 -0
- package/dist/elements/Card/index.js.map +1 -0
- package/dist/elements/Card/index.mjs +8 -0
- package/dist/elements/Card/index.mjs.map +1 -0
- package/dist/elements/Carousel/Carousel.d.ts +13 -0
- package/dist/elements/Carousel/Carousel.d.ts.map +1 -0
- package/dist/elements/Carousel/Carousel.types.d.ts +65 -0
- package/dist/elements/Carousel/Carousel.types.d.ts.map +1 -0
- package/dist/elements/Carousel/LazyCarousel.d.ts +46 -0
- package/dist/elements/Carousel/LazyCarousel.d.ts.map +1 -0
- package/dist/elements/Carousel/index.d.ts +5 -0
- package/dist/elements/Carousel/index.d.ts.map +1 -0
- package/dist/elements/Carousel/index.js +23 -0
- package/dist/elements/Carousel/index.js.map +1 -0
- package/dist/elements/Carousel/index.mjs +10 -0
- package/dist/elements/Carousel/index.mjs.map +1 -0
- package/dist/elements/Chart/Chart.d.ts +44 -0
- package/dist/elements/Chart/Chart.d.ts.map +1 -0
- package/dist/elements/Chart/Chart.types.d.ts +254 -0
- package/dist/elements/Chart/Chart.types.d.ts.map +1 -0
- package/dist/elements/Chart/ChartAnnouncer.d.ts +24 -0
- package/dist/elements/Chart/ChartAnnouncer.d.ts.map +1 -0
- package/dist/elements/Chart/ChartAxis.d.ts +42 -0
- package/dist/elements/Chart/ChartAxis.d.ts.map +1 -0
- package/dist/elements/Chart/ChartBarSeries.d.ts +54 -0
- package/dist/elements/Chart/ChartBarSeries.d.ts.map +1 -0
- package/dist/elements/Chart/ChartContext.d.ts +46 -0
- package/dist/elements/Chart/ChartContext.d.ts.map +1 -0
- package/dist/elements/Chart/ChartDataPoint.d.ts +56 -0
- package/dist/elements/Chart/ChartDataPoint.d.ts.map +1 -0
- package/dist/elements/Chart/ChartDataTable.d.ts +35 -0
- package/dist/elements/Chart/ChartDataTable.d.ts.map +1 -0
- package/dist/elements/Chart/ChartGrid.d.ts +32 -0
- package/dist/elements/Chart/ChartGrid.d.ts.map +1 -0
- package/dist/elements/Chart/ChartLegend.d.ts +32 -0
- package/dist/elements/Chart/ChartLegend.d.ts.map +1 -0
- package/dist/elements/Chart/ChartLineSeries.d.ts +52 -0
- package/dist/elements/Chart/ChartLineSeries.d.ts.map +1 -0
- package/dist/elements/Chart/ChartSVG.d.ts +62 -0
- package/dist/elements/Chart/ChartSVG.d.ts.map +1 -0
- package/dist/elements/Chart/ChartTooltip.d.ts +45 -0
- package/dist/elements/Chart/ChartTooltip.d.ts.map +1 -0
- package/dist/elements/Chart/chart.constants.d.ts +108 -0
- package/dist/elements/Chart/chart.constants.d.ts.map +1 -0
- package/dist/elements/Chart/chart.variants.d.ts +45 -0
- package/dist/elements/Chart/chart.variants.d.ts.map +1 -0
- package/dist/elements/Chart/index.d.ts +12 -0
- package/dist/elements/Chart/index.d.ts.map +1 -0
- package/dist/elements/Chart/index.js +47 -0
- package/dist/elements/Chart/index.js.map +1 -0
- package/dist/elements/Chart/index.mjs +6 -0
- package/dist/elements/Chart/index.mjs.map +1 -0
- package/dist/elements/Chart/useChartDimensions.d.ts +18 -0
- package/dist/elements/Chart/useChartDimensions.d.ts.map +1 -0
- package/dist/elements/Chart/useChartKeyboard.d.ts +42 -0
- package/dist/elements/Chart/useChartKeyboard.d.ts.map +1 -0
- package/dist/elements/Chart/useRovingTabIndex.d.ts +46 -0
- package/dist/elements/Chart/useRovingTabIndex.d.ts.map +1 -0
- package/dist/elements/Checkbox/Checkbox.d.ts +94 -0
- package/dist/elements/Checkbox/Checkbox.d.ts.map +1 -0
- package/dist/elements/Checkbox/Checkbox.types.d.ts +82 -0
- package/dist/elements/Checkbox/Checkbox.types.d.ts.map +1 -0
- package/dist/elements/Checkbox/index.d.ts +7 -0
- package/dist/elements/Checkbox/index.d.ts.map +1 -0
- package/dist/elements/Checkbox/index.js +47 -0
- package/dist/elements/Checkbox/index.js.map +1 -0
- package/dist/elements/Checkbox/index.mjs +6 -0
- package/dist/elements/Checkbox/index.mjs.map +1 -0
- package/dist/elements/CheckboxGroup/CheckboxGroup.d.ts +130 -0
- package/dist/elements/CheckboxGroup/CheckboxGroup.d.ts.map +1 -0
- package/dist/elements/CheckboxGroup/CheckboxGroup.types.d.ts +142 -0
- package/dist/elements/CheckboxGroup/CheckboxGroup.types.d.ts.map +1 -0
- package/dist/elements/CheckboxGroup/index.d.ts +10 -0
- package/dist/elements/CheckboxGroup/index.d.ts.map +1 -0
- package/dist/elements/CheckboxGroup/index.js +71 -0
- package/dist/elements/CheckboxGroup/index.js.map +1 -0
- package/dist/elements/CheckboxGroup/index.mjs +6 -0
- package/dist/elements/CheckboxGroup/index.mjs.map +1 -0
- package/dist/elements/DatePicker/Calendar.d.ts +16 -0
- package/dist/elements/DatePicker/Calendar.d.ts.map +1 -0
- package/dist/elements/DatePicker/DateField.d.ts +13 -0
- package/dist/elements/DatePicker/DateField.d.ts.map +1 -0
- package/dist/elements/DatePicker/DatePicker.d.ts +16 -0
- package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -0
- package/dist/elements/DatePicker/DatePicker.types.d.ts +390 -0
- package/dist/elements/DatePicker/DatePicker.types.d.ts.map +1 -0
- package/dist/elements/DatePicker/DatePicker.variants.d.ts +42 -0
- package/dist/elements/DatePicker/DatePicker.variants.d.ts.map +1 -0
- package/dist/elements/DatePicker/DateRangePicker.d.ts +13 -0
- package/dist/elements/DatePicker/DateRangePicker.d.ts.map +1 -0
- package/dist/elements/DatePicker/index.d.ts +14 -0
- package/dist/elements/DatePicker/index.d.ts.map +1 -0
- package/dist/elements/DatePicker/index.js +123 -0
- package/dist/elements/DatePicker/index.js.map +1 -0
- package/dist/elements/DatePicker/index.mjs +6 -0
- package/dist/elements/DatePicker/index.mjs.map +1 -0
- package/dist/elements/Dropdown/Dropdown.d.ts +197 -0
- package/dist/elements/Dropdown/Dropdown.d.ts.map +1 -0
- package/dist/elements/Dropdown/Dropdown.types.d.ts +175 -0
- package/dist/elements/Dropdown/Dropdown.types.d.ts.map +1 -0
- package/dist/elements/Dropdown/index.d.ts +12 -0
- package/dist/elements/Dropdown/index.d.ts.map +1 -0
- package/dist/elements/Dropdown/index.js +41 -0
- package/dist/elements/Dropdown/index.js.map +1 -0
- package/dist/elements/Dropdown/index.mjs +4 -0
- package/dist/elements/Dropdown/index.mjs.map +1 -0
- package/dist/elements/FileField/FileField.d.ts +46 -0
- package/dist/elements/FileField/FileField.d.ts.map +1 -0
- package/dist/elements/FileField/FileField.types.d.ts +99 -0
- package/dist/elements/FileField/FileField.types.d.ts.map +1 -0
- package/dist/elements/FileField/FileField.variants.d.ts +49 -0
- package/dist/elements/FileField/FileField.variants.d.ts.map +1 -0
- package/dist/elements/FileField/FilePreview.d.ts +27 -0
- package/dist/elements/FileField/FilePreview.d.ts.map +1 -0
- package/dist/elements/FileField/FileProgress.d.ts +35 -0
- package/dist/elements/FileField/FileProgress.d.ts.map +1 -0
- package/dist/elements/FileField/FileProgress.variants.d.ts +55 -0
- package/dist/elements/FileField/FileProgress.variants.d.ts.map +1 -0
- package/dist/elements/FileField/index.d.ts +41 -0
- package/dist/elements/FileField/index.d.ts.map +1 -0
- package/dist/elements/FileField/index.js +138 -0
- package/dist/elements/FileField/index.js.map +1 -0
- package/dist/elements/FileField/index.mjs +9 -0
- package/dist/elements/FileField/index.mjs.map +1 -0
- package/dist/elements/FileField/useFilePreview.d.ts +46 -0
- package/dist/elements/FileField/useFilePreview.d.ts.map +1 -0
- package/dist/elements/FileField/utils.d.ts +134 -0
- package/dist/elements/FileField/utils.d.ts.map +1 -0
- package/dist/elements/FormLayout/FormLayout.d.ts +51 -0
- package/dist/elements/FormLayout/FormLayout.d.ts.map +1 -0
- package/dist/elements/FormLayout/FormLayout.types.d.ts +66 -0
- package/dist/elements/FormLayout/FormLayout.types.d.ts.map +1 -0
- package/dist/elements/FormLayout/index.d.ts +3 -0
- package/dist/elements/FormLayout/index.d.ts.map +1 -0
- package/dist/elements/FormLayout/index.js +17 -0
- package/dist/elements/FormLayout/index.js.map +1 -0
- package/dist/elements/FormLayout/index.mjs +4 -0
- package/dist/elements/FormLayout/index.mjs.map +1 -0
- package/dist/elements/Modal/Modal.d.ts +168 -0
- package/dist/elements/Modal/Modal.d.ts.map +1 -0
- package/dist/elements/Modal/Modal.types.d.ts +265 -0
- package/dist/elements/Modal/Modal.types.d.ts.map +1 -0
- package/dist/elements/Modal/index.d.ts +14 -0
- package/dist/elements/Modal/index.d.ts.map +1 -0
- package/dist/elements/Modal/index.js +52 -0
- package/dist/elements/Modal/index.js.map +1 -0
- package/dist/elements/Modal/index.mjs +3 -0
- package/dist/elements/Modal/index.mjs.map +1 -0
- package/dist/elements/NumberField/NumberField.d.ts +43 -0
- package/dist/elements/NumberField/NumberField.d.ts.map +1 -0
- package/dist/elements/NumberField/NumberField.types.d.ts +112 -0
- package/dist/elements/NumberField/NumberField.types.d.ts.map +1 -0
- package/dist/elements/NumberField/NumberField.variants.d.ts +82 -0
- package/dist/elements/NumberField/NumberField.variants.d.ts.map +1 -0
- package/dist/elements/NumberField/index.d.ts +25 -0
- package/dist/elements/NumberField/index.d.ts.map +1 -0
- package/dist/elements/NumberField/index.js +57 -0
- package/dist/elements/NumberField/index.js.map +1 -0
- package/dist/elements/NumberField/index.mjs +8 -0
- package/dist/elements/NumberField/index.mjs.map +1 -0
- package/dist/elements/OTPInput/OTPInput.d.ts +105 -0
- package/dist/elements/OTPInput/OTPInput.d.ts.map +1 -0
- package/dist/elements/OTPInput/OTPInput.styles.d.ts +83 -0
- package/dist/elements/OTPInput/OTPInput.styles.d.ts.map +1 -0
- package/dist/elements/OTPInput/OTPInput.types.d.ts +189 -0
- package/dist/elements/OTPInput/OTPInput.types.d.ts.map +1 -0
- package/dist/elements/OTPInput/components/OTPDigit.d.ts +51 -0
- package/dist/elements/OTPInput/components/OTPDigit.d.ts.map +1 -0
- package/dist/elements/OTPInput/hooks/useOTPInput.d.ts +36 -0
- package/dist/elements/OTPInput/hooks/useOTPInput.d.ts.map +1 -0
- package/dist/elements/OTPInput/hooks/useOTPKeyboard.d.ts +59 -0
- package/dist/elements/OTPInput/hooks/useOTPKeyboard.d.ts.map +1 -0
- package/dist/elements/OTPInput/index.d.ts +27 -0
- package/dist/elements/OTPInput/index.d.ts.map +1 -0
- package/dist/elements/OTPInput/index.js +13 -0
- package/dist/elements/OTPInput/index.js.map +1 -0
- package/dist/elements/OTPInput/index.mjs +4 -0
- package/dist/elements/OTPInput/index.mjs.map +1 -0
- package/dist/elements/Panel/Panel.d.ts +111 -0
- package/dist/elements/Panel/Panel.d.ts.map +1 -0
- package/dist/elements/Panel/Panel.types.d.ts +243 -0
- package/dist/elements/Panel/Panel.types.d.ts.map +1 -0
- package/dist/elements/Panel/index.d.ts +4 -0
- package/dist/elements/Panel/index.d.ts.map +1 -0
- package/dist/elements/Panel/index.js +33 -0
- package/dist/elements/Panel/index.js.map +1 -0
- package/dist/elements/Panel/index.mjs +4 -0
- package/dist/elements/Panel/index.mjs.map +1 -0
- package/dist/elements/Progress/Progress.d.ts +44 -0
- package/dist/elements/Progress/Progress.d.ts.map +1 -0
- package/dist/elements/Progress/Progress.types.d.ts +64 -0
- package/dist/elements/Progress/Progress.types.d.ts.map +1 -0
- package/dist/elements/Progress/index.d.ts +11 -0
- package/dist/elements/Progress/index.d.ts.map +1 -0
- package/dist/elements/Progress/index.js +30 -0
- package/dist/elements/Progress/index.js.map +1 -0
- package/dist/elements/Progress/index.mjs +5 -0
- package/dist/elements/Progress/index.mjs.map +1 -0
- package/dist/elements/RadioGroup/RadioGroup.d.ts +110 -0
- package/dist/elements/RadioGroup/RadioGroup.d.ts.map +1 -0
- package/dist/elements/RadioGroup/RadioGroup.types.d.ts +143 -0
- package/dist/elements/RadioGroup/RadioGroup.types.d.ts.map +1 -0
- package/dist/elements/RadioGroup/index.d.ts +10 -0
- package/dist/elements/RadioGroup/index.d.ts.map +1 -0
- package/dist/elements/RadioGroup/index.js +47 -0
- package/dist/elements/RadioGroup/index.js.map +1 -0
- package/dist/elements/RadioGroup/index.mjs +6 -0
- package/dist/elements/RadioGroup/index.mjs.map +1 -0
- package/dist/elements/Resizable/Resizable.types.d.ts +188 -0
- package/dist/elements/Resizable/Resizable.types.d.ts.map +1 -0
- package/dist/elements/Resizable/components/ResizableHandle.d.ts +28 -0
- package/dist/elements/Resizable/components/ResizableHandle.d.ts.map +1 -0
- package/dist/elements/Resizable/components/ResizablePanel.d.ts +24 -0
- package/dist/elements/Resizable/components/ResizablePanel.d.ts.map +1 -0
- package/dist/elements/Resizable/components/ResizablePanelGroup.d.ts +26 -0
- package/dist/elements/Resizable/components/ResizablePanelGroup.d.ts.map +1 -0
- package/dist/elements/Resizable/components/ResizablePopover.d.ts +45 -0
- package/dist/elements/Resizable/components/ResizablePopover.d.ts.map +1 -0
- package/dist/elements/Resizable/hooks/useResizable.d.ts +50 -0
- package/dist/elements/Resizable/hooks/useResizable.d.ts.map +1 -0
- package/dist/elements/Resizable/hooks/useResizableContext.d.ts +36 -0
- package/dist/elements/Resizable/hooks/useResizableContext.d.ts.map +1 -0
- package/dist/elements/Resizable/index.d.ts +37 -0
- package/dist/elements/Resizable/index.d.ts.map +1 -0
- package/dist/elements/Resizable/index.js +65 -0
- package/dist/elements/Resizable/index.js.map +1 -0
- package/dist/elements/Resizable/index.mjs +8 -0
- package/dist/elements/Resizable/index.mjs.map +1 -0
- package/dist/elements/Select/Select.d.ts +184 -0
- package/dist/elements/Select/Select.d.ts.map +1 -0
- package/dist/elements/Select/Select.types.d.ts +166 -0
- package/dist/elements/Select/Select.types.d.ts.map +1 -0
- package/dist/elements/Select/index.d.ts +35 -0
- package/dist/elements/Select/index.d.ts.map +1 -0
- package/dist/elements/Select/index.js +33 -0
- package/dist/elements/Select/index.js.map +1 -0
- package/dist/elements/Select/index.mjs +4 -0
- package/dist/elements/Select/index.mjs.map +1 -0
- package/dist/elements/Skeleton/Skeleton.d.ts +31 -0
- package/dist/elements/Skeleton/Skeleton.d.ts.map +1 -0
- package/dist/elements/Skeleton/Skeleton.types.d.ts +36 -0
- package/dist/elements/Skeleton/Skeleton.types.d.ts.map +1 -0
- package/dist/elements/Skeleton/index.d.ts +11 -0
- package/dist/elements/Skeleton/index.d.ts.map +1 -0
- package/dist/elements/Skeleton/index.js +22 -0
- package/dist/elements/Skeleton/index.js.map +1 -0
- package/dist/elements/Skeleton/index.mjs +5 -0
- package/dist/elements/Skeleton/index.mjs.map +1 -0
- package/dist/elements/Switch/Switch.d.ts +39 -0
- package/dist/elements/Switch/Switch.d.ts.map +1 -0
- package/dist/elements/Switch/Switch.types.d.ts +53 -0
- package/dist/elements/Switch/Switch.types.d.ts.map +1 -0
- package/dist/elements/Switch/index.d.ts +8 -0
- package/dist/elements/Switch/index.d.ts.map +1 -0
- package/dist/elements/Switch/index.js +49 -0
- package/dist/elements/Switch/index.js.map +1 -0
- package/dist/elements/Switch/index.mjs +31 -0
- package/dist/elements/Switch/index.mjs.map +1 -0
- package/dist/elements/Table/Table.d.ts +123 -0
- package/dist/elements/Table/Table.d.ts.map +1 -0
- package/dist/elements/Table/Table.types.d.ts +356 -0
- package/dist/elements/Table/Table.types.d.ts.map +1 -0
- package/dist/elements/Table/index.d.ts +5 -0
- package/dist/elements/Table/index.d.ts.map +1 -0
- package/dist/elements/Table/index.js +76 -0
- package/dist/elements/Table/index.js.map +1 -0
- package/dist/elements/Table/index.mjs +7 -0
- package/dist/elements/Table/index.mjs.map +1 -0
- package/dist/elements/Tabs/Tabs.d.ts +129 -0
- package/dist/elements/Tabs/Tabs.d.ts.map +1 -0
- package/dist/elements/Tabs/Tabs.types.d.ts +179 -0
- package/dist/elements/Tabs/Tabs.types.d.ts.map +1 -0
- package/dist/elements/Tabs/index.d.ts +12 -0
- package/dist/elements/Tabs/index.d.ts.map +1 -0
- package/dist/elements/Tabs/index.js +74 -0
- package/dist/elements/Tabs/index.js.map +1 -0
- package/dist/elements/Tabs/index.mjs +5 -0
- package/dist/elements/Tabs/index.mjs.map +1 -0
- package/dist/elements/TextField/TextField.d.ts +155 -0
- package/dist/elements/TextField/TextField.d.ts.map +1 -0
- package/dist/elements/TextField/TextField.types.d.ts +258 -0
- package/dist/elements/TextField/TextField.types.d.ts.map +1 -0
- package/dist/elements/TextField/index.css +23 -0
- package/dist/elements/TextField/index.css.map +1 -0
- package/dist/elements/TextField/index.d.ts +13 -0
- package/dist/elements/TextField/index.d.ts.map +1 -0
- package/dist/elements/TextField/index.js +260 -0
- package/dist/elements/TextField/index.js.map +1 -0
- package/dist/elements/TextField/index.mjs +207 -0
- package/dist/elements/TextField/index.mjs.map +1 -0
- package/dist/elements/TimeField/TimeField.d.ts +34 -0
- package/dist/elements/TimeField/TimeField.d.ts.map +1 -0
- package/dist/elements/TimeField/TimeField.types.d.ts +151 -0
- package/dist/elements/TimeField/TimeField.types.d.ts.map +1 -0
- package/dist/elements/TimeField/index.d.ts +24 -0
- package/dist/elements/TimeField/index.d.ts.map +1 -0
- package/dist/elements/TimeField/index.js +45 -0
- package/dist/elements/TimeField/index.js.map +1 -0
- package/dist/elements/TimeField/index.mjs +4 -0
- package/dist/elements/TimeField/index.mjs.map +1 -0
- package/dist/elements/Toast/Toast.d.ts +105 -0
- package/dist/elements/Toast/Toast.d.ts.map +1 -0
- package/dist/elements/Toast/Toast.types.d.ts +209 -0
- package/dist/elements/Toast/Toast.types.d.ts.map +1 -0
- package/dist/elements/Toast/ToastProvider.d.ts +37 -0
- package/dist/elements/Toast/ToastProvider.d.ts.map +1 -0
- package/dist/elements/Toast/Toaster.d.ts +18 -0
- package/dist/elements/Toast/Toaster.d.ts.map +1 -0
- package/dist/elements/Toast/index.d.ts +27 -0
- package/dist/elements/Toast/index.d.ts.map +1 -0
- package/dist/elements/Toast/index.js +60 -0
- package/dist/elements/Toast/index.js.map +1 -0
- package/dist/elements/Toast/index.mjs +7 -0
- package/dist/elements/Toast/index.mjs.map +1 -0
- package/dist/elements/Tooltip/Tooltip.d.ts +108 -0
- package/dist/elements/Tooltip/Tooltip.d.ts.map +1 -0
- package/dist/elements/Tooltip/Tooltip.types.d.ts +135 -0
- package/dist/elements/Tooltip/Tooltip.types.d.ts.map +1 -0
- package/dist/elements/Tooltip/index.d.ts +11 -0
- package/dist/elements/Tooltip/index.d.ts.map +1 -0
- package/dist/elements/Tooltip/index.js +59 -0
- package/dist/elements/Tooltip/index.js.map +1 -0
- package/dist/elements/Tooltip/index.mjs +6 -0
- package/dist/elements/Tooltip/index.mjs.map +1 -0
- package/dist/elements/index.css +23 -0
- package/dist/elements/index.css.map +1 -0
- package/dist/elements/index.d.ts +42 -0
- package/dist/elements/index.d.ts.map +1 -0
- package/dist/elements/index.js +839 -0
- package/dist/elements/index.js.map +1 -0
- package/dist/elements/index.mjs +42 -0
- package/dist/elements/index.mjs.map +1 -0
- package/dist/index.css +23 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +865 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +44 -0
- package/dist/index.mjs.map +1 -0
- package/dist/schemas/BaseComponentProps.d.ts +25 -0
- package/dist/schemas/BaseComponentProps.d.ts.map +1 -0
- package/dist/schemas/RegistryItem.d.ts +55 -0
- package/dist/schemas/RegistryItem.d.ts.map +1 -0
- package/dist/schemas/index.d.ts +3 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +29 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/index.mjs +4 -0
- package/dist/schemas/index.mjs.map +1 -0
- package/dist/styles/defaults.css +174 -0
- package/dist/styles/index.d.ts +7 -0
- package/dist/styles/index.d.ts.map +1 -0
- package/dist/styles/index.js +153 -0
- package/dist/styles/index.js.map +1 -0
- package/dist/styles/index.mjs +4 -0
- package/dist/styles/index.mjs.map +1 -0
- package/dist/styles/interaction-states.d.ts +96 -0
- package/dist/styles/interaction-states.d.ts.map +1 -0
- package/dist/styles/shared-variants.d.ts +120 -0
- package/dist/styles/shared-variants.d.ts.map +1 -0
- package/dist/styles/tokens.css +89 -0
- package/dist/utils/cn.d.ts +13 -0
- package/dist/utils/cn.d.ts.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +13 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/index.mjs +4 -0
- package/dist/utils/index.mjs.map +1 -0
- package/package.json +228 -0
- package/src/elements/Accordion/Accordion.stories.tsx +793 -0
- package/src/elements/Avatar/Avatar.stories.tsx +408 -0
- package/src/elements/Badge/Badge.stories.tsx +509 -0
- package/src/elements/Breadcrumbs/Breadcrumbs.stories.tsx +623 -0
- package/src/elements/Button/Button.stories.tsx +670 -0
- package/src/elements/ButtonGroup/ButtonGroup.stories.tsx +658 -0
- package/src/elements/Card/Card.stories.tsx +570 -0
- package/src/elements/Carousel/Carousel.stories.tsx +597 -0
- package/src/elements/Chart/Chart.stories.tsx +616 -0
- package/src/elements/Checkbox/Checkbox.stories.tsx +514 -0
- package/src/elements/CheckboxGroup/CheckboxGroup.stories.tsx +1514 -0
- package/src/elements/DatePicker/DatePicker.stories.tsx +341 -0
- package/src/elements/Dropdown/Dropdown.stories.tsx +397 -0
- package/src/elements/FileField/FileField.stories.tsx +1021 -0
- package/src/elements/FileField/FileProgress.stories.tsx +359 -0
- package/src/elements/FormLayout/FormLayout.stories.tsx +637 -0
- package/src/elements/Modal/Modal.stories.tsx +640 -0
- package/src/elements/NumberField/NumberField.stories.tsx +678 -0
- package/src/elements/OTPInput/OTPInput.stories.tsx +404 -0
- package/src/elements/Panel/Panel.stories.tsx +769 -0
- package/src/elements/Progress/Progress.stories.tsx +668 -0
- package/src/elements/RadioGroup/RadioGroup.stories.tsx +1153 -0
- package/src/elements/Resizable/Resizable.stories.tsx +374 -0
- package/src/elements/Select/Select.stories.tsx +362 -0
- package/src/elements/Skeleton/Skeleton.stories.tsx +284 -0
- package/src/elements/Switch/Switch.stories.tsx +441 -0
- package/src/elements/Table/Table.stories.tsx +790 -0
- package/src/elements/Tabs/Tabs.stories.tsx +661 -0
- package/src/elements/TextField/TextField.stories.tsx +1878 -0
- package/src/elements/TimeField/TimeField.stories.tsx +671 -0
- package/src/elements/Toast/Toast.stories.tsx +971 -0
- package/src/elements/Tooltip/Tooltip.stories.tsx +748 -0
- package/tailwind.config.js +10 -0
- package/tailwind.config.v3.js +10 -0
|
@@ -0,0 +1,640 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Modal Component - Storybook Stories
|
|
3
|
+
*
|
|
4
|
+
* Interactive examples and documentation for the Modal component
|
|
5
|
+
*
|
|
6
|
+
* @see PRD.md DOC-002 (Storybook Stories Requirements)
|
|
7
|
+
* @see Storybook (when running)
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { useState } from 'react';
|
|
11
|
+
import type { Meta, StoryObj } from '@storybook/nextjs';
|
|
12
|
+
import { Modal } from './Modal';
|
|
13
|
+
import { Button } from '../Button';
|
|
14
|
+
|
|
15
|
+
const meta = {
|
|
16
|
+
title: 'Elements/Modal',
|
|
17
|
+
component: Modal,
|
|
18
|
+
tags: ['autodocs'],
|
|
19
|
+
parameters: {
|
|
20
|
+
layout: 'centered',
|
|
21
|
+
docs: {
|
|
22
|
+
description: {
|
|
23
|
+
component: 'Accessible modal modal component with React Aria primitives and ShadCN styling. Supports WCAG 2.2 AAA compliance, size variants, animation options, and full keyboard navigation.',
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
argTypes: {
|
|
28
|
+
role: {
|
|
29
|
+
control: 'select',
|
|
30
|
+
options: ['modal', 'alertmodal'],
|
|
31
|
+
description: 'Modal role for accessibility',
|
|
32
|
+
},
|
|
33
|
+
defaultOpen: {
|
|
34
|
+
control: 'boolean',
|
|
35
|
+
description: 'Default open state (uncontrolled mode)',
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
} satisfies Meta<typeof Modal>;
|
|
39
|
+
|
|
40
|
+
export default meta;
|
|
41
|
+
type Story = StoryObj<typeof meta>;
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Default Modal
|
|
45
|
+
* Basic modal with header, content, and footer
|
|
46
|
+
*/
|
|
47
|
+
export const Default: Story = {
|
|
48
|
+
render: () => (
|
|
49
|
+
<Modal>
|
|
50
|
+
<Modal.Trigger>
|
|
51
|
+
<Button>Open Modal</Button>
|
|
52
|
+
</Modal.Trigger>
|
|
53
|
+
<Modal.Content>
|
|
54
|
+
<Modal.Header>
|
|
55
|
+
<Modal.Title>Are you absolutely sure?</Modal.Title>
|
|
56
|
+
<Modal.Description>
|
|
57
|
+
This action cannot be undone. This will permanently delete your
|
|
58
|
+
account and remove your data from our servers.
|
|
59
|
+
</Modal.Description>
|
|
60
|
+
</Modal.Header>
|
|
61
|
+
<Modal.Footer>
|
|
62
|
+
<Modal.Close>
|
|
63
|
+
<Button variant="outline">Cancel</Button>
|
|
64
|
+
</Modal.Close>
|
|
65
|
+
<Modal.Close>
|
|
66
|
+
<Button>Confirm</Button>
|
|
67
|
+
</Modal.Close>
|
|
68
|
+
</Modal.Footer>
|
|
69
|
+
</Modal.Content>
|
|
70
|
+
</Modal>
|
|
71
|
+
),
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Alert Modal
|
|
76
|
+
* Confirmation modal with role="alertdialog"
|
|
77
|
+
* Typically used for important decisions requiring user acknowledgment
|
|
78
|
+
*/
|
|
79
|
+
export const AlertModal: Story = {
|
|
80
|
+
render: () => (
|
|
81
|
+
<Modal role="alertdialog">
|
|
82
|
+
<Modal.Trigger>
|
|
83
|
+
<Button variant="destructive">Delete Account</Button>
|
|
84
|
+
</Modal.Trigger>
|
|
85
|
+
<Modal.Content>
|
|
86
|
+
<Modal.Header>
|
|
87
|
+
<Modal.Title>Delete Account</Modal.Title>
|
|
88
|
+
<Modal.Description>
|
|
89
|
+
This action is irreversible. All your data, including projects,
|
|
90
|
+
settings, and user information will be permanently deleted. Are you
|
|
91
|
+
sure you want to continue?
|
|
92
|
+
</Modal.Description>
|
|
93
|
+
</Modal.Header>
|
|
94
|
+
<Modal.Footer>
|
|
95
|
+
<Modal.Close>
|
|
96
|
+
<Button variant="outline">Cancel</Button>
|
|
97
|
+
</Modal.Close>
|
|
98
|
+
<Modal.Close>
|
|
99
|
+
<Button variant="destructive">Yes, Delete Account</Button>
|
|
100
|
+
</Modal.Close>
|
|
101
|
+
</Modal.Footer>
|
|
102
|
+
</Modal.Content>
|
|
103
|
+
</Modal>
|
|
104
|
+
),
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* With Form
|
|
109
|
+
* Modal containing form elements
|
|
110
|
+
* Demonstrates form submission pattern within modal
|
|
111
|
+
*/
|
|
112
|
+
export const WithForm: Story = {
|
|
113
|
+
render: () => (
|
|
114
|
+
<Modal>
|
|
115
|
+
<Modal.Trigger>
|
|
116
|
+
<Button>Edit Profile</Button>
|
|
117
|
+
</Modal.Trigger>
|
|
118
|
+
<Modal.Content>
|
|
119
|
+
<Modal.Header>
|
|
120
|
+
<Modal.Title>Edit Profile</Modal.Title>
|
|
121
|
+
<Modal.Description>
|
|
122
|
+
Make changes to your profile here. Click save when you're done.
|
|
123
|
+
</Modal.Description>
|
|
124
|
+
</Modal.Header>
|
|
125
|
+
<form
|
|
126
|
+
onSubmit={(e) => {
|
|
127
|
+
e.preventDefault();
|
|
128
|
+
alert('Form submitted!');
|
|
129
|
+
}}
|
|
130
|
+
>
|
|
131
|
+
<div className="grid gap-4 py-4">
|
|
132
|
+
<div className="grid grid-cols-4 items-center gap-4">
|
|
133
|
+
<label htmlFor="name" className="text-right">
|
|
134
|
+
Name
|
|
135
|
+
</label>
|
|
136
|
+
<input
|
|
137
|
+
id="name"
|
|
138
|
+
defaultValue="Pedro Duarte"
|
|
139
|
+
className="col-span-3 px-3 py-2 rounded-md border border-[var(--border)] bg-[var(--background)]"
|
|
140
|
+
/>
|
|
141
|
+
</div>
|
|
142
|
+
<div className="grid grid-cols-4 items-center gap-4">
|
|
143
|
+
<label htmlFor="username" className="text-right">
|
|
144
|
+
Username
|
|
145
|
+
</label>
|
|
146
|
+
<input
|
|
147
|
+
id="username"
|
|
148
|
+
defaultValue="@peduarte"
|
|
149
|
+
className="col-span-3 px-3 py-2 rounded-md border border-[var(--border)] bg-[var(--background)]"
|
|
150
|
+
/>
|
|
151
|
+
</div>
|
|
152
|
+
</div>
|
|
153
|
+
<Modal.Footer>
|
|
154
|
+
<Modal.Close>
|
|
155
|
+
<Button variant="outline">Cancel</Button>
|
|
156
|
+
</Modal.Close>
|
|
157
|
+
<Button type="submit">Save changes</Button>
|
|
158
|
+
</Modal.Footer>
|
|
159
|
+
</form>
|
|
160
|
+
</Modal.Content>
|
|
161
|
+
</Modal>
|
|
162
|
+
),
|
|
163
|
+
};
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Long Content
|
|
167
|
+
* Modal with scrolling content
|
|
168
|
+
* Tests overflow behavior and scroll handling
|
|
169
|
+
*/
|
|
170
|
+
export const LongContent: Story = {
|
|
171
|
+
render: () => (
|
|
172
|
+
<Modal>
|
|
173
|
+
<Modal.Trigger>
|
|
174
|
+
<Button>View Terms</Button>
|
|
175
|
+
</Modal.Trigger>
|
|
176
|
+
<Modal.Content>
|
|
177
|
+
<Modal.Header>
|
|
178
|
+
<Modal.Title>Terms of Service</Modal.Title>
|
|
179
|
+
<Modal.Description>
|
|
180
|
+
Please read and accept our terms of service to continue.
|
|
181
|
+
</Modal.Description>
|
|
182
|
+
</Modal.Header>
|
|
183
|
+
<div className="max-h-[400px] overflow-y-auto pr-4">
|
|
184
|
+
<div className="space-y-4">
|
|
185
|
+
<h3 className="font-semibold">1. Acceptance of Terms</h3>
|
|
186
|
+
<p className="text-sm text-[var(--muted-foreground)]">
|
|
187
|
+
By accessing and using this service, you accept and agree to be
|
|
188
|
+
bound by the terms and provision of this agreement. If you do not
|
|
189
|
+
agree to abide by the above, please do not use this service.
|
|
190
|
+
</p>
|
|
191
|
+
<h3 className="font-semibold">2. Use License</h3>
|
|
192
|
+
<p className="text-sm text-[var(--muted-foreground)]">
|
|
193
|
+
Permission is granted to temporarily download one copy of the
|
|
194
|
+
materials (information or software) on our service for personal,
|
|
195
|
+
non-commercial transitory viewing only. This is the grant of a
|
|
196
|
+
license, not a transfer of title.
|
|
197
|
+
</p>
|
|
198
|
+
<h3 className="font-semibold">3. Disclaimer</h3>
|
|
199
|
+
<p className="text-sm text-[var(--muted-foreground)]">
|
|
200
|
+
The materials on our service are provided on an 'as is'
|
|
201
|
+
basis. We make no warranties, expressed or implied, and hereby
|
|
202
|
+
disclaim and negate all other warranties including, without
|
|
203
|
+
limitation, implied warranties or conditions of merchantability,
|
|
204
|
+
fitness for a particular purpose, or non-infringement of
|
|
205
|
+
intellectual property or other violation of rights.
|
|
206
|
+
</p>
|
|
207
|
+
<h3 className="font-semibold">4. Limitations</h3>
|
|
208
|
+
<p className="text-sm text-[var(--muted-foreground)]">
|
|
209
|
+
In no event shall we or our suppliers be liable for any damages
|
|
210
|
+
(including, without limitation, damages for loss of data or
|
|
211
|
+
profit, or due to business interruption) arising out of the use
|
|
212
|
+
or inability to use the materials on our service, even if we or
|
|
213
|
+
our authorized representative has been notified orally or in
|
|
214
|
+
writing of the possibility of such damage.
|
|
215
|
+
</p>
|
|
216
|
+
<h3 className="font-semibold">5. Accuracy of Materials</h3>
|
|
217
|
+
<p className="text-sm text-[var(--muted-foreground)]">
|
|
218
|
+
The materials appearing on our service could include technical,
|
|
219
|
+
typographical, or photographic errors. We do not warrant that any
|
|
220
|
+
of the materials on our service are accurate, complete or current.
|
|
221
|
+
We may make changes to the materials contained on our service at
|
|
222
|
+
any time without notice.
|
|
223
|
+
</p>
|
|
224
|
+
<h3 className="font-semibold">6. Links</h3>
|
|
225
|
+
<p className="text-sm text-[var(--muted-foreground)]">
|
|
226
|
+
We have not reviewed all of the sites linked to our service and
|
|
227
|
+
are not responsible for the contents of any such linked site. The
|
|
228
|
+
inclusion of any link does not imply endorsement by us of the
|
|
229
|
+
site. Use of any such linked website is at the user's own
|
|
230
|
+
risk.
|
|
231
|
+
</p>
|
|
232
|
+
</div>
|
|
233
|
+
</div>
|
|
234
|
+
<Modal.Footer>
|
|
235
|
+
<Modal.Close>
|
|
236
|
+
<Button variant="outline">Decline</Button>
|
|
237
|
+
</Modal.Close>
|
|
238
|
+
<Modal.Close>
|
|
239
|
+
<Button>Accept</Button>
|
|
240
|
+
</Modal.Close>
|
|
241
|
+
</Modal.Footer>
|
|
242
|
+
</Modal.Content>
|
|
243
|
+
</Modal>
|
|
244
|
+
),
|
|
245
|
+
};
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Custom Footer
|
|
249
|
+
* Modal with custom footer layout
|
|
250
|
+
* Demonstrates flexible footer button arrangements
|
|
251
|
+
*/
|
|
252
|
+
export const CustomFooter: Story = {
|
|
253
|
+
render: () => (
|
|
254
|
+
<Modal>
|
|
255
|
+
<Modal.Trigger>
|
|
256
|
+
<Button>Open Modal</Button>
|
|
257
|
+
</Modal.Trigger>
|
|
258
|
+
<Modal.Content>
|
|
259
|
+
<Modal.Header>
|
|
260
|
+
<Modal.Title>Custom Footer Layout</Modal.Title>
|
|
261
|
+
<Modal.Description>
|
|
262
|
+
This modal demonstrates a custom footer with three buttons and
|
|
263
|
+
different button arrangements.
|
|
264
|
+
</Modal.Description>
|
|
265
|
+
</Modal.Header>
|
|
266
|
+
<Modal.Footer className="sm:justify-between">
|
|
267
|
+
<Modal.Close>
|
|
268
|
+
<Button variant="ghost">Skip</Button>
|
|
269
|
+
</Modal.Close>
|
|
270
|
+
<div className="flex gap-2">
|
|
271
|
+
<Modal.Close>
|
|
272
|
+
<Button variant="outline">Back</Button>
|
|
273
|
+
</Modal.Close>
|
|
274
|
+
<Modal.Close>
|
|
275
|
+
<Button>Continue</Button>
|
|
276
|
+
</Modal.Close>
|
|
277
|
+
</div>
|
|
278
|
+
</Modal.Footer>
|
|
279
|
+
</Modal.Content>
|
|
280
|
+
</Modal>
|
|
281
|
+
),
|
|
282
|
+
};
|
|
283
|
+
|
|
284
|
+
/**
|
|
285
|
+
* No Description
|
|
286
|
+
* Modal without description text
|
|
287
|
+
* Shows minimal modal with only title
|
|
288
|
+
*/
|
|
289
|
+
export const NoDescription: Story = {
|
|
290
|
+
render: () => (
|
|
291
|
+
<Modal>
|
|
292
|
+
<Modal.Trigger>
|
|
293
|
+
<Button>Open Modal</Button>
|
|
294
|
+
</Modal.Trigger>
|
|
295
|
+
<Modal.Content>
|
|
296
|
+
<Modal.Header>
|
|
297
|
+
<Modal.Title>Quick Confirmation</Modal.Title>
|
|
298
|
+
</Modal.Header>
|
|
299
|
+
<div className="py-4">
|
|
300
|
+
<p className="text-sm">
|
|
301
|
+
Are you sure you want to proceed with this action?
|
|
302
|
+
</p>
|
|
303
|
+
</div>
|
|
304
|
+
<Modal.Footer>
|
|
305
|
+
<Modal.Close>
|
|
306
|
+
<Button variant="outline">Cancel</Button>
|
|
307
|
+
</Modal.Close>
|
|
308
|
+
<Modal.Close>
|
|
309
|
+
<Button>Confirm</Button>
|
|
310
|
+
</Modal.Close>
|
|
311
|
+
</Modal.Footer>
|
|
312
|
+
</Modal.Content>
|
|
313
|
+
</Modal>
|
|
314
|
+
),
|
|
315
|
+
};
|
|
316
|
+
|
|
317
|
+
/**
|
|
318
|
+
* Not Dismissable
|
|
319
|
+
* Modal that requires explicit action
|
|
320
|
+
* Backdrop click and Escape key disabled
|
|
321
|
+
*/
|
|
322
|
+
export const NotDismissable: Story = {
|
|
323
|
+
render: () => (
|
|
324
|
+
<Modal>
|
|
325
|
+
<Modal.Trigger>
|
|
326
|
+
<Button>Open Modal</Button>
|
|
327
|
+
</Modal.Trigger>
|
|
328
|
+
<Modal.Content
|
|
329
|
+
isDismissable={false}
|
|
330
|
+
isKeyboardDismissDisabled={true}
|
|
331
|
+
showClose={false}
|
|
332
|
+
>
|
|
333
|
+
<Modal.Header>
|
|
334
|
+
<Modal.Title>Important Action Required</Modal.Title>
|
|
335
|
+
<Modal.Description>
|
|
336
|
+
This modal cannot be dismissed by clicking outside or pressing
|
|
337
|
+
Escape. You must select one of the options below.
|
|
338
|
+
</Modal.Description>
|
|
339
|
+
</Modal.Header>
|
|
340
|
+
<div className="py-4">
|
|
341
|
+
<p className="text-sm text-[var(--muted-foreground)]">
|
|
342
|
+
Please review the terms and conditions before proceeding.
|
|
343
|
+
</p>
|
|
344
|
+
</div>
|
|
345
|
+
<Modal.Footer>
|
|
346
|
+
<Modal.Close>
|
|
347
|
+
<Button variant="outline">Decline</Button>
|
|
348
|
+
</Modal.Close>
|
|
349
|
+
<Modal.Close>
|
|
350
|
+
<Button>Accept</Button>
|
|
351
|
+
</Modal.Close>
|
|
352
|
+
</Modal.Footer>
|
|
353
|
+
</Modal.Content>
|
|
354
|
+
</Modal>
|
|
355
|
+
),
|
|
356
|
+
};
|
|
357
|
+
|
|
358
|
+
/**
|
|
359
|
+
* Controlled Mode
|
|
360
|
+
* Modal with external state control
|
|
361
|
+
* Demonstrates programmatic open/close
|
|
362
|
+
*/
|
|
363
|
+
export const ControlledMode: Story = {
|
|
364
|
+
render: () => {
|
|
365
|
+
function ControlledModal() {
|
|
366
|
+
const [isOpen, setIsOpen] = useState(false);
|
|
367
|
+
|
|
368
|
+
return (
|
|
369
|
+
<div className="space-y-4">
|
|
370
|
+
<div className="flex gap-2">
|
|
371
|
+
<Button onClick={() => setIsOpen(true)}>Open Modal</Button>
|
|
372
|
+
<Button variant="outline" onClick={() => setIsOpen(false)}>
|
|
373
|
+
Close Modal
|
|
374
|
+
</Button>
|
|
375
|
+
</div>
|
|
376
|
+
<p className="text-sm text-[var(--muted-foreground)]">
|
|
377
|
+
Modal is currently: {isOpen ? 'Open' : 'Closed'}
|
|
378
|
+
</p>
|
|
379
|
+
<Modal isOpen={isOpen} onOpenChange={setIsOpen}>
|
|
380
|
+
<Modal.Trigger>
|
|
381
|
+
<Button>Toggle Modal</Button>
|
|
382
|
+
</Modal.Trigger>
|
|
383
|
+
<Modal.Content>
|
|
384
|
+
<Modal.Header>
|
|
385
|
+
<Modal.Title>Controlled Modal</Modal.Title>
|
|
386
|
+
<Modal.Description>
|
|
387
|
+
This modal is controlled via external state. You can open or
|
|
388
|
+
close it using the buttons above.
|
|
389
|
+
</Modal.Description>
|
|
390
|
+
</Modal.Header>
|
|
391
|
+
<Modal.Footer>
|
|
392
|
+
<Modal.Close>
|
|
393
|
+
<Button variant="outline">Close</Button>
|
|
394
|
+
</Modal.Close>
|
|
395
|
+
</Modal.Footer>
|
|
396
|
+
</Modal.Content>
|
|
397
|
+
</Modal>
|
|
398
|
+
</div>
|
|
399
|
+
);
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
return <ControlledModal />;
|
|
403
|
+
},
|
|
404
|
+
};
|
|
405
|
+
|
|
406
|
+
/**
|
|
407
|
+
* All Themes
|
|
408
|
+
* Modal displayed in all 4 theme modes
|
|
409
|
+
* Light, Dark, High Contrast, Colorblind
|
|
410
|
+
*/
|
|
411
|
+
export const AllThemes: Story = {
|
|
412
|
+
render: () => (
|
|
413
|
+
<div className="space-y-4">
|
|
414
|
+
<p className="text-sm text-[var(--muted-foreground)]">
|
|
415
|
+
This modal adapts to all theme modes using semantic CSS tokens. The
|
|
416
|
+
Modal component automatically inherits theme variables from the
|
|
417
|
+
ThemeProvider context.
|
|
418
|
+
</p>
|
|
419
|
+
<Modal>
|
|
420
|
+
<Modal.Trigger>
|
|
421
|
+
<Button>Open Modal</Button>
|
|
422
|
+
</Modal.Trigger>
|
|
423
|
+
<Modal.Content>
|
|
424
|
+
<Modal.Header>
|
|
425
|
+
<Modal.Title>Theme-Aware Modal</Modal.Title>
|
|
426
|
+
<Modal.Description>
|
|
427
|
+
This modal uses semantic tokens that automatically adapt to
|
|
428
|
+
light, dark, high contrast, and colorblind themes.
|
|
429
|
+
</Modal.Description>
|
|
430
|
+
</Modal.Header>
|
|
431
|
+
<div className="space-y-4 py-4">
|
|
432
|
+
<div className="rounded-md bg-[var(--muted)] p-4">
|
|
433
|
+
<p className="text-sm">
|
|
434
|
+
Background: <code>var(--background)</code>
|
|
435
|
+
</p>
|
|
436
|
+
<p className="text-sm">
|
|
437
|
+
Foreground: <code>var(--foreground)</code>
|
|
438
|
+
</p>
|
|
439
|
+
<p className="text-sm">
|
|
440
|
+
Border: <code>var(--border)</code>
|
|
441
|
+
</p>
|
|
442
|
+
</div>
|
|
443
|
+
</div>
|
|
444
|
+
<Modal.Footer>
|
|
445
|
+
<Modal.Close>
|
|
446
|
+
<Button variant="outline">Close</Button>
|
|
447
|
+
</Modal.Close>
|
|
448
|
+
</Modal.Footer>
|
|
449
|
+
</Modal.Content>
|
|
450
|
+
</Modal>
|
|
451
|
+
</div>
|
|
452
|
+
),
|
|
453
|
+
};
|
|
454
|
+
|
|
455
|
+
/**
|
|
456
|
+
* Size Variants
|
|
457
|
+
* Showcases all size options
|
|
458
|
+
* sm (300px), md (425px), lg (600px), xl (800px), full
|
|
459
|
+
*/
|
|
460
|
+
export const SizeVariants: Story = {
|
|
461
|
+
render: () => (
|
|
462
|
+
<div className="flex flex-wrap gap-2">
|
|
463
|
+
<Modal>
|
|
464
|
+
<Modal.Trigger>
|
|
465
|
+
<Button size="sm">Small (sm)</Button>
|
|
466
|
+
</Modal.Trigger>
|
|
467
|
+
<Modal.Content size="sm">
|
|
468
|
+
<Modal.Header>
|
|
469
|
+
<Modal.Title>Small Modal</Modal.Title>
|
|
470
|
+
<Modal.Description>max-w-sm (300px)</Modal.Description>
|
|
471
|
+
</Modal.Header>
|
|
472
|
+
<Modal.Footer>
|
|
473
|
+
<Modal.Close>
|
|
474
|
+
<Button variant="outline">Close</Button>
|
|
475
|
+
</Modal.Close>
|
|
476
|
+
</Modal.Footer>
|
|
477
|
+
</Modal.Content>
|
|
478
|
+
</Modal>
|
|
479
|
+
|
|
480
|
+
<Modal>
|
|
481
|
+
<Modal.Trigger>
|
|
482
|
+
<Button size="sm">Medium (md)</Button>
|
|
483
|
+
</Modal.Trigger>
|
|
484
|
+
<Modal.Content size="md">
|
|
485
|
+
<Modal.Header>
|
|
486
|
+
<Modal.Title>Medium Modal</Modal.Title>
|
|
487
|
+
<Modal.Description>
|
|
488
|
+
max-w-md (425px) - Default size
|
|
489
|
+
</Modal.Description>
|
|
490
|
+
</Modal.Header>
|
|
491
|
+
<Modal.Footer>
|
|
492
|
+
<Modal.Close>
|
|
493
|
+
<Button variant="outline">Close</Button>
|
|
494
|
+
</Modal.Close>
|
|
495
|
+
</Modal.Footer>
|
|
496
|
+
</Modal.Content>
|
|
497
|
+
</Modal>
|
|
498
|
+
|
|
499
|
+
<Modal>
|
|
500
|
+
<Modal.Trigger>
|
|
501
|
+
<Button size="sm">Large (lg)</Button>
|
|
502
|
+
</Modal.Trigger>
|
|
503
|
+
<Modal.Content size="lg">
|
|
504
|
+
<Modal.Header>
|
|
505
|
+
<Modal.Title>Large Modal</Modal.Title>
|
|
506
|
+
<Modal.Description>max-w-lg (600px)</Modal.Description>
|
|
507
|
+
</Modal.Header>
|
|
508
|
+
<Modal.Footer>
|
|
509
|
+
<Modal.Close>
|
|
510
|
+
<Button variant="outline">Close</Button>
|
|
511
|
+
</Modal.Close>
|
|
512
|
+
</Modal.Footer>
|
|
513
|
+
</Modal.Content>
|
|
514
|
+
</Modal>
|
|
515
|
+
|
|
516
|
+
<Modal>
|
|
517
|
+
<Modal.Trigger>
|
|
518
|
+
<Button size="sm">Extra Large (xl)</Button>
|
|
519
|
+
</Modal.Trigger>
|
|
520
|
+
<Modal.Content size="xl">
|
|
521
|
+
<Modal.Header>
|
|
522
|
+
<Modal.Title>Extra Large Modal</Modal.Title>
|
|
523
|
+
<Modal.Description>max-w-2xl (800px)</Modal.Description>
|
|
524
|
+
</Modal.Header>
|
|
525
|
+
<Modal.Footer>
|
|
526
|
+
<Modal.Close>
|
|
527
|
+
<Button variant="outline">Close</Button>
|
|
528
|
+
</Modal.Close>
|
|
529
|
+
</Modal.Footer>
|
|
530
|
+
</Modal.Content>
|
|
531
|
+
</Modal>
|
|
532
|
+
|
|
533
|
+
<Modal>
|
|
534
|
+
<Modal.Trigger>
|
|
535
|
+
<Button size="sm">Full Screen</Button>
|
|
536
|
+
</Modal.Trigger>
|
|
537
|
+
<Modal.Content size="full">
|
|
538
|
+
<Modal.Header>
|
|
539
|
+
<Modal.Title>Full Screen Modal</Modal.Title>
|
|
540
|
+
<Modal.Description>
|
|
541
|
+
max-w-full min-h-screen - Takes up entire viewport
|
|
542
|
+
</Modal.Description>
|
|
543
|
+
</Modal.Header>
|
|
544
|
+
<Modal.Footer>
|
|
545
|
+
<Modal.Close>
|
|
546
|
+
<Button variant="outline">Close</Button>
|
|
547
|
+
</Modal.Close>
|
|
548
|
+
</Modal.Footer>
|
|
549
|
+
</Modal.Content>
|
|
550
|
+
</Modal>
|
|
551
|
+
</div>
|
|
552
|
+
),
|
|
553
|
+
};
|
|
554
|
+
|
|
555
|
+
/**
|
|
556
|
+
* Animation Variants
|
|
557
|
+
* Showcases all animation options
|
|
558
|
+
* fade-zoom (default), fade, slide, none
|
|
559
|
+
*/
|
|
560
|
+
export const AnimationVariants: Story = {
|
|
561
|
+
render: () => (
|
|
562
|
+
<div className="flex flex-wrap gap-2">
|
|
563
|
+
<Modal>
|
|
564
|
+
<Modal.Trigger>
|
|
565
|
+
<Button size="sm">Fade + Zoom</Button>
|
|
566
|
+
</Modal.Trigger>
|
|
567
|
+
<Modal.Content animation="fade-zoom">
|
|
568
|
+
<Modal.Header>
|
|
569
|
+
<Modal.Title>Fade + Zoom Animation</Modal.Title>
|
|
570
|
+
<Modal.Description>
|
|
571
|
+
Default animation with fade in and scale effect
|
|
572
|
+
</Modal.Description>
|
|
573
|
+
</Modal.Header>
|
|
574
|
+
<Modal.Footer>
|
|
575
|
+
<Modal.Close>
|
|
576
|
+
<Button variant="outline">Close</Button>
|
|
577
|
+
</Modal.Close>
|
|
578
|
+
</Modal.Footer>
|
|
579
|
+
</Modal.Content>
|
|
580
|
+
</Modal>
|
|
581
|
+
|
|
582
|
+
<Modal>
|
|
583
|
+
<Modal.Trigger>
|
|
584
|
+
<Button size="sm">Fade Only</Button>
|
|
585
|
+
</Modal.Trigger>
|
|
586
|
+
<Modal.Content animation="fade">
|
|
587
|
+
<Modal.Header>
|
|
588
|
+
<Modal.Title>Fade Animation</Modal.Title>
|
|
589
|
+
<Modal.Description>
|
|
590
|
+
Simple fade in without scale effect
|
|
591
|
+
</Modal.Description>
|
|
592
|
+
</Modal.Header>
|
|
593
|
+
<Modal.Footer>
|
|
594
|
+
<Modal.Close>
|
|
595
|
+
<Button variant="outline">Close</Button>
|
|
596
|
+
</Modal.Close>
|
|
597
|
+
</Modal.Footer>
|
|
598
|
+
</Modal.Content>
|
|
599
|
+
</Modal>
|
|
600
|
+
|
|
601
|
+
<Modal>
|
|
602
|
+
<Modal.Trigger>
|
|
603
|
+
<Button size="sm">Slide Up</Button>
|
|
604
|
+
</Modal.Trigger>
|
|
605
|
+
<Modal.Content animation="slide">
|
|
606
|
+
<Modal.Header>
|
|
607
|
+
<Modal.Title>Slide Animation</Modal.Title>
|
|
608
|
+
<Modal.Description>
|
|
609
|
+
Slides up from bottom with fade effect
|
|
610
|
+
</Modal.Description>
|
|
611
|
+
</Modal.Header>
|
|
612
|
+
<Modal.Footer>
|
|
613
|
+
<Modal.Close>
|
|
614
|
+
<Button variant="outline">Close</Button>
|
|
615
|
+
</Modal.Close>
|
|
616
|
+
</Modal.Footer>
|
|
617
|
+
</Modal.Content>
|
|
618
|
+
</Modal>
|
|
619
|
+
|
|
620
|
+
<Modal>
|
|
621
|
+
<Modal.Trigger>
|
|
622
|
+
<Button size="sm">No Animation</Button>
|
|
623
|
+
</Modal.Trigger>
|
|
624
|
+
<Modal.Content animation="none">
|
|
625
|
+
<Modal.Header>
|
|
626
|
+
<Modal.Title>No Animation</Modal.Title>
|
|
627
|
+
<Modal.Description>
|
|
628
|
+
Instant appearance without any animation
|
|
629
|
+
</Modal.Description>
|
|
630
|
+
</Modal.Header>
|
|
631
|
+
<Modal.Footer>
|
|
632
|
+
<Modal.Close>
|
|
633
|
+
<Button variant="outline">Close</Button>
|
|
634
|
+
</Modal.Close>
|
|
635
|
+
</Modal.Footer>
|
|
636
|
+
</Modal.Content>
|
|
637
|
+
</Modal>
|
|
638
|
+
</div>
|
|
639
|
+
),
|
|
640
|
+
};
|