atomicuilibrary 0.0.1 → 0.1.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/dist/cjs/category-section.cjs.entry.js +1 -1
- package/dist/cjs/exploration-project-tailwind.cjs.js +1 -1
- package/dist/cjs/layout-manager.cjs.entry.js +1 -1
- package/dist/cjs/library-card.cjs.entry.js +1 -1
- package/dist/cjs/lm-container_2.cjs.entry.js +1 -1
- package/dist/cjs/lm-panel_3.cjs.entry.js +4 -4
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/my-step.cjs.entry.js +1 -1
- package/dist/cjs/nav-bar.cjs.entry.js +2 -2
- package/dist/cjs/{security-E1JcwxGc.js → security-CNaNip8F.js} +88 -154
- package/dist/cjs/smart-step.cjs.entry.js +2 -2
- package/dist/cjs/timeline-item.cjs.entry.js +1 -1
- package/dist/cjs/{ui-accordion_10.cjs.entry.js → ui-accordion_11.cjs.entry.js} +613 -26
- package/dist/cjs/ui-advanced-data-table.cjs.entry.js +1 -1
- package/dist/cjs/ui-anchor.cjs.entry.js +1 -1
- package/dist/cjs/ui-aside-panel.cjs.entry.js +5 -5
- package/dist/cjs/ui-avatar-group_3.cjs.entry.js +5 -5
- package/dist/cjs/ui-callout-banner.cjs.entry.js +1 -1
- package/dist/cjs/ui-card.cjs.entry.js +26 -4
- package/dist/cjs/ui-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/ui-code-editor.cjs.entry.js +2 -2
- package/dist/cjs/ui-code-preview.cjs.entry.js +1 -1
- package/dist/cjs/ui-color-controller.cjs.entry.js +1 -1
- package/dist/cjs/ui-dialog-box.cjs.entry.js +1 -1
- package/dist/cjs/ui-dock-host.cjs.entry.js +3 -3
- package/dist/cjs/ui-drag-drop.cjs.entry.js +1 -1
- package/dist/cjs/ui-empty-state.cjs.entry.js +1 -1
- package/dist/cjs/ui-fab-item.cjs.entry.js +1 -1
- package/dist/cjs/ui-fab.cjs.entry.js +2 -2
- package/dist/cjs/ui-library.cjs.entry.js +1 -1
- package/dist/cjs/ui-list-group_2.cjs.entry.js +9 -5
- package/dist/cjs/ui-list.cjs.entry.js +4 -4
- package/dist/cjs/ui-navigation-item.cjs.entry.js +3 -3
- package/dist/cjs/ui-otp-input.cjs.entry.js +2 -2
- package/dist/cjs/{ui-pagination_3.cjs.entry.js → ui-pagination_4.cjs.entry.js} +202 -0
- package/dist/cjs/ui-pattern-input.cjs.entry.js +5 -5
- package/dist/cjs/ui-popover.cjs.entry.js +1 -1
- package/dist/cjs/ui-progress.cjs.entry.js +101 -17
- package/dist/cjs/ui-resizable-panel.cjs.entry.js +1 -1
- package/dist/cjs/ui-smart-location-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/ui-smart-stepper.cjs.entry.js +1 -1
- package/dist/cjs/ui-snackbar.cjs.entry.js +1 -1
- package/dist/cjs/ui-step.cjs.entry.js +1 -1
- package/dist/cjs/ui-stepper.cjs.entry.js +1 -1
- package/dist/cjs/ui-switch.cjs.entry.js +9 -9
- package/dist/cjs/ui-tabs.cjs.entry.js +1 -1
- package/dist/cjs/ui-timeline.cjs.entry.js +1 -1
- package/dist/cjs/ui-toolbar.cjs.entry.js +1 -1
- package/dist/cjs/ui-tooltip.cjs.entry.js +4 -4
- package/dist/cjs/ui-transfer-list.cjs.entry.js +1 -1
- package/dist/cjs/ui-workspace-manager.cjs.entry.js +1 -1
- package/dist/collection/assets/js/demo-loader.js +0 -1
- package/dist/collection/assets/js/demos/accordion-demo.js +189 -0
- package/dist/collection/assets/js/demos/advanced-data-table-demo.js +213 -214
- package/dist/collection/assets/js/demos/aside-panel-demo.js +6 -6
- package/dist/collection/assets/js/demos/button-demo.js +60 -1
- package/dist/collection/assets/js/demos/callout-banner-demo.js +324 -34
- package/dist/collection/assets/js/demos/card-demo.js +108 -61
- package/dist/collection/assets/js/demos/context-menu-demo.js +433 -12
- package/dist/collection/assets/js/demos/dock-demo.js +80 -60
- package/dist/collection/assets/js/demos/documentation-demo.js +227 -22
- package/dist/collection/assets/js/demos/empty-state-demo.js +10 -10
- package/dist/collection/assets/js/demos/list-demo.js +41 -18
- package/dist/collection/assets/js/demos/masonry-demo.js +164 -0
- package/dist/collection/assets/js/demos/progress-demo.js +701 -8
- package/dist/collection/assets/js/demos/radio-demo.js +1 -1
- package/dist/collection/assets/js/demos/splitter-demo.js +137 -0
- package/dist/collection/assets/js/demos/tag-demo.js +48 -18
- package/dist/collection/assets/js/demos/timeline-demo.js +20 -7
- package/dist/collection/assets/js/demos/tooltip-demo.js +26 -26
- package/dist/collection/assets/js/demos/tree-demo.js +28 -10
- package/dist/collection/collection-manifest.json +1 -4
- package/dist/collection/components/accordion/accordion.css +301 -0
- package/dist/collection/components/accordion/accordion.js +40 -8
- package/dist/collection/components/advanced-data-table/advanced-data-table.css +19 -5
- package/dist/collection/components/anchor/anchor.css +0 -2
- package/dist/collection/components/aside-panel/aside-panel.css +1 -3
- package/dist/collection/components/aside-panel/aside-panel.js +5 -5
- package/dist/collection/components/avatar/avatar.js +1 -1
- package/dist/collection/components/badge/badge.css +1 -0
- package/dist/collection/components/badge/badge.js +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.js +1 -1
- package/dist/collection/components/button/button.css +131 -0
- package/dist/collection/components/button/button.js +128 -9
- package/dist/collection/components/card/card.css +83 -31
- package/dist/collection/components/card/card.js +46 -3
- package/dist/collection/components/checkbox/checkbox.css +8 -10
- package/dist/collection/components/checkbox/checkbox.js +2 -2
- package/dist/collection/components/code-editor/code-editor.js +1 -1
- package/dist/collection/components/code-preview/ui-code-preview.js +1 -1
- package/dist/collection/components/color-controller/color-controller.js +1 -1
- package/dist/collection/components/context-menu/context-menu.css +3 -3
- package/dist/collection/components/dialog-box/dialog-box.js +1 -1
- package/dist/collection/components/dialog-header/dialog-header.js +1 -1
- package/dist/collection/components/dock-host/ui-dock-host.js +3 -3
- package/dist/collection/components/drag-drop/drag-drop.js +1 -1
- package/dist/collection/components/empty-state/empty-state.js +1 -1
- package/dist/collection/components/fab/fab.js +2 -2
- package/dist/collection/components/fab-item/fab-item.js +1 -1
- package/dist/collection/components/horizontal-nav/horizontal-nav.js +2 -2
- package/dist/collection/components/icon/icon.js +1 -1
- package/dist/collection/components/input/input.js +4 -4
- package/dist/collection/components/layout-manager/layout-manager.js +1 -1
- package/dist/collection/components/layout-manager/lm-floating-window/lm-floating-window.js +1 -1
- package/dist/collection/components/layout-manager/lm-panel/lm-panel.js +1 -1
- package/dist/collection/components/layout-manager/lm-splitter/lm-splitter.js +1 -1
- package/dist/collection/components/layout-manager/lm-tabs/lm-tabs.js +1 -1
- package/dist/collection/components/library/category-section.js +1 -1
- package/dist/collection/components/library/library-card.js +1 -1
- package/dist/collection/components/library/library.js +1 -1
- package/dist/collection/components/list/list.js +4 -4
- package/dist/collection/components/list-item/list-item.css +24 -0
- package/dist/collection/components/list-item/list-item.js +35 -4
- package/dist/collection/components/loader/loader.css +1635 -0
- package/dist/collection/components/loader/loader.js +1120 -0
- package/dist/collection/components/my-step/my-step.js +1 -1
- package/dist/collection/components/nav-bar/nav-bar.js +6 -6
- package/dist/collection/components/otp-input/otp-input.js +2 -2
- package/dist/collection/components/pattern-input/pattern-input.js +5 -5
- package/dist/collection/components/progress/progress.css +150 -15
- package/dist/collection/components/progress/progress.js +180 -18
- package/dist/collection/components/radio/radio.css +3 -3
- package/dist/collection/components/radio/radio.js +1 -1
- package/dist/collection/components/resizable-panel/resizable-panel.js +1 -1
- package/dist/collection/components/smart-location-dropdown/smart-location-dropdown.js +2 -2
- package/dist/collection/components/smart-stepper/smart-step.js +2 -2
- package/dist/collection/components/smart-stepper/smart-stepper.js +1 -1
- package/dist/collection/components/snackbar/snackbar.js +1 -1
- package/dist/collection/components/speed-dial/speed-dial.js +1 -1
- package/dist/collection/components/stack/stack.js +2 -2
- package/dist/collection/components/step/step.js +1 -1
- package/dist/collection/components/switch/switch.js +10 -10
- package/dist/collection/components/tag-group/tag-group.js +2 -2
- package/dist/collection/components/timeline-item/timeline-item.js +1 -1
- package/dist/collection/components/toolbar/toolbar.js +1 -1
- package/dist/collection/components/tooltip/tooltip.js +3 -3
- package/dist/collection/components/top-bar/top-bar.js +2 -2
- package/dist/collection/components/ui-navigation-bar/navigation-bar/navigation-bar.css +19 -4
- package/dist/collection/components/ui-navigation-bar/navigation-bar/navigation-bar.js +6 -6
- package/dist/collection/components/ui-navigation-bar/navigation-item.js +3 -3
- package/dist/collection/components.js +1 -0
- package/dist/components/avatar-group.js +1 -1
- package/dist/components/avatar.js +1 -1
- package/dist/components/badge.js +1 -1
- package/dist/components/button-toggle.js +1 -1
- package/dist/components/category-section2.js +1 -1
- package/dist/components/checkbox.js +1 -1
- package/dist/components/context-menu.js +1 -1
- package/dist/components/dialog-header.js +1 -1
- package/dist/components/dropdown.js +1 -1
- package/dist/components/icon.js +2 -2
- package/dist/components/input.js +1 -1
- package/dist/components/layout-manager.js +1 -1
- package/dist/components/library-card2.js +1 -1
- package/dist/components/list-group.js +1 -1
- package/dist/components/list-item.js +1 -1
- package/dist/components/lm-container2.js +1 -1
- package/dist/components/lm-floating-window2.js +1 -1
- package/dist/components/lm-panel2.js +1 -1
- package/dist/components/lm-splitter2.js +1 -1
- package/dist/components/lm-tabs2.js +1 -1
- package/dist/components/loader.js +1 -0
- package/dist/components/my-step.js +1 -1
- package/dist/components/nav-bar.js +1 -1
- package/dist/components/pagination.js +1 -1
- package/dist/components/radio.js +1 -1
- package/dist/components/range-slider.js +1 -1
- package/dist/components/rating.js +1 -1
- package/dist/components/resizable-panel.js +1 -1
- package/dist/components/skeleton-loader.js +1 -1
- package/dist/components/smart-step.js +1 -1
- package/dist/components/stack.js +1 -1
- package/dist/components/switch.js +1 -1
- package/dist/components/tag-group.js +1 -1
- package/dist/components/tag.js +1 -1
- package/dist/components/timeline-item.js +1 -1
- package/dist/components/toggle-group.js +1 -1
- package/dist/components/tooltip.js +1 -1
- package/dist/components/ui-accordion.js +1 -1
- package/dist/components/ui-advanced-data-table.js +1 -1
- package/dist/components/ui-anchor.js +1 -1
- package/dist/components/ui-aside-panel.js +1 -1
- package/dist/components/ui-breadcrumb-item.js +1 -1
- package/dist/components/ui-breadcrumb.js +1 -1
- package/dist/components/ui-button-toggle-group.js +1 -1
- package/dist/components/ui-callout-banner.js +1 -1
- package/dist/components/ui-card.js +1 -1
- package/dist/components/ui-carousel.js +1 -1
- package/dist/components/ui-code-editor.js +1 -1
- package/dist/components/ui-code-preview.js +1 -1
- package/dist/components/ui-color-controller.js +1 -1
- package/dist/components/ui-color-picker.js +1 -1
- package/dist/components/ui-command-palette.js +1 -1
- package/dist/components/ui-dialog-box.js +1 -1
- package/dist/components/ui-divider.js +1 -1
- package/dist/components/ui-dock-host.js +1 -1
- package/dist/components/ui-dock.js +1 -1
- package/dist/components/ui-drag-drop.js +1 -1
- package/dist/components/ui-empty-state.js +1 -1
- package/dist/components/ui-fab-item.js +1 -1
- package/dist/components/ui-fab.js +1 -1
- package/dist/components/ui-file-upload.js +1 -1
- package/dist/components/ui-horizontal-nav.js +1 -1
- package/dist/components/ui-knob.js +1 -1
- package/dist/components/ui-library.js +1 -1
- package/dist/components/ui-list.js +1 -1
- package/dist/components/{ui-input-pair.d.ts → ui-loader.d.ts} +4 -4
- package/dist/components/ui-loader.js +1 -0
- package/dist/components/ui-masonry.js +1 -1
- package/dist/components/ui-meter-group.js +1 -1
- package/dist/components/ui-navigation-bar.js +1 -1
- package/dist/components/ui-navigation-item.js +1 -1
- package/dist/components/ui-number-input.js +1 -1
- package/dist/components/ui-otp-input.js +1 -1
- package/dist/components/ui-panel.js +1 -1
- package/dist/components/ui-pattern-input.js +1 -1
- package/dist/components/ui-popover.js +1 -1
- package/dist/components/ui-progress.js +1 -1
- package/dist/components/ui-scroll-top.js +1 -1
- package/dist/components/ui-smart-context-menu.js +1 -1
- package/dist/components/ui-smart-location-dropdown.js +1 -1
- package/dist/components/ui-smart-stepper.js +1 -1
- package/dist/components/ui-snackbar.js +1 -1
- package/dist/components/ui-speed-dial.js +1 -1
- package/dist/components/ui-splitter.js +1 -1
- package/dist/components/ui-step.js +1 -1
- package/dist/components/ui-stepper.js +1 -1
- package/dist/components/ui-tabs.js +1 -1
- package/dist/components/ui-timeline.js +1 -1
- package/dist/components/ui-timer.js +1 -1
- package/dist/components/ui-toolbar.js +1 -1
- package/dist/components/ui-top-bar.js +1 -1
- package/dist/components/ui-transfer-list.js +1 -1
- package/dist/components/ui-tree.js +1 -1
- package/dist/components/ui-workspace-manager.js +1 -1
- package/dist/esm/category-section.entry.js +1 -1
- package/dist/esm/exploration-project-tailwind.js +1 -1
- package/dist/esm/layout-manager.entry.js +1 -1
- package/dist/esm/library-card.entry.js +1 -1
- package/dist/esm/lm-container_2.entry.js +1 -1
- package/dist/esm/lm-panel_3.entry.js +4 -4
- package/dist/esm/loader.js +1 -1
- package/dist/esm/my-step.entry.js +1 -1
- package/dist/esm/nav-bar.entry.js +2 -2
- package/dist/esm/{security-D2WzX6vR.js → security-Dyu3Nplq.js} +88 -154
- package/dist/esm/smart-step.entry.js +2 -2
- package/dist/esm/timeline-item.entry.js +1 -1
- package/dist/esm/{ui-accordion_10.entry.js → ui-accordion_11.entry.js} +613 -27
- package/dist/esm/ui-advanced-data-table.entry.js +1 -1
- package/dist/esm/ui-anchor.entry.js +1 -1
- package/dist/esm/ui-aside-panel.entry.js +5 -5
- package/dist/esm/ui-avatar-group_3.entry.js +5 -5
- package/dist/esm/ui-callout-banner.entry.js +1 -1
- package/dist/esm/ui-card.entry.js +26 -4
- package/dist/esm/ui-checkbox.entry.js +2 -2
- package/dist/esm/ui-code-editor.entry.js +2 -2
- package/dist/esm/ui-code-preview.entry.js +1 -1
- package/dist/esm/ui-color-controller.entry.js +1 -1
- package/dist/esm/ui-dialog-box.entry.js +1 -1
- package/dist/esm/ui-dock-host.entry.js +3 -3
- package/dist/esm/ui-drag-drop.entry.js +1 -1
- package/dist/esm/ui-empty-state.entry.js +1 -1
- package/dist/esm/ui-fab-item.entry.js +1 -1
- package/dist/esm/ui-fab.entry.js +2 -2
- package/dist/esm/ui-library.entry.js +1 -1
- package/dist/esm/ui-list-group_2.entry.js +9 -5
- package/dist/esm/ui-list.entry.js +4 -4
- package/dist/esm/ui-navigation-item.entry.js +3 -3
- package/dist/esm/ui-otp-input.entry.js +2 -2
- package/dist/esm/{ui-pagination_3.entry.js → ui-pagination_4.entry.js} +202 -1
- package/dist/esm/ui-pattern-input.entry.js +5 -5
- package/dist/esm/ui-popover.entry.js +1 -1
- package/dist/esm/ui-progress.entry.js +101 -17
- package/dist/esm/ui-resizable-panel.entry.js +1 -1
- package/dist/esm/ui-smart-location-dropdown.entry.js +2 -2
- package/dist/esm/ui-smart-stepper.entry.js +1 -1
- package/dist/esm/ui-snackbar.entry.js +1 -1
- package/dist/esm/ui-step.entry.js +1 -1
- package/dist/esm/ui-stepper.entry.js +1 -1
- package/dist/esm/ui-switch.entry.js +9 -9
- package/dist/esm/ui-tabs.entry.js +1 -1
- package/dist/esm/ui-timeline.entry.js +1 -1
- package/dist/esm/ui-toolbar.entry.js +1 -1
- package/dist/esm/ui-tooltip.entry.js +4 -4
- package/dist/esm/ui-transfer-list.entry.js +1 -1
- package/dist/esm/ui-workspace-manager.entry.js +1 -1
- package/dist/exploration-project-tailwind/exploration-project-tailwind.esm.js +1 -1
- package/dist/exploration-project-tailwind/{p-c7e87fbb.entry.js → p-036d2a44.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-62352ef2.entry.js → p-05a436d3.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-a4f52a76.entry.js → p-16bdd162.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-85bf89fd.entry.js → p-20ecc116.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-2347d21b.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-3d381f75.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-e5322e59.entry.js → p-4288c158.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-2f1aebb3.entry.js → p-4417a9d8.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-049744f9.entry.js → p-44742ddd.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-73d29a4a.entry.js → p-4aaa8e40.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-6fa9dc15.entry.js → p-4bef8bed.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-64e3a484.entry.js → p-4efd63ce.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-c5ddc817.entry.js → p-54965530.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-5c835d90.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-4de419d5.entry.js → p-6b838549.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-c174a372.entry.js → p-6ddbee42.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-7515b1e3.entry.js → p-70bacda8.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-9fa70359.entry.js → p-71d95bb1.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-2d273118.entry.js → p-7889bfc4.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-0b004861.entry.js → p-790556f0.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-f5719913.entry.js → p-7ba2258a.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-81961fb1.entry.js → p-81ebba11.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-5e3e80ae.entry.js → p-8578b616.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-3d3d48fd.entry.js → p-8b57fe4e.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-ffb1754a.entry.js → p-97af03cc.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-f0830120.entry.js → p-98e91da5.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-d2308a00.entry.js → p-9bd14f69.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-Dyu3Nplq.js +2 -0
- package/dist/exploration-project-tailwind/{p-ba21fed3.entry.js → p-a27f59d2.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-70d82d79.entry.js → p-a7b07cf4.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-5508874f.entry.js → p-bd89d060.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-9d0c8760.entry.js → p-c02284ea.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-d419eaf0.entry.js → p-c1c8ac28.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-c63c522e.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-c90722ec.entry.js → p-cbee2607.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-287dbf09.entry.js → p-d114a347.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-8d951aef.entry.js → p-d2e45c5e.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-77cc333a.entry.js → p-d59da767.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-46596a28.entry.js → p-d6ce9721.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-875be805.entry.js → p-dc92a343.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-4f6bba75.entry.js → p-e22317c1.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-d16c9635.entry.js → p-e76318c7.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-e8c6d395.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-c2ca71ac.entry.js → p-eab5ad36.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-f0bc5d7e.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-f1beee72.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-f543392f.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-46efdea3.entry.js → p-f61cfb7c.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-77124686.entry.js → p-fb4aca69.entry.js} +1 -1
- package/dist/types/components/accordion/accordion.d.ts +10 -2
- package/dist/types/components/button/button.d.ts +9 -0
- package/dist/types/components/card/card.d.ts +4 -0
- package/dist/types/components/list-item/list-item.d.ts +1 -0
- package/dist/types/components/loader/loader.d.ts +145 -0
- package/dist/types/components/progress/progress.d.ts +34 -2
- package/dist/types/components.d.ts +509 -993
- package/dist/types/types/common.d.ts +1 -1
- package/dist/types/types/common.type.d.ts +1 -1
- package/package.json +8 -7
- package/dist/cjs/ui-checkbox-group.cjs.entry.js +0 -330
- package/dist/cjs/ui-image-button.cjs.entry.js +0 -67
- package/dist/cjs/ui-input-pair.cjs.entry.js +0 -44
- package/dist/cjs/ui-radio-group.cjs.entry.js +0 -205
- package/dist/cjs/ui-radio.cjs.entry.js +0 -206
- package/dist/collection/components/checkbox-group/checkbox-group.css +0 -223
- package/dist/collection/components/checkbox-group/checkbox-group.js +0 -1001
- package/dist/collection/components/checkbox-group/types.js +0 -1
- package/dist/collection/components/image-button/image-button.css +0 -154
- package/dist/collection/components/image-button/image-button.js +0 -310
- package/dist/collection/components/image-button/types.js +0 -1
- package/dist/collection/components/input-pair/input-pair.css +0 -72
- package/dist/collection/components/input-pair/input-pair.js +0 -309
- package/dist/collection/components/radio-group/radio-group.css +0 -202
- package/dist/collection/components/radio-group/radio-group.js +0 -903
- package/dist/collection/components/radio-group/types.js +0 -1
- package/dist/components/ui-checkbox-group.d.ts +0 -11
- package/dist/components/ui-checkbox-group.js +0 -1
- package/dist/components/ui-image-button.d.ts +0 -11
- package/dist/components/ui-image-button.js +0 -1
- package/dist/components/ui-input-pair.js +0 -1
- package/dist/components/ui-radio-group.d.ts +0 -11
- package/dist/components/ui-radio-group.js +0 -1
- package/dist/esm/ui-checkbox-group.entry.js +0 -328
- package/dist/esm/ui-image-button.entry.js +0 -65
- package/dist/esm/ui-input-pair.entry.js +0 -42
- package/dist/esm/ui-radio-group.entry.js +0 -203
- package/dist/esm/ui-radio.entry.js +0 -204
- package/dist/exploration-project-tailwind/p-01c7db7a.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-5ce0dbd8.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-6ab80ead.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-6e9694f2.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-7376ac95.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-77a21491.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-7f91d949.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-807c6555.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-D2WzX6vR.js +0 -2
- package/dist/exploration-project-tailwind/p-ab752761.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-ce1222a1.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-e90d5307.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-ecda1cc3.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-f11e5cae.entry.js +0 -1
- package/dist/types/components/checkbox-group/checkbox-group.d.ts +0 -87
- package/dist/types/components/checkbox-group/types.d.ts +0 -8
- package/dist/types/components/image-button/image-button.d.ts +0 -31
- package/dist/types/components/image-button/types.d.ts +0 -1
- package/dist/types/components/input-pair/input-pair.d.ts +0 -28
- package/dist/types/components/radio-group/radio-group.d.ts +0 -74
- package/dist/types/components/radio-group/types.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as a,c as t,a as r,h as e}from"./p-DUsoYu9r.js";import{s as i}from"./p-D2WzX6vR.js";const n=class{constructor(r){a(this,r),this.snackbarClosed=t(this,"snackbarClosed"),this.snackbarAdded=t(this,"snackbarAdded"),this.snackbarUpdated=t(this,"snackbarUpdated"),this.snackbarLinkClicked=t(this,"snackbarLinkClicked"),this.snackbarActionClicked=t(this,"snackbarActionClicked")}get element(){return r(this)}position="top-right";maxVisible=5;stackMode="stack";openMode="slide-down";variant="filled";size="md";theme="auto";cardStack=!1;groupThreshold=3e3;duration=5e3;coalesce=!1;maxDuration=0;showCountdown=!1;textDirection="auto";onTextDirectionChange(){this.updateDir()}iconLibrary="lucide";portal=!0;pauseOnHover=!0;pauseOnFocusLoss=!0;soundMode="synth";particles=!0;enableSlots=!1;snackbarClosed;snackbarAdded;snackbarUpdated;snackbarLinkClicked;snackbarActionClicked;snackbars=[];visibleSnackbars=[];animatedItems=new Set;isHovered=!1;expandedSnackbars=new Set;dragX={};isDragging=null;dir="ltr";countdownSeconds={};timers={};startX=0;componentWillLoad(){this.updateVisibleSnackbars(),this.updateDir(),window.addEventListener("keydown",this.handleGlobalKeyDown),this.portal&&document.body&&this.element.parentElement!==document.body&&document.body.appendChild(this.element),window.addEventListener("blur",(()=>this.handleWindowBlur())),window.addEventListener("focus",(()=>this.handleWindowFocus()))}updateDir(){if("rtl"===this.textDirection)return void(this.dir="rtl");if("ltr"===this.textDirection)return void(this.dir="ltr");const a=getComputedStyle(this.element).direction;this.dir="rtl"===a?"rtl":"ltr"}disconnectedCallback(){window.removeEventListener("keydown",this.handleGlobalKeyDown),window.removeEventListener("blur",(()=>this.handleWindowBlur())),window.removeEventListener("focus",(()=>this.handleWindowFocus()))}handleGlobalKeyDown=a=>{"Escape"===a.key&&this.snackbars.length>0&&(a.preventDefault(),a.stopPropagation(),this.closeAll())};positionChanged(){this.updateVisibleSnackbars()}maxVisibleChanged(){this.updateVisibleSnackbars()}stackModeChanged(){this.updateVisibleSnackbars()}handleWindowBlur(){this.pauseOnFocusLoss&&(this.isHovered=!0)}handleWindowFocus(){if(this.pauseOnFocusLoss){this.isHovered=!1;const a=Date.now();Object.values(this.timers).forEach((t=>{t.lastTime=a}))}}updateVisibleSnackbars(){this.visibleSnackbars=[...this.snackbars].sort(((a,t)=>"urgent"===a.priority&&"urgent"!==t.priority?-1:"urgent"!==a.priority&&"urgent"===t.priority?1:0)).slice(0,this.maxVisible)}async add(a){if(this.coalesce){const t=this.snackbars.findIndex((t=>t.message===a.message&&t.type===a.type));if(-1!==t){const r=this.snackbars[t].id;return this.update(r,{count:(this.snackbars[t].count||1)+1,duration:a.duration||this.snackbars[t].duration||this.duration,history:[...this.snackbars[t].history||[],{message:a.message,title:a.title,timestamp:Date.now()}]}),r}}const t=this.generateId(),r={id:t,type:a.type||"info",title:a.title,message:a.message,html:a.html||!1,avatar:a.avatar,icon:a.icon,iconLibrary:a.iconLibrary||this.iconLibrary,link:a.link,action:a.action,actions:a.actions||[],duration:0===a.duration?0:this.clampDuration(a.duration||this.duration),variant:a.variant||this.variant,size:a.size||this.size,customClass:a.customClass,closable:!1!==a.closable,count:1,haptic:a.haptic||"error"===a.type,sound:a.sound,progress:a.progress||"bar",priority:a.priority||("error"===a.type?"urgent":"high"),theme:a.theme||this.theme,input:a.input,sticky:!!a.sticky,onClose:a.onClose,slot:a.slot,history:[{message:a.message,title:a.title,timestamp:Date.now()}]};return"sovereign"===r.type&&this.particles&&this.spawnParticles(t),r.haptic&&"vibrate"in navigator&&("sovereign"===r.type?navigator.vibrate([100,30,100,30,100]):navigator.vibrate("error"===r.type?[50,50,50]:30)),"synth"===this.soundMode?this.playSynthSound(r.type):r.sound&&new Audio(r.sound).play().catch((()=>{})),this.snackbars="stack"===this.stackMode||"lifo"===this.stackMode?[r,...this.snackbars]:[...this.snackbars,r],this.snackbars.length>this.maxVisible&&this.close(this.snackbars[this.snackbars.length-1].id),this.updateVisibleSnackbars(),this.startTimer(t,r.duration??0),this.snackbarAdded.emit({id:t,item:r}),t}clampDuration(a){return this.maxDuration>0&&a>this.maxDuration?this.maxDuration:a}async close(a){const t=this.snackbars.findIndex((t=>t.id===a));if(-1!==t){if(this.timers[a]&&(cancelAnimationFrame(this.timers[a].id),delete this.timers[a]),this.animatedItems.add(`${a}-closing`),this.snackbars[t]?.onClose&&this.snackbars[t].onClose(),this.snackbarClosed.emit({id:a,item:this.snackbars[t]}),this.snackbars=this.snackbars.filter((t=>t.id!==a)),this.animatedItems.delete(a),this.animatedItems.delete(`${a}-closing`),void 0!==this.countdownSeconds[a]){const{[a]:t,...r}=this.countdownSeconds;this.countdownSeconds=r}this.updateVisibleSnackbars()}}async closeAll(){Object.values(this.timers).forEach((a=>cancelAnimationFrame(a.id))),this.timers={},this.snackbars.forEach((a=>{a.onClose&&a.onClose(),this.snackbarClosed.emit({id:a.id,item:a})})),this.snackbars=[],this.visibleSnackbars=[],this.animatedItems.clear()}async closeNext(){if(0===this.snackbars.length)return;let a;a="queue"===this.stackMode?this.snackbars[this.snackbars.length-1].id:this.snackbars[0].id,await this.close(a)}async getAll(){return[...this.snackbars]}async pause(a){this.timers[a]&&(cancelAnimationFrame(this.timers[a].id),this.timers[a].id=0)}async resume(a){if(this.timers[a]&&0===this.timers[a].id&&this.timers[a].remaining>0){this.timers[a].lastTime=Date.now();const t=()=>{if(!this.timers[a])return;const r=Date.now(),e=r-this.timers[a].lastTime;this.timers[a].lastTime=r,this.isHovered||(this.timers[a].remaining-=e),this.timers[a].remaining<=0?this.close(a):this.timers[a].id=requestAnimationFrame(t)};this.timers[a].id=requestAnimationFrame(t)}}async replace(a,t){const r=this.snackbars.findIndex((t=>t.id===a));if(-1===r)return;const e={...t,id:a},i=[...this.snackbars];i[r]=e,this.snackbars=i,this.updateVisibleSnackbars(),this.timers[a]&&(cancelAnimationFrame(this.timers[a].id),delete this.timers[a]),(e.duration??0)>0&&this.startTimer(a,e.duration),this.snackbarUpdated.emit({id:a,item:e})}async promise(a,t){const r=await this.add({type:"loading",message:t.loading,duration:0,closable:!0});try{const e=await("function"==typeof a?a():a),i="function"==typeof t.success?t.success(e):t.success;return this.update(r,{type:"success",message:i,duration:t.duration||4e3,closable:!0}),e}catch(a){const e="function"==typeof t.error?t.error(a):t.error;throw this.update(r,{type:"error",message:e,duration:t.duration||5e3,closable:!0}),a}}async undoable(a){const t=await this.add({message:a.message,title:a.title,type:a.type||"neutral",duration:a.duration||6e3,action:a.action||{label:"UNDO",onClick:()=>{a.onUndo(),this.close(t)}},link:a.link}),r=e=>{e.detail.id===t&&(a.onDismiss&&a.onDismiss(),this.element.removeEventListener("snackbarClosed",r))};return this.element.addEventListener("snackbarClosed",r),t}async update(a,t){const r=this.snackbars.findIndex((t=>t.id===a));if(-1!==r){const e=void 0!==t.count&&t.count!==this.snackbars[r].count,i={...this.snackbars[r],...t},n=[...this.snackbars];n[r]=i,this.snackbars=n,this.updateVisibleSnackbars(),e&&this.triggerBadgePulse(a),void 0!==t.duration&&(this.timers[a]&&(cancelAnimationFrame(this.timers[a].id),delete this.timers[a]),t.duration>0&&this.startTimer(a,t.duration)),this.snackbarUpdated.emit({id:a,item:i})}}generateId(){return`snackbar-${Date.now()}-${Math.random().toString(36).substr(2,9)}`}startTimer(a,t){const r=this.snackbars.find((t=>t.id===a));if(t<=0||r&&r.sticky)return;this.timers[a]={remaining:t,lastTime:Date.now(),duration:t,id:0};const e=()=>{if(!this.timers[a])return;const t=Date.now(),r=t-this.timers[a].lastTime;this.timers[a].lastTime=t,this.isHovered||(this.timers[a].remaining-=r);const i=Math.min(100,Math.max(0,100-this.timers[a].remaining/this.timers[a].duration*100)),n=this.getProgressBarElement(a);n&&(n.style.width=`${i}%`);const o=this.getProgressRingElement(a);if(o&&(o.style.strokeDashoffset=""+(56.5-i/100*56.5)),this.showCountdown){const t=Math.ceil(this.timers[a].remaining/1e3);this.countdownSeconds[a]!==t&&(this.countdownSeconds={...this.countdownSeconds,[a]:t})}this.timers[a].remaining<=0?this.close(a):this.timers[a].id=requestAnimationFrame(e)};this.timers[a].id=requestAnimationFrame(e)}getProgressBarElement(a){return this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a}"] .snackbar-progress`)}getProgressRingElement(a){return this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a}"] .snackbar-progress-ring circle`)}handleCloseClick=a=>{this.close(a)};handleLinkClick=(a,t)=>{t.link&&this.snackbarLinkClicked.emit({id:a,item:t,link:t.link})};playSynthSound(a){try{const t=new(window.AudioContext||window.webkitAudioContext),r=t.createOscillator(),e=t.createGain();r.connect(e),e.connect(t.destination),"success"===a||"sovereign"===a?(r.type="sine",r.frequency.setValueAtTime(880,t.currentTime),r.frequency.exponentialRampToValueAtTime(1320,t.currentTime+.1),e.gain.setValueAtTime(.05,t.currentTime),e.gain.exponentialRampToValueAtTime(.01,t.currentTime+.3)):"error"===a||"warning"===a?(r.type="square",r.frequency.setValueAtTime(220,t.currentTime),r.frequency.exponentialRampToValueAtTime(110,t.currentTime+.1),e.gain.setValueAtTime(.05,t.currentTime),e.gain.exponentialRampToValueAtTime(.01,t.currentTime+.4)):(r.type="sine",r.frequency.setValueAtTime(440,t.currentTime),e.gain.setValueAtTime(.03,t.currentTime),e.gain.exponentialRampToValueAtTime(.01,t.currentTime+.2)),r.start(),r.stop(t.currentTime+.5)}catch(a){}}toggleExpand(a){const t=new Set(this.expandedSnackbars);t.has(a)?t.delete(a):t.add(a),this.expandedSnackbars=t}triggerBadgePulse(a){const t=this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a}"] .snackbar-badge`);t&&(t.classList.remove("pulse"),t.classList.add("pulse"))}spawnParticles(a){if("undefined"==typeof window)return;const t=["✨","⭐","💫","🌟"];setTimeout((()=>{const r=this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a}"]`);if(!r)return;"static"===getComputedStyle(r).position&&(r.style.position="relative",r.style.overflow="visible");const e=(a,e,i)=>{const n=document.createElement("span");n.className=`sb-particle sb-particle--${a}`;const o=2*Math.PI*e/i,s=80+120*Math.random(),c=Math.round(Math.cos(o)*s),l=Math.round(Math.sin(o)*s),b=Math.round(1080*Math.random()-540),d=(1+.8*Math.random()).toFixed(2),p=(.15*Math.random()).toFixed(2);if("burst"===a){const a=(6+6*Math.random()).toFixed(1);n.style.cssText=`--tx:${c};--ty:${l};--r:${b};--d:${d}s;--delay:${p}s;--size:${a}px`}else if("float"===a){const a=(12+10*Math.random()).toFixed(1);n.textContent=t[Math.floor(Math.random()*t.length)],n.style.cssText=`--tx:${c};--ty:${l};--r:${b};--d:${d}s;--delay:${p}s;--size:${a}px`}else{const a=(4+5*Math.random()).toFixed(1),t=Math.round(60*(Math.random()-.5)),r=Math.round(30*(Math.random()-.5));n.style.cssText=`top:calc(50% + ${r}px);left:calc(50% + ${t}px);--d:${(.6+.5*Math.random()).toFixed(2)}s;--delay:${p}s;--size:${a}px`}r.appendChild(n);const h=1e3*(parseFloat(d)+parseFloat(p))+50;setTimeout((()=>n.remove()),h)};let i=0,n=0,o=0;for(let a=0;a<24;a++){const t=a%3;0===t&&i<10?e("burst",i++,10):1===t&&n<8?e("float",n++,8):o<6&&e("glint",o++,6)}}),80)}handleKeyDown=(a,t,r)=>{if("Delete"===a.key||"Backspace"===a.key)this.close(t);else if("ArrowDown"===a.key){const a=this.element.shadowRoot?.querySelector(`[data-stack-index="${r+1}"]`);a&&a.focus()}else if("ArrowUp"===a.key){const a=this.element.shadowRoot?.querySelector(`[data-stack-index="${r-1}"]`);a&&a.focus()}};handleActionClick=(a,t)=>{this.snackbarActionClicked.emit({id:a,item:t}),t.action&&t.action.onClick&&t.action.onClick()};handleMouseDown=(a,t)=>{this.isDragging=t,this.startX=a.clientX,this.dragX={...this.dragX,[t]:0},document.addEventListener("mousemove",this.handleMouseMove),document.addEventListener("mouseup",this.handleMouseUp)};handleMouseMove=a=>{if(!this.isDragging)return;const t=a.clientX-this.startX;this.dragX={...this.dragX,[this.isDragging]:t}};handleMouseUp=()=>{if(!this.isDragging)return;const a=this.isDragging,t=this.dragX[a]||0;Math.abs(t)>120?(this.dragX={...this.dragX,[a]:t>0?500:-500},setTimeout((()=>this.close(a)),200)):this.dragX={...this.dragX,[a]:0},this.isDragging=null,document.removeEventListener("mousemove",this.handleMouseMove),document.removeEventListener("mouseup",this.handleMouseUp)};handleMouseEnter=()=>{if(!this.pauseOnHover)return;this.isHovered=!0;const a=Date.now();Object.values(this.timers).forEach((t=>{t.lastTime=a}))};handleTouchStart=(a,t)=>{this.isDragging=t,this.startX=a.touches[0].clientX,this.dragX={...this.dragX,[t]:0}};handleTouchMove=(a,t)=>{if(this.isDragging!==t)return;const r=a.touches[0].clientX-this.startX,e=this.position.includes("rtl"===this.dir?"left":"right"),i=this.position.includes("rtl"===this.dir?"right":"left"),n=e&&r<0||i&&r>0?.2:1;this.dragX={...this.dragX,[t]:r*n},Math.abs(r)>10&&a.preventDefault()};handleTouchEnd=a=>{if(this.isDragging!==a)return;const t=this.dragX[a]||0,r=this.position.includes("rtl"===this.dir?"left":"right"),e=this.position.includes("rtl"===this.dir?"right":"left");r&&t>100||e&&t<-100||this.position.includes("center")&&Math.abs(t)>100?(this.dragX={...this.dragX,[a]:t>0?500:-500},setTimeout((()=>this.close(a)),200)):this.dragX={...this.dragX,[a]:0},this.isDragging=null};handleMouseLeave=()=>{if(!this.pauseOnHover)return;this.isHovered=!1;const a=Date.now();Object.values(this.timers).forEach((t=>{t.lastTime=a}))};handleInputSubmit=(a,t,r)=>{t.input&&t.input.onSubmit&&(t.input.onSubmit(r),this.close(a))};renderIcon(a){if(a.avatar)return e("div",{class:"snackbar-avatar"},e("img",{src:a.avatar,alt:""}));if(a.icon)return e("div",{class:"snackbar-custom-icon"},e("ui-icon",{name:a.icon,library:a.iconLibrary||this.iconLibrary,size:"1.5rem"}));const t=a.type;if("success"===t)return e("div",{class:`snackbar-icon-draw ${t}`},e("svg",{viewBox:"0 0 52 52"},e("circle",{class:"circle",cx:"26",cy:"26",r:"25",fill:"none"}),e("path",{class:"check",fill:"none",d:"M14.1 27.2l7.1 7.2 16.7-16.8"})));if("error"===t)return e("div",{class:`snackbar-icon-draw ${t}`},e("svg",{viewBox:"0 0 52 52"},e("circle",{class:"circle",cx:"26",cy:"26",r:"25",fill:"none"}),e("path",{class:"cross",fill:"none",d:"M16 16 36 36 M36 16 16 36"})));const r={success:e("ui-icon",{name:"check-circle",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-success-600)"}}),error:e("ui-icon",{name:"alert-circle",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-danger-600)"}}),warning:e("ui-icon",{name:"alert-triangle",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-warning-600)"}}),info:e("ui-icon",{name:"info",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-info-600)"}}),neutral:e("ui-icon",{name:"bell",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-neutral-600, #6b7280)"}}),loading:e("span",{class:"snackbar-loading-spinner"}),sovereign:e("ui-icon",{name:"crown",library:this.iconLibrary,size:"1.25em",style:{color:"#fbbf24"}})};return e("div",{class:`snackbar-icon ${t}`},r[t])}getAriaLive(a){return"urgent"===a.priority?"assertive":"high"===a.priority||"error"===a.type?"polite":"off"}render(){return e("div",{key:"2ca2794f89a74dc183c6490ffcc65e493eaaea30",class:`snackbar-container ${this.position} ${this.cardStack?"card-stack":""} ${this.isHovered?"hovered":""} ${"rtl"===this.dir?"rtl":""}`,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,role:this.visibleSnackbars.some((a=>"error"===a.type||"urgent"===a.priority))?"alert":"status","aria-atomic":"true"},this.snackbars.length>1&&e("ui-button",{key:"e8288b58adc2f402e120dcacbb3d88993d535123",variant:"ghost",size:"sm",icon:"list-x",iconLibrary:this.iconLibrary,iconSize:"14px",onClick:()=>this.closeAll(),ariaLabel:"Clear all notifications",class:"snackbar-clear-all",label:`Clear All (${this.snackbars.length})`},e("span",{key:"608cb677315ac751d626e2d615ca4636e9d4a11e",class:"kb-hint",slot:"end"},"Esc")),this.cardStack&&!this.isHovered&&this.snackbars.length>1&&e("div",{key:"63bfc95aa5d3b7b5daa77cd286eadf2a57fcfcb4",class:"stack-count-badge",onClick:()=>{this.isHovered=!0},title:"Click to expand all notifications"},e("span",{key:"1b3e099e53747efe22a51b6d27aacf7e7b2ad069",class:"stack-count-number"},this.snackbars.length),e("span",{key:"e2c05e3e0334dfe39043a0bdbc05680de497f473",class:"stack-count-label"},"notifications")),this.visibleSnackbars.map(((a,t)=>{const r=this.cardStack&&!this.isHovered?t:0,n=this.animatedItems.has(`${a.id}-closing`);return e("div",{key:a.id,"data-snackbar-id":a.id,"data-stack-index":t,class:`snackbar-item ${a.type} ${a.variant||"filled"} ${a.size||"md"} ${this.openMode} ${a.customClass||""} ${this.isDragging===a.id?"dragging":""} ${n?"closing":""} theme-${a.theme||this.theme}`,style:{animationDelay:.1*t+"s","--stack-index":`${r}`,transform:this.dragX[a.id]?`translateX(${this.dragX[a.id]}px) rotate(${this.dragX[a.id]/20}deg)`:void 0,opacity:this.dragX[a.id]?`${Math.max(0,1-Math.abs(this.dragX[a.id])/400)}`:void 0,cursor:this.isDragging===a.id?"grabbing":void 0},role:"off"!==this.getAriaLive(a)?"log":void 0,"aria-live":this.getAriaLive(a),onMouseDown:t=>this.handleMouseDown(t,a.id),onKeyDown:r=>this.handleKeyDown(r,a.id,t),onTouchStart:t=>this.handleTouchStart(t,a.id),onTouchMove:t=>this.handleTouchMove(t,a.id),onTouchEnd:()=>this.handleTouchEnd(a.id),tabIndex:0},e("div",{class:"item-main-row"},this.renderIcon(a),e("div",{class:"snackbar-content"},e("div",{style:{display:"flex",alignItems:"center",gap:"8px"}},a.title&&e("div",{class:"snackbar-title","aria-label":`Title: ${a.title}`},a.title),(a.count??0)>1&&e("ui-button",{variant:"ghost",size:"sm",onClick:()=>this.toggleExpand(a.id),ariaLabel:`${a.count} occurrences. Click to toggle history.`,label:`${a.count}`,icon:this.expandedSnackbars.has(a.id)?"chevron-up":"chevron-down",iconLibrary:this.iconLibrary,iconSize:"10px",iconPosition:"right"})),this.expandedSnackbars.has(a.id)&&a.history&&e("div",{class:"snackbar-history"},a.history.map(((a,t)=>e("div",{class:"history-item",key:t},e("span",{class:"history-time"},new Date(a.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})),e("span",{class:"history-msg"},a.message))))),a.html?e("div",{class:"snackbar-message",innerHTML:i(a.message),role:"document"}):a.slot?e("div",{class:"snackbar-slot-content"},e("slot",{name:a.slot})):e("p",{class:"snackbar-message","aria-label":`Message: ${a.message}`},a.message)),!1!==a.closable&&e("ui-button",{variant:"ghost",size:"sm",iconOnly:!0,icon:"x",iconLibrary:this.iconLibrary,iconSize:"1.2em",onButtonClick:()=>this.handleCloseClick(a.id),ariaLabel:"Close snackbar",class:"snackbar-close"})),a.input&&e("div",{class:"snackbar-quick-input"},e("ui-input",{type:a.input.type||"text",placeholder:a.input.placeholder,onInputKeydown:t=>{"Enter"===t.detail.key&&this.handleInputSubmit(a.id,a,t.detail.target.value)},autoFocus:!0,size:"sm",fullWidth:!0})),(a.link||a.action||a.actions&&a.actions.length>0)&&e("div",{class:"snackbar-actions"},a.action&&e("ui-button",{variant:"ghost",size:"sm",onButtonClick:()=>this.handleActionClick(a.id,a),icon:a.action.icon,iconLibrary:this.iconLibrary,iconSize:"12px",label:a.action.label}),a.actions&&a.actions.map((t=>e("ui-button",{variant:t.variant,size:"sm",onButtonClick:()=>{t.onClick&&t.onClick(),this.handleActionClick(a.id,a)},icon:t.icon,iconLibrary:this.iconLibrary,iconSize:"12px",label:t.label}))),a.link&&e("a",{class:"snackbar-link",href:a.link.url,onClick:t=>{t.preventDefault(),this.handleLinkClick(a.id,a)}},a.link.text)),(a.duration??0)>0&&"ring"===a.progress&&e("svg",{class:"snackbar-progress-ring",viewBox:"0 0 20 20","aria-hidden":"true"},e("circle",{cx:"10",cy:"10",r:"9"})),(a.duration??0)>0&&"ring"!==a.progress&&e("div",{class:`snackbar-progress ${a.type}`,"aria-hidden":"true"}),(a.duration??0)>0&&this.showCountdown&&!a.sticky&&e("span",{class:"snackbar-countdown","aria-hidden":"true"},this.countdownSeconds[a.id]??Math.ceil((a.duration??0)/1e3),"s"),a.history&&a.history.length>1&&e("div",{class:"snackbar-history-indicator"},e("ui-button",{variant:"ghost",size:"sm",onButtonClick:t=>{const r=t.detail;r.stopPropagation();const e=r.currentTarget.closest(".snackbar-item"),i=e?.classList.toggle("history-expanded");r.currentTarget.label=i?"Hide history":`View previous history (${(a.history??[]).length-1})`},label:`View previous history (${(a.history??[]).length-1})`}),e("div",{class:"snackbar-history-list"},a.history.slice(0,-1).reverse().map((a=>e("div",{class:"history-item"},e("span",{class:"history-time"},new Date(a.timestamp).toLocaleTimeString()),e("span",{class:"history-msg"},a.message)))))))})),this.enableSlots&&e("slot",{key:"5a2fd1ebe5ba293ecf8dae3e83cbfe40ce25c995"}))}componentDidRender(){this.visibleSnackbars.forEach((a=>{this.animatedItems.has(a.id)||(this.animatedItems.add(a.id),setTimeout((()=>{const t=this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a.id}"]`);t&&t.classList.add("show")}),10))}))}static get watchers(){return{textDirection:[{onTextDirectionChange:0}],position:[{positionChanged:0}],maxVisible:[{maxVisibleChanged:0}],stackMode:[{stackModeChanged:0}]}}};n.style='@charset "UTF-8";.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.snackbar-quick-input{width:100%;margin:12px 0 0 0;display:flex;align-items:center;pointer-events:auto}.snackbar-quick-input input{width:100%;min-width:0;box-sizing:border-box;padding:8px 12px;border-radius:6px;border:1px solid var(--border-default, #e5e7eb);font-size:15px;background:var(--bg-primary, #ffffff);outline:none;transition:border 0.2s, box-shadow 0.2s}.snackbar-quick-input input:focus{border:1.5px solid var(--color-primary, #6366f1);box-shadow:0 0 0 2px var(--color-primary, #c7d2fe)}:host{display:block;position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:var(--snackbar-z-index, 10500);transform:translateZ(0);--snackbar-radius:12px;--snackbar-font:inherit;--snackbar-min-width:320px;--snackbar-max-width:440px;--snackbar-z-index:10500;--snackbar-bg:var(--bg-primary, #fdfdfd);--snackbar-color:var(--text-primary, #1f2937);--snackbar-border:rgba(0, 0, 0, 0.08);--snackbar-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);--snackbar-success-bg:var(--color-success-hover, #059669);--snackbar-error-bg:var(--color-danger-hover, #dc2626);--snackbar-warning-bg:var(--color-warning-hover, #d97706);--snackbar-info-bg:var(--color-primary-hover, #2563eb);--snackbar-neutral-bg:var(--color-primary, #4b5563);--snackbar-badge-bg:rgba(15, 23, 42, 0.85);--snackbar-badge-color:var(--color-primary, #60a5fa)}.snackbar-container{display:block;position:absolute;z-index:10501;pointer-events:none;width:auto;max-width:100vw;box-sizing:border-box;padding:16px;display:flex;flex-direction:column;gap:12px;transition:all 0.4s cubic-bezier(0.18, 0.89, 0.32, 1.28);max-height:calc(100vh - 40px)}.snackbar-clear-all{pointer-events:auto;align-self:center;margin-bottom:8px;background:rgba(255, 255, 255, 0.9);border:1px solid rgba(0, 0, 0, 0.1);border-radius:20px;padding:6px 14px;font-size:11px;font-weight:600;color:var(--text-secondary, #4b5563);display:flex;align-items:center;gap:6px;cursor:pointer;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1);backdrop-filter:blur(8px);transition:all 0.2s;z-index:2000;}.snackbar-container.card-stack:not(.hovered) .snackbar-clear-all{display:none}.snackbar-clear-all:hover{background:var(--bg-primary, #ffffff);transform:translateY(-1px);box-shadow:0 6px 10px -1px rgba(0, 0, 0, 0.15)}.snackbar-clear-all .kb-hint{background:rgba(0, 0, 0, 0.05);padding:1px 4px;border-radius:3px;font-size:9px;opacity:0.6}.snackbar-badge-btn{background:var(--snackbar-badge-bg, rgba(15, 23, 42, 0.85));color:#fff;border-radius:12px;padding:2px 8px;font-size:10px;border:none;cursor:pointer;display:flex;align-items:center;transition:transform 0.2s;pointer-events:auto}.snackbar-badge-btn:hover{transform:scale(1.05)}.snackbar-badge-btn ui-icon{margin-left:4px;display:flex}.snackbar-history{margin-top:8px;padding:8px;background:rgba(0, 0, 0, 0.03);border-radius:6px;font-size:12px;max-height:120px;overflow-y:auto;scrollbar-width:thin}.snackbar-history .history-item{display:flex;gap:8px;padding:4px 0;border-bottom:1px solid rgba(0, 0, 0, 0.05)}.snackbar-history .history-item:last-child{border-bottom:none}.snackbar-history .history-item .history-time{color:var(--text-secondary, #6b7280);font-family:monospace;white-space:nowrap}.snackbar-history .history-item .history-msg{color:var(--text-primary, #111827)}.theme-dark .snackbar-clear-all{background:var(--bg-primary, #1e293b);color:var(--text-standard, #e2e8f0);border-color:rgba(255, 255, 255, 0.1)}.snackbar-countdown{position:absolute;bottom:28px;right:12px;background:rgba(0, 0, 0, 0.55);color:rgba(255, 255, 255, 0.9);border-radius:10px;padding:2px 7px;font-size:10px;font-weight:700;letter-spacing:0.02em;pointer-events:none;opacity:1;transition:opacity 0.3s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:10;min-width:24px;text-align:center;font-variant-numeric:tabular-nums;}.snackbar-container.rtl .snackbar-countdown{right:auto;left:12px}.snackbar-container:hover .snackbar-countdown{opacity:0}.snackbar-container.top-left{top:0;left:0;align-items:flex-start}.snackbar-container.top-right{top:0;right:0;align-items:flex-end}.snackbar-container.top-center{top:0;left:50%;transform:translateX(-50%);align-items:center}.snackbar-container.bottom-left{bottom:0;left:0;flex-direction:column-reverse;align-items:flex-start}.snackbar-container.bottom-right{bottom:0;right:0;flex-direction:column-reverse;align-items:flex-end}.snackbar-container.bottom-center{bottom:0;left:50%;transform:translateX(-50%);flex-direction:column-reverse;align-items:center}.snackbar-container.rtl.top-left{left:auto;right:0;align-items:flex-end}.snackbar-container.rtl.top-right{right:auto;left:0;align-items:flex-start}.snackbar-container.rtl.bottom-left{left:auto;right:0;align-items:flex-end}.snackbar-container.rtl.bottom-right{right:auto;left:0;align-items:flex-start}.snackbar-container.rtl .snackbar-item.slide-right{animation-name:slideInLeft}.snackbar-container.rtl .snackbar-item.slide-left{animation-name:slideInRight}.snackbar-container:not(.bottom-left):not(.bottom-right):not(.bottom-center) .snackbar-item{order:var(--stack-index)}.snackbar-container.bottom-left,.snackbar-container.bottom-right,.snackbar-container.bottom-center{padding-bottom:24px}.snackbar-container.top-left,.snackbar-container.top-right,.snackbar-container.top-center{padding-top:24px}.stack-count-badge{position:absolute;bottom:-18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:4px;background:rgba(15, 23, 42, 0.85);color:var(--text-standard, #ffffff);border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700;cursor:pointer;z-index:200;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255, 255, 255, 0.15);transition:all 0.2s ease;pointer-events:auto;white-space:nowrap}.stack-count-badge:hover{background:rgba(15, 23, 42, 0.98);transform:translateX(-50%) translateY(-2px);box-shadow:0 4px 12px rgba(0, 0, 0, 0.3)}.stack-count-badge .stack-count-number{font-size:13px;font-weight:800;color:var(--color-primary, #60a5fa)}.stack-count-badge .stack-count-label{opacity:0.7;font-weight:500}.snackbar-container.bottom-left .stack-count-badge,.snackbar-container.bottom-right .stack-count-badge,.snackbar-container.bottom-center .stack-count-badge{bottom:auto;top:-18px}.snackbar-container.bottom-left .stack-count-badge:hover,.snackbar-container.bottom-right .stack-count-badge:hover,.snackbar-container.bottom-center .stack-count-badge:hover{transform:translateX(-50%) translateY(2px)}.snackbar-container.top-right .stack-count-badge,.snackbar-container.bottom-right .stack-count-badge{left:auto;right:0;transform:none}.snackbar-container.top-right .stack-count-badge:hover,.snackbar-container.bottom-right .stack-count-badge:hover{transform:translateY(-2px)}.snackbar-container.top-left .stack-count-badge,.snackbar-container.bottom-left .stack-count-badge{left:0;transform:none}.snackbar-container.top-left .stack-count-badge:hover,.snackbar-container.bottom-left .stack-count-badge:hover{transform:translateY(-2px)}.snackbar-container.card-stack{display:flex !important;flex-direction:column;width:360px;max-width:calc(100vw - 32px);min-height:160px;padding:16px;pointer-events:none;overflow:visible;--stack-gap:8px;--stack-shrink:0.04;--stack-opacity:0.15;}.snackbar-container.card-stack::before{content:"";position:absolute;inset:-8px;background:transparent;pointer-events:auto;z-index:0}.snackbar-container.card-stack:not(.hovered) .snackbar-item{position:absolute !important;margin:0 !important;pointer-events:none;transition:transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease, width 0.5s ease;width:calc(100% - var(--stack-index, 0) * 14px);opacity:calc(1 - var(--stack-index, 0) * var(--stack-opacity));filter:brightness(calc(1 - var(--stack-index, 0) * 0.08));z-index:calc(50 - var(--stack-index, 0))}.snackbar-container.card-stack.top-left:not(.hovered) .snackbar-item,.snackbar-container.card-stack.top-right:not(.hovered) .snackbar-item,.snackbar-container.card-stack.top-center:not(.hovered) .snackbar-item{top:16px;transform:translateY(calc(var(--stack-index, 0) * var(--stack-gap)))}.snackbar-container.card-stack.bottom-left:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-right:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item{bottom:16px;transform:translateY(calc(var(--stack-index, 0) * var(--stack-gap) * -1))}.snackbar-container.card-stack.top-right:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-right:not(.hovered) .snackbar-item{right:0;left:auto !important}.snackbar-container.card-stack.top-left:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-left:not(.hovered) .snackbar-item{left:0 !important;right:auto}.snackbar-container.card-stack.top-center:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item{left:50% !important;right:auto;transform:translateX(-50%) translateY(calc(var(--stack-index, 0) * var(--stack-gap)))}.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item{transform:translateX(-50%) translateY(calc(var(--stack-index, 0) * var(--stack-gap) * -1))}@keyframes stackSlideFromTop{from{transform:translateX(-50%) translateY(-40px);opacity:0}to{transform:translateX(-50%) translateY(calc(var(--stack-index, 0) * var(--stack-gap)));opacity:calc(1 - var(--stack-index, 0) * var(--stack-opacity))}}@keyframes stackSlideFromBottom{from{transform:translateX(-50%) translateY(40px);opacity:0}to{transform:translateX(-50%) translateY(calc(var(--stack-index, 0) * var(--stack-gap) * -1));opacity:calc(1 - var(--stack-index, 0) * var(--stack-opacity))}}.snackbar-container.card-stack.top-center:not(.hovered) .snackbar-item{animation:stackSlideFromTop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) both;animation-delay:calc(var(--stack-index, 0) * 60ms)}.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item{animation:stackSlideFromBottom 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) both;animation-delay:calc(var(--stack-index, 0) * 60ms)}.snackbar-container.card-stack:not(.hovered) .snackbar-item[data-stack-index="0"]{pointer-events:auto;opacity:1 !important;filter:none !important;z-index:100 !important;box-shadow:0 8px 24px rgba(0, 0, 0, 0.18)}.snackbar-container.card-stack.top-center:not(.hovered) .snackbar-item[data-stack-index="0"],.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item[data-stack-index="0"]{transform:translateX(-50%) !important}.snackbar-container.card-stack.hovered{pointer-events:auto;align-items:stretch;}.snackbar-container.card-stack.hovered .snackbar-item{position:relative !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;width:100% !important;transform:none !important;opacity:1 !important;filter:none !important;pointer-events:auto;margin:0 0 8px 0 !important;z-index:auto !important;box-shadow:0 4px 12px rgba(0, 0, 0, 0.1);transition:transform 0.3s ease, box-shadow 0.2s ease}.snackbar-container.card-stack.hovered .snackbar-item:last-child{margin-bottom:0 !important}.snackbar-container.card-stack.hovered .snackbar-item:hover{transform:translateY(-2px) !important;box-shadow:0 12px 24px rgba(0, 0, 0, 0.14)}.snackbar-item{box-sizing:border-box;display:flex;flex-direction:column;width:auto;min-width:var(--snackbar-min-width, 320px);max-width:var(--snackbar-max-width, 440px);padding:16px;border-radius:var(--snackbar-radius, 12px);pointer-events:auto;box-shadow:var(--snackbar-shadow, 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05));background:var(--snackbar-bg, #fdfdfd);color:var(--snackbar-color, var(--text-primary, #1f2937));transition:all 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28), transform 0.2s ease;position:relative;overflow:visible;backdrop-filter:blur(16px);border:1px solid var(--snackbar-border, rgba(0, 0, 0, 0.08));z-index:calc(100 - var(--stack-index))}.snackbar-item:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)}.snackbar-item:focus-visible{outline:2px solid var(--color-primary, #10b981);outline-offset:4px;box-shadow:0 0 0 4px rgba(var(--color-primary-rgb, 59, 130, 246), 0.4);background:var(--bg-primary, #ffffff) !important}.snackbar-item{}.snackbar-item.sm{min-width:280px;padding:10px 12px;--snackbar-title-size:13px;--snackbar-msg-size:12px;--snackbar-icon-size:1.1rem;gap:8px}.snackbar-item.md{min-width:320px;padding:16px;--snackbar-title-size:15px;--snackbar-msg-size:14px;--snackbar-icon-size:1.25rem}.snackbar-item.lg{min-width:400px;padding:20px 24px;--snackbar-title-size:18px;--snackbar-msg-size:16px;--snackbar-icon-size:1.5rem;gap:16px}.item-main-row{display:flex;align-items:flex-start;gap:12px;width:100%}.snackbar-content{flex:1;min-width:0}.snackbar-title{font-weight:700;font-size:var(--snackbar-title-size, 15px);color:inherit;margin-bottom:2px;display:flex;align-items:center;gap:8px}.snackbar-message{font-size:var(--snackbar-msg-size, 14px);line-height:1.5;color:inherit;opacity:0.9;margin:0;word-break:break-word;white-space:pre-wrap}.snackbar-icon,.snackbar-custom-icon{font-size:var(--snackbar-icon-size, 1.25rem)}.snackbar-badge{background:rgba(0, 0, 0, 0.1);padding:2px 8px;border-radius:12px;font-size:11px;font-weight:800;transition:all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.snackbar-badge.pulse{animation:badgePop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275)}@keyframes badgePop{0%{transform:scale(1)}50%{transform:scale(1.6);background:var(--color-danger, #fbbf24);color:var(--text-primary, #000);box-shadow:0 0 15px rgba(251, 191, 36, 0.5)}100%{transform:scale(1)}}.snackbar-item.filled{color:var(--text-standard, #ffffff);border:none}.snackbar-item.filled.success{background:var(--snackbar-success-bg, var(--color-success-hover, #059669))}.snackbar-item.filled.error{background:var(--snackbar-error-bg, var(--color-danger-hover, #dc2626))}.snackbar-item.filled.warning{background:var(--snackbar-warning-bg, var(--color-warning-hover, #d97706))}.snackbar-item.filled.info{background:var(--snackbar-info-bg, var(--color-primary-hover, #2563eb))}.snackbar-item.filled.neutral{background:var(--snackbar-neutral-bg, #4b5563)}.snackbar-item.filled.loading{background:var(--snackbar-neutral-bg, #4b5563)}.snackbar-item.glass{background:rgba(255, 255, 255, 0.6);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255, 255, 255, 0.4);box-shadow:0 8px 32px 0 rgba(31, 38, 135, 0.15);color:var(--text-primary, #1e293b)}.snackbar-item.glass.success{border-left:4px solid var(--color-success, #10b981);background:rgba(236, 253, 245, 0.6)}.snackbar-item.glass.error{border-left:4px solid var(--color-danger, #ef4444);background:rgba(254, 242, 242, 0.6)}.snackbar-item.glass.warning{border-left:4px solid var(--color-warning, #f59e0b);background:rgba(255, 251, 235, 0.6)}.snackbar-item.glass.info{border-left:4px solid var(--color-primary, #10b981);background:rgba(239, 246, 255, 0.6)}.snackbar-item.glass .snackbar-action-btn:not(.variant-danger){background:rgba(0, 0, 0, 0.05);border-color:rgba(0, 0, 0, 0.1);color:var(--color-primary, #334155)}.snackbar-item.glass .snackbar-action-btn:not(.variant-danger):hover{background:rgba(0, 0, 0, 0.1)}.snackbar-item.outlined{background:rgba(255, 255, 255, 0.9);border-width:1.5px;border-style:solid}.snackbar-item.outlined.success{border-color:var(--color-success-hover, #059669);color:var(--color-success-hover, #059669)}.snackbar-item.outlined.error{border-color:var(--color-danger-hover, #dc2626);color:var(--color-danger-hover, #dc2626)}.snackbar-item.outlined.warning{border-color:var(--color-warning-hover, #d97706);color:var(--color-warning-hover, #d97706)}.snackbar-item.outlined.info{border-color:var(--color-primary-hover, #2563eb);color:var(--color-primary-hover, #2563eb)}.snackbar-item.outlined.neutral{border-color:var(--border-strong, #4b5563);color:var(--text-secondary, #4b5563)}.snackbar-item.soft{background:rgba(255, 255, 255, 0.95)}.snackbar-item.soft.success{border-left:4px solid var(--color-success, #10b981);background:var(--bg-primary, #ecfdf5);color:var(--color-primary, #065f46)}.snackbar-item.soft.success .snackbar-title,.snackbar-item.soft.success .snackbar-icon{color:var(--color-success-hover, #059669)}.snackbar-item.soft.error{border-left:4px solid var(--color-danger, #ef4444);background:var(--bg-primary, #fef2f2);color:var(--color-danger, #991b1b)}.snackbar-item.soft.error .snackbar-title,.snackbar-item.soft.error .snackbar-icon{color:var(--color-danger-hover, #dc2626)}.snackbar-item.soft.warning{border-left:4px solid var(--color-warning, #f59e0b);background:var(--bg-primary, #fffbeb);color:var(--color-danger, #92400e)}.snackbar-item.soft.warning .snackbar-title,.snackbar-item.soft.warning .snackbar-icon{color:var(--color-warning-hover, #d97706)}.snackbar-item.soft.info{border-left:4px solid var(--color-primary, #10b981);background:var(--bg-primary, #eff6ff);color:var(--color-primary, #1e40af)}.snackbar-item.soft.info .snackbar-title,.snackbar-item.soft.info .snackbar-icon{color:var(--color-primary-hover, #2563eb)}.snackbar-item.soft.neutral{border-left:4px solid var(--color-primary, #475569);background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #374151)}.snackbar-item.soft.neutral .snackbar-title,.snackbar-item.soft.neutral .snackbar-icon{color:var(--color-primary, #475569)}.snackbar-item.neutral:not(.filled),.snackbar-item.loading:not(.filled){background:var(--bg-primary, #f8fafc);border-color:var(--border-subtle, #e2e8f0);color:var(--color-primary, #334155)}.snackbar-item.filled.success{background:var(--color-success, #10b981);color:var(--text-standard, #ffffff)}.snackbar-item.filled.error{background:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff)}.snackbar-item.filled.warning{background:var(--color-warning, #f59e0b);color:var(--text-standard, #ffffff)}.snackbar-item.filled.info{background:var(--color-primary, #10b981);color:var(--text-standard, #ffffff)}.snackbar-item.filled.neutral{background:var(--color-primary, #334155);color:var(--text-standard, #ffffff)}.snackbar-item.filled.loading{background:var(--color-primary, #475569);color:var(--text-standard, #ffffff)}.snackbar-item.sovereign{background:linear-gradient(135deg, var(--bg-primary, #1e293b) 0%, var(--bg-secondary, #0f172a) 100%);color:var(--color-danger, #fbbf24);border:1px solid rgba(251, 191, 36, 0.4);box-shadow:0 0 20px rgba(251, 191, 36, 0.15), 0 10px 15px -3px rgba(0, 0, 0, 0.3);overflow:hidden}.snackbar-item.sovereign::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle, rgba(251, 191, 36, 0.1) 0%, transparent 70%);opacity:0.5;animation:sovereignPulse 4s infinite alternate}.snackbar-item.sovereign .snackbar-title{color:var(--color-danger, #fbbf24);text-shadow:0 0 8px rgba(251, 191, 36, 0.4);letter-spacing:0.05em}.snackbar-item.sovereign .snackbar-badge{background:var(--color-danger, #fbbf24);color:var(--text-primary, #0f172a)}.snackbar-item.sovereign .snackbar-progress{background:var(--color-danger, #fbbf24);box-shadow:0 0 10px var(--color-danger, #fbbf24);height:3px}.snackbar-item.sovereign .snackbar-icon{color:var(--color-danger, #fbbf24);filter:drop-shadow(0 0 5px rgba(251, 191, 36, 0.6))}@keyframes sovereignPulse{0%{transform:scale(1) translate(0, 0);opacity:0.3}100%{transform:scale(1.2) translate(5%, 5%);opacity:0.6}}.snackbar-item.theme-dark{background:var(--bg-secondary, #111827);color:var(--text-standard, #ffffff);border-color:rgba(255, 255, 255, 0.1);box-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.5)}.snackbar-item{opacity:0;transition:all 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28), opacity 0.3s ease, max-height 0.4s ease, margin 0.4s ease;max-height:200px}.snackbar-item.slide-up{transform:translateY(40px) scale(0.9)}.snackbar-item.slide-down{transform:translateY(-40px) scale(0.9)}.snackbar-item.slide-left{transform:translateX(-100%) scale(0.9)}.snackbar-item.slide-right{transform:translateX(100%) scale(0.9)}.snackbar-item.fade{transform:scale(0.95)}.snackbar-item.scale{transform:scale(0.1)}.snackbar-item.spring{transform:translateY(100px)}.snackbar-item.show{opacity:1;transform:translate(0, 0) scale(1)}.snackbar-item.closing{opacity:0 !important;transform:scale(0.8) translateY(20px) !important;pointer-events:none;max-height:0 !important;margin-top:0 !important;margin-bottom:0 !important;padding-top:0 !important;padding-bottom:0 !important;overflow:hidden;filter:blur(8px)}.snackbar-container.top-left .snackbar-item.closing,.snackbar-container.top-right .snackbar-item.closing,.snackbar-container.top-center .snackbar-item.closing{transform:scale(0.8) translateY(-20px) !important}.snackbar-item.spring.show{animation:springEntry 0.6s cubic-bezier(0.18, 0.89, 0.32, 1.28) forwards}@keyframes springEntry{0%{transform:translateY(100px) scale(0.4);opacity:0}70%{transform:translateY(-10px) scale(1.05);opacity:1}100%{transform:translateY(0) scale(1);opacity:1}}.snackbar-item.bounce.show{animation:bounceIn 0.5s cubic-bezier(0.36, 0, 0.66, -0.56) forwards}@keyframes bounceIn{0%{transform:scale(0.3);opacity:0}50%{transform:scale(1.1);opacity:1}70%{transform:scale(0.9)}100%{transform:scale(1)}}.snackbar-actions{display:flex;align-items:center;gap:12px;margin-top:10px}.snackbar-action-btn{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;background:rgba(0, 0, 0, 0.1);border:1px solid rgba(0, 0, 0, 0.1);color:inherit;cursor:pointer;transition:all 0.2s}.snackbar-action-btn:hover{background:rgba(0, 0, 0, 0.2)}.snackbar-item.filled .snackbar-action-btn{background:rgba(255, 255, 255, 0.2);border-color:rgba(255, 255, 255, 0.3)}.snackbar-item.filled .snackbar-action-btn:hover{background:rgba(255, 255, 255, 0.3)}.snackbar-action-btn.variant-primary{background:var(--color-primary, #10b981);color:var(--text-standard, #ffffff);border-color:var(--color-primary-hover, #2563eb)}.snackbar-action-btn.variant-primary:hover{background:var(--color-primary-hover, #2563eb)}.snackbar-action-btn.variant-danger{background:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff);border-color:var(--color-danger-hover, #dc2626)}.snackbar-action-btn.variant-danger:hover{background:var(--color-danger-hover, #dc2626)}.snackbar-action-btn.variant-text{background:transparent;border:none;font-weight:600;padding:4px 6px}.snackbar-action-btn.variant-text:hover{text-decoration:underline;background:rgba(0, 0, 0, 0.05)}.snackbar-link{font-size:12px;text-decoration:underline;color:inherit;opacity:0.8;font-weight:500}.snackbar-link:hover{opacity:1}.snackbar-progress{position:absolute;bottom:0;left:0;height:4px;background:rgba(255, 255, 255, 0.5);width:0%;transition:width linear;}.snackbar-container.hovered .snackbar-progress{animation:progressPulse 2s infinite ease-in-out}@keyframes progressPulse{0%,100%{opacity:0.5}50%{opacity:0.8}}.snackbar-item:not(.filled) .snackbar-progress,.snackbar-item.neutral.filled .snackbar-progress,.snackbar-item.outlined .snackbar-progress,.snackbar-item.soft .snackbar-progress{background:currentColor;opacity:0.15}.snackbar-progress-ring{position:absolute;top:12px;right:12px;width:20px;height:20px;transform:rotate(-90deg)}.snackbar-progress-ring circle{fill:none;stroke:currentColor;stroke-width:2;stroke-dasharray:56.5;stroke-dashoffset:56.5;opacity:0.3}.snackbar-close{background:none;border:none;color:inherit;cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0.6;transition:all 0.2s}.snackbar-close:hover{opacity:1;background:rgba(0, 0, 0, 0.05)}.snackbar-icon-draw{width:24px;height:24px}.circle{stroke-dasharray:157;stroke-dashoffset:157;stroke-width:2;stroke-miterlimit:10;stroke:currentColor;fill:none;animation:stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards}.check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;stroke:currentColor;stroke-width:3;animation:stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards}@keyframes stroke{100%{stroke-dashoffset:0}}.snackbar-history-indicator{margin-top:12px;border-top:1px solid rgba(0, 0, 0, 0.05);padding-top:8px;width:100%}.expand-history-btn{background:transparent;border:none;font-size:11px;font-weight:600;color:inherit;opacity:0.6;cursor:pointer;padding:4px 0;display:flex;align-items:center;gap:4px}.expand-history-btn:hover{opacity:1;text-decoration:underline}.snackbar-history-list{max-height:0;overflow:hidden;transition:max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);display:flex;flex-direction:column;gap:6px}.snackbar-item.history-expanded .snackbar-history-list{max-height:150px;margin-top:8px;overflow-y:auto}.history-item{display:flex;flex-direction:column;padding:6px 8px;background:rgba(0, 0, 0, 0.03);border-radius:4px;font-size:12px}.history-item .history-time{font-size:10px;font-weight:700;opacity:0.5}.history-item .history-msg{opacity:0.8}.theme-dark .history-item{background:rgba(255, 255, 255, 0.05)}.snackbar-item.filled .history-item{background:rgba(255, 255, 255, 0.1)}.snackbar-loading-spinner{width:18px;height:18px;border:2px solid rgba(255, 255, 255, 0.3);border-radius:50%;border-top-color:var(--bg-primary, #ffffff);animation:spin 0.8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.snackbar-quick-input{width:100%;margin-top:8px}.snackbar-quick-input input{width:100%;padding:8px 12px;border-radius:6px;border:1px solid rgba(0, 0, 0, 0.1);background:rgba(255, 255, 255, 0.5);font-size:13px;outline:none}.snackbar-quick-input input:focus{border-color:var(--color-primary, #10b981);background:var(--bg-primary, #ffffff)}@media (max-width: 500px){.snackbar-container{left:0 !important;right:0 !important;width:100% !important;max-width:100% !important;transform:none !important;padding:12px !important;bottom:0 !important;top:auto !important;}.snackbar-container.top-left,.snackbar-container.top-right,.snackbar-container.top-center{top:0 !important;bottom:auto !important}.snackbar-item{width:100% !important;min-width:0 !important;max-width:100% !important;margin-left:0 !important;margin-right:0 !important}.snackbar-clear-all{width:auto;align-self:center}.snackbar-container.card-stack{min-width:0 !important}.snackbar-container.card-stack::before{display:none}.snackbar-container.card-stack{}}@keyframes sb-particle-burst{0%{transform:translate(-50%, -50%) translate(0, 0) scale(0) rotate(0deg);opacity:0}15%{opacity:1;transform:translate(-50%, -50%) translate(calc(var(--tx) * 0.25px), calc(var(--ty) * 0.25px)) scale(var(--s)) rotate(calc(var(--r) * 0.2deg))}80%{opacity:0.7}100%{transform:translate(-50%, -50%) translate(calc(var(--tx) * 1px), calc(var(--ty) * 1px)) scale(0) rotate(calc(var(--r) * 1deg));opacity:0}}@keyframes sb-particle-float{0%{transform:translate(-50%, -50%) translate(0, 0) scale(0.5) rotate(0deg);opacity:0}20%{opacity:1}100%{transform:translate(-50%, -50%) translate(calc(var(--tx) * 0.5px), calc(var(--ty) * 1px)) scale(0) rotate(calc(var(--r) * 0.5deg));opacity:0}}@keyframes sb-particle-glint{0%{transform:translate(-50%, -50%) scale(0);opacity:0}30%{transform:translate(-50%, -50%) scale(1.6);opacity:1}100%{transform:translate(-50%, -50%) scale(0.3);opacity:0}}.sb-particle{position:absolute;top:50%;left:50%;pointer-events:none;will-change:transform, opacity;z-index:1000;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(0.19, 1, 0.22, 1);animation-duration:var(--d, 1.2s);animation-delay:var(--delay, 0s)}.sb-particle.sb-particle--burst{width:var(--size, 8px);height:var(--size, 8px);border-radius:50%;background:radial-gradient(circle, #fbbf24 0%, #f97316 60%, transparent 100%);box-shadow:0 0 6px 1px rgba(251, 191, 36, 0.5019607843);animation-name:sb-particle-burst}.sb-particle.sb-particle--float{font-size:var(--size, 14px);line-height:1;animation-name:sb-particle-float}.sb-particle.sb-particle--glint{width:var(--size, 6px);height:var(--size, 6px);border-radius:50%;background:#fff;box-shadow:0 0 4px 2px rgba(255, 255, 255, 0.5019607843);animation-name:sb-particle-glint}.snackbar-particle{position:absolute;top:50%;left:50%;pointer-events:none;z-index:1000;opacity:0;will-change:transform, opacity}.snackbar-particle.type-glow{width:8px;height:8px;background:radial-gradient(circle, #fbbf24 0%, transparent 70%);border-radius:50%;box-shadow:0 0 10px #fbbf24;animation:snackbarParticleExplode 1.6s cubic-bezier(0.19, 1, 0.22, 1) forwards}.snackbar-particle.type-emoji{animation:snackbarParticleExplodeRotate 1.8s cubic-bezier(0.19, 1, 0.22, 1) forwards;white-space:nowrap}@keyframes snackbarParticleExplode{0%{transform:translate(-50%, -50%) scale(0);opacity:0}20%{transform:translate(-50%, -50%) scale(1.5);opacity:1}100%{transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(0);opacity:0}}@keyframes snackbarParticleExplodeRotate{0%{transform:translate(-50%, -50%) scale(0) rotate(0deg);opacity:0}20%{transform:translate(-50%, -50%) scale(1.5) rotate(0deg);opacity:1}100%{transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(0) rotate(var(--rot));opacity:0}}';export{n as ui_snackbar}
|
|
1
|
+
import{r as a,c as t,a as r,h as e}from"./p-DUsoYu9r.js";import{s as i}from"./p-Dyu3Nplq.js";const n=class{constructor(r){a(this,r),this.snackbarClosed=t(this,"snackbarClosed"),this.snackbarAdded=t(this,"snackbarAdded"),this.snackbarUpdated=t(this,"snackbarUpdated"),this.snackbarLinkClicked=t(this,"snackbarLinkClicked"),this.snackbarActionClicked=t(this,"snackbarActionClicked")}get element(){return r(this)}position="top-right";maxVisible=5;stackMode="stack";openMode="slide-down";variant="filled";size="md";theme="auto";cardStack=!1;groupThreshold=3e3;duration=5e3;coalesce=!1;maxDuration=0;showCountdown=!1;textDirection="auto";onTextDirectionChange(){this.updateDir()}iconLibrary="lucide";portal=!0;pauseOnHover=!0;pauseOnFocusLoss=!0;soundMode="synth";particles=!0;enableSlots=!1;snackbarClosed;snackbarAdded;snackbarUpdated;snackbarLinkClicked;snackbarActionClicked;snackbars=[];visibleSnackbars=[];animatedItems=new Set;isHovered=!1;expandedSnackbars=new Set;dragX={};isDragging=null;dir="ltr";countdownSeconds={};timers={};startX=0;componentWillLoad(){this.updateVisibleSnackbars(),this.updateDir(),window.addEventListener("keydown",this.handleGlobalKeyDown),this.portal&&document.body&&this.element.parentElement!==document.body&&document.body.appendChild(this.element),window.addEventListener("blur",(()=>this.handleWindowBlur())),window.addEventListener("focus",(()=>this.handleWindowFocus()))}updateDir(){if("rtl"===this.textDirection)return void(this.dir="rtl");if("ltr"===this.textDirection)return void(this.dir="ltr");const a=getComputedStyle(this.element).direction;this.dir="rtl"===a?"rtl":"ltr"}disconnectedCallback(){window.removeEventListener("keydown",this.handleGlobalKeyDown),window.removeEventListener("blur",(()=>this.handleWindowBlur())),window.removeEventListener("focus",(()=>this.handleWindowFocus()))}handleGlobalKeyDown=a=>{"Escape"===a.key&&this.snackbars.length>0&&(a.preventDefault(),a.stopPropagation(),this.closeAll())};positionChanged(){this.updateVisibleSnackbars()}maxVisibleChanged(){this.updateVisibleSnackbars()}stackModeChanged(){this.updateVisibleSnackbars()}handleWindowBlur(){this.pauseOnFocusLoss&&(this.isHovered=!0)}handleWindowFocus(){if(this.pauseOnFocusLoss){this.isHovered=!1;const a=Date.now();Object.values(this.timers).forEach((t=>{t.lastTime=a}))}}updateVisibleSnackbars(){this.visibleSnackbars=[...this.snackbars].sort(((a,t)=>"urgent"===a.priority&&"urgent"!==t.priority?-1:"urgent"!==a.priority&&"urgent"===t.priority?1:0)).slice(0,this.maxVisible)}async add(a){if(this.coalesce){const t=this.snackbars.findIndex((t=>t.message===a.message&&t.type===a.type));if(-1!==t){const r=this.snackbars[t].id;return this.update(r,{count:(this.snackbars[t].count||1)+1,duration:a.duration||this.snackbars[t].duration||this.duration,history:[...this.snackbars[t].history||[],{message:a.message,title:a.title,timestamp:Date.now()}]}),r}}const t=this.generateId(),r={id:t,type:a.type||"info",title:a.title,message:a.message,html:a.html||!1,avatar:a.avatar,icon:a.icon,iconLibrary:a.iconLibrary||this.iconLibrary,link:a.link,action:a.action,actions:a.actions||[],duration:0===a.duration?0:this.clampDuration(a.duration||this.duration),variant:a.variant||this.variant,size:a.size||this.size,customClass:a.customClass,closable:!1!==a.closable,count:1,haptic:a.haptic||"error"===a.type,sound:a.sound,progress:a.progress||"bar",priority:a.priority||("error"===a.type?"urgent":"high"),theme:a.theme||this.theme,input:a.input,sticky:!!a.sticky,onClose:a.onClose,slot:a.slot,history:[{message:a.message,title:a.title,timestamp:Date.now()}]};return"sovereign"===r.type&&this.particles&&this.spawnParticles(t),r.haptic&&"vibrate"in navigator&&("sovereign"===r.type?navigator.vibrate([100,30,100,30,100]):navigator.vibrate("error"===r.type?[50,50,50]:30)),"synth"===this.soundMode?this.playSynthSound(r.type):r.sound&&new Audio(r.sound).play().catch((()=>{})),this.snackbars="stack"===this.stackMode||"lifo"===this.stackMode?[r,...this.snackbars]:[...this.snackbars,r],this.snackbars.length>this.maxVisible&&this.close(this.snackbars[this.snackbars.length-1].id),this.updateVisibleSnackbars(),this.startTimer(t,r.duration??0),this.snackbarAdded.emit({id:t,item:r}),t}clampDuration(a){return this.maxDuration>0&&a>this.maxDuration?this.maxDuration:a}async close(a){const t=this.snackbars.findIndex((t=>t.id===a));if(-1!==t){if(this.timers[a]&&(cancelAnimationFrame(this.timers[a].id),delete this.timers[a]),this.animatedItems.add(`${a}-closing`),this.snackbars[t]?.onClose&&this.snackbars[t].onClose(),this.snackbarClosed.emit({id:a,item:this.snackbars[t]}),this.snackbars=this.snackbars.filter((t=>t.id!==a)),this.animatedItems.delete(a),this.animatedItems.delete(`${a}-closing`),void 0!==this.countdownSeconds[a]){const{[a]:t,...r}=this.countdownSeconds;this.countdownSeconds=r}this.updateVisibleSnackbars()}}async closeAll(){Object.values(this.timers).forEach((a=>cancelAnimationFrame(a.id))),this.timers={},this.snackbars.forEach((a=>{a.onClose&&a.onClose(),this.snackbarClosed.emit({id:a.id,item:a})})),this.snackbars=[],this.visibleSnackbars=[],this.animatedItems.clear()}async closeNext(){if(0===this.snackbars.length)return;let a;a="queue"===this.stackMode?this.snackbars[this.snackbars.length-1].id:this.snackbars[0].id,await this.close(a)}async getAll(){return[...this.snackbars]}async pause(a){this.timers[a]&&(cancelAnimationFrame(this.timers[a].id),this.timers[a].id=0)}async resume(a){if(this.timers[a]&&0===this.timers[a].id&&this.timers[a].remaining>0){this.timers[a].lastTime=Date.now();const t=()=>{if(!this.timers[a])return;const r=Date.now(),e=r-this.timers[a].lastTime;this.timers[a].lastTime=r,this.isHovered||(this.timers[a].remaining-=e),this.timers[a].remaining<=0?this.close(a):this.timers[a].id=requestAnimationFrame(t)};this.timers[a].id=requestAnimationFrame(t)}}async replace(a,t){const r=this.snackbars.findIndex((t=>t.id===a));if(-1===r)return;const e={...t,id:a},i=[...this.snackbars];i[r]=e,this.snackbars=i,this.updateVisibleSnackbars(),this.timers[a]&&(cancelAnimationFrame(this.timers[a].id),delete this.timers[a]),(e.duration??0)>0&&this.startTimer(a,e.duration),this.snackbarUpdated.emit({id:a,item:e})}async promise(a,t){const r=await this.add({type:"loading",message:t.loading,duration:0,closable:!0});try{const e=await("function"==typeof a?a():a),i="function"==typeof t.success?t.success(e):t.success;return this.update(r,{type:"success",message:i,duration:t.duration||4e3,closable:!0}),e}catch(a){const e="function"==typeof t.error?t.error(a):t.error;throw this.update(r,{type:"error",message:e,duration:t.duration||5e3,closable:!0}),a}}async undoable(a){const t=await this.add({message:a.message,title:a.title,type:a.type||"neutral",duration:a.duration||6e3,action:a.action||{label:"UNDO",onClick:()=>{a.onUndo(),this.close(t)}},link:a.link}),r=e=>{e.detail.id===t&&(a.onDismiss&&a.onDismiss(),this.element.removeEventListener("snackbarClosed",r))};return this.element.addEventListener("snackbarClosed",r),t}async update(a,t){const r=this.snackbars.findIndex((t=>t.id===a));if(-1!==r){const e=void 0!==t.count&&t.count!==this.snackbars[r].count,i={...this.snackbars[r],...t},n=[...this.snackbars];n[r]=i,this.snackbars=n,this.updateVisibleSnackbars(),e&&this.triggerBadgePulse(a),void 0!==t.duration&&(this.timers[a]&&(cancelAnimationFrame(this.timers[a].id),delete this.timers[a]),t.duration>0&&this.startTimer(a,t.duration)),this.snackbarUpdated.emit({id:a,item:i})}}generateId(){return`snackbar-${Date.now()}-${Math.random().toString(36).substr(2,9)}`}startTimer(a,t){const r=this.snackbars.find((t=>t.id===a));if(t<=0||r&&r.sticky)return;this.timers[a]={remaining:t,lastTime:Date.now(),duration:t,id:0};const e=()=>{if(!this.timers[a])return;const t=Date.now(),r=t-this.timers[a].lastTime;this.timers[a].lastTime=t,this.isHovered||(this.timers[a].remaining-=r);const i=Math.min(100,Math.max(0,100-this.timers[a].remaining/this.timers[a].duration*100)),n=this.getProgressBarElement(a);n&&(n.style.width=`${i}%`);const o=this.getProgressRingElement(a);if(o&&(o.style.strokeDashoffset=""+(56.5-i/100*56.5)),this.showCountdown){const t=Math.ceil(this.timers[a].remaining/1e3);this.countdownSeconds[a]!==t&&(this.countdownSeconds={...this.countdownSeconds,[a]:t})}this.timers[a].remaining<=0?this.close(a):this.timers[a].id=requestAnimationFrame(e)};this.timers[a].id=requestAnimationFrame(e)}getProgressBarElement(a){return this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a}"] .snackbar-progress`)}getProgressRingElement(a){return this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a}"] .snackbar-progress-ring circle`)}handleCloseClick=a=>{this.close(a)};handleLinkClick=(a,t)=>{t.link&&this.snackbarLinkClicked.emit({id:a,item:t,link:t.link})};playSynthSound(a){try{const t=new(window.AudioContext||window.webkitAudioContext),r=t.createOscillator(),e=t.createGain();r.connect(e),e.connect(t.destination),"success"===a||"sovereign"===a?(r.type="sine",r.frequency.setValueAtTime(880,t.currentTime),r.frequency.exponentialRampToValueAtTime(1320,t.currentTime+.1),e.gain.setValueAtTime(.05,t.currentTime),e.gain.exponentialRampToValueAtTime(.01,t.currentTime+.3)):"error"===a||"warning"===a?(r.type="square",r.frequency.setValueAtTime(220,t.currentTime),r.frequency.exponentialRampToValueAtTime(110,t.currentTime+.1),e.gain.setValueAtTime(.05,t.currentTime),e.gain.exponentialRampToValueAtTime(.01,t.currentTime+.4)):(r.type="sine",r.frequency.setValueAtTime(440,t.currentTime),e.gain.setValueAtTime(.03,t.currentTime),e.gain.exponentialRampToValueAtTime(.01,t.currentTime+.2)),r.start(),r.stop(t.currentTime+.5)}catch(a){}}toggleExpand(a){const t=new Set(this.expandedSnackbars);t.has(a)?t.delete(a):t.add(a),this.expandedSnackbars=t}triggerBadgePulse(a){const t=this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a}"] .snackbar-badge`);t&&(t.classList.remove("pulse"),t.classList.add("pulse"))}spawnParticles(a){if("undefined"==typeof window)return;const t=["✨","⭐","💫","🌟"];setTimeout((()=>{const r=this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a}"]`);if(!r)return;"static"===getComputedStyle(r).position&&(r.style.position="relative",r.style.overflow="visible");const e=(a,e,i)=>{const n=document.createElement("span");n.className=`sb-particle sb-particle--${a}`;const o=2*Math.PI*e/i,s=80+120*Math.random(),c=Math.round(Math.cos(o)*s),l=Math.round(Math.sin(o)*s),b=Math.round(1080*Math.random()-540),d=(1+.8*Math.random()).toFixed(2),p=(.15*Math.random()).toFixed(2);if("burst"===a){const a=(6+6*Math.random()).toFixed(1);n.style.cssText=`--tx:${c};--ty:${l};--r:${b};--d:${d}s;--delay:${p}s;--size:${a}px`}else if("float"===a){const a=(12+10*Math.random()).toFixed(1);n.textContent=t[Math.floor(Math.random()*t.length)],n.style.cssText=`--tx:${c};--ty:${l};--r:${b};--d:${d}s;--delay:${p}s;--size:${a}px`}else{const a=(4+5*Math.random()).toFixed(1),t=Math.round(60*(Math.random()-.5)),r=Math.round(30*(Math.random()-.5));n.style.cssText=`top:calc(50% + ${r}px);left:calc(50% + ${t}px);--d:${(.6+.5*Math.random()).toFixed(2)}s;--delay:${p}s;--size:${a}px`}r.appendChild(n);const h=1e3*(parseFloat(d)+parseFloat(p))+50;setTimeout((()=>n.remove()),h)};let i=0,n=0,o=0;for(let a=0;a<24;a++){const t=a%3;0===t&&i<10?e("burst",i++,10):1===t&&n<8?e("float",n++,8):o<6&&e("glint",o++,6)}}),80)}handleKeyDown=(a,t,r)=>{if("Delete"===a.key||"Backspace"===a.key)this.close(t);else if("ArrowDown"===a.key){const a=this.element.shadowRoot?.querySelector(`[data-stack-index="${r+1}"]`);a&&a.focus()}else if("ArrowUp"===a.key){const a=this.element.shadowRoot?.querySelector(`[data-stack-index="${r-1}"]`);a&&a.focus()}};handleActionClick=(a,t)=>{this.snackbarActionClicked.emit({id:a,item:t}),t.action&&t.action.onClick&&t.action.onClick()};handleMouseDown=(a,t)=>{this.isDragging=t,this.startX=a.clientX,this.dragX={...this.dragX,[t]:0},document.addEventListener("mousemove",this.handleMouseMove),document.addEventListener("mouseup",this.handleMouseUp)};handleMouseMove=a=>{if(!this.isDragging)return;const t=a.clientX-this.startX;this.dragX={...this.dragX,[this.isDragging]:t}};handleMouseUp=()=>{if(!this.isDragging)return;const a=this.isDragging,t=this.dragX[a]||0;Math.abs(t)>120?(this.dragX={...this.dragX,[a]:t>0?500:-500},setTimeout((()=>this.close(a)),200)):this.dragX={...this.dragX,[a]:0},this.isDragging=null,document.removeEventListener("mousemove",this.handleMouseMove),document.removeEventListener("mouseup",this.handleMouseUp)};handleMouseEnter=()=>{if(!this.pauseOnHover)return;this.isHovered=!0;const a=Date.now();Object.values(this.timers).forEach((t=>{t.lastTime=a}))};handleTouchStart=(a,t)=>{this.isDragging=t,this.startX=a.touches[0].clientX,this.dragX={...this.dragX,[t]:0}};handleTouchMove=(a,t)=>{if(this.isDragging!==t)return;const r=a.touches[0].clientX-this.startX,e=this.position.includes("rtl"===this.dir?"left":"right"),i=this.position.includes("rtl"===this.dir?"right":"left"),n=e&&r<0||i&&r>0?.2:1;this.dragX={...this.dragX,[t]:r*n},Math.abs(r)>10&&a.preventDefault()};handleTouchEnd=a=>{if(this.isDragging!==a)return;const t=this.dragX[a]||0,r=this.position.includes("rtl"===this.dir?"left":"right"),e=this.position.includes("rtl"===this.dir?"right":"left");r&&t>100||e&&t<-100||this.position.includes("center")&&Math.abs(t)>100?(this.dragX={...this.dragX,[a]:t>0?500:-500},setTimeout((()=>this.close(a)),200)):this.dragX={...this.dragX,[a]:0},this.isDragging=null};handleMouseLeave=()=>{if(!this.pauseOnHover)return;this.isHovered=!1;const a=Date.now();Object.values(this.timers).forEach((t=>{t.lastTime=a}))};handleInputSubmit=(a,t,r)=>{t.input&&t.input.onSubmit&&(t.input.onSubmit(r),this.close(a))};renderIcon(a){if(a.avatar)return e("div",{class:"snackbar-avatar"},e("img",{src:a.avatar,alt:""}));if(a.icon)return e("div",{class:"snackbar-custom-icon"},e("ui-icon",{name:a.icon,library:a.iconLibrary||this.iconLibrary,size:"1.5rem"}));const t=a.type;if("success"===t)return e("div",{class:`snackbar-icon-draw ${t}`},e("svg",{viewBox:"0 0 52 52"},e("circle",{class:"circle",cx:"26",cy:"26",r:"25",fill:"none"}),e("path",{class:"check",fill:"none",d:"M14.1 27.2l7.1 7.2 16.7-16.8"})));if("error"===t)return e("div",{class:`snackbar-icon-draw ${t}`},e("svg",{viewBox:"0 0 52 52"},e("circle",{class:"circle",cx:"26",cy:"26",r:"25",fill:"none"}),e("path",{class:"cross",fill:"none",d:"M16 16 36 36 M36 16 16 36"})));const r={success:e("ui-icon",{name:"check-circle",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-success-600)"}}),error:e("ui-icon",{name:"alert-circle",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-danger-600)"}}),warning:e("ui-icon",{name:"alert-triangle",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-warning-600)"}}),info:e("ui-icon",{name:"info",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-info-600)"}}),neutral:e("ui-icon",{name:"bell",library:this.iconLibrary,size:"1.25em",style:{color:"var(--color-neutral-600, #6b7280)"}}),loading:e("span",{class:"snackbar-loading-spinner"}),sovereign:e("ui-icon",{name:"crown",library:this.iconLibrary,size:"1.25em",style:{color:"#fbbf24"}})};return e("div",{class:`snackbar-icon ${t}`},r[t])}getAriaLive(a){return"urgent"===a.priority?"assertive":"high"===a.priority||"error"===a.type?"polite":"off"}render(){return e("div",{key:"2ca2794f89a74dc183c6490ffcc65e493eaaea30",class:`snackbar-container ${this.position} ${this.cardStack?"card-stack":""} ${this.isHovered?"hovered":""} ${"rtl"===this.dir?"rtl":""}`,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,role:this.visibleSnackbars.some((a=>"error"===a.type||"urgent"===a.priority))?"alert":"status","aria-atomic":"true"},this.snackbars.length>1&&e("ui-button",{key:"e8288b58adc2f402e120dcacbb3d88993d535123",variant:"ghost",size:"sm",icon:"list-x",iconLibrary:this.iconLibrary,iconSize:"14px",onClick:()=>this.closeAll(),ariaLabel:"Clear all notifications",class:"snackbar-clear-all",label:`Clear All (${this.snackbars.length})`},e("span",{key:"608cb677315ac751d626e2d615ca4636e9d4a11e",class:"kb-hint",slot:"end"},"Esc")),this.cardStack&&!this.isHovered&&this.snackbars.length>1&&e("div",{key:"63bfc95aa5d3b7b5daa77cd286eadf2a57fcfcb4",class:"stack-count-badge",onClick:()=>{this.isHovered=!0},title:"Click to expand all notifications"},e("span",{key:"1b3e099e53747efe22a51b6d27aacf7e7b2ad069",class:"stack-count-number"},this.snackbars.length),e("span",{key:"e2c05e3e0334dfe39043a0bdbc05680de497f473",class:"stack-count-label"},"notifications")),this.visibleSnackbars.map(((a,t)=>{const r=this.cardStack&&!this.isHovered?t:0,n=this.animatedItems.has(`${a.id}-closing`);return e("div",{key:a.id,"data-snackbar-id":a.id,"data-stack-index":t,class:`snackbar-item ${a.type} ${a.variant||"filled"} ${a.size||"md"} ${this.openMode} ${a.customClass||""} ${this.isDragging===a.id?"dragging":""} ${n?"closing":""} theme-${a.theme||this.theme}`,style:{animationDelay:.1*t+"s","--stack-index":`${r}`,transform:this.dragX[a.id]?`translateX(${this.dragX[a.id]}px) rotate(${this.dragX[a.id]/20}deg)`:void 0,opacity:this.dragX[a.id]?`${Math.max(0,1-Math.abs(this.dragX[a.id])/400)}`:void 0,cursor:this.isDragging===a.id?"grabbing":void 0},role:"off"!==this.getAriaLive(a)?"log":void 0,"aria-live":this.getAriaLive(a),onMouseDown:t=>this.handleMouseDown(t,a.id),onKeyDown:r=>this.handleKeyDown(r,a.id,t),onTouchStart:t=>this.handleTouchStart(t,a.id),onTouchMove:t=>this.handleTouchMove(t,a.id),onTouchEnd:()=>this.handleTouchEnd(a.id),tabIndex:0},e("div",{class:"item-main-row"},this.renderIcon(a),e("div",{class:"snackbar-content"},e("div",{style:{display:"flex",alignItems:"center",gap:"8px"}},a.title&&e("div",{class:"snackbar-title","aria-label":`Title: ${a.title}`},a.title),(a.count??0)>1&&e("ui-button",{variant:"ghost",size:"sm",onClick:()=>this.toggleExpand(a.id),ariaLabel:`${a.count} occurrences. Click to toggle history.`,label:`${a.count}`,icon:this.expandedSnackbars.has(a.id)?"chevron-up":"chevron-down",iconLibrary:this.iconLibrary,iconSize:"10px",iconPosition:"right"})),this.expandedSnackbars.has(a.id)&&a.history&&e("div",{class:"snackbar-history"},a.history.map(((a,t)=>e("div",{class:"history-item",key:t},e("span",{class:"history-time"},new Date(a.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})),e("span",{class:"history-msg"},a.message))))),a.html?e("div",{class:"snackbar-message",innerHTML:i(a.message),role:"document"}):a.slot?e("div",{class:"snackbar-slot-content"},e("slot",{name:a.slot})):e("p",{class:"snackbar-message","aria-label":`Message: ${a.message}`},a.message)),!1!==a.closable&&e("ui-button",{variant:"ghost",size:"sm",iconOnly:!0,icon:"x",iconLibrary:this.iconLibrary,iconSize:"1.2em",onButtonClick:()=>this.handleCloseClick(a.id),ariaLabel:"Close snackbar",class:"snackbar-close"})),a.input&&e("div",{class:"snackbar-quick-input"},e("ui-input",{type:a.input.type||"text",placeholder:a.input.placeholder,onInputKeydown:t=>{"Enter"===t.detail.key&&this.handleInputSubmit(a.id,a,t.detail.target.value)},autoFocus:!0,size:"sm",fullWidth:!0})),(a.link||a.action||a.actions&&a.actions.length>0)&&e("div",{class:"snackbar-actions"},a.action&&e("ui-button",{variant:"ghost",size:"sm",onButtonClick:()=>this.handleActionClick(a.id,a),icon:a.action.icon,iconLibrary:this.iconLibrary,iconSize:"12px",label:a.action.label}),a.actions&&a.actions.map((t=>e("ui-button",{variant:t.variant,size:"sm",onButtonClick:()=>{t.onClick&&t.onClick(),this.handleActionClick(a.id,a)},icon:t.icon,iconLibrary:this.iconLibrary,iconSize:"12px",label:t.label}))),a.link&&e("a",{class:"snackbar-link",href:a.link.url,onClick:t=>{t.preventDefault(),this.handleLinkClick(a.id,a)}},a.link.text)),(a.duration??0)>0&&"ring"===a.progress&&e("svg",{class:"snackbar-progress-ring",viewBox:"0 0 20 20","aria-hidden":"true"},e("circle",{cx:"10",cy:"10",r:"9"})),(a.duration??0)>0&&"ring"!==a.progress&&e("div",{class:`snackbar-progress ${a.type}`,"aria-hidden":"true"}),(a.duration??0)>0&&this.showCountdown&&!a.sticky&&e("span",{class:"snackbar-countdown","aria-hidden":"true"},this.countdownSeconds[a.id]??Math.ceil((a.duration??0)/1e3),"s"),a.history&&a.history.length>1&&e("div",{class:"snackbar-history-indicator"},e("ui-button",{variant:"ghost",size:"sm",onButtonClick:t=>{const r=t.detail;r.stopPropagation();const e=r.currentTarget.closest(".snackbar-item"),i=e?.classList.toggle("history-expanded");r.currentTarget.label=i?"Hide history":`View previous history (${(a.history??[]).length-1})`},label:`View previous history (${(a.history??[]).length-1})`}),e("div",{class:"snackbar-history-list"},a.history.slice(0,-1).reverse().map((a=>e("div",{class:"history-item"},e("span",{class:"history-time"},new Date(a.timestamp).toLocaleTimeString()),e("span",{class:"history-msg"},a.message)))))))})),this.enableSlots&&e("slot",{key:"5a2fd1ebe5ba293ecf8dae3e83cbfe40ce25c995"}))}componentDidRender(){this.visibleSnackbars.forEach((a=>{this.animatedItems.has(a.id)||(this.animatedItems.add(a.id),setTimeout((()=>{const t=this.element.shadowRoot?.querySelector(`[data-snackbar-id="${a.id}"]`);t&&t.classList.add("show")}),10))}))}static get watchers(){return{textDirection:[{onTextDirectionChange:0}],position:[{positionChanged:0}],maxVisible:[{maxVisibleChanged:0}],stackMode:[{stackModeChanged:0}]}}};n.style='@charset "UTF-8";.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.snackbar-quick-input{width:100%;margin:12px 0 0 0;display:flex;align-items:center;pointer-events:auto}.snackbar-quick-input input{width:100%;min-width:0;box-sizing:border-box;padding:8px 12px;border-radius:6px;border:1px solid var(--border-default, #e5e7eb);font-size:15px;background:var(--bg-primary, #ffffff);outline:none;transition:border 0.2s, box-shadow 0.2s}.snackbar-quick-input input:focus{border:1.5px solid var(--color-primary, #6366f1);box-shadow:0 0 0 2px var(--color-primary, #c7d2fe)}:host{display:block;position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:var(--snackbar-z-index, 10500);transform:translateZ(0);--snackbar-radius:12px;--snackbar-font:inherit;--snackbar-min-width:320px;--snackbar-max-width:440px;--snackbar-z-index:10500;--snackbar-bg:var(--bg-primary, #fdfdfd);--snackbar-color:var(--text-primary, #1f2937);--snackbar-border:rgba(0, 0, 0, 0.08);--snackbar-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);--snackbar-success-bg:var(--color-success-hover, #059669);--snackbar-error-bg:var(--color-danger-hover, #dc2626);--snackbar-warning-bg:var(--color-warning-hover, #d97706);--snackbar-info-bg:var(--color-primary-hover, #2563eb);--snackbar-neutral-bg:var(--color-primary, #4b5563);--snackbar-badge-bg:rgba(15, 23, 42, 0.85);--snackbar-badge-color:var(--color-primary, #60a5fa)}.snackbar-container{display:block;position:absolute;z-index:10501;pointer-events:none;width:auto;max-width:100vw;box-sizing:border-box;padding:16px;display:flex;flex-direction:column;gap:12px;transition:all 0.4s cubic-bezier(0.18, 0.89, 0.32, 1.28);max-height:calc(100vh - 40px)}.snackbar-clear-all{pointer-events:auto;align-self:center;margin-bottom:8px;background:rgba(255, 255, 255, 0.9);border:1px solid rgba(0, 0, 0, 0.1);border-radius:20px;padding:6px 14px;font-size:11px;font-weight:600;color:var(--text-secondary, #4b5563);display:flex;align-items:center;gap:6px;cursor:pointer;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1);backdrop-filter:blur(8px);transition:all 0.2s;z-index:2000;}.snackbar-container.card-stack:not(.hovered) .snackbar-clear-all{display:none}.snackbar-clear-all:hover{background:var(--bg-primary, #ffffff);transform:translateY(-1px);box-shadow:0 6px 10px -1px rgba(0, 0, 0, 0.15)}.snackbar-clear-all .kb-hint{background:rgba(0, 0, 0, 0.05);padding:1px 4px;border-radius:3px;font-size:9px;opacity:0.6}.snackbar-badge-btn{background:var(--snackbar-badge-bg, rgba(15, 23, 42, 0.85));color:#fff;border-radius:12px;padding:2px 8px;font-size:10px;border:none;cursor:pointer;display:flex;align-items:center;transition:transform 0.2s;pointer-events:auto}.snackbar-badge-btn:hover{transform:scale(1.05)}.snackbar-badge-btn ui-icon{margin-left:4px;display:flex}.snackbar-history{margin-top:8px;padding:8px;background:rgba(0, 0, 0, 0.03);border-radius:6px;font-size:12px;max-height:120px;overflow-y:auto;scrollbar-width:thin}.snackbar-history .history-item{display:flex;gap:8px;padding:4px 0;border-bottom:1px solid rgba(0, 0, 0, 0.05)}.snackbar-history .history-item:last-child{border-bottom:none}.snackbar-history .history-item .history-time{color:var(--text-secondary, #6b7280);font-family:monospace;white-space:nowrap}.snackbar-history .history-item .history-msg{color:var(--text-primary, #111827)}.theme-dark .snackbar-clear-all{background:var(--bg-primary, #1e293b);color:var(--text-standard, #e2e8f0);border-color:rgba(255, 255, 255, 0.1)}.snackbar-countdown{position:absolute;bottom:28px;right:12px;background:rgba(0, 0, 0, 0.55);color:rgba(255, 255, 255, 0.9);border-radius:10px;padding:2px 7px;font-size:10px;font-weight:700;letter-spacing:0.02em;pointer-events:none;opacity:1;transition:opacity 0.3s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:10;min-width:24px;text-align:center;font-variant-numeric:tabular-nums;}.snackbar-container.rtl .snackbar-countdown{right:auto;left:12px}.snackbar-container:hover .snackbar-countdown{opacity:0}.snackbar-container.top-left{top:0;left:0;align-items:flex-start}.snackbar-container.top-right{top:0;right:0;align-items:flex-end}.snackbar-container.top-center{top:0;left:50%;transform:translateX(-50%);align-items:center}.snackbar-container.bottom-left{bottom:0;left:0;flex-direction:column-reverse;align-items:flex-start}.snackbar-container.bottom-right{bottom:0;right:0;flex-direction:column-reverse;align-items:flex-end}.snackbar-container.bottom-center{bottom:0;left:50%;transform:translateX(-50%);flex-direction:column-reverse;align-items:center}.snackbar-container.rtl.top-left{left:auto;right:0;align-items:flex-end}.snackbar-container.rtl.top-right{right:auto;left:0;align-items:flex-start}.snackbar-container.rtl.bottom-left{left:auto;right:0;align-items:flex-end}.snackbar-container.rtl.bottom-right{right:auto;left:0;align-items:flex-start}.snackbar-container.rtl .snackbar-item.slide-right{animation-name:slideInLeft}.snackbar-container.rtl .snackbar-item.slide-left{animation-name:slideInRight}.snackbar-container:not(.bottom-left):not(.bottom-right):not(.bottom-center) .snackbar-item{order:var(--stack-index)}.snackbar-container.bottom-left,.snackbar-container.bottom-right,.snackbar-container.bottom-center{padding-bottom:24px}.snackbar-container.top-left,.snackbar-container.top-right,.snackbar-container.top-center{padding-top:24px}.stack-count-badge{position:absolute;bottom:-18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:4px;background:rgba(15, 23, 42, 0.85);color:var(--text-standard, #ffffff);border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700;cursor:pointer;z-index:200;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255, 255, 255, 0.15);transition:all 0.2s ease;pointer-events:auto;white-space:nowrap}.stack-count-badge:hover{background:rgba(15, 23, 42, 0.98);transform:translateX(-50%) translateY(-2px);box-shadow:0 4px 12px rgba(0, 0, 0, 0.3)}.stack-count-badge .stack-count-number{font-size:13px;font-weight:800;color:var(--color-primary, #60a5fa)}.stack-count-badge .stack-count-label{opacity:0.7;font-weight:500}.snackbar-container.bottom-left .stack-count-badge,.snackbar-container.bottom-right .stack-count-badge,.snackbar-container.bottom-center .stack-count-badge{bottom:auto;top:-18px}.snackbar-container.bottom-left .stack-count-badge:hover,.snackbar-container.bottom-right .stack-count-badge:hover,.snackbar-container.bottom-center .stack-count-badge:hover{transform:translateX(-50%) translateY(2px)}.snackbar-container.top-right .stack-count-badge,.snackbar-container.bottom-right .stack-count-badge{left:auto;right:0;transform:none}.snackbar-container.top-right .stack-count-badge:hover,.snackbar-container.bottom-right .stack-count-badge:hover{transform:translateY(-2px)}.snackbar-container.top-left .stack-count-badge,.snackbar-container.bottom-left .stack-count-badge{left:0;transform:none}.snackbar-container.top-left .stack-count-badge:hover,.snackbar-container.bottom-left .stack-count-badge:hover{transform:translateY(-2px)}.snackbar-container.card-stack{display:flex !important;flex-direction:column;width:360px;max-width:calc(100vw - 32px);min-height:160px;padding:16px;pointer-events:none;overflow:visible;--stack-gap:8px;--stack-shrink:0.04;--stack-opacity:0.15;}.snackbar-container.card-stack::before{content:"";position:absolute;inset:-8px;background:transparent;pointer-events:auto;z-index:0}.snackbar-container.card-stack:not(.hovered) .snackbar-item{position:absolute !important;margin:0 !important;pointer-events:none;transition:transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease, width 0.5s ease;width:calc(100% - var(--stack-index, 0) * 14px);opacity:calc(1 - var(--stack-index, 0) * var(--stack-opacity));filter:brightness(calc(1 - var(--stack-index, 0) * 0.08));z-index:calc(50 - var(--stack-index, 0))}.snackbar-container.card-stack.top-left:not(.hovered) .snackbar-item,.snackbar-container.card-stack.top-right:not(.hovered) .snackbar-item,.snackbar-container.card-stack.top-center:not(.hovered) .snackbar-item{top:16px;transform:translateY(calc(var(--stack-index, 0) * var(--stack-gap)))}.snackbar-container.card-stack.bottom-left:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-right:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item{bottom:16px;transform:translateY(calc(var(--stack-index, 0) * var(--stack-gap) * -1))}.snackbar-container.card-stack.top-right:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-right:not(.hovered) .snackbar-item{right:0;left:auto !important}.snackbar-container.card-stack.top-left:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-left:not(.hovered) .snackbar-item{left:0 !important;right:auto}.snackbar-container.card-stack.top-center:not(.hovered) .snackbar-item,.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item{left:50% !important;right:auto;transform:translateX(-50%) translateY(calc(var(--stack-index, 0) * var(--stack-gap)))}.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item{transform:translateX(-50%) translateY(calc(var(--stack-index, 0) * var(--stack-gap) * -1))}@keyframes stackSlideFromTop{from{transform:translateX(-50%) translateY(-40px);opacity:0}to{transform:translateX(-50%) translateY(calc(var(--stack-index, 0) * var(--stack-gap)));opacity:calc(1 - var(--stack-index, 0) * var(--stack-opacity))}}@keyframes stackSlideFromBottom{from{transform:translateX(-50%) translateY(40px);opacity:0}to{transform:translateX(-50%) translateY(calc(var(--stack-index, 0) * var(--stack-gap) * -1));opacity:calc(1 - var(--stack-index, 0) * var(--stack-opacity))}}.snackbar-container.card-stack.top-center:not(.hovered) .snackbar-item{animation:stackSlideFromTop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) both;animation-delay:calc(var(--stack-index, 0) * 60ms)}.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item{animation:stackSlideFromBottom 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) both;animation-delay:calc(var(--stack-index, 0) * 60ms)}.snackbar-container.card-stack:not(.hovered) .snackbar-item[data-stack-index="0"]{pointer-events:auto;opacity:1 !important;filter:none !important;z-index:100 !important;box-shadow:0 8px 24px rgba(0, 0, 0, 0.18)}.snackbar-container.card-stack.top-center:not(.hovered) .snackbar-item[data-stack-index="0"],.snackbar-container.card-stack.bottom-center:not(.hovered) .snackbar-item[data-stack-index="0"]{transform:translateX(-50%) !important}.snackbar-container.card-stack.hovered{pointer-events:auto;align-items:stretch;}.snackbar-container.card-stack.hovered .snackbar-item{position:relative !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;width:100% !important;transform:none !important;opacity:1 !important;filter:none !important;pointer-events:auto;margin:0 0 8px 0 !important;z-index:auto !important;box-shadow:0 4px 12px rgba(0, 0, 0, 0.1);transition:transform 0.3s ease, box-shadow 0.2s ease}.snackbar-container.card-stack.hovered .snackbar-item:last-child{margin-bottom:0 !important}.snackbar-container.card-stack.hovered .snackbar-item:hover{transform:translateY(-2px) !important;box-shadow:0 12px 24px rgba(0, 0, 0, 0.14)}.snackbar-item{box-sizing:border-box;display:flex;flex-direction:column;width:auto;min-width:var(--snackbar-min-width, 320px);max-width:var(--snackbar-max-width, 440px);padding:16px;border-radius:var(--snackbar-radius, 12px);pointer-events:auto;box-shadow:var(--snackbar-shadow, 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05));background:var(--snackbar-bg, #fdfdfd);color:var(--snackbar-color, var(--text-primary, #1f2937));transition:all 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28), transform 0.2s ease;position:relative;overflow:visible;backdrop-filter:blur(16px);border:1px solid var(--snackbar-border, rgba(0, 0, 0, 0.08));z-index:calc(100 - var(--stack-index))}.snackbar-item:hover{transform:translateY(-2px);box-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)}.snackbar-item:focus-visible{outline:2px solid var(--color-primary, #10b981);outline-offset:4px;box-shadow:0 0 0 4px rgba(var(--color-primary-rgb, 59, 130, 246), 0.4);background:var(--bg-primary, #ffffff) !important}.snackbar-item{}.snackbar-item.sm{min-width:280px;padding:10px 12px;--snackbar-title-size:13px;--snackbar-msg-size:12px;--snackbar-icon-size:1.1rem;gap:8px}.snackbar-item.md{min-width:320px;padding:16px;--snackbar-title-size:15px;--snackbar-msg-size:14px;--snackbar-icon-size:1.25rem}.snackbar-item.lg{min-width:400px;padding:20px 24px;--snackbar-title-size:18px;--snackbar-msg-size:16px;--snackbar-icon-size:1.5rem;gap:16px}.item-main-row{display:flex;align-items:flex-start;gap:12px;width:100%}.snackbar-content{flex:1;min-width:0}.snackbar-title{font-weight:700;font-size:var(--snackbar-title-size, 15px);color:inherit;margin-bottom:2px;display:flex;align-items:center;gap:8px}.snackbar-message{font-size:var(--snackbar-msg-size, 14px);line-height:1.5;color:inherit;opacity:0.9;margin:0;word-break:break-word;white-space:pre-wrap}.snackbar-icon,.snackbar-custom-icon{font-size:var(--snackbar-icon-size, 1.25rem)}.snackbar-badge{background:rgba(0, 0, 0, 0.1);padding:2px 8px;border-radius:12px;font-size:11px;font-weight:800;transition:all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.snackbar-badge.pulse{animation:badgePop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275)}@keyframes badgePop{0%{transform:scale(1)}50%{transform:scale(1.6);background:var(--color-danger, #fbbf24);color:var(--text-primary, #000);box-shadow:0 0 15px rgba(251, 191, 36, 0.5)}100%{transform:scale(1)}}.snackbar-item.filled{color:var(--text-standard, #ffffff);border:none}.snackbar-item.filled.success{background:var(--snackbar-success-bg, var(--color-success-hover, #059669))}.snackbar-item.filled.error{background:var(--snackbar-error-bg, var(--color-danger-hover, #dc2626))}.snackbar-item.filled.warning{background:var(--snackbar-warning-bg, var(--color-warning-hover, #d97706))}.snackbar-item.filled.info{background:var(--snackbar-info-bg, var(--color-primary-hover, #2563eb))}.snackbar-item.filled.neutral{background:var(--snackbar-neutral-bg, #4b5563)}.snackbar-item.filled.loading{background:var(--snackbar-neutral-bg, #4b5563)}.snackbar-item.glass{background:rgba(255, 255, 255, 0.6);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255, 255, 255, 0.4);box-shadow:0 8px 32px 0 rgba(31, 38, 135, 0.15);color:var(--text-primary, #1e293b)}.snackbar-item.glass.success{border-left:4px solid var(--color-success, #10b981);background:rgba(236, 253, 245, 0.6)}.snackbar-item.glass.error{border-left:4px solid var(--color-danger, #ef4444);background:rgba(254, 242, 242, 0.6)}.snackbar-item.glass.warning{border-left:4px solid var(--color-warning, #f59e0b);background:rgba(255, 251, 235, 0.6)}.snackbar-item.glass.info{border-left:4px solid var(--color-primary, #10b981);background:rgba(239, 246, 255, 0.6)}.snackbar-item.glass .snackbar-action-btn:not(.variant-danger){background:rgba(0, 0, 0, 0.05);border-color:rgba(0, 0, 0, 0.1);color:var(--color-primary, #334155)}.snackbar-item.glass .snackbar-action-btn:not(.variant-danger):hover{background:rgba(0, 0, 0, 0.1)}.snackbar-item.outlined{background:rgba(255, 255, 255, 0.9);border-width:1.5px;border-style:solid}.snackbar-item.outlined.success{border-color:var(--color-success-hover, #059669);color:var(--color-success-hover, #059669)}.snackbar-item.outlined.error{border-color:var(--color-danger-hover, #dc2626);color:var(--color-danger-hover, #dc2626)}.snackbar-item.outlined.warning{border-color:var(--color-warning-hover, #d97706);color:var(--color-warning-hover, #d97706)}.snackbar-item.outlined.info{border-color:var(--color-primary-hover, #2563eb);color:var(--color-primary-hover, #2563eb)}.snackbar-item.outlined.neutral{border-color:var(--border-strong, #4b5563);color:var(--text-secondary, #4b5563)}.snackbar-item.soft{background:rgba(255, 255, 255, 0.95)}.snackbar-item.soft.success{border-left:4px solid var(--color-success, #10b981);background:var(--bg-primary, #ecfdf5);color:var(--color-primary, #065f46)}.snackbar-item.soft.success .snackbar-title,.snackbar-item.soft.success .snackbar-icon{color:var(--color-success-hover, #059669)}.snackbar-item.soft.error{border-left:4px solid var(--color-danger, #ef4444);background:var(--bg-primary, #fef2f2);color:var(--color-danger, #991b1b)}.snackbar-item.soft.error .snackbar-title,.snackbar-item.soft.error .snackbar-icon{color:var(--color-danger-hover, #dc2626)}.snackbar-item.soft.warning{border-left:4px solid var(--color-warning, #f59e0b);background:var(--bg-primary, #fffbeb);color:var(--color-danger, #92400e)}.snackbar-item.soft.warning .snackbar-title,.snackbar-item.soft.warning .snackbar-icon{color:var(--color-warning-hover, #d97706)}.snackbar-item.soft.info{border-left:4px solid var(--color-primary, #10b981);background:var(--bg-primary, #eff6ff);color:var(--color-primary, #1e40af)}.snackbar-item.soft.info .snackbar-title,.snackbar-item.soft.info .snackbar-icon{color:var(--color-primary-hover, #2563eb)}.snackbar-item.soft.neutral{border-left:4px solid var(--color-primary, #475569);background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #374151)}.snackbar-item.soft.neutral .snackbar-title,.snackbar-item.soft.neutral .snackbar-icon{color:var(--color-primary, #475569)}.snackbar-item.neutral:not(.filled),.snackbar-item.loading:not(.filled){background:var(--bg-primary, #f8fafc);border-color:var(--border-subtle, #e2e8f0);color:var(--color-primary, #334155)}.snackbar-item.filled.success{background:var(--color-success, #10b981);color:var(--text-standard, #ffffff)}.snackbar-item.filled.error{background:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff)}.snackbar-item.filled.warning{background:var(--color-warning, #f59e0b);color:var(--text-standard, #ffffff)}.snackbar-item.filled.info{background:var(--color-primary, #10b981);color:var(--text-standard, #ffffff)}.snackbar-item.filled.neutral{background:var(--color-primary, #334155);color:var(--text-standard, #ffffff)}.snackbar-item.filled.loading{background:var(--color-primary, #475569);color:var(--text-standard, #ffffff)}.snackbar-item.sovereign{background:linear-gradient(135deg, var(--bg-primary, #1e293b) 0%, var(--bg-secondary, #0f172a) 100%);color:var(--color-danger, #fbbf24);border:1px solid rgba(251, 191, 36, 0.4);box-shadow:0 0 20px rgba(251, 191, 36, 0.15), 0 10px 15px -3px rgba(0, 0, 0, 0.3);overflow:hidden}.snackbar-item.sovereign::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle, rgba(251, 191, 36, 0.1) 0%, transparent 70%);opacity:0.5;animation:sovereignPulse 4s infinite alternate}.snackbar-item.sovereign .snackbar-title{color:var(--color-danger, #fbbf24);text-shadow:0 0 8px rgba(251, 191, 36, 0.4);letter-spacing:0.05em}.snackbar-item.sovereign .snackbar-badge{background:var(--color-danger, #fbbf24);color:var(--text-primary, #0f172a)}.snackbar-item.sovereign .snackbar-progress{background:var(--color-danger, #fbbf24);box-shadow:0 0 10px var(--color-danger, #fbbf24);height:3px}.snackbar-item.sovereign .snackbar-icon{color:var(--color-danger, #fbbf24);filter:drop-shadow(0 0 5px rgba(251, 191, 36, 0.6))}@keyframes sovereignPulse{0%{transform:scale(1) translate(0, 0);opacity:0.3}100%{transform:scale(1.2) translate(5%, 5%);opacity:0.6}}.snackbar-item.theme-dark{background:var(--bg-secondary, #111827);color:var(--text-standard, #ffffff);border-color:rgba(255, 255, 255, 0.1);box-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.5)}.snackbar-item{opacity:0;transition:all 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28), opacity 0.3s ease, max-height 0.4s ease, margin 0.4s ease;max-height:200px}.snackbar-item.slide-up{transform:translateY(40px) scale(0.9)}.snackbar-item.slide-down{transform:translateY(-40px) scale(0.9)}.snackbar-item.slide-left{transform:translateX(-100%) scale(0.9)}.snackbar-item.slide-right{transform:translateX(100%) scale(0.9)}.snackbar-item.fade{transform:scale(0.95)}.snackbar-item.scale{transform:scale(0.1)}.snackbar-item.spring{transform:translateY(100px)}.snackbar-item.show{opacity:1;transform:translate(0, 0) scale(1)}.snackbar-item.closing{opacity:0 !important;transform:scale(0.8) translateY(20px) !important;pointer-events:none;max-height:0 !important;margin-top:0 !important;margin-bottom:0 !important;padding-top:0 !important;padding-bottom:0 !important;overflow:hidden;filter:blur(8px)}.snackbar-container.top-left .snackbar-item.closing,.snackbar-container.top-right .snackbar-item.closing,.snackbar-container.top-center .snackbar-item.closing{transform:scale(0.8) translateY(-20px) !important}.snackbar-item.spring.show{animation:springEntry 0.6s cubic-bezier(0.18, 0.89, 0.32, 1.28) forwards}@keyframes springEntry{0%{transform:translateY(100px) scale(0.4);opacity:0}70%{transform:translateY(-10px) scale(1.05);opacity:1}100%{transform:translateY(0) scale(1);opacity:1}}.snackbar-item.bounce.show{animation:bounceIn 0.5s cubic-bezier(0.36, 0, 0.66, -0.56) forwards}@keyframes bounceIn{0%{transform:scale(0.3);opacity:0}50%{transform:scale(1.1);opacity:1}70%{transform:scale(0.9)}100%{transform:scale(1)}}.snackbar-actions{display:flex;align-items:center;gap:12px;margin-top:10px}.snackbar-action-btn{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;background:rgba(0, 0, 0, 0.1);border:1px solid rgba(0, 0, 0, 0.1);color:inherit;cursor:pointer;transition:all 0.2s}.snackbar-action-btn:hover{background:rgba(0, 0, 0, 0.2)}.snackbar-item.filled .snackbar-action-btn{background:rgba(255, 255, 255, 0.2);border-color:rgba(255, 255, 255, 0.3)}.snackbar-item.filled .snackbar-action-btn:hover{background:rgba(255, 255, 255, 0.3)}.snackbar-action-btn.variant-primary{background:var(--color-primary, #10b981);color:var(--text-standard, #ffffff);border-color:var(--color-primary-hover, #2563eb)}.snackbar-action-btn.variant-primary:hover{background:var(--color-primary-hover, #2563eb)}.snackbar-action-btn.variant-danger{background:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff);border-color:var(--color-danger-hover, #dc2626)}.snackbar-action-btn.variant-danger:hover{background:var(--color-danger-hover, #dc2626)}.snackbar-action-btn.variant-text{background:transparent;border:none;font-weight:600;padding:4px 6px}.snackbar-action-btn.variant-text:hover{text-decoration:underline;background:rgba(0, 0, 0, 0.05)}.snackbar-link{font-size:12px;text-decoration:underline;color:inherit;opacity:0.8;font-weight:500}.snackbar-link:hover{opacity:1}.snackbar-progress{position:absolute;bottom:0;left:0;height:4px;background:rgba(255, 255, 255, 0.5);width:0%;transition:width linear;}.snackbar-container.hovered .snackbar-progress{animation:progressPulse 2s infinite ease-in-out}@keyframes progressPulse{0%,100%{opacity:0.5}50%{opacity:0.8}}.snackbar-item:not(.filled) .snackbar-progress,.snackbar-item.neutral.filled .snackbar-progress,.snackbar-item.outlined .snackbar-progress,.snackbar-item.soft .snackbar-progress{background:currentColor;opacity:0.15}.snackbar-progress-ring{position:absolute;top:12px;right:12px;width:20px;height:20px;transform:rotate(-90deg)}.snackbar-progress-ring circle{fill:none;stroke:currentColor;stroke-width:2;stroke-dasharray:56.5;stroke-dashoffset:56.5;opacity:0.3}.snackbar-close{background:none;border:none;color:inherit;cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0.6;transition:all 0.2s}.snackbar-close:hover{opacity:1;background:rgba(0, 0, 0, 0.05)}.snackbar-icon-draw{width:24px;height:24px}.circle{stroke-dasharray:157;stroke-dashoffset:157;stroke-width:2;stroke-miterlimit:10;stroke:currentColor;fill:none;animation:stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards}.check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;stroke:currentColor;stroke-width:3;animation:stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards}@keyframes stroke{100%{stroke-dashoffset:0}}.snackbar-history-indicator{margin-top:12px;border-top:1px solid rgba(0, 0, 0, 0.05);padding-top:8px;width:100%}.expand-history-btn{background:transparent;border:none;font-size:11px;font-weight:600;color:inherit;opacity:0.6;cursor:pointer;padding:4px 0;display:flex;align-items:center;gap:4px}.expand-history-btn:hover{opacity:1;text-decoration:underline}.snackbar-history-list{max-height:0;overflow:hidden;transition:max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);display:flex;flex-direction:column;gap:6px}.snackbar-item.history-expanded .snackbar-history-list{max-height:150px;margin-top:8px;overflow-y:auto}.history-item{display:flex;flex-direction:column;padding:6px 8px;background:rgba(0, 0, 0, 0.03);border-radius:4px;font-size:12px}.history-item .history-time{font-size:10px;font-weight:700;opacity:0.5}.history-item .history-msg{opacity:0.8}.theme-dark .history-item{background:rgba(255, 255, 255, 0.05)}.snackbar-item.filled .history-item{background:rgba(255, 255, 255, 0.1)}.snackbar-loading-spinner{width:18px;height:18px;border:2px solid rgba(255, 255, 255, 0.3);border-radius:50%;border-top-color:var(--bg-primary, #ffffff);animation:spin 0.8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.snackbar-quick-input{width:100%;margin-top:8px}.snackbar-quick-input input{width:100%;padding:8px 12px;border-radius:6px;border:1px solid rgba(0, 0, 0, 0.1);background:rgba(255, 255, 255, 0.5);font-size:13px;outline:none}.snackbar-quick-input input:focus{border-color:var(--color-primary, #10b981);background:var(--bg-primary, #ffffff)}@media (max-width: 500px){.snackbar-container{left:0 !important;right:0 !important;width:100% !important;max-width:100% !important;transform:none !important;padding:12px !important;bottom:0 !important;top:auto !important;}.snackbar-container.top-left,.snackbar-container.top-right,.snackbar-container.top-center{top:0 !important;bottom:auto !important}.snackbar-item{width:100% !important;min-width:0 !important;max-width:100% !important;margin-left:0 !important;margin-right:0 !important}.snackbar-clear-all{width:auto;align-self:center}.snackbar-container.card-stack{min-width:0 !important}.snackbar-container.card-stack::before{display:none}.snackbar-container.card-stack{}}@keyframes sb-particle-burst{0%{transform:translate(-50%, -50%) translate(0, 0) scale(0) rotate(0deg);opacity:0}15%{opacity:1;transform:translate(-50%, -50%) translate(calc(var(--tx) * 0.25px), calc(var(--ty) * 0.25px)) scale(var(--s)) rotate(calc(var(--r) * 0.2deg))}80%{opacity:0.7}100%{transform:translate(-50%, -50%) translate(calc(var(--tx) * 1px), calc(var(--ty) * 1px)) scale(0) rotate(calc(var(--r) * 1deg));opacity:0}}@keyframes sb-particle-float{0%{transform:translate(-50%, -50%) translate(0, 0) scale(0.5) rotate(0deg);opacity:0}20%{opacity:1}100%{transform:translate(-50%, -50%) translate(calc(var(--tx) * 0.5px), calc(var(--ty) * 1px)) scale(0) rotate(calc(var(--r) * 0.5deg));opacity:0}}@keyframes sb-particle-glint{0%{transform:translate(-50%, -50%) scale(0);opacity:0}30%{transform:translate(-50%, -50%) scale(1.6);opacity:1}100%{transform:translate(-50%, -50%) scale(0.3);opacity:0}}.sb-particle{position:absolute;top:50%;left:50%;pointer-events:none;will-change:transform, opacity;z-index:1000;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(0.19, 1, 0.22, 1);animation-duration:var(--d, 1.2s);animation-delay:var(--delay, 0s)}.sb-particle.sb-particle--burst{width:var(--size, 8px);height:var(--size, 8px);border-radius:50%;background:radial-gradient(circle, #fbbf24 0%, #f97316 60%, transparent 100%);box-shadow:0 0 6px 1px rgba(251, 191, 36, 0.5019607843);animation-name:sb-particle-burst}.sb-particle.sb-particle--float{font-size:var(--size, 14px);line-height:1;animation-name:sb-particle-float}.sb-particle.sb-particle--glint{width:var(--size, 6px);height:var(--size, 6px);border-radius:50%;background:#fff;box-shadow:0 0 4px 2px rgba(255, 255, 255, 0.5019607843);animation-name:sb-particle-glint}.snackbar-particle{position:absolute;top:50%;left:50%;pointer-events:none;z-index:1000;opacity:0;will-change:transform, opacity}.snackbar-particle.type-glow{width:8px;height:8px;background:radial-gradient(circle, #fbbf24 0%, transparent 70%);border-radius:50%;box-shadow:0 0 10px #fbbf24;animation:snackbarParticleExplode 1.6s cubic-bezier(0.19, 1, 0.22, 1) forwards}.snackbar-particle.type-emoji{animation:snackbarParticleExplodeRotate 1.8s cubic-bezier(0.19, 1, 0.22, 1) forwards;white-space:nowrap}@keyframes snackbarParticleExplode{0%{transform:translate(-50%, -50%) scale(0);opacity:0}20%{transform:translate(-50%, -50%) scale(1.5);opacity:1}100%{transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(0);opacity:0}}@keyframes snackbarParticleExplodeRotate{0%{transform:translate(-50%, -50%) scale(0) rotate(0deg);opacity:0}20%{transform:translate(-50%, -50%) scale(1.5) rotate(0deg);opacity:1}100%{transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(0) rotate(var(--rot));opacity:0}}';export{n as ui_snackbar}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{h as e,F as a,r as t,c as i,H as n}from"./p-DUsoYu9r.js";const o=class{topItems=[];bottomItems=[];bottomItemsSecondary=[];collapsed=!0;showHamburger=!0;logoUrl;logoAlt="Logo";appTitle;showSearch=!1;searchPlaceholder="Search...";iconLibrary="default";maxVisibleItems=0;navItemClicked;navToggled;expandedItems=new Set;searchQuery="";showOverflowMenu=!1;isHoveringMenu=!1;overflowMenuPosition={top:"0px",left:"0px"};hoveredIcon=null;tooltipPos={top:0,left:0};overflowTriggerRef;async toggle(){this.collapsed=!this.collapsed,this.navToggled.emit({collapsed:this.collapsed})}async expand(){this.collapsed=!1,this.navToggled.emit({collapsed:this.collapsed})}async collapse(){this.collapsed=!0,this.navToggled.emit({collapsed:this.collapsed})}componentWillLoad(){}handleHamburgerClick=()=>{this.toggle()};handleSearchInput=e=>{this.searchQuery=e.target.value.toLowerCase()};filterItems=e=>this.searchQuery?e.filter((e=>{const a=e.label.toLowerCase().includes(this.searchQuery),t=e.children?.some((e=>e.label.toLowerCase().includes(this.searchQuery)));return a||t})):e;splitItemsByVisibility=e=>0===this.maxVisibleItems||e.length<=this.maxVisibleItems?{visible:e,overflow:[]}:{visible:e.slice(0,this.maxVisibleItems),overflow:e.slice(this.maxVisibleItems)};calculateOverflowMenuPosition=()=>{if(!this.overflowTriggerRef)return;const e=this.overflowTriggerRef.getBoundingClientRect();let a=e.right+8,t=e.top;a+280>window.innerWidth&&(a=e.left-280-8),t+500>window.innerHeight&&(t=Math.max(8,window.innerHeight-500-8)),t=Math.max(8,t),this.overflowMenuPosition={top:`${t}px`,left:`${a}px`}};handleOverflowTriggerEnter=()=>{this.calculateOverflowMenuPosition(),this.showOverflowMenu=!0};toggleSubitems=e=>{const a=new Set(this.expandedItems);a.has(e)?a.delete(e):a.add(e),this.expandedItems=a};handleItemClick=(e,a,t=!1)=>{e.disabled?a.preventDefault():e.children&&e.children.length>0?(a.preventDefault(),this.toggleSubitems(e.id)):this.navItemClicked.emit({item:e,isChild:t})};handleIconEnter=(e,a)=>{if(this.collapsed&&(!e.children||0===e.children.length)){const t=a.currentTarget.getBoundingClientRect();this.hoveredIcon=e.id,this.tooltipPos={top:t.top+t.height/2,left:t.right+12}}};handleIconLeave=()=>{this.hoveredIcon&&(this.hoveredIcon=null)};renderNavItem=(t,i=!1)=>{const n=t.children&&t.children.length>0,o=this.expandedItems.has(t.id),r={"nav-item":!0,active:t.active,disabled:t.disabled,"has-children":n,expanded:o,"is-child":i},s={"nav-item-link":!0,"no-icon":!t.icon};return e("div",{key:t.id},t.sectionHeader&&!this.collapsed&&e("div",{class:"nav-section-header"},t.sectionHeader),e("div",{class:r},e("a",{href:t.href||"#",class:s,onClick:e=>this.handleItemClick(t,e,i)},t.icon&&e("span",{class:"nav-item-icon",onMouseEnter:e=>this.handleIconEnter(t,e),onMouseLeave:this.handleIconLeave},e("ui-icon",{name:t.icon,library:t.iconLibrary||this.iconLibrary,size:"1.25rem"})),!this.collapsed&&e(a,null,e("span",{class:"nav-item-label"},t.label),t.badge&&e("span",{class:"nav-item-badge"},t.badge),n&&e("span",{class:"nav-item-arrow"},e("ui-icon",{name:"chevron-down",library:this.iconLibrary,size:"1rem"})))),n&&o&&e("div",{class:"nav-children"},t.children.map((e=>this.renderNavItem(e,!0))))))};constructor(e){t(this,e),this.navItemClicked=i(this,"navItemClicked"),this.navToggled=i(this,"navToggled")}connectedCallback(){}render(){return e(n,{key:"0a615eb525f4bc7ac076501ce2350727fa9510fb",collapsed:this.collapsed},e("nav",{key:"f89f766c305662a8dbafd34f6e45f241d4975e2e",class:"nav-bar "+(this.collapsed?"collapsed":"expanded")},e("div",{key:"066f83d3bc8df75a31b56aa87a92c33cff9d6cee",class:"nav-header"},this.logoUrl&&e("img",{key:"40057cb53b7dd751b0a90413894197aa4266f690",src:this.logoUrl,alt:this.logoAlt,class:"nav-logo"}),this.appTitle&&e("span",{key:"4f7a597a93ca681d0532474b0ab45b9ad8953b26",class:"nav-title"},this.appTitle),this.showHamburger&&e("button",{key:"bf2d1388044b5d5228a8ec1e549adf8d2b645abd",class:"nav-hamburger",onClick:this.handleHamburgerClick,"aria-label":this.collapsed?"Expand navigation":"Collapse navigation"},e("ui-icon",this.collapsed?{name:"menu",library:this.iconLibrary,size:"1.5rem"}:{name:"x",library:this.iconLibrary,size:"1.5rem"}))),this.showSearch&&!this.collapsed&&e("div",{key:"c998229e3925b92db73584169ae1f0f21d5dc88c",class:"nav-search"},e("input",{key:"49f4c5c425460348ef34fb2885bd488f8adb408f",type:"text",class:"nav-search-input",placeholder:this.searchPlaceholder,onInput:this.handleSearchInput})),e("div",{key:"7d4d939b8c9ca8a58008dc3d651b18b5371bae5b",class:"nav-content"},this.renderSection(this.topItems,"nav-section-top")),this.hoveredIcon&&e("div",{key:"ec91c193a7881e597f6ee9934922751f2f197dad",class:"nav-tooltip visible",style:{top:`${this.tooltipPos.top}px`,left:`${this.tooltipPos.left}px`}},[...this.topItems,...this.bottomItems,...this.bottomItemsSecondary].flatMap((e=>[e,...e.children||[]])).find((e=>e.id===this.hoveredIcon))?.label),e("div",{key:"a5c8a38cf7ecb5feb91a21ccc95ddf333cec0eeb",class:"nav-footer"},this.renderSection(this.bottomItems,"nav-section-bottom"),this.renderSection(this.bottomItemsSecondary,"nav-section-bottom-secondary"))))}renderSection(a,t){if(!a||0===a.length)return null;const i=this.filterItems(a),{visible:n,overflow:o}=this.splitItemsByVisibility(i);return e("div",{class:`nav-section ${t}`},n.map((e=>this.renderNavItem(e))),o.length>0&&e("div",{class:"nav-overflow"},e("div",{class:"nav-overflow-trigger",ref:e=>this.overflowTriggerRef=e,onMouseEnter:this.handleOverflowTriggerEnter,onMouseLeave:()=>{setTimeout((()=>{this.isHoveringMenu||(this.showOverflowMenu=!1)}),100)}},e("span",{class:"nav-item-icon"},e("ui-icon",{name:"more-horizontal",library:this.iconLibrary,size:"1.25rem"})),e("span",{class:"nav-item-label"},"More (",o.length,")")),this.showOverflowMenu&&e("div",{class:"nav-overflow-menu",onMouseEnter:()=>{this.isHoveringMenu=!0,this.showOverflowMenu=!0},onMouseLeave:()=>{this.isHoveringMenu=!1,setTimeout((()=>{this.showOverflowMenu=!1}),100)},style:{left:this.overflowMenuPosition.left,top:this.overflowMenuPosition.top}},o.map((e=>this.renderNavItem(e))))))}};o.style=".sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;height:100%;width:var(--nav-width-expanded, 280px);transition:width var(--nav-transition, 0.4s cubic-bezier(0.4, 0, 0.2, 1));flex-shrink:0;overflow:hidden;--nav-bg:#0f172a;--nav-text:#f8fafc;--nav-text-muted:#94a3b8;--nav-accent:#3b82f6;--nav-accent-glow:rgba(59, 130, 246, 0.4);--nav-hover-bg:rgba(255, 255, 255, 0.05);--nav-active-bg:linear-gradient(135deg, rgba(59, 130, 246, 0.2) 0%, rgba(139, 92, 246, 0.1) 100%);--nav-border:rgba(255, 255, 255, 0.08);--nav-width-expanded:280px;--nav-width-collapsed:80px;--nav-transition:0.4s cubic-bezier(0.4, 0, 0.2, 1)}:host([collapsed]){width:var(--nav-width-collapsed, 80px)}.nav-bar{display:flex;flex-direction:column;height:100%;background:var(--nav-bg);color:var(--nav-text);width:100%;border-right:1px solid var(--nav-border);position:relative;box-sizing:border-box}.nav-bar.collapsed{width:var(--nav-width-collapsed)}.nav-header{display:flex;align-items:center;justify-content:center;gap:16px;padding:24px;min-height:80px;border-bottom:1px solid var(--nav-border)}.collapsed .nav-header{padding:24px 0;justify-content:center}.nav-logo{width:32px;height:32px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255, 255, 255, 0.2))}.nav-title{font-size:18px;font-weight:700;white-space:nowrap;letter-spacing:-0.5px;background:linear-gradient(to right, #fff, #94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.collapsed .nav-title{display:none}.nav-hamburger{background:var(--nav-hover-bg);border:1px solid var(--nav-border);color:white;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all 0.2s ease;margin-left:auto}.collapsed .nav-hamburger{margin-left:0}.collapsed .nav-header{flex-direction:column;padding:16px 0;height:auto;min-height:100px;gap:12px}.nav-hamburger:hover{background:var(--nav-accent);border-color:var(--nav-accent)}.nav-search{padding:16px;position:relative}.nav-search-input{width:100%;padding:10px 12px 10px 38px;background:rgba(255, 255, 255, 0.03);border:1px solid var(--nav-border);border-radius:10px;color:white;font-size:13px;outline:none;transition:all 0.3s ease}.nav-search-input:focus{border-color:var(--nav-accent);background:rgba(255, 255, 255, 0.05);box-shadow:0 0 15px var(--nav-accent-glow)}.nav-search::before{content:\"\";position:absolute;left:28px;top:50%;transform:translateY(-50%);width:16px;height:16px;background:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='M21 21l-4.35-4.35'%3E%3C/path%3E%3C/svg%3E\") no-repeat center;pointer-events:none}.nav-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:12px;gap:8px}.collapsed .nav-content{padding:12px 0}.nav-section{display:flex;flex-direction:column;gap:4px}.nav-section-bottom{}.nav-footer{padding:12px;border-top:1px solid var(--nav-border);flex-shrink:0}.collapsed .nav-footer{padding:12px 0}.nav-section-header{padding:12px 12px 8px 12px;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--nav-text-muted);letter-spacing:1px;opacity:0.8}.nav-item .nav-section-header{padding-left:12px;margin-top:12px;border-top:1px solid rgba(255, 255, 255, 0.05)}.collapsed .nav-section-header{display:none}.nav-item{position:relative}.nav-item-link{display:flex;align-items:center;gap:12px;padding:12px;color:var(--nav-text-muted);text-decoration:none;border-radius:12px;transition:all 0.3s ease;font-size:14px;font-weight:500;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.nav-item-link.no-icon{font-size:13px;padding-left:16px}.nav-item-link.no-icon .nav-item-label{opacity:0.9;font-weight:400}.collapsed .nav-item-link{justify-content:center;padding:12px 0;gap:0}.nav-item-link:hover{background:var(--nav-hover-bg);color:white}.active>.nav-item-link{background:var(--nav-active-bg);color:var(--nav-accent);box-shadow:inset 0 0 0 1px rgba(59, 130, 246, 0.3)}.active>.nav-item-link::after{content:\"\";position:absolute;left:0;top:15%;bottom:15%;width:4px;background:var(--nav-accent);border-radius:0 4px 4px 0;box-shadow:0 0 15px var(--nav-accent)}.nav-item-arrow{margin-left:auto;transition:transform 0.3s ease;color:var(--nav-text-muted)}.expanded>.nav-item-link .nav-item-arrow{transform:rotate(180deg)}.nav-item-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:transform 0.3s ease}.nav-item-link:hover .nav-item-icon{transform:scale(1.1)}.active .nav-item-icon{color:var(--nav-accent)}.collapsed .nav-item-label{display:none}.nav-item-badge{background:var(--nav-accent);color:white;padding:2px 6px;border-radius:6px;font-size:10px;font-weight:700;margin-left:auto}.collapsed .nav-item-badge{position:absolute;top:8px;right:8px;width:8px;height:8px;padding:0;font-size:0;box-shadow:0 0 10px var(--nav-accent)}.nav-children{padding-left:24px;margin-top:4px;display:flex;flex-direction:column;gap:2px;border-left:1px solid rgba(255, 255, 255, 0.05);margin-left:24px;padding-left:12px}.is-child .nav-item-link{padding:8px 12px;font-size:13px;border-radius:10px}.collapsed .nav-children{display:none}.nav-overflow{position:relative;margin:2px 0}.nav-overflow-trigger{display:flex;align-items:center;gap:12px;padding:12px;color:var(--nav-text-muted);cursor:pointer;border-radius:12px;transition:all 0.3s ease}.nav-overflow-trigger:hover{background:var(--nav-hover-bg);color:white}.nav-overflow-menu{position:fixed;background:var(--nav-bg);border:1px solid var(--nav-border);border-radius:16px;padding:8px;min-width:220px;box-shadow:0 20px 50px rgba(0, 0, 0, 0.5);z-index:10000;display:flex;flex-direction:column;gap:4px;animation:slideUp 0.3s cubic-bezier(0.4, 0, 0.2, 1)}@keyframes slideUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideMenu{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.expanded .nav-item{animation:slideMenu 0.4s ease forwards}.nav-content::-webkit-scrollbar{width:4px}.nav-content::-webkit-scrollbar-thumb{background:var(--nav-border);border-radius:4px}.nav-tooltip{position:fixed;background:#1e293b;color:white;padding:6px 12px;border-radius:6px;font-size:12px;pointer-events:none;z-index:10000;white-space:nowrap;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);border:1px solid rgba(255, 255, 255, 0.1);transform:translateY(-50%);opacity:0;transition:opacity 0.2s}.nav-tooltip.visible{opacity:1}";export{o as nav_bar}
|
|
1
|
+
import{h as e,F as a,r as t,c as i,H as n}from"./p-DUsoYu9r.js";const o=class{topItems=[];bottomItems=[];bottomItemsSecondary=[];collapsed=!0;showHamburger=!0;logoUrl;logoAlt="Logo";appTitle;showSearch=!1;searchPlaceholder="Search...";iconLibrary="default";maxVisibleItems=0;navItemClicked;navToggled;expandedItems=new Set;searchQuery="";showOverflowMenu=!1;isHoveringMenu=!1;overflowMenuPosition={top:"0px",left:"0px"};hoveredIcon=null;tooltipPos={top:0,left:0};overflowTriggerRef;async toggle(){this.collapsed=!this.collapsed,this.navToggled.emit({collapsed:this.collapsed})}async expand(){this.collapsed=!1,this.navToggled.emit({collapsed:this.collapsed})}async collapse(){this.collapsed=!0,this.navToggled.emit({collapsed:this.collapsed})}componentWillLoad(){}handleHamburgerClick=()=>{this.toggle()};handleSearchInput=e=>{this.searchQuery=e.target.value.toLowerCase()};filterItems=e=>this.searchQuery?e.filter((e=>{const a=e.label.toLowerCase().includes(this.searchQuery),t=e.children?.some((e=>e.label.toLowerCase().includes(this.searchQuery)));return a||t})):e;splitItemsByVisibility=e=>0===this.maxVisibleItems||e.length<=this.maxVisibleItems?{visible:e,overflow:[]}:{visible:e.slice(0,this.maxVisibleItems),overflow:e.slice(this.maxVisibleItems)};calculateOverflowMenuPosition=()=>{if(!this.overflowTriggerRef)return;const e=this.overflowTriggerRef.getBoundingClientRect();let a=e.right+8,t=e.top;a+280>window.innerWidth&&(a=e.left-280-8),t+500>window.innerHeight&&(t=Math.max(8,window.innerHeight-500-8)),t=Math.max(8,t),this.overflowMenuPosition={top:`${t}px`,left:`${a}px`}};handleOverflowTriggerEnter=()=>{this.calculateOverflowMenuPosition(),this.showOverflowMenu=!0};toggleSubitems=e=>{const a=new Set(this.expandedItems);a.has(e)?a.delete(e):a.add(e),this.expandedItems=a};handleItemClick=(e,a,t=!1)=>{e.disabled?a.preventDefault():e.children&&e.children.length>0?(a.preventDefault(),this.toggleSubitems(e.id)):this.navItemClicked.emit({item:e,isChild:t})};handleIconEnter=(e,a)=>{if(this.collapsed&&(!e.children||0===e.children.length)){const t=a.currentTarget.getBoundingClientRect();this.hoveredIcon=e.id,this.tooltipPos={top:t.top+t.height/2,left:t.right+12}}};handleIconLeave=()=>{this.hoveredIcon&&(this.hoveredIcon=null)};renderNavItem=(t,i=!1)=>{const n=t.children&&t.children.length>0,o=this.expandedItems.has(t.id),r={"nav-item":!0,active:t.active,disabled:t.disabled,"has-children":n,expanded:o,"is-child":i},s={"nav-item-link":!0,"no-icon":!t.icon};return e("div",{key:t.id},t.sectionHeader&&!this.collapsed&&e("div",{class:"nav-section-header"},t.sectionHeader),e("div",{class:r},e("a",{href:t.href||"#",class:s,onClick:e=>this.handleItemClick(t,e,i)},t.icon&&e("span",{class:"nav-item-icon",onMouseEnter:e=>this.handleIconEnter(t,e),onMouseLeave:this.handleIconLeave},e("ui-icon",{name:t.icon,library:t.iconLibrary||this.iconLibrary,size:"1.25rem"})),!this.collapsed&&e(a,null,e("span",{class:"nav-item-label"},t.label),t.badge&&e("span",{class:"nav-item-badge"},t.badge),n&&e("span",{class:"nav-item-arrow"},e("ui-icon",{name:"chevron-down",library:this.iconLibrary,size:"1rem"})))),n&&o&&e("div",{class:"nav-children"},t.children.map((e=>this.renderNavItem(e,!0))))))};constructor(e){t(this,e),this.navItemClicked=i(this,"navItemClicked"),this.navToggled=i(this,"navToggled")}connectedCallback(){}render(){return e(n,{key:"18e3c8af7dbb483dff73b88a1f355a0e3b6605f9",collapsed:this.collapsed},e("nav",{key:"ddf81e32206bfae3fb517a8c3b48444401d8ab28",class:"nav-bar "+(this.collapsed?"collapsed":"expanded")},e("div",{key:"b4c7aebc1bfbc9ecb60123d6114efdefd07a3b5b",class:"nav-header"},this.logoUrl&&e("img",{key:"c7ae8fda61df03e604e275d92368b0fddb6089fa",src:this.logoUrl,alt:this.logoAlt,class:"nav-logo"}),this.appTitle&&e("span",{key:"be00df3ab559af0244bc5d8aaa2def21a93eb404",class:"nav-title"},this.appTitle),this.showHamburger&&e("button",{key:"948f1574a82f4d4e10ae160e6c2e211e8d839c77",class:"nav-hamburger",onClick:this.handleHamburgerClick,"aria-label":this.collapsed?"Expand navigation":"Collapse navigation"},e("ui-icon",this.collapsed?{name:"menu",library:this.iconLibrary,size:"1.5rem"}:{name:"x",library:this.iconLibrary,size:"1.5rem"}))),this.showSearch&&!this.collapsed&&e("div",{key:"f83cfa8d13441a86ea9db30b91364efb8041e865",class:"nav-search"},e("input",{key:"50a802fc2e85124866ad4d2d19d845cfe60b9ee3",type:"text",class:"nav-search-input",placeholder:this.searchPlaceholder,onInput:this.handleSearchInput})),e("div",{key:"ff8a5604ad82dd2ebca182c2d56d62a9abd79bed",class:"nav-content"},this.renderSection(this.topItems,"nav-section-top")),this.hoveredIcon&&e("div",{key:"6fe4b41539a4cd1d81c63846c25c26a8d452c9b9",class:"nav-tooltip visible",style:{top:`${this.tooltipPos.top}px`,left:`${this.tooltipPos.left}px`}},[...this.topItems,...this.bottomItems,...this.bottomItemsSecondary].flatMap((e=>[e,...e.children||[]])).find((e=>e.id===this.hoveredIcon))?.label),e("div",{key:"8f6d53da23fbe4fc12151683fc0dca55bf33ab5c",class:"nav-footer"},this.renderSection(this.bottomItems,"nav-section-bottom"),this.renderSection(this.bottomItemsSecondary,"nav-section-bottom-secondary"))))}renderSection(a,t){if(!a||0===a.length)return null;const i=this.filterItems(a),{visible:n,overflow:o}=this.splitItemsByVisibility(i);return e("div",{class:`nav-section ${t}`},n.map((e=>this.renderNavItem(e))),o.length>0&&e("div",{class:"nav-overflow"},e("div",{class:"nav-overflow-trigger",ref:e=>this.overflowTriggerRef=e,onMouseEnter:this.handleOverflowTriggerEnter,onMouseLeave:()=>{setTimeout((()=>{this.isHoveringMenu||(this.showOverflowMenu=!1)}),100)}},e("span",{class:"nav-item-icon"},e("ui-icon",{name:"more-horizontal",library:this.iconLibrary,size:"1.25rem"})),e("span",{class:"nav-item-label"},"More (",o.length,")")),this.showOverflowMenu&&e("div",{class:"nav-overflow-menu",onMouseEnter:()=>{this.isHoveringMenu=!0,this.showOverflowMenu=!0},onMouseLeave:()=>{this.isHoveringMenu=!1,setTimeout((()=>{this.showOverflowMenu=!1}),100)},style:{left:this.overflowMenuPosition.left,top:this.overflowMenuPosition.top}},o.map((e=>this.renderNavItem(e))))))}};o.style=".sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;height:100%;width:var(--nav-width-expanded, 280px);transition:width var(--nav-transition, 0.4s cubic-bezier(0.4, 0, 0.2, 1));flex-shrink:0;overflow:hidden;--nav-bg:#0f172a;--nav-text:#f8fafc;--nav-text-muted:#94a3b8;--nav-accent:#3b82f6;--nav-accent-glow:rgba(59, 130, 246, 0.4);--nav-hover-bg:rgba(255, 255, 255, 0.05);--nav-active-bg:linear-gradient(135deg, rgba(59, 130, 246, 0.2) 0%, rgba(139, 92, 246, 0.1) 100%);--nav-border:rgba(255, 255, 255, 0.08);--nav-width-expanded:280px;--nav-width-collapsed:80px;--nav-transition:0.4s cubic-bezier(0.4, 0, 0.2, 1)}:host([collapsed]){width:var(--nav-width-collapsed, 80px)}.nav-bar{display:flex;flex-direction:column;height:100%;background:var(--nav-bg);color:var(--nav-text);width:100%;border-right:1px solid var(--nav-border);position:relative;box-sizing:border-box}.nav-bar.collapsed{width:var(--nav-width-collapsed)}.nav-header{display:flex;align-items:center;justify-content:center;gap:16px;padding:24px;min-height:80px;border-bottom:1px solid var(--nav-border)}.collapsed .nav-header{padding:24px 0;justify-content:center}.nav-logo{width:32px;height:32px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255, 255, 255, 0.2))}.nav-title{font-size:18px;font-weight:700;white-space:nowrap;letter-spacing:-0.5px;background:linear-gradient(to right, #fff, #94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.collapsed .nav-title{display:none}.nav-hamburger{background:var(--nav-hover-bg);border:1px solid var(--nav-border);color:white;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all 0.2s ease;margin-left:auto}.collapsed .nav-hamburger{margin-left:0}.collapsed .nav-header{flex-direction:column;padding:16px 0;height:auto;min-height:100px;gap:12px}.nav-hamburger:hover{background:var(--nav-accent);border-color:var(--nav-accent)}.nav-search{padding:16px;position:relative}.nav-search-input{width:100%;padding:10px 12px 10px 38px;background:rgba(255, 255, 255, 0.03);border:1px solid var(--nav-border);border-radius:10px;color:white;font-size:13px;outline:none;transition:all 0.3s ease}.nav-search-input:focus{border-color:var(--nav-accent);background:rgba(255, 255, 255, 0.05);box-shadow:0 0 15px var(--nav-accent-glow)}.nav-search::before{content:\"\";position:absolute;left:28px;top:50%;transform:translateY(-50%);width:16px;height:16px;background:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='M21 21l-4.35-4.35'%3E%3C/path%3E%3C/svg%3E\") no-repeat center;pointer-events:none}.nav-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:12px;gap:8px}.collapsed .nav-content{padding:12px 0}.nav-section{display:flex;flex-direction:column;gap:4px}.nav-section-bottom{}.nav-footer{padding:12px;border-top:1px solid var(--nav-border);flex-shrink:0}.collapsed .nav-footer{padding:12px 0}.nav-section-header{padding:12px 12px 8px 12px;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--nav-text-muted);letter-spacing:1px;opacity:0.8}.nav-item .nav-section-header{padding-left:12px;margin-top:12px;border-top:1px solid rgba(255, 255, 255, 0.05)}.collapsed .nav-section-header{display:none}.nav-item{position:relative}.nav-item-link{display:flex;align-items:center;gap:12px;padding:12px;color:var(--nav-text-muted);text-decoration:none;border-radius:12px;transition:all 0.3s ease;font-size:14px;font-weight:500;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.nav-item-link.no-icon{font-size:13px;padding-left:16px}.nav-item-link.no-icon .nav-item-label{opacity:0.9;font-weight:400}.collapsed .nav-item-link{justify-content:center;padding:12px 0;gap:0}.nav-item-link:hover{background:var(--nav-hover-bg);color:white}.active>.nav-item-link{background:var(--nav-active-bg);color:var(--nav-accent);box-shadow:inset 0 0 0 1px rgba(59, 130, 246, 0.3)}.active>.nav-item-link::after{content:\"\";position:absolute;left:0;top:15%;bottom:15%;width:4px;background:var(--nav-accent);border-radius:0 4px 4px 0;box-shadow:0 0 15px var(--nav-accent)}.nav-item-arrow{margin-left:auto;transition:transform 0.3s ease;color:var(--nav-text-muted)}.expanded>.nav-item-link .nav-item-arrow{transform:rotate(180deg)}.nav-item-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:transform 0.3s ease}.nav-item-link:hover .nav-item-icon{transform:scale(1.1)}.active .nav-item-icon{color:var(--nav-accent)}.collapsed .nav-item-label{display:none}.nav-item-badge{background:var(--nav-accent);color:white;padding:2px 6px;border-radius:6px;font-size:10px;font-weight:700;margin-left:auto}.collapsed .nav-item-badge{position:absolute;top:8px;right:8px;width:8px;height:8px;padding:0;font-size:0;box-shadow:0 0 10px var(--nav-accent)}.nav-children{padding-left:24px;margin-top:4px;display:flex;flex-direction:column;gap:2px;border-left:1px solid rgba(255, 255, 255, 0.05);margin-left:24px;padding-left:12px}.is-child .nav-item-link{padding:8px 12px;font-size:13px;border-radius:10px}.collapsed .nav-children{display:none}.nav-overflow{position:relative;margin:2px 0}.nav-overflow-trigger{display:flex;align-items:center;gap:12px;padding:12px;color:var(--nav-text-muted);cursor:pointer;border-radius:12px;transition:all 0.3s ease}.nav-overflow-trigger:hover{background:var(--nav-hover-bg);color:white}.nav-overflow-menu{position:fixed;background:var(--nav-bg);border:1px solid var(--nav-border);border-radius:16px;padding:8px;min-width:220px;box-shadow:0 20px 50px rgba(0, 0, 0, 0.5);z-index:10000;display:flex;flex-direction:column;gap:4px;animation:slideUp 0.3s cubic-bezier(0.4, 0, 0.2, 1)}@keyframes slideUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideMenu{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.expanded .nav-item{animation:slideMenu 0.4s ease forwards}.nav-content::-webkit-scrollbar{width:4px}.nav-content::-webkit-scrollbar-thumb{background:var(--nav-border);border-radius:4px}.nav-tooltip{position:fixed;background:#1e293b;color:white;padding:6px 12px;border-radius:6px;font-size:12px;pointer-events:none;z-index:10000;white-space:nowrap;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);border:1px solid rgba(255, 255, 255, 0.1);transform:translateY(-50%);opacity:0;transition:opacity 0.2s}.nav-tooltip.visible{opacity:1}";export{o as nav_bar}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e,c,a as o,h as t}from"./p-DUsoYu9r.js";import{n as r}from"./p-C7gf39HE.js";const i=class{constructor(o){e(this,o),this.analyticsEvent=c(this,"analyticsEvent"),this.checkboxChange=c(this,"checkboxChange"),this.checkboxFocus=c(this,"checkboxFocus"),this.checkboxBlur=c(this,"checkboxBlur")}analyticsEvent;customClass;badge;tooltip;tooltipPosition="top";get el(){return o(this)}internals;inputElement;async setFocus(){this.inputElement?.focus()}checked=!1;indeterminate=!1;disabled=!1;readonly=!1;required=!1;invalid=!1;label="";helperText="";errorMessage="";value="";name="";size="md";color="primary";variant="default";skeleton=!1;labelPosition="right";customCheckIcon="";customIndeterminateIcon="";customImage="";customIconLibrary="lucide";checkboxTabIndex=0;ariaLabel="";ariaDescribedBy="";enableAnimation=!0;rippleEffect=!0;labelClickable=!0;rtl=!1;description="";descriptionPosition="below";confetti=!1;glow=!1;haptic=!1;hapticIntensity="light";reveal="none";revealDelay=0;isButton=!1;isFocused=!1;isHovered=!1;particles=[];checkboxChange;checkboxFocus;checkboxBlur;componentWillLoad(){this.internals=this.el.attachInternals(),this.updateFormValue(),this.updateIndeterminateState()}formResetCallback(){this.checked=!1,this.indeterminate=!1,this.updateFormValue()}updateIndeterminateState(){this.inputElement&&(this.inputElement.indeterminate=this.indeterminate)}handleChange=e=>{this.disabled||this.readonly?e.preventDefault():(this.checked=e.target.checked,this.indeterminate=!1,this.haptic&&this.triggerHaptic(this.hapticIntensity),this.confetti&&this.checked&&this.triggerConfetti(),this.updateFormValue(),this.checkboxChange.emit({checked:this.checked,value:this.value,indeterminate:this.indeterminate}),this.analyticsEvent.emit({checked:this.checked,value:this.value,indeterminate:this.indeterminate}))};updateFormValue(){this.internals.setFormValue(this.checked?this.value||"on":null)}triggerHaptic(e="light"){window.navigator.vibrate&&window.navigator.vibrate("heavy"===e?[50,20,50]:"md"===e?[30]:[10])}triggerConfetti(){const e=Array.from({length:15}).map(((e,c)=>({id:Date.now()+c,x:50,y:50,vx:8*(Math.random()-.5),vy:8*(Math.random()-.5),r:360*Math.random(),color:["#3DCD58","#4ade80","#ffffff"][Math.floor(3*Math.random())],size:6*Math.random()+4})));this.particles=[...e],setTimeout((()=>this.particles=[]),800)}handleFocus=()=>{this.disabled||(this.isFocused=!0,this.checkboxFocus.emit())};handleBlur=()=>{this.isFocused=!1,this.checkboxBlur.emit()};handleMouseEnter=()=>{this.disabled||(this.isHovered=!0)};handleMouseLeave=()=>{this.isHovered=!1};handleKeyDown=e=>{this.disabled||this.readonly||" "!==e.key&&"Enter"!==e.key||(e.preventDefault(),this.checked=!this.checked,this.indeterminate=!1,this.checkboxChange.emit({checked:this.checked,value:this.value,indeterminate:this.indeterminate}))};renderCheckmark(){return this.checked||this.indeterminate?this.customImage?t("img",{src:this.customImage,class:"custom-image-mark"}):this.indeterminate&&this.customIndeterminateIcon?t("ui-icon",{name:this.customIndeterminateIcon,library:this.customIconLibrary,class:"custom-icon-mark"}):!this.indeterminate&&this.customCheckIcon?t("ui-icon",{name:this.customCheckIcon,library:this.customIconLibrary,class:"custom-icon-mark"}):t("svg",{class:"checkmark-svg",viewBox:"0 0 24 24"},t("path",this.indeterminate?{class:"indeterminate-path",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round",d:"M5 12h14"}:{class:"checkmark-path",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",d:"M5 13l4 4L19 7"})):null}renderLabel(){return this.label?t("div",{class:`label-section is-${this.descriptionPosition}`},t("span",{class:{"checkbox-label-text":!0,"non-clickable":!this.labelClickable},onClick:e=>{this.labelClickable||e.preventDefault()}},this.label,this.required&&t("span",{class:"required-indicator"},"*")),this.description&&t("span",{class:"checkbox-description"},this.description)):null}renderHelperText(){return this.invalid&&this.errorMessage?t("div",{class:"helper-text error"},t("ui-icon",{name:"exclamation-circle",library:"fontawesome",size:"14px"}),this.errorMessage):this.helperText?t("div",{class:"helper-text"},this.helperText):null}render(){const e=r(this.size,"md"),c={"checkbox-container":!0,[`checkbox-${e}`]:!0,[`checkbox-${this.color}`]:!0,[`checkbox-${this.variant}`]:!0,"checkbox-disabled":this.disabled,"checkbox-readonly":this.readonly,"checkbox-invalid":this.invalid,"checkbox-focused":this.isFocused,"checkbox-hovered":this.isHovered,[`checkbox-label-${this.labelPosition}`]:!0,"checkbox-animate":this.enableAnimation,"checkbox-skeleton":this.skeleton,"checkbox-checked":this.checked,"checkbox-indeterminate":this.indeterminate,"checkbox-rtl":this.rtl,"checkbox-glow":this.glow,"checkbox-is-button":this.isButton,[`checkbox-reveal-${this.reveal}`]:"none"!==this.reveal,...this.customClass?{[this.customClass]:!0}:{}},o={"checkbox-input-wrapper":!0,"checkbox-checked":this.checked,"checkbox-indeterminate":this.indeterminate,"checkbox-ripple":this.rippleEffect&&!this.disabled};return t("div",{key:"98ae46b3ba03456e81610b5c1558d2f62b2c697e",class:c,dir:this.rtl?"rtl":"ltr",style:{"--reveal-delay":`${this.revealDelay}ms`}},t("label",{key:"8d7a330bb7f92b454076bef8e22cee9daa8f9fb4",class:"checkbox-label",onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave},("left"===this.labelPosition||"top"===this.labelPosition)&&this.renderLabel(),t("div",{key:"fd9728537e2c16a564f9b363012802ba8fa1235e",class:o},t("input",{key:"1074f40300a98aaef23eb2c03466cc972b1b3090",ref:e=>this.inputElement=e,type:"checkbox",class:"checkbox-input",checked:this.checked,disabled:this.disabled,readonly:this.readonly,required:this.required,value:this.value,name:this.name,tabindex:this.checkboxTabIndex,"aria-label":this.ariaLabel||this.label,"aria-describedby":this.ariaDescribedBy,"aria-checked":this.indeterminate?"mixed":this.checked.toString(),"aria-invalid":this.invalid.toString(),onChange:this.handleChange,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown}),t("div",{key:"c769aaf4fe33649562de2848871114f15c88b742",class:"checkbox-box"},t("div",{key:"7de0b8700ecaad754fe7bc0e44da00852c4bb014",class:"glow-layer"}),this.renderCheckmark(),this.particles.map((e=>t("span",{class:"btn-confetti",key:e.id,style:{left:`${e.x}%`,top:`${e.y}%`,"--vx":`${e.vx}px`,"--vy":`${e.vy}px`,"--vr":`${e.r}deg`,backgroundColor:e.color,width:`${e.size}px`,height:`${e.size}px`}})))),this.badge&&t("span",{key:"99ad8db8cebfa106f5865c0a96470cb481ef9e91",class:"checkbox-badge"},this.badge),this.tooltip&&t("div",{key:"a2c46d9e27e9d404d543c31a1449b0ae945965c2",class:`checkbox-tooltip checkbox-tooltip-${this.tooltipPosition}`},this.tooltip)),("right"===this.labelPosition||"bottom"===this.labelPosition)&&this.renderLabel()),this.renderHelperText())}static get delegatesFocus(){return!0}static get formAssociated(){return!0}static get watchers(){return{indeterminate:[{updateIndeterminateState:0}]}}};i.style='.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.checkbox-badge{display:inline-block;min-width:18px;height:18px;padding:0 6px;background:var(--color-success, #3dcd58);color:var(--text-standard, #ffffff);font-size:10px;font-weight:700;border-radius:9px;margin-inline-start:8px;vertical-align:middle;text-align:center;line-height:18px;box-shadow:0 2px 4px rgba(var(--color-success-rgb, 61, 205, 88), 0.2)}.btn-confetti{position:absolute;border-radius:50%;pointer-events:none;z-index:100;animation:confetti-drift 0.8s ease-out forwards}@keyframes confetti-drift{0%{transform:translate(0, 0) scale(1) rotate(0deg);opacity:1}100%{transform:translate(var(--vx), var(--vy)) scale(0) rotate(var(--vr));opacity:0}}[class*=checkbox-reveal-]{opacity:0;animation-fill-mode:forwards;animation-delay:var(--reveal-delay, 0ms)}.checkbox-reveal-fade-in{animation:checkbox-fade-in 0.6s ease-out forwards}.checkbox-reveal-slide-up{animation:checkbox-slide-up 0.6s cubic-bezier(0.23, 1, 0.32, 1) forwards}.checkbox-reveal-zoom{animation:checkbox-zoom 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards}@keyframes checkbox-fade-in{from{opacity:0}to{opacity:1}}@keyframes checkbox-slide-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes checkbox-zoom{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:scale(1)}}.checkbox-tooltip{position:absolute;background:var(--bg-primary, #1f2937);color:var(--text-standard, #ffffff);padding:6px 12px;border-radius:6px;font-size:12px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity 0.2s ease;z-index:10}.checkbox-input-wrapper:hover .checkbox-tooltip{opacity:1}.checkbox-tooltip-top{bottom:calc(100% + 10px);left:50%;transform:translateX(-50%)}.checkbox-tooltip-bottom{top:calc(100% + 10px);left:50%;transform:translateX(-50%)}.checkbox-tooltip-left{inset-inline-end:calc(100% + 10px);top:50%;transform:translateY(-50%)}.checkbox-tooltip-right{inset-inline-start:calc(100% + 10px);top:50%;transform:translateY(-50%)}:host{display:inline-block;--ui-checkbox-border:var(--border-strong, #bfc8d8);--ui-checkbox-border-hover:var(--color-primary, #94a3b8);--ui-checkbox-bg:var(--bg-primary, #ffffff);--ui-checkbox-checked-bg:var(--color-primary, #3b82f6);--text-primary:var(--label-color, inherit);--text-secondary:var(--label-subtitle-color, inherit);--error-color-light:var(--bg-secondary, #fef2f2)}:host-context(.dark),:host-context([data-theme=dark]),:host-context([data-theme=violet]),:host-context([data-theme=pink]),:host-context([data-theme=blue]),:host-context([data-theme=green]),:host(.dark){--ui-checkbox-border:var(--border-strong, #334155);--ui-checkbox-border-hover:var(--color-primary, #475569);--ui-checkbox-bg:var(--bg-primary, #1e293b);--ui-checkbox-checked-bg:var(--color-primary, #4ade80)}.checkbox-container{display:inline-flex;flex-direction:column;gap:4px;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;vertical-align:middle;box-sizing:border-box;color:inherit}.checkbox-container.checkbox-rtl{direction:rtl}.checkbox-container *{box-sizing:border-box}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;user-select:none;position:relative;transition:all 0.2s ease}.checkbox-label-top .checkbox-label{flex-direction:column;align-items:flex-start;gap:8px}.checkbox-label-top .checkbox-label .checkbox-label-text{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;opacity:0.65;color:var(--text-primary)}.checkbox-label-bottom .checkbox-label{flex-direction:column-reverse;align-items:flex-start;gap:8px}.checkbox-label-bottom .checkbox-label .checkbox-label-text{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;opacity:0.65;color:var(--text-primary)}.checkbox-label-left .checkbox-label{flex-direction:row-reverse;justify-content:flex-end}.checkbox-container.checkbox-disabled .checkbox-label{cursor:not-allowed;opacity:0.6}.checkbox-container.checkbox-readonly .checkbox-label{cursor:default}.label-section{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.label-section.is-side{flex-direction:row;align-items:baseline;gap:8px}.label-section.is-side .checkbox-description{margin-top:0}.checkbox-description{font-size:0.75rem;opacity:0.7;font-weight:400;line-height:1.1;margin-top:2px;color:var(--text-secondary)}.checkbox-input-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;border-radius:inherit}.checkbox-input{position:absolute;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;padding:0;z-index:1;appearance:none;-webkit-appearance:none;-moz-appearance:none}.checkbox-box{position:relative;display:flex;align-items:center;justify-content:center;border:2px solid var(--ui-checkbox-border);background:var(--ui-checkbox-bg);transition:all 0.35s cubic-bezier(0.4, 0, 0.2, 1);box-shadow:0 1px 2px rgba(0, 0, 0, 0.05)}.checkbox-box .glow-layer{position:absolute;inset:-4px;background:var(--ui-checkbox-color, var(--ui-checkbox-checked-bg, var(--color-primary, #3b82f6)));opacity:0;filter:blur(12px);transition:opacity 0.4s ease;border-radius:inherit;z-index:-1;pointer-events:none}.checkbox-glow.checkbox-checked .checkbox-box .glow-layer{opacity:0.4}.checkbox-xxxs .checkbox-box{width:12px;height:12px;border-radius:3px}.checkbox-xxxs .check-icon{font-size:8px;width:8px;height:8px;display:flex;align-items:center;justify-content:center}.checkbox-xxxs .checkbox-label-text{font-size:0.75rem;line-height:1.25}.checkbox-xxs .checkbox-box{width:14px;height:14px;border-radius:4px}.checkbox-xxs .check-icon{font-size:9px;width:9px;height:9px;display:flex;align-items:center;justify-content:center}.checkbox-xxs .checkbox-label-text{font-size:0.8125rem;line-height:1.25}.checkbox-xs .checkbox-box{width:16px;height:16px;border-radius:4px}.checkbox-xs .check-icon{font-size:10px;width:10px;height:10px;display:flex;align-items:center;justify-content:center}.checkbox-xs .checkbox-label-text{font-size:0.875rem;line-height:1.5}.checkbox-sm .checkbox-box{width:18px;height:18px;border-radius:5px}.checkbox-sm .check-icon{font-size:11px;width:11px;height:11px;display:flex;align-items:center;justify-content:center}.checkbox-sm .checkbox-label-text{font-size:0.9375rem;line-height:1.5}.checkbox-md .checkbox-box{width:20px;height:20px;border-radius:6px}.checkbox-md .check-icon{font-size:12px;width:12px;height:12px;display:flex;align-items:center;justify-content:center}.checkbox-md .checkbox-label-text{font-size:1rem;line-height:1.5}.checkbox-lg .checkbox-box{width:24px;height:24px;border-radius:8px}.checkbox-lg .check-icon{font-size:14px;width:14px;height:14px;display:flex;align-items:center;justify-content:center}.checkbox-lg .checkbox-label-text{font-size:1.125rem;line-height:1.5}.checkbox-xl .checkbox-box{width:28px;height:28px;border-radius:10px}.checkbox-xl .check-icon{font-size:16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.checkbox-xl .checkbox-label-text{font-size:1.25rem;line-height:1.5}.checkbox-xxl .checkbox-box{width:32px;height:32px;border-radius:12px}.checkbox-xxl .check-icon{font-size:18px;width:18px;height:18px;display:flex;align-items:center;justify-content:center}.checkbox-xxl .checkbox-label-text{font-size:1.375rem;line-height:1.5}.checkbox-xxxl .checkbox-box{width:40px;height:40px;border-radius:14px}.checkbox-xxxl .check-icon{font-size:24px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.checkbox-xxxl .checkbox-label-text{font-size:1.5rem;line-height:1.5}.checkbox-rounded .checkbox-box{border-radius:50%}.checkbox-square .checkbox-box{border-radius:0}.checkbox-glass .checkbox-box{background:rgba(255, 255, 255, 0.1) !important;backdrop-filter:blur(8px);border-color:rgba(255, 255, 255, 0.2) !important;border-width:1.5px}.checkbox-glass.checkbox-checked .checkbox-box{background:currentColor !important;backdrop-filter:none}.checkbox-raised .checkbox-box{border-color:rgba(0, 0, 0, 0.1);box-shadow:inset 0 1px 1px rgba(255, 255, 255, 0.8), 0 2px 4px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.05) !important}.checkbox-button,.checkbox-chip{width:auto}.checkbox-button .checkbox-label,.checkbox-chip .checkbox-label{padding:8px 16px;border:2px solid var(--border-color, var(--border-default, #e5e7eb));border-radius:8px;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);background:var(--surface-color, var(--bg-primary, #ffffff));line-height:1.5;box-sizing:border-box;min-height:40px}.checkbox-button .checkbox-box,.checkbox-chip .checkbox-box{margin-inline-end:8px;transform:scale(0.85)}.checkbox-button.checkbox-primary.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-primary.checkbox-checked .checkbox-label{background:rgba(var(--color-success-rgb, 61, 205, 88), 0.1);border-color:var(--color-success, #3dcd58)}.checkbox-button.checkbox-secondary.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-secondary.checkbox-checked .checkbox-label{background:rgba(107, 114, 128, 0.1);border-color:var(--color-primary, #6b7280)}.checkbox-button.checkbox-success.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-success.checkbox-checked .checkbox-label{background:rgba(22, 163, 74, 0.1);border-color:var(--color-success, #16a34a)}.checkbox-button.checkbox-danger.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-danger.checkbox-checked .checkbox-label{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.1);border-color:var(--color-danger-hover, #dc2626)}.checkbox-button.checkbox-warning.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-warning.checkbox-checked .checkbox-label{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.1);border-color:var(--color-warning, #f59e0b)}.checkbox-button.checkbox-info.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-info.checkbox-checked .checkbox-label{background:rgba(8, 145, 178, 0.1);border-color:var(--color-info-hover, #0891b2)}.checkbox-button.checkbox-hovered:not(.checkbox-disabled) .checkbox-label,.checkbox-chip.checkbox-hovered:not(.checkbox-disabled) .checkbox-label{box-shadow:0 4px 12px rgba(0, 0, 0, 0.08);transform:translateY(-1px)}.checkbox-chip .checkbox-label{border-radius:20px;padding:4px 12px;min-height:32px}.checkbox-animate .checkbox-box::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--ui-checkbox-color, var(--ui-checkbox-checked-bg, var(--color-primary, #3b82f6)));transform:scale(0);transition:transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);border-radius:inherit;z-index:0}.checkbox-animate .checkbox-checked .checkbox-box::after,.checkbox-animate .checkbox-indeterminate .checkbox-box::after{transform:scale(1)}.checkbox-animate .checkbox-checked .check-icon,.checkbox-animate .checkbox-indeterminate .check-icon{z-index:1;animation:checkmark-pop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards}.checkbox-primary{--ui-checkbox-color:var(--color-primary, #3b82f6)}.checkbox-secondary{--ui-checkbox-color:var(--text-muted, #6b7280)}.checkbox-success{--ui-checkbox-color:var(--color-success, #16a34a)}.checkbox-danger{--ui-checkbox-color:var(--color-danger-hover, #dc2626)}.checkbox-warning{--ui-checkbox-color:var(--color-warning, #f59e0b)}.checkbox-info{--ui-checkbox-color:var(--color-info-hover, #0891b2)}.checkbox-checked .checkbox-box,.checkbox-indeterminate .checkbox-box{background:var(--ui-checkbox-color, var(--ui-checkbox-checked-bg, var(--color-primary, #3b82f6)));border-color:var(--ui-checkbox-color, var(--ui-checkbox-checked-bg, var(--color-primary, #3b82f6)))}.checkbox-box{background:var(--ui-checkbox-bg);border-color:var(--ui-checkbox-border)}.checkmark-svg{width:100%;height:100%;display:block;padding:10%;color:var(--text-standard, #ffffff);z-index:2}.custom-image-mark{width:100%;height:100%;object-fit:contain;border-radius:inherit;z-index:2}.custom-icon-mark{z-index:2;color:var(--text-standard, #ffffff)}.checkmark-path{stroke-dasharray:48;stroke-dashoffset:48;transition:stroke-dashoffset 0.4s cubic-bezier(0.19, 1, 0.22, 1) 0.1s}.checkbox-checked .checkmark-path{stroke-dashoffset:0}.indeterminate-path{stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset 0.3s ease}.checkbox-indeterminate .indeterminate-path{stroke-dashoffset:0}.checkbox-checked .check-icon,.checkbox-indeterminate .check-icon{transform:scale(1)}@keyframes checkmark-pop{0%{transform:scale(0) rotate(-45deg)}70%{transform:scale(1.2) rotate(0deg)}100%{transform:scale(1) rotate(0deg)}}.checkbox-focused .checkbox-box{box-shadow:0 0 0 3px rgba(var(--color-success-rgb, 61, 205, 88), 0.2);border-color:var(--ui-checkbox-checked-bg)}.checkbox-hovered:not(.checkbox-disabled):not(.checkbox-readonly) .checkbox-box{border-color:var(--ui-checkbox-border-hover)}.checkbox-ripple .checkbox-box::before{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;transform:translate(-50%, -50%) scale(0);background:rgba(0, 0, 0, 0.1);pointer-events:none}.checkbox-ripple .checkbox-input:active~.checkbox-box::before{animation:ripple 0.6s ease}@keyframes ripple{0%{transform:translate(-50%, -50%) scale(0);opacity:1}100%{transform:translate(-50%, -50%) scale(3);opacity:0}}.checkbox-skeleton{pointer-events:none}.checkbox-skeleton .checkbox-box{background:var(--bg-primary, #e5e7eb) !important;border-color:var(--border-default, #e5e7eb) !important;animation:skeleton-shimmer 1.5s infinite linear;background:linear-gradient(90deg, var(--bg-primary, #e5e7eb) 25%, var(--bg-secondary, #f3f4f6) 50%, var(--bg-primary, #e5e7eb) 75%) !important;background-size:200% 100% !important}.checkbox-skeleton .checkbox-label-text{width:100px;height:1rem;background:var(--bg-primary, #e5e7eb);border-radius:4px;color:transparent;animation:skeleton-shimmer 1.5s infinite linear;background:linear-gradient(90deg, var(--bg-primary, #e5e7eb) 25%, var(--bg-secondary, #f3f4f6) 50%, var(--bg-primary, #e5e7eb) 75%);background-size:200% 100%}@keyframes skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.checkbox-label-text{color:var(--text-primary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;opacity:0.65;display:inline-block;line-height:1.5}.required-indicator{color:var(--color-danger-hover, #dc2626);margin-inline-start:4px}.helper-text{font-size:0.875rem;color:var(--text-secondary);margin-inline-start:32px;display:flex;align-items:center;gap:4px}.checkbox-label-left .helper-text{margin-inline-start:0;margin-inline-end:32px}.checkbox-label-top .helper-text,.checkbox-label-bottom .helper-text{margin-inline-start:0;justify-content:center}.helper-text.error{color:var(--color-danger-hover, #dc2626)}.checkbox-invalid .checkbox-box{border-color:var(--color-danger-hover, #dc2626)}.checkbox-invalid:not(.checkbox-checked):not(.checkbox-indeterminate) .checkbox-box{background:var(--error-color-light, #fef2f2)}.checkbox-is-button{width:100%;height:100%}.checkbox-is-button .checkbox-label{padding:8px 16px;justify-content:center;background:var(--ui-checkbox-bg);transition:all 0.2s ease;width:100%;height:100%;border-radius:0;border:1px solid var(--ui-checkbox-border)}.checkbox-is-button .checkbox-label:hover:not(.checkbox-disabled){background:rgba(0, 0, 0, 0.02)}.checkbox-is-button .checkbox-box{margin-inline-end:8px;transform:scale(0.85)}.checkbox-is-button.checkbox-checked .checkbox-label{background:var(--ui-checkbox-checked-bg);color:var(--color-primary-text, #ffffff);z-index:1;border-color:var(--ui-checkbox-checked-bg)}.checkbox-is-button.checkbox-secondary.checkbox-checked .checkbox-label{background:var(--color-primary, #6b7280);border-color:var(--color-primary, #6b7280)}.checkbox-is-button.checkbox-success.checkbox-checked .checkbox-label{background:var(--color-success, #16a34a);border-color:var(--color-success, #16a34a)}.checkbox-is-button.checkbox-danger.checkbox-checked .checkbox-label{background:var(--color-danger-hover, #dc2626);border-color:var(--color-danger-hover, #dc2626)}.checkbox-is-button.checkbox-warning.checkbox-checked .checkbox-label{background:var(--color-warning, #f59e0b);border-color:var(--color-warning, #f59e0b)}.checkbox-is-button.checkbox-info.checkbox-checked .checkbox-label{background:var(--color-info-hover, #0891b2);border-color:var(--color-info-hover, #0891b2)}.checkbox-is-button+.checkbox-is-button .checkbox-label{margin-inline-start:-1px}';export{i as ui_checkbox}
|