@hua-labs/ui 2.1.1 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +91 -43
- package/dist/{ComponentLayout-DrZpz0yv.d.mts → ComponentLayout-Clf6C2jV.d.mts} +38 -4
- package/dist/DashboardSidebar-ZulecqKs.d.mts +54 -0
- package/dist/DashboardToolbar-BRZayZNz.d.mts +122 -0
- package/dist/EmptyState-SQ3Z6Vf2.d.mts +64 -0
- package/dist/{Modal-CrXmb3Ll.d.mts → Modal-DKKtBtbh.d.mts} +12 -6
- package/dist/{Section-BWzyshgX.d.mts → Section-DKdIG1sg.d.mts} +11 -12
- package/dist/SectionHeader-DHwQ_xh8.d.mts +1653 -0
- package/dist/{Switch-Dzm5TLR3.d.mts → Switch-D0l7SJrz.d.mts} +31 -15
- package/dist/Tooltip-Cv7nYhPW.d.mts +304 -0
- package/dist/advanced/Logo.d.ts +8 -4
- package/dist/advanced/Logo.d.ts.map +1 -1
- package/dist/advanced/dashboard.d.ts +28 -6
- package/dist/advanced/dashboard.d.ts.map +1 -1
- package/dist/advanced-dashboard.d.mts +9 -2278
- package/dist/advanced-dashboard.mjs +1 -33
- package/dist/advanced-dashboard.mjs.map +1 -1
- package/dist/advanced-emotion.d.mts +13 -5
- package/dist/advanced-emotion.mjs +1 -1
- package/dist/advanced-motion.d.mts +144 -61
- package/dist/advanced-motion.mjs +1 -1
- package/dist/advanced.d.mts +70 -37
- package/dist/advanced.mjs +14 -3
- package/dist/advanced.mjs.map +1 -1
- package/dist/chunk-32OZGTPV.mjs +41 -0
- package/dist/chunk-32OZGTPV.mjs.map +1 -0
- package/dist/chunk-6WBFZ2KV.mjs +3 -0
- package/dist/chunk-6WBFZ2KV.mjs.map +1 -0
- package/dist/chunk-7CGJQSJO.mjs +3 -0
- package/dist/chunk-7CGJQSJO.mjs.map +1 -0
- package/dist/chunk-7T3IUG3G.mjs +3 -0
- package/dist/chunk-7T3IUG3G.mjs.map +1 -0
- package/dist/chunk-A5YOVVM5.mjs +3 -0
- package/dist/chunk-A5YOVVM5.mjs.map +1 -0
- package/dist/chunk-AJOGTUWS.mjs +3 -0
- package/dist/chunk-AJOGTUWS.mjs.map +1 -0
- package/dist/chunk-AQTSQYH2.mjs +3 -0
- package/dist/chunk-AQTSQYH2.mjs.map +1 -0
- package/dist/chunk-B2MRZJQA.mjs +3 -0
- package/dist/chunk-B2MRZJQA.mjs.map +1 -0
- package/dist/chunk-BOX4TONF.mjs +3 -0
- package/dist/chunk-BOX4TONF.mjs.map +1 -0
- package/dist/chunk-C2DOXNBK.mjs +3 -0
- package/dist/chunk-C2DOXNBK.mjs.map +1 -0
- package/dist/chunk-CQBMR7VU.mjs +3 -0
- package/dist/chunk-CQBMR7VU.mjs.map +1 -0
- package/dist/chunk-CYAAAEPJ.mjs +3 -0
- package/dist/chunk-CYAAAEPJ.mjs.map +1 -0
- package/dist/chunk-D7MTTTQY.mjs +8 -0
- package/dist/chunk-D7MTTTQY.mjs.map +1 -0
- package/dist/chunk-DABVKUJN.mjs +3 -0
- package/dist/chunk-DABVKUJN.mjs.map +1 -0
- package/dist/chunk-EAZEI74V.mjs +3 -0
- package/dist/chunk-EAZEI74V.mjs.map +1 -0
- package/dist/chunk-EK6BLFVQ.mjs +3 -0
- package/dist/chunk-EK6BLFVQ.mjs.map +1 -0
- package/dist/chunk-FVUAVGP5.mjs +3 -0
- package/dist/chunk-FVUAVGP5.mjs.map +1 -0
- package/dist/chunk-GAIUZVNC.mjs +3 -0
- package/dist/chunk-GAIUZVNC.mjs.map +1 -0
- package/dist/chunk-HLBIIF4I.mjs +3 -0
- package/dist/chunk-HLBIIF4I.mjs.map +1 -0
- package/dist/chunk-I6NCGF6E.mjs +3 -0
- package/dist/chunk-I6NCGF6E.mjs.map +1 -0
- package/dist/chunk-J46VEBVF.mjs +3 -0
- package/dist/chunk-J46VEBVF.mjs.map +1 -0
- package/dist/chunk-JNW3CLCA.mjs +3 -0
- package/dist/chunk-JNW3CLCA.mjs.map +1 -0
- package/dist/chunk-JY3QVUGW.mjs +3 -0
- package/dist/chunk-JY3QVUGW.mjs.map +1 -0
- package/dist/chunk-KHBZOGUU.mjs +3 -0
- package/dist/chunk-KHBZOGUU.mjs.map +1 -0
- package/dist/chunk-KPNNAQLI.mjs +3 -0
- package/dist/chunk-KPNNAQLI.mjs.map +1 -0
- package/dist/chunk-L2LGSILS.mjs +13 -0
- package/dist/chunk-L2LGSILS.mjs.map +1 -0
- package/dist/chunk-LPHUWTQ2.mjs +3 -0
- package/dist/chunk-LPHUWTQ2.mjs.map +1 -0
- package/dist/chunk-M4JE7TQL.mjs +3 -0
- package/dist/chunk-M4JE7TQL.mjs.map +1 -0
- package/dist/chunk-MEDKGNLV.mjs +3 -0
- package/dist/chunk-MEDKGNLV.mjs.map +1 -0
- package/dist/chunk-MR46CSMC.mjs +3 -0
- package/dist/chunk-MR46CSMC.mjs.map +1 -0
- package/dist/chunk-NSDWT2JM.mjs +3 -0
- package/dist/chunk-NSDWT2JM.mjs.map +1 -0
- package/dist/chunk-OBMOTQEU.mjs +3 -0
- package/dist/chunk-OBMOTQEU.mjs.map +1 -0
- package/dist/chunk-QEMPERUK.mjs +3 -0
- package/dist/chunk-QEMPERUK.mjs.map +1 -0
- package/dist/chunk-RICRFXFP.mjs +3 -0
- package/dist/chunk-RICRFXFP.mjs.map +1 -0
- package/dist/chunk-SOK7VBSM.mjs +13 -0
- package/dist/chunk-SOK7VBSM.mjs.map +1 -0
- package/dist/chunk-SPZ7SZH4.mjs +3 -0
- package/dist/chunk-SPZ7SZH4.mjs.map +1 -0
- package/dist/chunk-TB3DARQO.mjs +3 -0
- package/dist/chunk-TB3DARQO.mjs.map +1 -0
- package/dist/chunk-TND4HPKW.mjs +51 -0
- package/dist/chunk-TND4HPKW.mjs.map +1 -0
- package/dist/chunk-TSAXVD2H.mjs +35 -0
- package/dist/chunk-TSAXVD2H.mjs.map +1 -0
- package/dist/chunk-UR3TIWBS.mjs +3 -0
- package/dist/chunk-UR3TIWBS.mjs.map +1 -0
- package/dist/chunk-XU2XBAEW.mjs +3 -0
- package/dist/chunk-XU2XBAEW.mjs.map +1 -0
- package/dist/chunk-XXHDNZTG.mjs +3 -0
- package/dist/chunk-XXHDNZTG.mjs.map +1 -0
- package/dist/chunk-YW5DA7Q6.mjs +3 -0
- package/dist/chunk-YW5DA7Q6.mjs.map +1 -0
- package/dist/chunk-ZTHUGQZL.mjs +3 -0
- package/dist/chunk-ZTHUGQZL.mjs.map +1 -0
- package/dist/chunk-ZVCGC6EV.mjs +3 -0
- package/dist/chunk-ZVCGC6EV.mjs.map +1 -0
- package/dist/chunk-ZZ67E3M5.mjs +3 -0
- package/dist/chunk-ZZ67E3M5.mjs.map +1 -0
- package/dist/{common-YLvZxA_K.d.mts → common-Bej8Okcg.d.mts} +1 -1
- package/dist/components/Accordion.d.ts +14 -7
- package/dist/components/Accordion.d.ts.map +1 -1
- package/dist/components/Action.d.ts.map +1 -1
- package/dist/components/ActionToolbar.d.ts +10 -6
- package/dist/components/ActionToolbar.d.ts.map +1 -1
- package/dist/components/Alert.d.ts +16 -2
- package/dist/components/Alert.d.ts.map +1 -1
- package/dist/components/Autocomplete.d.ts +6 -4
- package/dist/components/Autocomplete.d.ts.map +1 -1
- package/dist/components/Avatar.d.ts +20 -7
- package/dist/components/Avatar.d.ts.map +1 -1
- package/dist/components/Badge.d.ts +27 -9
- package/dist/components/Badge.d.ts.map +1 -1
- package/dist/components/Bookmark.d.ts +4 -2
- package/dist/components/Bookmark.d.ts.map +1 -1
- package/dist/components/BottomSheet.d.ts +13 -9
- package/dist/components/BottomSheet.d.ts.map +1 -1
- package/dist/components/Box.d.ts +9 -0
- package/dist/components/Box.d.ts.map +1 -0
- package/dist/components/Breadcrumb.d.ts +9 -4
- package/dist/components/Breadcrumb.d.ts.map +1 -1
- package/dist/components/Button.d.ts +3 -29
- package/dist/components/Button.d.ts.map +1 -1
- package/dist/components/Button.variants.d.ts +54 -10
- package/dist/components/Button.variants.d.ts.map +1 -1
- package/dist/components/Card.d.ts +49 -14
- package/dist/components/Card.d.ts.map +1 -1
- package/dist/components/ChatMessage.d.ts +3 -2
- package/dist/components/ChatMessage.d.ts.map +1 -1
- package/dist/components/Checkbox.d.ts +5 -2
- package/dist/components/Checkbox.d.ts.map +1 -1
- package/dist/components/CodeBlock.d.ts +8 -5
- package/dist/components/CodeBlock.d.ts.map +1 -1
- package/dist/components/ColorPicker.d.ts +4 -2
- package/dist/components/ColorPicker.d.ts.map +1 -1
- package/dist/components/Command.d.ts +28 -14
- package/dist/components/Command.d.ts.map +1 -1
- package/dist/components/ComponentLayout.d.ts +5 -2
- package/dist/components/ComponentLayout.d.ts.map +1 -1
- package/dist/components/ConfirmModal.d.ts +4 -0
- package/dist/components/ConfirmModal.d.ts.map +1 -1
- package/dist/components/Container.d.ts +18 -5
- package/dist/components/Container.d.ts.map +1 -1
- package/dist/components/ContextMenu.d.ts +36 -36
- package/dist/components/ContextMenu.d.ts.map +1 -1
- package/dist/components/DatePicker.d.ts +12 -5
- package/dist/components/DatePicker.d.ts.map +1 -1
- package/dist/components/Divider.d.ts +2 -1
- package/dist/components/Divider.d.ts.map +1 -1
- package/dist/components/Drawer.d.ts +17 -12
- package/dist/components/Drawer.d.ts.map +1 -1
- package/dist/components/Dropdown.d.ts +25 -57
- package/dist/components/Dropdown.d.ts.map +1 -1
- package/dist/components/EmotionAnalysis.d.ts +3 -1
- package/dist/components/EmotionAnalysis.d.ts.map +1 -1
- package/dist/components/EmotionButton.d.ts +3 -1
- package/dist/components/EmotionButton.d.ts.map +1 -1
- package/dist/components/EmotionMeter.d.ts +3 -1
- package/dist/components/EmotionMeter.d.ts.map +1 -1
- package/dist/components/EmotionSelector.d.ts +3 -1
- package/dist/components/EmotionSelector.d.ts.map +1 -1
- package/dist/components/FeatureCard.d.ts +9 -3
- package/dist/components/FeatureCard.d.ts.map +1 -1
- package/dist/components/Form.d.ts +20 -54
- package/dist/components/Form.d.ts.map +1 -1
- package/dist/components/FormControl.d.ts +3 -2
- package/dist/components/FormControl.d.ts.map +1 -1
- package/dist/components/Grid.d.ts +11 -4
- package/dist/components/Grid.d.ts.map +1 -1
- package/dist/components/HeroSection.d.ts +4 -2
- package/dist/components/HeroSection.d.ts.map +1 -1
- package/dist/components/Icon/Icon.d.ts +12 -8
- package/dist/components/Icon/Icon.d.ts.map +1 -1
- package/dist/components/IconsaxGallery/index.d.ts +8 -5
- package/dist/components/IconsaxGallery/index.d.ts.map +1 -1
- package/dist/components/InfoCard.d.ts +5 -2
- package/dist/components/InfoCard.d.ts.map +1 -1
- package/dist/components/Input.d.ts +29 -4
- package/dist/components/Input.d.ts.map +1 -1
- package/dist/components/Label.d.ts +15 -10
- package/dist/components/Label.d.ts.map +1 -1
- package/dist/components/LanguageToggle.d.ts +5 -3
- package/dist/components/LanguageToggle.d.ts.map +1 -1
- package/dist/components/Link.d.ts +17 -6
- package/dist/components/Link.d.ts.map +1 -1
- package/dist/components/LoadingSpinner.d.ts +7 -3
- package/dist/components/LoadingSpinner.d.ts.map +1 -1
- package/dist/components/Menu.d.ts +59 -60
- package/dist/components/Menu.d.ts.map +1 -1
- package/dist/components/Modal.d.ts +12 -6
- package/dist/components/Modal.d.ts.map +1 -1
- package/dist/components/Navigation.d.ts +26 -11
- package/dist/components/Navigation.d.ts.map +1 -1
- package/dist/components/NumberInput.d.ts +5 -2
- package/dist/components/NumberInput.d.ts.map +1 -1
- package/dist/components/PageNavigation.d.ts +6 -3
- package/dist/components/PageNavigation.d.ts.map +1 -1
- package/dist/components/PageTransition.d.ts +2 -2
- package/dist/components/PageTransition.d.ts.map +1 -1
- package/dist/components/Pagination.d.ts +5 -2
- package/dist/components/Pagination.d.ts.map +1 -1
- package/dist/components/Panel.d.ts +1 -7
- package/dist/components/Panel.d.ts.map +1 -1
- package/dist/components/Popover.d.ts +25 -9
- package/dist/components/Popover.d.ts.map +1 -1
- package/dist/components/Pressable.d.ts +14 -0
- package/dist/components/Pressable.d.ts.map +1 -0
- package/dist/components/Progress.d.ts +36 -13
- package/dist/components/Progress.d.ts.map +1 -1
- package/dist/components/Prose.d.ts +51 -0
- package/dist/components/Prose.d.ts.map +1 -0
- package/dist/components/Radio.d.ts +29 -33
- package/dist/components/Radio.d.ts.map +1 -1
- package/dist/components/ScrollArea.d.ts +8 -9
- package/dist/components/ScrollArea.d.ts.map +1 -1
- package/dist/components/ScrollIndicator.d.ts +9 -8
- package/dist/components/ScrollIndicator.d.ts.map +1 -1
- package/dist/components/ScrollProgress.d.ts +3 -2
- package/dist/components/ScrollProgress.d.ts.map +1 -1
- package/dist/components/ScrollToTop.d.ts +5 -5
- package/dist/components/ScrollToTop.d.ts.map +1 -1
- package/dist/components/Section.d.ts +12 -9
- package/dist/components/Section.d.ts.map +1 -1
- package/dist/components/SectionHeader.d.ts +3 -2
- package/dist/components/SectionHeader.d.ts.map +1 -1
- package/dist/components/Select.d.ts +18 -5
- package/dist/components/Select.d.ts.map +1 -1
- package/dist/components/Skeleton.d.ts +43 -15
- package/dist/components/Skeleton.d.ts.map +1 -1
- package/dist/components/Slider.d.ts +7 -5
- package/dist/components/Slider.d.ts.map +1 -1
- package/dist/components/Stack.d.ts +22 -6
- package/dist/components/Stack.d.ts.map +1 -1
- package/dist/components/StatsPanel.d.ts +4 -2
- package/dist/components/StatsPanel.d.ts.map +1 -1
- package/dist/components/Switch.d.ts +9 -4
- package/dist/components/Switch.d.ts.map +1 -1
- package/dist/components/Table.d.ts +43 -18
- package/dist/components/Table.d.ts.map +1 -1
- package/dist/components/Tabs.d.ts +50 -77
- package/dist/components/Tabs.d.ts.map +1 -1
- package/dist/components/Text.d.ts +11 -0
- package/dist/components/Text.d.ts.map +1 -0
- package/dist/components/Textarea.d.ts +24 -6
- package/dist/components/Textarea.d.ts.map +1 -1
- package/dist/components/ThemeToggle.d.ts +18 -27
- package/dist/components/ThemeToggle.d.ts.map +1 -1
- package/dist/components/Timeline.d.ts +4 -2
- package/dist/components/Timeline.d.ts.map +1 -1
- package/dist/components/Toast.d.ts +1 -1
- package/dist/components/Toast.d.ts.map +1 -1
- package/dist/components/Toggle.d.ts +11 -2
- package/dist/components/Toggle.d.ts.map +1 -1
- package/dist/components/Tooltip.d.ts +5 -2
- package/dist/components/Tooltip.d.ts.map +1 -1
- package/dist/components/Upload.d.ts +5 -3
- package/dist/components/Upload.d.ts.map +1 -1
- package/dist/components/advanced/AdvancedPageTransition.d.ts +7 -5
- package/dist/components/advanced/AdvancedPageTransition.d.ts.map +1 -1
- package/dist/components/advanced/AnimatedGradient.d.ts +6 -2
- package/dist/components/advanced/AnimatedGradient.d.ts.map +1 -1
- package/dist/components/advanced/Carousel.d.ts +3 -1
- package/dist/components/advanced/Carousel.d.ts.map +1 -1
- package/dist/components/advanced/DotNav.d.ts +12 -5
- package/dist/components/advanced/DotNav.d.ts.map +1 -1
- package/dist/components/advanced/GlowCard.d.ts +4 -1
- package/dist/components/advanced/GlowCard.d.ts.map +1 -1
- package/dist/components/advanced/HorizontalScroll.d.ts +4 -1
- package/dist/components/advanced/HorizontalScroll.d.ts.map +1 -1
- package/dist/components/advanced/ImageReveal.d.ts +23 -1
- package/dist/components/advanced/ImageReveal.d.ts.map +1 -1
- package/dist/components/advanced/Marquee.d.ts +4 -2
- package/dist/components/advanced/Marquee.d.ts.map +1 -1
- package/dist/components/advanced/Parallax.d.ts +12 -7
- package/dist/components/advanced/Parallax.d.ts.map +1 -1
- package/dist/components/advanced/SpotlightCard.d.ts +13 -12
- package/dist/components/advanced/SpotlightCard.d.ts.map +1 -1
- package/dist/components/advanced/TextReveal.d.ts +5 -1
- package/dist/components/advanced/TextReveal.d.ts.map +1 -1
- package/dist/components/advanced/TiltCard.d.ts +6 -2
- package/dist/components/advanced/TiltCard.d.ts.map +1 -1
- package/dist/components/advanced/VideoBackground.d.ts +4 -1
- package/dist/components/advanced/VideoBackground.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/BlogEditor.d.ts +4 -2
- package/dist/components/advanced/blog-editor/BlogEditor.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/BlogEditorActions.d.ts +4 -2
- package/dist/components/advanced/blog-editor/BlogEditorActions.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/BlogEditorContent.d.ts +4 -2
- package/dist/components/advanced/blog-editor/BlogEditorContent.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/BlogEditorHeader.d.ts +4 -2
- package/dist/components/advanced/blog-editor/BlogEditorHeader.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/BlogEditorLanguageTabs.d.ts +4 -2
- package/dist/components/advanced/blog-editor/BlogEditorLanguageTabs.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/BlogEditorMetadata.d.ts +5 -3
- package/dist/components/advanced/blog-editor/BlogEditorMetadata.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/BlogEditorPreview.d.ts +5 -3
- package/dist/components/advanced/blog-editor/BlogEditorPreview.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/BlogEditorToolbar.d.ts +4 -2
- package/dist/components/advanced/blog-editor/BlogEditorToolbar.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/BlogEditorTranslate.d.ts +4 -2
- package/dist/components/advanced/blog-editor/BlogEditorTranslate.d.ts.map +1 -1
- package/dist/components/advanced/blog-editor/types.d.ts +5 -2
- package/dist/components/advanced/blog-editor/types.d.ts.map +1 -1
- package/dist/components/advanced/emotion/EmotionAnalysis.d.ts +3 -1
- package/dist/components/advanced/emotion/EmotionAnalysis.d.ts.map +1 -1
- package/dist/components/advanced/emotion/EmotionButton.d.ts +3 -1
- package/dist/components/advanced/emotion/EmotionButton.d.ts.map +1 -1
- package/dist/components/advanced/emotion/EmotionMeter.d.ts +4 -2
- package/dist/components/advanced/emotion/EmotionMeter.d.ts.map +1 -1
- package/dist/components/advanced/emotion/EmotionSelector.d.ts +3 -1
- package/dist/components/advanced/emotion/EmotionSelector.d.ts.map +1 -1
- package/dist/components/dashboard/ActivityFeed.d.ts +5 -2
- package/dist/components/dashboard/ActivityFeed.d.ts.map +1 -1
- package/dist/components/dashboard/BarChart.d.ts +3 -2
- package/dist/components/dashboard/BarChart.d.ts.map +1 -1
- package/dist/components/dashboard/DashboardGrid.d.ts +13 -3
- package/dist/components/dashboard/DashboardGrid.d.ts.map +1 -1
- package/dist/components/dashboard/DashboardSidebar.d.ts +15 -82
- package/dist/components/dashboard/DashboardSidebar.d.ts.map +1 -1
- package/dist/components/dashboard/DashboardToolbar.d.ts +3 -2
- package/dist/components/dashboard/DashboardToolbar.d.ts.map +1 -1
- package/dist/components/dashboard/EmptyState.d.ts +3 -2
- package/dist/components/dashboard/EmptyState.d.ts.map +1 -1
- package/dist/components/dashboard/MembershipBadge.d.ts +3 -2
- package/dist/components/dashboard/MembershipBadge.d.ts.map +1 -1
- package/dist/components/dashboard/MerchantList.d.ts +3 -2
- package/dist/components/dashboard/MerchantList.d.ts.map +1 -1
- package/dist/components/dashboard/MetricCard.d.ts +3 -2
- package/dist/components/dashboard/MetricCard.d.ts.map +1 -1
- package/dist/components/dashboard/MiniBarChart.d.ts +3 -2
- package/dist/components/dashboard/MiniBarChart.d.ts.map +1 -1
- package/dist/components/dashboard/NotificationCard.d.ts +5 -2
- package/dist/components/dashboard/NotificationCard.d.ts.map +1 -1
- package/dist/components/dashboard/ProfileCard.d.ts +5 -2
- package/dist/components/dashboard/ProfileCard.d.ts.map +1 -1
- package/dist/components/dashboard/ProgressCard.d.ts +6 -3
- package/dist/components/dashboard/ProgressCard.d.ts.map +1 -1
- package/dist/components/dashboard/QuickActionCard.d.ts +22 -27
- package/dist/components/dashboard/QuickActionCard.d.ts.map +1 -1
- package/dist/components/dashboard/RoutingBreakdownCard.d.ts +3 -2
- package/dist/components/dashboard/RoutingBreakdownCard.d.ts.map +1 -1
- package/dist/components/dashboard/SettlementTimeline.d.ts +3 -2
- package/dist/components/dashboard/SettlementTimeline.d.ts.map +1 -1
- package/dist/components/dashboard/StatCard.d.ts +7 -4
- package/dist/components/dashboard/StatCard.d.ts.map +1 -1
- package/dist/components/dashboard/SummaryCard.d.ts +6 -3
- package/dist/components/dashboard/SummaryCard.d.ts.map +1 -1
- package/dist/components/dashboard/TransactionDetailDrawer.d.ts +2 -2
- package/dist/components/dashboard/TransactionDetailDrawer.d.ts.map +1 -1
- package/dist/components/dashboard/TransactionsTable.d.ts +3 -2
- package/dist/components/dashboard/TransactionsTable.d.ts.map +1 -1
- package/dist/components/dashboard/TrendChart.d.ts +3 -2
- package/dist/components/dashboard/TrendChart.d.ts.map +1 -1
- package/dist/components/dashboard/YearlyHeatmap.d.ts +4 -2
- package/dist/components/dashboard/YearlyHeatmap.d.ts.map +1 -1
- package/dist/components/dashboard/kanban/KanbanAddCard.d.ts.map +1 -1
- package/dist/components/dashboard/kanban/KanbanAddColumn.d.ts.map +1 -1
- package/dist/components/dashboard/kanban/KanbanBoard.d.ts.map +1 -1
- package/dist/components/dashboard/kanban/KanbanCard.d.ts.map +1 -1
- package/dist/components/dashboard/kanban/KanbanColumn.d.ts.map +1 -1
- package/dist/components/dashboard/kanban/KanbanColumnHeader.d.ts.map +1 -1
- package/dist/components/dashboard/kanban/KanbanDropIndicator.d.ts.map +1 -1
- package/dist/components/dashboard/kanban/index.d.ts +1 -1
- package/dist/components/dashboard/kanban/types.d.ts +24 -12
- package/dist/components/dashboard/kanban/types.d.ts.map +1 -1
- package/dist/components/scrollbar/scrollbar.d.ts +2 -1
- package/dist/components/scrollbar/scrollbar.d.ts.map +1 -1
- package/dist/context/MotionConfigContext.d.ts +41 -0
- package/dist/context/MotionConfigContext.d.ts.map +1 -0
- package/dist/data.d.mts +55 -23
- package/dist/data.d.ts +45 -3
- package/dist/data.d.ts.map +1 -1
- package/dist/data.mjs +2 -2
- package/dist/data.mjs.map +1 -1
- package/dist/feedback.d.mts +6 -293
- package/dist/feedback.d.ts +7 -5
- package/dist/feedback.d.ts.map +1 -1
- package/dist/feedback.mjs +1 -1
- package/dist/form.d.mts +99 -114
- package/dist/form.mjs +9 -4
- package/dist/form.mjs.map +1 -1
- package/dist/hooks/index.d.ts +6 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/useAnimatedEntrance.d.ts +24 -0
- package/dist/hooks/useAnimatedEntrance.d.ts.map +1 -0
- package/dist/hooks/useBreakpoint.d.ts +22 -0
- package/dist/hooks/useBreakpoint.d.ts.map +1 -0
- package/dist/hooks/useDotEnv.d.ts +12 -0
- package/dist/hooks/useDotEnv.d.ts.map +1 -0
- package/dist/hooks/useDotMap.d.ts +38 -0
- package/dist/hooks/useDotMap.d.ts.map +1 -0
- package/dist/{icons-DmhQEH_E.d.mts → icons-DcOBy9Hf.d.mts} +4 -0
- package/dist/iconsax-extended.mjs +2 -2
- package/dist/iconsax-extended.mjs.map +1 -1
- package/dist/iconsax.mjs +2 -2
- package/dist/iconsax.mjs.map +1 -1
- package/dist/index.d.mts +360 -210
- package/dist/index.d.ts +74 -64
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +15 -15
- package/dist/index.mjs.map +1 -1
- package/dist/interactive/kanban.d.ts +12 -0
- package/dist/interactive/kanban.d.ts.map +1 -0
- package/dist/interactive-kanban.d.mts +378 -0
- package/dist/interactive-kanban.mjs +3 -0
- package/dist/interactive-kanban.mjs.map +1 -0
- package/dist/interactive.d.mts +193 -197
- package/dist/interactive.d.ts +7 -5
- package/dist/interactive.d.ts.map +1 -1
- package/dist/interactive.mjs +1 -1
- package/dist/interactive.mjs.map +1 -1
- package/dist/landing/LandingAbout.d.ts +2 -2
- package/dist/landing/LandingAbout.d.ts.map +1 -1
- package/dist/landing/LandingCTA.d.ts +2 -2
- package/dist/landing/LandingCTA.d.ts.map +1 -1
- package/dist/landing/LandingContact.d.ts +2 -2
- package/dist/landing/LandingContact.d.ts.map +1 -1
- package/dist/landing/LandingExperience.d.ts +1 -1
- package/dist/landing/LandingExperience.d.ts.map +1 -1
- package/dist/landing/LandingFeatures.d.ts +1 -1
- package/dist/landing/LandingFeatures.d.ts.map +1 -1
- package/dist/landing/LandingHero.d.ts +2 -2
- package/dist/landing/LandingHero.d.ts.map +1 -1
- package/dist/landing/LandingLogoCloud.d.ts +2 -2
- package/dist/landing/LandingLogoCloud.d.ts.map +1 -1
- package/dist/landing/LandingMetrics.d.ts +1 -1
- package/dist/landing/LandingMetrics.d.ts.map +1 -1
- package/dist/landing/LandingProjects.d.ts +1 -1
- package/dist/landing/LandingProjects.d.ts.map +1 -1
- package/dist/landing/LandingShowcase.d.ts +2 -2
- package/dist/landing/LandingShowcase.d.ts.map +1 -1
- package/dist/landing/LandingSkills.d.ts +1 -1
- package/dist/landing/LandingSkills.d.ts.map +1 -1
- package/dist/landing/LandingStats.d.ts +1 -1
- package/dist/landing/LandingStats.d.ts.map +1 -1
- package/dist/landing/LandingTestimonials.d.ts +1 -1
- package/dist/landing/LandingTestimonials.d.ts.map +1 -1
- package/dist/landing/types.d.ts +42 -30
- package/dist/landing/types.d.ts.map +1 -1
- package/dist/landing.d.mts +47 -37
- package/dist/landing.mjs +4 -20
- package/dist/landing.mjs.map +1 -1
- package/dist/lib/Slot.d.ts.map +1 -1
- package/dist/lib/icon-providers.d.ts +25 -27
- package/dist/lib/icon-providers.d.ts.map +1 -1
- package/dist/lib/icons.d.ts +4 -0
- package/dist/lib/icons.d.ts.map +1 -1
- package/dist/lib/styles/animation.d.ts +35 -0
- package/dist/lib/styles/animation.d.ts.map +1 -0
- package/dist/lib/styles/disabled.d.ts +15 -0
- package/dist/lib/styles/disabled.d.ts.map +1 -0
- package/dist/lib/styles/focus.d.ts +34 -0
- package/dist/lib/styles/focus.d.ts.map +1 -0
- package/dist/lib/styles/glass.d.ts +18 -0
- package/dist/lib/styles/glass.d.ts.map +1 -0
- package/dist/lib/styles/hover.d.ts +9 -0
- package/dist/lib/styles/hover.d.ts.map +1 -0
- package/dist/lib/styles/index.d.ts +6 -0
- package/dist/lib/styles/index.d.ts.map +1 -1
- package/dist/lib/styles/transition.d.ts +42 -0
- package/dist/lib/styles/transition.d.ts.map +1 -0
- package/dist/lib/types/common.d.ts +3 -3
- package/dist/lib/types/common.d.ts.map +1 -1
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/native/Box.d.ts +11 -0
- package/dist/native/Box.d.ts.map +1 -0
- package/dist/native/Pressable.d.ts +10 -0
- package/dist/native/Pressable.d.ts.map +1 -0
- package/dist/native/Text.d.ts +11 -0
- package/dist/native/Text.d.ts.map +1 -0
- package/dist/native/index.d.ts +9 -0
- package/dist/native/index.d.ts.map +1 -0
- package/dist/native/useDotMap.d.ts +51 -0
- package/dist/native/useDotMap.d.ts.map +1 -0
- package/dist/native.mjs +2 -0
- package/dist/native.mjs.map +1 -0
- package/dist/navigation.d.mts +49 -22
- package/dist/navigation.d.ts +10 -8
- package/dist/navigation.d.ts.map +1 -1
- package/dist/navigation.mjs +1 -1
- package/dist/navigation.mjs.map +1 -1
- package/dist/overlay.d.mts +84 -87
- package/dist/overlay.mjs +2 -2
- package/dist/overlay.mjs.map +1 -1
- package/dist/sdui/SDUIRenderer.d.ts.map +1 -1
- package/dist/sdui/core.d.ts +50 -0
- package/dist/sdui/core.d.ts.map +1 -0
- package/dist/sdui/index.d.ts +3 -1
- package/dist/sdui/index.d.ts.map +1 -1
- package/dist/sdui/registry.d.ts.map +1 -1
- package/dist/sdui/types.d.ts +38 -0
- package/dist/sdui/types.d.ts.map +1 -1
- package/dist/sdui.d.mts +89 -1
- package/dist/sdui.mjs +2 -2
- package/dist/sdui.mjs.map +1 -1
- package/dist/theme.d.mts +85 -0
- package/dist/theme.d.ts +14 -0
- package/dist/theme.d.ts.map +1 -0
- package/dist/theme.mjs +3 -0
- package/dist/theme.mjs.map +1 -0
- package/package.json +50 -22
- package/src/styles/component-vars.css +503 -69
- package/src/styles/landing.css +12 -12
- package/src/styles/prose.css +284 -0
- package/src/styles/recommended-theme.css +123 -141
- package/src/styles/utilities.css +3 -3
- package/dist/advanced-dashboard.js +0 -39
- package/dist/advanced-dashboard.js.map +0 -1
- package/dist/advanced-emotion.js +0 -2
- package/dist/advanced-emotion.js.map +0 -1
- package/dist/advanced-motion.js +0 -82
- package/dist/advanced-motion.js.map +0 -1
- package/dist/advanced.js +0 -112
- package/dist/advanced.js.map +0 -1
- package/dist/chunk-3CCF7U3P.mjs +0 -3
- package/dist/chunk-3CCF7U3P.mjs.map +0 -1
- package/dist/chunk-3GAUTZXQ.mjs +0 -3
- package/dist/chunk-3GAUTZXQ.mjs.map +0 -1
- package/dist/chunk-42RGFEL2.mjs +0 -3
- package/dist/chunk-42RGFEL2.mjs.map +0 -1
- package/dist/chunk-4NJE7D6X.mjs +0 -3
- package/dist/chunk-4NJE7D6X.mjs.map +0 -1
- package/dist/chunk-6HVJFEDA.mjs +0 -3
- package/dist/chunk-6HVJFEDA.mjs.map +0 -1
- package/dist/chunk-7OYT3QSY.mjs +0 -3
- package/dist/chunk-7OYT3QSY.mjs.map +0 -1
- package/dist/chunk-ANYZ56VB.mjs +0 -3
- package/dist/chunk-ANYZ56VB.mjs.map +0 -1
- package/dist/chunk-AOSXB5JJ.mjs +0 -4
- package/dist/chunk-AOSXB5JJ.mjs.map +0 -1
- package/dist/chunk-B544MRF7.mjs +0 -3
- package/dist/chunk-B544MRF7.mjs.map +0 -1
- package/dist/chunk-CVWWS25A.mjs +0 -3
- package/dist/chunk-CVWWS25A.mjs.map +0 -1
- package/dist/chunk-DYNBM24D.mjs +0 -3
- package/dist/chunk-DYNBM24D.mjs.map +0 -1
- package/dist/chunk-FX57OSYG.mjs +0 -3
- package/dist/chunk-FX57OSYG.mjs.map +0 -1
- package/dist/chunk-IJSYSNM5.mjs +0 -3
- package/dist/chunk-IJSYSNM5.mjs.map +0 -1
- package/dist/chunk-KJZGOL2Z.mjs +0 -3
- package/dist/chunk-KJZGOL2Z.mjs.map +0 -1
- package/dist/chunk-KYRIUUQP.mjs +0 -3
- package/dist/chunk-KYRIUUQP.mjs.map +0 -1
- package/dist/chunk-LSA7DU3N.mjs +0 -73
- package/dist/chunk-LSA7DU3N.mjs.map +0 -1
- package/dist/chunk-MDLCJASB.mjs +0 -3
- package/dist/chunk-MDLCJASB.mjs.map +0 -1
- package/dist/chunk-N56BUOCD.mjs +0 -3
- package/dist/chunk-N56BUOCD.mjs.map +0 -1
- package/dist/chunk-OFYITQXI.mjs +0 -13
- package/dist/chunk-OFYITQXI.mjs.map +0 -1
- package/dist/chunk-OZNST3EZ.mjs +0 -3
- package/dist/chunk-OZNST3EZ.mjs.map +0 -1
- package/dist/chunk-RS6RKW5U.mjs +0 -13
- package/dist/chunk-RS6RKW5U.mjs.map +0 -1
- package/dist/chunk-TXBZZJNR.mjs +0 -3
- package/dist/chunk-TXBZZJNR.mjs.map +0 -1
- package/dist/chunk-TZ4YSHMC.mjs +0 -3
- package/dist/chunk-TZ4YSHMC.mjs.map +0 -1
- package/dist/chunk-U6CTBZ2U.mjs +0 -3
- package/dist/chunk-U6CTBZ2U.mjs.map +0 -1
- package/dist/chunk-WP7VFE77.mjs +0 -3
- package/dist/chunk-WP7VFE77.mjs.map +0 -1
- package/dist/chunk-XCZMLKPK.mjs +0 -3
- package/dist/chunk-XCZMLKPK.mjs.map +0 -1
- package/dist/chunk-XGHT7WMO.mjs +0 -3
- package/dist/chunk-XGHT7WMO.mjs.map +0 -1
- package/dist/chunk-XL4KTJ4L.mjs +0 -3
- package/dist/chunk-XL4KTJ4L.mjs.map +0 -1
- package/dist/chunk-Z74YUUVT.mjs +0 -3
- package/dist/chunk-Z74YUUVT.mjs.map +0 -1
- package/dist/chunk-ZXZIHU7J.mjs +0 -8
- package/dist/chunk-ZXZIHU7J.mjs.map +0 -1
- package/dist/components/EmptyState.d.ts +0 -62
- package/dist/components/EmptyState.d.ts.map +0 -1
- package/dist/data.js +0 -3
- package/dist/data.js.map +0 -1
- package/dist/feedback.js +0 -12
- package/dist/feedback.js.map +0 -1
- package/dist/form.js +0 -8
- package/dist/form.js.map +0 -1
- package/dist/iconsax-extended.js +0 -3
- package/dist/iconsax-extended.js.map +0 -1
- package/dist/iconsax.js +0 -3
- package/dist/iconsax.js.map +0 -1
- package/dist/index.js +0 -51
- package/dist/index.js.map +0 -1
- package/dist/interactive.js +0 -2
- package/dist/interactive.js.map +0 -1
- package/dist/landing.js +0 -100
- package/dist/landing.js.map +0 -1
- package/dist/lib/phosphor-icons.d.ts +0 -6
- package/dist/lib/phosphor-icons.d.ts.map +0 -1
- package/dist/navigation.js +0 -12
- package/dist/navigation.js.map +0 -1
- package/dist/overlay.js +0 -3
- package/dist/overlay.js.map +0 -1
- package/dist/sdui.js +0 -9
- package/dist/sdui.js.map +0 -1
package/dist/navigation.d.mts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { I as IconName } from './icons-
|
|
2
|
+
import { I as IconName } from './icons-DcOBy9Hf.mjs';
|
|
3
|
+
export { D as Sidebar, S as SidebarNavItem, a as SidebarProps, b as SidebarSection } from './DashboardSidebar-ZulecqKs.mjs';
|
|
3
4
|
import '@phosphor-icons/react';
|
|
4
5
|
|
|
5
6
|
/**
|
|
@@ -10,14 +11,18 @@ import '@phosphor-icons/react';
|
|
|
10
11
|
* @property {(value: string) => void} [onValueChange] - 탭 변경 콜백 / Tab change callback
|
|
11
12
|
* @property {"pills" | "underline" | "cards"} [variant="pills"] - Navigation 스타일 변형 / Navigation style variant
|
|
12
13
|
* @property {"small" | "medium" | "large"} [scale="medium"] - Navigation 크기 / Navigation size
|
|
13
|
-
* @
|
|
14
|
+
* @property {string} [dot] - dot 유틸리티 문자열 / dot utility string
|
|
15
|
+
* @property {React.CSSProperties} [style] - 인라인 스타일 / Inline style
|
|
16
|
+
* @extends {Omit<React.HTMLAttributes<HTMLDivElement>, 'className' | 'style'>}
|
|
14
17
|
*/
|
|
15
|
-
interface NavigationProps extends Omit<React.HTMLAttributes<HTMLDivElement>,
|
|
18
|
+
interface NavigationProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> {
|
|
16
19
|
value?: string;
|
|
17
20
|
defaultValue?: string;
|
|
18
21
|
onValueChange?: (value: string) => void;
|
|
19
22
|
variant?: "pills" | "underline" | "cards";
|
|
20
23
|
scale?: "small" | "medium" | "large";
|
|
24
|
+
dot?: string;
|
|
25
|
+
style?: React.CSSProperties;
|
|
21
26
|
}
|
|
22
27
|
/**
|
|
23
28
|
* NavigationList 컴포넌트의 props / NavigationList component props
|
|
@@ -26,15 +31,18 @@ interface NavigationProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'st
|
|
|
26
31
|
* @property {(value: string) => void} [onValueChange] - 탭 변경 콜백 / Tab change callback
|
|
27
32
|
* @property {"pills" | "underline" | "cards"} [variant="pills"] - Navigation 스타일 변형 / Navigation style variant
|
|
28
33
|
* @property {"small" | "medium" | "large"} [scale="medium"] - Navigation 크기 / Navigation size
|
|
29
|
-
* @
|
|
34
|
+
* @property {string} [dot] - dot 유틸리티 문자열 / dot utility string
|
|
35
|
+
* @property {React.CSSProperties} [style] - 인라인 스타일 / Inline style
|
|
36
|
+
* @extends {Omit<React.HTMLAttributes<HTMLDivElement>, 'className' | 'style'>}
|
|
30
37
|
*/
|
|
31
|
-
interface NavigationListProps extends Omit<React.HTMLAttributes<HTMLDivElement>,
|
|
38
|
+
interface NavigationListProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> {
|
|
32
39
|
value?: string;
|
|
33
40
|
onValueChange?: (value: string) => void;
|
|
34
41
|
variant?: "pills" | "underline" | "cards";
|
|
35
42
|
scale?: "small" | "medium" | "large";
|
|
43
|
+
dot?: string;
|
|
44
|
+
style?: React.CSSProperties;
|
|
36
45
|
}
|
|
37
|
-
declare const NavigationList: React.ForwardRefExoticComponent<NavigationListProps & React.RefAttributes<HTMLDivElement>>;
|
|
38
46
|
/**
|
|
39
47
|
* NavigationItem 컴포넌트의 props / NavigationItem component props
|
|
40
48
|
* @typedef {Object} NavigationItemProps
|
|
@@ -43,27 +51,35 @@ declare const NavigationList: React.ForwardRefExoticComponent<NavigationListProp
|
|
|
43
51
|
* @property {"pills" | "underline" | "cards"} [variant] - Navigation 스타일 변형 (자동으로 설정됨) / Navigation style variant (auto-set)
|
|
44
52
|
* @property {"small" | "medium" | "large"} [scale] - Navigation 크기 (자동으로 설정됨) / Navigation size (auto-set)
|
|
45
53
|
* @property {boolean} [active] - 활성 상태 (자동으로 설정됨) / Active state (auto-set)
|
|
46
|
-
* @
|
|
54
|
+
* @property {string} [dot] - dot 유틸리티 문자열 / dot utility string
|
|
55
|
+
* @extends {Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'className' | 'style'>}
|
|
47
56
|
*/
|
|
48
|
-
interface NavigationItemProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>,
|
|
57
|
+
interface NavigationItemProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "className" | "style"> {
|
|
49
58
|
value: string;
|
|
50
59
|
onValueChange?: (value: string) => void;
|
|
51
60
|
variant?: "pills" | "underline" | "cards";
|
|
52
61
|
scale?: "small" | "medium" | "large";
|
|
53
62
|
active?: boolean;
|
|
63
|
+
dot?: string;
|
|
64
|
+
style?: React.CSSProperties;
|
|
54
65
|
}
|
|
55
|
-
declare const NavigationItem: React.ForwardRefExoticComponent<NavigationItemProps & React.RefAttributes<HTMLButtonElement>>;
|
|
56
66
|
/**
|
|
57
67
|
* NavigationContent 컴포넌트의 props / NavigationContent component props
|
|
58
68
|
* @typedef {Object} NavigationContentProps
|
|
59
69
|
* @property {string} value - 탭 값 / Tab value
|
|
60
70
|
* @property {boolean} [active] - 활성 상태 (자동으로 설정됨) / Active state (auto-set)
|
|
61
|
-
* @
|
|
71
|
+
* @property {string} [dot] - dot 유틸리티 문자열 / dot utility string
|
|
72
|
+
* @property {React.CSSProperties} [style] - 인라인 스타일 / Inline style
|
|
73
|
+
* @extends {Omit<React.HTMLAttributes<HTMLDivElement>, 'className' | 'style'>}
|
|
62
74
|
*/
|
|
63
|
-
interface NavigationContentProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
75
|
+
interface NavigationContentProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "className" | "style"> {
|
|
64
76
|
value: string;
|
|
65
77
|
active?: boolean;
|
|
78
|
+
dot?: string;
|
|
79
|
+
style?: React.CSSProperties;
|
|
66
80
|
}
|
|
81
|
+
declare const NavigationList: React.ForwardRefExoticComponent<NavigationListProps & React.RefAttributes<HTMLDivElement>>;
|
|
82
|
+
declare const NavigationItem: React.ForwardRefExoticComponent<NavigationItemProps & React.RefAttributes<HTMLButtonElement>>;
|
|
67
83
|
declare const NavigationContent: React.ForwardRefExoticComponent<NavigationContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
68
84
|
interface NavigationComponent extends React.ForwardRefExoticComponent<NavigationProps & React.RefAttributes<HTMLDivElement>> {
|
|
69
85
|
List: typeof NavigationList;
|
|
@@ -90,16 +106,20 @@ interface BreadcrumbItemData {
|
|
|
90
106
|
* @property {string} [homeLabel] - 홈 라벨 (기본: "Home") / Home label (default: "Home")
|
|
91
107
|
* @property {React.ReactNode} [separator] - 항목 사이 구분자 (기본: chevronRight 아이콘) / Separator between items (default: chevronRight icon)
|
|
92
108
|
* @property {'default' | 'subtle' | 'transparent' | 'glass'} [variant='default'] - Breadcrumb 스타일 변형 / Breadcrumb style variant
|
|
93
|
-
* @extends {React.HTMLAttributes<HTMLDivElement>}
|
|
109
|
+
* @extends {Omit<React.HTMLAttributes<HTMLDivElement>, 'className'>}
|
|
94
110
|
*/
|
|
95
|
-
interface BreadcrumbProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
111
|
+
interface BreadcrumbProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "className"> {
|
|
96
112
|
children?: React.ReactNode;
|
|
97
113
|
items?: BreadcrumbItemData[];
|
|
98
114
|
maxItems?: number;
|
|
99
115
|
showHomeIcon?: boolean;
|
|
100
116
|
homeLabel?: string;
|
|
101
117
|
separator?: React.ReactNode;
|
|
102
|
-
variant?:
|
|
118
|
+
variant?: "default" | "subtle" | "transparent" | "glass";
|
|
119
|
+
/** dot 유틸리티 스트링 (인라인 스타일로 변환) / dot utility string (converted to inline style) */
|
|
120
|
+
dot?: string;
|
|
121
|
+
/** 추가 인라인 스타일 / Additional inline style */
|
|
122
|
+
style?: React.CSSProperties;
|
|
103
123
|
}
|
|
104
124
|
/**
|
|
105
125
|
* BreadcrumbItem 컴포넌트의 props / BreadcrumbItem component props
|
|
@@ -113,7 +133,8 @@ interface BreadcrumbItemProps {
|
|
|
113
133
|
href?: string;
|
|
114
134
|
isCurrent?: boolean;
|
|
115
135
|
children: React.ReactNode;
|
|
116
|
-
|
|
136
|
+
dot?: string;
|
|
137
|
+
style?: React.CSSProperties;
|
|
117
138
|
}
|
|
118
139
|
/**
|
|
119
140
|
* Breadcrumb 컴포넌트 / Breadcrumb component
|
|
@@ -168,9 +189,10 @@ declare const BreadcrumbItem: React.ForwardRefExoticComponent<BreadcrumbItemProp
|
|
|
168
189
|
* @property {"sm" | "md" | "lg"} [size="md"] - Pagination 크기 / Pagination size
|
|
169
190
|
* @property {"default" | "outlined" | "minimal"} [variant="default"] - Pagination 스타일 변형 / Pagination style variant
|
|
170
191
|
* @property {"square" | "circle"} [shape="square"] - 버튼 모양 / Button shape
|
|
171
|
-
* @
|
|
192
|
+
* @property {string} [dot] - dot utility string for additional styles
|
|
193
|
+
* @property {React.CSSProperties} [style] - Inline style overrides
|
|
172
194
|
*/
|
|
173
|
-
interface PaginationProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
195
|
+
interface PaginationProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "className"> {
|
|
174
196
|
currentPage: number;
|
|
175
197
|
totalPages: number;
|
|
176
198
|
onPageChange: (page: number) => void;
|
|
@@ -180,6 +202,8 @@ interface PaginationProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
180
202
|
size?: "sm" | "md" | "lg";
|
|
181
203
|
variant?: "default" | "outlined" | "minimal";
|
|
182
204
|
shape?: "square" | "circle";
|
|
205
|
+
dot?: string;
|
|
206
|
+
style?: React.CSSProperties;
|
|
183
207
|
}
|
|
184
208
|
/**
|
|
185
209
|
* Pagination 컴포넌트 / Pagination component
|
|
@@ -236,9 +260,10 @@ declare const PaginationWithInfo: React.ForwardRefExoticComponent<PaginationProp
|
|
|
236
260
|
* @property {string} nextPage.title - 다음 페이지 제목 / Next page title
|
|
237
261
|
* @property {string} nextPage.href - 다음 페이지 링크 / Next page link
|
|
238
262
|
* @property {boolean} [showOnMobile=false] - 모바일에서 표시 여부 / Show on mobile
|
|
239
|
-
* @
|
|
263
|
+
* @property {string} [dot] - dot 유틸리티 스트링 / dot utility string
|
|
264
|
+
* @property {React.CSSProperties} [style] - 인라인 스타일 / Inline style
|
|
240
265
|
*/
|
|
241
|
-
interface PageNavigationProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
266
|
+
interface PageNavigationProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "className"> {
|
|
242
267
|
prevPage?: {
|
|
243
268
|
title: string;
|
|
244
269
|
href: string;
|
|
@@ -248,6 +273,8 @@ interface PageNavigationProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
248
273
|
href: string;
|
|
249
274
|
};
|
|
250
275
|
showOnMobile?: boolean;
|
|
276
|
+
dot?: string;
|
|
277
|
+
style?: React.CSSProperties;
|
|
251
278
|
}
|
|
252
279
|
/**
|
|
253
280
|
* PageNavigation 컴포넌트 / PageNavigation component
|
|
@@ -268,7 +295,7 @@ interface PageNavigationProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
268
295
|
*
|
|
269
296
|
* @param {PageNavigationProps} props - PageNavigation 컴포넌트의 props / PageNavigation component props
|
|
270
297
|
* @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref
|
|
271
|
-
* @returns {JSX.Element} PageNavigation 컴포넌트 / PageNavigation component
|
|
298
|
+
* @returns {JSX.Element | null} PageNavigation 컴포넌트 / PageNavigation component
|
|
272
299
|
*/
|
|
273
300
|
declare const PageNavigation: React.ForwardRefExoticComponent<PageNavigationProps & React.RefAttributes<HTMLDivElement>>;
|
|
274
301
|
|
|
@@ -276,7 +303,6 @@ declare const PageNavigation: React.ForwardRefExoticComponent<PageNavigationProp
|
|
|
276
303
|
* PageTransition 컴포넌트의 props / PageTransition component props
|
|
277
304
|
* @typedef {Object} PageTransitionProps
|
|
278
305
|
* @property {React.ReactNode} children - 페이지 내용 / Page content
|
|
279
|
-
* @property {string} [className] - 추가 CSS 클래스 / Additional CSS class
|
|
280
306
|
* @property {number} [duration=300] - 전환 지속 시간 (ms) / Transition duration (ms)
|
|
281
307
|
* @property {'fade' | 'slide' | 'scale' | 'flip'} [variant='fade'] - 전환 애니메이션 타입 / Transition animation type
|
|
282
308
|
* @property {'default' | 'dots' | 'bars' | 'ring' | 'ripple'} [loadingVariant='ripple'] - 로딩 스피너 타입 / Loading spinner type
|
|
@@ -287,7 +313,8 @@ declare const PageNavigation: React.ForwardRefExoticComponent<PageNavigationProp
|
|
|
287
313
|
*/
|
|
288
314
|
interface PageTransitionProps {
|
|
289
315
|
children: React.ReactNode;
|
|
290
|
-
|
|
316
|
+
dot?: string;
|
|
317
|
+
style?: React.CSSProperties;
|
|
291
318
|
duration?: number;
|
|
292
319
|
variant?: 'fade' | 'slide' | 'scale' | 'flip';
|
|
293
320
|
loadingVariant?: 'default' | 'dots' | 'bars' | 'ring' | 'ripple';
|
package/dist/navigation.d.ts
CHANGED
|
@@ -12,12 +12,14 @@
|
|
|
12
12
|
* import { Breadcrumb, BreadcrumbItem } from '@hua-labs/ui/navigation';
|
|
13
13
|
* import { Pagination } from '@hua-labs/ui/navigation';
|
|
14
14
|
*/
|
|
15
|
-
export { Navigation, NavigationList, NavigationItem, NavigationContent } from
|
|
16
|
-
export { Breadcrumb, BreadcrumbItem } from
|
|
17
|
-
export type { BreadcrumbProps, BreadcrumbItemProps, BreadcrumbItemData } from
|
|
18
|
-
export { Pagination, PaginationOutlined, PaginationMinimal, PaginationWithInfo } from
|
|
19
|
-
export { PageNavigation } from
|
|
20
|
-
export type { PageNavigationProps } from
|
|
21
|
-
export { PageTransition } from
|
|
22
|
-
export type { PageTransitionProps } from
|
|
15
|
+
export { Navigation, NavigationList, NavigationItem, NavigationContent, } from "./components/Navigation";
|
|
16
|
+
export { Breadcrumb, BreadcrumbItem } from "./components/Breadcrumb";
|
|
17
|
+
export type { BreadcrumbProps, BreadcrumbItemProps, BreadcrumbItemData, } from "./components/Breadcrumb";
|
|
18
|
+
export { Pagination, PaginationOutlined, PaginationMinimal, PaginationWithInfo, } from "./components/Pagination";
|
|
19
|
+
export { PageNavigation } from "./components/PageNavigation";
|
|
20
|
+
export type { PageNavigationProps } from "./components/PageNavigation";
|
|
21
|
+
export { PageTransition } from "./components/PageTransition";
|
|
22
|
+
export type { PageTransitionProps } from "./components/PageTransition";
|
|
23
|
+
export { DashboardSidebar as Sidebar } from "./components/dashboard/DashboardSidebar";
|
|
24
|
+
export type { DashboardSidebarProps as SidebarProps, SidebarNavItem, SidebarSection, } from "./components/dashboard/DashboardSidebar";
|
|
23
25
|
//# sourceMappingURL=navigation.d.ts.map
|
package/dist/navigation.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../src/navigation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../src/navigation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EACL,UAAU,EACV,cAAc,EACd,cAAc,EACd,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACrE,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGvE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGvE,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,MAAM,yCAAyC,CAAC;AACtF,YAAY,EACV,qBAAqB,IAAI,YAAY,EACrC,cAAc,EACd,cAAc,GACf,MAAM,yCAAyC,CAAC"}
|
package/dist/navigation.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
export{a as Breadcrumb,b as BreadcrumbItem}from'./chunk-KJZGOL2Z.mjs';import {l}from'./chunk-7OYT3QSY.mjs';import {a}from'./chunk-RS6RKW5U.mjs';import {b}from'./chunk-U6CTBZ2U.mjs';import p,{useState,useEffect}from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';var A=p.forwardRef(({className:n,value:e,defaultValue:t,onValueChange:o,variant:s="pills",scale:l="medium",children:m,...d},f)=>{let [g,c]=p.useState(e||t||""),b$1=e!==void 0,x=b$1?e:g;return p.useEffect(()=>{e!==void 0&&c(e);},[e]),jsx("div",{ref:f,className:b("w-full",n),...d,children:p.Children.map(m,u=>p.isValidElement(u)?p.cloneElement(u,{value:x,variant:s,scale:l}):u)})});A.displayName="Navigation";var B=p.forwardRef(({className:n,value:e,onValueChange:t,variant:o="pills",scale:s="medium",children:l,...m},d)=>{let f=()=>{switch(o){case "pills":return "bg-muted p-1 rounded-xl";case "underline":return "border-b border-border";case "cards":return "bg-muted/50 p-1 rounded-xl";default:return "bg-muted p-1 rounded-xl"}},g=()=>{switch(s){case "small":return "gap-1";case "large":return "gap-3";default:return "gap-2"}};return jsx("div",{ref:d,className:b("flex",f(),g(),n),...m,children:p.Children.map(l,c=>p.isValidElement(c)?p.cloneElement(c,{value:e,variant:o,scale:s}):c)})});B.displayName="NavigationList";var O=p.forwardRef(({className:n,value:e,onValueChange:t,variant:o="pills",scale:s="medium",active:l=false,children:m,...d},f)=>{let g=()=>{switch(o){case "pills":return b("rounded-lg px-3 py-2 text-sm font-medium transition-all",l?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground");case "underline":return b("border-b-2 px-3 py-2 text-sm font-medium transition-all",l?"border-primary text-primary":"border-transparent text-muted-foreground hover:text-foreground");case "cards":return b("rounded-lg px-3 py-2 text-sm font-medium transition-all",l?"bg-background text-foreground shadow-sm border border-border":"text-muted-foreground hover:text-foreground");default:return b("rounded-lg px-3 py-2 text-sm font-medium transition-all",l?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground")}},c=()=>{switch(s){case "small":return "text-xs px-2 py-1";case "large":return "text-base px-4 py-3";default:return "text-sm px-3 py-2"}},b$1=()=>{t==null||t(e);};return jsx("button",{ref:f,className:b(g(),c(),"focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-2",n),onClick:b$1,...d,children:m})});O.displayName="NavigationItem";var j=p.forwardRef(({className:n,active:e=false,...t},o)=>e?jsx("div",{ref:o,className:b("mt-4",n),...t}):null);j.displayName="NavigationContent";var H=A;H.List=B;H.Item=O;H.Content=j;var C=p.forwardRef(({className:n,currentPage:e,totalPages:t,onPageChange:o,showFirstLast:s=true,showPrevNext:l=true,maxVisiblePages:m=5,size:d="md",variant:f="default",shape:g="square",...c},b$1)=>{let x=()=>{let r=[],R=Math.floor(m/2),h=Math.max(1,e-R),P=Math.min(t,e+R);P-h+1<m&&(h===1?P=Math.min(t,h+m-1):h=Math.max(1,P-m+1)),h>1&&(r.push(1),h>2&&r.push("..."));for(let D=h;D<=P;D++)r.push(D);return P<t&&(P<t-1&&r.push("..."),r.push(t)),r},v=()=>{switch(d){case "sm":return "h-8 px-2 text-sm";case "lg":return "h-12 px-4 text-base";default:return "h-10 px-3 text-sm"}},u=()=>g==="circle"?"rounded-full aspect-square flex items-center justify-center":"rounded-md",N=(r=false)=>{switch(f){case "outlined":return b("border border-border",r?"bg-primary border-primary text-primary-foreground":"bg-background text-foreground hover:bg-muted");case "minimal":return b("border-0",r?"bg-primary/10 text-primary":"bg-transparent text-foreground hover:bg-muted");default:return b("border-0",r?"bg-primary text-primary-foreground":"bg-background text-foreground hover:bg-muted")}},M=r=>{r>=1&&r<=t&&r!==e&&o(r);},G=x();return jsxs("div",{ref:b$1,className:b("flex items-center justify-center gap-1",n),...c,children:[s&&e>1&&jsx("button",{onClick:()=>M(1),className:b("inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",v(),u(),N()),"aria-label":"\uCCAB \uD398\uC774\uC9C0\uB85C \uC774\uB3D9",children:jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M11 19l-7-7 7-7M19 19l-7-7 7-7"})})}),l&&e>1&&jsx("button",{onClick:()=>M(e-1),className:b("inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",v(),u(),N()),"aria-label":"\uC774\uC804 \uD398\uC774\uC9C0\uB85C \uC774\uB3D9",children:jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 19l-7-7 7-7"})})}),G.map((r,R)=>jsx(p.Fragment,{children:r==="..."?jsx("span",{className:b("inline-flex items-center justify-center px-3 py-2 text-sm font-medium text-muted-foreground",v()),children:"..."}):jsx("button",{onClick:()=>M(r),className:b("inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",v(),u(),N(r===e)),"aria-label":`${r}\uD398\uC774\uC9C0\uB85C \uC774\uB3D9`,"aria-current":r===e?"page":void 0,children:r})},R)),l&&e<t&&jsx("button",{onClick:()=>M(e+1),className:b("inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",v(),u(),N()),"aria-label":"\uB2E4\uC74C \uD398\uC774\uC9C0\uB85C \uC774\uB3D9",children:jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})}),s&&e<t&&jsx("button",{onClick:()=>M(t),className:b("inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",v(),u(),N()),"aria-label":"\uB9C8\uC9C0\uB9C9 \uD398\uC774\uC9C0\uB85C \uC774\uB3D9",children:jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 5l7 7-7 7M5 5l7 7-7 7"})})})]})});C.displayName="Pagination";var V=p.forwardRef(({className:n,...e},t)=>jsx(C,{ref:t,variant:"outlined",className:n,...e}));V.displayName="PaginationOutlined";var q=p.forwardRef(({className:n,...e},t)=>jsx(C,{ref:t,variant:"minimal",className:n,...e}));q.displayName="PaginationMinimal";var z=p.forwardRef(({totalItems:n=0,itemsPerPage:e=10,showInfo:t=true,className:o,...s},l)=>{let m=(s.currentPage-1)*e+1,d=Math.min(s.currentPage*e,n);return jsxs("div",{className:b("flex flex-col sm:flex-row items-center justify-between gap-4",o),children:[t&&jsx("div",{className:"text-sm text-foreground",children:n>0?jsxs(Fragment,{children:[jsx("span",{className:"font-medium",children:m})," - ",jsx("span",{className:"font-medium",children:d})," of ",jsx("span",{className:"font-medium",children:n})," results"]}):"No results"}),jsx(C,{ref:l,...s})]})});z.displayName="PaginationWithInfo";var _=p.forwardRef(({className:n,prevPage:e,nextPage:t,showOnMobile:o=false,...s},l$1)=>!e&&!t?null:jsxs("div",{ref:l$1,className:b("flex items-center justify-between py-4",!o&&"hidden md:flex",n),...s,children:[jsx("div",{className:"flex-1",children:e&&jsxs("a",{href:e.href,className:"group inline-flex items-center text-sm text-muted-foreground hover:text-foreground transition-colors",children:[jsx(l,{name:"chevronLeft",className:"w-4 h-4 mr-2 transition-transform group-hover:-translate-x-1"}),jsx("span",{className:"hidden sm:inline",children:e.title})]})}),jsx("div",{className:"flex-1 flex justify-end",children:t&&jsxs("a",{href:t.href,className:"group inline-flex items-center text-sm text-muted-foreground hover:text-foreground transition-colors",children:[jsx("span",{className:"hidden sm:inline mr-2",children:t.title}),jsx(l,{name:"chevronRight",className:"w-4 h-4 transition-transform group-hover:translate-x-1"})]})})]}));_.displayName="PageNavigation";var T=p.forwardRef(({children:n,className:e,duration:t=300,variant:o="fade",loadingVariant:s="ripple",loadingText:l="\uD398\uC774\uC9C0 \uB85C\uB529 \uC911...",showLoading:m=true,onTransitionStart:d,onTransitionEnd:f},g)=>{let[c,b$1]=useState(true),[x,v]=useState(false);useEffect(()=>{let N=setTimeout(()=>{b$1(false),v(true),f==null||f();},t);return d==null||d(),()=>clearTimeout(N)},[t,d,f]);let u={fade:b("transition-opacity duration-300 ease-in-out",x?"opacity-100":"opacity-0"),slide:b("transition-transform duration-300 ease-in-out",x?"translate-x-0":"translate-x-full"),scale:b("transition-all duration-300 ease-in-out",x?"scale-100 opacity-100":"scale-95 opacity-0"),flip:b("transition-all duration-500 ease-in-out",x?"rotate-y-0 opacity-100":"rotate-y-90 opacity-0")};return c&&m?jsx("div",{className:b("flex flex-col items-center justify-center min-h-screen bg-gradient-to-br from-indigo-50 to-purple-50 dark:from-slate-900 dark:to-slate-800",e),children:jsx(a,{size:"lg",variant:s,text:l})}):jsx("div",{ref:g,className:b("w-full",u[o],e),style:{transitionDuration:`${t}ms`},children:n})});T.displayName="PageTransition";var Y=p.forwardRef((n,e)=>jsx(T,{ref:e,variant:"fade",...n})),Z=p.forwardRef((n,e)=>jsx(T,{ref:e,variant:"slide",...n})),ee=p.forwardRef((n,e)=>jsx(T,{ref:e,variant:"scale",...n})),te=p.forwardRef((n,e)=>jsx(T,{ref:e,variant:"flip",...n}));Y.displayName="FadeTransition";Z.displayName="SlideTransition";ee.displayName="ScaleTransition";te.displayName="FlipTransition";export{H as Navigation,j as NavigationContent,O as NavigationItem,B as NavigationList,_ as PageNavigation,T as PageTransition,C as Pagination,q as PaginationMinimal,V as PaginationOutlined,z as PaginationWithInfo};//# sourceMappingURL=navigation.mjs.map
|
|
2
|
+
export{d as Navigation,c as NavigationContent,b as NavigationItem,a as NavigationList,i as PageNavigation,e as Pagination,g as PaginationMinimal,f as PaginationOutlined,h as PaginationWithInfo}from'./chunk-ZTHUGQZL.mjs';import {a}from'./chunk-SOK7VBSM.mjs';export{a as Breadcrumb,b as BreadcrumbItem}from'./chunk-ZVCGC6EV.mjs';export{a as Sidebar}from'./chunk-J46VEBVF.mjs';import'./chunk-DABVKUJN.mjs';import'./chunk-NSDWT2JM.mjs';import {e,d}from'./chunk-OBMOTQEU.mjs';import'./chunk-EAZEI74V.mjs';import o,{useState,useEffect}from'react';import {jsx}from'react/jsx-runtime';var i=o.forwardRef(({children:a$1,dot:e$1,style:c,duration:d$1=300,variant:g="fade",loadingVariant:u="ripple",loadingText:P="\uD398\uC774\uC9C0 \uB85C\uB529 \uC911...",showLoading:v=true,onTransitionStart:n,onTransitionEnd:s},b)=>{let[y,x]=useState(true),[l,T]=useState(false);useEffect(()=>{let S=setTimeout(()=>{x(false),T(true),s==null||s();},d$1);return n==null||n(),()=>clearTimeout(S)},[d$1,n,s]);let N={fade:l?"transition-opacity duration-300 ease-in-out opacity-100":"transition-opacity duration-300 ease-in-out opacity-0",slide:l?"transition-transform duration-300 ease-in-out translate-x-0":"transition-transform duration-300 ease-in-out translate-x-full",scale:l?"transition-all duration-300 ease-in-out scale-100 opacity-100":"transition-all duration-300 ease-in-out scale-95 opacity-0",flip:l?"transition-all duration-500 ease-in-out rotate-y-0 opacity-100":"transition-all duration-500 ease-in-out rotate-y-90 opacity-0"};return y&&v?jsx("div",{style:e("flex flex-col items-center justify-center min-h-screen bg-gradient-to-br from-indigo-50 to-purple-50 dark:from-slate-900 dark:to-slate-800"),children:jsx(a,{size:"lg",variant:u,text:P})}):jsx("div",{ref:b,style:d(e("w-full"),e(N[g]),{transitionDuration:`${d$1}ms`},e(e$1),c),children:a$1})});i.displayName="PageTransition";var k=o.forwardRef((a,e)=>jsx(i,{ref:e,variant:"fade",...a})),E=o.forwardRef((a,e)=>jsx(i,{ref:e,variant:"slide",...a})),z=o.forwardRef((a,e)=>jsx(i,{ref:e,variant:"scale",...a})),W=o.forwardRef((a,e)=>jsx(i,{ref:e,variant:"flip",...a}));k.displayName="FadeTransition";E.displayName="SlideTransition";z.displayName="ScaleTransition";W.displayName="FlipTransition";export{i as PageTransition};//# sourceMappingURL=navigation.mjs.map
|
|
3
3
|
//# sourceMappingURL=navigation.mjs.map
|
package/dist/navigation.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Navigation.tsx","../src/components/Pagination.tsx","../src/components/PageNavigation.tsx","../src/components/PageTransition.tsx"],"names":["Navigation","React","className","value","defaultValue","onValueChange","variant","scale","children","props","ref","activeTab","setActiveTab","isControlled","currentValue","jsx","merge","child","NavigationList","_onValueChange","getStyleClasses","getScaleClasses","NavigationItem","active","handleClick","NavigationContent","NavigationComponent","Pagination","currentPage","totalPages","onPageChange","showFirstLast","showPrevNext","maxVisiblePages","size","shape","getVisiblePages","pages","halfVisible","start","end","i","getSizeClasses","getShapeClasses","getVariantClasses","isActive","handlePageClick","page","visiblePages","jsxs","index","PaginationOutlined","PaginationMinimal","PaginationWithInfo","totalItems","itemsPerPage","showInfo","startItem","endItem","Fragment","PageNavigation","prevPage","nextPage","showOnMobile","Icon","PageTransition","duration","loadingVariant","loadingText","showLoading","onTransitionStart","onTransitionEnd","isLoading","setIsLoading","useState","isVisible","setIsVisible","useEffect","timer","transitionClasses","LoadingSpinner","FadeTransition","SlideTransition","ScaleTransition","FlipTransition"],"mappings":"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","file":"navigation.mjs","sourcesContent":["\"use client\"\n\nimport React from \"react\"\nimport { merge } from \"../lib/utils\"\n\n/**\n * Navigation 컴포넌트의 props / Navigation component props\n * @typedef {Object} NavigationProps\n * @property {string} [value] - 제어 모드에서 활성 탭 값 / Active tab value in controlled mode\n * @property {string} [defaultValue] - 비제어 모드에서 기본 활성 탭 값 / Default active tab value in uncontrolled mode\n * @property {(value: string) => void} [onValueChange] - 탭 변경 콜백 / Tab change callback\n * @property {\"pills\" | \"underline\" | \"cards\"} [variant=\"pills\"] - Navigation 스타일 변형 / Navigation style variant\n * @property {\"small\" | \"medium\" | \"large\"} [scale=\"medium\"] - Navigation 크기 / Navigation size\n * @extends {Omit<React.HTMLAttributes<HTMLDivElement>, 'style'>}\n */\nexport interface NavigationProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'style'> {\n value?: string\n defaultValue?: string\n onValueChange?: (value: string) => void\n variant?: \"pills\" | \"underline\" | \"cards\"\n scale?: \"small\" | \"medium\" | \"large\"\n}\n\n/**\n * Navigation 컴포넌트 / Navigation component\n * \n * 탭 네비게이션 컴포넌트입니다.\n * NavigationList, NavigationItem, NavigationContent와 함께 사용합니다.\n * \n * Tab navigation component.\n * Used with NavigationList, NavigationItem, and NavigationContent.\n * \n * @component\n * @example\n * // 기본 사용 / Basic usage\n * <Navigation>\n * <Navigation.List>\n * <Navigation.Item value=\"tab1\">탭 1</Navigation.Item>\n * <Navigation.Item value=\"tab2\">탭 2</Navigation.Item>\n * </Navigation.List>\n * <Navigation.Content value=\"tab1\">내용 1</Navigation.Content>\n * </Navigation>\n * \n * @param {NavigationProps} props - Navigation 컴포넌트의 props / Navigation component props\n * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref\n * @returns {JSX.Element} Navigation 컴포넌트 / Navigation component\n */\nconst Navigation = React.forwardRef<HTMLDivElement, NavigationProps>(\n ({ \n className, \n value,\n defaultValue,\n onValueChange,\n variant = \"pills\",\n scale = \"medium\",\n children,\n ...props \n }, ref) => {\n const [activeTab, setActiveTab] = React.useState(value || defaultValue || \"\")\n const isControlled = value !== undefined\n const currentValue = isControlled ? value : activeTab\n\n const _handleTabChange = (newValue: string) => {\n if (!isControlled) {\n setActiveTab(newValue)\n }\n onValueChange?.(newValue)\n }\n\n React.useEffect(() => {\n if (value !== undefined) {\n setActiveTab(value)\n }\n }, [value])\n\n return (\n <div\n ref={ref}\n className={merge(\n \"w-full\",\n className\n )}\n {...props}\n >\n {React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n value: currentValue,\n variant,\n scale\n } as Partial<NavigationListProps | NavigationItemProps>)\n }\n return child\n })}\n </div>\n )\n }\n)\nNavigation.displayName = \"Navigation\"\n\n/**\n * NavigationList 컴포넌트의 props / NavigationList component props\n * @typedef {Object} NavigationListProps\n * @property {string} [value] - 활성 탭 값 / Active tab value\n * @property {(value: string) => void} [onValueChange] - 탭 변경 콜백 / Tab change callback\n * @property {\"pills\" | \"underline\" | \"cards\"} [variant=\"pills\"] - Navigation 스타일 변형 / Navigation style variant\n * @property {\"small\" | \"medium\" | \"large\"} [scale=\"medium\"] - Navigation 크기 / Navigation size\n * @extends {Omit<React.HTMLAttributes<HTMLDivElement>, 'style'>}\n */\nexport interface NavigationListProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'style'> {\n value?: string\n onValueChange?: (value: string) => void\n variant?: \"pills\" | \"underline\" | \"cards\"\n scale?: \"small\" | \"medium\" | \"large\"\n}\n\nconst NavigationList = React.forwardRef<HTMLDivElement, NavigationListProps>(\n ({\n className,\n value,\n onValueChange: _onValueChange,\n variant = \"pills\",\n scale = \"medium\",\n children,\n ...props\n }, ref) => {\n const getStyleClasses = () => {\n switch (variant) {\n case \"pills\":\n return \"bg-muted p-1 rounded-xl\"\n case \"underline\":\n return \"border-b border-border\"\n case \"cards\":\n return \"bg-muted/50 p-1 rounded-xl\"\n default:\n return \"bg-muted p-1 rounded-xl\"\n }\n }\n\n const getScaleClasses = () => {\n switch (scale) {\n case \"small\":\n return \"gap-1\"\n case \"large\":\n return \"gap-3\"\n default:\n return \"gap-2\"\n }\n }\n\n return (\n <div\n ref={ref}\n className={merge(\n \"flex\",\n getStyleClasses(),\n getScaleClasses(),\n className\n )}\n {...props}\n >\n {React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n value,\n variant,\n scale\n } as Partial<NavigationItemProps>)\n }\n return child\n })}\n </div>\n )\n }\n)\nNavigationList.displayName = \"NavigationList\"\n\n/**\n * NavigationItem 컴포넌트의 props / NavigationItem component props\n * @typedef {Object} NavigationItemProps\n * @property {string} value - 탭 값 / Tab value\n * @property {(value: string) => void} [onValueChange] - 탭 변경 콜백 / Tab change callback\n * @property {\"pills\" | \"underline\" | \"cards\"} [variant] - Navigation 스타일 변형 (자동으로 설정됨) / Navigation style variant (auto-set)\n * @property {\"small\" | \"medium\" | \"large\"} [scale] - Navigation 크기 (자동으로 설정됨) / Navigation size (auto-set)\n * @property {boolean} [active] - 활성 상태 (자동으로 설정됨) / Active state (auto-set)\n * @extends {Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'style'>}\n */\nexport interface NavigationItemProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'style'> {\n value: string\n onValueChange?: (value: string) => void\n variant?: \"pills\" | \"underline\" | \"cards\"\n scale?: \"small\" | \"medium\" | \"large\"\n active?: boolean\n}\n\nconst NavigationItem = React.forwardRef<HTMLButtonElement, NavigationItemProps>(\n ({ \n className, \n value,\n onValueChange,\n variant = \"pills\",\n scale = \"medium\",\n active = false,\n children,\n ...props \n }, ref) => {\n const getStyleClasses = () => {\n switch (variant) {\n case \"pills\":\n return merge(\n \"rounded-lg px-3 py-2 text-sm font-medium transition-all\",\n active\n ? \"bg-background text-foreground shadow-sm\"\n : \"text-muted-foreground hover:text-foreground\"\n )\n case \"underline\":\n return merge(\n \"border-b-2 px-3 py-2 text-sm font-medium transition-all\",\n active\n ? \"border-primary text-primary\"\n : \"border-transparent text-muted-foreground hover:text-foreground\"\n )\n case \"cards\":\n return merge(\n \"rounded-lg px-3 py-2 text-sm font-medium transition-all\",\n active\n ? \"bg-background text-foreground shadow-sm border border-border\"\n : \"text-muted-foreground hover:text-foreground\"\n )\n default:\n return merge(\n \"rounded-lg px-3 py-2 text-sm font-medium transition-all\",\n active\n ? \"bg-background text-foreground shadow-sm\"\n : \"text-muted-foreground hover:text-foreground\"\n )\n }\n }\n\n const getScaleClasses = () => {\n switch (scale) {\n case \"small\":\n return \"text-xs px-2 py-1\"\n case \"large\":\n return \"text-base px-4 py-3\"\n default:\n return \"text-sm px-3 py-2\"\n }\n }\n\n const handleClick = () => {\n onValueChange?.(value)\n }\n\n return (\n <button\n ref={ref}\n className={merge(\n getStyleClasses(),\n getScaleClasses(),\n \"focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-2\",\n className\n )}\n onClick={handleClick}\n {...props}\n >\n {children}\n </button>\n )\n }\n)\nNavigationItem.displayName = \"NavigationItem\"\n\n/**\n * NavigationContent 컴포넌트의 props / NavigationContent component props\n * @typedef {Object} NavigationContentProps\n * @property {string} value - 탭 값 / Tab value\n * @property {boolean} [active] - 활성 상태 (자동으로 설정됨) / Active state (auto-set)\n * @extends {React.HTMLAttributes<HTMLDivElement>}\n */\nexport interface NavigationContentProps extends React.HTMLAttributes<HTMLDivElement> {\n value: string\n active?: boolean\n}\n\nconst NavigationContent = React.forwardRef<HTMLDivElement, NavigationContentProps>(\n ({ className, active = false, ...props }, ref) => {\n if (!active) return null\n\n return (\n <div\n ref={ref}\n className={merge(\"mt-4\", className)}\n {...props}\n />\n )\n }\n)\nNavigationContent.displayName = \"NavigationContent\"\n\n// 서브컴포넌트 타입 정의\nexport interface NavigationComponent extends React.ForwardRefExoticComponent<NavigationProps & React.RefAttributes<HTMLDivElement>> {\n List: typeof NavigationList\n Item: typeof NavigationItem\n Content: typeof NavigationContent\n}\n\nconst NavigationComponent = Navigation as NavigationComponent\nNavigationComponent.List = NavigationList\nNavigationComponent.Item = NavigationItem\nNavigationComponent.Content = NavigationContent\n\nexport { NavigationComponent as Navigation, NavigationList, NavigationItem, NavigationContent } ","\"use client\"\n\nimport React from \"react\"\nimport { merge } from \"../lib/utils\"\n\n/**\n * Pagination 컴포넌트의 props / Pagination component props\n * @typedef {Object} PaginationProps\n * @property {number} currentPage - 현재 페이지 번호 / Current page number\n * @property {number} totalPages - 전체 페이지 수 / Total number of pages\n * @property {(page: number) => void} onPageChange - 페이지 변경 콜백 / Page change callback\n * @property {boolean} [showFirstLast=true] - 첫/마지막 페이지 버튼 표시 여부 / Show first/last page buttons\n * @property {boolean} [showPrevNext=true] - 이전/다음 페이지 버튼 표시 여부 / Show previous/next page buttons\n * @property {number} [maxVisiblePages=5] - 최대 표시 페이지 수 / Maximum visible page numbers\n * @property {\"sm\" | \"md\" | \"lg\"} [size=\"md\"] - Pagination 크기 / Pagination size\n * @property {\"default\" | \"outlined\" | \"minimal\"} [variant=\"default\"] - Pagination 스타일 변형 / Pagination style variant\n * @property {\"square\" | \"circle\"} [shape=\"square\"] - 버튼 모양 / Button shape\n * @extends {React.HTMLAttributes<HTMLDivElement>}\n */\nexport interface PaginationProps extends React.HTMLAttributes<HTMLDivElement> {\n currentPage: number\n totalPages: number\n onPageChange: (page: number) => void\n showFirstLast?: boolean\n showPrevNext?: boolean\n maxVisiblePages?: number\n size?: \"sm\" | \"md\" | \"lg\"\n variant?: \"default\" | \"outlined\" | \"minimal\"\n shape?: \"square\" | \"circle\"\n}\n\n/**\n * Pagination 컴포넌트 / Pagination component\n * \n * 페이지네이션 컨트롤을 제공하는 컴포넌트입니다.\n * 첫/마지막 페이지, 이전/다음 페이지 버튼을 지원하며,\n * 많은 페이지가 있을 경우 자동으로 생략 표시(...)를 합니다.\n * \n * Component that provides pagination controls.\n * Supports first/last page and previous/next page buttons,\n * and automatically shows ellipsis (...) when there are many pages.\n * \n * @component\n * @example\n * // 기본 사용 / Basic usage\n * const [page, setPage] = useState(1)\n * \n * <Pagination\n * currentPage={page}\n * totalPages={10}\n * onPageChange={setPage}\n * />\n * \n * @example\n * // Outlined 스타일, 원형 버튼 / Outlined style, circular buttons\n * <Pagination\n * currentPage={page}\n * totalPages={20}\n * onPageChange={setPage}\n * variant=\"outlined\"\n * shape=\"circle\"\n * />\n * \n * @param {PaginationProps} props - Pagination 컴포넌트의 props / Pagination component props\n * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref\n * @returns {JSX.Element} Pagination 컴포넌트 / Pagination component\n */\nconst Pagination = React.forwardRef<HTMLDivElement, PaginationProps>(\n ({ \n className, \n currentPage,\n totalPages,\n onPageChange,\n showFirstLast = true,\n showPrevNext = true,\n maxVisiblePages = 5,\n size = \"md\",\n variant = \"default\",\n shape = \"square\",\n ...props \n }, ref) => {\n const getVisiblePages = () => {\n const pages: (number | string)[] = []\n const halfVisible = Math.floor(maxVisiblePages / 2)\n \n let start = Math.max(1, currentPage - halfVisible)\n let end = Math.min(totalPages, currentPage + halfVisible)\n \n // 조정\n if (end - start + 1 < maxVisiblePages) {\n if (start === 1) {\n end = Math.min(totalPages, start + maxVisiblePages - 1)\n } else {\n start = Math.max(1, end - maxVisiblePages + 1)\n }\n }\n \n // 첫 페이지\n if (start > 1) {\n pages.push(1)\n if (start > 2) {\n pages.push(\"...\")\n }\n }\n \n // 중간 페이지들\n for (let i = start; i <= end; i++) {\n pages.push(i)\n }\n \n // 마지막 페이지\n if (end < totalPages) {\n if (end < totalPages - 1) {\n pages.push(\"...\")\n }\n pages.push(totalPages)\n }\n \n return pages\n }\n\n const getSizeClasses = () => {\n switch (size) {\n case \"sm\":\n return \"h-8 px-2 text-sm\" // 32px 높이, 8px 패딩\n case \"lg\":\n return \"h-12 px-4 text-base\" // 48px 높이, 16px 패딩\n default:\n return \"h-10 px-3 text-sm\" // 40px 높이, 12px 패딩\n }\n }\n\n const getShapeClasses = () => {\n switch (shape) {\n case \"circle\":\n return \"rounded-full aspect-square flex items-center justify-center\"\n default:\n return \"rounded-md\"\n }\n }\n\n const getVariantClasses = (isActive: boolean = false) => {\n switch (variant) {\n case \"outlined\":\n return merge(\n \"border border-border\",\n isActive\n ? \"bg-primary border-primary text-primary-foreground\"\n : \"bg-background text-foreground hover:bg-muted\"\n )\n case \"minimal\":\n return merge(\n \"border-0\",\n isActive\n ? \"bg-primary/10 text-primary\"\n : \"bg-transparent text-foreground hover:bg-muted\"\n )\n default:\n return merge(\n \"border-0\",\n isActive\n ? \"bg-primary text-primary-foreground\"\n : \"bg-background text-foreground hover:bg-muted\"\n )\n }\n }\n\n const handlePageClick = (page: number) => {\n if (page >= 1 && page <= totalPages && page !== currentPage) {\n onPageChange(page)\n }\n }\n\n const visiblePages = getVisiblePages()\n\n return (\n <div\n ref={ref}\n className={merge(\n \"flex items-center justify-center gap-1\",\n className\n )}\n {...props}\n >\n {/* 첫 페이지 버튼 */}\n {showFirstLast && currentPage > 1 && (\n <button\n onClick={() => handlePageClick(1)}\n className={merge(\n \"inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n getSizeClasses(),\n getShapeClasses(),\n getVariantClasses()\n )}\n aria-label=\"첫 페이지로 이동\"\n >\n <svg className=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M11 19l-7-7 7-7M19 19l-7-7 7-7\" />\n </svg>\n </button>\n )}\n\n {/* 이전 페이지 버튼 */}\n {showPrevNext && currentPage > 1 && (\n <button\n onClick={() => handlePageClick(currentPage - 1)}\n className={merge(\n \"inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n getSizeClasses(),\n getShapeClasses(),\n getVariantClasses()\n )}\n aria-label=\"이전 페이지로 이동\"\n >\n <svg className=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M15 19l-7-7 7-7\" />\n </svg>\n </button>\n )}\n\n {/* 페이지 번호들 */}\n {visiblePages.map((page, index) => (\n <React.Fragment key={index}>\n {page === \"...\" ? (\n <span className={merge(\n \"inline-flex items-center justify-center px-3 py-2 text-sm font-medium text-muted-foreground\",\n getSizeClasses()\n )}>\n ...\n </span>\n ) : (\n <button\n onClick={() => handlePageClick(page as number)}\n className={merge(\n \"inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n getSizeClasses(),\n getShapeClasses(),\n getVariantClasses(page === currentPage)\n )}\n aria-label={`${page}페이지로 이동`}\n aria-current={page === currentPage ? \"page\" : undefined}\n >\n {page}\n </button>\n )}\n </React.Fragment>\n ))}\n\n {/* 다음 페이지 버튼 */}\n {showPrevNext && currentPage < totalPages && (\n <button\n onClick={() => handlePageClick(currentPage + 1)}\n className={merge(\n \"inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n getSizeClasses(),\n getShapeClasses(),\n getVariantClasses()\n )}\n aria-label=\"다음 페이지로 이동\"\n >\n <svg className=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M9 5l7 7-7 7\" />\n </svg>\n </button>\n )}\n\n {/* 마지막 페이지 버튼 */}\n {showFirstLast && currentPage < totalPages && (\n <button\n onClick={() => handlePageClick(totalPages)}\n className={merge(\n \"inline-flex items-center justify-center font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n getSizeClasses(),\n getShapeClasses(),\n getVariantClasses()\n )}\n aria-label=\"마지막 페이지로 이동\"\n >\n <svg className=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M13 5l7 7-7 7M5 5l7 7-7 7\" />\n </svg>\n </button>\n )}\n </div>\n )\n }\n)\nPagination.displayName = \"Pagination\"\n\n// 편의 컴포넌트들\nexport const PaginationOutlined = React.forwardRef<HTMLDivElement, Omit<PaginationProps, \"variant\">>(\n ({ className, ...props }, ref) => (\n <Pagination ref={ref} variant=\"outlined\" className={className} {...props} />\n )\n)\nPaginationOutlined.displayName = \"PaginationOutlined\"\n\nexport const PaginationMinimal = React.forwardRef<HTMLDivElement, Omit<PaginationProps, \"variant\">>(\n ({ className, ...props }, ref) => (\n <Pagination ref={ref} variant=\"minimal\" className={className} {...props} />\n )\n)\nPaginationMinimal.displayName = \"PaginationMinimal\"\n\n// 복합 컴포넌트들\nexport const PaginationWithInfo = React.forwardRef<HTMLDivElement, PaginationProps & { \n totalItems?: number\n itemsPerPage?: number\n showInfo?: boolean\n}>(\n ({ \n totalItems = 0, \n itemsPerPage = 10, \n showInfo = true, \n className, \n ...props \n }, ref) => {\n const startItem = (props.currentPage - 1) * itemsPerPage + 1\n const endItem = Math.min(props.currentPage * itemsPerPage, totalItems)\n \n return (\n <div className={merge(\"flex flex-col sm:flex-row items-center justify-between gap-4\", className)}>\n {showInfo && (\n <div className=\"text-sm text-foreground\">\n {totalItems > 0 ? (\n <>\n <span className=\"font-medium\">{startItem}</span>\n {\" - \"}\n <span className=\"font-medium\">{endItem}</span>\n {\" of \"}\n <span className=\"font-medium\">{totalItems}</span>\n {\" results\"}\n </>\n ) : (\n \"No results\"\n )}\n </div>\n )}\n <Pagination ref={ref} {...props} />\n </div>\n )\n }\n)\nPaginationWithInfo.displayName = \"PaginationWithInfo\"\n\nexport { Pagination } ","\"use client\"\n\nimport React from \"react\"\nimport { merge } from \"../lib/utils\"\nimport { Icon } from \"./Icon\"\n\n/**\n * PageNavigation 컴포넌트의 props / PageNavigation component props\n * @typedef {Object} PageNavigationProps\n * @property {Object} [prevPage] - 이전 페이지 정보 / Previous page information\n * @property {string} prevPage.title - 이전 페이지 제목 / Previous page title\n * @property {string} prevPage.href - 이전 페이지 링크 / Previous page link\n * @property {Object} [nextPage] - 다음 페이지 정보 / Next page information\n * @property {string} nextPage.title - 다음 페이지 제목 / Next page title\n * @property {string} nextPage.href - 다음 페이지 링크 / Next page link\n * @property {boolean} [showOnMobile=false] - 모바일에서 표시 여부 / Show on mobile\n * @extends {React.HTMLAttributes<HTMLDivElement>}\n */\nexport interface PageNavigationProps extends React.HTMLAttributes<HTMLDivElement> {\n prevPage?: {\n title: string\n href: string\n }\n nextPage?: {\n title: string\n href: string\n }\n showOnMobile?: boolean\n}\n\n/**\n * PageNavigation 컴포넌트 / PageNavigation component\n * \n * 이전/다음 페이지로 이동하는 네비게이션 컴포넌트입니다.\n * 문서 페이지나 가이드 페이지에서 사용하기 적합합니다.\n * \n * Navigation component for moving to previous/next pages.\n * Suitable for documentation or guide pages.\n * \n * @component\n * @example\n * // 기본 사용 / Basic usage\n * <PageNavigation\n * prevPage={{ title: \"이전 페이지\", href: \"/prev\" }}\n * nextPage={{ title: \"다음 페이지\", href: \"/next\" }}\n * />\n * \n * @param {PageNavigationProps} props - PageNavigation 컴포넌트의 props / PageNavigation component props\n * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref\n * @returns {JSX.Element} PageNavigation 컴포넌트 / PageNavigation component\n */\nconst PageNavigation = React.forwardRef<HTMLDivElement, PageNavigationProps>(\n ({ \n className, \n prevPage, \n nextPage, \n showOnMobile = false,\n ...props \n }, ref) => {\n if (!prevPage && !nextPage) {\n return null\n }\n\n return (\n <div\n ref={ref}\n className={merge(\n \"flex items-center justify-between py-4\",\n !showOnMobile && \"hidden md:flex\",\n className\n )}\n {...props}\n >\n {/* 이전 페이지 */}\n <div className=\"flex-1\">\n {prevPage && (\n <a\n href={prevPage.href}\n className=\"group inline-flex items-center text-sm text-muted-foreground hover:text-foreground transition-colors\"\n >\n <Icon \n name=\"chevronLeft\" \n className=\"w-4 h-4 mr-2 transition-transform group-hover:-translate-x-1\" \n />\n <span className=\"hidden sm:inline\">{prevPage.title}</span>\n </a>\n )}\n </div>\n\n {/* 다음 페이지 */}\n <div className=\"flex-1 flex justify-end\">\n {nextPage && (\n <a\n href={nextPage.href}\n className=\"group inline-flex items-center text-sm text-muted-foreground hover:text-foreground transition-colors\"\n >\n <span className=\"hidden sm:inline mr-2\">{nextPage.title}</span>\n <Icon \n name=\"chevronRight\" \n className=\"w-4 h-4 transition-transform group-hover:translate-x-1\" \n />\n </a>\n )}\n </div>\n </div>\n )\n }\n)\nPageNavigation.displayName = \"PageNavigation\"\n\nexport { PageNavigation } ","'use client'\n\nimport React, { useState, useEffect } from 'react'\nimport { merge } from '../lib/utils'\nimport { LoadingSpinner } from './LoadingSpinner'\n\n/**\n * PageTransition 컴포넌트의 props / PageTransition component props\n * @typedef {Object} PageTransitionProps\n * @property {React.ReactNode} children - 페이지 내용 / Page content\n * @property {string} [className] - 추가 CSS 클래스 / Additional CSS class\n * @property {number} [duration=300] - 전환 지속 시간 (ms) / Transition duration (ms)\n * @property {'fade' | 'slide' | 'scale' | 'flip'} [variant='fade'] - 전환 애니메이션 타입 / Transition animation type\n * @property {'default' | 'dots' | 'bars' | 'ring' | 'ripple'} [loadingVariant='ripple'] - 로딩 스피너 타입 / Loading spinner type\n * @property {string} [loadingText='페이지 로딩 중...'] - 로딩 텍스트 / Loading text\n * @property {boolean} [showLoading=true] - 로딩 표시 여부 / Show loading\n * @property {() => void} [onTransitionStart] - 전환 시작 콜백 / Transition start callback\n * @property {() => void} [onTransitionEnd] - 전환 종료 콜백 / Transition end callback\n */\nexport interface PageTransitionProps {\n children: React.ReactNode\n className?: string\n duration?: number\n variant?: 'fade' | 'slide' | 'scale' | 'flip'\n loadingVariant?: 'default' | 'dots' | 'bars' | 'ring' | 'ripple'\n loadingText?: string\n showLoading?: boolean\n onTransitionStart?: () => void\n onTransitionEnd?: () => void\n}\n\n/**\n * PageTransition 컴포넌트 / PageTransition component\n * \n * 페이지 전환 애니메이션을 제공하는 컴포넌트입니다.\n * 다양한 전환 효과와 로딩 스피너를 지원합니다.\n * \n * Component that provides page transition animations.\n * Supports various transition effects and loading spinners.\n * \n * @component\n * @example\n * // 기본 사용 / Basic usage\n * <PageTransition>\n * <div>페이지 내용</div>\n * </PageTransition>\n * \n * @example\n * // Slide 전환 / Slide transition\n * <PageTransition\n * variant=\"slide\"\n * duration={500}\n * loadingVariant=\"dots\"\n * >\n * <div>페이지 내용</div>\n * </PageTransition>\n * \n * @param {PageTransitionProps} props - PageTransition 컴포넌트의 props / PageTransition component props\n * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref\n * @returns {JSX.Element} PageTransition 컴포넌트 / PageTransition component\n */\nexport const PageTransition = React.forwardRef<HTMLDivElement, PageTransitionProps>(({\n children,\n className,\n duration = 300,\n variant = 'fade',\n loadingVariant = 'ripple',\n loadingText = '페이지 로딩 중...',\n showLoading = true,\n onTransitionStart,\n onTransitionEnd\n}, ref) => {\n const [isLoading, setIsLoading] = useState(true)\n const [isVisible, setIsVisible] = useState(false)\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setIsLoading(false)\n setIsVisible(true)\n onTransitionEnd?.()\n }, duration)\n\n onTransitionStart?.()\n\n return () => clearTimeout(timer)\n }, [duration, onTransitionStart, onTransitionEnd])\n\n const transitionClasses = {\n fade: merge(\n 'transition-opacity duration-300 ease-in-out',\n isVisible ? 'opacity-100' : 'opacity-0'\n ),\n slide: merge(\n 'transition-transform duration-300 ease-in-out',\n isVisible ? 'translate-x-0' : 'translate-x-full'\n ),\n scale: merge(\n 'transition-all duration-300 ease-in-out',\n isVisible ? 'scale-100 opacity-100' : 'scale-95 opacity-0'\n ),\n flip: merge(\n 'transition-all duration-500 ease-in-out',\n isVisible ? 'rotate-y-0 opacity-100' : 'rotate-y-90 opacity-0'\n )\n }\n\n if (isLoading && showLoading) {\n return (\n <div className={merge('flex flex-col items-center justify-center min-h-screen bg-gradient-to-br from-indigo-50 to-purple-50 dark:from-slate-900 dark:to-slate-800', className)}>\n <LoadingSpinner\n size=\"lg\"\n variant={loadingVariant}\n text={loadingText}\n />\n </div>\n )\n }\n\n return (\n <div\n ref={ref}\n className={merge(\n 'w-full',\n transitionClasses[variant],\n className\n )}\n style={{ transitionDuration: `${duration}ms` }}\n >\n {children}\n </div>\n )\n})\n\nPageTransition.displayName = 'PageTransition'\n\n// Convenience components for different transition types\nexport const FadeTransition = React.forwardRef<HTMLDivElement, Omit<PageTransitionProps, 'variant'>>((props, ref) => (\n <PageTransition ref={ref} variant=\"fade\" {...props} />\n))\n\nexport const SlideTransition = React.forwardRef<HTMLDivElement, Omit<PageTransitionProps, 'variant'>>((props, ref) => (\n <PageTransition ref={ref} variant=\"slide\" {...props} />\n))\n\nexport const ScaleTransition = React.forwardRef<HTMLDivElement, Omit<PageTransitionProps, 'variant'>>((props, ref) => (\n <PageTransition ref={ref} variant=\"scale\" {...props} />\n))\n\nexport const FlipTransition = React.forwardRef<HTMLDivElement, Omit<PageTransitionProps, 'variant'>>((props, ref) => (\n <PageTransition ref={ref} variant=\"flip\" {...props} />\n))\n\n// Add displayName for convenience components\nFadeTransition.displayName = 'FadeTransition'\nSlideTransition.displayName = 'SlideTransition'\nScaleTransition.displayName = 'ScaleTransition'\nFlipTransition.displayName = 'FlipTransition' "]}
|
|
1
|
+
{"version":3,"sources":["../src/components/PageTransition.tsx"],"names":["PageTransition","React","children","dotProp","style","duration","variant","loadingVariant","loadingText","showLoading","onTransitionStart","onTransitionEnd","ref","isLoading","setIsLoading","useState","isVisible","setIsVisible","useEffect","timer","transitionClasses","jsx","resolveDot","LoadingSpinner","mergeStyles","FadeTransition","props","SlideTransition","ScaleTransition","FlipTransition"],"mappings":"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","file":"navigation.mjs","sourcesContent":["'use client'\n\nimport React, { useState, useEffect } from 'react'\nimport { LoadingSpinner } from './LoadingSpinner'\nimport { mergeStyles, resolveDot } from '../hooks/useDotMap'\n\n/**\n * PageTransition 컴포넌트의 props / PageTransition component props\n * @typedef {Object} PageTransitionProps\n * @property {React.ReactNode} children - 페이지 내용 / Page content\n * @property {number} [duration=300] - 전환 지속 시간 (ms) / Transition duration (ms)\n * @property {'fade' | 'slide' | 'scale' | 'flip'} [variant='fade'] - 전환 애니메이션 타입 / Transition animation type\n * @property {'default' | 'dots' | 'bars' | 'ring' | 'ripple'} [loadingVariant='ripple'] - 로딩 스피너 타입 / Loading spinner type\n * @property {string} [loadingText='페이지 로딩 중...'] - 로딩 텍스트 / Loading text\n * @property {boolean} [showLoading=true] - 로딩 표시 여부 / Show loading\n * @property {() => void} [onTransitionStart] - 전환 시작 콜백 / Transition start callback\n * @property {() => void} [onTransitionEnd] - 전환 종료 콜백 / Transition end callback\n */\nexport interface PageTransitionProps {\n children: React.ReactNode\n dot?: string\n style?: React.CSSProperties\n duration?: number\n variant?: 'fade' | 'slide' | 'scale' | 'flip'\n loadingVariant?: 'default' | 'dots' | 'bars' | 'ring' | 'ripple'\n loadingText?: string\n showLoading?: boolean\n onTransitionStart?: () => void\n onTransitionEnd?: () => void\n}\n\n/**\n * PageTransition 컴포넌트 / PageTransition component\n *\n * 페이지 전환 애니메이션을 제공하는 컴포넌트입니다.\n * 다양한 전환 효과와 로딩 스피너를 지원합니다.\n *\n * Component that provides page transition animations.\n * Supports various transition effects and loading spinners.\n *\n * @component\n * @example\n * // 기본 사용 / Basic usage\n * <PageTransition>\n * <div>페이지 내용</div>\n * </PageTransition>\n *\n * @example\n * // Slide 전환 / Slide transition\n * <PageTransition\n * variant=\"slide\"\n * duration={500}\n * loadingVariant=\"dots\"\n * >\n * <div>페이지 내용</div>\n * </PageTransition>\n *\n * @param {PageTransitionProps} props - PageTransition 컴포넌트의 props / PageTransition component props\n * @param {React.Ref<HTMLDivElement>} ref - div 요소 ref / div element ref\n * @returns {JSX.Element} PageTransition 컴포넌트 / PageTransition component\n */\nexport const PageTransition = React.forwardRef<HTMLDivElement, PageTransitionProps>(({\n children,\n dot: dotProp,\n style,\n duration = 300,\n variant = 'fade',\n loadingVariant = 'ripple',\n loadingText = '페이지 로딩 중...',\n showLoading = true,\n onTransitionStart,\n onTransitionEnd\n}, ref) => {\n const [isLoading, setIsLoading] = useState(true)\n const [isVisible, setIsVisible] = useState(false)\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setIsLoading(false)\n setIsVisible(true)\n onTransitionEnd?.()\n }, duration)\n\n onTransitionStart?.()\n\n return () => clearTimeout(timer)\n }, [duration, onTransitionStart, onTransitionEnd])\n\n const transitionClasses = {\n fade: isVisible\n ? 'transition-opacity duration-300 ease-in-out opacity-100'\n : 'transition-opacity duration-300 ease-in-out opacity-0',\n slide: isVisible\n ? 'transition-transform duration-300 ease-in-out translate-x-0'\n : 'transition-transform duration-300 ease-in-out translate-x-full',\n scale: isVisible\n ? 'transition-all duration-300 ease-in-out scale-100 opacity-100'\n : 'transition-all duration-300 ease-in-out scale-95 opacity-0',\n flip: isVisible\n ? 'transition-all duration-500 ease-in-out rotate-y-0 opacity-100'\n : 'transition-all duration-500 ease-in-out rotate-y-90 opacity-0',\n }\n\n if (isLoading && showLoading) {\n return (\n <div style={resolveDot('flex flex-col items-center justify-center min-h-screen bg-gradient-to-br from-indigo-50 to-purple-50 dark:from-slate-900 dark:to-slate-800')}>\n <LoadingSpinner\n size=\"lg\"\n variant={loadingVariant}\n text={loadingText}\n />\n </div>\n )\n }\n\n return (\n <div\n ref={ref}\n style={mergeStyles(\n resolveDot('w-full'),\n resolveDot(transitionClasses[variant]),\n { transitionDuration: `${duration}ms` },\n resolveDot(dotProp),\n style\n )}\n >\n {children}\n </div>\n )\n})\n\nPageTransition.displayName = 'PageTransition'\n\n// Convenience components for different transition types\nexport const FadeTransition = React.forwardRef<HTMLDivElement, Omit<PageTransitionProps, 'variant'>>((props, ref) => (\n <PageTransition ref={ref} variant=\"fade\" {...props} />\n))\n\nexport const SlideTransition = React.forwardRef<HTMLDivElement, Omit<PageTransitionProps, 'variant'>>((props, ref) => (\n <PageTransition ref={ref} variant=\"slide\" {...props} />\n))\n\nexport const ScaleTransition = React.forwardRef<HTMLDivElement, Omit<PageTransitionProps, 'variant'>>((props, ref) => (\n <PageTransition ref={ref} variant=\"scale\" {...props} />\n))\n\nexport const FlipTransition = React.forwardRef<HTMLDivElement, Omit<PageTransitionProps, 'variant'>>((props, ref) => (\n <PageTransition ref={ref} variant=\"flip\" {...props} />\n))\n\n// Add displayName for convenience components\nFadeTransition.displayName = 'FadeTransition'\nSlideTransition.displayName = 'SlideTransition'\nScaleTransition.displayName = 'ScaleTransition'\nFlipTransition.displayName = 'FlipTransition'\n"]}
|