arco-clone-react 1.3.1 → 1.5.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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/Container/Container.module.css","../src/components/Grid/Grid.module.css","../src/components/Grid/GridItem.module.css","../src/components/Stack/Stack.module.css","../src/components/Inline/Inline.module.css","../src/components/Flex/Flex.module.css","../src/components/Badge/Badge.module.css","../src/components/Button/Button.module.css","../src/components/Collapse/Collapse.module.css","../src/components/Tabs/Tabs.module.css","../src/components/Carousel/Carousel.module.css"],"sourcesContent":["/**\n * Container Component Styles\n * Responsive container with max-widths at each breakpoint\n */\n\n.container {\n width: 100%;\n margin-left: auto;\n margin-right: auto;\n max-width: var(--container-max-width, 100%);\n}\n\n/* Padded variant */\n.container--padded {\n padding-left: var(--container-padding, 16px);\n padding-right: var(--container-padding, 16px);\n}\n\n/* Fluid variant - no max-width */\n.container--fluid {\n max-width: none;\n}\n\n/* Responsive max-widths (when not fluid) */\n@media (min-width: 576px) {\n .container:not(.container--fluid) {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container:not(.container--fluid) {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container:not(.container--fluid) {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container:not(.container--fluid) {\n max-width: 1152px;\n }\n}\n\n@media (min-width: 1600px) {\n .container:not(.container--fluid) {\n max-width: 1536px;\n }\n}\n\n@media (min-width: 2000px) {\n .container:not(.container--fluid) {\n max-width: 1920px;\n }\n}\n","/**\n * Grid Component Styles\n * 24-column responsive grid system based on CSS Grid\n */\n\n.grid {\n display: grid;\n grid-template-columns: repeat(24, 1fr);\n gap: var(--grid-gutter-row, 0) var(--grid-gutter-col, 0);\n}\n\n/* Alignment */\n.grid--align-start {\n align-items: start;\n}\n\n.grid--align-center {\n align-items: center;\n}\n\n.grid--align-end {\n align-items: end;\n}\n\n.grid--align-stretch {\n align-items: stretch;\n}\n\n.grid--align-baseline {\n align-items: baseline;\n}\n\n/* Justify */\n.grid--justify-start {\n justify-content: start;\n}\n\n.grid--justify-center {\n justify-content: center;\n}\n\n.grid--justify-end {\n justify-content: end;\n}\n\n.grid--justify-space-between {\n justify-content: space-between;\n}\n\n.grid--justify-space-around {\n justify-content: space-around;\n}\n\n.grid--justify-space-evenly {\n justify-content: space-evenly;\n}\n","/**\n * GridItem Component Styles\n */\n\n.gridItem {\n /* Prevent grid blowout */\n min-width: 0;\n}\n\n.gridItem--flex {\n display: flex;\n}\n","/**\n * Stack Component Styles\n * One-directional flex container with consistent spacing\n */\n\n.stack {\n display: flex;\n gap: var(--stack-spacing, 16px);\n}\n\n/* Direction */\n.stack--vertical {\n flex-direction: column;\n}\n\n.stack--horizontal {\n flex-direction: row;\n}\n\n/* Wrap */\n.stack--wrap {\n flex-wrap: wrap;\n}\n\n/* Alignment */\n.stack--align-start {\n align-items: start;\n}\n\n.stack--align-center {\n align-items: center;\n}\n\n.stack--align-end {\n align-items: end;\n}\n\n.stack--align-stretch {\n align-items: stretch;\n}\n\n.stack--align-baseline {\n align-items: baseline;\n}\n\n/* Justify */\n.stack--justify-start {\n justify-content: start;\n}\n\n.stack--justify-center {\n justify-content: center;\n}\n\n.stack--justify-end {\n justify-content: end;\n}\n\n.stack--justify-space-between {\n justify-content: space-between;\n}\n\n.stack--justify-space-around {\n justify-content: space-around;\n}\n\n.stack--justify-space-evenly {\n justify-content: space-evenly;\n}\n\n/* Divider */\n.stackDivider {\n flex-shrink: 0;\n}\n\n.stack--vertical .stackDivider {\n width: 100%;\n height: 1px;\n}\n\n.stack--horizontal .stackDivider {\n width: 1px;\n height: 100%;\n}\n","/**\n * Inline Component Styles\n * Wrapping flex container for inline content\n */\n\n.inline {\n display: flex;\n flex-wrap: wrap;\n gap: var(--inline-spacing, 8px);\n}\n\n/* Alignment */\n.inline--align-start {\n align-items: start;\n}\n\n.inline--align-center {\n align-items: center;\n}\n\n.inline--align-end {\n align-items: end;\n}\n\n.inline--align-stretch {\n align-items: stretch;\n}\n\n.inline--align-baseline {\n align-items: baseline;\n}\n\n/* Justify */\n.inline--justify-start {\n justify-content: start;\n}\n\n.inline--justify-center {\n justify-content: center;\n}\n\n.inline--justify-end {\n justify-content: end;\n}\n\n.inline--justify-space-between {\n justify-content: space-between;\n}\n\n.inline--justify-space-around {\n justify-content: space-around;\n}\n\n.inline--justify-space-evenly {\n justify-content: space-evenly;\n}\n","/**\n * Flex Component Styles\n * Generic flex container with full control\n */\n\n.flex {\n display: flex;\n gap: var(--flex-gap, 0);\n}\n\n/* Inline variant */\n.flex--inline {\n display: inline-flex;\n}\n\n/* Direction */\n.flex--row {\n flex-direction: row;\n}\n\n.flex--row-reverse {\n flex-direction: row-reverse;\n}\n\n.flex--column {\n flex-direction: column;\n}\n\n.flex--column-reverse {\n flex-direction: column-reverse;\n}\n\n/* Wrap */\n.flex--nowrap {\n flex-wrap: nowrap;\n}\n\n.flex--wrap {\n flex-wrap: wrap;\n}\n\n.flex--wrap-reverse {\n flex-wrap: wrap-reverse;\n}\n\n/* Alignment */\n.flex--align-start {\n align-items: start;\n}\n\n.flex--align-center {\n align-items: center;\n}\n\n.flex--align-end {\n align-items: end;\n}\n\n.flex--align-stretch {\n align-items: stretch;\n}\n\n.flex--align-baseline {\n align-items: baseline;\n}\n\n/* Justify */\n.flex--justify-start {\n justify-content: start;\n}\n\n.flex--justify-center {\n justify-content: center;\n}\n\n.flex--justify-end {\n justify-content: end;\n}\n\n.flex--justify-space-between {\n justify-content: space-between;\n}\n\n.flex--justify-space-around {\n justify-content: space-around;\n}\n\n.flex--justify-space-evenly {\n justify-content: space-evenly;\n}\n","/**\n * Badge Component Styles\n *\n * Styling for Badge component with variants and sizes.\n */\n\n.badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-weight: 600;\n border-radius: 12px;\n white-space: nowrap;\n transition: all 0.2s ease;\n font-family:\n 'Nunito Sans',\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n sans-serif;\n}\n\n/* Sizes */\n.small {\n padding: 0 6px;\n height: 18px;\n font-size: 10px;\n line-height: 18px;\n}\n\n.medium {\n padding: 0 8px;\n height: 22px;\n font-size: 12px;\n line-height: 22px;\n}\n\n.large {\n padding: 0 12px;\n height: 28px;\n font-size: 14px;\n line-height: 28px;\n}\n\n/* Dot variant */\n.dot {\n padding: 0;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n}\n\n.dot.small {\n width: 6px;\n height: 6px;\n}\n\n.dot.medium {\n width: 8px;\n height: 8px;\n}\n\n.dot.large {\n width: 10px;\n height: 10px;\n}\n\n/* Variants - Default */\n.default {\n background-color: #f2f3f5;\n color: #4e5969;\n border: 1px solid #e5e6eb;\n}\n\n/* Variants - Primary */\n.primary {\n background-color: #e8f3ff;\n color: #165dff;\n border: 1px solid #bedaff;\n}\n\n/* Variants - Success */\n.success {\n background-color: #e8ffea;\n color: #00b42a;\n border: 1px solid #aff0b5;\n}\n\n/* Variants - Warning */\n.warning {\n background-color: #fff7e8;\n color: #ff7d00;\n border: 1px solid #ffcf8b;\n}\n\n/* Variants - Danger */\n.danger {\n background-color: #ffece8;\n color: #f53f3f;\n border: 1px solid #ffb9aa;\n}\n","/**\n * Button Component Styles\n *\n * Styling for Button component with variants and sizes.\n */\n\n.button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n font-weight: 600;\n border-radius: 4px;\n border: 1px solid transparent;\n cursor: pointer;\n transition: all 0.2s ease;\n font-family:\n 'Nunito Sans',\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n sans-serif;\n white-space: nowrap;\n user-select: none;\n}\n\n.button:focus-visible {\n outline: 2px solid #165dff;\n outline-offset: 2px;\n}\n\n/* Sizes */\n.small {\n height: 28px;\n padding: 0 12px;\n font-size: 12px;\n line-height: 26px;\n}\n\n.medium {\n height: 36px;\n padding: 0 16px;\n font-size: 14px;\n line-height: 34px;\n}\n\n.large {\n height: 44px;\n padding: 0 20px;\n font-size: 16px;\n line-height: 42px;\n}\n\n/* Full width */\n.fullWidth {\n width: 100%;\n}\n\n/* Disabled state */\n.button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n/* Loading state */\n.loading {\n pointer-events: none;\n opacity: 0.7;\n}\n\n/* Variants - Primary */\n.primary {\n background-color: #165dff;\n color: #ffffff;\n border-color: #165dff;\n}\n\n.primary:hover:not(:disabled) {\n background-color: #4080ff;\n border-color: #4080ff;\n}\n\n.primary:active:not(:disabled) {\n background-color: #0e42d2;\n border-color: #0e42d2;\n}\n\n/* Variants - Secondary */\n.secondary {\n background-color: #ffffff;\n color: #1d2129;\n border-color: #c9cdd4;\n}\n\n.secondary:hover:not(:disabled) {\n background-color: #f7f8fa;\n border-color: #a9aeb8;\n}\n\n.secondary:active:not(:disabled) {\n background-color: #f2f3f5;\n border-color: #86909c;\n}\n\n/* Variants - Success */\n.success {\n background-color: #00b42a;\n color: #ffffff;\n border-color: #00b42a;\n}\n\n.success:hover:not(:disabled) {\n background-color: #23c343;\n border-color: #23c343;\n}\n\n.success:active:not(:disabled) {\n background-color: #009a29;\n border-color: #009a29;\n}\n\n/* Variants - Warning */\n.warning {\n background-color: #ff7d00;\n color: #ffffff;\n border-color: #ff7d00;\n}\n\n.warning:hover:not(:disabled) {\n background-color: #ff9a2e;\n border-color: #ff9a2e;\n}\n\n.warning:active:not(:disabled) {\n background-color: #d25f00;\n border-color: #d25f00;\n}\n\n/* Variants - Danger */\n.danger {\n background-color: #f53f3f;\n color: #ffffff;\n border-color: #f53f3f;\n}\n\n.danger:hover:not(:disabled) {\n background-color: #f76560;\n border-color: #f76560;\n}\n\n.danger:active:not(:disabled) {\n background-color: #cb272d;\n border-color: #cb272d;\n}\n\n/* Variants - Ghost */\n.ghost {\n background-color: transparent;\n color: #4e5969;\n border-color: transparent;\n}\n\n.ghost:hover:not(:disabled) {\n background-color: #f2f3f5;\n}\n\n.ghost:active:not(:disabled) {\n background-color: #e5e6eb;\n}\n\n/* Loading spinner */\n.spinner {\n display: inline-block;\n width: 14px;\n height: 14px;\n border: 2px solid currentColor;\n border-radius: 50%;\n border-top-color: transparent;\n animation: spin 0.6s linear infinite;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n","/**\n * Collapse Component Styles\n *\n * Styling for Collapse component with smooth animations.\n */\n\n.collapse {\n display: block;\n background-color: #ffffff;\n overflow: hidden;\n}\n\n.bordered {\n border: 1px solid #e5e6eb;\n border-radius: 4px;\n}\n\n.disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n/* Header */\n.header {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n user-select: none;\n transition: background-color 0.2s ease;\n font-family:\n 'Nunito Sans',\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n sans-serif;\n font-weight: 600;\n color: #1d2129;\n}\n\n.header:hover:not(.disabled .header) {\n background-color: #f7f8fa;\n}\n\n.header:focus-visible {\n outline: 2px solid #165dff;\n outline-offset: -2px;\n}\n\n.disabled .header {\n cursor: not-allowed;\n}\n\n/* Sizes */\n.small .header {\n padding: 8px 12px;\n font-size: 12px;\n}\n\n.medium .header {\n padding: 12px 16px;\n font-size: 14px;\n}\n\n.large .header {\n padding: 16px 20px;\n font-size: 16px;\n}\n\n/* Icon */\n.icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 16px;\n height: 16px;\n font-size: 10px;\n color: #86909c;\n transition: transform 0.3s ease;\n flex-shrink: 0;\n}\n\n.expanded .icon {\n transform: rotate(0deg);\n}\n\n.header:not(.expanded) .icon {\n transform: rotate(-90deg);\n}\n\n/* Header content */\n.headerContent {\n flex: 1;\n}\n\n/* Content */\n.content {\n height: 0;\n overflow: hidden;\n transition: height 0.3s ease;\n}\n\n.contentExpanded {\n overflow: visible;\n}\n\n.contentInner {\n padding: 0 16px 16px 16px;\n color: #4e5969;\n font-family:\n 'Nunito Sans',\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n sans-serif;\n}\n\n.small .contentInner {\n padding: 0 12px 8px 12px;\n font-size: 12px;\n}\n\n.medium .contentInner {\n padding: 0 16px 12px 16px;\n font-size: 14px;\n}\n\n.large .contentInner {\n padding: 0 20px 16px 20px;\n font-size: 16px;\n}\n","/* Tabs Component Styles */\n\n.tabs {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* Tab List */\n.tabList {\n display: flex;\n gap: 0;\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n/* Individual Tab */\n.tab {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0.75rem 1rem;\n font-size: 0.875rem;\n font-weight: 500;\n color: var(--color-text-secondary, #666);\n background: transparent;\n border: none;\n cursor: pointer;\n transition: all 0.2s ease;\n white-space: nowrap;\n outline: none;\n}\n\n.tab:hover:not(.disabled) {\n color: var(--color-primary, #1890ff);\n background: var(--color-bg-hover, rgba(0, 0, 0, 0.04));\n}\n\n.tab:focus-visible {\n outline: 2px solid var(--color-primary, #1890ff);\n outline-offset: -2px;\n z-index: 1;\n}\n\n.tab.active {\n color: var(--color-primary, #1890ff);\n /* Removed font-weight change to prevent layout shift */\n /* The color change is sufficient to indicate active state */\n}\n\n.tab.disabled {\n color: var(--color-text-disabled, #ccc);\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n/* Icon */\n.icon {\n display: inline-flex;\n font-size: 1em;\n}\n\n/* Label */\n.label {\n display: inline-flex;\n}\n\n/* Content */\n.content {\n padding: 1rem 0;\n min-height: 100px;\n}\n\n.content.animated {\n animation: fadeIn 0.3s ease;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n transform: translateY(-4px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n/* Variant: Line (default) */\n.tabs.line .tabList {\n border-bottom: 2px solid var(--color-border, #e0e0e0);\n}\n\n.tabs.line .tab {\n border-bottom: 2px solid transparent;\n margin-bottom: -2px;\n}\n\n.tabs.line .tab.active {\n border-bottom-color: var(--color-primary, #1890ff);\n}\n\n/* Variant: Card */\n.tabs.card .tabList {\n gap: 0.25rem;\n background: var(--color-bg, #f5f5f5);\n padding: 0.25rem;\n border-radius: 0.5rem;\n}\n\n.tabs.card .tab {\n border-radius: 0.375rem;\n}\n\n.tabs.card .tab.active {\n background: var(--color-bg-white, #fff);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n\n/* Variant: Pill */\n.tabs.pill .tabList {\n gap: 0.5rem;\n}\n\n.tabs.pill .tab {\n border-radius: 9999px;\n padding: 0.5rem 1.25rem;\n border: 1px solid var(--color-border, #e0e0e0);\n}\n\n.tabs.pill .tab.active {\n background: var(--color-primary, #1890ff);\n color: white;\n border-color: var(--color-primary, #1890ff);\n}\n\n.tabs.pill .tab.active:hover {\n background: var(--color-primary-dark, #1677d2);\n color: white;\n}\n\n/* Size: Small */\n.tabs.small .tab {\n padding: 0.5rem 0.75rem;\n font-size: 0.75rem;\n}\n\n.tabs.small .content {\n padding: 0.75rem 0;\n}\n\n/* Size: Medium (default) */\n.tabs.medium .tab {\n padding: 0.75rem 1rem;\n font-size: 0.875rem;\n}\n\n.tabs.medium .content {\n padding: 1rem 0;\n}\n\n/* Size: Large */\n.tabs.large .tab {\n padding: 1rem 1.5rem;\n font-size: 1rem;\n}\n\n.tabs.large .content {\n padding: 1.5rem 0;\n}\n\n/* Full Width */\n.tabs.fullWidth .tabList {\n display: grid;\n}\n\n.tabs.fullWidth .tab {\n flex: 1;\n}\n","/* Carousel Component Styles */\n\n.carousel {\n position: relative;\n width: 100%;\n overflow: hidden;\n user-select: none;\n}\n\n/* Items Container */\n.itemsContainer {\n display: flex;\n width: 100%;\n will-change: transform;\n user-select: none;\n -webkit-user-drag: none;\n}\n\n.itemsContainer.animated {\n transition: transform 0.3s ease;\n}\n\n/* Individual Item */\n.item {\n flex: 0 0 100%;\n width: 100%;\n min-width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Navigation Arrows */\n.arrow {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n z-index: 10;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0.75rem;\n background: rgba(255, 255, 255, 0.9);\n border: none;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.2s ease;\n color: var(--color-text-primary, #333);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n}\n\n.arrow:hover:not(:disabled) {\n background: rgba(255, 255, 255, 1);\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);\n transform: translateY(-50%) scale(1.05);\n}\n\n.arrow:focus-visible {\n outline: 2px solid var(--color-primary, #1890ff);\n outline-offset: 2px;\n}\n\n.arrow:active:not(:disabled) {\n transform: translateY(-50%) scale(0.95);\n}\n\n.arrow:disabled {\n opacity: 0.3;\n cursor: not-allowed;\n background: rgba(255, 255, 255, 0.6);\n box-shadow: none;\n}\n\n.arrowPrev {\n left: 1rem;\n}\n\n.arrowNext {\n right: 1rem;\n}\n\n/* Dots Indicators */\n.dots {\n position: absolute;\n bottom: 1rem;\n left: 50%;\n transform: translateX(-50%);\n z-index: 10;\n display: flex;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n background: rgba(0, 0, 0, 0.4);\n border-radius: 9999px;\n backdrop-filter: blur(4px);\n}\n\n.dot {\n width: 0.5rem;\n height: 0.5rem;\n padding: 0;\n background: rgba(255, 255, 255, 0.5);\n border: none;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\n.dot:hover {\n background: rgba(255, 255, 255, 0.8);\n transform: scale(1.2);\n}\n\n.dot:focus-visible {\n outline: 2px solid var(--color-primary, #1890ff);\n outline-offset: 2px;\n}\n\n.dotActive {\n background: white;\n width: 1.5rem;\n border-radius: 0.25rem;\n}\n\n/* Size: Small */\n.carousel.small {\n min-height: 200px;\n}\n\n.carousel.small .arrow {\n padding: 0.5rem;\n}\n\n.carousel.small .arrow svg {\n width: 16px;\n height: 16px;\n}\n\n.carousel.small .arrowPrev {\n left: 0.5rem;\n}\n\n.carousel.small .arrowNext {\n right: 0.5rem;\n}\n\n.carousel.small .dots {\n bottom: 0.5rem;\n padding: 0.375rem 0.75rem;\n}\n\n.carousel.small .dot {\n width: 0.375rem;\n height: 0.375rem;\n}\n\n.carousel.small .dotActive {\n width: 1rem;\n}\n\n/* Size: Medium (default) */\n.carousel.medium {\n min-height: 300px;\n}\n\n.carousel.medium .arrow {\n padding: 0.75rem;\n}\n\n.carousel.medium .arrow svg {\n width: 24px;\n height: 24px;\n}\n\n.carousel.medium .arrowPrev {\n left: 1rem;\n}\n\n.carousel.medium .arrowNext {\n right: 1rem;\n}\n\n.carousel.medium .dots {\n bottom: 1rem;\n padding: 0.5rem 1rem;\n}\n\n.carousel.medium .dot {\n width: 0.5rem;\n height: 0.5rem;\n}\n\n.carousel.medium .dotActive {\n width: 1.5rem;\n}\n\n/* Size: Large */\n.carousel.large {\n min-height: 400px;\n}\n\n.carousel.large .arrow {\n padding: 1rem;\n}\n\n.carousel.large .arrow svg {\n width: 32px;\n height: 32px;\n}\n\n.carousel.large .arrowPrev {\n left: 1.5rem;\n}\n\n.carousel.large .arrowNext {\n right: 1.5rem;\n}\n\n.carousel.large .dots {\n bottom: 1.5rem;\n padding: 0.625rem 1.25rem;\n}\n\n.carousel.large .dot {\n width: 0.625rem;\n height: 0.625rem;\n}\n\n.carousel.large .dotActive {\n width: 2rem;\n}\n\n/* Responsive adjustments */\n@media (max-width: 768px) {\n .arrow {\n padding: 0.5rem;\n }\n\n .arrow svg {\n width: 20px;\n height: 20px;\n }\n\n .arrowPrev {\n left: 0.5rem !important;\n }\n\n .arrowNext {\n right: 0.5rem !important;\n }\n\n .dots {\n bottom: 0.5rem !important;\n padding: 0.375rem 0.75rem !important;\n }\n\n .dot {\n width: 0.375rem !important;\n height: 0.375rem !important;\n }\n\n .dotActive {\n width: 1rem !important;\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/components/Container/Container.module.css","../src/components/Grid/Grid.module.css","../src/components/Grid/GridItem.module.css","../src/components/Stack/Stack.module.css","../src/components/Inline/Inline.module.css","../src/components/Flex/Flex.module.css","../src/components/Badge/Badge.module.css","../src/components/Button/Button.module.css","../src/components/Collapse/Collapse.module.css","../src/components/Tabs/Tabs.module.css","../src/components/Carousel/Carousel.module.css","../src/components/Drawer/Drawer.module.css"],"sourcesContent":["/**\n * Container Component Styles\n * Responsive container with max-widths at each breakpoint\n */\n\n.container {\n width: 100%;\n margin-left: auto;\n margin-right: auto;\n max-width: var(--container-max-width, 100%);\n}\n\n/* Padded variant */\n.container--padded {\n padding-left: var(--container-padding, 16px);\n padding-right: var(--container-padding, 16px);\n}\n\n/* Fluid variant - no max-width */\n.container--fluid {\n max-width: none;\n}\n\n/* Responsive max-widths (when not fluid) */\n@media (min-width: 576px) {\n .container:not(.container--fluid) {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container:not(.container--fluid) {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container:not(.container--fluid) {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container:not(.container--fluid) {\n max-width: 1152px;\n }\n}\n\n@media (min-width: 1600px) {\n .container:not(.container--fluid) {\n max-width: 1536px;\n }\n}\n\n@media (min-width: 2000px) {\n .container:not(.container--fluid) {\n max-width: 1920px;\n }\n}\n","/**\n * Grid Component Styles\n * 24-column responsive grid system based on CSS Grid\n */\n\n.grid {\n display: grid;\n grid-template-columns: repeat(24, 1fr);\n gap: var(--grid-gutter-row, 0) var(--grid-gutter-col, 0);\n}\n\n/* Alignment */\n.grid--align-start {\n align-items: start;\n}\n\n.grid--align-center {\n align-items: center;\n}\n\n.grid--align-end {\n align-items: end;\n}\n\n.grid--align-stretch {\n align-items: stretch;\n}\n\n.grid--align-baseline {\n align-items: baseline;\n}\n\n/* Justify */\n.grid--justify-start {\n justify-content: start;\n}\n\n.grid--justify-center {\n justify-content: center;\n}\n\n.grid--justify-end {\n justify-content: end;\n}\n\n.grid--justify-space-between {\n justify-content: space-between;\n}\n\n.grid--justify-space-around {\n justify-content: space-around;\n}\n\n.grid--justify-space-evenly {\n justify-content: space-evenly;\n}\n","/**\n * GridItem Component Styles\n */\n\n.gridItem {\n /* Prevent grid blowout */\n min-width: 0;\n}\n\n.gridItem--flex {\n display: flex;\n}\n","/**\n * Stack Component Styles\n * One-directional flex container with consistent spacing\n */\n\n.stack {\n display: flex;\n gap: var(--stack-spacing, 16px);\n}\n\n/* Direction */\n.stack--vertical {\n flex-direction: column;\n}\n\n.stack--horizontal {\n flex-direction: row;\n}\n\n/* Wrap */\n.stack--wrap {\n flex-wrap: wrap;\n}\n\n/* Alignment */\n.stack--align-start {\n align-items: start;\n}\n\n.stack--align-center {\n align-items: center;\n}\n\n.stack--align-end {\n align-items: end;\n}\n\n.stack--align-stretch {\n align-items: stretch;\n}\n\n.stack--align-baseline {\n align-items: baseline;\n}\n\n/* Justify */\n.stack--justify-start {\n justify-content: start;\n}\n\n.stack--justify-center {\n justify-content: center;\n}\n\n.stack--justify-end {\n justify-content: end;\n}\n\n.stack--justify-space-between {\n justify-content: space-between;\n}\n\n.stack--justify-space-around {\n justify-content: space-around;\n}\n\n.stack--justify-space-evenly {\n justify-content: space-evenly;\n}\n\n/* Divider */\n.stackDivider {\n flex-shrink: 0;\n}\n\n.stack--vertical .stackDivider {\n width: 100%;\n height: 1px;\n}\n\n.stack--horizontal .stackDivider {\n width: 1px;\n height: 100%;\n}\n","/**\n * Inline Component Styles\n * Wrapping flex container for inline content\n */\n\n.inline {\n display: flex;\n flex-wrap: wrap;\n gap: var(--inline-spacing, 8px);\n}\n\n/* Alignment */\n.inline--align-start {\n align-items: start;\n}\n\n.inline--align-center {\n align-items: center;\n}\n\n.inline--align-end {\n align-items: end;\n}\n\n.inline--align-stretch {\n align-items: stretch;\n}\n\n.inline--align-baseline {\n align-items: baseline;\n}\n\n/* Justify */\n.inline--justify-start {\n justify-content: start;\n}\n\n.inline--justify-center {\n justify-content: center;\n}\n\n.inline--justify-end {\n justify-content: end;\n}\n\n.inline--justify-space-between {\n justify-content: space-between;\n}\n\n.inline--justify-space-around {\n justify-content: space-around;\n}\n\n.inline--justify-space-evenly {\n justify-content: space-evenly;\n}\n","/**\n * Flex Component Styles\n * Generic flex container with full control\n */\n\n.flex {\n display: flex;\n gap: var(--flex-gap, 0);\n}\n\n/* Inline variant */\n.flex--inline {\n display: inline-flex;\n}\n\n/* Direction */\n.flex--row {\n flex-direction: row;\n}\n\n.flex--row-reverse {\n flex-direction: row-reverse;\n}\n\n.flex--column {\n flex-direction: column;\n}\n\n.flex--column-reverse {\n flex-direction: column-reverse;\n}\n\n/* Wrap */\n.flex--nowrap {\n flex-wrap: nowrap;\n}\n\n.flex--wrap {\n flex-wrap: wrap;\n}\n\n.flex--wrap-reverse {\n flex-wrap: wrap-reverse;\n}\n\n/* Alignment */\n.flex--align-start {\n align-items: start;\n}\n\n.flex--align-center {\n align-items: center;\n}\n\n.flex--align-end {\n align-items: end;\n}\n\n.flex--align-stretch {\n align-items: stretch;\n}\n\n.flex--align-baseline {\n align-items: baseline;\n}\n\n/* Justify */\n.flex--justify-start {\n justify-content: start;\n}\n\n.flex--justify-center {\n justify-content: center;\n}\n\n.flex--justify-end {\n justify-content: end;\n}\n\n.flex--justify-space-between {\n justify-content: space-between;\n}\n\n.flex--justify-space-around {\n justify-content: space-around;\n}\n\n.flex--justify-space-evenly {\n justify-content: space-evenly;\n}\n","/**\n * Badge Component Styles\n *\n * Styling for Badge component with variants and sizes.\n */\n\n.badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-weight: 600;\n border-radius: 12px;\n white-space: nowrap;\n transition: all 0.2s ease;\n font-family:\n 'Nunito Sans',\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n sans-serif;\n}\n\n/* Sizes */\n.small {\n padding: 0 6px;\n height: 18px;\n font-size: 10px;\n line-height: 18px;\n}\n\n.medium {\n padding: 0 8px;\n height: 22px;\n font-size: 12px;\n line-height: 22px;\n}\n\n.large {\n padding: 0 12px;\n height: 28px;\n font-size: 14px;\n line-height: 28px;\n}\n\n/* Dot variant */\n.dot {\n padding: 0;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n}\n\n.dot.small {\n width: 6px;\n height: 6px;\n}\n\n.dot.medium {\n width: 8px;\n height: 8px;\n}\n\n.dot.large {\n width: 10px;\n height: 10px;\n}\n\n/* Variants - Default */\n.default {\n background-color: #f2f3f5;\n color: #4e5969;\n border: 1px solid #e5e6eb;\n}\n\n/* Variants - Primary */\n.primary {\n background-color: #e8f3ff;\n color: #165dff;\n border: 1px solid #bedaff;\n}\n\n/* Variants - Success */\n.success {\n background-color: #e8ffea;\n color: #00b42a;\n border: 1px solid #aff0b5;\n}\n\n/* Variants - Warning */\n.warning {\n background-color: #fff7e8;\n color: #ff7d00;\n border: 1px solid #ffcf8b;\n}\n\n/* Variants - Danger */\n.danger {\n background-color: #ffece8;\n color: #f53f3f;\n border: 1px solid #ffb9aa;\n}\n","/**\n * Button Component Styles\n *\n * Styling for Button component with variants and sizes.\n */\n\n.button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n font-weight: 600;\n border-radius: 4px;\n border: 1px solid transparent;\n cursor: pointer;\n transition: all 0.2s ease;\n font-family:\n 'Nunito Sans',\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n sans-serif;\n white-space: nowrap;\n user-select: none;\n}\n\n.button:focus-visible {\n outline: 2px solid #165dff;\n outline-offset: 2px;\n}\n\n/* Sizes */\n.small {\n height: 28px;\n padding: 0 12px;\n font-size: 12px;\n line-height: 26px;\n}\n\n.medium {\n height: 36px;\n padding: 0 16px;\n font-size: 14px;\n line-height: 34px;\n}\n\n.large {\n height: 44px;\n padding: 0 20px;\n font-size: 16px;\n line-height: 42px;\n}\n\n/* Full width */\n.fullWidth {\n width: 100%;\n}\n\n/* Disabled state */\n.button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n/* Loading state */\n.loading {\n pointer-events: none;\n opacity: 0.7;\n}\n\n/* Variants - Primary */\n.primary {\n background-color: #165dff;\n color: #ffffff;\n border-color: #165dff;\n}\n\n.primary:hover:not(:disabled) {\n background-color: #4080ff;\n border-color: #4080ff;\n}\n\n.primary:active:not(:disabled) {\n background-color: #0e42d2;\n border-color: #0e42d2;\n}\n\n/* Variants - Secondary */\n.secondary {\n background-color: #ffffff;\n color: #1d2129;\n border-color: #c9cdd4;\n}\n\n.secondary:hover:not(:disabled) {\n background-color: #f7f8fa;\n border-color: #a9aeb8;\n}\n\n.secondary:active:not(:disabled) {\n background-color: #f2f3f5;\n border-color: #86909c;\n}\n\n/* Variants - Success */\n.success {\n background-color: #00b42a;\n color: #ffffff;\n border-color: #00b42a;\n}\n\n.success:hover:not(:disabled) {\n background-color: #23c343;\n border-color: #23c343;\n}\n\n.success:active:not(:disabled) {\n background-color: #009a29;\n border-color: #009a29;\n}\n\n/* Variants - Warning */\n.warning {\n background-color: #ff7d00;\n color: #ffffff;\n border-color: #ff7d00;\n}\n\n.warning:hover:not(:disabled) {\n background-color: #ff9a2e;\n border-color: #ff9a2e;\n}\n\n.warning:active:not(:disabled) {\n background-color: #d25f00;\n border-color: #d25f00;\n}\n\n/* Variants - Danger */\n.danger {\n background-color: #f53f3f;\n color: #ffffff;\n border-color: #f53f3f;\n}\n\n.danger:hover:not(:disabled) {\n background-color: #f76560;\n border-color: #f76560;\n}\n\n.danger:active:not(:disabled) {\n background-color: #cb272d;\n border-color: #cb272d;\n}\n\n/* Variants - Ghost */\n.ghost {\n background-color: transparent;\n color: #4e5969;\n border-color: transparent;\n}\n\n.ghost:hover:not(:disabled) {\n background-color: #f2f3f5;\n}\n\n.ghost:active:not(:disabled) {\n background-color: #e5e6eb;\n}\n\n/* Loading spinner */\n.spinner {\n display: inline-block;\n width: 14px;\n height: 14px;\n border: 2px solid currentColor;\n border-radius: 50%;\n border-top-color: transparent;\n animation: spin 0.6s linear infinite;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n","/**\n * Collapse Component Styles\n *\n * Styling for Collapse component with smooth animations.\n */\n\n.collapse {\n display: block;\n background-color: #ffffff;\n overflow: hidden;\n}\n\n.bordered {\n border: 1px solid #e5e6eb;\n border-radius: 4px;\n}\n\n.disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n/* Header */\n.header {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n user-select: none;\n transition: background-color 0.2s ease;\n font-family:\n 'Nunito Sans',\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n sans-serif;\n font-weight: 600;\n color: #1d2129;\n}\n\n.header:hover:not(.disabled .header) {\n background-color: #f7f8fa;\n}\n\n.header:focus-visible {\n outline: 2px solid #165dff;\n outline-offset: -2px;\n}\n\n.disabled .header {\n cursor: not-allowed;\n}\n\n/* Sizes */\n.small .header {\n padding: 8px 12px;\n font-size: 12px;\n}\n\n.medium .header {\n padding: 12px 16px;\n font-size: 14px;\n}\n\n.large .header {\n padding: 16px 20px;\n font-size: 16px;\n}\n\n/* Icon */\n.icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 16px;\n height: 16px;\n font-size: 10px;\n color: #86909c;\n transition: transform 0.3s ease;\n flex-shrink: 0;\n}\n\n.expanded .icon {\n transform: rotate(0deg);\n}\n\n.header:not(.expanded) .icon {\n transform: rotate(-90deg);\n}\n\n/* Header content */\n.headerContent {\n flex: 1;\n}\n\n/* Content */\n.content {\n height: 0;\n overflow: hidden;\n transition: height 0.3s ease;\n}\n\n.contentExpanded {\n overflow: visible;\n}\n\n.contentInner {\n padding: 0 16px 16px 16px;\n color: #4e5969;\n font-family:\n 'Nunito Sans',\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n sans-serif;\n}\n\n.small .contentInner {\n padding: 0 12px 8px 12px;\n font-size: 12px;\n}\n\n.medium .contentInner {\n padding: 0 16px 12px 16px;\n font-size: 14px;\n}\n\n.large .contentInner {\n padding: 0 20px 16px 20px;\n font-size: 16px;\n}\n","/* Tabs Component Styles */\n\n.tabs {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* Tab List */\n.tabList {\n display: flex;\n gap: 0;\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n/* Individual Tab */\n.tab {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0.75rem 1rem;\n font-size: 0.875rem;\n font-weight: 500;\n color: var(--color-text-secondary, #666);\n background: transparent;\n border: none;\n cursor: pointer;\n transition: all 0.2s ease;\n white-space: nowrap;\n outline: none;\n}\n\n.tab:hover:not(.disabled) {\n color: var(--color-primary, #1890ff);\n background: var(--color-bg-hover, rgba(0, 0, 0, 0.04));\n}\n\n.tab:focus-visible {\n outline: 2px solid var(--color-primary, #1890ff);\n outline-offset: -2px;\n z-index: 1;\n}\n\n.tab.active {\n color: var(--color-primary, #1890ff);\n /* Removed font-weight change to prevent layout shift */\n /* The color change is sufficient to indicate active state */\n}\n\n.tab.disabled {\n color: var(--color-text-disabled, #ccc);\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n/* Icon */\n.icon {\n display: inline-flex;\n font-size: 1em;\n}\n\n/* Label */\n.label {\n display: inline-flex;\n}\n\n/* Content */\n.content {\n padding: 1rem 0;\n min-height: 100px;\n}\n\n.content.animated {\n animation: fadeIn 0.3s ease;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n transform: translateY(-4px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n/* Variant: Line (default) */\n.tabs.line .tabList {\n border-bottom: 2px solid var(--color-border, #e0e0e0);\n}\n\n.tabs.line .tab {\n border-bottom: 2px solid transparent;\n margin-bottom: -2px;\n}\n\n.tabs.line .tab.active {\n border-bottom-color: var(--color-primary, #1890ff);\n}\n\n/* Variant: Card */\n.tabs.card .tabList {\n gap: 0.25rem;\n background: var(--color-bg, #f5f5f5);\n padding: 0.25rem;\n border-radius: 0.5rem;\n}\n\n.tabs.card .tab {\n border-radius: 0.375rem;\n}\n\n.tabs.card .tab.active {\n background: var(--color-bg-white, #fff);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n\n/* Variant: Pill */\n.tabs.pill .tabList {\n gap: 0.5rem;\n}\n\n.tabs.pill .tab {\n border-radius: 9999px;\n padding: 0.5rem 1.25rem;\n border: 1px solid var(--color-border, #e0e0e0);\n}\n\n.tabs.pill .tab.active {\n background: var(--color-primary, #1890ff);\n color: white;\n border-color: var(--color-primary, #1890ff);\n}\n\n.tabs.pill .tab.active:hover {\n background: var(--color-primary-dark, #1677d2);\n color: white;\n}\n\n/* Size: Small */\n.tabs.small .tab {\n padding: 0.5rem 0.75rem;\n font-size: 0.75rem;\n}\n\n.tabs.small .content {\n padding: 0.75rem 0;\n}\n\n/* Size: Medium (default) */\n.tabs.medium .tab {\n padding: 0.75rem 1rem;\n font-size: 0.875rem;\n}\n\n.tabs.medium .content {\n padding: 1rem 0;\n}\n\n/* Size: Large */\n.tabs.large .tab {\n padding: 1rem 1.5rem;\n font-size: 1rem;\n}\n\n.tabs.large .content {\n padding: 1.5rem 0;\n}\n\n/* Full Width */\n.tabs.fullWidth .tabList {\n display: grid;\n}\n\n.tabs.fullWidth .tab {\n flex: 1;\n}\n","/* Carousel Component Styles */\n\n.carousel {\n position: relative;\n width: 100%;\n overflow: hidden;\n user-select: none;\n}\n\n/* Items Container */\n.itemsContainer {\n display: flex;\n width: 100%;\n will-change: transform;\n user-select: none;\n -webkit-user-drag: none;\n}\n\n.itemsContainer.animated {\n transition: transform 0.3s ease;\n}\n\n/* Individual Item */\n.item {\n flex: 0 0 100%;\n width: 100%;\n min-width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Navigation Arrows */\n.arrow {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n z-index: 10;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0.75rem;\n background: rgba(255, 255, 255, 0.9);\n border: none;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.2s ease;\n color: var(--color-text-primary, #333);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n}\n\n.arrow:hover:not(:disabled) {\n background: rgba(255, 255, 255, 1);\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);\n transform: translateY(-50%) scale(1.05);\n}\n\n.arrow:focus-visible {\n outline: 2px solid var(--color-primary, #1890ff);\n outline-offset: 2px;\n}\n\n.arrow:active:not(:disabled) {\n transform: translateY(-50%) scale(0.95);\n}\n\n.arrow:disabled {\n opacity: 0.3;\n cursor: not-allowed;\n background: rgba(255, 255, 255, 0.6);\n box-shadow: none;\n}\n\n.arrowPrev {\n left: 1rem;\n}\n\n.arrowNext {\n right: 1rem;\n}\n\n/* Dots Indicators */\n.dots {\n position: absolute;\n bottom: 1rem;\n left: 50%;\n transform: translateX(-50%);\n z-index: 10;\n display: flex;\n gap: 0.5rem;\n padding: 0.5rem 1rem;\n background: rgba(0, 0, 0, 0.4);\n border-radius: 9999px;\n backdrop-filter: blur(4px);\n}\n\n.dot {\n width: 0.5rem;\n height: 0.5rem;\n padding: 0;\n background: rgba(255, 255, 255, 0.5);\n border: none;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\n.dot:hover {\n background: rgba(255, 255, 255, 0.8);\n transform: scale(1.2);\n}\n\n.dot:focus-visible {\n outline: 2px solid var(--color-primary, #1890ff);\n outline-offset: 2px;\n}\n\n.dotActive {\n background: white;\n width: 1.5rem;\n border-radius: 0.25rem;\n}\n\n/* Size: Small */\n.carousel.small {\n min-height: 200px;\n}\n\n.carousel.small .arrow {\n padding: 0.5rem;\n}\n\n.carousel.small .arrow svg {\n width: 16px;\n height: 16px;\n}\n\n.carousel.small .arrowPrev {\n left: 0.5rem;\n}\n\n.carousel.small .arrowNext {\n right: 0.5rem;\n}\n\n.carousel.small .dots {\n bottom: 0.5rem;\n padding: 0.375rem 0.75rem;\n}\n\n.carousel.small .dot {\n width: 0.375rem;\n height: 0.375rem;\n}\n\n.carousel.small .dotActive {\n width: 1rem;\n}\n\n/* Size: Medium (default) */\n.carousel.medium {\n min-height: 300px;\n}\n\n.carousel.medium .arrow {\n padding: 0.75rem;\n}\n\n.carousel.medium .arrow svg {\n width: 24px;\n height: 24px;\n}\n\n.carousel.medium .arrowPrev {\n left: 1rem;\n}\n\n.carousel.medium .arrowNext {\n right: 1rem;\n}\n\n.carousel.medium .dots {\n bottom: 1rem;\n padding: 0.5rem 1rem;\n}\n\n.carousel.medium .dot {\n width: 0.5rem;\n height: 0.5rem;\n}\n\n.carousel.medium .dotActive {\n width: 1.5rem;\n}\n\n/* Size: Large */\n.carousel.large {\n min-height: 400px;\n}\n\n.carousel.large .arrow {\n padding: 1rem;\n}\n\n.carousel.large .arrow svg {\n width: 32px;\n height: 32px;\n}\n\n.carousel.large .arrowPrev {\n left: 1.5rem;\n}\n\n.carousel.large .arrowNext {\n right: 1.5rem;\n}\n\n.carousel.large .dots {\n bottom: 1.5rem;\n padding: 0.625rem 1.25rem;\n}\n\n.carousel.large .dot {\n width: 0.625rem;\n height: 0.625rem;\n}\n\n.carousel.large .dotActive {\n width: 2rem;\n}\n\n/* Responsive adjustments */\n@media (max-width: 768px) {\n .arrow {\n padding: 0.5rem;\n }\n\n .arrow svg {\n width: 20px;\n height: 20px;\n }\n\n .arrowPrev {\n left: 0.5rem !important;\n }\n\n .arrowNext {\n right: 0.5rem !important;\n }\n\n .dots {\n bottom: 0.5rem !important;\n padding: 0.375rem 0.75rem !important;\n }\n\n .dot {\n width: 0.375rem !important;\n height: 0.375rem !important;\n }\n\n .dotActive {\n width: 1rem !important;\n }\n}\n","/* Drawer Component Styles */\n\n.drawerContainer {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n}\n\n.drawerContainer > * {\n pointer-events: auto;\n}\n\n/* Overlay */\n.overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n animation: fadeIn 0.3s ease;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n/* Drawer */\n.drawer {\n position: fixed;\n background: var(--color-bg-white, #fff);\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);\n display: flex;\n flex-direction: column;\n outline: none;\n}\n\n/* Placement: Right (default) */\n.drawer.right {\n top: 0;\n right: 0;\n bottom: 0;\n animation: slideInRight 0.3s ease;\n}\n\n@keyframes slideInRight {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0);\n }\n}\n\n/* Placement: Left */\n.drawer.left {\n top: 0;\n left: 0;\n bottom: 0;\n animation: slideInLeft 0.3s ease;\n}\n\n@keyframes slideInLeft {\n from {\n transform: translateX(-100%);\n }\n to {\n transform: translateX(0);\n }\n}\n\n/* Placement: Top */\n.drawer.top {\n top: 0;\n left: 0;\n right: 0;\n animation: slideInTop 0.3s ease;\n}\n\n@keyframes slideInTop {\n from {\n transform: translateY(-100%);\n }\n to {\n transform: translateY(0);\n }\n}\n\n/* Placement: Bottom */\n.drawer.bottom {\n bottom: 0;\n left: 0;\n right: 0;\n animation: slideInBottom 0.3s ease;\n}\n\n@keyframes slideInBottom {\n from {\n transform: translateY(100%);\n }\n to {\n transform: translateY(0);\n }\n}\n\n/* Size: Small */\n.drawer.right.small,\n.drawer.left.small {\n width: 320px;\n}\n\n.drawer.top.small,\n.drawer.bottom.small {\n height: 240px;\n}\n\n/* Size: Medium (default) */\n.drawer.right.medium,\n.drawer.left.medium {\n width: 480px;\n}\n\n.drawer.top.medium,\n.drawer.bottom.medium {\n height: 360px;\n}\n\n/* Size: Large */\n.drawer.right.large,\n.drawer.left.large {\n width: 640px;\n}\n\n.drawer.top.large,\n.drawer.bottom.large {\n height: 480px;\n}\n\n/* Size: Full */\n.drawer.right.full,\n.drawer.left.full {\n width: 100%;\n}\n\n.drawer.top.full,\n.drawer.bottom.full {\n height: 100%;\n}\n\n/* Header */\n.header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 1.5rem;\n border-bottom: 1px solid var(--color-border, #e0e0e0);\n flex-shrink: 0;\n}\n\n.title {\n margin: 0;\n font-size: 1.25rem;\n font-weight: 600;\n color: var(--color-text-primary, #333);\n}\n\n.closeButton {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0.5rem;\n background: transparent;\n border: none;\n border-radius: 0.25rem;\n cursor: pointer;\n color: var(--color-text-secondary, #666);\n transition: all 0.2s ease;\n margin-left: auto;\n}\n\n.closeButton:hover {\n background: var(--color-bg-hover, rgba(0, 0, 0, 0.04));\n color: var(--color-text-primary, #333);\n}\n\n.closeButton:focus-visible {\n outline: 2px solid var(--color-primary, #1890ff);\n outline-offset: 2px;\n}\n\n.closeButton:active {\n transform: scale(0.95);\n}\n\n/* Body */\n.body {\n flex: 1;\n overflow-y: auto;\n padding: 1.5rem;\n}\n\n/* Footer */\n.footer {\n padding: 1rem 1.5rem;\n border-top: 1px solid var(--color-border, #e0e0e0);\n flex-shrink: 0;\n}\n\n/* Responsive */\n@media (max-width: 768px) {\n .drawer.right.small,\n .drawer.left.small,\n .drawer.right.medium,\n .drawer.left.medium {\n width: 100%;\n }\n\n .drawer.top.small,\n .drawer.bottom.small,\n .drawer.top.medium,\n .drawer.bottom.medium {\n height: 80%;\n }\n\n .drawer.right.large,\n .drawer.left.large {\n width: 100%;\n }\n\n .drawer.top.large,\n .drawer.bottom.large {\n height: 90%;\n }\n\n .header {\n padding: 1rem;\n }\n\n .body {\n padding: 1rem;\n }\n\n .footer {\n padding: 0.75rem 1rem;\n }\n\n .title {\n font-size: 1.125rem;\n }\n}\n"],"mappings":"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","names":[]}
package/dist/index.d.mts CHANGED
@@ -1304,6 +1304,134 @@ interface CarouselProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>
1304
1304
  */
1305
1305
  declare const Carousel: React$1.FC<CarouselProps>;
1306
1306
 
1307
+ /**
1308
+ * Drawer Component Types
1309
+ *
1310
+ * Types for the Drawer component based on design system specifications.
1311
+ */
1312
+
1313
+ /**
1314
+ * Drawer placement options
1315
+ */
1316
+ type DrawerPlacement = 'left' | 'right' | 'top' | 'bottom';
1317
+ /**
1318
+ * Drawer size options
1319
+ */
1320
+ type DrawerSize = 'small' | 'medium' | 'large' | 'full';
1321
+ /**
1322
+ * Props for the Drawer component
1323
+ */
1324
+ interface DrawerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
1325
+ /**
1326
+ * Whether the drawer is open
1327
+ */
1328
+ open: boolean;
1329
+ /**
1330
+ * Callback when the drawer requests to close
1331
+ */
1332
+ onClose: () => void;
1333
+ /**
1334
+ * Drawer title
1335
+ */
1336
+ title?: ReactNode;
1337
+ /**
1338
+ * Drawer content
1339
+ */
1340
+ children: ReactNode;
1341
+ /**
1342
+ * Placement of the drawer
1343
+ * @default 'right'
1344
+ */
1345
+ placement?: DrawerPlacement;
1346
+ /**
1347
+ * Size of the drawer
1348
+ * @default 'medium'
1349
+ */
1350
+ size?: DrawerSize;
1351
+ /**
1352
+ * Whether to show the close button
1353
+ * @default true
1354
+ */
1355
+ showCloseButton?: boolean;
1356
+ /**
1357
+ * Whether to show the overlay/backdrop
1358
+ * @default true
1359
+ */
1360
+ showOverlay?: boolean;
1361
+ /**
1362
+ * Whether clicking the overlay closes the drawer
1363
+ * @default true
1364
+ */
1365
+ closeOnOverlayClick?: boolean;
1366
+ /**
1367
+ * Whether pressing escape closes the drawer
1368
+ * @default true
1369
+ */
1370
+ closeOnEscape?: boolean;
1371
+ /**
1372
+ * Custom footer content
1373
+ */
1374
+ footer?: ReactNode;
1375
+ /**
1376
+ * Additional CSS class name for the drawer container
1377
+ */
1378
+ className?: string;
1379
+ /**
1380
+ * Additional CSS class name for the header
1381
+ */
1382
+ headerClassName?: string;
1383
+ /**
1384
+ * Additional CSS class name for the body
1385
+ */
1386
+ bodyClassName?: string;
1387
+ /**
1388
+ * Additional CSS class name for the footer
1389
+ */
1390
+ footerClassName?: string;
1391
+ /**
1392
+ * Additional CSS class name for the overlay
1393
+ */
1394
+ overlayClassName?: string;
1395
+ /**
1396
+ * z-index for the drawer
1397
+ * @default 1000
1398
+ */
1399
+ zIndex?: number;
1400
+ /**
1401
+ * Whether to lock body scroll when drawer is open
1402
+ * @default true
1403
+ */
1404
+ lockBodyScroll?: boolean;
1405
+ }
1406
+
1407
+ /**
1408
+ * Drawer Component
1409
+ *
1410
+ * A slide-out panel component that can be positioned on any side of the screen.
1411
+ */
1412
+
1413
+ /**
1414
+ * Drawer component for displaying slide-out panels
1415
+ *
1416
+ * @example
1417
+ * ```tsx
1418
+ * <Drawer open={isOpen} onClose={() => setIsOpen(false)} title="Settings">
1419
+ * <p>Drawer content</p>
1420
+ * </Drawer>
1421
+ *
1422
+ * <Drawer
1423
+ * open={isOpen}
1424
+ * onClose={handleClose}
1425
+ * placement="left"
1426
+ * size="large"
1427
+ * footer={<Button onClick={handleClose}>Close</Button>}
1428
+ * >
1429
+ * Content here
1430
+ * </Drawer>
1431
+ * ```
1432
+ */
1433
+ declare const Drawer: React$1.FC<DrawerProps>;
1434
+
1307
1435
  /**
1308
1436
  * useSwipe Hook
1309
1437
  *
@@ -1380,4 +1508,4 @@ interface UseSwipeReturn {
1380
1508
  */
1381
1509
  declare const useSwipe: (options?: UseSwipeOptions) => UseSwipeReturn;
1382
1510
 
1383
- export { type AlignItems, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, type Breakpoint, type BreakpointTokens, type BreakpointValue, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Carousel, type CarouselItem, type CarouselProps, type CarouselSize, Collapse, type CollapseProps, type CollapseSize, type ColorPalette, type ColorScale, Container, type ContainerProps, type ContainerTokens, Flex, type FlexDirection, type FlexProps, type FlexWrap, type FontSizeScale, type GenericIconProps, Grid, type GridConfig, GridItem, type GridItemProps, type GridProps, Icon, type IconName, type IconProps, type IconSize, Inline, type InlineProps, type JustifyContent, type ResponsiveBoolean, type ResponsiveNumber, type ResponsiveProps, type ResponsiveSpacing, type ResponsiveValue, type Shadow, type ShadowTokens, type SpacingKey, type SpacingTokens, type SpacingValue, Stack, type StackProps, type TabItem, Tabs, type TabsProps, type TabsSize, type TabsVariant, type ThemeMode, type TypographyStyle, type TypographyTokens, type UseSwipeOptions, type UseSwipeReturn, breakpointOrder, breakpoints, classNames, colors, combineShadows, componentShadows, containerMaxWidths, containerPadding, createShadow, createSpacingStyle, createTypographyStyle, cssVar, darkColors, fontWeights, generateResponsiveStyles, getCurrentBreakpoint, getDefinedBreakpoints, getLineHeight, getMediaQuery, getSpacing, getSpacingRem, gridConfig, hexToRgba, isBreakpointActive, lightColors, mergeStyles, pxToRem, rawShadows, resolveResponsiveValue, responsiveClassName, shadows, spacing, toPixels, typography, useSwipe };
1511
+ export { type AlignItems, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, type Breakpoint, type BreakpointTokens, type BreakpointValue, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Carousel, type CarouselItem, type CarouselProps, type CarouselSize, Collapse, type CollapseProps, type CollapseSize, type ColorPalette, type ColorScale, Container, type ContainerProps, type ContainerTokens, Drawer, type DrawerPlacement, type DrawerProps, type DrawerSize, Flex, type FlexDirection, type FlexProps, type FlexWrap, type FontSizeScale, type GenericIconProps, Grid, type GridConfig, GridItem, type GridItemProps, type GridProps, Icon, type IconName, type IconProps, type IconSize, Inline, type InlineProps, type JustifyContent, type ResponsiveBoolean, type ResponsiveNumber, type ResponsiveProps, type ResponsiveSpacing, type ResponsiveValue, type Shadow, type ShadowTokens, type SpacingKey, type SpacingTokens, type SpacingValue, Stack, type StackProps, type TabItem, Tabs, type TabsProps, type TabsSize, type TabsVariant, type ThemeMode, type TypographyStyle, type TypographyTokens, type UseSwipeOptions, type UseSwipeReturn, breakpointOrder, breakpoints, classNames, colors, combineShadows, componentShadows, containerMaxWidths, containerPadding, createShadow, createSpacingStyle, createTypographyStyle, cssVar, darkColors, fontWeights, generateResponsiveStyles, getCurrentBreakpoint, getDefinedBreakpoints, getLineHeight, getMediaQuery, getSpacing, getSpacingRem, gridConfig, hexToRgba, isBreakpointActive, lightColors, mergeStyles, pxToRem, rawShadows, resolveResponsiveValue, responsiveClassName, shadows, spacing, toPixels, typography, useSwipe };
package/dist/index.d.ts CHANGED
@@ -1304,6 +1304,134 @@ interface CarouselProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>
1304
1304
  */
1305
1305
  declare const Carousel: React$1.FC<CarouselProps>;
1306
1306
 
1307
+ /**
1308
+ * Drawer Component Types
1309
+ *
1310
+ * Types for the Drawer component based on design system specifications.
1311
+ */
1312
+
1313
+ /**
1314
+ * Drawer placement options
1315
+ */
1316
+ type DrawerPlacement = 'left' | 'right' | 'top' | 'bottom';
1317
+ /**
1318
+ * Drawer size options
1319
+ */
1320
+ type DrawerSize = 'small' | 'medium' | 'large' | 'full';
1321
+ /**
1322
+ * Props for the Drawer component
1323
+ */
1324
+ interface DrawerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
1325
+ /**
1326
+ * Whether the drawer is open
1327
+ */
1328
+ open: boolean;
1329
+ /**
1330
+ * Callback when the drawer requests to close
1331
+ */
1332
+ onClose: () => void;
1333
+ /**
1334
+ * Drawer title
1335
+ */
1336
+ title?: ReactNode;
1337
+ /**
1338
+ * Drawer content
1339
+ */
1340
+ children: ReactNode;
1341
+ /**
1342
+ * Placement of the drawer
1343
+ * @default 'right'
1344
+ */
1345
+ placement?: DrawerPlacement;
1346
+ /**
1347
+ * Size of the drawer
1348
+ * @default 'medium'
1349
+ */
1350
+ size?: DrawerSize;
1351
+ /**
1352
+ * Whether to show the close button
1353
+ * @default true
1354
+ */
1355
+ showCloseButton?: boolean;
1356
+ /**
1357
+ * Whether to show the overlay/backdrop
1358
+ * @default true
1359
+ */
1360
+ showOverlay?: boolean;
1361
+ /**
1362
+ * Whether clicking the overlay closes the drawer
1363
+ * @default true
1364
+ */
1365
+ closeOnOverlayClick?: boolean;
1366
+ /**
1367
+ * Whether pressing escape closes the drawer
1368
+ * @default true
1369
+ */
1370
+ closeOnEscape?: boolean;
1371
+ /**
1372
+ * Custom footer content
1373
+ */
1374
+ footer?: ReactNode;
1375
+ /**
1376
+ * Additional CSS class name for the drawer container
1377
+ */
1378
+ className?: string;
1379
+ /**
1380
+ * Additional CSS class name for the header
1381
+ */
1382
+ headerClassName?: string;
1383
+ /**
1384
+ * Additional CSS class name for the body
1385
+ */
1386
+ bodyClassName?: string;
1387
+ /**
1388
+ * Additional CSS class name for the footer
1389
+ */
1390
+ footerClassName?: string;
1391
+ /**
1392
+ * Additional CSS class name for the overlay
1393
+ */
1394
+ overlayClassName?: string;
1395
+ /**
1396
+ * z-index for the drawer
1397
+ * @default 1000
1398
+ */
1399
+ zIndex?: number;
1400
+ /**
1401
+ * Whether to lock body scroll when drawer is open
1402
+ * @default true
1403
+ */
1404
+ lockBodyScroll?: boolean;
1405
+ }
1406
+
1407
+ /**
1408
+ * Drawer Component
1409
+ *
1410
+ * A slide-out panel component that can be positioned on any side of the screen.
1411
+ */
1412
+
1413
+ /**
1414
+ * Drawer component for displaying slide-out panels
1415
+ *
1416
+ * @example
1417
+ * ```tsx
1418
+ * <Drawer open={isOpen} onClose={() => setIsOpen(false)} title="Settings">
1419
+ * <p>Drawer content</p>
1420
+ * </Drawer>
1421
+ *
1422
+ * <Drawer
1423
+ * open={isOpen}
1424
+ * onClose={handleClose}
1425
+ * placement="left"
1426
+ * size="large"
1427
+ * footer={<Button onClick={handleClose}>Close</Button>}
1428
+ * >
1429
+ * Content here
1430
+ * </Drawer>
1431
+ * ```
1432
+ */
1433
+ declare const Drawer: React$1.FC<DrawerProps>;
1434
+
1307
1435
  /**
1308
1436
  * useSwipe Hook
1309
1437
  *
@@ -1380,4 +1508,4 @@ interface UseSwipeReturn {
1380
1508
  */
1381
1509
  declare const useSwipe: (options?: UseSwipeOptions) => UseSwipeReturn;
1382
1510
 
1383
- export { type AlignItems, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, type Breakpoint, type BreakpointTokens, type BreakpointValue, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Carousel, type CarouselItem, type CarouselProps, type CarouselSize, Collapse, type CollapseProps, type CollapseSize, type ColorPalette, type ColorScale, Container, type ContainerProps, type ContainerTokens, Flex, type FlexDirection, type FlexProps, type FlexWrap, type FontSizeScale, type GenericIconProps, Grid, type GridConfig, GridItem, type GridItemProps, type GridProps, Icon, type IconName, type IconProps, type IconSize, Inline, type InlineProps, type JustifyContent, type ResponsiveBoolean, type ResponsiveNumber, type ResponsiveProps, type ResponsiveSpacing, type ResponsiveValue, type Shadow, type ShadowTokens, type SpacingKey, type SpacingTokens, type SpacingValue, Stack, type StackProps, type TabItem, Tabs, type TabsProps, type TabsSize, type TabsVariant, type ThemeMode, type TypographyStyle, type TypographyTokens, type UseSwipeOptions, type UseSwipeReturn, breakpointOrder, breakpoints, classNames, colors, combineShadows, componentShadows, containerMaxWidths, containerPadding, createShadow, createSpacingStyle, createTypographyStyle, cssVar, darkColors, fontWeights, generateResponsiveStyles, getCurrentBreakpoint, getDefinedBreakpoints, getLineHeight, getMediaQuery, getSpacing, getSpacingRem, gridConfig, hexToRgba, isBreakpointActive, lightColors, mergeStyles, pxToRem, rawShadows, resolveResponsiveValue, responsiveClassName, shadows, spacing, toPixels, typography, useSwipe };
1511
+ export { type AlignItems, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, type Breakpoint, type BreakpointTokens, type BreakpointValue, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Carousel, type CarouselItem, type CarouselProps, type CarouselSize, Collapse, type CollapseProps, type CollapseSize, type ColorPalette, type ColorScale, Container, type ContainerProps, type ContainerTokens, Drawer, type DrawerPlacement, type DrawerProps, type DrawerSize, Flex, type FlexDirection, type FlexProps, type FlexWrap, type FontSizeScale, type GenericIconProps, Grid, type GridConfig, GridItem, type GridItemProps, type GridProps, Icon, type IconName, type IconProps, type IconSize, Inline, type InlineProps, type JustifyContent, type ResponsiveBoolean, type ResponsiveNumber, type ResponsiveProps, type ResponsiveSpacing, type ResponsiveValue, type Shadow, type ShadowTokens, type SpacingKey, type SpacingTokens, type SpacingValue, Stack, type StackProps, type TabItem, Tabs, type TabsProps, type TabsSize, type TabsVariant, type ThemeMode, type TypographyStyle, type TypographyTokens, type UseSwipeOptions, type UseSwipeReturn, breakpointOrder, breakpoints, classNames, colors, combineShadows, componentShadows, containerMaxWidths, containerPadding, createShadow, createSpacingStyle, createTypographyStyle, cssVar, darkColors, fontWeights, generateResponsiveStyles, getCurrentBreakpoint, getDefinedBreakpoints, getLineHeight, getMediaQuery, getSpacing, getSpacingRem, gridConfig, hexToRgba, isBreakpointActive, lightColors, mergeStyles, pxToRem, rawShadows, resolveResponsiveValue, responsiveClassName, shadows, spacing, toPixels, typography, useSwipe };
package/dist/index.js CHANGED
@@ -36,6 +36,7 @@ __export(index_exports, {
36
36
  Carousel: () => Carousel,
37
37
  Collapse: () => Collapse,
38
38
  Container: () => Container,
39
+ Drawer: () => Drawer,
39
40
  Flex: () => Flex,
40
41
  Grid: () => Grid,
41
42
  GridItem: () => GridItem,
@@ -9241,6 +9242,134 @@ var Carousel = ({
9241
9242
  );
9242
9243
  };
9243
9244
  Carousel.displayName = "Carousel";
9245
+
9246
+ // src/components/Drawer/Drawer.tsx
9247
+ var import_react10 = require("react");
9248
+
9249
+ // src/components/Drawer/Drawer.module.css
9250
+ var Drawer_default = {};
9251
+
9252
+ // src/components/Drawer/Drawer.tsx
9253
+ var import_jsx_runtime265 = require("react/jsx-runtime");
9254
+ var Drawer = ({
9255
+ open,
9256
+ onClose,
9257
+ title,
9258
+ children,
9259
+ placement = "right",
9260
+ size = "medium",
9261
+ showCloseButton = true,
9262
+ showOverlay = true,
9263
+ closeOnOverlayClick = true,
9264
+ closeOnEscape = true,
9265
+ footer,
9266
+ className = "",
9267
+ headerClassName = "",
9268
+ bodyClassName = "",
9269
+ footerClassName = "",
9270
+ overlayClassName = "",
9271
+ zIndex = 1e3,
9272
+ lockBodyScroll = true,
9273
+ ...rest
9274
+ }) => {
9275
+ const drawerRef = (0, import_react10.useRef)(null);
9276
+ const previousActiveElement = (0, import_react10.useRef)(null);
9277
+ (0, import_react10.useEffect)(() => {
9278
+ if (!open || !closeOnEscape) return;
9279
+ const handleEscape = (e) => {
9280
+ if (e.key === "Escape") {
9281
+ onClose();
9282
+ }
9283
+ };
9284
+ document.addEventListener("keydown", handleEscape);
9285
+ return () => document.removeEventListener("keydown", handleEscape);
9286
+ }, [open, closeOnEscape, onClose]);
9287
+ (0, import_react10.useEffect)(() => {
9288
+ if (!open || !lockBodyScroll) return;
9289
+ const originalOverflow = document.body.style.overflow;
9290
+ const originalPaddingRight = document.body.style.paddingRight;
9291
+ const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;
9292
+ document.body.style.overflow = "hidden";
9293
+ if (scrollbarWidth > 0) {
9294
+ document.body.style.paddingRight = `${scrollbarWidth}px`;
9295
+ }
9296
+ return () => {
9297
+ document.body.style.overflow = originalOverflow;
9298
+ document.body.style.paddingRight = originalPaddingRight;
9299
+ };
9300
+ }, [open, lockBodyScroll]);
9301
+ (0, import_react10.useEffect)(() => {
9302
+ if (open) {
9303
+ previousActiveElement.current = document.activeElement;
9304
+ drawerRef.current?.focus();
9305
+ } else {
9306
+ previousActiveElement.current?.focus();
9307
+ }
9308
+ }, [open]);
9309
+ const handleOverlayClick = (0, import_react10.useCallback)(
9310
+ (e) => {
9311
+ if (closeOnOverlayClick && e.target === e.currentTarget) {
9312
+ onClose();
9313
+ }
9314
+ },
9315
+ [closeOnOverlayClick, onClose]
9316
+ );
9317
+ if (!open) return null;
9318
+ const drawerClasses = [Drawer_default.drawer, Drawer_default[placement], Drawer_default[size], className].filter(Boolean).join(" ");
9319
+ const overlayClasses = [Drawer_default.overlay, overlayClassName].filter(Boolean).join(" ");
9320
+ const headerClasses = [Drawer_default.header, headerClassName].filter(Boolean).join(" ");
9321
+ const bodyClasses = [Drawer_default.body, bodyClassName].filter(Boolean).join(" ");
9322
+ const footerClasses = [Drawer_default.footer, footerClassName].filter(Boolean).join(" ");
9323
+ return /* @__PURE__ */ (0, import_jsx_runtime265.jsxs)("div", { className: Drawer_default.drawerContainer, style: { zIndex }, role: "presentation", children: [
9324
+ showOverlay && /* @__PURE__ */ (0, import_jsx_runtime265.jsx)("div", { className: overlayClasses, onClick: handleOverlayClick, "aria-hidden": "true" }),
9325
+ /* @__PURE__ */ (0, import_jsx_runtime265.jsxs)(
9326
+ "div",
9327
+ {
9328
+ ref: drawerRef,
9329
+ className: drawerClasses,
9330
+ role: "dialog",
9331
+ "aria-modal": "true",
9332
+ "aria-label": typeof title === "string" ? title : void 0,
9333
+ tabIndex: -1,
9334
+ ...rest,
9335
+ children: [
9336
+ (title || showCloseButton) && /* @__PURE__ */ (0, import_jsx_runtime265.jsxs)("div", { className: headerClasses, children: [
9337
+ title && /* @__PURE__ */ (0, import_jsx_runtime265.jsx)("h2", { className: Drawer_default.title, children: title }),
9338
+ showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime265.jsx)(
9339
+ "button",
9340
+ {
9341
+ type: "button",
9342
+ className: Drawer_default.closeButton,
9343
+ onClick: onClose,
9344
+ "aria-label": "Close drawer",
9345
+ children: /* @__PURE__ */ (0, import_jsx_runtime265.jsxs)(
9346
+ "svg",
9347
+ {
9348
+ width: "24",
9349
+ height: "24",
9350
+ viewBox: "0 0 24 24",
9351
+ fill: "none",
9352
+ stroke: "currentColor",
9353
+ strokeWidth: "2",
9354
+ strokeLinecap: "round",
9355
+ strokeLinejoin: "round",
9356
+ children: [
9357
+ /* @__PURE__ */ (0, import_jsx_runtime265.jsx)("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
9358
+ /* @__PURE__ */ (0, import_jsx_runtime265.jsx)("line", { x1: "6", y1: "6", x2: "18", y2: "18" })
9359
+ ]
9360
+ }
9361
+ )
9362
+ }
9363
+ )
9364
+ ] }),
9365
+ /* @__PURE__ */ (0, import_jsx_runtime265.jsx)("div", { className: bodyClasses, children }),
9366
+ footer && /* @__PURE__ */ (0, import_jsx_runtime265.jsx)("div", { className: footerClasses, children: footer })
9367
+ ]
9368
+ }
9369
+ )
9370
+ ] });
9371
+ };
9372
+ Drawer.displayName = "Drawer";
9244
9373
  // Annotate the CommonJS export names for ESM import in node:
9245
9374
  0 && (module.exports = {
9246
9375
  Badge,
@@ -9248,6 +9377,7 @@ Carousel.displayName = "Carousel";
9248
9377
  Carousel,
9249
9378
  Collapse,
9250
9379
  Container,
9380
+ Drawer,
9251
9381
  Flex,
9252
9382
  Grid,
9253
9383
  GridItem,