@stfrigerio/sito-template 0.1.37 → 0.1.44
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/components/organisms/Navbar/Navbar.d.ts.map +1 -1
- package/dist/index.esm.js +76 -18
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +76 -18
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/styles.css.map +1 -1
- package/package.json +6 -3
- package/storybook-static/assets/3d/bar.glb +0 -0
- package/storybook-static/assets/3d/cube.glb +0 -0
- package/storybook-static/assets/3d/lens.glb +0 -0
- package/storybook-static/assets/ASCIIText.stories-BSKNvcoU.js +82 -0
- package/storybook-static/assets/AllAtoms.stories-BheGtT2x.js +109 -0
- package/storybook-static/assets/AnimatedContent.stories-DHs1c0dV.js +18 -0
- package/storybook-static/assets/AnimatedList-B3_lNwJZ.css +1 -0
- package/storybook-static/assets/AnimatedList.stories-DIfbjb22.js +26 -0
- package/storybook-static/assets/Antigravity.stories-BsyCq_d_.js +19 -0
- package/storybook-static/assets/ArrayInput.stories-Vhl_2MiN.js +232 -0
- package/storybook-static/assets/Aurora-JSo3CGBi.css +1 -0
- package/storybook-static/assets/Aurora.stories-C7vxHFyZ.js +97 -0
- package/storybook-static/assets/Beams-BaZopjLr.css +1 -0
- package/storybook-static/assets/Beams.stories-WmoAQdE2.js +122 -0
- package/storybook-static/assets/BlobCursor-sr9FxN5W.css +1 -0
- package/storybook-static/assets/BlobCursor.stories-Do76vl4q.js +24 -0
- package/storybook-static/assets/BlurText.stories-CIsxOJyQ.js +11 -0
- package/storybook-static/assets/{BooleansHeatmap.stories-2u4SThph.js → BooleansHeatmap.stories-DIdVIPVH.js} +8 -8
- package/storybook-static/assets/BorderGlow-BkXv9hP6.css +1 -0
- package/storybook-static/assets/BorderGlow.stories-B88w6QLt.js +15 -0
- package/storybook-static/assets/BubbleMenu-C856-Amm.css +1 -0
- package/storybook-static/assets/BubbleMenu.stories-CjsSE6cs.js +57 -0
- package/storybook-static/assets/{Button-VfdDKp2T.js → Button-C_YZ5gR4.js} +2 -2
- package/storybook-static/assets/Button.stories-Mw6nstnk.js +93 -0
- package/storybook-static/assets/Calendar-zTw0ddxb.css +1 -0
- package/storybook-static/assets/Calendar.stories-Dxshyi2I.js +470 -0
- package/storybook-static/assets/Camera-BM3HOhP6.js +1 -0
- package/storybook-static/assets/Card-BxyVZ-1r.css +1 -0
- package/storybook-static/assets/Card-C1evZ1rT.js +49 -0
- package/storybook-static/assets/Card.stories-Cd8o0lJL.js +127 -0
- package/storybook-static/assets/CardNav-DJBuAE3a.css +1 -0
- package/storybook-static/assets/CardNav.stories-CVCNllVh.js +55 -0
- package/storybook-static/assets/Carousel-DQYq51gd.css +1 -0
- package/storybook-static/assets/Carousel.stories-DXvKLxeO.js +58 -0
- package/storybook-static/assets/{Checkbox-BHwlDfRP.js → Checkbox-tM16vTif.js} +2 -2
- package/storybook-static/assets/{Checkbox.stories-DxTQrFgm.js → Checkbox.stories-dhEm8gbi.js} +2 -2
- package/storybook-static/assets/ChromaGrid-DuVAYWII.css +1 -0
- package/storybook-static/assets/ChromaGrid.stories-_N6hSynZ.js +59 -0
- package/storybook-static/assets/CircularGallery-Dw0kM5fT.css +1 -0
- package/storybook-static/assets/CircularGallery.stories-c7BEdmTm.js +95 -0
- package/storybook-static/assets/CircularText-DofQkQcn.css +1 -0
- package/storybook-static/assets/CircularText.stories-BCoG12vU.js +7 -0
- package/storybook-static/assets/ClickSpark.stories-BOypb8hM.js +12 -0
- package/storybook-static/assets/Color-AVL7NMMY-iZX0v-MX.js +1 -0
- package/storybook-static/assets/Color-YRkaOI4u.js +1 -0
- package/storybook-static/assets/ColorBends-BkbPScKk.css +1 -0
- package/storybook-static/assets/ColorBends.stories-DJVplB1e.js +103 -0
- package/storybook-static/assets/CountUp.stories-CZoxCmOS.js +11 -0
- package/storybook-static/assets/Counter-NM41Ofe9.css +1 -0
- package/storybook-static/assets/Counter.stories-CD2CN6Rs.js +15 -0
- package/storybook-static/assets/Crosshair.stories-pKH0CRjB.js +6 -0
- package/storybook-static/assets/Cubes-BbZLRUsz.css +1 -0
- package/storybook-static/assets/Cubes.stories-CG6EoDFk.js +1 -0
- package/storybook-static/assets/CurvedLoop-DyoDI-mm.css +1 -0
- package/storybook-static/assets/CurvedLoop.stories-2_6LGDBt.js +9 -0
- package/storybook-static/assets/DarkVeil-CeIthsg1.css +1 -0
- package/storybook-static/assets/DarkVeil.stories-NPy-IAdE.js +79 -0
- package/storybook-static/assets/DateInput-bEXupMbC.js +38 -0
- package/storybook-static/assets/{DateInput.stories-BGB5zJBm.js → DateInput.stories-Di9xlwl-.js} +2 -2
- package/storybook-static/assets/DecayCard-2Nc9J_8G.css +1 -0
- package/storybook-static/assets/DecayCard.stories-C_nLJJYv.js +8 -0
- package/storybook-static/assets/DecryptedText.stories-B3nmn_C5.js +15 -0
- package/storybook-static/assets/Dither-CDTFjgCl.css +1 -0
- package/storybook-static/assets/Dither.stories-DYFkOPEa.js +134 -0
- package/storybook-static/assets/Dock-DwLYexgF.css +1 -0
- package/storybook-static/assets/Dock.stories-D5xKRTwB.js +40 -0
- package/storybook-static/assets/{DocsRenderer-PQXLIZUC-q9kcQxfH.js → DocsRenderer-PQXLIZUC-qnjLy5zI.js} +8 -8
- package/storybook-static/assets/{EditFAB.stories-CmfJxWns.js → EditFAB.stories-D7WePUUN.js} +12 -42
- package/storybook-static/assets/EvilEye-QIF3Ik1Y.css +1 -0
- package/storybook-static/assets/EvilEye.stories-Cov9VutU.js +103 -0
- package/storybook-static/assets/FadeContent.stories-mHhk3715.js +14 -0
- package/storybook-static/assets/FaultyTerminal-D6zQXJ-g.css +1 -0
- package/storybook-static/assets/FaultyTerminal.stories-DjKOHL4-.js +224 -0
- package/storybook-static/assets/Fbo-CDZq1mNj.js +1 -0
- package/storybook-static/assets/FloatingLines-BPpNRsJk.css +1 -0
- package/storybook-static/assets/FloatingLines.stories-B_dxBmBz.js +187 -0
- package/storybook-static/assets/FlowingMenu-Cff-letA.css +1 -0
- package/storybook-static/assets/FlowingMenu.stories-DdUqXTFx.js +27 -0
- package/storybook-static/assets/FluidGlass.stories-C6FrnI3D.js +490 -0
- package/storybook-static/assets/Folder-BFuU52Ao.css +1 -0
- package/storybook-static/assets/Folder.stories-Zb5rwe3k.js +13 -0
- package/storybook-static/assets/FuzzyText.stories-CoZEjZrD.js +22 -0
- package/storybook-static/assets/Galaxy-Cj2Xx-fN.css +1 -0
- package/storybook-static/assets/Galaxy.stories-D8hfMx7x.js +184 -0
- package/storybook-static/assets/GhostCursor-CLKgvqwd.css +1 -0
- package/storybook-static/assets/GhostCursor.stories-DmAEHIj2.js +276 -0
- package/storybook-static/assets/GlareHover-D8gfoeb7.css +1 -0
- package/storybook-static/assets/GlareHover.stories-C2pGThOS.js +1 -0
- package/storybook-static/assets/GlassSurface-D51dj98P.css +1 -0
- package/storybook-static/assets/GlassSurface.stories-Dt29DAS0.js +43 -0
- package/storybook-static/assets/GlitchText-CsL0nL6_.css +1 -0
- package/storybook-static/assets/GlitchText.stories-sqo6Y5iu.js +8 -0
- package/storybook-static/assets/GooeyNav-8BBsSYWJ.css +1 -0
- package/storybook-static/assets/GooeyNav.stories-DxgFxo-U.js +24 -0
- package/storybook-static/assets/GradientBlinds-CBpfmlwu.css +1 -0
- package/storybook-static/assets/GradientBlinds.stories-BO3udAca.js +136 -0
- package/storybook-static/assets/GradientText-Bsx4jZeS.css +1 -0
- package/storybook-static/assets/GradientText.stories-DwqimEmN.js +11 -0
- package/storybook-static/assets/Grainient.stories-DrGFYn0A.js +113 -0
- package/storybook-static/assets/GridMotion-GSkrJvrd.css +1 -0
- package/storybook-static/assets/GridMotion.stories-Rbww9MSf.js +6 -0
- package/storybook-static/assets/ImageSlideshow-CrquLxbj.css +1 -0
- package/storybook-static/assets/ImageSlideshow.stories-BOxjGf7e.js +385 -0
- package/storybook-static/assets/Iridescence-DkXB1G15.css +1 -0
- package/storybook-static/assets/Iridescence.stories-CTQo8feH.js +47 -0
- package/storybook-static/assets/LaserFlow-YpDTX0s9.css +1 -0
- package/storybook-static/assets/LaserFlow.stories-DsHyOCT6.js +253 -0
- package/storybook-static/assets/LetterGlitch.stories-DYnbcxa2.js +1 -0
- package/storybook-static/assets/LightPillar-B1pSzH3x.css +1 -0
- package/storybook-static/assets/LightPillar.stories-C0oLGh9j.js +103 -0
- package/storybook-static/assets/LightRays.stories-y4A3LO7i.js +114 -0
- package/storybook-static/assets/Lightning-Duov5diw.css +1 -0
- package/storybook-static/assets/Lightning.stories-Bjuvt9ng.js +92 -0
- package/storybook-static/assets/LineWaves-CGZ5Tp0W.css +1 -0
- package/storybook-static/assets/LineWaves.stories-DXHfmcAY.js +132 -0
- package/storybook-static/assets/LiquidChrome-C8jkHJD4.css +1 -0
- package/storybook-static/assets/LiquidChrome.stories-BIJKsALp.js +60 -0
- package/storybook-static/assets/LiquidEther-BTKKmNQk.css +1 -0
- package/storybook-static/assets/LiquidEther.stories-Zn4y8_Dj.js +161 -0
- package/storybook-static/assets/LoadingSpinner-1jvNgxlI.css +1 -0
- package/storybook-static/assets/LoadingSpinner-T2OjcR-z.js +49 -0
- package/storybook-static/assets/LoadingSpinner.stories-YZPlVrIL.js +169 -0
- package/storybook-static/assets/MagicRings-B15iCWeD.css +1 -0
- package/storybook-static/assets/MagicRings.stories-B17cxZu8.js +81 -0
- package/storybook-static/assets/Magnet.stories-C6geVwXu.js +12 -0
- package/storybook-static/assets/MagnetLines-BMVF8tvL.css +1 -0
- package/storybook-static/assets/MagnetLines.stories-uCo-0xpG.js +1 -0
- package/storybook-static/assets/Masonry-JijTuZ6o.css +1 -0
- package/storybook-static/assets/Masonry.stories-BsaHuUl3.js +53 -0
- package/storybook-static/assets/Mesh-CwXV3WjE.js +7 -0
- package/storybook-static/assets/MetaBalls-Do7Vo_Ig.css +1 -0
- package/storybook-static/assets/MetaBalls.stories-CfS9YAYf.js +63 -0
- package/storybook-static/assets/MetallicPaint-rQ3s8Y0v.css +1 -0
- package/storybook-static/assets/MetallicPaint.stories-CPnRKq8Y.js +159 -0
- package/storybook-static/assets/MoodChart.stories-Bhzx-Mki.js +40 -0
- package/storybook-static/assets/MotionConfigContext-4uS6JRtS.js +1 -0
- package/storybook-static/assets/Navbar-BPWxCB-U.css +1 -0
- package/storybook-static/assets/Navbar.stories-CTJisFgI.js +325 -0
- package/storybook-static/assets/Noise-wMLTuki1.css +1 -0
- package/storybook-static/assets/Noise.stories-CV2ieqjl.js +9 -0
- package/storybook-static/assets/NumberStepper-0N2zZmLM.js +110 -0
- package/storybook-static/assets/NumberStepper-C_00aeJp.css +1 -0
- package/storybook-static/assets/NumberStepper.stories-DO0SaXet.js +436 -0
- package/storybook-static/assets/Orb-CS8T832d.css +1 -0
- package/storybook-static/assets/Orb.stories-BO2G-id7.js +177 -0
- package/storybook-static/assets/OrbitImages-DqsOGdeH.css +1 -0
- package/storybook-static/assets/OrbitImages.stories-Dd0Un1zc.js +26 -0
- package/storybook-static/assets/PieChart.stories-YSBHUrlk.js +199 -0
- package/storybook-static/assets/PixelBlast-xjKshbH4.css +1 -0
- package/storybook-static/assets/PixelBlast.stories-DLOdQdBC.js +211 -0
- package/storybook-static/assets/PixelCard-dyv8Jzsb.css +1 -0
- package/storybook-static/assets/PixelCard.stories-DL1EW33U.js +6 -0
- package/storybook-static/assets/PixelSnow-Mq8jFd6s.css +1 -0
- package/storybook-static/assets/PixelSnow.stories-40ms3GpO.js +155 -0
- package/storybook-static/assets/PixelTransition-4YlpcBIO.css +1 -0
- package/storybook-static/assets/PixelTransition.stories-Ce0j1LoP.js +27 -0
- package/storybook-static/assets/Plasma-hc6I4S4K.css +1 -0
- package/storybook-static/assets/Plasma.stories-C-qYly6i.js +78 -0
- package/storybook-static/assets/Prism-1A7MRUuH.css +1 -0
- package/storybook-static/assets/Prism.stories-BzLhe_ek.js +121 -0
- package/storybook-static/assets/PrismaticBurst-CJEX1JKp.css +1 -0
- package/storybook-static/assets/PrismaticBurst.stories-DODqjw3j.js +170 -0
- package/storybook-static/assets/ProfileCard-CO0Gk0e9.css +1 -0
- package/storybook-static/assets/ProfileCard.stories-DUyZIJ8A.js +15 -0
- package/storybook-static/assets/QuantifiableHabitsChart-Bam6n9X_.css +1 -0
- package/storybook-static/assets/QuantifiableHabitsChart.stories-DvgzevZP.js +105 -0
- package/storybook-static/assets/Radar-xwRKh0lP.css +1 -0
- package/storybook-static/assets/Radar.stories-2RPf1QSy.js +88 -0
- package/storybook-static/assets/Ribbons-CjSeVzzZ.css +1 -0
- package/storybook-static/assets/Ribbons.stories-RmoPiIi9.js +132 -0
- package/storybook-static/assets/RippleGrid-NvomE-YP.css +1 -0
- package/storybook-static/assets/RippleGrid.stories-Otw1g2CJ.js +113 -0
- package/storybook-static/assets/RotatingText-BGK56OzZ.css +1 -0
- package/storybook-static/assets/RotatingText.stories-NgYC0KMN.js +12 -0
- package/storybook-static/assets/ScrollFloat-CuaI6iDB.css +1 -0
- package/storybook-static/assets/ScrollFloat.stories-BFBCdW8h.js +12 -0
- package/storybook-static/assets/ScrollReveal-7GSimuFY.css +1 -0
- package/storybook-static/assets/ScrollReveal.stories-JKNxxGAh.js +13 -0
- package/storybook-static/assets/ScrollTrigger-D1XJUMov.js +15 -0
- package/storybook-static/assets/ScrollVelocity-BQllEnJm.css +1 -0
- package/storybook-static/assets/ScrollVelocity.stories-C8kmHqS4.js +9 -0
- package/storybook-static/assets/{SearchBar.stories-DmHIaDZB.js → SearchBar.stories-C7Ba5BXp.js} +30 -15
- package/storybook-static/assets/SearchableDropdown-C_6nW_fM.js +38 -0
- package/storybook-static/assets/{SearchableDropdown.stories-ByZj6lJu.js → SearchableDropdown.stories-Cr7zD259.js} +8 -8
- package/storybook-static/assets/SelectInput-Cq1kd98Q.js +31 -0
- package/storybook-static/assets/SelectInput.stories-BdpLeHVn.js +129 -0
- package/storybook-static/assets/ShapeBlur.stories-lRfZvgfc.js +131 -0
- package/storybook-static/assets/ShapeGrid-D5w-KuEm.css +1 -0
- package/storybook-static/assets/ShapeGrid.stories-CfjM9fjH.js +11 -0
- package/storybook-static/assets/ShinyText-D0_UmCBv.css +1 -0
- package/storybook-static/assets/ShinyText.stories-DKdXfhML.js +14 -0
- package/storybook-static/assets/Silk.stories-CjTLyn1c.js +62 -0
- package/storybook-static/assets/SleepChart-DBRb08s_.css +1 -0
- package/storybook-static/assets/SleepChart.stories-DJ12EHQj.js +58 -0
- package/storybook-static/assets/Slider-Bq7zObwV.css +1 -0
- package/storybook-static/assets/Slider-CjC8kTvA.js +32 -0
- package/storybook-static/assets/Slider.stories-8dOh6zEz.js +99 -0
- package/storybook-static/assets/SoftAurora-2A7ssVQp.css +1 -0
- package/storybook-static/assets/SoftAurora.stories-OVy3Uj5H.js +147 -0
- package/storybook-static/assets/SoundDemo.stories-BMnOeJoJ.js +3 -0
- package/storybook-static/assets/SplashCursor.stories-D-l4tdFh.js +244 -0
- package/storybook-static/assets/SpotlightCard-Bi63T6N0.css +1 -0
- package/storybook-static/assets/SpotlightCard.stories-CGzh2DPl.js +6 -0
- package/storybook-static/assets/Stack-CBKeDK5i.css +1 -0
- package/storybook-static/assets/Stack.stories-CGsiQ3oD.js +32 -0
- package/storybook-static/assets/StaggeredMenu-DjV6Ra1C.css +1 -0
- package/storybook-static/assets/StaggeredMenu.stories-Bq5nvfqE.js +45 -0
- package/storybook-static/assets/StarBorder-isNlSycS.css +1 -0
- package/storybook-static/assets/StarBorder.stories-CAGKcU-0.js +9 -0
- package/storybook-static/assets/SunburstChart.stories-ceDZ0sGS.js +285 -0
- package/storybook-static/assets/Table-DnhtoClE.css +1 -0
- package/storybook-static/assets/Table.stories-DNxjy4mw.js +227 -0
- package/storybook-static/assets/Tabs.stories-CujhnpzV.js +64 -0
- package/storybook-static/assets/TargetCursor-CWS-TuGF.css +1 -0
- package/storybook-static/assets/TargetCursor.stories-CjS6RpDB.js +9 -0
- package/storybook-static/assets/TextArea-DHBnvidn.js +28 -0
- package/storybook-static/assets/{TextArea.stories-CCqRRpwq.js → TextArea.stories-CCC4mZkh.js} +18 -8
- package/storybook-static/assets/TextCursor-DDqF-3pV.css +1 -0
- package/storybook-static/assets/TextCursor.stories-DbbUKuuf.js +11 -0
- package/storybook-static/assets/TextInput-BRLXZRi0.js +28 -0
- package/storybook-static/assets/{TextInput.stories-CtvOb60q.js → TextInput.stories-DzmoEdX3.js} +7 -7
- package/storybook-static/assets/TextPressure.stories-BjGjNHuq.js +47 -0
- package/storybook-static/assets/TextType-BYHLKnc2.css +1 -0
- package/storybook-static/assets/TextType.stories-BCEjz-Zi.js +19 -0
- package/storybook-static/assets/Texture-BkQWYNP2.js +1 -0
- package/storybook-static/assets/ThemeSwitcher.stories-0T7fY3d_.js +62 -0
- package/storybook-static/assets/Threads-C5ItmUMV.css +1 -0
- package/storybook-static/assets/Threads.stories-DDlSfgD5.js +121 -0
- package/storybook-static/assets/TimeInput.stories-CjV4ksEX.js +55 -0
- package/storybook-static/assets/Toggle-C26yCxt_.js +41 -0
- package/storybook-static/assets/Toggle.stories-D5LQoJpm.js +199 -0
- package/storybook-static/assets/ToggleButton-DJU3CV_i.css +1 -0
- package/storybook-static/assets/ToggleButton-DKVqKQxZ.js +32 -0
- package/storybook-static/assets/ToggleButton.stories-BfAEDMOR.js +163 -0
- package/storybook-static/assets/Triangle-64ffRKNB.js +1 -0
- package/storybook-static/assets/TrueFocus-C4c7GDsQ.css +1 -0
- package/storybook-static/assets/TrueFocus.stories-DA9Ysraz.js +12 -0
- package/storybook-static/assets/VariableProximity-E64p6UBv.css +1 -0
- package/storybook-static/assets/VariableProximity.stories-CN-Q4WDX.js +14 -0
- package/storybook-static/assets/Vec2-Cf1C3GIc.js +1 -0
- package/storybook-static/assets/Waves-C7txy_IO.css +1 -0
- package/storybook-static/assets/Waves.stories-W2IDhrZm.js +1 -0
- package/storybook-static/assets/axis-D3QohQNI.js +1 -0
- package/storybook-static/assets/check-Bh0K2zJt.js +6 -0
- package/storybook-static/assets/chevron-down-B26xHSrx.js +6 -0
- package/storybook-static/assets/chevron-right-4NIYYZ8p.js +6 -0
- package/storybook-static/assets/client-CyPtLppF.js +1 -0
- package/storybook-static/assets/createLucideIcon-wa-8tr0c.js +21 -0
- package/storybook-static/assets/demo/cs1.webp +0 -0
- package/storybook-static/assets/demo/cs2.webp +0 -0
- package/storybook-static/assets/demo/cs3.webp +0 -0
- package/storybook-static/assets/folder-OUDa6Ti7.js +6 -0
- package/storybook-static/assets/iconBase-fo9b9WAM.js +1 -0
- package/storybook-static/assets/{iframe-BUaP2gIF.js → iframe-2N7rjfXm.js} +192 -192
- package/storybook-static/assets/iframe-Df7_64QT.css +1 -0
- package/storybook-static/assets/{index-CBmvvqzc.js → index-BXmXrRij.js} +1 -1
- package/storybook-static/assets/index-C8pce-KX.js +15 -0
- package/storybook-static/assets/index-DaJY9FlE.js +24 -0
- package/storybook-static/assets/index-DcRHiSf7.js +128 -0
- package/storybook-static/assets/index-IKMS7NhW.js +9 -0
- package/storybook-static/assets/layout-grid-DMX9O4XB.js +6 -0
- package/storybook-static/assets/linear-dkJHgUri.js +1 -0
- package/storybook-static/assets/{monotone-BYG7Mesf.js → monotone-DHdPkfDP.js} +1 -1
- package/storybook-static/assets/proxy-qiKixXs8.js +1 -0
- package/storybook-static/assets/react-18-DajuY7cH.js +1 -0
- package/storybook-static/assets/react-three-fiber.esm-pSSy_32K.js +43 -0
- package/storybook-static/assets/search-DBjUUDRM.js +6 -0
- package/storybook-static/assets/sun-WV9AmUvz.js +11 -0
- package/storybook-static/assets/three.module--_vTUKhS.js +4057 -0
- package/storybook-static/assets/{transform-NloTqvdv.js → transform-BKmuZieF.js} +1 -1
- package/storybook-static/assets/use-animation-frame-DNrI5vnP.js +1 -0
- package/storybook-static/assets/use-in-view-Dn2glBsV.js +1 -0
- package/storybook-static/assets/use-motion-value-w2f8nz4L.js +1 -0
- package/storybook-static/assets/use-spring-CDOZMwuR.js +1 -0
- package/storybook-static/assets/use-transform-DZyAm4Sp.js +1 -0
- package/storybook-static/assets/useSound-BBLJ5Rjg.js +1 -0
- package/storybook-static/assets/users-0pBe6bxm.js +6 -0
- package/storybook-static/assets/x-k5o8Jl5E.js +6 -0
- package/storybook-static/iframe.html +7 -40
- package/storybook-static/index.json +1 -1
- package/storybook-static/project.json +1 -1
- package/storybook-static/sb-addons/chromatic-com-storybook-4/manager-bundle.js +1 -1
- package/storybook-static/sb-addons/docs-2/manager-bundle.js +2 -2
- package/storybook-static/sb-addons/links-3/manager-bundle.js +1 -1
- package/storybook-static/sb-addons/storybook-5/manager-bundle.js +1 -1
- package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +3 -3
- package/storybook-static/assets/AllAtoms.stories-DBoQZmq-.js +0 -109
- package/storybook-static/assets/AnimationPlayer-UXJjBKtF.css +0 -1
- package/storybook-static/assets/AnimationPlayer.stories-yXQ8fqUT.js +0 -379
- package/storybook-static/assets/ArrayInput.stories-CRqKExgm.js +0 -221
- package/storybook-static/assets/Button.stories-BeeBKHoX.js +0 -117
- package/storybook-static/assets/Calendar-BTQfDDfP.css +0 -1
- package/storybook-static/assets/Calendar.stories-CKOG4XAn.js +0 -545
- package/storybook-static/assets/Card-Bc7TyfBx.css +0 -1
- package/storybook-static/assets/Card-D-kcaQHV.js +0 -49
- package/storybook-static/assets/Card.stories-CpcboxKs.js +0 -130
- package/storybook-static/assets/Color-AVL7NMMY-BzNNgCT5.js +0 -1
- package/storybook-static/assets/DateInput-Cu3PZYc0.js +0 -33
- package/storybook-static/assets/MoodChart.stories-V-wKOSu-.js +0 -40
- package/storybook-static/assets/Navbar-B8vEvGnB.css +0 -1
- package/storybook-static/assets/Navbar.stories-Dkf77idX.js +0 -235
- package/storybook-static/assets/NumberStepper-BVHPJutJ.css +0 -1
- package/storybook-static/assets/NumberStepper-BZGlrWCN.js +0 -30
- package/storybook-static/assets/NumberStepper.stories-NZw7r4Oh.js +0 -127
- package/storybook-static/assets/PieChart.stories-BkfNODjW.js +0 -199
- package/storybook-static/assets/QuantifiableHabitsChart-BEfzqND4.css +0 -1
- package/storybook-static/assets/QuantifiableHabitsChart.stories-Df6rcrdD.js +0 -105
- package/storybook-static/assets/SearchableDropdown-ByAXm1md.js +0 -38
- package/storybook-static/assets/SelectInput-D-AwfWVz.js +0 -31
- package/storybook-static/assets/SelectInput.stories-MyE-GqOw.js +0 -112
- package/storybook-static/assets/SleepChart-yGsG5RlQ.css +0 -1
- package/storybook-static/assets/SleepChart.stories-Dsz1U6F9.js +0 -58
- package/storybook-static/assets/SunburstChart.stories-CphfyDsR.js +0 -285
- package/storybook-static/assets/Tabs.stories-c24Ffu3K.js +0 -49
- package/storybook-static/assets/TextArea-B_sATPlw.js +0 -28
- package/storybook-static/assets/TextInput-ZGg8LTL_.js +0 -28
- package/storybook-static/assets/ThemeSwitcher.stories-BvkX1SDm.js +0 -62
- package/storybook-static/assets/TimeInput.stories-BchhRfKo.js +0 -50
- package/storybook-static/assets/Toggle-BQ2KHBDr.js +0 -39
- package/storybook-static/assets/Toggle.stories-BUSZc6m3.js +0 -194
- package/storybook-static/assets/ToggleButton-Dl6hvkJv.js +0 -32
- package/storybook-static/assets/ToggleButton-gfPoPxTQ.css +0 -1
- package/storybook-static/assets/ToggleButton.stories-BKN4zU3N.js +0 -143
- package/storybook-static/assets/iframe-BOc1hSA-.css +0 -1
- package/storybook-static/assets/index-5bdJXrkD.js +0 -1
- package/storybook-static/assets/index-CZs7_DA6.js +0 -9
- package/storybook-static/assets/linear-4t_RuQok.js +0 -1
- package/storybook-static/assets/proxy-9Y4F2rF8.js +0 -1
- package/storybook-static/assets/react-18-D4c-_GAk.js +0 -24
|
@@ -1,545 +0,0 @@
|
|
|
1
|
-
import{r as x,j as e}from"./iframe-BUaP2gIF.js";import{m as Y}from"./proxy-9Y4F2rF8.js";import"./preload-helper-C1FmrZbK.js";const _e="_calendar_1k9gq_2",je="_loading_1k9gq_14",Te="_loadingSpinner_1k9gq_21",ze="_header_1k9gq_27",Me="_navigation_1k9gq_35",$e="_navButton_1k9gq_41",Ne="_title_1k9gq_60",Re="_controls_1k9gq_70",Be="_todayButton_1k9gq_76",qe="_viewToggle_1k9gq_92",Le="_viewButton_1k9gq_99",Fe="_active_1k9gq_113",Ae="_weekDays_1k9gq_123",Ie="_weekNumberHeader_1k9gq_134",Pe="_weekDay_1k9gq_123",We="_daysGrid_1k9gq_151",Ve="_weekView_1k9gq_161",Oe="_dayCell_1k9gq_165",Ue="_dayNumber_1k9gq_194",He="_today_1k9gq_76",Ye="_events_1k9gq_213",Ge="_event_1k9gq_213",Je="_eventTitle_1k9gq_235",Ke="_eventTime_1k9gq_240",Qe="_otherMonth_1k9gq_280",Xe="_weekNumber_1k9gq_134",Ze="_completed_1k9gq_330",et="_completedIcon_1k9gq_351",tt="_moreEvents_1k9gq_358",nt="_emptyState_1k9gq_368",a={calendar:_e,loading:je,loadingSpinner:Te,header:ze,navigation:Me,navButton:$e,title:Ne,controls:Re,todayButton:Be,viewToggle:qe,viewButton:Le,active:Fe,weekDays:Ae,weekNumberHeader:Ie,weekDay:Pe,daysGrid:We,weekView:Ve,dayCell:Oe,dayNumber:Ue,today:He,events:Ye,event:Ge,eventTitle:Je,eventTime:Ke,otherMonth:Qe,weekNumber:Xe,completed:Ze,completedIcon:et,moreEvents:tt,emptyState:nt};function S({events:n,onEventClick:r,onDateClick:c,viewMode:m="month",initialDate:y=new Date,config:h={},className:i="",style:d={},loading:s=!1,emptyState:v}){const[u,B]=x.useState(y),[w,I]=x.useState(m),{eventColors:P={},iconRenderer:W,maxEventsPerDay:q=3,mondayStart:C=!1,showWeekNumbers:V=!1,dateFormat:O={month:"long",year:"numeric"},locale:b="en-US",dayLabels:ue,monthNames:_}=h,ye=ue||(C?["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]),U=x.useMemo(()=>{const t=u.getFullYear(),l=u.getMonth();let o,p,k;if(w==="week"){o=new Date(u);const D=o.getDay(),f=C?o.getDate()-D+(D===0?-6:1):o.getDate()-D;o=new Date(o.setDate(f)),o.setHours(0,0,0,0),p=new Date(o),p.setDate(p.getDate()+6);const L=o.toLocaleDateString(b,{day:"numeric",month:"short"}),F=p.toLocaleDateString(b,{day:"numeric",month:"short"});k=`${L} - ${F}`}else{const D=new Date(t,l,1),f=new Date(t,l+1,0);o=new Date(D);const L=C?(D.getDay()+6)%7:D.getDay();o.setDate(o.getDate()-L),p=new Date(f);const F=C?(f.getDay()+6)%7:f.getDay();p.setDate(p.getDate()+(6-F)),_&&_[l]?k=`${_[l]} ${t}`:k=u.toLocaleDateString(b,O)}const E=[],g=new Date(o);for(;g<=p;)E.push(new Date(g)),g.setDate(g.getDate()+1);return{days:E,displayTitle:k}},[u,w,C,b,O,_]),he=t=>{const l=n.filter(o=>new Date(o.date).toDateString()===t.toDateString());return w==="week"?l.sort((o,p)=>{const k=o.time?H(o.time):999999,E=p.time?H(p.time):999999;return k-E}):l},H=t=>{const[l,o]=t.split(":").map(Number);return l*60+o},we=()=>{const t=new Date(u);w==="week"?t.setDate(t.getDate()-7):t.setMonth(t.getMonth()-1),B(t)},De=()=>{const t=new Date(u);w==="week"?t.setDate(t.getDate()+7):t.setMonth(t.getMonth()+1),B(t)},ke=()=>{B(new Date)},xe=t=>{if(t.color)return t.color;if(t.type&&P[t.type])return P[t.type];const l={high:"#FF4444",medium:"#FFA500",low:"#4A90E2"};return t.priority&&l[t.priority]?l[t.priority]:"#4A90E2"},fe=t=>{r&&r(t)},Se=t=>{c&&c(t)},Ee=t=>{const l=new Date;return t.toDateString()===l.toDateString()},Ce=t=>t.getMonth()===u.getMonth(),be=t=>{const l=new Date(t.getFullYear(),0,1),o=t.getTime()-l.getTime(),p=1e3*60*60*24*7;return Math.floor(o/p)+1};return s?e.jsx("div",{className:`${a.calendar} ${a.loading} ${i}`,style:d,children:e.jsx("div",{className:a.loadingSpinner,children:"Loading..."})}):e.jsxs("div",{className:`${a.calendar} ${i}`,style:d,children:[e.jsxs("div",{className:a.header,children:[e.jsxs("div",{className:a.navigation,children:[e.jsx("button",{onClick:we,className:a.navButton,"aria-label":"Previous",children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:e.jsx("polyline",{points:"15,18 9,12 15,6"})})}),e.jsx("h3",{className:a.title,children:U.displayTitle}),e.jsx("button",{onClick:De,className:a.navButton,"aria-label":"Next",children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:e.jsx("polyline",{points:"9,6 15,12 9,18"})})})]}),e.jsxs("div",{className:a.controls,children:[e.jsx("button",{onClick:ke,className:a.todayButton,children:"Today"}),e.jsxs("div",{className:a.viewToggle,children:[e.jsx("button",{className:`${a.viewButton} ${w==="month"?a.active:""}`,onClick:()=>I("month"),children:"Month"}),e.jsx("button",{className:`${a.viewButton} ${w==="week"?a.active:""}`,onClick:()=>I("week"),children:"Week"})]})]})]}),e.jsxs("div",{className:a.weekDays,children:[V&&e.jsx("div",{className:a.weekNumberHeader,children:"Week"}),ye.map(t=>e.jsx("div",{className:a.weekDay,children:t},t))]}),e.jsx("div",{className:`${a.daysGrid} ${w==="week"?a.weekView:""}`,children:U.days.map((t,l)=>{const o=he(t),p=Ee(t),k=w==="week"||Ce(t),E=V&&l%7===0;return e.jsxs(Y.div,{className:`${a.dayCell} ${p?a.today:""} ${k?"":a.otherMonth}`,initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.3,delay:l*.02,ease:"easeOut"},onClick:()=>Se(t),children:[E&&e.jsx("div",{className:a.weekNumber,children:be(t)}),e.jsx("div",{className:a.dayNumber,children:t.getDate()}),o.length>0&&e.jsxs("div",{className:a.events,children:[o.slice(0,q).map((g,D)=>e.jsxs(Y.div,{className:`${a.event} ${g.status==="completed"?a.completed:""}`,style:{backgroundColor:xe(g),opacity:g.status==="completed"?.7:1},onClick:f=>{f.stopPropagation(),fe(g)},initial:{opacity:0,x:-10},animate:{opacity:1,x:0},transition:{duration:.2,delay:D*.05,ease:"easeOut"},whileHover:{scale:1.02,y:-1,transition:{duration:.1}},whileTap:{scale:.98,transition:{duration:.1}},children:[W&&W(g),e.jsxs("span",{className:a.eventTitle,children:[g.time&&e.jsx("span",{className:a.eventTime,children:g.time}),g.title]}),g.status==="completed"&&e.jsx("svg",{className:a.completedIcon,width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",children:e.jsx("polyline",{points:"20,6 9,17 4,12"})})]},g.id)),o.length>q&&e.jsxs("div",{className:a.moreEvents,children:["+",o.length-q," more"]})]}),o.length===0&&v&&e.jsx("div",{className:a.emptyState,children:v})]},`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`)})})]})}S.__docgenInfo={description:`Calendar component - A flexible, reusable calendar for displaying events
|
|
2
|
-
|
|
3
|
-
@component
|
|
4
|
-
@description
|
|
5
|
-
A highly customizable calendar component that can display events in month or week view.
|
|
6
|
-
Supports custom event types, colors, icons, and localization. Perfect for scheduling,
|
|
7
|
-
project management, habit tracking, or any date-based data visualization.
|
|
8
|
-
|
|
9
|
-
@example
|
|
10
|
-
// Basic usage
|
|
11
|
-
<Calendar
|
|
12
|
-
events={myEvents}
|
|
13
|
-
onEventClick={handleEventClick}
|
|
14
|
-
viewMode="month"
|
|
15
|
-
/>
|
|
16
|
-
|
|
17
|
-
@example
|
|
18
|
-
// With custom configuration
|
|
19
|
-
<Calendar
|
|
20
|
-
events={projectEvents}
|
|
21
|
-
config={{
|
|
22
|
-
eventColors: { task: '#4A90E2', meeting: '#7ED321' },
|
|
23
|
-
maxEventsPerDay: 5,
|
|
24
|
-
mondayStart: true
|
|
25
|
-
}}
|
|
26
|
-
onEventClick={handleEventClick}
|
|
27
|
-
/>`,methods:[],displayName:"Calendar",props:{events:{required:!0,tsType:{name:"Array",elements:[{name:"CalendarEvent"}],raw:"CalendarEvent[]"},description:"Array of events to display"},onEventClick:{required:!1,tsType:{name:"signature",type:"function",raw:"(event: CalendarEvent) => void",signature:{arguments:[{type:{name:"CalendarEvent"},name:"event"}],return:{name:"void"}}},description:"Callback when an event is clicked"},onDateClick:{required:!1,tsType:{name:"signature",type:"function",raw:"(date: Date) => void",signature:{arguments:[{type:{name:"Date"},name:"date"}],return:{name:"void"}}},description:"Callback when a date is clicked"},viewMode:{required:!1,tsType:{name:"union",raw:"'month' | 'week'",elements:[{name:"literal",value:"'month'"},{name:"literal",value:"'week'"}]},description:"Initial view mode",defaultValue:{value:"'month'",computed:!1}},initialDate:{required:!1,tsType:{name:"Date"},description:"Initial date to display",defaultValue:{value:"new Date()",computed:!1}},config:{required:!1,tsType:{name:"CalendarConfig"},description:"Configuration options",defaultValue:{value:"{}",computed:!1}},className:{required:!1,tsType:{name:"string"},description:"Custom CSS class",defaultValue:{value:"''",computed:!1}},style:{required:!1,tsType:{name:"ReactCSSProperties",raw:"React.CSSProperties"},description:"Custom styles",defaultValue:{value:"{}",computed:!1}},loading:{required:!1,tsType:{name:"boolean"},description:"Loading state",defaultValue:{value:"false",computed:!1}},emptyState:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:"Custom empty state component"}}};const rt={title:"Organisms/Calendar",component:S,parameters:{layout:"padded",docs:{description:{component:"A flexible, customizable calendar component for displaying events in month or week view. Perfect for scheduling, project management, habit tracking, or any date-based data visualization."}}},tags:["autodocs"],argTypes:{events:{control:"object",description:"Array of events to display on the calendar"},viewMode:{control:"radio",options:["month","week"],description:"Initial view mode for the calendar"},onEventClick:{action:"event-clicked"},onDateClick:{action:"date-clicked"}}},A=()=>{const n=new Date,r=[];for(let c=0;c<15;c++){const m=new Date(n);m.setDate(n.getDate()+Math.floor(Math.random()*30)-15),r.push({id:`event-${c}`,title:`Event ${c+1}`,date:m,time:Math.random()>.5?`${9+Math.floor(Math.random()*8)}:${Math.random()>.5?"00":"30"}`:void 0,type:["meeting","task","deadline","milestone"][Math.floor(Math.random()*4)],status:Math.random()>.7?"completed":"pending",priority:["high","medium","low"][Math.floor(Math.random()*3)]})}return r},j={args:{events:A(),viewMode:"month"}},T={args:{events:A(),viewMode:"week"}},z={render:()=>{const[n,r]=x.useState(null),[c,m]=x.useState(null),[y,h]=x.useState(A()),i=s=>{r(s),console.log("Event clicked:",s),h(v=>v.map(u=>u.id===s.id?{...u,status:u.status==="completed"?"pending":"completed"}:u))},d=s=>{m(s),console.log("Date clicked:",s)};return e.jsxs("div",{children:[e.jsx(S,{events:y,onEventClick:i,onDateClick:d,viewMode:"month"}),e.jsxs("div",{style:{marginTop:"var(--spacing-lg)",padding:"var(--spacing-md)",background:"var(--color-background-secondary)",borderRadius:"var(--radius-md)"},children:[e.jsx("h4",{style:{margin:"0 0 var(--spacing-md) 0",color:"var(--color-primary)"},children:"🎯 Click Events Above to See Interaction"}),n&&e.jsxs("div",{style:{marginBottom:"var(--spacing-md)",padding:"var(--spacing-sm)",background:"var(--color-background)",borderRadius:"var(--radius-sm)",border:"1px solid var(--color-border)"},children:[e.jsx("h5",{style:{margin:"0 0 var(--spacing-xs) 0",color:"var(--color-text)"},children:"📅 Event Clicked (toggled status):"}),e.jsxs("p",{style:{margin:"4px 0",fontSize:"var(--font-size-sm)"},children:[e.jsx("strong",{children:"Title:"})," ",n.title]}),e.jsxs("p",{style:{margin:"4px 0",fontSize:"var(--font-size-sm)"},children:[e.jsx("strong",{children:"Date:"})," ",new Date(n.date).toLocaleDateString()]}),n.time&&e.jsxs("p",{style:{margin:"4px 0",fontSize:"var(--font-size-sm)"},children:[e.jsx("strong",{children:"Time:"})," ",n.time]}),e.jsxs("p",{style:{margin:"4px 0",fontSize:"var(--font-size-sm)"},children:[e.jsx("strong",{children:"Type:"})," ",n.type]}),e.jsxs("p",{style:{margin:"4px 0",fontSize:"var(--font-size-sm)"},children:[e.jsx("strong",{children:"Status:"}),e.jsx("span",{style:{marginLeft:"var(--spacing-xs)",padding:"2px 6px",borderRadius:"var(--radius-xs)",backgroundColor:n.status==="completed"?"#7ED321":"#FFA500",color:"white",fontSize:"var(--font-size-xs)"},children:n.status})]}),e.jsx("p",{style:{margin:"4px 0",fontSize:"var(--font-size-sm)"},children:e.jsx("strong",{children:"Full Event Object:"})}),e.jsx("pre",{style:{margin:"4px 0",padding:"var(--spacing-xs)",background:"var(--color-background-tertiary)",borderRadius:"var(--radius-xs)",fontSize:"var(--font-size-xs)",overflow:"auto"},children:JSON.stringify(n,null,2)})]}),c&&e.jsxs("div",{style:{padding:"var(--spacing-sm)",background:"var(--color-background)",borderRadius:"var(--radius-sm)",border:"1px solid var(--color-border)"},children:[e.jsx("h5",{style:{margin:"0 0 var(--spacing-xs) 0",color:"var(--color-text)"},children:"📆 Date Clicked:"}),e.jsx("p",{style:{margin:"4px 0",fontSize:"var(--font-size-sm)"},children:c.toLocaleDateString("en-US",{weekday:"long",year:"numeric",month:"long",day:"numeric"})}),e.jsx("p",{style:{margin:"4px 0",fontSize:"var(--font-size-xs)",color:"var(--color-text-secondary)"},children:"💡 You could create a new event here, open a day view, etc."})]}),!n&&!c&&e.jsx("p",{style:{margin:0,fontSize:"var(--font-size-sm)",color:"var(--color-text-secondary)",fontStyle:"italic"},children:"Click on any event or date above to see the interaction..."})]})]})}},M={render:()=>{const n=[],r=new Date,c=["Exercise","Meditation","Reading","Water intake","Sleep"],m=["💪","🧘","📚","💧","😴"];for(let y=-10;y<=10;y++){const h=new Date(r);h.setDate(r.getDate()+y),c.forEach((i,d)=>{Math.random()>.3&&n.push({id:`habit-${y}-${d}`,title:i,date:new Date(h),type:"habit",status:Math.random()>.1?"completed":"pending",color:`hsl(${d*70}, 70%, 50%)`,metadata:{icon:m[d]}})})}return e.jsx(S,{events:n,config:{iconRenderer:y=>{var h;return e.jsx("span",{style:{fontSize:"10px"},children:((h=y.metadata)==null?void 0:h.icon)||"✓"})},maxEventsPerDay:8,mondayStart:!0},viewMode:"month"})}},$={render:()=>{const n=new Date,r=[{id:"schedule-1",title:"Team Standup",date:new Date(n.getTime()-(n.getDay()-1)*24*60*60*1e3),time:"09:00",type:"meeting",status:"pending",priority:"medium"},{id:"schedule-2",title:"Code Review",date:new Date(n.getTime()-(n.getDay()-1)*24*60*60*1e3),time:"11:30",type:"review",status:"completed",priority:"high"},{id:"schedule-3",title:"Client Call",date:new Date(n.getTime()-(n.getDay()-2)*24*60*60*1e3),time:"10:00",type:"call",status:"pending",priority:"high"},{id:"schedule-4",title:"Sprint Planning",date:new Date(n.getTime()-(n.getDay()-2)*24*60*60*1e3),time:"14:00",type:"meeting",status:"pending",priority:"high"},{id:"schedule-5",title:"Design Review",date:new Date(n.getTime()-(n.getDay()-3)*24*60*60*1e3),time:"15:00",type:"review",status:"pending",priority:"medium"},{id:"schedule-6",title:"All Hands Meeting",date:new Date(n.getTime()-(n.getDay()-4)*24*60*60*1e3),time:"16:00",type:"meeting",status:"pending",priority:"low"},{id:"schedule-7",title:"Demo Day",date:new Date(n.getTime()-(n.getDay()-5)*24*60*60*1e3),time:"13:00",type:"presentation",status:"pending",priority:"high"},{id:"schedule-8",title:"Team Lunch",date:new Date(n.getTime()-(n.getDay()-5)*24*60*60*1e3),time:"12:00",type:"break",status:"pending",priority:"low"}];return e.jsx(S,{events:r,config:{eventColors:{meeting:"#4A90E2",call:"#7ED321",break:"#F5A623",review:"#BD10E0",presentation:"#FF6B6B"},iconRenderer:c=>{const m={meeting:"👥",call:"📞",break:"🍽️",review:"👀",presentation:"🎯"};return e.jsx("span",{style:{fontSize:"12px"},children:m[c.type]||"📅"})},maxEventsPerDay:6,mondayStart:!0},viewMode:"week"})}},N={render:()=>{const n=[{id:"custom-1",title:"VIP Client Meeting",date:new Date,time:"10:00",type:"vip",status:"pending",priority:"high"},{id:"custom-2",title:"Design Sprint",date:new Date(Date.now()+864e5),type:"workshop",status:"pending",priority:"medium"},{id:"custom-3",title:"Project Milestone ✓",date:new Date(Date.now()-864e5),type:"milestone",status:"completed",priority:"high"}];return e.jsxs("div",{children:[e.jsx("h3",{style:{marginBottom:"var(--spacing-md)",color:"var(--color-text)"},children:"🎨 Custom Colors, Icons & Configuration"}),e.jsx(S,{events:n,config:{eventColors:{vip:"#FF6B6B",workshop:"#4ECDC4",milestone:"#F39C12"},iconRenderer:r=>r.type==="vip"?e.jsx("span",{style:{fontSize:"12px"},children:"⭐"}):r.type==="workshop"?e.jsx("span",{style:{fontSize:"12px"},children:"🎨"}):r.type==="milestone"?e.jsx("span",{style:{fontSize:"12px"},children:"🎯"}):e.jsx("span",{style:{fontSize:"12px"},children:"📅"}),maxEventsPerDay:6,mondayStart:!0,showWeekNumbers:!0,locale:"en-US"},viewMode:"month"})]})}},R={render:()=>{const[n,r]=x.useState([{id:"1",title:"Project Kickoff Meeting",date:new Date,time:"10:00",type:"meeting",status:"pending",priority:"high",metadata:{attendees:["John","Sarah","Mike"],location:"Conference Room A",description:"Initial project planning and team introductions"}},{id:"2",title:"Design Review",date:new Date(Date.now()+864e5),time:"14:30",type:"review",status:"pending",priority:"medium",metadata:{reviewType:"UI/UX",reviewer:"Design Team"}},{id:"3",title:"Code Deployment",date:new Date(Date.now()+1728e5),type:"deployment",status:"pending",priority:"high",metadata:{environment:"production",version:"v2.1.0"}}]),[c,m]=x.useState([]),y=i=>{const d=new Date().toLocaleTimeString();switch(i.type){case"meeting":m(s=>[`[${d}] 📹 Opening meeting: "${i.title}"`,...s]);break;case"review":m(s=>[`[${d}] 👀 Opening review: "${i.title}"`,...s]);break;case"deployment":m(s=>[`[${d}] 🚀 Deployment details: "${i.title}"`,...s]);break;default:m(s=>[`[${d}] 📅 Event selected: "${i.title}"`,...s])}r(s=>s.map(v=>v.id===i.id?{...v,status:v.status==="completed"?"pending":"completed"}:v))},h=i=>{const d=new Date().toLocaleTimeString();m(v=>[`[${d}] 📆 Creating new event on ${i.toLocaleDateString()}`,...v]);const s={id:`new-${Date.now()}`,title:"Quick Meeting",date:i,time:"15:00",type:"meeting",status:"pending",priority:"medium"};r(v=>[...v,s])};return e.jsxs("div",{children:[e.jsx("h3",{style:{marginBottom:"var(--spacing-md)",color:"var(--color-text)"},children:"🎯 Real-World Usage Example"}),e.jsx("p",{style:{marginBottom:"var(--spacing-lg)",color:"var(--color-text-secondary)",fontSize:"var(--font-size-sm)"},children:"Click events to toggle status, click dates to add new events"}),e.jsx(S,{events:n,onEventClick:y,onDateClick:h,config:{eventColors:{meeting:"#4A90E2",review:"#BD10E0",deployment:"#FF6B6B"},iconRenderer:i=>{const d={meeting:"👥",review:"👀",deployment:"🚀"};return e.jsx("span",{children:d[i.type]||"📅"})},maxEventsPerDay:5},viewMode:"month"}),e.jsxs("div",{style:{marginTop:"var(--spacing-lg)",padding:"var(--spacing-md)",background:"var(--color-background-secondary)",borderRadius:"var(--radius-md)",maxHeight:"200px",overflow:"auto"},children:[e.jsx("h4",{style:{margin:"0 0 var(--spacing-sm) 0",color:"var(--color-text)"},children:"🔄 Action Log (Latest First)"}),c.length===0?e.jsx("p",{style:{margin:0,fontSize:"var(--font-size-sm)",color:"var(--color-text-secondary)",fontStyle:"italic"},children:"No actions yet - click on events or dates above"}):e.jsx("div",{children:c.map((i,d)=>e.jsx("div",{style:{padding:"var(--spacing-xs)",margin:"2px 0",background:"var(--color-background)",borderRadius:"var(--radius-xs)",fontSize:"var(--font-size-xs)",fontFamily:"monospace"},children:i},d))})]})]})}};var G,J,K;j.parameters={...j.parameters,docs:{...(G=j.parameters)==null?void 0:G.docs,source:{originalSource:`{
|
|
28
|
-
args: {
|
|
29
|
-
events: generateSampleEvents(),
|
|
30
|
-
viewMode: 'month'
|
|
31
|
-
}
|
|
32
|
-
}`,...(K=(J=j.parameters)==null?void 0:J.docs)==null?void 0:K.source}}};var Q,X,Z;T.parameters={...T.parameters,docs:{...(Q=T.parameters)==null?void 0:Q.docs,source:{originalSource:`{
|
|
33
|
-
args: {
|
|
34
|
-
events: generateSampleEvents(),
|
|
35
|
-
viewMode: 'week'
|
|
36
|
-
}
|
|
37
|
-
}`,...(Z=(X=T.parameters)==null?void 0:X.docs)==null?void 0:Z.source}}};var ee,te,ne;z.parameters={...z.parameters,docs:{...(ee=z.parameters)==null?void 0:ee.docs,source:{originalSource:`{
|
|
38
|
-
render: () => {
|
|
39
|
-
const [selectedEvent, setSelectedEvent] = useState<CalendarEvent | null>(null);
|
|
40
|
-
const [selectedDate, setSelectedDate] = useState<Date | null>(null);
|
|
41
|
-
const [events, setEvents] = useState(generateSampleEvents());
|
|
42
|
-
|
|
43
|
-
// This is where your consuming app would handle event clicks
|
|
44
|
-
const handleEventClick = (event: CalendarEvent) => {
|
|
45
|
-
setSelectedEvent(event);
|
|
46
|
-
|
|
47
|
-
// Example: You could open a modal, navigate to details, etc.
|
|
48
|
-
console.log('Event clicked:', event);
|
|
49
|
-
|
|
50
|
-
// Example: Toggle event status on click
|
|
51
|
-
setEvents(prevEvents => prevEvents.map(e => e.id === event.id ? {
|
|
52
|
-
...e,
|
|
53
|
-
status: e.status === 'completed' ? 'pending' : 'completed'
|
|
54
|
-
} : e));
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
// This is where your consuming app would handle date clicks
|
|
58
|
-
const handleDateClick = (date: Date) => {
|
|
59
|
-
setSelectedDate(date);
|
|
60
|
-
console.log('Date clicked:', date);
|
|
61
|
-
|
|
62
|
-
// Example: You could create a new event on this date
|
|
63
|
-
// Example: Open a date picker or day view
|
|
64
|
-
};
|
|
65
|
-
return <div>
|
|
66
|
-
<Calendar events={events} onEventClick={handleEventClick} onDateClick={handleDateClick} viewMode="month" />
|
|
67
|
-
|
|
68
|
-
<div style={{
|
|
69
|
-
marginTop: 'var(--spacing-lg)',
|
|
70
|
-
padding: 'var(--spacing-md)',
|
|
71
|
-
background: 'var(--color-background-secondary)',
|
|
72
|
-
borderRadius: 'var(--radius-md)'
|
|
73
|
-
}}>
|
|
74
|
-
<h4 style={{
|
|
75
|
-
margin: '0 0 var(--spacing-md) 0',
|
|
76
|
-
color: 'var(--color-primary)'
|
|
77
|
-
}}>
|
|
78
|
-
🎯 Click Events Above to See Interaction
|
|
79
|
-
</h4>
|
|
80
|
-
|
|
81
|
-
{selectedEvent && <div style={{
|
|
82
|
-
marginBottom: 'var(--spacing-md)',
|
|
83
|
-
padding: 'var(--spacing-sm)',
|
|
84
|
-
background: 'var(--color-background)',
|
|
85
|
-
borderRadius: 'var(--radius-sm)',
|
|
86
|
-
border: '1px solid var(--color-border)'
|
|
87
|
-
}}>
|
|
88
|
-
<h5 style={{
|
|
89
|
-
margin: '0 0 var(--spacing-xs) 0',
|
|
90
|
-
color: 'var(--color-text)'
|
|
91
|
-
}}>
|
|
92
|
-
📅 Event Clicked (toggled status):
|
|
93
|
-
</h5>
|
|
94
|
-
<p style={{
|
|
95
|
-
margin: '4px 0',
|
|
96
|
-
fontSize: 'var(--font-size-sm)'
|
|
97
|
-
}}>
|
|
98
|
-
<strong>Title:</strong> {selectedEvent.title}
|
|
99
|
-
</p>
|
|
100
|
-
<p style={{
|
|
101
|
-
margin: '4px 0',
|
|
102
|
-
fontSize: 'var(--font-size-sm)'
|
|
103
|
-
}}>
|
|
104
|
-
<strong>Date:</strong> {new Date(selectedEvent.date).toLocaleDateString()}
|
|
105
|
-
</p>
|
|
106
|
-
{selectedEvent.time && <p style={{
|
|
107
|
-
margin: '4px 0',
|
|
108
|
-
fontSize: 'var(--font-size-sm)'
|
|
109
|
-
}}>
|
|
110
|
-
<strong>Time:</strong> {selectedEvent.time}
|
|
111
|
-
</p>}
|
|
112
|
-
<p style={{
|
|
113
|
-
margin: '4px 0',
|
|
114
|
-
fontSize: 'var(--font-size-sm)'
|
|
115
|
-
}}>
|
|
116
|
-
<strong>Type:</strong> {selectedEvent.type}
|
|
117
|
-
</p>
|
|
118
|
-
<p style={{
|
|
119
|
-
margin: '4px 0',
|
|
120
|
-
fontSize: 'var(--font-size-sm)'
|
|
121
|
-
}}>
|
|
122
|
-
<strong>Status:</strong>
|
|
123
|
-
<span style={{
|
|
124
|
-
marginLeft: 'var(--spacing-xs)',
|
|
125
|
-
padding: '2px 6px',
|
|
126
|
-
borderRadius: 'var(--radius-xs)',
|
|
127
|
-
backgroundColor: selectedEvent.status === 'completed' ? '#7ED321' : '#FFA500',
|
|
128
|
-
color: 'white',
|
|
129
|
-
fontSize: 'var(--font-size-xs)'
|
|
130
|
-
}}>
|
|
131
|
-
{selectedEvent.status}
|
|
132
|
-
</span>
|
|
133
|
-
</p>
|
|
134
|
-
<p style={{
|
|
135
|
-
margin: '4px 0',
|
|
136
|
-
fontSize: 'var(--font-size-sm)'
|
|
137
|
-
}}>
|
|
138
|
-
<strong>Full Event Object:</strong>
|
|
139
|
-
</p>
|
|
140
|
-
<pre style={{
|
|
141
|
-
margin: '4px 0',
|
|
142
|
-
padding: 'var(--spacing-xs)',
|
|
143
|
-
background: 'var(--color-background-tertiary)',
|
|
144
|
-
borderRadius: 'var(--radius-xs)',
|
|
145
|
-
fontSize: 'var(--font-size-xs)',
|
|
146
|
-
overflow: 'auto'
|
|
147
|
-
}}>
|
|
148
|
-
{JSON.stringify(selectedEvent, null, 2)}
|
|
149
|
-
</pre>
|
|
150
|
-
</div>}
|
|
151
|
-
|
|
152
|
-
{selectedDate && <div style={{
|
|
153
|
-
padding: 'var(--spacing-sm)',
|
|
154
|
-
background: 'var(--color-background)',
|
|
155
|
-
borderRadius: 'var(--radius-sm)',
|
|
156
|
-
border: '1px solid var(--color-border)'
|
|
157
|
-
}}>
|
|
158
|
-
<h5 style={{
|
|
159
|
-
margin: '0 0 var(--spacing-xs) 0',
|
|
160
|
-
color: 'var(--color-text)'
|
|
161
|
-
}}>
|
|
162
|
-
📆 Date Clicked:
|
|
163
|
-
</h5>
|
|
164
|
-
<p style={{
|
|
165
|
-
margin: '4px 0',
|
|
166
|
-
fontSize: 'var(--font-size-sm)'
|
|
167
|
-
}}>
|
|
168
|
-
{selectedDate.toLocaleDateString('en-US', {
|
|
169
|
-
weekday: 'long',
|
|
170
|
-
year: 'numeric',
|
|
171
|
-
month: 'long',
|
|
172
|
-
day: 'numeric'
|
|
173
|
-
})}
|
|
174
|
-
</p>
|
|
175
|
-
<p style={{
|
|
176
|
-
margin: '4px 0',
|
|
177
|
-
fontSize: 'var(--font-size-xs)',
|
|
178
|
-
color: 'var(--color-text-secondary)'
|
|
179
|
-
}}>
|
|
180
|
-
💡 You could create a new event here, open a day view, etc.
|
|
181
|
-
</p>
|
|
182
|
-
</div>}
|
|
183
|
-
|
|
184
|
-
{!selectedEvent && !selectedDate && <p style={{
|
|
185
|
-
margin: 0,
|
|
186
|
-
fontSize: 'var(--font-size-sm)',
|
|
187
|
-
color: 'var(--color-text-secondary)',
|
|
188
|
-
fontStyle: 'italic'
|
|
189
|
-
}}>
|
|
190
|
-
Click on any event or date above to see the interaction...
|
|
191
|
-
</p>}
|
|
192
|
-
</div>
|
|
193
|
-
</div>;
|
|
194
|
-
}
|
|
195
|
-
}`,...(ne=(te=z.parameters)==null?void 0:te.docs)==null?void 0:ne.source}}};var ae,oe,ie;M.parameters={...M.parameters,docs:{...(ae=M.parameters)==null?void 0:ae.docs,source:{originalSource:`{
|
|
196
|
-
render: () => {
|
|
197
|
-
const habitEvents: CalendarEvent[] = [];
|
|
198
|
-
const today = new Date();
|
|
199
|
-
|
|
200
|
-
// Generate habit tracking events
|
|
201
|
-
const habits = ['Exercise', 'Meditation', 'Reading', 'Water intake', 'Sleep'];
|
|
202
|
-
const habitIcons = ['💪', '🧘', '📚', '💧', '😴'];
|
|
203
|
-
for (let i = -10; i <= 10; i++) {
|
|
204
|
-
const date = new Date(today);
|
|
205
|
-
date.setDate(today.getDate() + i);
|
|
206
|
-
habits.forEach((habit, index) => {
|
|
207
|
-
if (Math.random() > 0.3) {
|
|
208
|
-
// 70% chance of doing the habit
|
|
209
|
-
habitEvents.push({
|
|
210
|
-
id: \`habit-\${i}-\${index}\`,
|
|
211
|
-
title: habit,
|
|
212
|
-
date: new Date(date),
|
|
213
|
-
type: 'habit',
|
|
214
|
-
status: Math.random() > 0.1 ? 'completed' : 'pending',
|
|
215
|
-
color: \`hsl(\${index * 70}, 70%, 50%)\`,
|
|
216
|
-
metadata: {
|
|
217
|
-
icon: habitIcons[index]
|
|
218
|
-
}
|
|
219
|
-
});
|
|
220
|
-
}
|
|
221
|
-
});
|
|
222
|
-
}
|
|
223
|
-
return <Calendar events={habitEvents} config={{
|
|
224
|
-
iconRenderer: event => <span style={{
|
|
225
|
-
fontSize: '10px'
|
|
226
|
-
}}>{event.metadata?.icon || '✓'}</span>,
|
|
227
|
-
maxEventsPerDay: 8,
|
|
228
|
-
mondayStart: true
|
|
229
|
-
}} viewMode="month" />;
|
|
230
|
-
}
|
|
231
|
-
}`,...(ie=(oe=M.parameters)==null?void 0:oe.docs)==null?void 0:ie.source}}};var se,re,de;$.parameters={...$.parameters,docs:{...(se=$.parameters)==null?void 0:se.docs,source:{originalSource:`{
|
|
232
|
-
render: () => {
|
|
233
|
-
const today = new Date();
|
|
234
|
-
const scheduleEvents: CalendarEvent[] = [
|
|
235
|
-
// Monday
|
|
236
|
-
{
|
|
237
|
-
id: 'schedule-1',
|
|
238
|
-
title: 'Team Standup',
|
|
239
|
-
date: new Date(today.getTime() - (today.getDay() - 1) * 24 * 60 * 60 * 1000),
|
|
240
|
-
time: '09:00',
|
|
241
|
-
type: 'meeting',
|
|
242
|
-
status: 'pending',
|
|
243
|
-
priority: 'medium'
|
|
244
|
-
}, {
|
|
245
|
-
id: 'schedule-2',
|
|
246
|
-
title: 'Code Review',
|
|
247
|
-
date: new Date(today.getTime() - (today.getDay() - 1) * 24 * 60 * 60 * 1000),
|
|
248
|
-
time: '11:30',
|
|
249
|
-
type: 'review',
|
|
250
|
-
status: 'completed',
|
|
251
|
-
priority: 'high'
|
|
252
|
-
},
|
|
253
|
-
// Tuesday
|
|
254
|
-
{
|
|
255
|
-
id: 'schedule-3',
|
|
256
|
-
title: 'Client Call',
|
|
257
|
-
date: new Date(today.getTime() - (today.getDay() - 2) * 24 * 60 * 60 * 1000),
|
|
258
|
-
time: '10:00',
|
|
259
|
-
type: 'call',
|
|
260
|
-
status: 'pending',
|
|
261
|
-
priority: 'high'
|
|
262
|
-
}, {
|
|
263
|
-
id: 'schedule-4',
|
|
264
|
-
title: 'Sprint Planning',
|
|
265
|
-
date: new Date(today.getTime() - (today.getDay() - 2) * 24 * 60 * 60 * 1000),
|
|
266
|
-
time: '14:00',
|
|
267
|
-
type: 'meeting',
|
|
268
|
-
status: 'pending',
|
|
269
|
-
priority: 'high'
|
|
270
|
-
},
|
|
271
|
-
// Wednesday
|
|
272
|
-
{
|
|
273
|
-
id: 'schedule-5',
|
|
274
|
-
title: 'Design Review',
|
|
275
|
-
date: new Date(today.getTime() - (today.getDay() - 3) * 24 * 60 * 60 * 1000),
|
|
276
|
-
time: '15:00',
|
|
277
|
-
type: 'review',
|
|
278
|
-
status: 'pending',
|
|
279
|
-
priority: 'medium'
|
|
280
|
-
},
|
|
281
|
-
// Thursday
|
|
282
|
-
{
|
|
283
|
-
id: 'schedule-6',
|
|
284
|
-
title: 'All Hands Meeting',
|
|
285
|
-
date: new Date(today.getTime() - (today.getDay() - 4) * 24 * 60 * 60 * 1000),
|
|
286
|
-
time: '16:00',
|
|
287
|
-
type: 'meeting',
|
|
288
|
-
status: 'pending',
|
|
289
|
-
priority: 'low'
|
|
290
|
-
},
|
|
291
|
-
// Friday
|
|
292
|
-
{
|
|
293
|
-
id: 'schedule-7',
|
|
294
|
-
title: 'Demo Day',
|
|
295
|
-
date: new Date(today.getTime() - (today.getDay() - 5) * 24 * 60 * 60 * 1000),
|
|
296
|
-
time: '13:00',
|
|
297
|
-
type: 'presentation',
|
|
298
|
-
status: 'pending',
|
|
299
|
-
priority: 'high'
|
|
300
|
-
}, {
|
|
301
|
-
id: 'schedule-8',
|
|
302
|
-
title: 'Team Lunch',
|
|
303
|
-
date: new Date(today.getTime() - (today.getDay() - 5) * 24 * 60 * 60 * 1000),
|
|
304
|
-
time: '12:00',
|
|
305
|
-
type: 'break',
|
|
306
|
-
status: 'pending',
|
|
307
|
-
priority: 'low'
|
|
308
|
-
}];
|
|
309
|
-
return <Calendar events={scheduleEvents} config={{
|
|
310
|
-
eventColors: {
|
|
311
|
-
meeting: '#4A90E2',
|
|
312
|
-
call: '#7ED321',
|
|
313
|
-
break: '#F5A623',
|
|
314
|
-
review: '#BD10E0',
|
|
315
|
-
presentation: '#FF6B6B'
|
|
316
|
-
},
|
|
317
|
-
iconRenderer: event => {
|
|
318
|
-
const icons = {
|
|
319
|
-
meeting: '👥',
|
|
320
|
-
call: '📞',
|
|
321
|
-
break: '🍽️',
|
|
322
|
-
review: '👀',
|
|
323
|
-
presentation: '🎯'
|
|
324
|
-
};
|
|
325
|
-
return <span style={{
|
|
326
|
-
fontSize: '12px'
|
|
327
|
-
}}>{icons[event.type as keyof typeof icons] || '📅'}</span>;
|
|
328
|
-
},
|
|
329
|
-
maxEventsPerDay: 6,
|
|
330
|
-
mondayStart: true
|
|
331
|
-
}} viewMode="week" />;
|
|
332
|
-
}
|
|
333
|
-
}`,...(de=(re=$.parameters)==null?void 0:re.docs)==null?void 0:de.source}}};var le,ce,me;N.parameters={...N.parameters,docs:{...(le=N.parameters)==null?void 0:le.docs,source:{originalSource:`{
|
|
334
|
-
render: () => {
|
|
335
|
-
const customEvents: CalendarEvent[] = [{
|
|
336
|
-
id: 'custom-1',
|
|
337
|
-
title: 'VIP Client Meeting',
|
|
338
|
-
date: new Date(),
|
|
339
|
-
time: '10:00',
|
|
340
|
-
type: 'vip',
|
|
341
|
-
status: 'pending',
|
|
342
|
-
priority: 'high'
|
|
343
|
-
}, {
|
|
344
|
-
id: 'custom-2',
|
|
345
|
-
title: 'Design Sprint',
|
|
346
|
-
date: new Date(Date.now() + 24 * 60 * 60 * 1000),
|
|
347
|
-
type: 'workshop',
|
|
348
|
-
status: 'pending',
|
|
349
|
-
priority: 'medium'
|
|
350
|
-
}, {
|
|
351
|
-
id: 'custom-3',
|
|
352
|
-
title: 'Project Milestone ✓',
|
|
353
|
-
date: new Date(Date.now() - 24 * 60 * 60 * 1000),
|
|
354
|
-
type: 'milestone',
|
|
355
|
-
status: 'completed',
|
|
356
|
-
priority: 'high'
|
|
357
|
-
}];
|
|
358
|
-
return <div>
|
|
359
|
-
<h3 style={{
|
|
360
|
-
marginBottom: 'var(--spacing-md)',
|
|
361
|
-
color: 'var(--color-text)'
|
|
362
|
-
}}>
|
|
363
|
-
🎨 Custom Colors, Icons & Configuration
|
|
364
|
-
</h3>
|
|
365
|
-
<Calendar events={customEvents} config={{
|
|
366
|
-
eventColors: {
|
|
367
|
-
vip: '#FF6B6B',
|
|
368
|
-
workshop: '#4ECDC4',
|
|
369
|
-
milestone: '#F39C12'
|
|
370
|
-
},
|
|
371
|
-
iconRenderer: event => {
|
|
372
|
-
if (event.type === 'vip') return <span style={{
|
|
373
|
-
fontSize: '12px'
|
|
374
|
-
}}>⭐</span>;
|
|
375
|
-
if (event.type === 'workshop') return <span style={{
|
|
376
|
-
fontSize: '12px'
|
|
377
|
-
}}>🎨</span>;
|
|
378
|
-
if (event.type === 'milestone') return <span style={{
|
|
379
|
-
fontSize: '12px'
|
|
380
|
-
}}>🎯</span>;
|
|
381
|
-
return <span style={{
|
|
382
|
-
fontSize: '12px'
|
|
383
|
-
}}>📅</span>;
|
|
384
|
-
},
|
|
385
|
-
maxEventsPerDay: 6,
|
|
386
|
-
mondayStart: true,
|
|
387
|
-
showWeekNumbers: true,
|
|
388
|
-
locale: 'en-US'
|
|
389
|
-
}} viewMode="month" />
|
|
390
|
-
</div>;
|
|
391
|
-
}
|
|
392
|
-
}`,...(me=(ce=N.parameters)==null?void 0:ce.docs)==null?void 0:me.source}}};var pe,ge,ve;R.parameters={...R.parameters,docs:{...(pe=R.parameters)==null?void 0:pe.docs,source:{originalSource:`{
|
|
393
|
-
render: () => {
|
|
394
|
-
const [events, setEvents] = useState<CalendarEvent[]>([{
|
|
395
|
-
id: '1',
|
|
396
|
-
title: 'Project Kickoff Meeting',
|
|
397
|
-
date: new Date(),
|
|
398
|
-
time: '10:00',
|
|
399
|
-
type: 'meeting',
|
|
400
|
-
status: 'pending',
|
|
401
|
-
priority: 'high',
|
|
402
|
-
metadata: {
|
|
403
|
-
attendees: ['John', 'Sarah', 'Mike'],
|
|
404
|
-
location: 'Conference Room A',
|
|
405
|
-
description: 'Initial project planning and team introductions'
|
|
406
|
-
}
|
|
407
|
-
}, {
|
|
408
|
-
id: '2',
|
|
409
|
-
title: 'Design Review',
|
|
410
|
-
date: new Date(Date.now() + 24 * 60 * 60 * 1000),
|
|
411
|
-
time: '14:30',
|
|
412
|
-
type: 'review',
|
|
413
|
-
status: 'pending',
|
|
414
|
-
priority: 'medium',
|
|
415
|
-
metadata: {
|
|
416
|
-
reviewType: 'UI/UX',
|
|
417
|
-
reviewer: 'Design Team'
|
|
418
|
-
}
|
|
419
|
-
}, {
|
|
420
|
-
id: '3',
|
|
421
|
-
title: 'Code Deployment',
|
|
422
|
-
date: new Date(Date.now() + 2 * 24 * 60 * 60 * 1000),
|
|
423
|
-
type: 'deployment',
|
|
424
|
-
status: 'pending',
|
|
425
|
-
priority: 'high',
|
|
426
|
-
metadata: {
|
|
427
|
-
environment: 'production',
|
|
428
|
-
version: 'v2.1.0'
|
|
429
|
-
}
|
|
430
|
-
}]);
|
|
431
|
-
const [actionLog, setActionLog] = useState<string[]>([]);
|
|
432
|
-
|
|
433
|
-
// Real-world event click handler examples
|
|
434
|
-
const handleEventClick = (event: CalendarEvent) => {
|
|
435
|
-
const timestamp = new Date().toLocaleTimeString();
|
|
436
|
-
|
|
437
|
-
// Different actions based on event type
|
|
438
|
-
switch (event.type) {
|
|
439
|
-
case 'meeting':
|
|
440
|
-
// Could open meeting details modal, join video call, etc.
|
|
441
|
-
setActionLog(prev => [\`[\${timestamp}] 📹 Opening meeting: "\${event.title}"\`, ...prev]);
|
|
442
|
-
break;
|
|
443
|
-
case 'review':
|
|
444
|
-
// Could open review dashboard, show files to review, etc.
|
|
445
|
-
setActionLog(prev => [\`[\${timestamp}] 👀 Opening review: "\${event.title}"\`, ...prev]);
|
|
446
|
-
break;
|
|
447
|
-
case 'deployment':
|
|
448
|
-
// Could show deployment status, logs, rollback options, etc.
|
|
449
|
-
setActionLog(prev => [\`[\${timestamp}] 🚀 Deployment details: "\${event.title}"\`, ...prev]);
|
|
450
|
-
break;
|
|
451
|
-
default:
|
|
452
|
-
setActionLog(prev => [\`[\${timestamp}] 📅 Event selected: "\${event.title}"\`, ...prev]);
|
|
453
|
-
}
|
|
454
|
-
|
|
455
|
-
// Example: Mark as completed/pending on click
|
|
456
|
-
setEvents(prevEvents => prevEvents.map(e => e.id === event.id ? {
|
|
457
|
-
...e,
|
|
458
|
-
status: e.status === 'completed' ? 'pending' : 'completed'
|
|
459
|
-
} : e));
|
|
460
|
-
};
|
|
461
|
-
const handleDateClick = (date: Date) => {
|
|
462
|
-
const timestamp = new Date().toLocaleTimeString();
|
|
463
|
-
setActionLog(prev => [\`[\${timestamp}] 📆 Creating new event on \${date.toLocaleDateString()}\`, ...prev]);
|
|
464
|
-
|
|
465
|
-
// Example: Add new event on date click
|
|
466
|
-
const newEvent: CalendarEvent = {
|
|
467
|
-
id: \`new-\${Date.now()}\`,
|
|
468
|
-
title: 'Quick Meeting',
|
|
469
|
-
date: date,
|
|
470
|
-
time: '15:00',
|
|
471
|
-
type: 'meeting',
|
|
472
|
-
status: 'pending',
|
|
473
|
-
priority: 'medium'
|
|
474
|
-
};
|
|
475
|
-
setEvents(prev => [...prev, newEvent]);
|
|
476
|
-
};
|
|
477
|
-
return <div>
|
|
478
|
-
<h3 style={{
|
|
479
|
-
marginBottom: 'var(--spacing-md)',
|
|
480
|
-
color: 'var(--color-text)'
|
|
481
|
-
}}>
|
|
482
|
-
🎯 Real-World Usage Example
|
|
483
|
-
</h3>
|
|
484
|
-
<p style={{
|
|
485
|
-
marginBottom: 'var(--spacing-lg)',
|
|
486
|
-
color: 'var(--color-text-secondary)',
|
|
487
|
-
fontSize: 'var(--font-size-sm)'
|
|
488
|
-
}}>
|
|
489
|
-
Click events to toggle status, click dates to add new events
|
|
490
|
-
</p>
|
|
491
|
-
|
|
492
|
-
<Calendar events={events} onEventClick={handleEventClick} onDateClick={handleDateClick} config={{
|
|
493
|
-
eventColors: {
|
|
494
|
-
meeting: '#4A90E2',
|
|
495
|
-
review: '#BD10E0',
|
|
496
|
-
deployment: '#FF6B6B'
|
|
497
|
-
},
|
|
498
|
-
iconRenderer: event => {
|
|
499
|
-
const icons = {
|
|
500
|
-
meeting: '👥',
|
|
501
|
-
review: '👀',
|
|
502
|
-
deployment: '🚀'
|
|
503
|
-
};
|
|
504
|
-
return <span>{icons[event.type as keyof typeof icons] || '📅'}</span>;
|
|
505
|
-
},
|
|
506
|
-
maxEventsPerDay: 5
|
|
507
|
-
}} viewMode="month" />
|
|
508
|
-
|
|
509
|
-
<div style={{
|
|
510
|
-
marginTop: 'var(--spacing-lg)',
|
|
511
|
-
padding: 'var(--spacing-md)',
|
|
512
|
-
background: 'var(--color-background-secondary)',
|
|
513
|
-
borderRadius: 'var(--radius-md)',
|
|
514
|
-
maxHeight: '200px',
|
|
515
|
-
overflow: 'auto'
|
|
516
|
-
}}>
|
|
517
|
-
<h4 style={{
|
|
518
|
-
margin: '0 0 var(--spacing-sm) 0',
|
|
519
|
-
color: 'var(--color-text)'
|
|
520
|
-
}}>
|
|
521
|
-
🔄 Action Log (Latest First)
|
|
522
|
-
</h4>
|
|
523
|
-
{actionLog.length === 0 ? <p style={{
|
|
524
|
-
margin: 0,
|
|
525
|
-
fontSize: 'var(--font-size-sm)',
|
|
526
|
-
color: 'var(--color-text-secondary)',
|
|
527
|
-
fontStyle: 'italic'
|
|
528
|
-
}}>
|
|
529
|
-
No actions yet - click on events or dates above
|
|
530
|
-
</p> : <div>
|
|
531
|
-
{actionLog.map((log, index) => <div key={index} style={{
|
|
532
|
-
padding: 'var(--spacing-xs)',
|
|
533
|
-
margin: '2px 0',
|
|
534
|
-
background: 'var(--color-background)',
|
|
535
|
-
borderRadius: 'var(--radius-xs)',
|
|
536
|
-
fontSize: 'var(--font-size-xs)',
|
|
537
|
-
fontFamily: 'monospace'
|
|
538
|
-
}}>
|
|
539
|
-
{log}
|
|
540
|
-
</div>)}
|
|
541
|
-
</div>}
|
|
542
|
-
</div>
|
|
543
|
-
</div>;
|
|
544
|
-
}
|
|
545
|
-
}`,...(ve=(ge=R.parameters)==null?void 0:ge.docs)==null?void 0:ve.source}}};const dt=["MonthView","WeekView","Interactive","HabitTracker","EventScheduler","CustomConfiguration","RealWorldUsage"];export{N as CustomConfiguration,$ as EventScheduler,M as HabitTracker,z as Interactive,j as MonthView,R as RealWorldUsage,T as WeekView,dt as __namedExportsOrder,rt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
._card_1ebml_1{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);overflow:hidden;transition:all var(--transition-slow) cubic-bezier(.34,1.56,.64,1);position:relative}._card_1ebml_1:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.02) 100%);pointer-events:none;opacity:0;transition:opacity var(--transition-slow)}._card_1ebml_1:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;transform:translate(-50%,-50%);background:radial-gradient(circle at center,var(--color-primary-light),transparent 70%);border-radius:var(--radius-2xl);opacity:0;z-index:-1;transition:opacity var(--transition-slow);filter:blur(40px)}._card_1ebml_1:hover._hoverable_1ebml_50:before{opacity:1}._card_1ebml_1:hover._hoverable_1ebml_50:after{opacity:.15}._card_1ebml_1:hover._hoverable_1ebml_50{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--color-border-hover, var(--color-border))}._elevated_1ebml_65{box-shadow:var(--shadow-lg);border:none;background:var(--color-surface);transform:translateY(0)}._elevated_1ebml_65:hover._hoverable_1ebml_50{box-shadow:var(--shadow-2xl);transform:translateY(-6px)}._outlined_1ebml_78{background:var(--color-background);border:1px solid var(--color-border);box-shadow:none;position:relative;transition:all var(--transition-base)}._outlined_1ebml_78:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:var(--radius-2xl);opacity:0;z-index:-1;transition:opacity var(--transition-base)}._outlined_1ebml_78:hover._hoverable_1ebml_50{transform:translateY(-4px);border-color:transparent}._outlined_1ebml_78:hover._hoverable_1ebml_50:before{opacity:1}._flat_1ebml_111{border:none;box-shadow:none;background:linear-gradient(135deg,var(--color-background-secondary),rgba(255,255,255,.02));position:relative;overflow:hidden}._flat_1ebml_111:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.03),transparent);transition:left var(--transition-slow)}._flat_1ebml_111:hover._hoverable_1ebml_50{background:linear-gradient(135deg,var(--color-background-tertiary),rgba(255,255,255,.05));box-shadow:0 2px 8px #0000000a,inset 0 1px #ffffff0f;transform:translateY(-2px)}._flat_1ebml_111:hover._hoverable_1ebml_50:before{left:100%}._glass_1ebml_156{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.18);box-shadow:0 8px 32px #0000000f,inset 0 0 0 1px #ffffff14}._glass_1ebml_156:before{background:radial-gradient(800px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,255,255,.06),transparent 40%)}._glass_1ebml_156:hover._hoverable_1ebml_50{transform:translateY(-6px) scale(1.01);box-shadow:0 12px 48px #00000014,inset 0 0 0 1px #ffffff1f;border-color:#ffffff40}._imageContainer_1ebml_187{position:relative;overflow:hidden;margin:-1px -1px 0;background:linear-gradient(135deg,var(--color-primary-lighter),var(--color-secondary-lighter))}._imageContainer_1ebml_187:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.4) 100%);opacity:0;transition:opacity var(--transition-slow);pointer-events:none}._card_1ebml_1:hover ._imageContainer_1ebml_187:after{opacity:1}._image_1ebml_187{width:100%;height:auto;display:block;transition:transform var(--transition-slower) cubic-bezier(.25,.46,.45,.94);filter:brightness(1) contrast(1)}._card_1ebml_1:hover._hoverable_1ebml_50 ._image_1ebml_187{transform:scale(1.1) translateY(-4px);filter:brightness(1.05) contrast(1.05)}._header_1ebml_233{padding:var(--spacing-lg);border-bottom:1px solid transparent;background:linear-gradient(180deg,rgba(255,255,255,.02) 0%,transparent 100%);position:relative}._header_1ebml_233:after{content:"";position:absolute;bottom:0;left:var(--spacing-lg);right:var(--spacing-lg);height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent)}._body_1ebml_260{padding:var(--spacing-lg);position:relative}._footer_1ebml_266{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid transparent;display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-md);background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.02) 100%);position:relative}._footer_1ebml_266:before{content:"";position:absolute;top:0;left:var(--spacing-lg);right:var(--spacing-lg);height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent)}._title_1ebml_297{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);transition:all var(--transition-base)}._card_1ebml_1:hover ._title_1ebml_297{color:var(--color-text);transform:translate(2px)}._subtitle_1ebml_313{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);opacity:.8;transition:opacity var(--transition-base)}._card_1ebml_1:hover ._subtitle_1ebml_313{opacity:1}._clickable_1ebml_327{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast)}._clickable_1ebml_327:active{transform:scale(.98);box-shadow:inset 0 2px 8px #00000014,0 1px 2px #0000000d}._padding_1ebml_341{padding:var(--spacing-lg)}._noPadding_1ebml_345{padding:0}._loading_1ebml_350{position:relative;overflow:hidden;pointer-events:none}._loading_1ebml_350:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.7) 50%,transparent 60%);animation:_loadingShimmer_1ebml_1 2s infinite;transform:rotate(0)}@keyframes _loadingShimmer_1ebml_1{0%{transform:translate(-100%) translateY(-100%) rotate(30deg)}to{transform:translate(100%) translateY(100%) rotate(30deg)}}._loading_1ebml_350 ._title_1ebml_297,._loading_1ebml_350 ._subtitle_1ebml_313,._loading_1ebml_350 ._body_1ebml_260{position:relative;color:transparent;background:linear-gradient(90deg,var(--color-background-secondary) 25%,var(--color-background-tertiary) 50%,var(--color-background-secondary) 75%);background-size:200% 100%;animation:_loadingPulse_1ebml_1 2s infinite;-webkit-background-clip:text;background-clip:text}@keyframes _loadingPulse_1ebml_1{0%{background-position:200% 0}to{background-position:-200% 0}}[data-theme=dark] ._card_1ebml_1{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] ._card_1ebml_1:before{opacity:0}[data-theme=dark] ._card_1ebml_1:after{background:radial-gradient(circle at center,rgba(124,58,237,.2),transparent 70%);filter:blur(60px)}[data-theme=dark] ._elevated_1ebml_65{background:var(--color-surface);box-shadow:var(--shadow-xl)}[data-theme=dark] ._outlined_1ebml_78:before{background:linear-gradient(135deg,#a78bfa66,#2dd4bf66)}[data-theme=dark] ._glass_1ebml_156{background:linear-gradient(135deg,#ffffff08,#ffffff03);border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0003,inset 0 0 0 1px #ffffff08}[data-theme=dark] ._header_1ebml_233{background:linear-gradient(180deg,rgba(255,255,255,.01) 0%,transparent 100%)}[data-theme=dark] ._footer_1ebml_266{background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.1) 100%)}@media (max-width: 768px){._card_1ebml_1{border-radius:var(--radius-xl)}._card_1ebml_1:hover._hoverable_1ebml_50{transform:translateY(-2px)}._header_1ebml_233,._body_1ebml_260,._footer_1ebml_266{padding:var(--spacing-md)}._title_1ebml_297{font-size:var(--font-size-lg)}}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import{j as a}from"./iframe-BUaP2gIF.js";import{m as v}from"./proxy-9Y4F2rF8.js";const C="_card_1ebml_1",y="_hoverable_1ebml_50",x="_elevated_1ebml_65",T="_outlined_1ebml_78",j="_flat_1ebml_111",N="_glass_1ebml_156",q="_imageContainer_1ebml_187",k="_image_1ebml_187",P="_header_1ebml_233",w="_body_1ebml_260",M="_footer_1ebml_266",V="_title_1ebml_297",S="_subtitle_1ebml_313",A="_clickable_1ebml_327",F="_padding_1ebml_341",R="_noPadding_1ebml_345",H="_loading_1ebml_350",I="_loadingShimmer_1ebml_1",L="_loadingPulse_1ebml_1",e={card:C,hoverable:y,elevated:x,outlined:T,flat:j,glass:N,imageContainer:q,image:k,header:P,body:w,footer:M,title:V,subtitle:S,clickable:A,padding:F,noPadding:R,loading:H,loadingShimmer:I,loadingPulse:L},W=({variant:m="elevated",hoverable:l=!1,clickable:i=!1,padding:r=!0,image:s,imageAlt:p="",title:t,subtitle:n,header:o,footer:d,children:c,className:u="",onClick:h,motionProps:f,..._})=>{const b=[e.card,e[m],l&&e.hoverable,i&&e.clickable,!r&&e.noPadding,u].filter(Boolean).join(" "),g=a.jsxs(a.Fragment,{children:[s&&a.jsx("div",{className:e.imageContainer,children:a.jsx("img",{src:s,alt:p,className:e.image})}),o&&a.jsx("div",{className:e.header,children:o}),(t||n)&&!o&&a.jsxs("div",{className:e.header,children:[t&&a.jsx("h3",{className:e.title,children:t}),n&&a.jsx("p",{className:e.subtitle,children:n})]}),c&&a.jsx("div",{className:r?e.body:void 0,children:c}),d&&a.jsx("div",{className:e.footer,children:d})]});return a.jsx(v.div,{className:b,onClick:i?h:void 0,whileHover:l?{y:-4}:void 0,transition:{type:"spring",stiffness:400,damping:17},...f,..._,children:g})};W.__docgenInfo={description:`Card Component
|
|
2
|
-
|
|
3
|
-
@component
|
|
4
|
-
@description
|
|
5
|
-
A flexible container component that can display content in a structured card layout.
|
|
6
|
-
Supports multiple visual styles, optional images, headers, footers, and smooth animations
|
|
7
|
-
powered by Framer Motion.
|
|
8
|
-
|
|
9
|
-
@example
|
|
10
|
-
// Basic card with content
|
|
11
|
-
<Card>
|
|
12
|
-
<p>This is card content</p>
|
|
13
|
-
</Card>
|
|
14
|
-
|
|
15
|
-
@example
|
|
16
|
-
// Card with title and subtitle
|
|
17
|
-
<Card
|
|
18
|
-
title="Card Title"
|
|
19
|
-
subtitle="Card subtitle"
|
|
20
|
-
variant="outlined"
|
|
21
|
-
>
|
|
22
|
-
Card body content here
|
|
23
|
-
</Card>
|
|
24
|
-
|
|
25
|
-
@example
|
|
26
|
-
// Interactive card with image
|
|
27
|
-
<Card
|
|
28
|
-
image="/path/to/image.jpg"
|
|
29
|
-
imageAlt="Description"
|
|
30
|
-
hoverable
|
|
31
|
-
clickable
|
|
32
|
-
onClick={handleCardClick}
|
|
33
|
-
>
|
|
34
|
-
<h4>Interactive Card</h4>
|
|
35
|
-
<p>Click me!</p>
|
|
36
|
-
</Card>
|
|
37
|
-
|
|
38
|
-
@example
|
|
39
|
-
// Card with custom header and footer
|
|
40
|
-
<Card
|
|
41
|
-
header={<CustomHeader />}
|
|
42
|
-
footer={<CustomFooter />}
|
|
43
|
-
variant="flat"
|
|
44
|
-
>
|
|
45
|
-
Main content area
|
|
46
|
-
</Card>
|
|
47
|
-
|
|
48
|
-
@param {CardProps} props - The props for the Card component
|
|
49
|
-
@returns {JSX.Element} The rendered Card component`,methods:[],displayName:"Card",props:{variant:{required:!1,tsType:{name:"union",raw:"'elevated' | 'outlined' | 'flat' | 'glass'",elements:[{name:"literal",value:"'elevated'"},{name:"literal",value:"'outlined'"},{name:"literal",value:"'flat'"},{name:"literal",value:"'glass'"}]},description:"Visual style variant of the card",defaultValue:{value:"'elevated'",computed:!1}},hoverable:{required:!1,tsType:{name:"boolean"},description:"Whether the card should have hover animations",defaultValue:{value:"false",computed:!1}},clickable:{required:!1,tsType:{name:"boolean"},description:"Whether the card should be clickable (adds pointer cursor and click handler)",defaultValue:{value:"false",computed:!1}},padding:{required:!1,tsType:{name:"boolean"},description:"Whether the card content should have padding",defaultValue:{value:"true",computed:!1}},image:{required:!1,tsType:{name:"string"},description:"URL for an optional image at the top of the card"},imageAlt:{required:!1,tsType:{name:"string"},description:"Alt text for the card image",defaultValue:{value:"''",computed:!1}},title:{required:!1,tsType:{name:"string"},description:"Title text for the card header"},subtitle:{required:!1,tsType:{name:"string"},description:"Subtitle text for the card header"},header:{required:!1,tsType:{name:"ReactNode"},description:"Custom header content (overrides title/subtitle)"},footer:{required:!1,tsType:{name:"ReactNode"},description:"Footer content for the bottom of the card"},children:{required:!1,tsType:{name:"ReactNode"},description:"Main content of the card"},motionProps:{required:!1,tsType:{name:"HTMLMotionProps",elements:[{name:"literal",value:'"div"'}],raw:'HTMLMotionProps<"div">'},description:"Additional Framer Motion props for custom animations"},className:{defaultValue:{value:"''",computed:!1},required:!1}},composes:["Omit"]};export{W as C};
|