@stfrigerio/sito-template 0.1.36 → 0.1.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__tests__/setup.d.ts +2 -0
- package/dist/__tests__/setup.d.ts.map +1 -0
- package/dist/components/atoms/AllAtoms.stories.d.ts +1 -1
- package/dist/components/atoms/AllAtoms.stories.d.ts.map +1 -1
- package/dist/components/atoms/Button/Button.stories.d.ts +2 -14
- package/dist/components/atoms/Button/Button.stories.d.ts.map +1 -1
- package/dist/components/atoms/Card/Card.stories.d.ts +4 -23
- package/dist/components/atoms/Card/Card.stories.d.ts.map +1 -1
- package/dist/components/atoms/Checkbox/Checkbox.stories.d.ts +1 -1
- package/dist/components/atoms/Checkbox/Checkbox.stories.d.ts.map +1 -1
- package/dist/components/atoms/DateInput/DateInput.d.ts +1 -1
- package/dist/components/atoms/DateInput/DateInput.d.ts.map +1 -1
- package/dist/components/atoms/DateInput/DateInput.stories.d.ts +1 -1
- package/dist/components/atoms/DateInput/DateInput.stories.d.ts.map +1 -1
- package/dist/components/atoms/DecryptedText/DecryptedText.d.ts +50 -0
- package/dist/components/atoms/DecryptedText/DecryptedText.d.ts.map +1 -0
- package/dist/components/atoms/DecryptedText/index.d.ts +3 -0
- package/dist/components/atoms/DecryptedText/index.d.ts.map +1 -0
- package/dist/components/atoms/LoadingSpinner/LoadingSpinner.d.ts.map +1 -1
- package/dist/components/atoms/LoadingSpinner/LoadingSpinner.stories.d.ts +1 -1
- package/dist/components/atoms/LoadingSpinner/LoadingSpinner.stories.d.ts.map +1 -1
- package/dist/components/atoms/NumberStepper/NumberStepper.d.ts.map +1 -1
- package/dist/components/atoms/NumberStepper/NumberStepper.stories.d.ts +1 -1
- package/dist/components/atoms/NumberStepper/NumberStepper.stories.d.ts.map +1 -1
- package/dist/components/atoms/SearchableDropdown/SearchableDropdown.stories.d.ts +1 -1
- package/dist/components/atoms/SearchableDropdown/SearchableDropdown.stories.d.ts.map +1 -1
- package/dist/components/atoms/SelectInput/SelectInput.d.ts +4 -2
- package/dist/components/atoms/SelectInput/SelectInput.d.ts.map +1 -1
- package/dist/components/atoms/Slider/Slider.stories.d.ts +2 -10
- package/dist/components/atoms/Slider/Slider.stories.d.ts.map +1 -1
- package/dist/components/atoms/SoundDemo/SoundDemo.d.ts +11 -0
- package/dist/components/atoms/SoundDemo/SoundDemo.d.ts.map +1 -0
- package/dist/components/atoms/SoundDemo/SoundDemo.stories.d.ts +1 -1
- package/dist/components/atoms/SoundDemo/SoundDemo.stories.d.ts.map +1 -1
- package/dist/components/atoms/TextArea/TextArea.d.ts.map +1 -1
- package/dist/components/atoms/TextArea/TextArea.stories.d.ts +1 -1
- package/dist/components/atoms/TextArea/TextArea.stories.d.ts.map +1 -1
- package/dist/components/atoms/TextInput/TextInput.d.ts +1 -1
- package/dist/components/atoms/TextInput/TextInput.d.ts.map +1 -1
- package/dist/components/atoms/TextInput/TextInput.stories.d.ts +1 -4
- package/dist/components/atoms/TextInput/TextInput.stories.d.ts.map +1 -1
- package/dist/components/atoms/Toggle/Toggle.d.ts +5 -4
- package/dist/components/atoms/Toggle/Toggle.d.ts.map +1 -1
- package/dist/components/atoms/Toggle/Toggle.stories.d.ts +1 -1
- package/dist/components/atoms/Toggle/Toggle.stories.d.ts.map +1 -1
- package/dist/components/atoms/ToggleButton/ToggleButton.stories.d.ts +1 -1
- package/dist/components/atoms/ToggleButton/ToggleButton.stories.d.ts.map +1 -1
- package/dist/components/atoms/index.d.ts +2 -0
- package/dist/components/atoms/index.d.ts.map +1 -1
- package/dist/components/molecules/ArrayInput/ArrayInput.d.ts +3 -3
- package/dist/components/molecules/ArrayInput/ArrayInput.d.ts.map +1 -1
- package/dist/components/molecules/ArrayInput/ArrayInput.stories.d.ts +1 -1
- package/dist/components/molecules/ArrayInput/ArrayInput.stories.d.ts.map +1 -1
- package/dist/components/molecules/Breadcrumb/Breadcrumb.d.ts +28 -0
- package/dist/components/molecules/Breadcrumb/Breadcrumb.d.ts.map +1 -0
- package/dist/components/molecules/Breadcrumb/index.d.ts +3 -0
- package/dist/components/molecules/Breadcrumb/index.d.ts.map +1 -0
- package/dist/components/molecules/EditFAB/EditFAB.stories.d.ts +1 -1
- package/dist/components/molecules/EditFAB/EditFAB.stories.d.ts.map +1 -1
- package/dist/components/molecules/LiquidButton/LiquidButton.d.ts +33 -0
- package/dist/components/molecules/LiquidButton/LiquidButton.d.ts.map +1 -0
- package/dist/components/molecules/LiquidButton/index.d.ts +3 -0
- package/dist/components/molecules/LiquidButton/index.d.ts.map +1 -0
- package/dist/components/molecules/SearchBar/SearchBar.stories.d.ts +1 -1
- package/dist/components/molecules/SearchBar/SearchBar.stories.d.ts.map +1 -1
- package/dist/components/molecules/Tabs/Tabs.d.ts +1 -1
- package/dist/components/molecules/Tabs/Tabs.d.ts.map +1 -1
- package/dist/components/molecules/Tabs/Tabs.stories.d.ts +1 -1
- package/dist/components/molecules/Tabs/Tabs.stories.d.ts.map +1 -1
- package/dist/components/molecules/ThemeSwitcher/ThemeSwitcher.d.ts +4 -3
- package/dist/components/molecules/ThemeSwitcher/ThemeSwitcher.d.ts.map +1 -1
- package/dist/components/molecules/ThemeSwitcher/ThemeSwitcher.stories.d.ts +1 -1
- package/dist/components/molecules/ThemeSwitcher/ThemeSwitcher.stories.d.ts.map +1 -1
- package/dist/components/molecules/TimeInput/TimeInput.stories.d.ts +1 -1
- package/dist/components/molecules/TimeInput/TimeInput.stories.d.ts.map +1 -1
- package/dist/components/molecules/Toast/Toast.d.ts +16 -0
- package/dist/components/molecules/Toast/Toast.d.ts.map +1 -0
- package/dist/components/molecules/Toast/index.d.ts +3 -0
- package/dist/components/molecules/Toast/index.d.ts.map +1 -0
- package/dist/components/molecules/index.d.ts +6 -0
- package/dist/components/molecules/index.d.ts.map +1 -1
- package/dist/components/organisms/Calendar/Calendar.d.ts +1 -1
- package/dist/components/organisms/Calendar/Calendar.d.ts.map +1 -1
- package/dist/components/organisms/Calendar/Calendar.stories.d.ts +1 -1
- package/dist/components/organisms/Calendar/Calendar.stories.d.ts.map +1 -1
- package/dist/components/organisms/ConfirmationModal/ConfirmationModal.d.ts +30 -0
- package/dist/components/organisms/ConfirmationModal/ConfirmationModal.d.ts.map +1 -0
- package/dist/components/organisms/ConfirmationModal/index.d.ts +3 -0
- package/dist/components/organisms/ConfirmationModal/index.d.ts.map +1 -0
- package/dist/components/organisms/ImageSlideshow/ImageSlideshow.d.ts +1 -1
- package/dist/components/organisms/ImageSlideshow/ImageSlideshow.d.ts.map +1 -1
- package/dist/components/organisms/ImageSlideshow/ImageSlideshow.stories.d.ts +1 -6
- package/dist/components/organisms/ImageSlideshow/ImageSlideshow.stories.d.ts.map +1 -1
- package/dist/components/organisms/Navbar/Navbar.d.ts +3 -2
- package/dist/components/organisms/Navbar/Navbar.d.ts.map +1 -1
- package/dist/components/organisms/Navbar/Navbar.stories.d.ts +1 -1
- package/dist/components/organisms/Navbar/Navbar.stories.d.ts.map +1 -1
- package/dist/components/organisms/Table/Table.d.ts +6 -6
- package/dist/components/organisms/Table/Table.d.ts.map +1 -1
- package/dist/components/organisms/Table/Table.stories.d.ts +26 -14
- package/dist/components/organisms/Table/Table.stories.d.ts.map +1 -1
- package/dist/components/organisms/ThemeProvider/ThemeProvider.d.ts +3 -1
- package/dist/components/organisms/ThemeProvider/ThemeProvider.d.ts.map +1 -1
- package/dist/components/organisms/charts/BooleansHeatmap/BooleansHeatmap.d.ts.map +1 -1
- package/dist/components/organisms/charts/BooleansHeatmap/BooleansHeatmap.stories.d.ts +1 -1
- package/dist/components/organisms/charts/BooleansHeatmap/BooleansHeatmap.stories.d.ts.map +1 -1
- package/dist/components/organisms/charts/MoodChart/MoodChart.stories.d.ts +1 -1
- package/dist/components/organisms/charts/MoodChart/MoodChart.stories.d.ts.map +1 -1
- package/dist/components/organisms/charts/PieChart/PieChart.d.ts.map +1 -1
- package/dist/components/organisms/charts/PieChart/PieChart.stories.d.ts +1 -1
- package/dist/components/organisms/charts/PieChart/PieChart.stories.d.ts.map +1 -1
- package/dist/components/organisms/charts/QuantifiableHabitsChart/QuantifiableHabitsChart.d.ts +2 -0
- package/dist/components/organisms/charts/QuantifiableHabitsChart/QuantifiableHabitsChart.d.ts.map +1 -1
- package/dist/components/organisms/charts/QuantifiableHabitsChart/QuantifiableHabitsChart.stories.d.ts +1 -1
- package/dist/components/organisms/charts/QuantifiableHabitsChart/QuantifiableHabitsChart.stories.d.ts.map +1 -1
- package/dist/components/organisms/charts/SleepChart/SleepChart.stories.d.ts +1 -1
- package/dist/components/organisms/charts/SleepChart/SleepChart.stories.d.ts.map +1 -1
- package/dist/components/organisms/charts/SunburstChart/SunburstChart.d.ts.map +1 -1
- package/dist/components/organisms/charts/SunburstChart/SunburstChart.stories.d.ts +1 -1
- package/dist/components/organisms/charts/SunburstChart/SunburstChart.stories.d.ts.map +1 -1
- package/dist/components/organisms/index.d.ts +3 -1
- package/dist/components/organisms/index.d.ts.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +716 -473
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +734 -485
- package/dist/index.js.map +1 -1
- package/dist/stories/utils.d.ts +2 -2
- package/dist/stories/utils.d.ts.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/styles.css.map +1 -1
- package/dist/themes/default.css +47 -0
- package/dist/themes/dmood.css +46 -0
- package/dist/themes/globals.css +110 -0
- package/dist/themes/lossito.css +52 -0
- package/dist/tokens/tokens.css +79 -0
- package/dist/utils/formUtils.d.ts +0 -5
- package/dist/utils/formUtils.d.ts.map +1 -1
- package/package.json +32 -10
- package/storybook-static/addon-visual-tests-assets/visual-test-illustration.mp4 +0 -0
- package/storybook-static/assets/AllAtoms.stories-DBoQZmq-.js +109 -0
- package/storybook-static/assets/AnimationPlayer-UXJjBKtF.css +1 -0
- package/storybook-static/assets/AnimationPlayer.stories-yXQ8fqUT.js +379 -0
- package/storybook-static/assets/ArrayInput-CkUpk1TR.css +1 -0
- package/storybook-static/assets/ArrayInput.stories-CRqKExgm.js +221 -0
- package/storybook-static/assets/BooleansHeatmap-BV4VTyo6.css +1 -0
- package/storybook-static/assets/BooleansHeatmap.stories-2u4SThph.js +123 -0
- package/storybook-static/assets/Button-O-w2-ag3.css +1 -0
- package/storybook-static/assets/Button-VfdDKp2T.js +37 -0
- package/storybook-static/assets/Button.stories-BeeBKHoX.js +117 -0
- package/storybook-static/assets/Calendar-BTQfDDfP.css +1 -0
- package/storybook-static/assets/Calendar.stories-CKOG4XAn.js +545 -0
- package/storybook-static/assets/Card-Bc7TyfBx.css +1 -0
- package/storybook-static/assets/Card-D-kcaQHV.js +49 -0
- package/storybook-static/assets/Card.stories-CpcboxKs.js +130 -0
- package/storybook-static/assets/Checkbox-BHwlDfRP.js +33 -0
- package/storybook-static/assets/Checkbox-DMUHtq9s.css +1 -0
- package/storybook-static/assets/Checkbox.stories-DxTQrFgm.js +83 -0
- package/storybook-static/assets/Color-AVL7NMMY-BzNNgCT5.js +1 -0
- package/storybook-static/assets/DateInput-C4-Rlnpy.css +1 -0
- package/storybook-static/assets/DateInput-Cu3PZYc0.js +33 -0
- package/storybook-static/assets/DateInput.stories-BGB5zJBm.js +119 -0
- package/storybook-static/assets/DocsRenderer-PQXLIZUC-q9kcQxfH.js +1243 -0
- package/storybook-static/assets/EditFAB-CntUhqRB.css +1 -0
- package/storybook-static/assets/EditFAB.stories-CmfJxWns.js +408 -0
- package/storybook-static/assets/MoodChart-2hr_Y2GI.css +1 -0
- package/storybook-static/assets/MoodChart.stories-V-wKOSu-.js +40 -0
- package/storybook-static/assets/Navbar-B8vEvGnB.css +1 -0
- package/storybook-static/assets/Navbar.stories-Dkf77idX.js +235 -0
- package/storybook-static/assets/NumberStepper-BVHPJutJ.css +1 -0
- package/storybook-static/assets/NumberStepper-BZGlrWCN.js +30 -0
- package/storybook-static/assets/NumberStepper.stories-NZw7r4Oh.js +127 -0
- package/storybook-static/assets/PieChart-OfDGlJ4g.css +1 -0
- package/storybook-static/assets/PieChart.stories-BkfNODjW.js +199 -0
- package/storybook-static/assets/QuantifiableHabitsChart-BEfzqND4.css +1 -0
- package/storybook-static/assets/QuantifiableHabitsChart.stories-Df6rcrdD.js +105 -0
- package/storybook-static/assets/SearchBar-CYhuHFt7.css +1 -0
- package/storybook-static/assets/SearchBar.stories-DmHIaDZB.js +154 -0
- package/storybook-static/assets/SearchableDropdown-ByAXm1md.js +38 -0
- package/storybook-static/assets/SearchableDropdown-CLYLzeoj.css +1 -0
- package/storybook-static/assets/SearchableDropdown.stories-ByZj6lJu.js +282 -0
- package/storybook-static/assets/SelectInput-BTPptV1H.css +1 -0
- package/storybook-static/assets/SelectInput-D-AwfWVz.js +31 -0
- package/storybook-static/assets/SelectInput.stories-MyE-GqOw.js +112 -0
- package/storybook-static/assets/SleepChart-yGsG5RlQ.css +1 -0
- package/storybook-static/assets/SleepChart.stories-Dsz1U6F9.js +58 -0
- package/storybook-static/assets/SunburstChart-ChXvU9py.css +1 -0
- package/storybook-static/assets/SunburstChart.stories-CphfyDsR.js +285 -0
- package/storybook-static/assets/Tabs-BfJ7skOE.css +1 -0
- package/storybook-static/assets/Tabs.stories-c24Ffu3K.js +49 -0
- package/storybook-static/assets/TextArea-B2UrQsuf.css +1 -0
- package/storybook-static/assets/TextArea-B_sATPlw.js +28 -0
- package/storybook-static/assets/TextArea.stories-CCqRRpwq.js +145 -0
- package/storybook-static/assets/TextInput-BjVJQEYN.css +1 -0
- package/storybook-static/assets/TextInput-ZGg8LTL_.js +28 -0
- package/storybook-static/assets/TextInput.stories-CtvOb60q.js +203 -0
- package/storybook-static/assets/ThemeSwitcher-XCVQ6hhy.css +1 -0
- package/storybook-static/assets/ThemeSwitcher.stories-BvkX1SDm.js +62 -0
- package/storybook-static/assets/TimeInput-C3enPYoV.css +1 -0
- package/storybook-static/assets/TimeInput.stories-BchhRfKo.js +50 -0
- package/storybook-static/assets/Toggle-BQ2KHBDr.js +39 -0
- package/storybook-static/assets/Toggle-DhKq5lh5.css +1 -0
- package/storybook-static/assets/Toggle.stories-BUSZc6m3.js +194 -0
- package/storybook-static/assets/ToggleButton-Dl6hvkJv.js +32 -0
- package/storybook-static/assets/ToggleButton-gfPoPxTQ.css +1 -0
- package/storybook-static/assets/ToggleButton.stories-BKN4zU3N.js +143 -0
- package/storybook-static/assets/arc-DgcIQOLP.js +1 -0
- package/storybook-static/assets/array-BKyUJesY.js +1 -0
- package/storybook-static/assets/defaultLocale-DJ2q5QjE.js +1 -0
- package/storybook-static/assets/iframe-BOc1hSA-.css +1 -0
- package/storybook-static/assets/iframe-BUaP2gIF.js +1087 -0
- package/storybook-static/assets/index-5bdJXrkD.js +1 -0
- package/storybook-static/assets/index-CBmvvqzc.js +1 -0
- package/storybook-static/assets/index-CZs7_DA6.js +9 -0
- package/storybook-static/assets/linear-4t_RuQok.js +1 -0
- package/storybook-static/assets/monotone-BYG7Mesf.js +1 -0
- package/storybook-static/assets/path-CbwjOpE9.js +1 -0
- package/storybook-static/assets/preload-helper-C1FmrZbK.js +1 -0
- package/storybook-static/assets/proxy-9Y4F2rF8.js +1 -0
- package/storybook-static/assets/react-18-D4c-_GAk.js +24 -0
- package/storybook-static/assets/transform-NloTqvdv.js +1 -0
- package/storybook-static/favicon-wrapper.svg +46 -0
- package/storybook-static/favicon.svg +1 -0
- package/storybook-static/iframe.html +726 -0
- package/storybook-static/index.html +164 -0
- package/storybook-static/index.json +1 -0
- package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
- package/storybook-static/nunito-sans-bold.woff2 +0 -0
- package/storybook-static/nunito-sans-italic.woff2 +0 -0
- package/storybook-static/nunito-sans-regular.woff2 +0 -0
- package/storybook-static/project.json +1 -0
- package/storybook-static/sb-addons/chromatic-com-storybook-4/manager-bundle.js +356 -0
- package/storybook-static/sb-addons/chromatic-com-storybook-4/manager-bundle.js.LEGAL.txt +40 -0
- package/storybook-static/sb-addons/docs-2/manager-bundle.js +151 -0
- package/storybook-static/sb-addons/links-3/manager-bundle.js +3 -0
- package/storybook-static/sb-addons/onboarding-1/manager-bundle.js +127 -0
- package/storybook-static/sb-addons/storybook-5/manager-bundle.js +3 -0
- package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +971 -0
- package/storybook-static/sb-common-assets/favicon-wrapper.svg +46 -0
- package/storybook-static/sb-common-assets/favicon.svg +1 -0
- package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
- package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
- package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
- package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
- package/storybook-static/sb-manager/globals-module-info.js +797 -0
- package/storybook-static/sb-manager/globals-runtime.js +69653 -0
- package/storybook-static/sb-manager/globals.js +34 -0
- package/storybook-static/sb-manager/runtime.js +13181 -0
- package/storybook-static/vite-inject-mocker-entry.js +18 -0
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
import{j as e,r as d}from"./iframe-BUaP2gIF.js";import{B as k}from"./Button-VfdDKp2T.js";import{T as ne}from"./TextInput-ZGg8LTL_.js";import{T as te}from"./TextArea-B_sATPlw.js";import{A as re}from"./index-CZs7_DA6.js";import{m as se}from"./proxy-9Y4F2rF8.js";import"./preload-helper-C1FmrZbK.js";const oe="_arrayInput_6qbs9_1",le="_arrayInputLabel_6qbs9_5",ie="_arrayInputItem_6qbs9_14",me="_inputWrapper_6qbs9_38",ce="_input_6qbs9_38",de="_complexItem_6qbs9_71",pe="_fieldsWrapper_6qbs9_77",ue="_removeButton_6qbs9_96",he="_addButton_6qbs9_112",o={arrayInput:oe,arrayInputLabel:le,arrayInputItem:ie,inputWrapper:me,input:ce,complexItem:de,fieldsWrapper:pe,removeButton:ue,addButton:he};function c(t){return t.type==="complex"?e.jsx(be,{...t}):e.jsx(ge,{...t})}function ge({label:t,values:s,onChange:l,placeholder:m,itemStyle:p,inputStyle:u,multiline:S=!1,rows:h=3}){const g=(n,r)=>{const a=[...s];a[n]=r,l(a)},A=()=>{l([...s,""])},w=n=>{const r=s.filter((a,i)=>i!==n);l(r)};return e.jsxs("div",{className:o.arrayInput,children:[e.jsx("h3",{className:o.arrayInputLabel,children:t}),e.jsx("div",{children:e.jsx(re,{children:s.map((n,r)=>e.jsxs(se.div,{className:o.arrayInputItem,style:p,initial:{opacity:0,y:10},animate:{opacity:1,y:0},exit:{opacity:0},transition:{duration:.3,ease:"easeInOut",layout:{duration:.2}},children:[e.jsx("div",{className:o.inputWrapper,children:S?e.jsx("div",{style:u,children:e.jsx(te,{label:"",value:n,onChange:a=>g(r,a),placeholder:m,rows:h,compact:!0})}):e.jsx("input",{type:"text",value:n,onChange:a=>g(r,a.target.value),placeholder:m,className:o.input,style:u})}),e.jsx(k,{variant:"ghost",size:"small",onClick:()=>w(r),"aria-label":"Remove item",className:o.removeButton,children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"currentColor",children:e.jsx("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})})})]},`item-${r}`))})}),e.jsxs(k,{variant:"primary",size:"small",onClick:A,className:o.addButton,children:["Add ",t]})]})}function be({label:t,values:s,onChange:l,fields:m,getKey:p,itemStyle:u,inputStyle:S}){const h=(n,r,a)=>{const i=[...s];i[n]={...i[n],[r]:a},l(i)},g=()=>{const n=m.reduce((r,a)=>({...r,[a.name]:""}),{});l([...s,n])},A=n=>{const r=s.filter((a,i)=>i!==n);l(r)},w=(n,r)=>p?p(n,r):m.map(a=>n[a.name]||"").join("-")+`-${r}`;return e.jsxs("div",{className:o.arrayInput,children:[e.jsx("h3",{className:o.arrayInputLabel,children:t}),e.jsx("div",{children:e.jsx(re,{children:s.map((n,r)=>e.jsxs(se.div,{className:`${o.arrayInputItem} ${m.length>1?o.complexItem:""}`,style:u,initial:{opacity:0,y:10},animate:{opacity:1,y:0},exit:{opacity:0},transition:{duration:.3,ease:"easeInOut",layout:{duration:.2}},children:[e.jsx("div",{className:o.fieldsWrapper,children:m.map(a=>e.jsx("div",{style:S,children:a.multiline?e.jsx(te,{value:n[a.name]||"",onChange:i=>h(r,a.name,i),label:a.label,placeholder:a.placeholder,rows:a.rows,compact:!0}):e.jsx(ne,{value:n[a.name]||"",onChange:i=>h(r,a.name,i),label:a.label,type:a.type,placeholder:a.placeholder})},a.name))}),e.jsx(k,{variant:"ghost",size:"small",onClick:()=>A(r),"aria-label":"Remove item",className:o.removeButton,children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"currentColor",children:e.jsx("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})})})]},w(n,r)))})}),e.jsxs(k,{variant:"primary",size:"small",onClick:g,className:o.addButton,children:["Add ",t]})]})}c.__docgenInfo={description:`ArrayInput component - Versatile dynamic list manager
|
|
2
|
+
|
|
3
|
+
@component
|
|
4
|
+
@description
|
|
5
|
+
A flexible component that can handle both simple string arrays and complex object arrays.
|
|
6
|
+
Users can add, remove, and edit items dynamically. Supports custom field configurations
|
|
7
|
+
for complex data structures.
|
|
8
|
+
|
|
9
|
+
@example
|
|
10
|
+
// Simple string array
|
|
11
|
+
<ArrayInput
|
|
12
|
+
label="Tags"
|
|
13
|
+
values={tags}
|
|
14
|
+
onChange={setTags}
|
|
15
|
+
placeholder="Enter tag"
|
|
16
|
+
/>
|
|
17
|
+
|
|
18
|
+
@example
|
|
19
|
+
// Complex object array
|
|
20
|
+
<ArrayInput
|
|
21
|
+
type="complex"
|
|
22
|
+
label="Social Links"
|
|
23
|
+
values={links}
|
|
24
|
+
onChange={setLinks}
|
|
25
|
+
fields={[
|
|
26
|
+
{ name: 'label', label: 'Label', placeholder: 'GitHub' },
|
|
27
|
+
{ name: 'url', label: 'URL', type: 'url', placeholder: 'https://github.com/...' }
|
|
28
|
+
]}
|
|
29
|
+
/>`,methods:[],displayName:"ArrayInput"};const Ce={title:"Molecules/ArrayInput",component:c,parameters:{layout:"centered",docs:{description:{component:"A dynamic array input component that allows adding and removing multiple text inputs."}}},tags:["autodocs"],argTypes:{label:{control:"text",description:"Label for the array input group"},values:{control:"object",description:"Array of string values"},placeholder:{control:"text",description:"Placeholder text for each input"},onChange:{action:"changed"}}},b={args:{label:"Items",values:[""],placeholder:"Enter item",onChange:()=>{}}},x={args:{label:"Tags",values:["React","TypeScript","Storybook"],placeholder:"Enter tag",onChange:()=>{}}},y={args:{label:"Skills",values:[],placeholder:"Add a skill",onChange:()=>{}}},f={args:{label:"Email Addresses",values:["john@example.com","jane@example.com"],placeholder:"Enter email",onChange:()=>{}},render:()=>{const[t,s]=d.useState(["john@example.com","jane@example.com"]);return e.jsxs("div",{children:[e.jsx(c,{label:"Email Addresses",values:t,onChange:s,placeholder:"Enter email"}),e.jsxs("div",{style:{marginTop:"1rem",padding:"1rem",background:"#f5f5f5",borderRadius:"4px"},children:[e.jsx("p",{style:{margin:0,fontSize:"0.875rem"},children:e.jsxs("strong",{children:["Emails (",t.length,"):"]})}),e.jsx("ul",{style:{margin:"0.5rem 0 0",paddingLeft:"1.5rem"},children:t.map((l,m)=>e.jsx("li",{style:{fontSize:"0.875rem"},children:l||"(empty)"},m))})]})]})}},v={args:{label:"Tasks",values:["Buy groceries","Walk the dog",""],placeholder:"Enter a task",onChange:()=>{}},render:()=>{const[t,s]=d.useState(["Buy groceries","Walk the dog",""]);return e.jsxs("div",{style:{maxWidth:"400px"},children:[e.jsx("h3",{style:{marginBottom:"1rem"},children:"Todo List"}),e.jsx(c,{label:"Tasks",values:t,onChange:s,placeholder:"Enter a task"})]})},parameters:{controls:{disable:!0}}},j={args:{label:"Team Members",values:["Alice Johnson","Bob Smith",""],placeholder:"Enter member name",onChange:()=>{}},render:()=>{const[t,s]=d.useState(["Alice Johnson","Bob Smith",""]);return e.jsxs("div",{style:{padding:"1.5rem",background:"#fff",border:"1px solid #e0e0e0",borderRadius:"8px",maxWidth:"450px"},children:[e.jsx("h3",{style:{marginTop:0},children:"Project Team"}),e.jsx(c,{label:"Team Members",values:t,onChange:s,placeholder:"Enter member name"}),e.jsxs("p",{style:{marginTop:"1rem",fontSize:"0.875rem",color:"#666"},children:["Total members: ",t.filter(l=>l).length]})]})},parameters:{controls:{disable:!0}}},I={args:{label:"Ingredients",values:["2 cups flour","1 cup sugar","3 eggs","1 tsp vanilla extract",""],placeholder:"Add ingredient",onChange:()=>{}},render:()=>{const[t,s]=d.useState(["2 cups flour","1 cup sugar","3 eggs","1 tsp vanilla extract",""]);return e.jsxs("div",{style:{padding:"1.5rem",background:"#fffef5",border:"2px solid #f0e68c",borderRadius:"8px",maxWidth:"400px"},children:[e.jsx("h3",{style:{marginTop:0,color:"#8b7355"},children:"🍰 Recipe Ingredients"}),e.jsx(c,{label:"Ingredients",values:t,onChange:s,placeholder:"Add ingredient"})]})},parameters:{controls:{disable:!0}}},T={render:()=>{const[t,s]=d.useState(["This is a longer note that demonstrates how multiline text works. The textarea will wrap properly and allow for multiple lines of content.","Another note with some detailed information that spans multiple lines and shows how the component handles longer text content.",""]);return e.jsx("div",{style:{maxWidth:"600px"},children:e.jsx(c,{label:"Project Notes",values:t,onChange:s,placeholder:"Enter detailed note...",multiline:!0,rows:4})})},parameters:{controls:{disable:!0}}},C={render:()=>{const[t,s]=d.useState([{name:"Sarah Johnson",title:"Product Manager",feedback:"This tool has completely transformed how our team collaborates. The intuitive interface and powerful features make project management effortless."},{name:"Mike Chen",title:"Software Engineer",feedback:"Amazing performance and reliability. The development experience is smooth and the documentation is comprehensive."}]);return e.jsx("div",{style:{maxWidth:"700px"},children:e.jsx(c,{type:"complex",label:"Customer Testimonials",values:t,onChange:s,fields:[{name:"name",label:"Name",placeholder:"Customer name"},{name:"title",label:"Job Title",placeholder:"Job title"},{name:"feedback",label:"Testimonial",placeholder:"Enter customer feedback...",multiline:!0,rows:4}]})})},parameters:{controls:{disable:!0}}};var E,_,B;b.parameters={...b.parameters,docs:{...(E=b.parameters)==null?void 0:E.docs,source:{originalSource:`{
|
|
30
|
+
args: {
|
|
31
|
+
label: 'Items',
|
|
32
|
+
values: [''],
|
|
33
|
+
placeholder: 'Enter item',
|
|
34
|
+
onChange: () => {}
|
|
35
|
+
}
|
|
36
|
+
}`,...(B=(_=b.parameters)==null?void 0:_.docs)==null?void 0:B.source}}};var W,N,L;x.parameters={...x.parameters,docs:{...(W=x.parameters)==null?void 0:W.docs,source:{originalSource:`{
|
|
37
|
+
args: {
|
|
38
|
+
label: 'Tags',
|
|
39
|
+
values: ['React', 'TypeScript', 'Storybook'],
|
|
40
|
+
placeholder: 'Enter tag',
|
|
41
|
+
onChange: () => {}
|
|
42
|
+
}
|
|
43
|
+
}`,...(L=(N=x.parameters)==null?void 0:N.docs)==null?void 0:L.source}}};var M,R,z;y.parameters={...y.parameters,docs:{...(M=y.parameters)==null?void 0:M.docs,source:{originalSource:`{
|
|
44
|
+
args: {
|
|
45
|
+
label: 'Skills',
|
|
46
|
+
values: [],
|
|
47
|
+
placeholder: 'Add a skill',
|
|
48
|
+
onChange: () => {}
|
|
49
|
+
}
|
|
50
|
+
}`,...(z=(R=y.parameters)==null?void 0:R.docs)==null?void 0:z.source}}};var J,q,P;f.parameters={...f.parameters,docs:{...(J=f.parameters)==null?void 0:J.docs,source:{originalSource:`{
|
|
51
|
+
args: {
|
|
52
|
+
label: 'Email Addresses',
|
|
53
|
+
values: ['john@example.com', 'jane@example.com'],
|
|
54
|
+
placeholder: 'Enter email',
|
|
55
|
+
onChange: () => {}
|
|
56
|
+
},
|
|
57
|
+
render: () => {
|
|
58
|
+
const [emails, setEmails] = useState(['john@example.com', 'jane@example.com']);
|
|
59
|
+
return <div>
|
|
60
|
+
<ArrayInput label="Email Addresses" values={emails} onChange={setEmails} placeholder="Enter email" />
|
|
61
|
+
<div style={{
|
|
62
|
+
marginTop: '1rem',
|
|
63
|
+
padding: '1rem',
|
|
64
|
+
background: '#f5f5f5',
|
|
65
|
+
borderRadius: '4px'
|
|
66
|
+
}}>
|
|
67
|
+
<p style={{
|
|
68
|
+
margin: 0,
|
|
69
|
+
fontSize: '0.875rem'
|
|
70
|
+
}}>
|
|
71
|
+
<strong>Emails ({emails.length}):</strong>
|
|
72
|
+
</p>
|
|
73
|
+
<ul style={{
|
|
74
|
+
margin: '0.5rem 0 0',
|
|
75
|
+
paddingLeft: '1.5rem'
|
|
76
|
+
}}>
|
|
77
|
+
{emails.map((email, index) => <li key={index} style={{
|
|
78
|
+
fontSize: '0.875rem'
|
|
79
|
+
}}>
|
|
80
|
+
{email || '(empty)'}
|
|
81
|
+
</li>)}
|
|
82
|
+
</ul>
|
|
83
|
+
</div>
|
|
84
|
+
</div>;
|
|
85
|
+
}
|
|
86
|
+
}`,...(P=(q=f.parameters)==null?void 0:q.docs)==null?void 0:P.source}}};var V,$,O;v.parameters={...v.parameters,docs:{...(V=v.parameters)==null?void 0:V.docs,source:{originalSource:`{
|
|
87
|
+
args: {
|
|
88
|
+
label: 'Tasks',
|
|
89
|
+
values: ['Buy groceries', 'Walk the dog', ''],
|
|
90
|
+
placeholder: 'Enter a task',
|
|
91
|
+
onChange: () => {}
|
|
92
|
+
},
|
|
93
|
+
render: () => {
|
|
94
|
+
const [todos, setTodos] = useState(['Buy groceries', 'Walk the dog', '']);
|
|
95
|
+
return <div style={{
|
|
96
|
+
maxWidth: '400px'
|
|
97
|
+
}}>
|
|
98
|
+
<h3 style={{
|
|
99
|
+
marginBottom: '1rem'
|
|
100
|
+
}}>Todo List</h3>
|
|
101
|
+
<ArrayInput label="Tasks" values={todos} onChange={setTodos} placeholder="Enter a task" />
|
|
102
|
+
</div>;
|
|
103
|
+
},
|
|
104
|
+
parameters: {
|
|
105
|
+
controls: {
|
|
106
|
+
disable: true
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}`,...(O=($=v.parameters)==null?void 0:$.docs)==null?void 0:O.source}}};var D,F,U;j.parameters={...j.parameters,docs:{...(D=j.parameters)==null?void 0:D.docs,source:{originalSource:`{
|
|
110
|
+
args: {
|
|
111
|
+
label: 'Team Members',
|
|
112
|
+
values: ['Alice Johnson', 'Bob Smith', ''],
|
|
113
|
+
placeholder: 'Enter member name',
|
|
114
|
+
onChange: () => {}
|
|
115
|
+
},
|
|
116
|
+
render: () => {
|
|
117
|
+
const [members, setMembers] = useState(['Alice Johnson', 'Bob Smith', '']);
|
|
118
|
+
return <div style={{
|
|
119
|
+
padding: '1.5rem',
|
|
120
|
+
background: '#fff',
|
|
121
|
+
border: '1px solid #e0e0e0',
|
|
122
|
+
borderRadius: '8px',
|
|
123
|
+
maxWidth: '450px'
|
|
124
|
+
}}>
|
|
125
|
+
<h3 style={{
|
|
126
|
+
marginTop: 0
|
|
127
|
+
}}>Project Team</h3>
|
|
128
|
+
<ArrayInput label="Team Members" values={members} onChange={setMembers} placeholder="Enter member name" />
|
|
129
|
+
<p style={{
|
|
130
|
+
marginTop: '1rem',
|
|
131
|
+
fontSize: '0.875rem',
|
|
132
|
+
color: '#666'
|
|
133
|
+
}}>
|
|
134
|
+
Total members: {members.filter(m => m).length}
|
|
135
|
+
</p>
|
|
136
|
+
</div>;
|
|
137
|
+
},
|
|
138
|
+
parameters: {
|
|
139
|
+
controls: {
|
|
140
|
+
disable: true
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}`,...(U=(F=j.parameters)==null?void 0:F.docs)==null?void 0:U.source}}};var G,H,K;I.parameters={...I.parameters,docs:{...(G=I.parameters)==null?void 0:G.docs,source:{originalSource:`{
|
|
144
|
+
args: {
|
|
145
|
+
label: 'Ingredients',
|
|
146
|
+
values: ['2 cups flour', '1 cup sugar', '3 eggs', '1 tsp vanilla extract', ''],
|
|
147
|
+
placeholder: 'Add ingredient',
|
|
148
|
+
onChange: () => {}
|
|
149
|
+
},
|
|
150
|
+
render: () => {
|
|
151
|
+
const [ingredients, setIngredients] = useState(['2 cups flour', '1 cup sugar', '3 eggs', '1 tsp vanilla extract', '']);
|
|
152
|
+
return <div style={{
|
|
153
|
+
padding: '1.5rem',
|
|
154
|
+
background: '#fffef5',
|
|
155
|
+
border: '2px solid #f0e68c',
|
|
156
|
+
borderRadius: '8px',
|
|
157
|
+
maxWidth: '400px'
|
|
158
|
+
}}>
|
|
159
|
+
<h3 style={{
|
|
160
|
+
marginTop: 0,
|
|
161
|
+
color: '#8b7355'
|
|
162
|
+
}}>🍰 Recipe Ingredients</h3>
|
|
163
|
+
<ArrayInput label="Ingredients" values={ingredients} onChange={setIngredients} placeholder="Add ingredient" />
|
|
164
|
+
</div>;
|
|
165
|
+
},
|
|
166
|
+
parameters: {
|
|
167
|
+
controls: {
|
|
168
|
+
disable: true
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}`,...(K=(H=I.parameters)==null?void 0:H.docs)==null?void 0:K.source}}};var Q,X,Y;T.parameters={...T.parameters,docs:{...(Q=T.parameters)==null?void 0:Q.docs,source:{originalSource:`{
|
|
172
|
+
render: () => {
|
|
173
|
+
const [notes, setNotes] = useState(['This is a longer note that demonstrates how multiline text works. The textarea will wrap properly and allow for multiple lines of content.', 'Another note with some detailed information that spans multiple lines and shows how the component handles longer text content.', '']);
|
|
174
|
+
return <div style={{
|
|
175
|
+
maxWidth: '600px'
|
|
176
|
+
}}>
|
|
177
|
+
<ArrayInput label="Project Notes" values={notes} onChange={setNotes} placeholder="Enter detailed note..." multiline={true} rows={4} />
|
|
178
|
+
</div>;
|
|
179
|
+
},
|
|
180
|
+
parameters: {
|
|
181
|
+
controls: {
|
|
182
|
+
disable: true
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}`,...(Y=(X=T.parameters)==null?void 0:X.docs)==null?void 0:Y.source}}};var Z,ee,ae;C.parameters={...C.parameters,docs:{...(Z=C.parameters)==null?void 0:Z.docs,source:{originalSource:`{
|
|
186
|
+
render: () => {
|
|
187
|
+
const [testimonials, setTestimonials] = useState([{
|
|
188
|
+
name: 'Sarah Johnson',
|
|
189
|
+
title: 'Product Manager',
|
|
190
|
+
feedback: 'This tool has completely transformed how our team collaborates. The intuitive interface and powerful features make project management effortless.'
|
|
191
|
+
}, {
|
|
192
|
+
name: 'Mike Chen',
|
|
193
|
+
title: 'Software Engineer',
|
|
194
|
+
feedback: 'Amazing performance and reliability. The development experience is smooth and the documentation is comprehensive.'
|
|
195
|
+
}]);
|
|
196
|
+
return <div style={{
|
|
197
|
+
maxWidth: '700px'
|
|
198
|
+
}}>
|
|
199
|
+
<ArrayInput type="complex" label="Customer Testimonials" values={testimonials} onChange={setTestimonials} fields={[{
|
|
200
|
+
name: 'name',
|
|
201
|
+
label: 'Name',
|
|
202
|
+
placeholder: 'Customer name'
|
|
203
|
+
}, {
|
|
204
|
+
name: 'title',
|
|
205
|
+
label: 'Job Title',
|
|
206
|
+
placeholder: 'Job title'
|
|
207
|
+
}, {
|
|
208
|
+
name: 'feedback',
|
|
209
|
+
label: 'Testimonial',
|
|
210
|
+
placeholder: 'Enter customer feedback...',
|
|
211
|
+
multiline: true,
|
|
212
|
+
rows: 4
|
|
213
|
+
}]} />
|
|
214
|
+
</div>;
|
|
215
|
+
},
|
|
216
|
+
parameters: {
|
|
217
|
+
controls: {
|
|
218
|
+
disable: true
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
}`,...(ae=(ee=C.parameters)==null?void 0:ee.docs)==null?void 0:ae.source}}};const ke=["Default","WithInitialValues","EmptyState","Interactive","TodoList","TeamMembers","IngredientsList","MultilineNotes","ComplexMultilineForm"];export{C as ComplexMultilineForm,b as Default,y as EmptyState,I as IngredientsList,f as Interactive,T as MultilineNotes,j as TeamMembers,v as TodoList,x as WithInitialValues,ke as __namedExportsOrder,Ce as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._container_ma4de_1{background:var(--color-background-secondary);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}._title_ma4de_8{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);margin-bottom:var(--spacing-lg);display:flex;align-items:center;gap:8px}._habitEmoji_ma4de_18{font-size:20px;display:inline-block}._chart_ma4de_23{display:block;margin:var(--spacing-lg) 0}._monthLabel_ma4de_28{fill:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}._dayLabel_ma4de_34{fill:var(--color-text-secondary);font-size:var(--font-size-xs)}._cell_ma4de_39{stroke:var(--color-background-secondary);stroke-width:1;cursor:pointer;transition:var(--transition-base)}._cell_ma4de_39:hover{stroke:var(--color-primary);stroke-width:2}._legend_ma4de_51{display:flex;gap:var(--spacing-xl);justify-content:center;margin-top:var(--spacing-lg)}._legendItem_ma4de_58{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}._legendColor_ma4de_66{width:16px;height:16px;border-radius:var(--radius-sm);border:1px solid var(--color-border)}._tooltip_ma4de_73{background:var(--color-background);border:2px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text);box-shadow:var(--shadow-lg);pointer-events:none;z-index:1000}._tooltip_ma4de_73 div{margin:var(--spacing-xs) 0}._tooltip_ma4de_73 strong{color:var(--color-primary)}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import{r as W,j as l}from"./iframe-BUaP2gIF.js";import{s as F}from"./transform-NloTqvdv.js";import{t as it}from"./defaultLocale-DJ2q5QjE.js";import"./preload-helper-C1FmrZbK.js";const dt="_container_ma4de_1",ct="_title_ma4de_8",lt="_habitEmoji_ma4de_18",mt="_chart_ma4de_23",ht="_monthLabel_ma4de_28",gt="_dayLabel_ma4de_34",pt="_cell_ma4de_39",ut="_legend_ma4de_51",bt="_legendItem_ma4de_58",ft="_legendColor_ma4de_66",yt="_tooltip_ma4de_73",r={container:dt,title:ct,habitEmoji:lt,chart:mt,monthLabel:ht,dayLabel:gt,cell:pt,legend:ut,legendItem:bt,legendColor:ft,tooltip:yt},Dt=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],wt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],et=({data:e,habitName:t,width:a=800,height:i=200,habitColor:o="#6BCB77",habitEmoji:m="✓"})=>{const S=W.useRef(null),{startDate:p,endDate:R,weeksToShow:b}=W.useMemo(()=>{const h=Object.keys(e).sort();if(h.length===0){const g=new Date;return{startDate:g,endDate:g,weeksToShow:1}}const d=new Date(h[0]),f=new Date(h[h.length-1]),v=Math.ceil((f.getTime()-d.getTime())/(1e3*60*60*24))+1,c=Math.ceil(v/7);return{startDate:d,endDate:f,weeksToShow:c}},[e]);return W.useEffect(()=>{if(!S.current)return;const h=F(S.current);h.selectAll("*").remove();const d={top:40,right:20,bottom:20,left:40},f=a-d.left-d.right,v=i-d.top-d.bottom,c=Math.min(Math.floor(v/7)-1,Math.floor(f/b)-1,20),g=2,k=h.append("g").attr("transform",`translate(${d.left},${d.top})`),N=(p.getDay()+6)%7,C=new Map;let y=p.getMonth();C.set(y,0);for(let s=0;s<b;s++){const n=new Date(p);n.setDate(n.getDate()+s*7-N),n.getMonth()!==y&&(y=n.getMonth(),C.set(y,s))}C.forEach((s,n)=>{k.append("text").attr("x",s*(c+g)).attr("y",-10).attr("class",r.monthLabel).text(wt[n])}),Dt.forEach((s,n)=>{k.append("text").attr("x",-10).attr("y",n*(c+g)+c/2).attr("class",r.dayLabel).attr("text-anchor","end").attr("alignment-baseline","middle").text(s)});const D=F("body").append("div").attr("class",r.tooltip).style("opacity",0).style("position","absolute"),at=b*7;for(let s=0;s<at;s++){const n=new Date(p);if(n.setDate(n.getDate()+s-N),n<p||n>R)continue;const O=n.toISOString().split("T")[0],nt=(n.getDay()+6)%7,ot=Math.floor((s+N)/7),T=O in e&&e[O];k.append("rect").attr("x",ot*(c+g)).attr("y",nt*(c+g)).attr("width",c).attr("height",c).attr("rx",3).attr("class",r.cell).attr("data-date",O).attr("data-value",T?"true":"false").style("fill",T?o:"#4D4D4DFF").on("mouseover",function(I){D.transition().duration(200).style("opacity",1);const st=it("%b %d, %Y"),rt=T?`${m} Done`:"✗ Not done";D.html(`
|
|
2
|
+
<div><strong>${t}</strong></div>
|
|
3
|
+
<div>${st(n)}</div>
|
|
4
|
+
<div>${rt}</div>
|
|
5
|
+
`).style("left",I.pageX+10+"px").style("top",I.pageY-28+"px")}).on("mouseout",function(){D.transition().duration(500).style("opacity",0)})}return()=>{D.remove()}},[e,t,a,i,p,R,b,o,m]),l.jsxs("div",{className:r.container,children:[l.jsxs("h3",{className:r.title,children:[l.jsx("span",{className:r.habitEmoji,children:m}),t]}),l.jsx("svg",{ref:S,width:a,height:i,className:r.chart}),l.jsxs("div",{className:r.legend,children:[l.jsxs("span",{className:r.legendItem,children:[l.jsx("span",{className:r.legendColor,style:{backgroundColor:o}}),"Done"]}),l.jsxs("span",{className:r.legendItem,children:[l.jsx("span",{className:r.legendColor,style:{backgroundColor:"#4D4D4DFF"}}),"Not done"]})]})]})};et.__docgenInfo={description:"",methods:[],displayName:"BooleansHeatmap",props:{data:{required:!0,tsType:{name:"signature",type:"object",raw:"{ [date: string]: boolean }",signature:{properties:[{key:{name:"string"},value:{name:"boolean",required:!0}}]}},description:""},habitName:{required:!0,tsType:{name:"string"},description:""},width:{required:!1,tsType:{name:"number"},description:"",defaultValue:{value:"800",computed:!1}},height:{required:!1,tsType:{name:"number"},description:"",defaultValue:{value:"200",computed:!1}},habitColor:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"'#6BCB77'",computed:!1}},habitEmoji:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"'✓'",computed:!1}}}};const St={title:"Organisms/Charts/BooleansHeatmap",component:et,parameters:{layout:"centered"},argTypes:{width:{control:{type:"number",min:400,max:1200,step:50}},height:{control:{type:"number",min:150,max:400,step:50}},habitColor:{control:{type:"color"}},habitEmoji:{control:{type:"text"}}}},u=e=>{const t=[],a=new Date;for(let i=e-1;i>=0;i--){const o=new Date(a);o.setDate(o.getDate()-i),t.push(o.toISOString().split("T")[0])}return t},w={args:{data:(()=>{const e=u(90),t={};return e.forEach(a=>{t[a]=Math.random()>.3}),t})(),habitName:"Daily Exercise",width:900,height:200,habitColor:"#10b981",habitEmoji:"💪"}},E={args:{data:(()=>{const e=u(60),t={};return e.forEach(a=>{t[a]=Math.random()>.4}),t})(),habitName:"Meditation",width:800,height:200,habitColor:"#8b5cf6",habitEmoji:"🧘"}},_={args:{data:(()=>{const e=u(120),t={};return e.forEach((a,i)=>{const o=new Date(a).getDay(),m=o===0||o===6;t[a]=Math.random()>(m?.2:.5)}),t})(),habitName:"Daily Reading",width:1e3,height:200,habitColor:"#f59e0b",habitEmoji:"📚"}},M={args:{data:(()=>{const e=u(30),t={};return e.forEach(a=>{t[a]=Math.random()>.15}),t})(),habitName:"8 Glasses of Water",width:800,height:180,habitColor:"#3b82f6",habitEmoji:"💧"}},x={args:{data:(()=>{const e=u(365),t={};return e.forEach((a,i)=>{const o=new Date(a).getMonth(),m=o>=5&&o<=8;t[a]=Math.random()>(m?.25:.45)}),t})(),habitName:"Outdoor Activity",width:1100,height:250,habitColor:"#10b981",habitEmoji:"🏃"}},j={args:{data:(()=>{const e=u(60),t={};return e.forEach(a=>{Math.random()>.3&&(t[a]=Math.random()>.6)}),t})(),habitName:"Side Project Work",width:800,height:200,habitColor:"#7c3aed",habitEmoji:"💻"}};var L,q,B;w.parameters={...w.parameters,docs:{...(L=w.parameters)==null?void 0:L.docs,source:{originalSource:`{
|
|
6
|
+
args: {
|
|
7
|
+
data: (() => {
|
|
8
|
+
const dates = generateDateRange(90);
|
|
9
|
+
const data: {
|
|
10
|
+
[date: string]: boolean;
|
|
11
|
+
} = {};
|
|
12
|
+
dates.forEach(date => {
|
|
13
|
+
data[date] = Math.random() > 0.3;
|
|
14
|
+
});
|
|
15
|
+
return data;
|
|
16
|
+
})(),
|
|
17
|
+
habitName: 'Daily Exercise',
|
|
18
|
+
width: 900,
|
|
19
|
+
height: 200,
|
|
20
|
+
habitColor: '#10b981',
|
|
21
|
+
habitEmoji: '💪'
|
|
22
|
+
}
|
|
23
|
+
}`,...(B=(q=w.parameters)==null?void 0:q.docs)==null?void 0:B.source}}};var A,H,$;E.parameters={...E.parameters,docs:{...(A=E.parameters)==null?void 0:A.docs,source:{originalSource:`{
|
|
24
|
+
args: {
|
|
25
|
+
data: (() => {
|
|
26
|
+
const dates = generateDateRange(60);
|
|
27
|
+
const data: {
|
|
28
|
+
[date: string]: boolean;
|
|
29
|
+
} = {};
|
|
30
|
+
dates.forEach(date => {
|
|
31
|
+
data[date] = Math.random() > 0.4;
|
|
32
|
+
});
|
|
33
|
+
return data;
|
|
34
|
+
})(),
|
|
35
|
+
habitName: 'Meditation',
|
|
36
|
+
width: 800,
|
|
37
|
+
height: 200,
|
|
38
|
+
habitColor: '#8b5cf6',
|
|
39
|
+
habitEmoji: '🧘'
|
|
40
|
+
}
|
|
41
|
+
}`,...($=(H=E.parameters)==null?void 0:H.docs)==null?void 0:$.source}}};var Y,V,G;_.parameters={..._.parameters,docs:{...(Y=_.parameters)==null?void 0:Y.docs,source:{originalSource:`{
|
|
42
|
+
args: {
|
|
43
|
+
data: (() => {
|
|
44
|
+
const dates = generateDateRange(120);
|
|
45
|
+
const data: {
|
|
46
|
+
[date: string]: boolean;
|
|
47
|
+
} = {};
|
|
48
|
+
dates.forEach((date, i) => {
|
|
49
|
+
// More likely to read on weekends
|
|
50
|
+
const dayOfWeek = new Date(date).getDay();
|
|
51
|
+
const isWeekend = dayOfWeek === 0 || dayOfWeek === 6;
|
|
52
|
+
data[date] = Math.random() > (isWeekend ? 0.2 : 0.5);
|
|
53
|
+
});
|
|
54
|
+
return data;
|
|
55
|
+
})(),
|
|
56
|
+
habitName: 'Daily Reading',
|
|
57
|
+
width: 1000,
|
|
58
|
+
height: 200,
|
|
59
|
+
habitColor: '#f59e0b',
|
|
60
|
+
habitEmoji: '📚'
|
|
61
|
+
}
|
|
62
|
+
}`,...(G=(V=_.parameters)==null?void 0:V.docs)==null?void 0:G.source}}};var J,P,z;M.parameters={...M.parameters,docs:{...(J=M.parameters)==null?void 0:J.docs,source:{originalSource:`{
|
|
63
|
+
args: {
|
|
64
|
+
data: (() => {
|
|
65
|
+
const dates = generateDateRange(30);
|
|
66
|
+
const data: {
|
|
67
|
+
[date: string]: boolean;
|
|
68
|
+
} = {};
|
|
69
|
+
dates.forEach(date => {
|
|
70
|
+
// High success rate for water intake
|
|
71
|
+
data[date] = Math.random() > 0.15;
|
|
72
|
+
});
|
|
73
|
+
return data;
|
|
74
|
+
})(),
|
|
75
|
+
habitName: '8 Glasses of Water',
|
|
76
|
+
width: 800,
|
|
77
|
+
height: 180,
|
|
78
|
+
habitColor: '#3b82f6',
|
|
79
|
+
habitEmoji: '💧'
|
|
80
|
+
}
|
|
81
|
+
}`,...(z=(P=M.parameters)==null?void 0:P.docs)==null?void 0:z.source}}};var K,X,Q;x.parameters={...x.parameters,docs:{...(K=x.parameters)==null?void 0:K.docs,source:{originalSource:`{
|
|
82
|
+
args: {
|
|
83
|
+
data: (() => {
|
|
84
|
+
const dates = generateDateRange(365);
|
|
85
|
+
const data: {
|
|
86
|
+
[date: string]: boolean;
|
|
87
|
+
} = {};
|
|
88
|
+
dates.forEach((date, i) => {
|
|
89
|
+
// Simulate seasonal patterns
|
|
90
|
+
const month = new Date(date).getMonth();
|
|
91
|
+
const isSummer = month >= 5 && month <= 8;
|
|
92
|
+
data[date] = Math.random() > (isSummer ? 0.25 : 0.45);
|
|
93
|
+
});
|
|
94
|
+
return data;
|
|
95
|
+
})(),
|
|
96
|
+
habitName: 'Outdoor Activity',
|
|
97
|
+
width: 1100,
|
|
98
|
+
height: 250,
|
|
99
|
+
habitColor: '#10b981',
|
|
100
|
+
habitEmoji: '🏃'
|
|
101
|
+
}
|
|
102
|
+
}`,...(Q=(X=x.parameters)==null?void 0:X.docs)==null?void 0:Q.source}}};var U,Z,tt;j.parameters={...j.parameters,docs:{...(U=j.parameters)==null?void 0:U.docs,source:{originalSource:`{
|
|
103
|
+
args: {
|
|
104
|
+
data: (() => {
|
|
105
|
+
const dates = generateDateRange(60);
|
|
106
|
+
const data: {
|
|
107
|
+
[date: string]: boolean;
|
|
108
|
+
} = {};
|
|
109
|
+
// Only populate some dates
|
|
110
|
+
dates.forEach(date => {
|
|
111
|
+
if (Math.random() > 0.3) {
|
|
112
|
+
data[date] = Math.random() > 0.6;
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
return data;
|
|
116
|
+
})(),
|
|
117
|
+
habitName: 'Side Project Work',
|
|
118
|
+
width: 800,
|
|
119
|
+
height: 200,
|
|
120
|
+
habitColor: '#7c3aed',
|
|
121
|
+
habitEmoji: '💻'
|
|
122
|
+
}
|
|
123
|
+
}`,...(tt=(Z=j.parameters)==null?void 0:Z.docs)==null?void 0:tt.source}}};const vt=["DailyExercise","Meditation","Reading","WaterIntake","YearlyOverview","SparseData"];export{w as DailyExercise,E as Meditation,_ as Reading,j as SparseData,M as WaterIntake,x as YearlyOverview,vt as __namedExportsOrder,St as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._button_7s9mx_1{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-wide);border-radius:var(--radius-lg);border:none;cursor:pointer;transition:all var(--transition-base);text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none;overflow:hidden;isolation:isolate}._button_7s9mx_1:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);transition:width .6s,height .6s}._button_7s9mx_1:active:before{width:300px;height:300px}._primary_7s9mx_43{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:var(--color-text-inverse);box-shadow:var(--shadow-md),0 4px 14px #7c3aed4d}._primary_7s9mx_43:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-hover),var(--color-primary-active));transform:translateY(-2px);box-shadow:var(--shadow-lg),0 6px 20px #7c3aed66}._primary_7s9mx_43:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm),0 2px 8px #7c3aed4d}._secondary_7s9mx_61{background:linear-gradient(135deg,var(--color-secondary),var(--color-secondary-hover));color:var(--color-text-inverse);box-shadow:var(--shadow-sm),0 2px 8px #14b8a633}._secondary_7s9mx_61:hover:not(:disabled){background:linear-gradient(135deg,var(--color-secondary-hover),var(--color-secondary-active));transform:translateY(-1px);box-shadow:var(--shadow-md),0 4px 12px #14b8a64d}._secondary_7s9mx_61:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-xs),0 1px 4px #14b8a633}._outline_7s9mx_79{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary);box-shadow:none;position:relative;overflow:hidden;z-index:1}._outline_7s9mx_79:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));z-index:-1;opacity:0;transition:opacity var(--transition-base)}._outline_7s9mx_79:hover:not(:disabled){color:var(--color-text-inverse);border-color:transparent;transform:translateY(-1px);box-shadow:var(--shadow-md)}._outline_7s9mx_79:hover:not(:disabled):after{opacity:1}._outline_7s9mx_79:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}._ghost_7s9mx_119{background:transparent;color:var(--color-text-secondary);box-shadow:none}._ghost_7s9mx_119:hover:not(:disabled){background:linear-gradient(135deg,var(--color-background-secondary),var(--color-background-tertiary));color:var(--color-text);transform:translateY(-1px);box-shadow:var(--shadow-sm)}._ghost_7s9mx_119:active:not(:disabled){transform:translateY(0);background:var(--color-background-tertiary);box-shadow:none}._danger_7s9mx_142{background:linear-gradient(135deg,var(--color-error),var(--color-error-hover));color:var(--color-text-inverse);box-shadow:var(--shadow-md),0 4px 14px #ef44444d}._danger_7s9mx_142:hover:not(:disabled){background:linear-gradient(135deg,var(--color-error-hover),var(--color-error-active));transform:translateY(-2px);box-shadow:var(--shadow-lg),0 6px 20px #ef444466}._danger_7s9mx_142:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm),0 2px 8px #ef44444d}._small_7s9mx_160{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);border-radius:var(--radius-md)}._medium_7s9mx_166{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base)}._large_7s9mx_171{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg);border-radius:var(--radius-xl)}._fullWidth_7s9mx_178{width:100%}._button_7s9mx_1:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important;background:var(--color-background-tertiary)!important;color:var(--color-text-tertiary)!important;border-color:var(--color-border)!important}._button_7s9mx_1:disabled:before,._button_7s9mx_1:disabled:after{display:none}._loading_7s9mx_199{color:transparent;pointer-events:none}._spinner_7s9mx_204{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:1em;height:1em}._spinner_7s9mx_204:after{content:"";display:block;width:1em;height:1em;border:2px solid currentColor;border-radius:50%;border-top-color:transparent;animation:_spin_7s9mx_204 .6s linear infinite}@keyframes _spin_7s9mx_204{to{transform:rotate(360deg)}}._iconLeft_7s9mx_231,._iconRight_7s9mx_232{display:inline-flex;align-items:center;justify-content:center;width:1.25em;height:1.25em;flex-shrink:0}._iconLeft_7s9mx_231{margin-left:calc(var(--spacing-xs) * -1)}._iconRight_7s9mx_232{margin-right:calc(var(--spacing-xs) * -1)}._button_7s9mx_1:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}[data-theme=dark] ._primary_7s9mx_43{box-shadow:var(--shadow-md),0 4px 14px #a78bfa4d}[data-theme=dark] ._primary_7s9mx_43:hover:not(:disabled){box-shadow:var(--shadow-lg),0 6px 20px #a78bfa66}[data-theme=dark] ._secondary_7s9mx_61{box-shadow:var(--shadow-sm),0 2px 8px #2dd4bf33}[data-theme=dark] ._secondary_7s9mx_61:hover:not(:disabled){box-shadow:var(--shadow-md),0 4px 12px #2dd4bf4d}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import{j as t}from"./iframe-BUaP2gIF.js";import{m as f}from"./proxy-9Y4F2rF8.js";const h="_button_7s9mx_1",_="_primary_7s9mx_43",g="_secondary_7s9mx_61",y="_outline_7s9mx_79",x="_ghost_7s9mx_119",v="_danger_7s9mx_142",b="_small_7s9mx_160",B="_medium_7s9mx_166",T="_large_7s9mx_171",W="_fullWidth_7s9mx_178",q="_loading_7s9mx_199",w="_spinner_7s9mx_204",L="_spin_7s9mx_204",N="_iconLeft_7s9mx_231",R="_iconRight_7s9mx_232",e={button:h,primary:_,secondary:g,outline:y,ghost:x,danger:v,small:b,medium:B,large:T,fullWidth:W,loading:q,spinner:w,spin:L,iconLeft:N,iconRight:R},j=({variant:i="primary",size:l="medium",fullWidth:r=!1,loading:n=!1,iconLeft:o,iconRight:s,children:m,className:u="",disabled:a,motionProps:d,...c})=>{const p=[e.button,e[i],e[l],r&&e.fullWidth,n&&e.loading,u].filter(Boolean).join(" ");return t.jsxs(f.button,{className:p,disabled:a||n,whileHover:{scale:a||n?1:1.02},whileTap:{scale:a||n?1:.98},transition:{type:"spring",stiffness:400,damping:17},...d,...c,children:[n&&t.jsx("span",{className:e.spinner}),o&&t.jsx("span",{className:e.iconLeft,children:o}),m,s&&t.jsx("span",{className:e.iconRight,children:s})]})};j.__docgenInfo={description:`Button Component
|
|
2
|
+
|
|
3
|
+
@component
|
|
4
|
+
@description
|
|
5
|
+
A versatile, animated button component built with Framer Motion. Supports multiple
|
|
6
|
+
variants, sizes, loading states, and icons. Includes smooth hover/tap animations
|
|
7
|
+
and full accessibility support.
|
|
8
|
+
|
|
9
|
+
@example
|
|
10
|
+
// Basic usage
|
|
11
|
+
<Button onClick={handleClick}>Click me</Button>
|
|
12
|
+
|
|
13
|
+
@example
|
|
14
|
+
// With variant and size
|
|
15
|
+
<Button variant="secondary" size="large">
|
|
16
|
+
Large Secondary Button
|
|
17
|
+
</Button>
|
|
18
|
+
|
|
19
|
+
@example
|
|
20
|
+
// With icons and loading state
|
|
21
|
+
<Button
|
|
22
|
+
variant="primary"
|
|
23
|
+
iconLeft={<Icon />}
|
|
24
|
+
loading={isLoading}
|
|
25
|
+
onClick={handleSubmit}
|
|
26
|
+
>
|
|
27
|
+
Submit Form
|
|
28
|
+
</Button>
|
|
29
|
+
|
|
30
|
+
@example
|
|
31
|
+
// Full width danger button
|
|
32
|
+
<Button variant="danger" fullWidth>
|
|
33
|
+
Delete Account
|
|
34
|
+
</Button>
|
|
35
|
+
|
|
36
|
+
@param {ButtonProps} props - The props for the Button component
|
|
37
|
+
@returns {JSX.Element} The rendered Button component`,methods:[],displayName:"Button",props:{variant:{required:!1,tsType:{name:"union",raw:"'primary' | 'secondary' | 'outline' | 'ghost' | 'danger'",elements:[{name:"literal",value:"'primary'"},{name:"literal",value:"'secondary'"},{name:"literal",value:"'outline'"},{name:"literal",value:"'ghost'"},{name:"literal",value:"'danger'"}]},description:"Visual style variant of the button",defaultValue:{value:"'primary'",computed:!1}},size:{required:!1,tsType:{name:"union",raw:"'small' | 'medium' | 'large'",elements:[{name:"literal",value:"'small'"},{name:"literal",value:"'medium'"},{name:"literal",value:"'large'"}]},description:"Size of the button",defaultValue:{value:"'medium'",computed:!1}},fullWidth:{required:!1,tsType:{name:"boolean"},description:"Whether the button should take full width of its container",defaultValue:{value:"false",computed:!1}},loading:{required:!1,tsType:{name:"boolean"},description:"Whether the button is in loading state (shows spinner, disabled interaction)",defaultValue:{value:"false",computed:!1}},iconLeft:{required:!1,tsType:{name:"ReactNode"},description:"Icon to display on the left side of the button text"},iconRight:{required:!1,tsType:{name:"ReactNode"},description:"Icon to display on the right side of the button text"},children:{required:!1,tsType:{name:"ReactNode"},description:"Button content (text, elements, etc.)"},motionProps:{required:!1,tsType:{name:"HTMLMotionProps",elements:[{name:"literal",value:'"button"'}],raw:'HTMLMotionProps<"button">'},description:"Additional Framer Motion props for custom animations"},className:{defaultValue:{value:"''",computed:!1},required:!1}},composes:["Omit"]};export{j as B};
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import{j as e}from"./iframe-BUaP2gIF.js";import{B as r}from"./Button-VfdDKp2T.js";import{F as ce,a as le,b as de,c as ue}from"./index-5bdJXrkD.js";import"./preload-helper-C1FmrZbK.js";import"./proxy-9Y4F2rF8.js";const ve={title:"Atoms/Button",component:r,parameters:{layout:"centered",docs:{description:{component:"A versatile button component with multiple variants, sizes, and animation support."}}},tags:["autodocs"],argTypes:{variant:{control:"select",options:["primary","secondary","outline","ghost"],description:"The visual style variant of the button"},size:{control:"select",options:["small","medium","large"],description:"The size of the button"},fullWidth:{control:"boolean",description:"Whether the button should take full width of its container"},loading:{control:"boolean",description:"Shows loading spinner and disables the button"},disabled:{control:"boolean",description:"Disables the button"},onClick:{action:"clicked"}}},a={args:{children:"Click me",variant:"primary",size:"medium"}},t={args:{children:"Primary Button",variant:"primary"}},s={args:{children:"Secondary Button",variant:"secondary"}},n={args:{children:"Outline Button",variant:"outline"}},o={args:{children:"Ghost Button",variant:"ghost"}},i={args:{children:"Small Button",size:"small"}},c={args:{children:"Large Button",size:"large"}},l={args:{children:"Full Width Button",fullWidth:!0},parameters:{layout:"padded"}},d={args:{children:"Loading...",loading:!0}},u={args:{children:"Disabled Button",disabled:!0}},m={args:{children:"Save",iconLeft:e.jsx(ce,{})}},p={args:{children:"Next",iconRight:e.jsx(le,{})}},h={args:{children:"Add Item",iconLeft:e.jsx(de,{}),iconRight:e.jsx(le,{})}},g={args:{children:e.jsx(ue,{}),size:"small",variant:"ghost"}},y={render:()=>e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"1rem"},children:[e.jsxs("div",{style:{display:"flex",gap:"1rem",alignItems:"center"},children:[e.jsx(r,{variant:"primary",children:"Primary"}),e.jsx(r,{variant:"secondary",children:"Secondary"}),e.jsx(r,{variant:"outline",children:"Outline"}),e.jsx(r,{variant:"ghost",children:"Ghost"})]}),e.jsxs("div",{style:{display:"flex",gap:"1rem",alignItems:"center"},children:[e.jsx(r,{size:"small",children:"Small"}),e.jsx(r,{size:"medium",children:"Medium"}),e.jsx(r,{size:"large",children:"Large"})]}),e.jsxs("div",{style:{display:"flex",gap:"1rem",alignItems:"center"},children:[e.jsx(r,{loading:!0,children:"Loading"}),e.jsx(r,{disabled:!0,children:"Disabled"}),e.jsx(r,{iconLeft:e.jsx(ce,{}),children:"With Icon"})]})]}),parameters:{controls:{disable:!0}}};var v,B,x;a.parameters={...a.parameters,docs:{...(v=a.parameters)==null?void 0:v.docs,source:{originalSource:`{
|
|
2
|
+
args: {
|
|
3
|
+
children: 'Click me',
|
|
4
|
+
variant: 'primary',
|
|
5
|
+
size: 'medium'
|
|
6
|
+
}
|
|
7
|
+
}`,...(x=(B=a.parameters)==null?void 0:B.docs)==null?void 0:x.source}}};var S,f,b;t.parameters={...t.parameters,docs:{...(S=t.parameters)==null?void 0:S.docs,source:{originalSource:`{
|
|
8
|
+
args: {
|
|
9
|
+
children: 'Primary Button',
|
|
10
|
+
variant: 'primary'
|
|
11
|
+
}
|
|
12
|
+
}`,...(b=(f=t.parameters)==null?void 0:f.docs)==null?void 0:b.source}}};var j,L,I;s.parameters={...s.parameters,docs:{...(j=s.parameters)==null?void 0:j.docs,source:{originalSource:`{
|
|
13
|
+
args: {
|
|
14
|
+
children: 'Secondary Button',
|
|
15
|
+
variant: 'secondary'
|
|
16
|
+
}
|
|
17
|
+
}`,...(I=(L=s.parameters)==null?void 0:L.docs)==null?void 0:I.source}}};var z,W,F;n.parameters={...n.parameters,docs:{...(z=n.parameters)==null?void 0:z.docs,source:{originalSource:`{
|
|
18
|
+
args: {
|
|
19
|
+
children: 'Outline Button',
|
|
20
|
+
variant: 'outline'
|
|
21
|
+
}
|
|
22
|
+
}`,...(F=(W=n.parameters)==null?void 0:W.docs)==null?void 0:F.source}}};var D,R,O;o.parameters={...o.parameters,docs:{...(D=o.parameters)==null?void 0:D.docs,source:{originalSource:`{
|
|
23
|
+
args: {
|
|
24
|
+
children: 'Ghost Button',
|
|
25
|
+
variant: 'ghost'
|
|
26
|
+
}
|
|
27
|
+
}`,...(O=(R=o.parameters)==null?void 0:R.docs)==null?void 0:O.source}}};var P,A,C;i.parameters={...i.parameters,docs:{...(P=i.parameters)==null?void 0:P.docs,source:{originalSource:`{
|
|
28
|
+
args: {
|
|
29
|
+
children: 'Small Button',
|
|
30
|
+
size: 'small'
|
|
31
|
+
}
|
|
32
|
+
}`,...(C=(A=i.parameters)==null?void 0:A.docs)==null?void 0:C.source}}};var G,k,T;c.parameters={...c.parameters,docs:{...(G=c.parameters)==null?void 0:G.docs,source:{originalSource:`{
|
|
33
|
+
args: {
|
|
34
|
+
children: 'Large Button',
|
|
35
|
+
size: 'large'
|
|
36
|
+
}
|
|
37
|
+
}`,...(T=(k=c.parameters)==null?void 0:k.docs)==null?void 0:T.source}}};var w,E,M;l.parameters={...l.parameters,docs:{...(w=l.parameters)==null?void 0:w.docs,source:{originalSource:`{
|
|
38
|
+
args: {
|
|
39
|
+
children: 'Full Width Button',
|
|
40
|
+
fullWidth: true
|
|
41
|
+
},
|
|
42
|
+
parameters: {
|
|
43
|
+
layout: 'padded'
|
|
44
|
+
}
|
|
45
|
+
}`,...(M=(E=l.parameters)==null?void 0:E.docs)==null?void 0:M.source}}};var N,V,_;d.parameters={...d.parameters,docs:{...(N=d.parameters)==null?void 0:N.docs,source:{originalSource:`{
|
|
46
|
+
args: {
|
|
47
|
+
children: 'Loading...',
|
|
48
|
+
loading: true
|
|
49
|
+
}
|
|
50
|
+
}`,...(_=(V=d.parameters)==null?void 0:V.docs)==null?void 0:_.source}}};var q,H,J;u.parameters={...u.parameters,docs:{...(q=u.parameters)==null?void 0:q.docs,source:{originalSource:`{
|
|
51
|
+
args: {
|
|
52
|
+
children: 'Disabled Button',
|
|
53
|
+
disabled: true
|
|
54
|
+
}
|
|
55
|
+
}`,...(J=(H=u.parameters)==null?void 0:H.docs)==null?void 0:J.source}}};var K,Q,U;m.parameters={...m.parameters,docs:{...(K=m.parameters)==null?void 0:K.docs,source:{originalSource:`{
|
|
56
|
+
args: {
|
|
57
|
+
children: 'Save',
|
|
58
|
+
iconLeft: <FiSave />
|
|
59
|
+
}
|
|
60
|
+
}`,...(U=(Q=m.parameters)==null?void 0:Q.docs)==null?void 0:U.source}}};var X,Y,Z;p.parameters={...p.parameters,docs:{...(X=p.parameters)==null?void 0:X.docs,source:{originalSource:`{
|
|
61
|
+
args: {
|
|
62
|
+
children: 'Next',
|
|
63
|
+
iconRight: <FiChevronRight />
|
|
64
|
+
}
|
|
65
|
+
}`,...(Z=(Y=p.parameters)==null?void 0:Y.docs)==null?void 0:Z.source}}};var $,ee,re;h.parameters={...h.parameters,docs:{...($=h.parameters)==null?void 0:$.docs,source:{originalSource:`{
|
|
66
|
+
args: {
|
|
67
|
+
children: 'Add Item',
|
|
68
|
+
iconLeft: <FiPlus />,
|
|
69
|
+
iconRight: <FiChevronRight />
|
|
70
|
+
}
|
|
71
|
+
}`,...(re=(ee=h.parameters)==null?void 0:ee.docs)==null?void 0:re.source}}};var ae,te,se;g.parameters={...g.parameters,docs:{...(ae=g.parameters)==null?void 0:ae.docs,source:{originalSource:`{
|
|
72
|
+
args: {
|
|
73
|
+
children: <FiTrash2 />,
|
|
74
|
+
size: 'small',
|
|
75
|
+
variant: 'ghost'
|
|
76
|
+
}
|
|
77
|
+
}`,...(se=(te=g.parameters)==null?void 0:te.docs)==null?void 0:se.source}}};var ne,oe,ie;y.parameters={...y.parameters,docs:{...(ne=y.parameters)==null?void 0:ne.docs,source:{originalSource:`{
|
|
78
|
+
render: () => <div style={{
|
|
79
|
+
display: 'flex',
|
|
80
|
+
flexDirection: 'column',
|
|
81
|
+
gap: '1rem'
|
|
82
|
+
}}>
|
|
83
|
+
<div style={{
|
|
84
|
+
display: 'flex',
|
|
85
|
+
gap: '1rem',
|
|
86
|
+
alignItems: 'center'
|
|
87
|
+
}}>
|
|
88
|
+
<Button variant="primary">Primary</Button>
|
|
89
|
+
<Button variant="secondary">Secondary</Button>
|
|
90
|
+
<Button variant="outline">Outline</Button>
|
|
91
|
+
<Button variant="ghost">Ghost</Button>
|
|
92
|
+
</div>
|
|
93
|
+
<div style={{
|
|
94
|
+
display: 'flex',
|
|
95
|
+
gap: '1rem',
|
|
96
|
+
alignItems: 'center'
|
|
97
|
+
}}>
|
|
98
|
+
<Button size="small">Small</Button>
|
|
99
|
+
<Button size="medium">Medium</Button>
|
|
100
|
+
<Button size="large">Large</Button>
|
|
101
|
+
</div>
|
|
102
|
+
<div style={{
|
|
103
|
+
display: 'flex',
|
|
104
|
+
gap: '1rem',
|
|
105
|
+
alignItems: 'center'
|
|
106
|
+
}}>
|
|
107
|
+
<Button loading>Loading</Button>
|
|
108
|
+
<Button disabled>Disabled</Button>
|
|
109
|
+
<Button iconLeft={<FiSave />}>With Icon</Button>
|
|
110
|
+
</div>
|
|
111
|
+
</div>,
|
|
112
|
+
parameters: {
|
|
113
|
+
controls: {
|
|
114
|
+
disable: true
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}`,...(ie=(oe=y.parameters)==null?void 0:oe.docs)==null?void 0:ie.source}}};const Be=["Default","Primary","Secondary","Outline","Ghost","Small","Large","FullWidth","Loading","Disabled","WithIconLeft","WithIconRight","WithBothIcons","IconOnly","AllVariants"];export{y as AllVariants,a as Default,u as Disabled,l as FullWidth,o as Ghost,g as IconOnly,c as Large,d as Loading,n as Outline,t as Primary,s as Secondary,i as Small,h as WithBothIcons,m as WithIconLeft,p as WithIconRight,Be as __namedExportsOrder,ve as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._calendar_1k9gq_2{background:var(--color-background);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);font-family:var(--font-primary);color:var(--color-text);width:100%;max-width:100%}._loading_1k9gq_14{display:flex;align-items:center;justify-content:center;min-height:400px}._loadingSpinner_1k9gq_21{color:var(--color-text-secondary);font-size:var(--font-size-lg)}._header_1k9gq_27{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);gap:var(--spacing-md)}._navigation_1k9gq_35{display:flex;align-items:center;gap:var(--spacing-md)}._navButton_1k9gq_41{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);color:var(--color-text);cursor:pointer;transition:all .2s ease}._navButton_1k9gq_41:hover{background:var(--color-background-secondary);border-color:var(--color-border-hover)}._title_1k9gq_60{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);margin:0;text-transform:capitalize;min-width:200px;text-align:center}._controls_1k9gq_70{display:flex;align-items:center;gap:var(--spacing-md)}._todayButton_1k9gq_76{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-background);color:var(--color-primary);font-weight:500;cursor:pointer;transition:all .2s ease}._todayButton_1k9gq_76:hover{background:var(--color-primary);color:var(--color-text-inverse)}._viewToggle_1k9gq_92{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}._viewButton_1k9gq_99{padding:var(--spacing-sm) var(--spacing-md);border:none;background:var(--color-background);color:var(--color-text);cursor:pointer;transition:all .2s ease;font-size:var(--font-size-sm)}._viewButton_1k9gq_99:hover{background:var(--color-background-secondary)}._viewButton_1k9gq_99._active_1k9gq_113{background:var(--color-primary);color:var(--color-text-inverse)}._viewButton_1k9gq_99+._viewButton_1k9gq_99{border-left:1px solid var(--color-border)}._weekDays_1k9gq_123{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}._weekDays_1k9gq_123._withWeekNumbers_1k9gq_130{grid-template-columns:40px repeat(7,1fr)}._weekNumberHeader_1k9gq_134,._weekDay_1k9gq_123{text-align:center;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);padding:var(--spacing-sm) 0}._daysGrid_1k9gq_151{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-xs)}._daysGrid_1k9gq_151._withWeekNumbers_1k9gq_130{grid-template-columns:40px repeat(7,1fr)}._weekView_1k9gq_161{grid-template-rows:repeat(1,minmax(300px,1fr))}._weekView_1k9gq_161 ._dayCell_1k9gq_165{min-height:300px;display:flex;flex-direction:column;border-left:1px solid var(--color-border);position:relative}._weekView_1k9gq_161 ._dayCell_1k9gq_165:first-child{border-left:none}._weekView_1k9gq_161 ._dayCell_1k9gq_165:before{content:"";position:absolute;top:60px;left:0;right:0;height:1px;background:repeating-linear-gradient(to right,var(--color-border) 0px,var(--color-border) 1px,transparent 1px,transparent 20px);opacity:.3}._weekView_1k9gq_161 ._dayNumber_1k9gq_194{font-size:var(--font-size-lg);font-weight:700;margin-bottom:var(--spacing-sm);text-align:center;padding:var(--spacing-sm);border-bottom:2px solid var(--color-border);background:var(--color-background-secondary);position:sticky;top:0;z-index:2}._weekView_1k9gq_161 ._dayCell_1k9gq_165._today_1k9gq_76 ._dayNumber_1k9gq_194{background:var(--color-primary);color:var(--color-text-inverse);border-bottom-color:var(--color-primary)}._weekView_1k9gq_161 ._events_1k9gq_213{flex:1;padding:var(--spacing-sm);gap:var(--spacing-xs);position:relative}._weekView_1k9gq_161 ._event_1k9gq_213{padding:var(--spacing-sm);font-size:var(--font-size-sm);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border-left:3px solid rgba(0,0,0,.2);margin-bottom:var(--spacing-xs);position:relative}._weekView_1k9gq_161 ._event_1k9gq_213:hover{box-shadow:var(--shadow-md);transform:translate(2px)}._weekView_1k9gq_161 ._eventTitle_1k9gq_235{font-weight:600;line-height:1.2}._weekView_1k9gq_161 ._eventTime_1k9gq_240{font-size:var(--font-size-xs);font-weight:700;background:#ffffffe6;color:var(--color-text);padding:2px 6px;border-radius:var(--radius-sm);margin-right:var(--spacing-xs);border:1px solid rgba(0,0,0,.1);display:inline-block}._dayCell_1k9gq_165{min-height:100px;padding:var(--spacing-xs);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);position:relative;overflow:hidden;cursor:pointer}._dayCell_1k9gq_165:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}._dayCell_1k9gq_165._today_1k9gq_76{background:var(--color-primary-light);border-color:var(--color-primary)}._dayCell_1k9gq_165._today_1k9gq_76 ._dayNumber_1k9gq_194{color:var(--color-primary);font-weight:700}._dayCell_1k9gq_165._otherMonth_1k9gq_280{background:var(--color-background-tertiary);opacity:.5}._weekNumber_1k9gq_134{position:absolute;top:2px;left:2px;font-size:10px;color:var(--color-text-tertiary);background:var(--color-background-secondary);padding:2px 4px;border-radius:var(--radius-xs)}._dayNumber_1k9gq_194{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);margin-bottom:var(--spacing-xs)}._events_1k9gq_213{display:flex;flex-direction:column;gap:2px}._event_1k9gq_213{display:flex;align-items:center;gap:4px;padding:2px 6px;border-radius:var(--radius-xs);color:var(--color-text-inverse);font-size:11px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;line-height:1.3}._event_1k9gq_213._completed_1k9gq_330{opacity:.7;text-decoration:line-through}._eventTitle_1k9gq_235{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:4px}._eventTime_1k9gq_240{font-weight:600;margin-right:4px;font-size:10px}._completedIcon_1k9gq_351{width:12px;height:12px;flex-shrink:0;stroke-width:2}._moreEvents_1k9gq_358{padding:2px 6px;background:var(--color-background-secondary);color:var(--color-text-secondary);font-size:10px;text-align:center;border-radius:var(--radius-xs);margin-top:2px}._emptyState_1k9gq_368{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-tertiary);font-size:var(--font-size-xs)}@media (max-width: 768px){._calendar_1k9gq_2{padding:var(--spacing-md);border-radius:var(--radius-md)}._header_1k9gq_27{flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}._navigation_1k9gq_35{order:2;width:100%;justify-content:center}._controls_1k9gq_70{order:1;width:100%;justify-content:center;flex-wrap:wrap}._navButton_1k9gq_41{width:32px;height:32px}._title_1k9gq_60{font-size:var(--font-size-lg);min-width:auto}._todayButton_1k9gq_76{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}._viewButton_1k9gq_99{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}._weekDays_1k9gq_123{gap:1px;margin-bottom:var(--spacing-sm)}._weekDay_1k9gq_123{font-size:11px;padding:var(--spacing-xs) 0}._daysGrid_1k9gq_151{gap:1px}._dayCell_1k9gq_165{min-height:70px;padding:4px}._weekView_1k9gq_161 ._dayCell_1k9gq_165{min-height:180px}._weekView_1k9gq_161 ._dayNumber_1k9gq_194{font-size:var(--font-size-md);padding:var(--spacing-xs);margin-bottom:var(--spacing-xs)}._weekView_1k9gq_161 ._events_1k9gq_213{gap:2px;padding:4px}._weekView_1k9gq_161 ._event_1k9gq_213{padding:4px 6px;font-size:10px}._weekView_1k9gq_161 ._eventTime_1k9gq_240{font-size:8px;padding:1px 3px}._dayNumber_1k9gq_194{font-size:12px;margin-bottom:2px;font-weight:600}._events_1k9gq_213{gap:1px}._event_1k9gq_213{font-size:9px;padding:1px 4px;border-radius:2px}._eventTime_1k9gq_240{font-size:8px;margin-right:2px}._moreEvents_1k9gq_358{font-size:8px;padding:1px 4px}._completedIcon_1k9gq_351{width:10px;height:10px}._weekNumber_1k9gq_134{font-size:8px;padding:1px 3px}}@media (max-width: 480px){._calendar_1k9gq_2{padding:var(--spacing-sm);border-radius:var(--radius-sm)}._header_1k9gq_27{gap:var(--spacing-xs)}._navButton_1k9gq_41{width:28px;height:28px}._title_1k9gq_60{font-size:var(--font-size-md)}._todayButton_1k9gq_76{padding:var(--spacing-xs);font-size:11px}._viewButton_1k9gq_99{padding:var(--spacing-xs);font-size:10px}._weekDay_1k9gq_123{font-size:10px;padding:4px 0}._dayCell_1k9gq_165{min-height:60px;padding:2px}._weekView_1k9gq_161 ._dayCell_1k9gq_165{min-height:100px}._dayNumber_1k9gq_194{font-size:11px;margin-bottom:1px}._event_1k9gq_213{font-size:8px;padding:1px 2px}._eventTime_1k9gq_240{font-size:7px;margin-right:1px}._moreEvents_1k9gq_358{font-size:7px;padding:1px 2px}._completedIcon_1k9gq_351{width:8px;height:8px}}@media (prefers-color-scheme: dark){._calendar_1k9gq_2{box-shadow:var(--shadow-dark-md)}._event_1k9gq_213{box-shadow:none}._event_1k9gq_213:hover{box-shadow:var(--shadow-dark-sm)}}@media (prefers-contrast: high){._dayCell_1k9gq_165{border-width:2px}._dayCell_1k9gq_165._today_1k9gq_76{border-width:3px}._event_1k9gq_213{border:1px solid var(--color-text-inverse)}}@media (prefers-reduced-motion: reduce){._calendar_1k9gq_2 *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
|