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,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./index-ClkOYpT8.js');
|
|
4
|
-
var security = require('./security-
|
|
4
|
+
var security = require('./security-CNaNip8F.js');
|
|
5
5
|
var componentSize = require('./component-size-DsYFUZcz.js');
|
|
6
6
|
var utils = require('./utils-DVZ6gul6.js');
|
|
7
7
|
|
|
8
|
-
const accordionCss = () => `@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}.accordion-container{width:100%;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background-color:var(--accordion-bg, white);font-family:var(--font-family)}.accordion-indicators{display:flex;gap:8px;padding:16px 20px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb;flex-wrap:wrap}.accordion-indicator{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:2px solid #d1d5db;border-radius:50%;background-color:white;color:#6b7280;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease;outline:none}.accordion-indicator:hover:not(.accordion-indicator-disabled){border-color:var(--selected-header-color, #10b981);color:var(--selected-header-color, #10b981);background-color:var(--selected-header-bg, #eff6ff)}.accordion-indicator:focus{box-shadow:0 0 0 3px rgba(59, 130, 246, 0.1)}.accordion-indicator-active{border-color:var(--selected-header-color, #10b981);background-color:var(--selected-header-bg, #eff6ff);color:var(--selected-header-color, #10b981);font-weight:600}.accordion-indicator-disabled{opacity:0.5;cursor:not-allowed;pointer-events:none}.accordion-item{border-bottom:1px solid #e5e7eb}.accordion-item:last-child{border-bottom:none}.accordion-item-disabled{opacity:0.6;pointer-events:none}.accordion-header{width:100%;padding:16px 20px;background:none;border:none;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:500;color:#374151;transition:all 0.2s ease;outline:none}.accordion-header:focus{box-shadow:0 0 0 3px rgba(59, 130, 246, 0.1);border-radius:4px}.accordion-header:hover:not(.accordion-header-disabled){background-color:transparent}.accordion-item-open .accordion-header{background-color:var(--selected-header-bg, #f0f9ff);border-left:none}.accordion-item-open .accordion-header.accordion-selection-left{border-left:3px solid var(--selected-header-color, #10b981)}.accordion-item-open .accordion-header.accordion-selection-top{border-top:3px solid var(--selected-header-color, #10b981)}.accordion-header:active:not(.accordion-header-disabled){background-color:#f3f4f6}.accordion-header:active:not(.accordion-header-disabled).accordion-physics-bouncy,.accordion-header:active:not(.accordion-header-disabled).accordion-physics-liquid{transform:perspective(500px) rotateX(-2deg) scale(0.985);transition:transform 0.1s cubic-bezier(0.4, 0, 0.2, 1)}.accordion-header:focus-visible{outline:none;box-shadow:0 0 0 2px white, 0 0 0 4px var(--selected-header-color, #10b981) !important;border-radius:4px;z-index:10}.accordion-header-disabled{cursor:not-allowed;color:#9ca3af}.accordion-header-content{display:flex !important;align-items:center;justify-content:space-between;width:100%;min-width:0;flex:1}.accordion-header-btn{width:100% !important;height:auto !important;min-height:0 !important;padding:0 !important;background:transparent !important;box-shadow:none !important;border:none !important;transform:none !important}.accordion-header-btn::part(button){padding:16px 20px !important;width:100% !important;justify-content:space-between !important;background:transparent !important;border:none !important;box-shadow:none !important}.accordion-header-btn:hover::part(button){background:rgba(0, 0, 0, 0.02) !important}.accordion-header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-align:left}.accordion-header-right{display:flex;align-items:center;gap:12px;flex-shrink:0;margin-left:auto}.accordion-actions{display:flex;align-items:center;gap:4px;margin-left:4px}.accordion-icon{font-size:18px;color:#6b7280;flex-shrink:0}.accordion-image{width:24px;height:24px;border-radius:4px;object-fit:cover;flex-shrink:0}.accordion-header-text{flex:1;display:flex;flex-direction:column;min-width:0;text-align:left}.accordion-title-group{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.accordion-title{font-size:15px;font-weight:600;color:var(--color-text-primary, #111827);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accordion-subtitle{font-size:13px;color:var(--color-text-muted, #6b7280);margin-top:2px}.accordion-badge{background-color:#ef4444;color:white;font-size:12px;font-weight:600;padding:2px 8px;border-radius:12px;min-width:20px;text-align:center;flex-shrink:0}.accordion-arrow{color:var(--color-text-muted, #6b7280);transition:transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);flex-shrink:0;display:flex;align-items:center;justify-content:center;opacity:0.7;pointer-events:none;}.accordion-header:hover .accordion-arrow{opacity:1;color:var(--color-text-primary, #111827);transform:scale(1.1)}.accordion-item-open .accordion-arrow{transform:rotate(180deg)}.accordion-arrow.arrow-start{margin-right:4px}.accordion-content{overflow:hidden;max-height:0;opacity:0;transition:max-height var(--animation-duration, 300ms) var(--animation-timing, ease), opacity var(--animation-duration, 300ms) var(--animation-timing, ease);background-color:#f9fafb;}.accordion-content.accordion-physics-bouncy{transition:max-height var(--animation-duration, 500ms) cubic-bezier(0.68, -0.6, 0.32, 1.6), opacity var(--animation-duration, 500ms) ease, transform var(--animation-duration, 500ms) cubic-bezier(0.68, -0.6, 0.32, 1.6);transform-origin:top}.accordion-content.accordion-physics-bouncy.accordion-content-open{animation:elastic-stretch var(--animation-duration, 500ms) cubic-bezier(0.68, -0.6, 0.32, 1.6)}.accordion-content.accordion-physics-liquid{transition:max-height var(--animation-duration, 600ms) cubic-bezier(0.2, 0.8, 0.2, 1), opacity var(--animation-duration, 600ms) ease, transform var(--animation-duration, 600ms) cubic-bezier(0.2, 0.8, 0.2, 1);transform-origin:top}.accordion-content.accordion-physics-liquid.accordion-content-open{animation:liquid-stretch var(--animation-duration, 600ms) cubic-bezier(0.2, 0.8, 0.2, 1)}@keyframes elastic-stretch{0%{transform:scaleY(0.9) translateY(-10px)}60%{transform:scaleY(1.05) translateY(0)}100%{transform:scaleY(1) translateY(0)}}@keyframes liquid-stretch{0%{transform:scaleY(0.8) skewX(-2deg)}50%{transform:scaleY(1.02) skewX(1deg)}100%{transform:scaleY(1) skewX(0)}}.accordion-content:not(.accordion-content-open){max-height:0;opacity:0}.accordion-content-open{max-height:90vh;opacity:1;overflow-y:auto}.accordion-content-inner{padding:16px 20px;color:#4b5563;line-height:1.6}.accordion-content-inner p{margin-top:0;margin-bottom:12px}.accordion-content-inner p:last-child{margin-bottom:0}.accordion-container.accordion-sm .accordion-header{padding:10px 16px;font-size:13px}.accordion-container.accordion-lg .accordion-header{padding:20px 24px;font-size:18px}.accordion-container.accordion-main .accordion-header{padding:24px 32px;font-size:22px;font-weight:700}.accordion-container.accordion-section .accordion-header{padding:18px 24px;font-size:18px;font-weight:600}.accordion-container.accordion-subsection .accordion-header{padding:14px 20px;font-size:15px;font-weight:500}.accordion-container.accordion-popover .accordion-header{padding:8px 12px;font-size:13px;font-weight:500}.accordion-container.accordion-popover .accordion-content-inner{padding:8px 12px;font-size:12px}.accordion-container.accordion-bordered .accordion-item{border:1px solid #e5e7eb;margin-bottom:8px;border-radius:6px}.accordion-container.accordion-bordered .accordion-item:last-child{margin-bottom:0}.accordion-container.accordion-bordered{border:none;background:transparent}.accordion-container.accordion-splitted{border:none;background:transparent;display:flex;flex-direction:column;gap:12px}.accordion-container.accordion-splitted .accordion-item{border:1px solid #e5e7eb;border-radius:12px;background:white;box-shadow:0 1px 2px rgba(0, 0, 0, 0.05);transition:box-shadow 0.2s ease, border-color 0.2s ease}.accordion-container.accordion-splitted .accordion-item-open{box-shadow:0 4px 12px rgba(0, 0, 0, 0.08);border-color:var(--selected-header-color, #10b981)}.accordion-container.accordion-light{border:none;background:transparent}.accordion-container.accordion-light .accordion-item{border-bottom:1px solid transparent;}.accordion-container.accordion-light .accordion-header{background:transparent !important;}.accordion-container.accordion-light .accordion-header:hover{background:rgba(0, 0, 0, 0.03) !important}.accordion-container.accordion-shadow{border:none;box-shadow:0 4px 20px rgba(0, 0, 0, 0.08);border-radius:16px}.accordion-container.accordion-card-list,.accordion-container.accordion-card{border:none;background:transparent;display:flex;flex-direction:column;gap:12px;overflow:visible;}.accordion-card-list .accordion-item,.accordion-card .accordion-item{border:1px solid #e8edf2;border-radius:16px;background:#ffffff;box-shadow:0 2px 8px rgba(0, 0, 0, 0.06);transition:box-shadow 0.25s ease, border-color 0.25s ease, transform 0.15s ease;overflow:hidden}.accordion-card-list .accordion-item:hover:not(.accordion-item-disabled),.accordion-card .accordion-item:hover:not(.accordion-item-disabled){box-shadow:0 4px 18px rgba(0, 0, 0, 0.1);transform:translateY(-1px)}.accordion-card-list .accordion-item-open,.accordion-card .accordion-item-open{border-color:var(--selected-header-color, #10b981);box-shadow:0 8px 30px rgba(0, 0, 0, 0.15);transform:translateY(-2px)}.accordion-card-list .accordion-item,.accordion-card .accordion-item,.accordion-card-list .accordion-item:last-child,.accordion-card .accordion-item:last-child{border:1px solid #e8edf2}.accordion-card-list .accordion-header,.accordion-card .accordion-header{--button-padding:18px 0px;background:transparent;border-left:none !important}.accordion-card-list .accordion-header:hover:not(.accordion-header-disabled),.accordion-card .accordion-header:hover:not(.accordion-header-disabled){background:transparent}.accordion-card-list .accordion-item-open .accordion-header,.accordion-card .accordion-item-open .accordion-header{background:transparent;border-left:none !important}.accordion-card-list .accordion-icon,.accordion-card .accordion-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;border-radius:12px;background:color-mix(in srgb, var(--selected-header-color, #10b981) 12%, transparent);color:var(--selected-header-color, #10b981);font-size:20px;flex-shrink:0;transition:background 0.2s ease}@supports not (background: color-mix(in srgb, red 10%, transparent)){.accordion-card-list .accordion-icon,.accordion-card .accordion-icon{background:rgba(16, 185, 129, 0.12)}}.accordion-card-list .accordion-item:hover .accordion-icon,.accordion-card .accordion-item:hover .accordion-icon{background:color-mix(in srgb, var(--selected-header-color, #10b981) 20%, transparent)}.accordion-card-list .accordion-title,.accordion-card .accordion-title{font-size:15px;font-weight:700;color:#1a202c;white-space:normal;}.accordion-card-list .accordion-subtitle,.accordion-card .accordion-subtitle{font-size:13px;color:#8a92a0;font-weight:400;white-space:normal}.accordion-card-list .accordion-header-text,.accordion-card .accordion-header-text{gap:3px}.accordion-card-list .accordion-arrow,.accordion-card .accordion-arrow{color:#c0c8d4;font-size:14px;margin-left:16px;transition:color 0.2s ease}.accordion-card-list .accordion-item:hover .accordion-arrow,.accordion-card .accordion-item:hover .accordion-arrow{color:var(--selected-header-color, #10b981)}.accordion-card-list .accordion-item-open .accordion-arrow,.accordion-card .accordion-item-open .accordion-arrow{color:var(--selected-header-color, #10b981)}.accordion-card-list .accordion-content,.accordion-card .accordion-content{background:#f8fafc;border-top:1px solid #edf1f6}.accordion-card-list .accordion-content-inner,.accordion-card .accordion-content-inner{padding:16px 20px 20px;color:#4a5568;font-size:14px;line-height:1.65}.accordion-card-list.accordion-sm .accordion-header,.accordion-card.accordion-sm .accordion-header{padding:14px 16px}.accordion-card-list.accordion-sm .accordion-icon,.accordion-card.accordion-sm .accordion-icon{width:36px;height:36px;min-width:36px;border-radius:10px;font-size:17px}.accordion-card-list.accordion-sm .accordion-title,.accordion-card.accordion-sm .accordion-title{font-size:14px}.accordion-card-list.accordion-lg .accordion-header,.accordion-card.accordion-lg .accordion-header{padding:22px 24px}.accordion-card-list.accordion-lg .accordion-icon,.accordion-card.accordion-lg .accordion-icon{width:52px;height:52px;min-width:52px;border-radius:14px;font-size:24px}.accordion-card-list.accordion-lg .accordion-title,.accordion-card.accordion-lg .accordion-title{font-size:17px}.accordion-card-list.accordion-icon-start .accordion-arrow.arrow-start,.accordion-card.accordion-icon-start .accordion-arrow.arrow-start{margin-right:16px;margin-left:0}.accordion-headline{background:transparent !important;border:none !important;box-shadow:none !important}.accordion-headline .accordion-item{border-bottom:1px solid #e5e7eb;margin-bottom:0;transition:all 0.25s ease}.accordion-headline .accordion-item:last-child{border-bottom:none}.accordion-headline .accordion-header{padding:var(--hl-padding, 32px 0);font-size:var(--hl-title-size, 28px);font-weight:700;color:#111827;background:transparent;display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:24px;border-left:none !important;text-align:left}.accordion-headline .accordion-header:hover{background:transparent;color:var(--selected-header-color, #10b981)}.accordion-headline .accordion-header-content{flex:1;display:flex;flex-direction:row;align-items:flex-start;gap:16px}.accordion-headline .accordion-header-text{display:flex;flex-direction:column;gap:var(--hl-gap, 12px);flex:1;text-align:left}.accordion-headline .accordion-title{white-space:normal;font-size:var(--hl-title-size, 28px) !important;font-weight:700;line-height:1.2;text-align:left;color:#111827}.accordion-headline .accordion-subtitle{font-size:var(--hl-subtitle-size, 16px) !important;color:#4b5563;line-height:1.6;margin-top:4px;white-space:normal;max-width:90%;font-weight:400;text-align:left}.accordion-headline{}.accordion-headline .accordion-badge{background:#1f2937;color:white;width:22px;height:22px;min-width:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;order:2;margin-top:6px}.accordion-headline .accordion-arrow{font-size:calc(var(--hl-title-size, 28px) * 0.7);color:#111827;margin-top:6px;opacity:0.8}.accordion-headline .accordion-item-open .accordion-header{background:transparent;border-left:none;color:#111827}.accordion-headline .accordion-content{background:transparent}.accordion-headline .accordion-content-inner{padding:0 0 40px 0;font-size:var(--hl-subtitle-size, 16px);color:#4b5563;line-height:1.6;text-align:left}.accordion-arrow.arrow-start{margin-left:0;margin-right:12px;order:-1;}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.accordion-header:focus-visible{outline:2px solid #10b981;outline-offset:2px;z-index:10;}@media (max-width: 640px){.accordion-header{padding:12px 16px;font-size:14px}.accordion-content-inner{padding:12px 16px}.accordion-header-content{gap:8px}.accordion-badge{font-size:11px;padding:1px 6px}}.accordion-search{position:relative;padding:16px 20px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.accordion-search-input{width:100%;padding:10px 40px 10px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;transition:all 0.2s ease}.accordion-search-input:focus{border-color:#10b981;box-shadow:0 0 0 3px rgba(59, 130, 246, 0.1)}.accordion-search-clear{position:absolute;right:28px;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;cursor:pointer;font-size:18px;padding:4px 8px;border-radius:4px;transition:all 0.2s ease}.accordion-search-clear:hover{background-color:#e5e7eb;color:#374151}.search-highlight{background-color:#fef08a;color:#854d0e;padding:2px 4px;border-radius:2px;font-weight:600}.accordion-controls{display:flex;gap:8px;padding:12px 20px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb;flex-wrap:wrap}.accordion-control-button{padding:8px 16px;background-color:white;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all 0.2s ease;outline:none}.accordion-control-button:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.accordion-control-button:active:not(:disabled){background-color:#e5e7eb}.accordion-control-button:disabled{opacity:0.5;cursor:not-allowed}.accordion-control-button:focus{box-shadow:0 0 0 3px rgba(59, 130, 246, 0.1)}.accordion-header-text{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.accordion-subtitle{font-size:13px;color:#6b7280;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accordion-actions{display:flex;gap:4px;margin-left:8px}.accordion-action-button{padding:6px 10px;background-color:transparent;border:1px solid #d1d5db;border-radius:4px;font-size:14px;color:#374151;cursor:pointer;transition:all 0.2s ease;outline:none}.accordion-action-button:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.accordion-action-button:disabled{opacity:0.5;cursor:not-allowed}.accordion-action-button:focus{box-shadow:0 0 0 2px rgba(59, 130, 246, 0.2)}.accordion-loading-spinner{font-size:16px;animation:spin 1s linear infinite;margin-left:8px}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.accordion-item-loading{opacity:0.7}.accordion-item-dragging{opacity:0.5;cursor:grabbing;transform:scale(0.98)}.accordion-item-drag-over{border-top:3px solid #10b981;background-color:#eff6ff}@keyframes accordion-shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}.accordion-item-shaking{animation:accordion-shake 0.4s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;pointer-events:none}@keyframes accordion-success-pulse{0%{box-shadow:0 0 0 0 rgba(16, 185, 129, 0.4), 0 0 0 0 rgba(16, 185, 129, 0.2);background-color:rgba(16, 185, 129, 0.05)}50%{background-color:rgba(16, 185, 129, 0.1)}70%{box-shadow:0 0 0 15px rgba(16, 185, 129, 0), 0 0 0 30px rgba(16, 185, 129, 0)}100%{box-shadow:0 0 0 0 rgba(16, 185, 129, 0), 0 0 0 0 rgba(16, 185, 129, 0);background-color:transparent}}.accordion-item-success{border-color:#10b981 !important;animation:accordion-success-pulse 1s cubic-bezier(0.4, 0, 0.2, 1)}.accordion-item[draggable=true]{cursor:grab}.accordion-item[draggable=true]:active{cursor:grabbing}.accordion-nested-items{padding-left:0;background-color:transparent}.accordion-item-nested{margin-left:24px;position:relative;border-left:none;}.accordion-item-nested::before{content:"";position:absolute;left:-16px;top:0;bottom:0;width:2px;background:linear-gradient(180deg, var(--selected-header-color, #10b981) 0%, rgba(229, 231, 235, 0.4) 100%);opacity:0.6;transition:all 0.3s ease}.accordion-item-nested{}.accordion-item-nested::after{content:"";position:absolute;left:-16px;top:24px;width:14px;height:2px;background:var(--selected-header-color, #10b981);opacity:0.3;border-radius:0 2px 2px 0}.accordion-item-nested{}.accordion-item-nested .accordion-header::before{content:"";position:absolute;left:-18px;top:22px;width:6px;height:6px;background:var(--selected-header-color, #10b981);border-radius:50%;opacity:0.5;z-index:2}.accordion-item-nested .accordion-header{padding-left:16px;font-size:15px;background-color:rgba(0, 0, 0, 0.015);border-radius:0 8px 8px 0;margin-top:2px;margin-bottom:2px}.accordion-item-nested .accordion-header:hover{background-color:rgba(0, 0, 0, 0.03)}.accordion-item-nested .accordion-nested-items .accordion-header{background-color:rgba(0, 0, 0, 0.025);font-size:14px}.accordion-header-custom{padding:16px 20px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.accordion-no-results{padding:32px 20px;text-align:center;color:#6b7280;font-size:14px}.accordion-no-results p{margin:0}.accordion-rtl{direction:rtl}.accordion-rtl .accordion-header{text-align:right}.accordion-rtl .accordion-arrow{margin-left:0;margin-right:12px}.accordion-rtl .accordion-arrow.arrow-start{margin-right:0;margin-left:12px}.accordion-rtl .accordion-item-open .accordion-header{border-left:none;border-right:3px solid var(--selected-header-color, #10b981)}.accordion-rtl .accordion-actions{margin-left:0;margin-right:8px}.accordion-dense .accordion-header{padding:10px 16px;font-size:14px}.accordion-dense .accordion-content-inner{padding:10px 16px;font-size:13px}.accordion-dense .accordion-search{padding:12px 16px}.accordion-dense .accordion-controls{padding:8px 16px}.accordion-dense .accordion-indicators{padding:12px 16px}.accordion-dense .accordion-indicator{width:28px;height:28px;font-size:12px}.accordion-dense .accordion-subtitle{font-size:12px}@media print{.accordion-print-expand-all .accordion-content{max-height:none !important;opacity:1 !important;display:block !important}.accordion-print-expand-all .accordion-item{page-break-inside:avoid}.accordion-search,.accordion-controls,.accordion-indicators{display:none !important}.accordion-arrow,.accordion-actions{display:none !important}.accordion-header{cursor:default;pointer-events:none}}.accordion-control-button:focus-visible,.accordion-action-button:focus-visible,.accordion-indicator:focus-visible{outline:2px solid #10b981;outline-offset:2px;border-radius:4px}.accordion-item,.accordion-header,.accordion-content,.accordion-action-button,.accordion-control-button{transition:all 0.2s ease}@media (prefers-reduced-motion: reduce){.accordion-content,.accordion-arrow,.accordion-item,.accordion-header,.accordion-loading-spinner{transition:none;animation:none}}.accordion-item-skeleton{padding:16px 20px;background:#fff}.skeleton-box{background:#e5e7eb;border-radius:4px;animation:skeleton-pulse 1.5s infinite ease-in-out}@keyframes skeleton-pulse{0%{opacity:0.6}50%{opacity:1}100%{opacity:0.6}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;display:none}.accordion-status-badge{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;margin-left:12px;flex-shrink:0}.accordion-status-badge.status-completed{color:#10b981;background:rgba(16, 185, 129, 0.1)}.accordion-status-badge.status-error{color:#ef4444;background:rgba(239, 68, 68, 0.1)}.accordion-status-badge.status-warning{color:#f59e0b;background:rgba(245, 158, 11, 0.1)}.accordion-status-badge.status-current{color:#3b82f6;background:rgba(59, 130, 246, 0.1)}.pulse-dot{width:8px;height:8px;background-color:#3b82f6;border-radius:50%;box-shadow:0 0 0 0 rgba(59, 130, 246, 0.7);animation:status-pulse 1.5s infinite}@keyframes status-pulse{0%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(59, 130, 246, 0.7)}70%{transform:scale(1);box-shadow:0 0 0 6px rgba(59, 130, 246, 0)}100%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(59, 130, 246, 0)}}.accordion-theme-glass{background:rgba(255, 255, 255, 0.4) !important;backdrop-filter:blur(12px) !important;border:1px solid rgba(255, 255, 255, 0.3) !important;box-shadow:0 8px 32px 0 rgba(31, 38, 135, 0.07) !important}.accordion-theme-glass .accordion-item{background:transparent;border-bottom:1px solid rgba(255, 255, 255, 0.1)}.accordion-theme-glass .accordion-header:hover{background:rgba(255, 255, 255, 0.2)}.accordion-theme-radiant{background:#0f172a !important;border:1px solid #1e293b !important;color:#f8fafc}.accordion-theme-radiant .accordion-item{border-bottom:1px solid #1e293b;background:transparent}.accordion-theme-radiant .accordion-header{color:#e2e8f0}.accordion-theme-radiant .accordion-header:hover{color:#38bdf8}.accordion-theme-radiant .accordion-item-open .accordion-header{background:linear-gradient(90deg, rgba(56, 189, 248, 0.05) 0%, transparent 100%);color:#38bdf8;box-shadow:inset 2px 0 0 #38bdf8}.accordion-theme-radiant .accordion-subtitle{color:#94a3b8}@media (min-width: 1024px){.accordion-columns-2{display:grid !important;grid-template-columns:1fr 1fr;gap:16px;border:none !important;background:transparent !important}.accordion-columns-2 .accordion-item{border:1px solid #e5e7eb;border-radius:12px;margin-bottom:0 !important}}.accordion-item{perspective:1000px;transform-style:preserve-3d}.accordion-header{transform:translate3d(var(--parallax-x, 0), var(--parallax-y, 0), 0) rotateX(var(--rotate-x, 0)) rotateY(var(--rotate-y, 0));transition:transform 0.1s ease-out;will-change:transform}.accordion-header-indicators{display:flex;align-items:center;gap:12px}.accordion-actions{display:flex;align-items:center;gap:4px}.accordion-progress-ring{position:relative;width:36px;height:36px;display:flex;align-items:center;justify-content:center;margin-left:8px}.accordion-progress-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.accordion-progress-ring .ring-bg{stroke:#e5e7eb}.accordion-progress-ring .ring-fg{stroke:#3b82f6;stroke-linecap:round;transition:stroke-dasharray 0.5s ease}.accordion-progress-ring .progress-text{position:absolute;font-size:8px;font-weight:700;color:#1f2937;letter-spacing:-0.02em}.accordion-icon,.accordion-badge,.accordion-status-badge{transform:translateZ(20px)}.accordion-title{transform:translateZ(10px)}.accordion-header-sticky{position:sticky;top:0;z-index:50;background:inherit;box-shadow:0 4px 12px rgba(0, 0, 0, 0.03)}.accordion-header-sticky::after{content:"";position:absolute;bottom:-10px;left:0;right:0;height:10px;background:linear-gradient(to bottom, rgba(0, 0, 0, 0.02), transparent);pointer-events:none;opacity:1}.accordion-peek-snippet{display:block;font-size:13px;color:#94a3b8;font-style:italic;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90%;opacity:0.8;animation:peek-reveal 0.4s ease-out}@keyframes peek-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:0.8;transform:translateY(0)}}.accordion-bordered .accordion-header-sticky,.accordion-card .accordion-header-sticky{background:white;z-index:100}.accordion-theme-glass .accordion-header-sticky{background:rgba(255, 255, 255, 0.2);backdrop-filter:blur(12px)}.accordion-theme-radiant .accordion-header-sticky{background:#0f172a}.accordion-container{position:relative}.accordion-quick-actions{position:absolute;right:12px;top:50%;transform:translateY(-50%) translateX(10px);display:flex;gap:8px;opacity:0;pointer-events:none;transition:all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);background:rgba(255, 255, 255, 0.9);padding:4px 8px;border-radius:20px;border:1px solid #e2e8f0;box-shadow:0 4px 12px rgba(0, 0, 0, 0.1);z-index:20}.accordion-item:hover .accordion-quick-actions{opacity:1;transform:translateY(-50%) translateX(0);pointer-events:auto}.quick-action-btn{background:transparent;border:none;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#64748b;cursor:pointer;transition:all 0.2s ease}.quick-action-btn:hover{background:#f1f5f9;color:#3b82f6;transform:scale(1.1)}.accordion-search-heatmap{position:absolute;top:80px;bottom:0;right:-12px;width:4px;background:rgba(226, 232, 240, 0.5);border-radius:2px;pointer-events:none;z-index:50}.heatmap-marker{position:absolute;width:8px;height:8px;left:-2px;background:#3b82f6;border-radius:50%;box-shadow:0 0 8px rgba(59, 130, 246, 0.8);pointer-events:auto;cursor:pointer;transition:transform 0.2s ease}.heatmap-marker:hover{transform:scale(1.5);background:#2563eb}.accordion-theme-radiant .accordion-quick-actions{background:#1e293b;border-color:#334155;color:white}.accordion-theme-glass .accordion-quick-actions{background:rgba(255, 255, 255, 0.15);backdrop-filter:blur(8px);border-color:rgba(255, 255, 255, 0.3)}.accordion-lock-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(15, 23, 42, 0.95);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:500;border-radius:inherit;backdrop-filter:blur(8px);animation:lock-fade-in 0.3s ease-out}.accordion-lock-overlay .lock-grid{display:grid;grid-template-columns:repeat(3, 40px);gap:20px;margin-bottom:24px}.accordion-lock-overlay .lock-dot{width:16px;height:16px;background:rgba(255, 255, 255, 0.2);border-radius:50%;cursor:pointer;transition:all 0.2s ease;box-shadow:0 0 10px rgba(0, 0, 0, 0.5)}.accordion-lock-overlay .lock-dot.active{background:#38bdf8;box-shadow:0 0 15px #38bdf8;transform:scale(1.3)}.accordion-lock-overlay .lock-hint{color:#94a3b8;font-size:14px;font-weight:600;margin-bottom:16px;text-transform:uppercase;letter-spacing:0.1em}.accordion-lock-overlay .lock-cancel{background:transparent;border:1px solid #334155;color:#94a3b8;padding:6px 16px;border-radius:6px;cursor:pointer;transition:all 0.2s ease}.accordion-lock-overlay .lock-cancel:hover{border-color:#ef4444;color:#ef4444}@keyframes lock-fade-in{from{opacity:0;background:rgba(0, 0, 0, 0)}to{opacity:1;background:rgba(15, 23, 42, 0.95)}}.accordion-header-sparkline{opacity:0.7;color:#3b82f6;margin-left:8px}.accordion-header-sparkline polyline{stroke-dasharray:100;stroke-dashoffset:100;animation:spark-draw 1.5s ease-out forwards}@keyframes spark-draw{to{stroke-dashoffset:0}}.accordion-theme-radiant .accordion-header-sparkline{color:#38bdf8}.accordion-theme-glass .accordion-header-sparkline{color:#8b5cf6}.accordion-breadcrumbs{font-size:10px;text-transform:uppercase;letter-spacing:0.05em;color:#94a3b8;margin-bottom:4px;opacity:0.6;font-weight:700}.breadcrumb-node{transition:color 0.2s ease}.breadcrumb-node:hover{color:#3b82f6}@media print{.accordion-print-expand-all .accordion-content{display:block !important;max-height:none !important;opacity:1 !important;visibility:visible !important;overflow:visible !important;border-top:1px solid #e2e8f0}.accordion-print-expand-all .accordion-item{margin-bottom:20px !important;break-inside:avoid;border:1px solid #e2e8f0 !important;box-shadow:none !important;background:white !important}.accordion-print-expand-all{}.accordion-print-expand-all .accordion-arrow,.accordion-print-expand-all .accordion-search,.accordion-print-expand-all .accordion-controls,.accordion-print-expand-all .accordion-quick-actions,.accordion-print-expand-all .accordion-lock-overlay,.accordion-print-expand-all .accordion-search-heatmap,.accordion-print-expand-all .accordion-action-button{display:none !important}.accordion-print-expand-all .accordion-header{background:#f8fafc !important;color:black !important;padding:12px !important}.accordion-print-expand-all .accordion-header-sparkline{display:inline-block !important;opacity:1 !important}}@media print{.accordion-theme-radiant.accordion-print-expand-all,.accordion-theme-glass.accordion-print-expand-all{background:white !important;color:black !important}.accordion-theme-radiant.accordion-print-expand-all .accordion-header,.accordion-theme-glass.accordion-print-expand-all .accordion-header{color:black !important;background:#f1f5f9 !important}.accordion-theme-radiant.accordion-print-expand-all .accordion-title,.accordion-theme-glass.accordion-print-expand-all .accordion-title{color:black !important}}.accordion-portal-reader{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background:white;display:flex;flex-direction:column;animation:portal-glide-up 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);padding:40px;overflow-y:auto}.accordion-portal-reader .portal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8f0;padding-bottom:24px;margin-bottom:40px}.accordion-portal-reader .portal-header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.accordion-portal-reader .portal-title{font-size:32px;font-weight:800;letter-spacing:-0.02em;color:#0f172a}.accordion-portal-reader .portal-close-toggle::part(button){min-width:148px;padding:0.8rem 1rem;border-radius:999px;border:1px solid #cbd5e1;background:linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);color:#0f172a;box-shadow:0 10px 24px rgba(15, 23, 42, 0.08);font-weight:700}.accordion-portal-reader .portal-close{background:#f1f5f9;border:none;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s ease}.accordion-portal-reader .portal-close:hover{background:#ef4444;color:white;transform:rotate(90deg)}.accordion-portal-reader .portal-content{max-width:800px;margin:0 auto;width:100%}.accordion-portal-reader .portal-meta{text-transform:uppercase;font-size:12px;letter-spacing:0.1em;color:#64748b;font-weight:700;margin-bottom:24px}.accordion-portal-reader .portal-body{font-size:18px;line-height:1.8;color:#334155}.accordion-portal-reader .portal-body p{margin-bottom:1.5em}.accordion-collaborators{display:flex;margin-right:12px}.accordion-collaborators .presence-avatar{width:24px;height:24px;border-radius:50%;border:2px solid white;margin-left:-8px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:white;box-shadow:0 0 10px rgba(0, 0, 0, 0.1);transition:transform 0.2s ease;cursor:pointer}.accordion-collaborators .presence-avatar:first-child{margin-left:0}.accordion-collaborators .presence-avatar:hover{transform:translateY(-4px) scale(1.1);z-index:10}.accordion-collaborators .presence-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.accordion-ai-briefing{position:absolute;top:100%;left:0;width:280px;background:white;border:1px solid #e2e8f0;border-radius:12px;padding:16px;box-shadow:0 10px 25px rgba(0, 0, 0, 0.1);z-index:100;opacity:0;pointer-events:none;transform:translateY(10px);transition:all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1)}.accordion-ai-briefing .briefing-list{margin:0;padding:0 0 0 16px;font-size:13px;line-height:1.6;color:#475569}.accordion-ai-briefing .briefing-list li{margin-bottom:8px}.accordion-title:hover+.accordion-ai-briefing{opacity:1;transform:translateY(0)}@keyframes portal-glide-up{from{transform:translateY(100vh);opacity:0}to{transform:translateY(0);opacity:1}}.accordion-theme-radiant .accordion-portal-reader{background:#0f172a}.accordion-theme-radiant .accordion-portal-reader .portal-title,.accordion-theme-radiant .accordion-portal-reader .portal-body{color:white}.accordion-theme-radiant .accordion-portal-reader .portal-header{border-color:#1e293b}.accordion-theme-radiant .accordion-portal-reader .portal-close{background:#1e293b;color:white}.accordion-theme-radiant .accordion-portal-reader .portal-close-toggle::part(button){background:linear-gradient(180deg, #1e293b 0%, #0f172a 100%);border-color:#334155;color:#e2e8f0;box-shadow:0 12px 30px rgba(2, 6, 23, 0.45)}.accordion-theme-radiant .accordion-ai-briefing{background:#1e293b;border-color:#334155;color:white}.accordion-theme-radiant .accordion-ai-briefing .briefing-list{color:#cbd5e1}.accordion-streaming-terminal{background:#020617;border-radius:8px;border:1px solid #1e293b;margin-bottom:20px;overflow:hidden;box-shadow:inset 0 0 20px rgba(0, 0, 0, 0.5)}.accordion-streaming-terminal .terminal-header{background:#1e293b;padding:6px 16px;font-size:10px;font-weight:800;color:#94a3b8;letter-spacing:0.1em}.accordion-streaming-terminal .terminal-body{height:180px;overflow-y:auto;padding:12px;font-family:"JetBrains Mono", "Fira Code", monospace;font-size:11px;line-height:1.5;scroll-behavior:smooth}.accordion-streaming-terminal .terminal-line{display:flex;gap:12px;margin-bottom:4px;border-left:2px solid transparent;transition:all 0.2s ease}.accordion-streaming-terminal .terminal-line:hover{background:rgba(255, 255, 255, 0.05);border-left-color:#3b82f6}.accordion-streaming-terminal .line-timestamp{color:#64748b;white-space:nowrap}.accordion-streaming-terminal .line-msg{color:#cbd5e1;word-break:break-all}.quick-action-btn.voice-btn.active{background:#ef4444 !important;color:white !important;animation:voice-pulse 1.5s infinite ease-in-out;box-shadow:0 0 15px #ef4444}@keyframes voice-pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:0.7}100%{transform:scale(1);opacity:1}}.accordion-teleport-link{background:rgba(59, 130, 246, 0.1);border:1px solid rgba(59, 130, 246, 0.2);color:#3b82f6;font-size:9px;font-weight:800;padding:2px 6px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;margin-left:8px;transition:all 0.2s ease}.accordion-teleport-link:hover{background:#3b82f6;color:white}.accordion-item{transition:transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.6s ease;transform-origin:top center}`;
|
|
8
|
+
const accordionCss = () => `@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}.accordion-container{width:100%;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background-color:var(--accordion-bg, white);font-family:var(--font-family)}.accordion-indicators{display:flex;gap:8px;padding:16px 20px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb;flex-wrap:wrap}.accordion-indicator{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:2px solid #d1d5db;border-radius:50%;background-color:white;color:#6b7280;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease;outline:none}.accordion-indicator:hover:not(.accordion-indicator-disabled){border-color:var(--selected-header-color, #10b981);color:var(--selected-header-color, #10b981);background-color:var(--selected-header-bg, #eff6ff)}.accordion-indicator:focus{box-shadow:0 0 0 3px rgba(59, 130, 246, 0.1)}.accordion-indicator-active{border-color:var(--selected-header-color, #10b981);background-color:var(--selected-header-bg, #eff6ff);color:var(--selected-header-color, #10b981);font-weight:600}.accordion-indicator-disabled{opacity:0.5;cursor:not-allowed;pointer-events:none}.accordion-item{border-bottom:1px solid #e5e7eb}.accordion-item:last-child{border-bottom:none}.accordion-item-disabled{opacity:0.6;pointer-events:none}.accordion-header{width:100%;padding:16px 20px;background:none;border:none;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:500;color:#374151;transition:all 0.2s ease;outline:none}.accordion-header:focus{box-shadow:0 0 0 3px rgba(59, 130, 246, 0.1);border-radius:4px}.accordion-header:hover:not(.accordion-header-disabled){background-color:transparent}.accordion-item-open .accordion-header{background-color:var(--selected-header-bg, #f0f9ff);border-left:none}.accordion-item-open .accordion-header.accordion-selection-left{border-left:3px solid var(--selected-header-color, #10b981)}.accordion-item-open .accordion-header.accordion-selection-top{border-top:3px solid var(--selected-header-color, #10b981)}.accordion-header:active:not(.accordion-header-disabled){background-color:#f3f4f6}.accordion-header:active:not(.accordion-header-disabled).accordion-physics-bouncy,.accordion-header:active:not(.accordion-header-disabled).accordion-physics-liquid{transform:perspective(500px) rotateX(-2deg) scale(0.985);transition:transform 0.1s cubic-bezier(0.4, 0, 0.2, 1)}.accordion-header:focus-visible{outline:none;box-shadow:0 0 0 2px white, 0 0 0 4px var(--selected-header-color, #10b981) !important;border-radius:4px;z-index:10}.accordion-header-disabled{cursor:not-allowed;color:#9ca3af}.accordion-header-content{display:flex !important;align-items:center;justify-content:space-between;width:100%;min-width:0;flex:1}.accordion-header-btn{width:100% !important;height:auto !important;min-height:0 !important;padding:0 !important;background:transparent !important;box-shadow:none !important;border:none !important;transform:none !important}.accordion-header-btn::part(button){padding:16px 20px !important;width:100% !important;justify-content:space-between !important;background:transparent !important;border:none !important;box-shadow:none !important}.accordion-header-btn:hover::part(button){background:rgba(0, 0, 0, 0.02) !important}.accordion-header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-align:left}.accordion-header-right{display:flex;align-items:center;gap:12px;flex-shrink:0;margin-left:auto}.accordion-actions{display:flex;align-items:center;gap:4px;margin-left:4px}.accordion-icon{font-size:18px;color:#6b7280;flex-shrink:0}.accordion-image{width:24px;height:24px;border-radius:4px;object-fit:cover;flex-shrink:0}.accordion-header-text{flex:1;display:flex;flex-direction:column;min-width:0;text-align:left}.accordion-title-group{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.accordion-title{font-size:15px;font-weight:600;color:var(--color-text-primary, #111827);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accordion-subtitle{font-size:13px;color:var(--color-text-muted, #6b7280);margin-top:2px}.accordion-badge{background-color:#ef4444;color:white;font-size:12px;font-weight:600;padding:2px 8px;border-radius:12px;min-width:20px;text-align:center;flex-shrink:0}.accordion-arrow{color:var(--color-text-muted, #6b7280);transition:transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);flex-shrink:0;display:flex;align-items:center;justify-content:center;opacity:0.7;pointer-events:none;}.accordion-header:hover .accordion-arrow{opacity:1;color:var(--color-text-primary, #111827);transform:scale(1.1)}.accordion-item-open .accordion-arrow{transform:rotate(180deg)}.accordion-arrow.arrow-start{margin-right:4px}.accordion-content{overflow:hidden;max-height:0;opacity:0;transition:max-height var(--animation-duration, 300ms) var(--animation-timing, ease), opacity var(--animation-duration, 300ms) var(--animation-timing, ease);background-color:#f9fafb;}.accordion-content.accordion-physics-bouncy{transition:max-height var(--animation-duration, 500ms) cubic-bezier(0.68, -0.6, 0.32, 1.6), opacity var(--animation-duration, 500ms) ease, transform var(--animation-duration, 500ms) cubic-bezier(0.68, -0.6, 0.32, 1.6);transform-origin:top}.accordion-content.accordion-physics-bouncy.accordion-content-open{animation:elastic-stretch var(--animation-duration, 500ms) cubic-bezier(0.68, -0.6, 0.32, 1.6)}.accordion-content.accordion-physics-liquid{transition:max-height var(--animation-duration, 600ms) cubic-bezier(0.2, 0.8, 0.2, 1), opacity var(--animation-duration, 600ms) ease, transform var(--animation-duration, 600ms) cubic-bezier(0.2, 0.8, 0.2, 1);transform-origin:top}.accordion-content.accordion-physics-liquid.accordion-content-open{animation:liquid-stretch var(--animation-duration, 600ms) cubic-bezier(0.2, 0.8, 0.2, 1)}@keyframes elastic-stretch{0%{transform:scaleY(0.9) translateY(-10px)}60%{transform:scaleY(1.05) translateY(0)}100%{transform:scaleY(1) translateY(0)}}@keyframes liquid-stretch{0%{transform:scaleY(0.8) skewX(-2deg)}50%{transform:scaleY(1.02) skewX(1deg)}100%{transform:scaleY(1) skewX(0)}}.accordion-content:not(.accordion-content-open){max-height:0;opacity:0}.accordion-content-open{max-height:90vh;opacity:1;overflow-y:auto}.accordion-content-inner{padding:16px 20px;color:#4b5563;line-height:1.6}.accordion-content-inner p{margin-top:0;margin-bottom:12px}.accordion-content-inner p:last-child{margin-bottom:0}.accordion-container.accordion-sm .accordion-header{padding:10px 16px;font-size:13px}.accordion-container.accordion-lg .accordion-header{padding:20px 24px;font-size:18px}.accordion-container.accordion-main .accordion-header{padding:24px 32px;font-size:22px;font-weight:700}.accordion-container.accordion-section .accordion-header{padding:18px 24px;font-size:18px;font-weight:600}.accordion-container.accordion-subsection .accordion-header{padding:14px 20px;font-size:15px;font-weight:500}.accordion-container.accordion-popover .accordion-header{padding:8px 12px;font-size:13px;font-weight:500}.accordion-container.accordion-popover .accordion-content-inner{padding:8px 12px;font-size:12px}.accordion-container.accordion-bordered .accordion-item{border:1px solid #e5e7eb;margin-bottom:8px;border-radius:6px}.accordion-container.accordion-bordered .accordion-item:last-child{margin-bottom:0}.accordion-container.accordion-bordered{border:none;background:transparent}.accordion-container.accordion-splitted{border:none;background:transparent;display:flex;flex-direction:column;gap:12px}.accordion-container.accordion-splitted .accordion-item{border:1px solid #e5e7eb;border-radius:12px;background:white;box-shadow:0 1px 2px rgba(0, 0, 0, 0.05);transition:box-shadow 0.2s ease, border-color 0.2s ease}.accordion-container.accordion-splitted .accordion-item-open{box-shadow:0 4px 12px rgba(0, 0, 0, 0.08);border-color:var(--selected-header-color, #10b981)}.accordion-container.accordion-light{border:none;background:transparent}.accordion-container.accordion-light .accordion-item{border-bottom:1px solid transparent;}.accordion-container.accordion-light .accordion-header{background:transparent !important;}.accordion-container.accordion-light .accordion-header:hover{background:rgba(0, 0, 0, 0.03) !important}.accordion-container.accordion-shadow{border:none;box-shadow:0 4px 20px rgba(0, 0, 0, 0.08);border-radius:16px}.accordion-container.accordion-card-list,.accordion-container.accordion-card{border:none;background:transparent;display:flex;flex-direction:column;gap:12px;overflow:visible;}.accordion-card-list .accordion-item,.accordion-card .accordion-item{border:1px solid #e8edf2;border-radius:16px;background:#ffffff;box-shadow:0 2px 8px rgba(0, 0, 0, 0.06);transition:box-shadow 0.25s ease, border-color 0.25s ease, transform 0.15s ease;overflow:hidden}.accordion-card-list .accordion-item:hover:not(.accordion-item-disabled),.accordion-card .accordion-item:hover:not(.accordion-item-disabled){box-shadow:0 4px 18px rgba(0, 0, 0, 0.1);transform:translateY(-1px)}.accordion-card-list .accordion-item-open,.accordion-card .accordion-item-open{border-color:var(--selected-header-color, #10b981);box-shadow:0 8px 30px rgba(0, 0, 0, 0.15);transform:translateY(-2px)}.accordion-card-list .accordion-item,.accordion-card .accordion-item,.accordion-card-list .accordion-item:last-child,.accordion-card .accordion-item:last-child{border:1px solid #e8edf2}.accordion-card-list .accordion-header,.accordion-card .accordion-header{--button-padding:18px 0px;background:transparent;border-left:none !important}.accordion-card-list .accordion-header:hover:not(.accordion-header-disabled),.accordion-card .accordion-header:hover:not(.accordion-header-disabled){background:transparent}.accordion-card-list .accordion-item-open .accordion-header,.accordion-card .accordion-item-open .accordion-header{background:transparent;border-left:none !important}.accordion-card-list .accordion-icon,.accordion-card .accordion-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;border-radius:12px;background:color-mix(in srgb, var(--selected-header-color, #10b981) 12%, transparent);color:var(--selected-header-color, #10b981);font-size:20px;flex-shrink:0;transition:background 0.2s ease}@supports not (background: color-mix(in srgb, red 10%, transparent)){.accordion-card-list .accordion-icon,.accordion-card .accordion-icon{background:rgba(16, 185, 129, 0.12)}}.accordion-card-list .accordion-item:hover .accordion-icon,.accordion-card .accordion-item:hover .accordion-icon{background:color-mix(in srgb, var(--selected-header-color, #10b981) 20%, transparent)}.accordion-card-list .accordion-title,.accordion-card .accordion-title{font-size:15px;font-weight:700;color:#1a202c;white-space:normal;}.accordion-card-list .accordion-subtitle,.accordion-card .accordion-subtitle{font-size:13px;color:#8a92a0;font-weight:400;white-space:normal}.accordion-card-list .accordion-header-text,.accordion-card .accordion-header-text{gap:3px}.accordion-card-list .accordion-arrow,.accordion-card .accordion-arrow{color:#c0c8d4;font-size:14px;margin-left:16px;transition:color 0.2s ease}.accordion-card-list .accordion-item:hover .accordion-arrow,.accordion-card .accordion-item:hover .accordion-arrow{color:var(--selected-header-color, #10b981)}.accordion-card-list .accordion-item-open .accordion-arrow,.accordion-card .accordion-item-open .accordion-arrow{color:var(--selected-header-color, #10b981)}.accordion-card-list .accordion-content,.accordion-card .accordion-content{background:#f8fafc;border-top:1px solid #edf1f6}.accordion-card-list .accordion-content-inner,.accordion-card .accordion-content-inner{padding:16px 20px 20px;color:#4a5568;font-size:14px;line-height:1.65}.accordion-card-list.accordion-sm .accordion-header,.accordion-card.accordion-sm .accordion-header{padding:14px 16px}.accordion-card-list.accordion-sm .accordion-icon,.accordion-card.accordion-sm .accordion-icon{width:36px;height:36px;min-width:36px;border-radius:10px;font-size:17px}.accordion-card-list.accordion-sm .accordion-title,.accordion-card.accordion-sm .accordion-title{font-size:14px}.accordion-card-list.accordion-lg .accordion-header,.accordion-card.accordion-lg .accordion-header{padding:22px 24px}.accordion-card-list.accordion-lg .accordion-icon,.accordion-card.accordion-lg .accordion-icon{width:52px;height:52px;min-width:52px;border-radius:14px;font-size:24px}.accordion-card-list.accordion-lg .accordion-title,.accordion-card.accordion-lg .accordion-title{font-size:17px}.accordion-card-list.accordion-icon-start .accordion-arrow.arrow-start,.accordion-card.accordion-icon-start .accordion-arrow.arrow-start{margin-right:16px;margin-left:0}.accordion-headline{background:transparent !important;border:none !important;box-shadow:none !important}.accordion-headline .accordion-item{border-bottom:1px solid #e5e7eb;margin-bottom:0;transition:all 0.25s ease}.accordion-headline .accordion-item:last-child{border-bottom:none}.accordion-headline .accordion-header{padding:var(--hl-padding, 32px 0);font-size:var(--hl-title-size, 28px);font-weight:700;color:#111827;background:transparent;display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:24px;border-left:none !important;text-align:left}.accordion-headline .accordion-header:hover{background:transparent;color:var(--selected-header-color, #10b981)}.accordion-headline .accordion-header-content{flex:1;display:flex;flex-direction:row;align-items:flex-start;gap:16px}.accordion-headline .accordion-header-text{display:flex;flex-direction:column;gap:var(--hl-gap, 12px);flex:1;text-align:left}.accordion-headline .accordion-title{white-space:normal;font-size:var(--hl-title-size, 28px) !important;font-weight:700;line-height:1.2;text-align:left;color:#111827}.accordion-headline .accordion-subtitle{font-size:var(--hl-subtitle-size, 16px) !important;color:#4b5563;line-height:1.6;margin-top:4px;white-space:normal;max-width:90%;font-weight:400;text-align:left}.accordion-headline{}.accordion-headline .accordion-badge{background:#1f2937;color:white;width:22px;height:22px;min-width:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;order:2;margin-top:6px}.accordion-headline .accordion-arrow{font-size:calc(var(--hl-title-size, 28px) * 0.7);color:#111827;margin-top:6px;opacity:0.8}.accordion-headline .accordion-item-open .accordion-header{background:transparent;border-left:none;color:#111827}.accordion-headline .accordion-content{background:transparent}.accordion-headline .accordion-content-inner{padding:0 0 40px 0;font-size:var(--hl-subtitle-size, 16px);color:#4b5563;line-height:1.6;text-align:left}.accordion-arrow.arrow-start{margin-left:0;margin-right:12px;order:-1;}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.accordion-header:focus-visible{outline:2px solid #10b981;outline-offset:2px;z-index:10;}@media (max-width: 640px){.accordion-header{padding:12px 16px;font-size:14px}.accordion-content-inner{padding:12px 16px}.accordion-header-content{gap:8px}.accordion-badge{font-size:11px;padding:1px 6px}}.accordion-search{position:relative;padding:16px 20px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.accordion-search-input{width:100%;padding:10px 40px 10px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;transition:all 0.2s ease}.accordion-search-input:focus{border-color:#10b981;box-shadow:0 0 0 3px rgba(59, 130, 246, 0.1)}.accordion-search-clear{position:absolute;right:28px;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;cursor:pointer;font-size:18px;padding:4px 8px;border-radius:4px;transition:all 0.2s ease}.accordion-search-clear:hover{background-color:#e5e7eb;color:#374151}.search-highlight{background-color:#fef08a;color:#854d0e;padding:2px 4px;border-radius:2px;font-weight:600}.accordion-controls{display:flex;gap:8px;padding:12px 20px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb;flex-wrap:wrap}.accordion-control-button{padding:8px 16px;background-color:white;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all 0.2s ease;outline:none}.accordion-control-button:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.accordion-control-button:active:not(:disabled){background-color:#e5e7eb}.accordion-control-button:disabled{opacity:0.5;cursor:not-allowed}.accordion-control-button:focus{box-shadow:0 0 0 3px rgba(59, 130, 246, 0.1)}.accordion-header-text{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.accordion-subtitle{font-size:13px;color:#6b7280;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accordion-actions{display:flex;gap:4px;margin-left:8px}.accordion-action-button{padding:6px 10px;background-color:transparent;border:1px solid #d1d5db;border-radius:4px;font-size:14px;color:#374151;cursor:pointer;transition:all 0.2s ease;outline:none}.accordion-action-button:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.accordion-action-button:disabled{opacity:0.5;cursor:not-allowed}.accordion-action-button:focus{box-shadow:0 0 0 2px rgba(59, 130, 246, 0.2)}.accordion-loading-spinner{font-size:16px;animation:spin 1s linear infinite;margin-left:8px}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.accordion-item-loading{opacity:0.7}.accordion-item-dragging{opacity:0.5;cursor:grabbing;transform:scale(0.98)}.accordion-item-drag-over{border-top:3px solid #10b981;background-color:#eff6ff}@keyframes accordion-shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}.accordion-item-shaking{animation:accordion-shake 0.4s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;pointer-events:none}@keyframes accordion-success-pulse{0%{box-shadow:0 0 0 0 rgba(16, 185, 129, 0.4), 0 0 0 0 rgba(16, 185, 129, 0.2);background-color:rgba(16, 185, 129, 0.05)}50%{background-color:rgba(16, 185, 129, 0.1)}70%{box-shadow:0 0 0 15px rgba(16, 185, 129, 0), 0 0 0 30px rgba(16, 185, 129, 0)}100%{box-shadow:0 0 0 0 rgba(16, 185, 129, 0), 0 0 0 0 rgba(16, 185, 129, 0);background-color:transparent}}.accordion-item-success{border-color:#10b981 !important;animation:accordion-success-pulse 1s cubic-bezier(0.4, 0, 0.2, 1)}.accordion-item[draggable=true]{cursor:grab}.accordion-item[draggable=true]:active{cursor:grabbing}.accordion-nested-items{padding-left:0;background-color:transparent}.accordion-item-nested{margin-left:24px;position:relative;border-left:none;}.accordion-item-nested::before{content:"";position:absolute;left:-16px;top:0;bottom:0;width:2px;background:linear-gradient(180deg, var(--selected-header-color, #10b981) 0%, rgba(229, 231, 235, 0.4) 100%);opacity:0.6;transition:all 0.3s ease}.accordion-item-nested{}.accordion-item-nested::after{content:"";position:absolute;left:-16px;top:24px;width:14px;height:2px;background:var(--selected-header-color, #10b981);opacity:0.3;border-radius:0 2px 2px 0}.accordion-item-nested{}.accordion-item-nested .accordion-header::before{content:"";position:absolute;left:-18px;top:22px;width:6px;height:6px;background:var(--selected-header-color, #10b981);border-radius:50%;opacity:0.5;z-index:2}.accordion-item-nested .accordion-header{padding-left:16px;font-size:15px;background-color:rgba(0, 0, 0, 0.015);border-radius:0 8px 8px 0;margin-top:2px;margin-bottom:2px}.accordion-item-nested .accordion-header:hover{background-color:rgba(0, 0, 0, 0.03)}.accordion-item-nested .accordion-nested-items .accordion-header{background-color:rgba(0, 0, 0, 0.025);font-size:14px}.accordion-header-custom{padding:16px 20px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.accordion-no-results{padding:32px 20px;text-align:center;color:#6b7280;font-size:14px}.accordion-no-results p{margin:0}.accordion-rtl{direction:rtl}.accordion-rtl .accordion-header{text-align:right}.accordion-rtl .accordion-arrow{margin-left:0;margin-right:12px}.accordion-rtl .accordion-arrow.arrow-start{margin-right:0;margin-left:12px}.accordion-rtl .accordion-item-open .accordion-header{border-left:none;border-right:3px solid var(--selected-header-color, #10b981)}.accordion-rtl .accordion-actions{margin-left:0;margin-right:8px}.accordion-dense .accordion-header{padding:10px 16px;font-size:14px}.accordion-dense .accordion-content-inner{padding:10px 16px;font-size:13px}.accordion-dense .accordion-search{padding:12px 16px}.accordion-dense .accordion-controls{padding:8px 16px}.accordion-dense .accordion-indicators{padding:12px 16px}.accordion-dense .accordion-indicator{width:28px;height:28px;font-size:12px}.accordion-dense .accordion-subtitle{font-size:12px}@media print{.accordion-print-expand-all .accordion-content{max-height:none !important;opacity:1 !important;display:block !important}.accordion-print-expand-all .accordion-item{page-break-inside:avoid}.accordion-search,.accordion-controls,.accordion-indicators{display:none !important}.accordion-arrow,.accordion-actions{display:none !important}.accordion-header{cursor:default;pointer-events:none}}.accordion-control-button:focus-visible,.accordion-action-button:focus-visible,.accordion-indicator:focus-visible{outline:2px solid #10b981;outline-offset:2px;border-radius:4px}.accordion-item,.accordion-header,.accordion-content,.accordion-action-button,.accordion-control-button{transition:all 0.2s ease}@media (prefers-reduced-motion: reduce){.accordion-content,.accordion-arrow,.accordion-item,.accordion-header,.accordion-loading-spinner{transition:none;animation:none}}.accordion-item-skeleton{padding:16px 20px;background:#fff}.skeleton-box{background:#e5e7eb;border-radius:4px;animation:skeleton-pulse 1.5s infinite ease-in-out}@keyframes skeleton-pulse{0%{opacity:0.6}50%{opacity:1}100%{opacity:0.6}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;display:none}.accordion-status-badge{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;margin-left:12px;flex-shrink:0}.accordion-status-badge.status-completed{color:#10b981;background:rgba(16, 185, 129, 0.1)}.accordion-status-badge.status-error{color:#ef4444;background:rgba(239, 68, 68, 0.1)}.accordion-status-badge.status-warning{color:#f59e0b;background:rgba(245, 158, 11, 0.1)}.accordion-status-badge.status-current{color:#3b82f6;background:rgba(59, 130, 246, 0.1)}.pulse-dot{width:8px;height:8px;background-color:#3b82f6;border-radius:50%;box-shadow:0 0 0 0 rgba(59, 130, 246, 0.7);animation:status-pulse 1.5s infinite}@keyframes status-pulse{0%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(59, 130, 246, 0.7)}70%{transform:scale(1);box-shadow:0 0 0 6px rgba(59, 130, 246, 0)}100%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(59, 130, 246, 0)}}.accordion-theme-glass{background:rgba(255, 255, 255, 0.4) !important;backdrop-filter:blur(12px) !important;border:1px solid rgba(255, 255, 255, 0.3) !important;box-shadow:0 8px 32px 0 rgba(31, 38, 135, 0.07) !important}.accordion-theme-glass .accordion-item{background:transparent;border-bottom:1px solid rgba(255, 255, 255, 0.1)}.accordion-theme-glass .accordion-header:hover{background:rgba(255, 255, 255, 0.2)}.accordion-theme-radiant{background:#0f172a !important;border:1px solid #1e293b !important;color:#f8fafc}.accordion-theme-radiant .accordion-item{border-bottom:1px solid #1e293b;background:transparent}.accordion-theme-radiant .accordion-header{color:#e2e8f0}.accordion-theme-radiant .accordion-header:hover{color:#38bdf8}.accordion-theme-radiant .accordion-item-open .accordion-header{background:linear-gradient(90deg, rgba(56, 189, 248, 0.05) 0%, transparent 100%);color:#38bdf8;box-shadow:inset 2px 0 0 #38bdf8}.accordion-theme-radiant .accordion-subtitle{color:#94a3b8}@media (min-width: 1024px){.accordion-columns-2{display:grid !important;grid-template-columns:1fr 1fr;gap:16px;border:none !important;background:transparent !important}.accordion-columns-2 .accordion-item{border:1px solid #e5e7eb;border-radius:12px;margin-bottom:0 !important}}.accordion-item{perspective:1000px;transform-style:preserve-3d}.accordion-header{transform:translate3d(var(--parallax-x, 0), var(--parallax-y, 0), 0) rotateX(var(--rotate-x, 0)) rotateY(var(--rotate-y, 0));transition:transform 0.1s ease-out;will-change:transform}.accordion-header-indicators{display:flex;align-items:center;gap:12px}.accordion-actions{display:flex;align-items:center;gap:4px}.accordion-progress-ring{position:relative;width:36px;height:36px;display:flex;align-items:center;justify-content:center;margin-left:8px}.accordion-progress-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.accordion-progress-ring .ring-bg{stroke:#e5e7eb}.accordion-progress-ring .ring-fg{stroke:#3b82f6;stroke-linecap:round;transition:stroke-dasharray 0.5s ease}.accordion-progress-ring .progress-text{position:absolute;font-size:8px;font-weight:700;color:#1f2937;letter-spacing:-0.02em}.accordion-icon,.accordion-badge,.accordion-status-badge{transform:translateZ(20px)}.accordion-title{transform:translateZ(10px)}.accordion-header-sticky{position:sticky;top:0;z-index:50;background:inherit;box-shadow:0 4px 12px rgba(0, 0, 0, 0.03)}.accordion-header-sticky::after{content:"";position:absolute;bottom:-10px;left:0;right:0;height:10px;background:linear-gradient(to bottom, rgba(0, 0, 0, 0.02), transparent);pointer-events:none;opacity:1}.accordion-peek-snippet{display:block;font-size:13px;color:#94a3b8;font-style:italic;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90%;opacity:0.8;animation:peek-reveal 0.4s ease-out}@keyframes peek-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:0.8;transform:translateY(0)}}.accordion-bordered .accordion-header-sticky,.accordion-card .accordion-header-sticky{background:white;z-index:100}.accordion-theme-glass .accordion-header-sticky{background:rgba(255, 255, 255, 0.2);backdrop-filter:blur(12px)}.accordion-theme-radiant .accordion-header-sticky{background:#0f172a}.accordion-container{position:relative}.accordion-quick-actions{position:absolute;right:12px;top:50%;transform:translateY(-50%) translateX(10px);display:flex;gap:8px;opacity:0;pointer-events:none;transition:all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);background:rgba(255, 255, 255, 0.9);padding:4px 8px;border-radius:20px;border:1px solid #e2e8f0;box-shadow:0 4px 12px rgba(0, 0, 0, 0.1);z-index:20}.accordion-item:hover .accordion-quick-actions{opacity:1;transform:translateY(-50%) translateX(0);pointer-events:auto}.quick-action-btn{background:transparent;border:none;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#64748b;cursor:pointer;transition:all 0.2s ease}.quick-action-btn:hover{background:#f1f5f9;color:#3b82f6;transform:scale(1.1)}.accordion-search-heatmap{position:absolute;top:80px;bottom:0;right:-12px;width:4px;background:rgba(226, 232, 240, 0.5);border-radius:2px;pointer-events:none;z-index:50}.heatmap-marker{position:absolute;width:8px;height:8px;left:-2px;background:#3b82f6;border-radius:50%;box-shadow:0 0 8px rgba(59, 130, 246, 0.8);pointer-events:auto;cursor:pointer;transition:transform 0.2s ease}.heatmap-marker:hover{transform:scale(1.5);background:#2563eb}.accordion-theme-radiant .accordion-quick-actions{background:#1e293b;border-color:#334155;color:white}.accordion-theme-glass .accordion-quick-actions{background:rgba(255, 255, 255, 0.15);backdrop-filter:blur(8px);border-color:rgba(255, 255, 255, 0.3)}.accordion-lock-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(15, 23, 42, 0.95);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:500;border-radius:inherit;backdrop-filter:blur(8px);animation:lock-fade-in 0.3s ease-out}.accordion-lock-overlay .lock-grid{display:grid;grid-template-columns:repeat(3, 40px);gap:20px;margin-bottom:24px}.accordion-lock-overlay .lock-dot{width:16px;height:16px;background:rgba(255, 255, 255, 0.2);border-radius:50%;cursor:pointer;transition:all 0.2s ease;box-shadow:0 0 10px rgba(0, 0, 0, 0.5)}.accordion-lock-overlay .lock-dot.active{background:#38bdf8;box-shadow:0 0 15px #38bdf8;transform:scale(1.3)}.accordion-lock-overlay .lock-hint{color:#94a3b8;font-size:14px;font-weight:600;margin-bottom:16px;text-transform:uppercase;letter-spacing:0.1em}.accordion-lock-overlay .lock-cancel{background:transparent;border:1px solid #334155;color:#94a3b8;padding:6px 16px;border-radius:6px;cursor:pointer;transition:all 0.2s ease}.accordion-lock-overlay .lock-cancel:hover{border-color:#ef4444;color:#ef4444}@keyframes lock-fade-in{from{opacity:0;background:rgba(0, 0, 0, 0)}to{opacity:1;background:rgba(15, 23, 42, 0.95)}}.accordion-header-sparkline{opacity:0.7;color:#3b82f6;margin-left:8px}.accordion-header-sparkline polyline{stroke-dasharray:100;stroke-dashoffset:100;animation:spark-draw 1.5s ease-out forwards}@keyframes spark-draw{to{stroke-dashoffset:0}}.accordion-theme-radiant .accordion-header-sparkline{color:#38bdf8}.accordion-theme-glass .accordion-header-sparkline{color:#8b5cf6}.accordion-breadcrumbs{font-size:10px;text-transform:uppercase;letter-spacing:0.05em;color:#94a3b8;margin-bottom:4px;opacity:0.6;font-weight:700}.breadcrumb-node{transition:color 0.2s ease}.breadcrumb-node:hover{color:#3b82f6}@media print{.accordion-print-expand-all .accordion-content{display:block !important;max-height:none !important;opacity:1 !important;visibility:visible !important;overflow:visible !important;border-top:1px solid #e2e8f0}.accordion-print-expand-all .accordion-item{margin-bottom:20px !important;break-inside:avoid;border:1px solid #e2e8f0 !important;box-shadow:none !important;background:white !important}.accordion-print-expand-all{}.accordion-print-expand-all .accordion-arrow,.accordion-print-expand-all .accordion-search,.accordion-print-expand-all .accordion-controls,.accordion-print-expand-all .accordion-quick-actions,.accordion-print-expand-all .accordion-lock-overlay,.accordion-print-expand-all .accordion-search-heatmap,.accordion-print-expand-all .accordion-action-button{display:none !important}.accordion-print-expand-all .accordion-header{background:#f8fafc !important;color:black !important;padding:12px !important}.accordion-print-expand-all .accordion-header-sparkline{display:inline-block !important;opacity:1 !important}}@media print{.accordion-theme-radiant.accordion-print-expand-all,.accordion-theme-glass.accordion-print-expand-all{background:white !important;color:black !important}.accordion-theme-radiant.accordion-print-expand-all .accordion-header,.accordion-theme-glass.accordion-print-expand-all .accordion-header{color:black !important;background:#f1f5f9 !important}.accordion-theme-radiant.accordion-print-expand-all .accordion-title,.accordion-theme-glass.accordion-print-expand-all .accordion-title{color:black !important}}.accordion-portal-reader{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background:white;display:flex;flex-direction:column;animation:portal-glide-up 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);padding:40px;overflow-y:auto}.accordion-portal-reader .portal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8f0;padding-bottom:24px;margin-bottom:40px}.accordion-portal-reader .portal-header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.accordion-portal-reader .portal-title{font-size:32px;font-weight:800;letter-spacing:-0.02em;color:#0f172a}.accordion-portal-reader .portal-close-toggle::part(button){min-width:148px;padding:0.8rem 1rem;border-radius:999px;border:1px solid #cbd5e1;background:linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);color:#0f172a;box-shadow:0 10px 24px rgba(15, 23, 42, 0.08);font-weight:700}.accordion-portal-reader .portal-close{background:#f1f5f9;border:none;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s ease}.accordion-portal-reader .portal-close:hover{background:#ef4444;color:white;transform:rotate(90deg)}.accordion-portal-reader .portal-content{max-width:800px;margin:0 auto;width:100%}.accordion-portal-reader .portal-meta{text-transform:uppercase;font-size:12px;letter-spacing:0.1em;color:#64748b;font-weight:700;margin-bottom:24px}.accordion-portal-reader .portal-body{font-size:18px;line-height:1.8;color:#334155}.accordion-portal-reader .portal-body p{margin-bottom:1.5em}.accordion-collaborators{display:flex;margin-right:12px}.accordion-collaborators .presence-avatar{width:24px;height:24px;border-radius:50%;border:2px solid white;margin-left:-8px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:white;box-shadow:0 0 10px rgba(0, 0, 0, 0.1);transition:transform 0.2s ease;cursor:pointer}.accordion-collaborators .presence-avatar:first-child{margin-left:0}.accordion-collaborators .presence-avatar:hover{transform:translateY(-4px) scale(1.1);z-index:10}.accordion-collaborators .presence-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.accordion-ai-briefing{position:absolute;top:100%;left:0;width:280px;background:white;border:1px solid #e2e8f0;border-radius:12px;padding:16px;box-shadow:0 10px 25px rgba(0, 0, 0, 0.1);z-index:100;opacity:0;pointer-events:none;transform:translateY(10px);transition:all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1)}.accordion-ai-briefing .briefing-list{margin:0;padding:0 0 0 16px;font-size:13px;line-height:1.6;color:#475569}.accordion-ai-briefing .briefing-list li{margin-bottom:8px}.accordion-title:hover+.accordion-ai-briefing{opacity:1;transform:translateY(0)}@keyframes portal-glide-up{from{transform:translateY(100vh);opacity:0}to{transform:translateY(0);opacity:1}}.accordion-theme-radiant .accordion-portal-reader{background:#0f172a}.accordion-theme-radiant .accordion-portal-reader .portal-title,.accordion-theme-radiant .accordion-portal-reader .portal-body{color:white}.accordion-theme-radiant .accordion-portal-reader .portal-header{border-color:#1e293b}.accordion-theme-radiant .accordion-portal-reader .portal-close{background:#1e293b;color:white}.accordion-theme-radiant .accordion-portal-reader .portal-close-toggle::part(button){background:linear-gradient(180deg, #1e293b 0%, #0f172a 100%);border-color:#334155;color:#e2e8f0;box-shadow:0 12px 30px rgba(2, 6, 23, 0.45)}.accordion-theme-radiant .accordion-ai-briefing{background:#1e293b;border-color:#334155;color:white}.accordion-theme-radiant .accordion-ai-briefing .briefing-list{color:#cbd5e1}.accordion-streaming-terminal{background:#020617;border-radius:8px;border:1px solid #1e293b;margin-bottom:20px;overflow:hidden;box-shadow:inset 0 0 20px rgba(0, 0, 0, 0.5)}.accordion-streaming-terminal .terminal-header{background:#1e293b;padding:6px 16px;font-size:10px;font-weight:800;color:#94a3b8;letter-spacing:0.1em}.accordion-streaming-terminal .terminal-body{height:180px;overflow-y:auto;padding:12px;font-family:"JetBrains Mono", "Fira Code", monospace;font-size:11px;line-height:1.5;scroll-behavior:smooth}.accordion-streaming-terminal .terminal-line{display:flex;gap:12px;margin-bottom:4px;border-left:2px solid transparent;transition:all 0.2s ease}.accordion-streaming-terminal .terminal-line:hover{background:rgba(255, 255, 255, 0.05);border-left-color:#3b82f6}.accordion-streaming-terminal .line-timestamp{color:#64748b;white-space:nowrap}.accordion-streaming-terminal .line-msg{color:#cbd5e1;word-break:break-all}.quick-action-btn.voice-btn.active{background:#ef4444 !important;color:white !important;animation:voice-pulse 1.5s infinite ease-in-out;box-shadow:0 0 15px #ef4444}@keyframes voice-pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:0.7}100%{transform:scale(1);opacity:1}}.accordion-teleport-link{background:rgba(59, 130, 246, 0.1);border:1px solid rgba(59, 130, 246, 0.2);color:#3b82f6;font-size:9px;font-weight:800;padding:2px 6px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;margin-left:8px;transition:all 0.2s ease}.accordion-teleport-link:hover{background:#3b82f6;color:white}.accordion-item{transition:transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.6s ease;transform-origin:top center}.accordion-container.accordion-boxed{border:none;background:transparent;display:flex;flex-direction:column;gap:12px;overflow:visible}.accordion-container.accordion-boxed .accordion-item{border:1px solid rgba(255, 255, 255, 0.08);border-radius:20px;background:#252627;box-shadow:0 4px 20px rgba(0, 0, 0, 0.2);transition:all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);margin-bottom:0;overflow:hidden}.accordion-container.accordion-boxed .accordion-item:hover:not(.accordion-item-disabled){box-shadow:0 8px 30px rgba(0, 0, 0, 0.3);transform:translateY(-2px);border-color:rgba(255, 255, 255, 0.15)}.accordion-container.accordion-boxed .accordion-item-open{border-color:rgba(235, 255, 0, 0.4);box-shadow:0 12px 40px rgba(0, 0, 0, 0.4)}.accordion-container.accordion-boxed .accordion-header{background:transparent;padding:20px 24px;color:#ffffff}.accordion-container.accordion-boxed .accordion-header::part(button){padding:20px 24px !important}.accordion-container.accordion-boxed .accordion-title{color:#ffffff;font-size:18px;font-weight:700}.accordion-container.accordion-boxed .accordion-subtitle{color:#a0a5ad}.accordion-container.accordion-boxed .accordion-arrow-wrapper{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background-color:#ebff00;color:#121314;box-shadow:0 0 10px rgba(235, 255, 0, 0.3);transition:all 0.3s ease;flex-shrink:0}.accordion-container.accordion-boxed .accordion-arrow-wrapper .accordion-arrow{color:#121314;opacity:1;font-weight:800;transition:transform 0.3s ease}.accordion-container.accordion-boxed .accordion-item:hover .accordion-arrow-wrapper{transform:scale(1.1);box-shadow:0 0 15px rgba(235, 255, 0, 0.6)}.accordion-container.accordion-boxed .accordion-content{background:#1e1f20;border-top:1px solid rgba(255, 255, 255, 0.05)}.accordion-container.accordion-boxed .accordion-content-inner{color:#e2e8f0;padding:20px 24px;font-size:15px;line-height:1.7}.accordion-container.accordion-minimal{border:none;background:transparent}.accordion-container.accordion-minimal .accordion-item{border-bottom:1px solid rgba(0, 0, 0, 0.06);background:transparent;border-radius:0;box-shadow:none;margin-bottom:0}.accordion-container.accordion-minimal .accordion-item:last-child{border-bottom:none}.accordion-container.accordion-minimal .accordion-header{padding:20px 0;background:transparent;color:#1e293b}.accordion-container.accordion-minimal .accordion-header:hover{color:var(--selected-header-color, #10b981)}.accordion-container.accordion-minimal .accordion-title{color:inherit;font-size:16px;font-weight:600;transition:color 0.2s ease}.accordion-container.accordion-minimal .accordion-subtitle{color:#64748b;margin-top:4px}.accordion-container.accordion-minimal .accordion-arrow{color:#64748b;opacity:0.7;font-size:14px}.accordion-container.accordion-minimal .accordion-item-open .accordion-header{background-color:transparent !important;color:var(--selected-header-color, #10b981)}.accordion-container.accordion-minimal .accordion-content{background:transparent}.accordion-container.accordion-minimal .accordion-content-inner{padding:0 0 20px 0;color:#475569;font-size:14px;line-height:1.6}.accordion-container.accordion-left-toggle{border:none;background:transparent;display:flex;flex-direction:column;gap:8px}.accordion-container.accordion-left-toggle .accordion-item{border-bottom:1px solid rgba(0, 0, 0, 0.06);background:transparent;border-radius:0;box-shadow:none;margin-bottom:0}.accordion-container.accordion-left-toggle .accordion-item:last-child{border-bottom:none}.accordion-container.accordion-left-toggle .accordion-header{padding:16px 0;background:transparent;color:#0f172a}.accordion-container.accordion-left-toggle .accordion-title{color:#0f172a;font-size:16px;font-weight:600}.accordion-container.accordion-left-toggle .accordion-subtitle{color:#64748b}.accordion-container.accordion-left-toggle .accordion-arrow-wrapper{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background-color:#0f172a;color:#ffffff;transition:all 0.2s ease;margin-right:12px;flex-shrink:0;order:-1}.accordion-container.accordion-left-toggle .accordion-arrow-wrapper .accordion-arrow{color:#ffffff;opacity:1;font-size:11px}.accordion-container.accordion-left-toggle .accordion-item:hover .accordion-arrow-wrapper{background-color:var(--selected-header-color, #10b981);transform:scale(1.08)}.accordion-container.accordion-left-toggle .accordion-item-open .accordion-arrow-wrapper{background-color:#0f172a}.accordion-container.accordion-left-toggle .accordion-content{background:transparent}.accordion-container.accordion-left-toggle .accordion-content-inner{padding:8px 0 20px 40px;color:#475569;font-size:14px;line-height:1.6}.accordion-container.accordion-iconic{border:none;background:transparent;display:flex;flex-direction:column;gap:16px}.accordion-container.accordion-iconic .accordion-item{border:1px solid #f1f5f9;border-radius:16px;background:#ffffff;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);transition:all 0.25s ease;overflow:hidden}.accordion-container.accordion-iconic .accordion-item:hover:not(.accordion-item-disabled){box-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.05);border-color:#e2e8f0}.accordion-container.accordion-iconic .accordion-header{padding:20px 24px;background:transparent}.accordion-container.accordion-iconic .accordion-title{font-size:16px;font-weight:700;color:#1e293b}.accordion-container.accordion-iconic .accordion-subtitle{color:#64748b;font-size:13px}.accordion-container.accordion-iconic .accordion-icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;font-size:22px;margin-right:16px;flex-shrink:0;transition:transform 0.2s ease;background-color:rgba(99, 102, 241, 0.1);color:#6366f1}.accordion-container.accordion-iconic .accordion-item:hover .accordion-icon{transform:scale(1.05)}.accordion-container.accordion-iconic .accordion-arrow-wrapper{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background-color:#f8fafc;border:1px solid #e2e8f0;color:#64748b;transition:all 0.2s ease;flex-shrink:0}.accordion-container.accordion-iconic .accordion-arrow-wrapper .accordion-arrow{color:#64748b;opacity:0.8;font-size:11px}.accordion-container.accordion-iconic .accordion-item:hover .accordion-arrow-wrapper{background-color:#6366f1;border-color:#6366f1;color:#ffffff}.accordion-container.accordion-iconic .accordion-item:hover .accordion-arrow-wrapper .accordion-arrow{color:#ffffff;opacity:1}.accordion-container.accordion-iconic .accordion-content{background:#f8fafc;border-top:1px solid #f1f5f9}.accordion-container.accordion-iconic .accordion-content-inner{padding:24px;color:#334155;font-size:14px;line-height:1.6}.accordion-container.accordion-iconic .accordion-item:nth-child(1) .accordion-icon{background-color:rgba(99, 102, 241, 0.1);color:#6366f1}.accordion-container.accordion-iconic .accordion-item:nth-child(2) .accordion-icon{background-color:rgba(239, 68, 68, 0.1);color:#ef4444}.accordion-container.accordion-iconic .accordion-item:nth-child(3) .accordion-icon{background-color:rgba(16, 185, 129, 0.1);color:#10b981}.accordion-container.accordion-iconic .accordion-item:nth-child(4) .accordion-icon{background-color:rgba(59, 130, 246, 0.1);color:#3b82f6}`;
|
|
9
9
|
|
|
10
10
|
const Accordion = class {
|
|
11
11
|
constructor(hostRef) {
|
|
@@ -85,11 +85,19 @@ const Accordion = class {
|
|
|
85
85
|
*/
|
|
86
86
|
selectionPosition = 'left';
|
|
87
87
|
/**
|
|
88
|
-
* Accordion variant: 'default' | 'bordered' | 'splitted' | 'light' | 'shadow' | 'card' | 'card-list' | 'headline'
|
|
88
|
+
* Accordion variant: 'default' | 'bordered' | 'splitted' | 'light' | 'shadow' | 'card' | 'card-list' | 'headline' | 'boxed' | 'minimal' | 'left-toggle' | 'iconic'
|
|
89
89
|
* Use 'card' or 'card-list' for a separated card layout with icon pills and a right-chevron.
|
|
90
90
|
* Use 'headline' for a minimalist, high-impact typography-first layout.
|
|
91
|
+
* Use 'boxed' for dark individual cards with glowing yellow action badges.
|
|
92
|
+
* Use 'minimal' for border-bottom separators and clean typography.
|
|
93
|
+
* Use 'left-toggle' for a left plus-minus toggle structure.
|
|
94
|
+
* Use 'iconic' for custom left status/brand icons with micro plus-minus toggles.
|
|
91
95
|
*/
|
|
92
96
|
variant = 'default';
|
|
97
|
+
/**
|
|
98
|
+
* Toggle icon style: 'chevron' | 'plus-minus'
|
|
99
|
+
*/
|
|
100
|
+
toggleStyle = 'chevron';
|
|
93
101
|
/**
|
|
94
102
|
* Size of the accordion: 'sm' | 'md' | 'lg'
|
|
95
103
|
*/
|
|
@@ -1099,14 +1107,18 @@ const Accordion = class {
|
|
|
1099
1107
|
if (el)
|
|
1100
1108
|
this.itemRefs.set(item.id, el);
|
|
1101
1109
|
} }, item.headerSlot ? (index.h("div", { class: "accordion-header-custom", role: "heading", "aria-level": currentHeaderLevel }, index.h("slot", { name: item.headerSlot }))) : (index.h(HeaderTag, { style: { margin: 0, padding: 0 } }, index.h("ui-button", { variant: "accordion", class: headerClasses, onClick: (e) => this.toggleItem(item.id, e), disabled: isDisabled, fullWidth: true, "icon-position": "none", align: "start", justify: "between", noRipple: true, "aria-expanded": isOpen ? 'true' : 'false', "aria-controls": `accordion-content-${item.id}`, ariaLabel: `${isOpen ? 'Close' : 'Open'} ${item.title}`, tabindex: isDisabled ? -1 : 0 }, index.h("div", { class: "accordion-header-content" }, index.h("div", { class: "accordion-header-left" }, this.iconPosition === 'start' && !this.hideArrow && (() => {
|
|
1102
|
-
const arrowName =
|
|
1110
|
+
const arrowName = this.toggleStyle === 'plus-minus'
|
|
1111
|
+
? (isOpen ? 'minus' : 'plus')
|
|
1112
|
+
: (isOpen ? this.arrowIconExpanded : this.arrowIconCollapsed);
|
|
1103
1113
|
const arrowLib = this.iconLibrary;
|
|
1104
|
-
return (index.h("ui-icon", { name: arrowName, library: arrowLib, size: "1.2em", class: "accordion-arrow arrow-start" }));
|
|
1114
|
+
return (index.h("div", { class: "accordion-arrow-wrapper" }, index.h("ui-icon", { name: arrowName, library: arrowLib, size: "1.2em", class: "accordion-arrow arrow-start" })));
|
|
1105
1115
|
})(), item.image && (index.h("img", { src: item.image, alt: "", class: "accordion-image" })), item.icon && (index.h("span", { class: "accordion-icon" }, index.h("ui-icon", { name: item.icon, library: item.iconLibrary || this.iconLibrary, size: "1.2em" }))), index.h("div", { class: "accordion-header-text" }, this.showBreadcrumbs && parentTitles.length > 0 && (index.h("div", { class: "accordion-breadcrumbs" }, parentTitles.map((p, i) => (index.h("span", { class: "breadcrumb-node" }, p, " ", i < parentTitles.length - 1 ? ' > ' : ''))))), index.h("div", { class: "accordion-title-group" }, index.h("div", { class: "accordion-title", innerHTML: security.sanitizeHTML(this.enableSearch ? this.highlightSearchText(item.title) : item.title) }), item.subtitle && (index.h("div", { class: "accordion-subtitle", innerHTML: security.sanitizeHTML(this.enableSearch ? this.highlightSearchText(item.subtitle) : item.subtitle) })), this.renderSparkline(item.sparkline ?? []), this.renderAIBriefing(item), this.renderTeleportLink(item)), item.peek && !isOpen && !this.searchQuery && (index.h("span", { class: "accordion-peek-snippet", innerHTML: security.sanitizeHTML(item.peek) })))), index.h("div", { class: "accordion-header-right" }, index.h("div", { class: "accordion-header-indicators" }, this.renderPresence(item), this.renderQuickActions(item), item.progress !== undefined && item.progress >= 0 && (index.h("div", { class: "accordion-progress-ring" }, index.h("svg", { viewBox: "0 0 36 36" }, index.h("circle", { cx: "18", cy: "18", r: "16", fill: "none", class: "ring-bg", "stroke-width": "3" }), index.h("circle", { cx: "18", cy: "18", r: "16", fill: "none", class: "ring-fg", "stroke-width": "3", style: { strokeDasharray: `${item.progress}, 100` } })), index.h("span", { class: "progress-text" }, item.progress, "%"))), item.status && item.status !== 'none' && (index.h("div", { class: `accordion-status-badge status-${item.status}` }, item.status === 'completed' && index.h("ui-icon", { name: "check", library: this.iconLibrary, size: "14px" }), item.status === 'error' && index.h("ui-icon", { name: "alert-circle", library: this.iconLibrary, size: "14px" }), item.status === 'warning' && index.h("ui-icon", { name: "alert-triangle", library: this.iconLibrary, size: "14px" }), item.status === 'current' && index.h("div", { class: "pulse-dot" })))), item.badge !== undefined && item.badge > 0 && (index.h("span", { class: "accordion-badge" }, item.badge)), item.actions && item.actions.length > 0 && (index.h("div", { class: "accordion-actions" }, item.actions.map(action => (index.h("ui-button", { key: action.id, variant: action.variant || 'ghost', size: "xs", iconOnly: !!action.icon, icon: action.icon, iconLibrary: action.iconLibrary || item.iconLibrary || this.iconLibrary, iconSize: "1.1em", label: action.icon ? undefined : action.label, ariaLabel: action.ariaLabel || action.label, disabled: action.disabled, onClick: (e) => this.handleActionClick(item.id, action.id, action, e) }))))), item.loading && (index.h("ui-loader", { size: "xs", color: "currentColor", class: "accordion-loading-spinner" })), this.iconPosition === 'end' && !this.hideArrow && (() => {
|
|
1106
1116
|
// const isCardList = this.variant === 'card-list' || this.variant === 'card';
|
|
1107
|
-
const arrowName =
|
|
1117
|
+
const arrowName = this.toggleStyle === 'plus-minus'
|
|
1118
|
+
? (isOpen ? 'minus' : 'plus')
|
|
1119
|
+
: (isOpen ? this.arrowIconExpanded : this.arrowIconCollapsed);
|
|
1108
1120
|
const arrowLib = this.iconLibrary;
|
|
1109
|
-
return (index.h("ui-icon", { name: arrowName, library: arrowLib, size: "1.2em", class: "accordion-arrow" }));
|
|
1121
|
+
return (index.h("div", { class: "accordion-arrow-wrapper" }, index.h("ui-icon", { name: arrowName, library: arrowLib, size: "1.2em", class: "accordion-arrow" })));
|
|
1110
1122
|
})()))))), (() => {
|
|
1111
1123
|
// God-tier Lazy Logic:
|
|
1112
1124
|
// 1. If not lazy, always render.
|
|
@@ -1827,7 +1839,7 @@ const Avatar = class {
|
|
|
1827
1839
|
};
|
|
1828
1840
|
Avatar.style = avatarCss();
|
|
1829
1841
|
|
|
1830
|
-
const badgeCss = () => `.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}.badge-wrapper{position:relative;display:inline-block}.badge{position:absolute;display:flex;align-items:center;justify-content:center;width:fit-content;border-radius:9999px;font-weight:600}.badge.badge-single:not(.badge-shape-square){border-radius:50%;padding:0 !important;min-width:var(--badge-height);aspect-ratio:1/1}.badge.badge-pill{white-space:nowrap;border-radius:9999px}.badge{font-family:inherit;line-height:1;z-index:1;box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);transition:transform 0.2s ease, opacity 0.2s ease;pointer-events:none;}.badge-sm{--badge-height:16px;min-width:14px;height:16px;padding:0 3px;font-size:10px}.badge-md{--badge-height:20px;min-width:18px;height:20px;padding:0 4px;font-size:11px}.badge-lg{--badge-height:24px;min-width:22px;height:24px;padding:0 5px;font-size:13px}.badge-dot{min-width:8px !important;width:8px;height:8px;padding:0 !important;border-radius:50%}.badge-dot.badge-sm{width:6px;height:6px}.badge-dot.badge-lg{width:10px;height:10px}.badge-top-right{top:0;inset-inline-end:0;transform:translate(40%, -40%)}[dir=rtl] .badge-top-right{transform:translate(-40%, -40%)}.badge-top-left{top:0;inset-inline-start:0;transform:translate(-40%, -40%)}[dir=rtl] .badge-top-left{transform:translate(40%, -40%)}.badge-bottom-right{bottom:0;inset-inline-end:0;transform:translate(40%, 40%)}[dir=rtl] .badge-bottom-right{transform:translate(-40%, 40%)}.badge-bottom-left{bottom:0;inset-inline-start:0;transform:translate(-40%, 40%)}[dir=rtl] .badge-bottom-left{transform:translate(40%, 40%)}.badge-inline{position:static !important;transform:none !important;vertical-align:middle;flex-shrink:0}.badge-pulse::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:inherit;box-shadow:0 0 0 0 currentColor;animation:badge-pulse 1.5s infinite ease-in-out;opacity:1}@keyframes badge-pulse{0%{transform:scale(1);box-shadow:0 0 0 0 currentColor;opacity:0.7}100%{transform:scale(2);box-shadow:0 0 0 10px transparent;opacity:0}}.badge-standard.badge-primary{background-color:var(--color-primary, #10b981);color:var(--text-standard, #ffffff)}.badge-standard.badge-secondary{background-color:var(--text-muted, #6b7280);color:var(--text-standard, #ffffff)}.badge-standard.badge-success{background-color:var(--color-success, #10b981);color:var(--text-standard, #ffffff)}.badge-standard.badge-danger{background-color:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff)}.badge-standard.badge-warning{background-color:var(--color-warning, #f59e0b);color:var(--text-standard, #ffffff)}.badge-standard.badge-info{background-color:var(--color-info, #06b6d4);color:var(--text-standard, #ffffff)}.badge-outlined{background-color:var(--bg-primary, var(--text-standard, #ffffff))}.badge-outlined.badge-primary{color:var(--color-primary, #10b981);border:2px solid var(--color-primary, #10b981)}.badge-outlined.badge-secondary{color:var(--text-muted, #6b7280);border:2px solid var(--color-primary, #6b7280)}.badge-outlined.badge-success{color:var(--color-success, #10b981);border:2px solid var(--color-success, #10b981)}.badge-outlined.badge-danger{color:var(--color-danger, #ef4444);border:2px solid var(--color-danger, #ef4444)}.badge-outlined.badge-warning{color:var(--color-warning, #f59e0b);border:2px solid var(--color-warning, #f59e0b)}.badge-outlined.badge-info{color:var(--color-info, #06b6d4);border:2px solid var(--color-info, #06b6d4)}.badge-icon{display:inline-flex;align-items:center;justify-content:center;font-size:0.9em;margin:0 2px}.badge-interactive{pointer-events:auto;cursor:pointer;transition:transform 0.2s ease, box-shadow 0.2s ease}.badge-interactive:hover{transform:scale(1.1);box-shadow:0 4px 8px rgba(0, 0, 0, 0.2)}.badge-interactive:active{transform:scale(0.95)}.badge.badge-closable{pointer-events:auto !important;border-radius:6px !important;padding-left:10px !important;padding-right:10px !important}.badge-close{background:none;border:none;color:inherit;cursor:pointer;padding:0 0 0 4px;margin-left:4px;font-size:0.9em;opacity:0.8;transition:opacity 0.2s ease;line-height:1;pointer-events:auto;position:relative;z-index:2}.badge-close:hover{opacity:1}.badge-bordered{background-color:var(--bg-primary, var(--text-standard, #ffffff));border:2px solid currentColor}.badge-bordered.badge-primary{color:var(--color-primary, #10b981);border-color:var(--color-primary, #10b981)}.badge-bordered.badge-secondary{color:var(--text-muted, #6b7280);border-color:var(--color-primary, #6b7280)}.badge-bordered.badge-success{color:var(--color-success, #10b981);border-color:var(--color-success, #10b981)}.badge-bordered.badge-danger{color:var(--color-danger, #ef4444);border-color:var(--color-danger, #ef4444)}.badge-bordered.badge-warning{color:var(--color-warning, #f59e0b);border-color:var(--color-warning, #f59e0b)}.badge-bordered.badge-info{color:var(--color-info, #06b6d4);border-color:var(--color-info, #06b6d4)}.badge-soft.badge-primary{background-color:var(--bg-primary, #eff6ff);color:var(--color-primary, #10b981)}.badge-soft.badge-secondary{background-color:var(--bg-secondary, #f3f4f6);color:var(--text-muted, #6b7280)}.badge-soft.badge-success{background-color:var(--bg-primary, #d1fae5);color:var(--color-success, #10b981)}.badge-soft.badge-danger{background-color:var(--bg-primary, #fee2e2);color:var(--color-danger, #ef4444)}.badge-soft.badge-warning{background-color:var(--bg-primary, #fef3c7);color:var(--color-warning, #f59e0b)}.badge-soft.badge-info{background-color:var(--bg-primary, #cffafe);color:var(--color-info, #06b6d4)}.badge-gradient-blue-purple{background:linear-gradient(135deg, var(--color-primary, #10b981) 0%, var(--color-primary, #8b5cf6) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-green-teal{background:linear-gradient(135deg, var(--color-success, #10b981) 0%, var(--color-info, #06b6d4) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-orange-red{background:linear-gradient(135deg, var(--color-warning, #f59e0b) 0%, var(--color-danger, #ef4444) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-pink-purple{background:linear-gradient(135deg, var(--color-danger, #ec4899) 0%, var(--color-primary, #8b5cf6) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-blue-green{background:linear-gradient(135deg, var(--color-primary, #10b981) 0%, var(--color-success, #10b981) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-purple-pink{background:linear-gradient(135deg, var(--color-primary, #8b5cf6) 0%, var(--color-danger, #ec4899) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-teal-blue{background:linear-gradient(135deg, var(--color-info, #06b6d4) 0%, var(--color-primary, #10b981) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-yellow-orange{background:linear-gradient(135deg, var(--color-danger, #fbbf24) 0%, var(--color-warning, #f59e0b) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-red-pink{background:linear-gradient(135deg, var(--color-danger, #ef4444) 0%, var(--color-danger, #ec4899) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-indigo-purple{background:linear-gradient(135deg, var(--color-primary, #6366f1) 0%, var(--color-primary, #8b5cf6) 100%);color:var(--text-standard, #ffffff);border:none}.badge-glow{box-shadow:0 0 10px currentColor, 0 0 20px currentColor;animation:badge-glow-pulse 2s ease-in-out infinite}@keyframes badge-glow-pulse{0%,100%{box-shadow:0 0 10px currentColor, 0 0 20px currentColor}50%{box-shadow:0 0 15px currentColor, 0 0 30px currentColor}}.badge-bounce{animation:badge-bounce 1s ease-in-out infinite}@keyframes badge-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}.badge-shake{animation:badge-shake 0.5s ease-in-out infinite}@keyframes badge-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}.badge-pulse{animation:badge-pulse-scale 1.5s ease-in-out infinite}.badge-pulse::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:inherit;box-shadow:0 0 0 0 currentColor;animation:badge-pulse-ring 1.5s infinite ease-in-out;opacity:1}@keyframes badge-pulse-scale{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes badge-pulse-ring{0%{transform:scale(1);box-shadow:0 0 0 0 currentColor;opacity:0.7}100%{transform:scale(2);box-shadow:0 0 0 10px transparent;opacity:0}}.badge:focus-visible{outline:2px solid var(--color-primary, #10b981);outline-offset:2px}@media (prefers-reduced-motion: reduce){.badge-bounce,.badge-shake,.badge-pulse,.badge-glow,.badge-interactive{animation:none}.badge-pulse::after{animation:none}}.badge-shape-circle{border-radius:50%;min-width:auto;width:var(--badge-size, 20px);height:var(--badge-size, 20px);padding:0 !important;display:flex;align-items:center;justify-content:center}.badge-shape-circle.badge-sm{--badge-size:16px;font-size:9px}.badge-shape-circle.badge-md{--badge-size:20px;font-size:11px}.badge-shape-circle.badge-lg{--badge-size:24px;font-size:13px}.badge-shape-square{border-radius:4px;min-width:auto;width:var(--badge-size, 20px);height:var(--badge-size, 20px);padding:0 !important;display:flex;align-items:center;justify-content:center}.badge-shape-square.badge-sm{--badge-size:16px;font-size:9px}.badge-shape-square.badge-md{--badge-size:20px;font-size:11px}.badge-shape-square.badge-lg{--badge-size:24px;font-size:13px}`;
|
|
1842
|
+
const badgeCss = () => `.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}.badge-wrapper{position:relative;display:inline-block}.badge{position:absolute;display:flex;align-items:center;justify-content:center;width:fit-content;border-radius:9999px;font-weight:600;border:var(--badge-border, none)}.badge.badge-single:not(.badge-shape-square){border-radius:50%;padding:0 !important;min-width:var(--badge-height);aspect-ratio:1/1}.badge.badge-pill{white-space:nowrap;border-radius:9999px}.badge{font-family:inherit;line-height:1;z-index:1;box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);transition:transform 0.2s ease, opacity 0.2s ease;pointer-events:none;}.badge-sm{--badge-height:16px;min-width:14px;height:16px;padding:0 3px;font-size:10px}.badge-md{--badge-height:20px;min-width:18px;height:20px;padding:0 4px;font-size:11px}.badge-lg{--badge-height:24px;min-width:22px;height:24px;padding:0 5px;font-size:13px}.badge-dot{min-width:8px !important;width:8px;height:8px;padding:0 !important;border-radius:50%}.badge-dot.badge-sm{width:6px;height:6px}.badge-dot.badge-lg{width:10px;height:10px}.badge-top-right{top:0;inset-inline-end:0;transform:translate(40%, -40%)}[dir=rtl] .badge-top-right{transform:translate(-40%, -40%)}.badge-top-left{top:0;inset-inline-start:0;transform:translate(-40%, -40%)}[dir=rtl] .badge-top-left{transform:translate(40%, -40%)}.badge-bottom-right{bottom:0;inset-inline-end:0;transform:translate(40%, 40%)}[dir=rtl] .badge-bottom-right{transform:translate(-40%, 40%)}.badge-bottom-left{bottom:0;inset-inline-start:0;transform:translate(-40%, 40%)}[dir=rtl] .badge-bottom-left{transform:translate(40%, 40%)}.badge-inline{position:static !important;transform:none !important;vertical-align:middle;flex-shrink:0}.badge-pulse::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:inherit;box-shadow:0 0 0 0 currentColor;animation:badge-pulse 1.5s infinite ease-in-out;opacity:1}@keyframes badge-pulse{0%{transform:scale(1);box-shadow:0 0 0 0 currentColor;opacity:0.7}100%{transform:scale(2);box-shadow:0 0 0 10px transparent;opacity:0}}.badge-standard.badge-primary{background-color:var(--color-primary, #10b981);color:var(--text-standard, #ffffff)}.badge-standard.badge-secondary{background-color:var(--text-muted, #6b7280);color:var(--text-standard, #ffffff)}.badge-standard.badge-success{background-color:var(--color-success, #10b981);color:var(--text-standard, #ffffff)}.badge-standard.badge-danger{background-color:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff)}.badge-standard.badge-warning{background-color:var(--color-warning, #f59e0b);color:var(--text-standard, #ffffff)}.badge-standard.badge-info{background-color:var(--color-info, #06b6d4);color:var(--text-standard, #ffffff)}.badge-outlined{background-color:var(--bg-primary, var(--text-standard, #ffffff))}.badge-outlined.badge-primary{color:var(--color-primary, #10b981);border:2px solid var(--color-primary, #10b981)}.badge-outlined.badge-secondary{color:var(--text-muted, #6b7280);border:2px solid var(--color-primary, #6b7280)}.badge-outlined.badge-success{color:var(--color-success, #10b981);border:2px solid var(--color-success, #10b981)}.badge-outlined.badge-danger{color:var(--color-danger, #ef4444);border:2px solid var(--color-danger, #ef4444)}.badge-outlined.badge-warning{color:var(--color-warning, #f59e0b);border:2px solid var(--color-warning, #f59e0b)}.badge-outlined.badge-info{color:var(--color-info, #06b6d4);border:2px solid var(--color-info, #06b6d4)}.badge-icon{display:inline-flex;align-items:center;justify-content:center;font-size:0.9em;margin:0 2px}.badge-interactive{pointer-events:auto;cursor:pointer;transition:transform 0.2s ease, box-shadow 0.2s ease}.badge-interactive:hover{transform:scale(1.1);box-shadow:0 4px 8px rgba(0, 0, 0, 0.2)}.badge-interactive:active{transform:scale(0.95)}.badge.badge-closable{pointer-events:auto !important;border-radius:6px !important;padding-left:10px !important;padding-right:10px !important}.badge-close{background:none;border:none;color:inherit;cursor:pointer;padding:0 0 0 4px;margin-left:4px;font-size:0.9em;opacity:0.8;transition:opacity 0.2s ease;line-height:1;pointer-events:auto;position:relative;z-index:2}.badge-close:hover{opacity:1}.badge-bordered{background-color:var(--bg-primary, var(--text-standard, #ffffff));border:2px solid currentColor}.badge-bordered.badge-primary{color:var(--color-primary, #10b981);border-color:var(--color-primary, #10b981)}.badge-bordered.badge-secondary{color:var(--text-muted, #6b7280);border-color:var(--color-primary, #6b7280)}.badge-bordered.badge-success{color:var(--color-success, #10b981);border-color:var(--color-success, #10b981)}.badge-bordered.badge-danger{color:var(--color-danger, #ef4444);border-color:var(--color-danger, #ef4444)}.badge-bordered.badge-warning{color:var(--color-warning, #f59e0b);border-color:var(--color-warning, #f59e0b)}.badge-bordered.badge-info{color:var(--color-info, #06b6d4);border-color:var(--color-info, #06b6d4)}.badge-soft.badge-primary{background-color:var(--bg-primary, #eff6ff);color:var(--color-primary, #10b981)}.badge-soft.badge-secondary{background-color:var(--bg-secondary, #f3f4f6);color:var(--text-muted, #6b7280)}.badge-soft.badge-success{background-color:var(--bg-primary, #d1fae5);color:var(--color-success, #10b981)}.badge-soft.badge-danger{background-color:var(--bg-primary, #fee2e2);color:var(--color-danger, #ef4444)}.badge-soft.badge-warning{background-color:var(--bg-primary, #fef3c7);color:var(--color-warning, #f59e0b)}.badge-soft.badge-info{background-color:var(--bg-primary, #cffafe);color:var(--color-info, #06b6d4)}.badge-gradient-blue-purple{background:linear-gradient(135deg, var(--color-primary, #10b981) 0%, var(--color-primary, #8b5cf6) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-green-teal{background:linear-gradient(135deg, var(--color-success, #10b981) 0%, var(--color-info, #06b6d4) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-orange-red{background:linear-gradient(135deg, var(--color-warning, #f59e0b) 0%, var(--color-danger, #ef4444) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-pink-purple{background:linear-gradient(135deg, var(--color-danger, #ec4899) 0%, var(--color-primary, #8b5cf6) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-blue-green{background:linear-gradient(135deg, var(--color-primary, #10b981) 0%, var(--color-success, #10b981) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-purple-pink{background:linear-gradient(135deg, var(--color-primary, #8b5cf6) 0%, var(--color-danger, #ec4899) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-teal-blue{background:linear-gradient(135deg, var(--color-info, #06b6d4) 0%, var(--color-primary, #10b981) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-yellow-orange{background:linear-gradient(135deg, var(--color-danger, #fbbf24) 0%, var(--color-warning, #f59e0b) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-red-pink{background:linear-gradient(135deg, var(--color-danger, #ef4444) 0%, var(--color-danger, #ec4899) 100%);color:var(--text-standard, #ffffff);border:none}.badge-gradient-indigo-purple{background:linear-gradient(135deg, var(--color-primary, #6366f1) 0%, var(--color-primary, #8b5cf6) 100%);color:var(--text-standard, #ffffff);border:none}.badge-glow{box-shadow:0 0 10px currentColor, 0 0 20px currentColor;animation:badge-glow-pulse 2s ease-in-out infinite}@keyframes badge-glow-pulse{0%,100%{box-shadow:0 0 10px currentColor, 0 0 20px currentColor}50%{box-shadow:0 0 15px currentColor, 0 0 30px currentColor}}.badge-bounce{animation:badge-bounce 1s ease-in-out infinite}@keyframes badge-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}.badge-shake{animation:badge-shake 0.5s ease-in-out infinite}@keyframes badge-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}.badge-pulse{animation:badge-pulse-scale 1.5s ease-in-out infinite}.badge-pulse::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:inherit;box-shadow:0 0 0 0 currentColor;animation:badge-pulse-ring 1.5s infinite ease-in-out;opacity:1}@keyframes badge-pulse-scale{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes badge-pulse-ring{0%{transform:scale(1);box-shadow:0 0 0 0 currentColor;opacity:0.7}100%{transform:scale(2);box-shadow:0 0 0 10px transparent;opacity:0}}.badge:focus-visible{outline:2px solid var(--color-primary, #10b981);outline-offset:2px}@media (prefers-reduced-motion: reduce){.badge-bounce,.badge-shake,.badge-pulse,.badge-glow,.badge-interactive{animation:none}.badge-pulse::after{animation:none}}.badge-shape-circle{border-radius:50%;min-width:auto;width:var(--badge-size, 20px);height:var(--badge-size, 20px);padding:0 !important;display:flex;align-items:center;justify-content:center}.badge-shape-circle.badge-sm{--badge-size:16px;font-size:9px}.badge-shape-circle.badge-md{--badge-size:20px;font-size:11px}.badge-shape-circle.badge-lg{--badge-size:24px;font-size:13px}.badge-shape-square{border-radius:4px;min-width:auto;width:var(--badge-size, 20px);height:var(--badge-size, 20px);padding:0 !important;display:flex;align-items:center;justify-content:center}.badge-shape-square.badge-sm{--badge-size:16px;font-size:9px}.badge-shape-square.badge-md{--badge-size:20px;font-size:11px}.badge-shape-square.badge-lg{--badge-size:24px;font-size:13px}`;
|
|
1831
1843
|
|
|
1832
1844
|
const Badge = class {
|
|
1833
1845
|
constructor(hostRef) {
|
|
@@ -2000,7 +2012,7 @@ const Badge = class {
|
|
|
2000
2012
|
};
|
|
2001
2013
|
Badge.style = badgeCss();
|
|
2002
2014
|
|
|
2003
|
-
const buttonCss = () => `@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}.btn-label-row{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;transition:all 0.2s ease}.btn-label-row.icon-pos-left{flex-direction:row}.btn-label-row.icon-pos-right{flex-direction:row-reverse}.btn-label-row.icon-pos-top{flex-direction:column}.btn-label-row.icon-pos-bottom{flex-direction:column-reverse}.btn-label-block{display:flex;flex-direction:column;justify-content:center;min-width:0;align-items:center;text-align:center}.icon-pos-left .btn-label-block{align-items:flex-start;text-align:left}.icon-pos-right .btn-label-block{align-items:flex-end;text-align:right}.icon-pos-top .btn-label-block,.icon-pos-bottom .btn-label-block,.icon-pos-none .btn-label-block{align-items:center;text-align:center}.btn-title{font-size:inherit;font-weight:600;line-height:1.2}.btn-subtitle{font-size:0.85em;font-weight:400;color:var(--btn-subtitle-color, var(--label-subtitle-color, var(--dd-muted, #62748a)));line-height:1.2;opacity:1;transition:color 0.2s ease;margin-top:2px}.btn-subtitle.btn-subtitle-above{margin-top:0;margin-bottom:2px}.btn-icon-block{display:flex;align-items:center;justify-content:center;flex-shrink:0}:host{display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;}:host(.is-full-width){display:block;width:100%}:host(.is-grow){flex:1;display:inline-flex}.btn{display:inline-flex;align-items:center;justify-content:center}.btn.btn-align-start{justify-content:flex-start;text-align:left}.btn.btn-align-start .btn-label-block{align-items:flex-start;text-align:left}.btn.btn-align-end{justify-content:flex-end;text-align:right}.btn.btn-align-end .btn-label-block{align-items:flex-end;text-align:right}.btn.btn-align-center{justify-content:center;text-align:center}.btn.btn-align-center .btn-label-block{align-items:center;text-align:center}.btn.btn-justify-start{justify-content:flex-start}.btn.btn-justify-end{justify-content:flex-end}.btn.btn-justify-center{justify-content:center}.btn.btn-justify-between{justify-content:space-between}.btn.btn-justify-around{justify-content:space-around}.btn .btn-content,.btn .btn-label-row{display:flex;flex:1;align-items:center;justify-content:inherit;min-width:0;width:100%;gap:8px}.btn .btn-content.is-vertical,.btn .btn-label-row.is-vertical{flex-direction:column;justify-content:center}.btn .btn-label-block{display:flex;flex-direction:column;min-width:0;flex:1;justify-content:center}.btn .btn-label-block .btn-title{display:flex;flex:1;width:100%;min-width:0;align-items:center;justify-content:inherit}.btn{position:relative;width:var(--button-width, auto);height:var(--ui-button-height, 40px);min-height:100%;padding:var(--button-padding, 0 20px);border:1px solid transparent;outline:none;cursor:pointer;user-select:none;text-decoration:none;font-family:inherit;font-weight:var(--button-font-weight, 600);font-size:var(--button-font-size, 14px);line-height:var(--button-line-height, normal);white-space:nowrap;transition:all 0.2s cubic-bezier(0.4, 0, 0.2, 1);overflow:visible;box-sizing:border-box;-webkit-tap-highlight-color:transparent;color:var(--text-primary, #000);box-shadow:0 2px 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.2)}.btn.btn-is-vertical{height:auto;min-height:var(--ui-button-height, 44px);padding:10px 16px}.btn.btn-is-vertical .btn-label-block{align-items:center;text-align:center}.btn.btn-type-image{background:transparent !important;border-color:transparent !important;box-shadow:none !important;padding:0 !important;width:auto;height:auto;min-width:0}.btn.btn-type-image .btn-image{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}@media (hover: hover){.btn:hover:not(.btn-disabled){box-shadow:0 4px 14px rgba(var(--color-primary-rgb, 59, 130, 246), 0.25);filter:brightness(1.08);transform:scale(1.01)}}.btn:active:not(.btn-disabled){transform:scale(0.97);box-shadow:0 1px 4px rgba(0, 0, 0, 0.12);filter:brightness(0.94);transition:transform 0.1s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.btn-selected{background:var(--btn-selected-bg, rgba(var(--color-primary-rgb, 59, 130, 246), 0.1));border-color:var(--btn-selected-border, var(--color-primary, #3b82f6));color:var(--btn-selected-color, var(--color-primary, #3b82f6));z-index:2}.btn-selected[style*="--hide-button-selection: 1"]{background-color:transparent !important;border-color:transparent !important;box-shadow:none !important}.btn-shortcut{font-size:0.8em;padding:1px 4px;background:rgba(0, 0, 0, 0.1);border-radius:4px;margin-inline-start:6px;font-family:monospace;opacity:0.7;letter-spacing:1px}.btn-primary .btn-shortcut{background:rgba(255, 255, 255, 0.2)}.btn-outline .btn-shortcut{background:rgba(0, 0, 0, 0.05)}.btn:focus-visible{box-shadow:0 0 0 3px rgba(var(--color-primary-rgb, 59, 130, 246), 0.4)}.btn-primary{background:var(--color-primary, #10b981);box-shadow:0 2px 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.2)}.btn-secondary{background:var(--color-primary, #6b7280);box-shadow:0 2px 8px rgba(0, 0, 0, 0.1)}.btn-success{background:var(--color-success, #10b981);box-shadow:0 2px 8px rgba(var(--color-success-rgb, 16, 185, 129), 0.2)}.btn-danger{background:var(--color-danger, #ef4444);box-shadow:0 2px 8px rgba(var(--color-danger-rgb, 239, 68, 68), 0.2)}.btn-warning{background:var(--color-warning, #f59e0b);box-shadow:0 2px 8px rgba(var(--color-warning-rgb, 245, 158, 11), 0.2)}.btn-info{background:var(--color-primary, #10b981);box-shadow:0 2px 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.2)}.btn-dark{background:var(--bg-primary, #1f2937);color:var(--text-standard, #ffffff)}.btn-outline{background:transparent;border-color:var(--border-strong, #d1d5db);color:var(--btn-label-color, var(--label-color, var(--text-secondary, #374151)));box-shadow:none}.btn-outline:hover:not(.btn-disabled){border-color:var(--color-primary, #9ca3af);background:rgba(0, 0, 0, 0.02)}.btn-ghost{background:transparent;color:var(--btn-label-color, var(--label-color, var(--text-secondary, #374151)));box-shadow:none}.btn-ghost:hover:not(.btn-disabled){background:rgba(0, 0, 0, 0.05)}.btn-plain{background:transparent;border:none;box-shadow:none;color:inherit;padding:0;height:100%;min-width:0;width:100%;border-radius:inherit}.btn-plain:hover:not(.btn-disabled){transform:none;box-shadow:none;filter:none;background:transparent}.btn-plain:active:not(.btn-disabled){transform:none;filter:none}.btn-raised{background:var(--bg-primary, #ffffff);color:var(--btn-label-color, var(--label-color, var(--text-primary, #1f2937)));border:1px solid var(--border-default, #e5e7eb);border-bottom:3px solid var(--border-strong, #d1d5db);box-shadow:0 2px 4px rgba(0, 0, 0, 0.05)}.btn-raised:active:not(.btn-disabled){border-bottom-width:1px;transform:translateY(2px)}.btn-glass{background:rgba(255, 255, 255, 0.15);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255, 255, 255, 0.2);color:inherit;box-shadow:0 8px 32px rgba(0, 0, 0, 0.1)}.btn-glass:hover:not(.btn-disabled){background:rgba(255, 255, 255, 0.25)}.btn-soft{color:var(--label-color, var(--text-primary, #1e293b));border-color:transparent;box-shadow:none}.btn-soft:hover:not(.btn-disabled){background:var(--btn-soft-hover-bg, rgba(var(--color-primary-rgb, 59, 130, 246), 0.12));transform:translateY(-1px)}.btn-soft.btn-success{background:rgba(var(--color-success-rgb, 16, 185, 129), 0.1);color:var(--label-color, #10b981)}.btn-soft.btn-success:hover:not(.btn-disabled){background:rgba(var(--color-success-rgb, 16, 185, 129), 0.16)}.btn-soft.btn-danger{background:rgba(var(--color-danger-rgb, 239, 68, 68), 0.1);color:var(--label-color, #ef4444)}.btn-soft.btn-danger:hover:not(.btn-disabled){background:rgba(var(--color-danger-rgb, 239, 68, 68), 0.16)}.btn-soft.btn-warning{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.1);color:var(--label-color, #f59e0b)}.btn-soft.btn-warning:hover:not(.btn-disabled){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.16)}.btn-soft.btn-info{background:rgba(var(--color-info-rgb, 6, 182, 212), 0.1);color:var(--label-color, #06b6d4)}.btn-soft.btn-info:hover:not(.btn-disabled){background:rgba(var(--color-info-rgb, 6, 182, 212), 0.16)}.btn-accordion{background:transparent;color:var(--btn-label-color, var(--label-color, var(--text-secondary, #374151)));box-shadow:none;width:100%;--button-padding:16px 0px;--ui-button-height:auto;justify-content:space-between !important;border:none;font-size:16px;font-weight:500}.btn-accordion:hover:not(.btn-disabled){background:transparent;transform:none !important;box-shadow:none !important;filter:none !important}.btn-accordion:active:not(.btn-disabled){transform:none !important;background:transparent;box-shadow:none !important;filter:none !important}.btn-accordion:focus-visible,.btn-accordion:focus,.btn-accordion:active{outline:none !important;box-shadow:none !important;background:transparent !important}.btn-gradient{background:linear-gradient(135deg, var(--color-success, #3dcd58) 0%, var(--color-success, #00b894) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(var(--color-success-rgb, 61, 205, 88), 0.35)}.btn-gradient:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-success, #2ebd4a) 0%, var(--color-success, #00a381) 100%);box-shadow:0 6px 20px rgba(var(--color-success-rgb, 61, 205, 88), 0.5);transform:translateY(-1px)}.btn-gradient:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(var(--color-success-rgb, 61, 205, 88), 0.3);transform:translateY(0)}.btn-gradient-blue{background:linear-gradient(135deg, var(--color-primary, #10b981) 0%, var(--color-primary, #8b5cf6) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(var(--color-primary-rgb, 59, 130, 246), 0.35)}.btn-gradient-blue:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-primary-hover, #2563eb) 0%, var(--color-primary, #7c3aed) 100%);box-shadow:0 6px 20px rgba(var(--color-primary-rgb, 59, 130, 246), 0.5);transform:translateY(-1px)}.btn-gradient-blue:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.3);transform:translateY(0)}.btn-gradient-purple{background:linear-gradient(135deg, var(--color-primary, #8b5cf6) 0%, var(--color-danger, #ec4899) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(139, 92, 246, 0.35)}.btn-gradient-purple:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-primary, #7c3aed) 0%, var(--color-danger, #db2777) 100%);box-shadow:0 6px 20px rgba(139, 92, 246, 0.5);transform:translateY(-1px)}.btn-gradient-purple:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(139, 92, 246, 0.3);transform:translateY(0)}.btn-gradient-orange{background:linear-gradient(135deg, var(--color-danger, #f97316) 0%, var(--color-danger, #ef4444) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(249, 115, 22, 0.35)}.btn-gradient-orange:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-danger, #ea6c0a) 0%, var(--color-danger-hover, #dc2626) 100%);box-shadow:0 6px 20px rgba(249, 115, 22, 0.5);transform:translateY(-1px)}.btn-gradient-orange:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(249, 115, 22, 0.3);transform:translateY(0)}.btn-gradient-ocean{background:linear-gradient(135deg, var(--color-primary, #0ea5e9) 0%, var(--color-info, #06b6d4) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(14, 165, 233, 0.35)}.btn-gradient-ocean:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-primary, #0284c7) 0%, var(--color-info-hover, #0891b2) 100%);box-shadow:0 6px 20px rgba(14, 165, 233, 0.5);transform:translateY(-1px)}.btn-gradient-ocean:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(14, 165, 233, 0.3);transform:translateY(0)}.btn-gradient-sunset{background:linear-gradient(135deg, var(--color-warning, #f59e0b) 0%, var(--color-danger, #f97316) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(var(--color-warning-rgb, 245, 158, 11), 0.35)}.btn-gradient-sunset:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-warning-hover, #d97706) 0%, var(--color-danger, #ea6c0a) 100%);box-shadow:0 6px 20px rgba(var(--color-warning-rgb, 245, 158, 11), 0.5);transform:translateY(-1px)}.btn-gradient-sunset:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(var(--color-warning-rgb, 245, 158, 11), 0.3);transform:translateY(0)}.btn-gradient-candy{background:linear-gradient(135deg, var(--color-danger, #ec4899) 0%, var(--color-danger, #ef4444) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(236, 72, 153, 0.35)}.btn-gradient-candy:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-danger, #db2777) 0%, var(--color-danger-hover, #dc2626) 100%);box-shadow:0 6px 20px rgba(236, 72, 153, 0.5);transform:translateY(-1px)}.btn-gradient-candy:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(236, 72, 153, 0.3);transform:translateY(0)}.btn-gradient-gold{background:linear-gradient(135deg, var(--color-danger, #fbbf24) 0%, var(--color-warning-hover, #d97706) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(251, 191, 36, 0.35);text-shadow:0 1px 2px rgba(0, 0, 0, 0.15)}.btn-gradient-gold:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-warning, #f59e0b) 0%, var(--color-danger, #b45309) 100%);box-shadow:0 6px 20px rgba(251, 191, 36, 0.5);transform:translateY(-1px)}.btn-gradient-gold:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(251, 191, 36, 0.3);transform:translateY(0)}.btn-xxxs{--ui-button-height:20px;font-size:10px;padding:0 6px}.btn-xxs{--ui-button-height:24px;font-size:11px;padding:0 8px}.btn-xs{--ui-button-height:28px;font-size:12px;padding:0 10px}.btn-sm{--ui-button-height:32px;font-size:13px;padding:0 12px}.btn-md{--ui-button-height:44px;font-size:14px;padding:0 18px}.btn-lg{--ui-button-height:52px;font-size:15px;padding:0 22px}.btn-xl{--ui-button-height:60px;font-size:16px;padding:0 28px}.btn-xxl{--ui-button-height:68px;font-size:18px;padding:0 36px}.btn-xxxl{--ui-button-height:84px;font-size:20px;padding:0 48px}.btn-shape-square,.btn-shape-sharp{border-radius:0}.btn-shape-rounded{border-radius:var(--button-border-radius, 8px)}.btn-shape-rounded-lg{border-radius:var(--button-border-radius, 12px)}.btn-shape-pill,.btn-shape-oval{border-radius:var(--button-border-radius, 9999px);padding-left:1.5rem !important;padding-right:1.5rem !important}.btn-icon-only{padding:0 !important;width:var(--ui-button-height, 40px) !important;min-width:var(--ui-button-height, 40px) !important;max-width:var(--ui-button-height, 40px) !important;flex:0 0 var(--ui-button-height, 40px) !important;aspect-ratio:1/1 !important;display:inline-flex;align-items:center;justify-content:center}.btn-icon-only .btn-content{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:0;gap:0}.btn-icon-only .btn-label-group{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0;gap:0}.btn-icon-only .btn-icon{display:flex;align-items:center;justify-content:center;margin:0}.btn-icon-only .btn-label{margin:0;font-size:0.95em;font-weight:700;line-height:1;text-transform:uppercase;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.btn-shape-circle{border-radius:50% !important;aspect-ratio:1/1 !important;padding:0 !important;width:var(--ui-button-height, 40px) !important;min-width:var(--ui-button-height, 40px) !important;max-width:var(--ui-button-height, 40px) !important;display:inline-flex;align-items:center;justify-content:center}.btn-shape-chip{border-radius:100px;height:28px !important;font-size:11px;padding:0 12px}.btn-disabled{opacity:0.5;cursor:not-allowed;filter:grayscale(0.8);pointer-events:none}.btn-loading{cursor:wait}.btn-selected{background:var(--btn-selected-bg, rgba(var(--color-primary-rgb, 59, 130, 246), 0.12));color:var(--btn-selected-color, var(--color-primary, #2563eb));font-weight:700;outline:none;box-shadow:inset 0 0 0 1px rgba(var(--color-primary-rgb, 59, 130, 246), 0.25)}.btn-selected::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.15);pointer-events:none;z-index:-1}.btn-ghost.btn-selected{background:var(--btn-selected-bg, rgba(37, 99, 235, 0.1));color:var(--btn-selected-color, var(--text-standard))}.btn-ghost.btn-selected:hover:not(.btn-disabled){background:var(--btn-selected-hover-bg, rgba(37, 99, 235, 0.16))}.btn-content{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;width:auto;min-width:0;max-width:100%;position:relative;z-index:1;flex:1 1 auto;overflow:hidden}.btn-icon-pos-left .btn-label-row{flex-direction:row}.btn-icon-pos-right .btn-label-row{flex-direction:row}.btn-icon-pos-top,.btn-icon-pos-bottom{height:auto;min-height:var(--ui-button-height);padding-top:10px !important;padding-bottom:10px !important}.btn-icon-pos-top .btn-label-row,.btn-icon-pos-bottom .btn-label-row{gap:4px !important;align-items:center !important;justify-content:center !important}.btn-icon-pos-top .btn-title-block,.btn-icon-pos-bottom .btn-title-block{align-items:center !important;text-align:center !important}.btn-icon-pos-top .btn-label-row{flex-direction:column}.btn-icon-pos-bottom .btn-label-row{flex-direction:column}.btn-label-group{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1 1 auto;min-width:0;max-width:100%;overflow:hidden}.btn-label-group.is-column{flex-direction:column;gap:4px}.btn-counter{margin-inline-start:8px;vertical-align:middle;flex-shrink:0}.btn-icon,.btn-spinner{display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-label{display:inline-flex;align-items:center;gap:inherit;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:normal}.btn-img{height:1.5em;width:auto;margin:0 4px;object-fit:contain;flex-shrink:0}.btn-avatar{position:relative;flex-shrink:0;border-radius:50%;overflow:visible;display:flex;align-items:center;justify-content:center;width:calc(var(--ui-button-height) * 0.65);height:calc(var(--ui-button-height) * 0.65);background:rgba(0, 0, 0, 0.05);margin-right:8px}.btn-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.btn-avatar .status-dot{position:absolute;bottom:-1px;right:-1px;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--bg-primary, #ffffff);z-index:1}.btn-avatar .status-dot.status-online{background-color:var(--color-success, #10b981)}.btn-avatar .status-dot.status-offline{background-color:var(--text-muted, #6b7280)}.btn-avatar .status-dot.status-busy{background-color:var(--color-danger, #ef4444)}.btn-avatar .status-dot.status-away{background-color:var(--color-warning, #f59e0b)}.btn-icon-only .btn-avatar,.btn-shape-circle .btn-avatar{margin-inline-end:0;width:100%;height:100%;border-radius:inherit}.btn-icon-only .btn-avatar img,.btn-shape-circle .btn-avatar img{border-radius:inherit}.btn-has-bg{background-size:cover;background-position:center;position:relative}.btn-has-bg::before{content:"";position:absolute;inset:0;background:rgba(0, 0, 0, 0.3);transition:opacity 0.2s}.btn-has-bg:hover::before{background:rgba(0, 0, 0, 0.4)}.elevation-0{box-shadow:none}.elevation-1{box-shadow:0 2px 4px rgba(0, 0, 0, 0.1)}.elevation-2{box-shadow:0 4px 8px rgba(0, 0, 0, 0.12)}.elevation-3{box-shadow:0 8px 16px rgba(0, 0, 0, 0.15)}.elevation-4{box-shadow:0 12px 24px rgba(0, 0, 0, 0.18)}.elevation-5{box-shadow:0 20px 40px rgba(0, 0, 0, 0.2)}ui-badge.is-inline{margin:0px}ui-badge.is-absolute{position:absolute;z-index:10;pointer-events:none;width:0;height:0}.pos-top-right{top:-1rem;inset-inline-end:0}.pos-top-left{top:-1rem;inset-inline-start:0}.pos-bottom-right{bottom:1rem;inset-inline-end:0}.pos-bottom-left{bottom:1rem;inset-inline-start:0}.btn-ripple-container{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.ripple{position:absolute;border-radius:50%;background:rgba(255, 255, 255, 0.3);transform:scale(0);animation:ripple-anim 0.6s linear}@keyframes ripple-anim{to{transform:scale(4);opacity:0}}.btn-soft{box-shadow:none;border:none}.btn-soft.btn-primary,.btn-soft.btn-success,.btn-soft.btn-danger,.btn-soft.btn-warning,.btn-soft.btn-info{color:var(--label-color)}.btn-soft.btn-secondary{color:var(--label-subtitle-color)}.btn-soft:hover:not(.btn-disabled){background:currentColor;color:var(--text-standard, #ffffff);filter:none}.btn-active{transform:translateY(1px);filter:brightness(0.9) !important;box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.1) !important}.btn-skeleton{pointer-events:none;background:var(--bg-secondary, #f1f5f9) !important;border:none !important;color:transparent !important;box-shadow:none !important;position:relative;overflow:hidden}.btn-skeleton *{opacity:0 !important}.btn-skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);animation:btn-shimmer 1.5s infinite}@keyframes btn-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.btn-gradient-sunset{background:linear-gradient(135deg, var(--color-primary, #f093fb) 0%, var(--color-danger, #f5576c) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-gradient-ocean{background:linear-gradient(135deg, var(--color-primary, #4facfe) 0%, var(--color-primary, #00f2fe) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-gradient-midnight{background:linear-gradient(135deg, var(--bg-primary, #232526) 0%, var(--bg-secondary, #414345) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-gradient-forest{background:linear-gradient(135deg, var(--color-primary, #11998e) 0%, var(--color-success, #38ef7d) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-gradient-blaze{background:linear-gradient(135deg, var(--color-danger, #ff512f) 0%, var(--color-danger, #dd2476) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-dropdown-icon{margin-inline-start:4px;display:flex;align-items:center;opacity:0.8;transition:transform 0.2s}.btn:hover .btn-dropdown-icon{transform:translateY(1px)}.btn-magnetic,.btn-tilt{transition:transform 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);will-change:transform;transform-style:preserve-3d}.btn-glow{position:relative}.btn-glow::before{content:"";position:absolute;inset:-2px;background:currentColor;border-radius:inherit;filter:blur(8px);opacity:0.4;z-index:-1;animation:btn-glow-pulse 2s ease-in-out infinite}@keyframes btn-glow-pulse{0%,100%{opacity:0.3;transform:scale(1)}50%{opacity:0.6;transform:scale(1.05)}}.confetti-particle{position:absolute;top:50%;left:50%;width:8px;height:8px;background-color:var(--particle-color);border-radius:2px;pointer-events:none;z-index:10;animation:confetti-burst 0.8s ease-out forwards}@keyframes confetti-burst{0%{transform:translate(-50%, -50%) rotate(0deg) scale(1);opacity:1}100%{transform:translate(calc(cos(var(--particle-angle)) * 100px * var(--particle-velocity)), calc(sin(var(--particle-angle)) * 100px * var(--particle-velocity))) rotate(720deg) scale(0);opacity:0}}.btn-primary.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-primary.btn-glow::before{background:var(--ui-primary, var(--color-success, #3dcd58))}.btn-success.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-success.btn-glow::before{background:var(--ui-success, var(--color-success, #10b981))}.btn-danger.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-danger.btn-glow::before{background:var(--ui-danger, var(--color-danger, #ef4444))}.btn-warning.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-warning.btn-glow::before{background:var(--ui-warning, var(--color-warning, #f59e0b))}.btn-info.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-info.btn-glow::before{background:var(--ui-info, var(--color-info-hover, #0891b2))}.btn-glossy{position:relative;overflow:hidden}.btn-glossy::after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right, transparent, rgba(255, 255, 255, 0.4), transparent);transform:skewX(-25deg);animation:glossy-sweep 4s infinite ease-in-out}@keyframes glossy-sweep{0%{left:-100%}30%{left:150%}100%{left:150%}}.btn-icon{display:inline-flex;transition:transform 0.2s cubic-bezier(0.4, 0, 0.2, 1)}.btn-icon ui-icon{transition:opacity 0.2s, transform 0.2s}.btn:hover .btn-icon ui-icon{transform:scale(1.1)}.btn-hold-track{position:absolute;top:0;left:0;height:100%;background:rgba(0, 0, 0, 0.15);pointer-events:none;z-index:0;transition:width 0.05s linear}.btn-has-theme{--btn-theme-bg:var(--btn-theme-color, var(--color-primary, #10b981));--btn-theme-text:var(--text-standard, #ffffff);background:var(--btn-theme-bg);color:var(--btn-theme-text);border:none}.btn-has-theme:hover:not(.btn-disabled){background:color-mix(in srgb, var(--btn-theme-bg), #000 10%);box-shadow:0 4px 12px color-mix(in srgb, var(--btn-theme-bg), transparent 70%)}.btn-has-theme.btn-outline{background:transparent;color:var(--btn-theme-bg);border:1px solid var(--btn-theme-bg)}.btn-has-theme.btn-outline:hover:not(.btn-disabled){background:var(--btn-theme-bg);color:var(--text-standard, #ffffff)}.btn-has-theme.btn-soft{color:var(--btn-theme-bg)}.btn-has-theme.btn-soft:hover:not(.btn-disabled){background:var(--btn-theme-bg);color:var(--text-standard, #ffffff)}.btn-progress-track{position:absolute;top:0;left:0;height:100%;background:color-mix(in srgb, currentColor, transparent 80%);z-index:1;pointer-events:none;transition:width 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.btn-primary .btn-progress-track{background:rgba(0, 0, 0, 0.2)}.btn-outline .btn-progress-track{background:color-mix(in srgb, currentColor, transparent 85%)}.btn-accordion{background:transparent;border:none;padding:0;height:auto;min-height:48px;width:100%;border-radius:0;box-shadow:none;color:inherit;--button-width:100%}.btn-accordion .btn-content,.btn-accordion .btn-label-row{padding:0 20px;justify-content:space-between}.btn-accordion .btn-label-block,.btn-accordion .btn-title{align-items:stretch;text-align:left;width:100%;display:flex;flex-direction:column}.btn-accordion:hover:not(.btn-disabled){background:rgba(0, 0, 0, 0.02);transform:none;box-shadow:none;filter:none}.btn-accordion:active:not(.btn-disabled){background:rgba(0, 0, 0, 0.05);transform:none}.btn-shaking{animation:btn-shake 0.4s cubic-bezier(0.36, 0.07, 0.19, 0.97) both}@keyframes btn-shake{10%,90%{transform:translate3d(-1px, 0, 0)}20%,80%{transform:translate3d(2px, 0, 0)}30%,50%,70%{transform:translate3d(-4px, 0, 0)}40%,60%{transform:translate3d(4px, 0, 0)}}.btn-rainbow.btn-glow::before{animation:btn-rainbow-glow 4s linear infinite;opacity:0.6}@keyframes btn-rainbow-glow{0%{background:var(--color-danger, #ff0000);filter:hue-rotate(0deg) blur(10px)}100%{background:var(--color-danger, #ff0000);filter:hue-rotate(360deg) blur(10px)}}.btn-liquid-progress{overflow:hidden}.btn-liquid-progress::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:rgba(255, 255, 255, 0.2);border-radius:38%;animation:btn-liquid-wave 3s linear infinite}@keyframes btn-liquid-wave{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.btn-split{padding-right:0 !important}.btn-split .btn-dropdown-icon{height:100%;padding:0 12px;margin-inline-start:8px;border-inline-start:1px solid rgba(255, 255, 255, 0.2);display:flex;align-items:center;transition:background 0.2s}.btn-split .btn-dropdown-icon:hover{background:rgba(0, 0, 0, 0.1)}.btn-confirm-pop{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);background:var(--bg-primary, #1f2937);color:var(--text-standard, #ffffff);padding:12px 16px;border-radius:12px;font-size:13px;display:flex;align-items:center;gap:12px;white-space:nowrap;box-shadow:0 10px 25px rgba(0, 0, 0, 0.2);z-index:100;animation:pop-in 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.btn-confirm-pop::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--border-strong, #1f2937)}.btn-confirm-pop .pop-actions{display:flex;gap:6px}.btn-confirm-pop .pop-actions button{width:24px;height:24px;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;transition:transform 0.1s}.btn-confirm-pop .pop-actions button:active{transform:scale(0.9)}.btn-confirm-pop .pop-actions .pop-btn-no{background:var(--text-secondary, #374151);color:var(--bg-primary, #ffffff)}.btn-confirm-pop .pop-actions .pop-btn-yes{background:var(--color-success, #10b981);color:var(--bg-primary, #ffffff)}@keyframes pop-in{from{opacity:0;transform:translateX(-50%) translateY(10px) scale(0.9)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}.btn-reveal-fade-in{animation:btn-fade-in 0.6s ease-out forwards}.btn-reveal-slide-up{animation:btn-slide-up 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards}.btn-reveal-zoom{animation:btn-zoom-in 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards}@keyframes btn-fade-in{from{opacity:0}to{opacity:1}}@keyframes btn-slide-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes btn-zoom-in{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:scale(1)}}.btn-tooltip-pop{position:absolute;top:-10px;left:50%;transform:translateX(-50%) translateY(-100%);background:var(--bg-primary, #1f2937);color:var(--text-standard, #ffffff);padding:4px 10px;border-radius:6px;font-size:11px;white-space:nowrap;pointer-events:none;z-index:1000;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1);animation:tooltip-in 0.2s ease-out}.btn-tooltip-pop::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:4px solid transparent;border-top-color:var(--border-strong, #1f2937)}@keyframes tooltip-in{from{opacity:0;transform:translateX(-50%) translateY(-90%) scale(0.95)}to{opacity:1;transform:translateX(-50%) translateY(-100%) scale(1)}}.btn-animate-gradient{background-size:240% 240% !important;animation:bg-living-gradient 6s ease infinite !important}@keyframes bg-living-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.btn-pulse{position:relative}.btn-pulse::before{content:"";position:absolute;inset:-6px;background:inherit;border-radius:inherit;opacity:0.4;z-index:-1;animation:btn-energy-pulse 2s cubic-bezier(0.24, 0, 0.38, 1) infinite}@keyframes btn-energy-pulse{0%{transform:scale(1);opacity:0.4;filter:blur(2px)}100%{transform:scale(1.3);opacity:0;filter:blur(8px)}}.btn-group-start{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important;border-right:0.5px solid rgba(0, 0, 0, 0.1) !important}.btn-group-middle{border-radius:0 !important;border-right:0.5px solid rgba(0, 0, 0, 0.1) !important}.btn-group-end{border-top-left-radius:0 !important;border-bottom-left-radius:0 !important}.btn-is-slider{background:rgba(0, 0, 0, 0.05) !important;border:1px solid rgba(0, 0, 0, 0.1) !important;box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.05) !important;color:var(--text-muted, #64748b) !important;cursor:default !important;overflow:hidden;position:relative}.btn-is-slider:hover{transform:none !important}.btn-is-slider .btn-slider-handle{position:absolute;top:4px;height:calc(100% - 8px);width:52px;background:var(--bg-primary, #ffffff);border-radius:inherit;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);cursor:grab;z-index:10;transition:left 0.05s linear;color:var(--ui-primary, var(--color-success, #3dcd58))}.btn-is-slider .btn-slider-handle:active{cursor:grabbing}.btn-is-slider.btn-primary .btn-slider-handle{color:var(--ui-primary, var(--color-success, #3dcd58))}.btn-is-slider.btn-danger .btn-slider-handle{color:var(--ui-danger, var(--color-danger, #ef4444))}.btn-is-slider.btn-success .btn-slider-handle{color:var(--ui-success, var(--color-success, #10b981))}.btn-icon-hover-rotate:hover:not(.btn-disabled) .btn-icon{transform:rotate(15deg);transition:transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.btn-follow-glow::before{content:"";position:absolute;inset:0;background:radial-gradient(circle 80px at var(--glow-x, 0) var(--glow-y, 0), rgba(255, 255, 255, 0.15), transparent);opacity:0;transition:opacity 0.3s;pointer-events:none;z-index:1}.btn-follow-glow:hover::before{opacity:1}.btn-spinning .btn-icon{animation:btn-icon-spin 0.6s cubic-bezier(0.34, 1.56, 0.64, 1)}@keyframes btn-icon-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.btn-shatter{position:absolute;background:rgba(0, 0, 0, 0.6);pointer-events:none;z-index:100;animation:btn-shatter-explode 0.8s cubic-bezier(0.1, 0.8, 0.3, 1) forwards}@keyframes btn-shatter-explode{0%{transform:translate(0, 0) rotate(0);opacity:1}100%{transform:translate(var(--vx), var(--vy)) rotate(var(--vr));opacity:0}}.btn-spinner.is-ring{width:24px;height:24px}.btn-spinner.is-ring .progress-ring{transform:rotate(-90deg);width:100%;height:100%}.btn-spinner.is-ring .progress-ring circle{stroke-linecap:round}.btn-spinner.is-ring .progress-ring .ring-bg{stroke:rgba(255, 255, 255, 0.1)}.btn-spinner.is-ring .progress-ring .ring-fg{stroke:currentColor;transition:stroke-dasharray 0.3s ease}.btn-primary .ring-bg{stroke:rgba(0, 0, 0, 0.1)}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--ui-surface), 0 0 0 4px var(--ui-primary, var(--color-success, #3dcd58)) !important;z-index:100}.btn:active:not(.btn-disabled),.btn-active:not(.btn-disabled){transform:translateY(1px) scale(0.96);box-shadow:0 1px 2px rgba(0, 0, 0, 0.1) !important;filter:brightness(0.95)}.btn-raised:active:not(.btn-disabled){box-shadow:0 2px 4px rgba(0, 0, 0, 0.15) !important}@media (max-width: 640px){.btn-hide-mobile{padding:0 !important;width:var(--ui-button-height) !important;min-width:var(--ui-button-height) !important}.btn-hide-mobile .btn-label,.btn-hide-mobile .btn-label-group,.btn-hide-mobile .btn-dropdown-icon{display:none !important}.btn-hide-mobile .btn-icon{margin:0 !important}}.btn-progress-fill{position:absolute;left:0;top:0;bottom:0;background:rgba(255, 255, 255, 0.2);border-radius:inherit;pointer-events:none;transition:width 0.4s ease;z-index:0}.btn-image{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}`;
|
|
2015
|
+
const buttonCss = () => `@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}.btn-label-row{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;transition:all 0.2s ease}.btn-label-row.icon-pos-left{flex-direction:row}.btn-label-row.icon-pos-right{flex-direction:row-reverse}.btn-label-row.icon-pos-top{flex-direction:column}.btn-label-row.icon-pos-bottom{flex-direction:column-reverse}.btn-label-block{display:flex;flex-direction:column;justify-content:center;min-width:0;align-items:center;text-align:center}.icon-pos-left .btn-label-block{align-items:flex-start;text-align:left}.icon-pos-right .btn-label-block{align-items:flex-end;text-align:right}.icon-pos-top .btn-label-block,.icon-pos-bottom .btn-label-block,.icon-pos-none .btn-label-block{align-items:center;text-align:center}.btn-title{font-size:inherit;font-weight:600;line-height:1.2}.btn-subtitle{font-size:0.85em;font-weight:400;color:var(--btn-subtitle-color, var(--label-subtitle-color, var(--dd-muted, #62748a)));line-height:1.2;opacity:1;transition:color 0.2s ease;margin-top:2px}.btn-subtitle.btn-subtitle-above{margin-top:0;margin-bottom:2px}.btn-icon-block{display:flex;align-items:center;justify-content:center;flex-shrink:0}:host{display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;border-radius:var(--button-border-radius, 8px);}:host([shape=square]){border-radius:0}:host([shape=circle]),:host([circle]){border-radius:50%}:host([shape=pill]),:host([pill]){border-radius:9999px}:host(.is-full-width){display:block;width:100%}:host(.is-grow){flex:1;display:inline-flex}.btn{display:inline-flex;align-items:center;justify-content:center}.btn.btn-align-start{justify-content:flex-start;text-align:left}.btn.btn-align-start .btn-label-block{align-items:flex-start;text-align:left}.btn.btn-align-end{justify-content:flex-end;text-align:right}.btn.btn-align-end .btn-label-block{align-items:flex-end;text-align:right}.btn.btn-align-center{justify-content:center;text-align:center}.btn.btn-align-center .btn-label-block{align-items:center;text-align:center}.btn.btn-justify-start{justify-content:flex-start}.btn.btn-justify-end{justify-content:flex-end}.btn.btn-justify-center{justify-content:center}.btn.btn-justify-between{justify-content:space-between}.btn.btn-justify-around{justify-content:space-around}.btn .btn-content,.btn .btn-label-row{display:flex;flex:1;align-items:center;justify-content:inherit;min-width:0;width:100%;gap:8px}.btn .btn-content.is-vertical,.btn .btn-label-row.is-vertical{flex-direction:column;justify-content:center}.btn .btn-label-block{display:flex;flex-direction:column;min-width:0;flex:1;justify-content:center}.btn .btn-label-block .btn-title{display:flex;flex:1;width:100%;min-width:0;align-items:center;justify-content:inherit}.btn{position:relative;width:var(--button-width, auto);height:var(--ui-button-height, 40px);min-height:100%;padding:var(--button-padding, 0 20px);border:1px solid transparent;outline:none;cursor:pointer;user-select:none;text-decoration:none;font-family:inherit;font-weight:var(--button-font-weight, 600);font-size:var(--button-font-size, 14px);line-height:var(--button-line-height, normal);white-space:nowrap;transition:all 0.2s cubic-bezier(0.4, 0, 0.2, 1);overflow:visible;box-sizing:border-box;-webkit-tap-highlight-color:transparent;color:var(--text-primary, #000);box-shadow:0 2px 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.2)}.btn.btn-is-vertical{height:auto;min-height:var(--ui-button-height, 44px);padding:10px 16px}.btn.btn-is-vertical .btn-label-block{align-items:center;text-align:center}.btn.btn-type-image{background:transparent !important;border-color:transparent !important;box-shadow:none !important;padding:0 !important;width:auto;height:auto;min-width:0}.btn.btn-type-image .btn-image{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}@media (hover: hover){.btn:hover:not(.btn-disabled){box-shadow:0 4px 14px rgba(var(--color-primary-rgb, 59, 130, 246), 0.25);filter:brightness(1.08);transform:scale(1.01)}}.btn:active:not(.btn-disabled){transform:scale(0.97);box-shadow:0 1px 4px rgba(0, 0, 0, 0.12);filter:brightness(0.94);transition:transform 0.1s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.btn-selected{background:var(--btn-selected-bg, rgba(var(--color-primary-rgb, 59, 130, 246), 0.1));border-color:var(--btn-selected-border, var(--color-primary, #3b82f6));color:var(--btn-selected-color, var(--color-primary, #3b82f6));z-index:2}.btn-selected[style*="--hide-button-selection: 1"]{background-color:transparent !important;border-color:transparent !important;box-shadow:none !important}.btn-shortcut{font-size:0.8em;padding:1px 4px;background:rgba(0, 0, 0, 0.1);border-radius:4px;margin-inline-start:6px;font-family:monospace;opacity:0.7;letter-spacing:1px}.btn-primary .btn-shortcut{background:rgba(255, 255, 255, 0.2)}.btn-outline .btn-shortcut{background:rgba(0, 0, 0, 0.05)}.btn:focus-visible{box-shadow:0 0 0 3px rgba(var(--color-primary-rgb, 59, 130, 246), 0.4)}.btn-primary{background:var(--color-primary, #10b981);box-shadow:0 2px 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.2)}.btn-secondary{background:var(--color-primary, #6b7280);box-shadow:0 2px 8px rgba(0, 0, 0, 0.1)}.btn-success{background:var(--color-success, #10b981);box-shadow:0 2px 8px rgba(var(--color-success-rgb, 16, 185, 129), 0.2)}.btn-danger{background:var(--color-danger, #ef4444);box-shadow:0 2px 8px rgba(var(--color-danger-rgb, 239, 68, 68), 0.2)}.btn-warning{background:var(--color-warning, #f59e0b);box-shadow:0 2px 8px rgba(var(--color-warning-rgb, 245, 158, 11), 0.2)}.btn-info{background:var(--color-primary, #10b981);box-shadow:0 2px 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.2)}.btn-dark{background:var(--bg-primary, #1f2937);color:var(--text-standard, #ffffff)}.btn-outline{background:transparent;border-color:var(--border-strong, #d1d5db);color:var(--btn-label-color, var(--label-color, var(--text-secondary, #374151)));box-shadow:none}.btn-outline:hover:not(.btn-disabled){border-color:var(--color-primary, #9ca3af);background:rgba(0, 0, 0, 0.02)}.btn-ghost{background:transparent;color:var(--btn-label-color, var(--label-color, var(--text-secondary, #374151)));box-shadow:none}.btn-ghost:hover:not(.btn-disabled){background:rgba(0, 0, 0, 0.05)}.btn-plain{background:transparent;border:none;box-shadow:none;color:inherit;padding:0;height:100%;min-width:0;width:100%;border-radius:inherit}.btn-plain:hover:not(.btn-disabled){transform:none;box-shadow:none;filter:none;background:transparent}.btn-plain:active:not(.btn-disabled){transform:none;filter:none}.btn-raised{background:var(--bg-primary, #ffffff);color:var(--btn-label-color, var(--label-color, var(--text-primary, #1f2937)));border:1px solid var(--border-default, #e5e7eb);border-bottom:3px solid var(--border-strong, #d1d5db);box-shadow:0 2px 4px rgba(0, 0, 0, 0.05)}.btn-raised:active:not(.btn-disabled){border-bottom-width:1px;transform:translateY(2px)}.btn-glass{background:rgba(255, 255, 255, 0.15);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255, 255, 255, 0.2);color:inherit;box-shadow:0 8px 32px rgba(0, 0, 0, 0.1)}.btn-glass:hover:not(.btn-disabled){background:rgba(255, 255, 255, 0.25)}.btn-soft{color:var(--label-color, var(--text-primary, #1e293b));border-color:transparent;box-shadow:none}.btn-soft:hover:not(.btn-disabled){background:var(--btn-soft-hover-bg, rgba(var(--color-primary-rgb, 59, 130, 246), 0.12));transform:translateY(-1px)}.btn-soft.btn-success{background:rgba(var(--color-success-rgb, 16, 185, 129), 0.1);color:var(--label-color, #10b981)}.btn-soft.btn-success:hover:not(.btn-disabled){background:rgba(var(--color-success-rgb, 16, 185, 129), 0.16)}.btn-soft.btn-danger{background:rgba(var(--color-danger-rgb, 239, 68, 68), 0.1);color:var(--label-color, #ef4444)}.btn-soft.btn-danger:hover:not(.btn-disabled){background:rgba(var(--color-danger-rgb, 239, 68, 68), 0.16)}.btn-soft.btn-warning{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.1);color:var(--label-color, #f59e0b)}.btn-soft.btn-warning:hover:not(.btn-disabled){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.16)}.btn-soft.btn-info{background:rgba(var(--color-info-rgb, 6, 182, 212), 0.1);color:var(--label-color, #06b6d4)}.btn-soft.btn-info:hover:not(.btn-disabled){background:rgba(var(--color-info-rgb, 6, 182, 212), 0.16)}.btn-accordion{background:transparent;color:var(--btn-label-color, var(--label-color, var(--text-secondary, #374151)));box-shadow:none;width:100%;--button-padding:16px 0px;--ui-button-height:auto;justify-content:space-between !important;border:none;font-size:16px;font-weight:500}.btn-accordion:hover:not(.btn-disabled){background:transparent;transform:none !important;box-shadow:none !important;filter:none !important}.btn-accordion:active:not(.btn-disabled){transform:none !important;background:transparent;box-shadow:none !important;filter:none !important}.btn-accordion:focus-visible,.btn-accordion:focus,.btn-accordion:active{outline:none !important;box-shadow:none !important;background:transparent !important}.btn-gradient{background:linear-gradient(135deg, var(--color-success, #3dcd58) 0%, var(--color-success, #00b894) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(var(--color-success-rgb, 61, 205, 88), 0.35)}.btn-gradient:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-success, #2ebd4a) 0%, var(--color-success, #00a381) 100%);box-shadow:0 6px 20px rgba(var(--color-success-rgb, 61, 205, 88), 0.5);transform:translateY(-1px)}.btn-gradient:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(var(--color-success-rgb, 61, 205, 88), 0.3);transform:translateY(0)}.btn-gradient-blue{background:linear-gradient(135deg, var(--color-primary, #10b981) 0%, var(--color-primary, #8b5cf6) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(var(--color-primary-rgb, 59, 130, 246), 0.35)}.btn-gradient-blue:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-primary-hover, #2563eb) 0%, var(--color-primary, #7c3aed) 100%);box-shadow:0 6px 20px rgba(var(--color-primary-rgb, 59, 130, 246), 0.5);transform:translateY(-1px)}.btn-gradient-blue:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.3);transform:translateY(0)}.btn-gradient-purple{background:linear-gradient(135deg, var(--color-primary, #8b5cf6) 0%, var(--color-danger, #ec4899) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(139, 92, 246, 0.35)}.btn-gradient-purple:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-primary, #7c3aed) 0%, var(--color-danger, #db2777) 100%);box-shadow:0 6px 20px rgba(139, 92, 246, 0.5);transform:translateY(-1px)}.btn-gradient-purple:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(139, 92, 246, 0.3);transform:translateY(0)}.btn-gradient-orange{background:linear-gradient(135deg, var(--color-danger, #f97316) 0%, var(--color-danger, #ef4444) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(249, 115, 22, 0.35)}.btn-gradient-orange:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-danger, #ea6c0a) 0%, var(--color-danger-hover, #dc2626) 100%);box-shadow:0 6px 20px rgba(249, 115, 22, 0.5);transform:translateY(-1px)}.btn-gradient-orange:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(249, 115, 22, 0.3);transform:translateY(0)}.btn-gradient-ocean{background:linear-gradient(135deg, var(--color-primary, #0ea5e9) 0%, var(--color-info, #06b6d4) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(14, 165, 233, 0.35)}.btn-gradient-ocean:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-primary, #0284c7) 0%, var(--color-info-hover, #0891b2) 100%);box-shadow:0 6px 20px rgba(14, 165, 233, 0.5);transform:translateY(-1px)}.btn-gradient-ocean:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(14, 165, 233, 0.3);transform:translateY(0)}.btn-gradient-sunset{background:linear-gradient(135deg, var(--color-warning, #f59e0b) 0%, var(--color-danger, #f97316) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(var(--color-warning-rgb, 245, 158, 11), 0.35)}.btn-gradient-sunset:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-warning-hover, #d97706) 0%, var(--color-danger, #ea6c0a) 100%);box-shadow:0 6px 20px rgba(var(--color-warning-rgb, 245, 158, 11), 0.5);transform:translateY(-1px)}.btn-gradient-sunset:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(var(--color-warning-rgb, 245, 158, 11), 0.3);transform:translateY(0)}.btn-gradient-candy{background:linear-gradient(135deg, var(--color-danger, #ec4899) 0%, var(--color-danger, #ef4444) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(236, 72, 153, 0.35)}.btn-gradient-candy:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-danger, #db2777) 0%, var(--color-danger-hover, #dc2626) 100%);box-shadow:0 6px 20px rgba(236, 72, 153, 0.5);transform:translateY(-1px)}.btn-gradient-candy:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(236, 72, 153, 0.3);transform:translateY(0)}.btn-gradient-gold{background:linear-gradient(135deg, var(--color-danger, #fbbf24) 0%, var(--color-warning-hover, #d97706) 100%);color:var(--text-standard, #ffffff);border:none;box-shadow:0 4px 15px rgba(251, 191, 36, 0.35);text-shadow:0 1px 2px rgba(0, 0, 0, 0.15)}.btn-gradient-gold:hover:not(.btn-disabled){background:linear-gradient(135deg, var(--color-warning, #f59e0b) 0%, var(--color-danger, #b45309) 100%);box-shadow:0 6px 20px rgba(251, 191, 36, 0.5);transform:translateY(-1px)}.btn-gradient-gold:active:not(.btn-disabled){box-shadow:0 2px 8px rgba(251, 191, 36, 0.3);transform:translateY(0)}.btn-xxxs{--ui-button-height:20px;font-size:10px;padding:0 6px}.btn-xxs{--ui-button-height:24px;font-size:11px;padding:0 8px}.btn-xs{--ui-button-height:28px;font-size:12px;padding:0 10px}.btn-sm{--ui-button-height:32px;font-size:13px;padding:0 12px}.btn-md{--ui-button-height:44px;font-size:14px;padding:0 18px}.btn-lg{--ui-button-height:52px;font-size:15px;padding:0 22px}.btn-xl{--ui-button-height:60px;font-size:16px;padding:0 28px}.btn-xxl{--ui-button-height:68px;font-size:18px;padding:0 36px}.btn-xxxl{--ui-button-height:84px;font-size:20px;padding:0 48px}.btn-shape-square,.btn-shape-sharp{border-radius:0}.btn-shape-rounded{border-radius:var(--button-border-radius, 8px)}.btn-shape-rounded-lg{border-radius:var(--button-border-radius, 12px)}.btn-shape-pill,.btn-shape-oval{border-radius:var(--button-border-radius, 9999px);padding-left:1.5rem !important;padding-right:1.5rem !important}.btn-icon-only{padding:0 !important;width:var(--ui-button-height, 40px) !important;min-width:var(--ui-button-height, 40px) !important;max-width:var(--ui-button-height, 40px) !important;flex:0 0 var(--ui-button-height, 40px) !important;aspect-ratio:1/1 !important;display:inline-flex;align-items:center;justify-content:center}.btn-icon-only .btn-content{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:0;gap:0}.btn-icon-only .btn-label-group{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0;gap:0}.btn-icon-only .btn-icon{display:flex;align-items:center;justify-content:center;margin:0}.btn-icon-only .btn-label{margin:0;font-size:0.95em;font-weight:700;line-height:1;text-transform:uppercase;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.btn-shape-circle{border-radius:50% !important;aspect-ratio:1/1 !important;padding:0 !important;width:var(--ui-button-height, 40px) !important;min-width:var(--ui-button-height, 40px) !important;max-width:var(--ui-button-height, 40px) !important;display:inline-flex;align-items:center;justify-content:center}.btn-shape-chip{border-radius:100px;height:28px !important;font-size:11px;padding:0 12px}.btn-disabled{opacity:0.5;cursor:not-allowed;filter:grayscale(0.8);pointer-events:none}.btn-loading{cursor:wait}.btn-selected{background:var(--btn-selected-bg, rgba(var(--color-primary-rgb, 59, 130, 246), 0.12));color:var(--btn-selected-color, var(--color-primary, #2563eb));font-weight:700;outline:none;box-shadow:inset 0 0 0 1px rgba(var(--color-primary-rgb, 59, 130, 246), 0.25)}.btn-selected::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 8px rgba(var(--color-primary-rgb, 59, 130, 246), 0.15);pointer-events:none;z-index:-1}.btn-ghost.btn-selected{background:var(--btn-selected-bg, rgba(37, 99, 235, 0.1));color:var(--btn-selected-color, var(--text-standard))}.btn-ghost.btn-selected:hover:not(.btn-disabled){background:var(--btn-selected-hover-bg, rgba(37, 99, 235, 0.16))}.btn-content{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;width:auto;min-width:0;max-width:100%;position:relative;z-index:1;flex:1 1 auto;overflow:hidden}.btn-icon-pos-left .btn-label-row{flex-direction:row}.btn-icon-pos-right .btn-label-row{flex-direction:row}.btn-icon-pos-top,.btn-icon-pos-bottom{height:auto;min-height:var(--ui-button-height);padding-top:10px !important;padding-bottom:10px !important}.btn-icon-pos-top .btn-label-row,.btn-icon-pos-bottom .btn-label-row{gap:4px !important;align-items:center !important;justify-content:center !important}.btn-icon-pos-top .btn-title-block,.btn-icon-pos-bottom .btn-title-block{align-items:center !important;text-align:center !important}.btn-icon-pos-top .btn-label-row{flex-direction:column}.btn-icon-pos-bottom .btn-label-row{flex-direction:column}.btn-label-group{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1 1 auto;min-width:0;max-width:100%;overflow:hidden}.btn-label-group.is-column{flex-direction:column;gap:4px}.btn-counter{margin-inline-start:8px;vertical-align:middle;flex-shrink:0}.btn-icon,.btn-spinner{display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-label{display:inline-flex;align-items:center;gap:inherit;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:normal}.btn-img{height:1.5em;width:auto;margin:0 4px;object-fit:contain;flex-shrink:0}.btn-avatar{position:relative;flex-shrink:0;border-radius:50%;overflow:visible;display:flex;align-items:center;justify-content:center;width:calc(var(--ui-button-height) * 0.65);height:calc(var(--ui-button-height) * 0.65);background:rgba(0, 0, 0, 0.05);margin-right:8px}.btn-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.btn-avatar .status-dot{position:absolute;bottom:-1px;right:-1px;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--bg-primary, #ffffff);z-index:1}.btn-avatar .status-dot.status-online{background-color:var(--color-success, #10b981)}.btn-avatar .status-dot.status-offline{background-color:var(--text-muted, #6b7280)}.btn-avatar .status-dot.status-busy{background-color:var(--color-danger, #ef4444)}.btn-avatar .status-dot.status-away{background-color:var(--color-warning, #f59e0b)}.btn-icon-only .btn-avatar,.btn-shape-circle .btn-avatar{margin-inline-end:0;width:100%;height:100%;border-radius:inherit}.btn-icon-only .btn-avatar img,.btn-shape-circle .btn-avatar img{border-radius:inherit}.btn-has-bg{background-size:cover;background-position:center;position:relative}.btn-has-bg::before{content:"";position:absolute;inset:0;background:rgba(0, 0, 0, 0.3);transition:opacity 0.2s}.btn-has-bg:hover::before{background:rgba(0, 0, 0, 0.4)}.elevation-0{box-shadow:none}.elevation-1{box-shadow:0 2px 4px rgba(0, 0, 0, 0.1)}.elevation-2{box-shadow:0 4px 8px rgba(0, 0, 0, 0.12)}.elevation-3{box-shadow:0 8px 16px rgba(0, 0, 0, 0.15)}.elevation-4{box-shadow:0 12px 24px rgba(0, 0, 0, 0.18)}.elevation-5{box-shadow:0 20px 40px rgba(0, 0, 0, 0.2)}ui-badge.is-inline{margin:0px}ui-badge.is-absolute{position:absolute;z-index:10;pointer-events:none;width:0;height:0;--badge-border:2px solid var(--btn-badge-border, var(--bg-primary, #ffffff))}.pos-top-right{top:-1rem;inset-inline-end:0}.pos-top-left{top:-1rem;inset-inline-start:0}.pos-bottom-right{bottom:1rem;inset-inline-end:0}.pos-bottom-left{bottom:1rem;inset-inline-start:0}.btn-ripple-container{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.ripple{position:absolute;border-radius:50%;background:rgba(255, 255, 255, 0.3);transform:scale(0);animation:ripple-anim 0.6s linear}@keyframes ripple-anim{to{transform:scale(4);opacity:0}}.btn-soft{box-shadow:none;border:none}.btn-soft.btn-primary,.btn-soft.btn-success,.btn-soft.btn-danger,.btn-soft.btn-warning,.btn-soft.btn-info{color:var(--label-color)}.btn-soft.btn-secondary{color:var(--label-subtitle-color)}.btn-soft:hover:not(.btn-disabled){background:currentColor;color:var(--text-standard, #ffffff);filter:none}.btn-active{transform:translateY(1px);filter:brightness(0.9) !important;box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.1) !important}.btn-skeleton{pointer-events:none;background:var(--bg-secondary, #f1f5f9) !important;border:none !important;color:transparent !important;box-shadow:none !important;position:relative;overflow:hidden}.btn-skeleton *{opacity:0 !important}.btn-skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);animation:btn-shimmer 1.5s infinite}@keyframes btn-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.btn-gradient-sunset{background:linear-gradient(135deg, var(--color-primary, #f093fb) 0%, var(--color-danger, #f5576c) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-gradient-ocean{background:linear-gradient(135deg, var(--color-primary, #4facfe) 0%, var(--color-primary, #00f2fe) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-gradient-midnight{background:linear-gradient(135deg, var(--bg-primary, #232526) 0%, var(--bg-secondary, #414345) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-gradient-forest{background:linear-gradient(135deg, var(--color-primary, #11998e) 0%, var(--color-success, #38ef7d) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-gradient-blaze{background:linear-gradient(135deg, var(--color-danger, #ff512f) 0%, var(--color-danger, #dd2476) 100%);color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-dropdown-icon{margin-inline-start:4px;display:flex;align-items:center;opacity:0.8;transition:transform 0.2s}.btn:hover .btn-dropdown-icon{transform:translateY(1px)}.btn-magnetic,.btn-tilt{transition:transform 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);will-change:transform;transform-style:preserve-3d}.btn-glow{position:relative}.btn-glow::before{content:"";position:absolute;inset:-2px;background:currentColor;border-radius:inherit;filter:blur(8px);opacity:0.4;z-index:-1;animation:btn-glow-pulse 2s ease-in-out infinite}@keyframes btn-glow-pulse{0%,100%{opacity:0.3;transform:scale(1)}50%{opacity:0.6;transform:scale(1.05)}}.confetti-particle{position:absolute;top:50%;left:50%;width:8px;height:8px;background-color:var(--particle-color);border-radius:2px;pointer-events:none;z-index:10;animation:confetti-burst 0.8s ease-out forwards}@keyframes confetti-burst{0%{transform:translate(-50%, -50%) rotate(0deg) scale(1);opacity:1}100%{transform:translate(calc(cos(var(--particle-angle)) * 100px * var(--particle-velocity)), calc(sin(var(--particle-angle)) * 100px * var(--particle-velocity))) rotate(720deg) scale(0);opacity:0}}.btn-primary.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-primary.btn-glow::before{background:var(--ui-primary, var(--color-success, #3dcd58))}.btn-success.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-success.btn-glow::before{background:var(--ui-success, var(--color-success, #10b981))}.btn-danger.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-danger.btn-glow::before{background:var(--ui-danger, var(--color-danger, #ef4444))}.btn-warning.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-warning.btn-glow::before{background:var(--ui-warning, var(--color-warning, #f59e0b))}.btn-info.btn-glow{color:var(--bg-primary, var(--text-standard, #ffffff))}.btn-info.btn-glow::before{background:var(--ui-info, var(--color-info-hover, #0891b2))}.btn-glossy{position:relative;overflow:hidden}.btn-glossy::after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right, transparent, rgba(255, 255, 255, 0.4), transparent);transform:skewX(-25deg);animation:glossy-sweep 4s infinite ease-in-out}@keyframes glossy-sweep{0%{left:-100%}30%{left:150%}100%{left:150%}}.btn-icon{display:inline-flex;transition:transform 0.2s cubic-bezier(0.4, 0, 0.2, 1)}.btn-icon ui-icon{transition:opacity 0.2s, transform 0.2s}.btn:hover .btn-icon ui-icon{transform:scale(1.1)}.btn-hold-track{position:absolute;top:0;left:0;height:100%;background:rgba(0, 0, 0, 0.15);pointer-events:none;z-index:0;transition:width 0.05s linear}.btn-has-theme{--btn-theme-bg:var(--btn-theme-color, var(--color-primary, #10b981));--btn-theme-text:var(--text-standard, #ffffff);background:var(--btn-theme-bg);color:var(--btn-theme-text);border:none}.btn-has-theme:hover:not(.btn-disabled){background:color-mix(in srgb, var(--btn-theme-bg), #000 10%);box-shadow:0 4px 12px color-mix(in srgb, var(--btn-theme-bg), transparent 70%)}.btn-has-theme.btn-outline{background:transparent;color:var(--btn-theme-bg);border:1px solid var(--btn-theme-bg)}.btn-has-theme.btn-outline:hover:not(.btn-disabled){background:var(--btn-theme-bg);color:var(--text-standard, #ffffff)}.btn-has-theme.btn-soft{color:var(--btn-theme-bg)}.btn-has-theme.btn-soft:hover:not(.btn-disabled){background:var(--btn-theme-bg);color:var(--text-standard, #ffffff)}.btn-progress-track{position:absolute;top:0;left:0;height:100%;background:color-mix(in srgb, currentColor, transparent 80%);z-index:1;pointer-events:none;transition:width 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.btn-primary .btn-progress-track{background:rgba(0, 0, 0, 0.2)}.btn-outline .btn-progress-track{background:color-mix(in srgb, currentColor, transparent 85%)}.btn-accordion{background:transparent;border:none;padding:0;height:auto;min-height:48px;width:100%;border-radius:0;box-shadow:none;color:inherit;--button-width:100%}.btn-accordion .btn-content,.btn-accordion .btn-label-row{padding:0 20px;justify-content:space-between}.btn-accordion .btn-label-block,.btn-accordion .btn-title{align-items:stretch;text-align:left;width:100%;display:flex;flex-direction:column}.btn-accordion:hover:not(.btn-disabled){background:rgba(0, 0, 0, 0.02);transform:none;box-shadow:none;filter:none}.btn-accordion:active:not(.btn-disabled){background:rgba(0, 0, 0, 0.05);transform:none}.btn-shaking{animation:btn-shake 0.4s cubic-bezier(0.36, 0.07, 0.19, 0.97) both}@keyframes btn-shake{10%,90%{transform:translate3d(-1px, 0, 0)}20%,80%{transform:translate3d(2px, 0, 0)}30%,50%,70%{transform:translate3d(-4px, 0, 0)}40%,60%{transform:translate3d(4px, 0, 0)}}.btn-rainbow.btn-glow::before{animation:btn-rainbow-glow 4s linear infinite;opacity:0.6}@keyframes btn-rainbow-glow{0%{background:var(--color-danger, #ff0000);filter:hue-rotate(0deg) blur(10px)}100%{background:var(--color-danger, #ff0000);filter:hue-rotate(360deg) blur(10px)}}.btn-liquid-progress{overflow:hidden}.btn-liquid-progress::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:rgba(255, 255, 255, 0.2);border-radius:38%;animation:btn-liquid-wave 3s linear infinite}@keyframes btn-liquid-wave{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.btn-split{padding-right:0 !important}.btn-split .btn-dropdown-icon{height:100%;padding:0 12px;margin-inline-start:8px;border-inline-start:1px solid rgba(255, 255, 255, 0.2);display:flex;align-items:center;transition:background 0.2s}.btn-split .btn-dropdown-icon:hover{background:rgba(0, 0, 0, 0.1)}.btn-confirm-pop{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);background:var(--bg-primary, #1f2937);color:var(--text-standard, #ffffff);padding:12px 16px;border-radius:12px;font-size:13px;display:flex;align-items:center;gap:12px;white-space:nowrap;box-shadow:0 10px 25px rgba(0, 0, 0, 0.2);z-index:100;animation:pop-in 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.btn-confirm-pop::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--border-strong, #1f2937)}.btn-confirm-pop .pop-actions{display:flex;gap:6px}.btn-confirm-pop .pop-actions button{width:24px;height:24px;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;transition:transform 0.1s}.btn-confirm-pop .pop-actions button:active{transform:scale(0.9)}.btn-confirm-pop .pop-actions .pop-btn-no{background:var(--text-secondary, #374151);color:var(--bg-primary, #ffffff)}.btn-confirm-pop .pop-actions .pop-btn-yes{background:var(--color-success, #10b981);color:var(--bg-primary, #ffffff)}@keyframes pop-in{from{opacity:0;transform:translateX(-50%) translateY(10px) scale(0.9)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}.btn-reveal-fade-in{animation:btn-fade-in 0.6s ease-out forwards}.btn-reveal-slide-up{animation:btn-slide-up 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards}.btn-reveal-zoom{animation:btn-zoom-in 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards}@keyframes btn-fade-in{from{opacity:0}to{opacity:1}}@keyframes btn-slide-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes btn-zoom-in{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:scale(1)}}.btn-tooltip-pop{position:absolute;top:-10px;left:50%;transform:translateX(-50%) translateY(-100%);background:var(--bg-primary, #1f2937);color:var(--text-standard, #ffffff);padding:4px 10px;border-radius:6px;font-size:11px;white-space:nowrap;pointer-events:none;z-index:1000;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1);animation:tooltip-in 0.2s ease-out}.btn-tooltip-pop::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:4px solid transparent;border-top-color:var(--border-strong, #1f2937)}@keyframes tooltip-in{from{opacity:0;transform:translateX(-50%) translateY(-90%) scale(0.95)}to{opacity:1;transform:translateX(-50%) translateY(-100%) scale(1)}}.btn-animate-gradient{background-size:240% 240% !important;animation:bg-living-gradient 6s ease infinite !important}@keyframes bg-living-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.btn-pulse{position:relative}.btn-pulse::before{content:"";position:absolute;inset:-6px;background:inherit;border-radius:inherit;opacity:0.4;z-index:-1;animation:btn-energy-pulse 2s cubic-bezier(0.24, 0, 0.38, 1) infinite}@keyframes btn-energy-pulse{0%{transform:scale(1);opacity:0.4;filter:blur(2px)}100%{transform:scale(1.3);opacity:0;filter:blur(8px)}}.btn-group-start{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important;border-right:0.5px solid rgba(0, 0, 0, 0.1) !important}.btn-group-middle{border-radius:0 !important;border-right:0.5px solid rgba(0, 0, 0, 0.1) !important}.btn-group-end{border-top-left-radius:0 !important;border-bottom-left-radius:0 !important}.btn-is-slider{background:rgba(0, 0, 0, 0.05) !important;border:1px solid rgba(0, 0, 0, 0.1) !important;box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.05) !important;color:var(--text-muted, #64748b) !important;cursor:default !important;overflow:hidden;position:relative}.btn-is-slider:hover{transform:none !important}.btn-is-slider .btn-slider-handle{position:absolute;top:4px;height:calc(100% - 8px);width:52px;background:var(--bg-primary, #ffffff);border-radius:inherit;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);cursor:grab;z-index:10;transition:left 0.05s linear;color:var(--ui-primary, var(--color-success, #3dcd58))}.btn-is-slider .btn-slider-handle:active{cursor:grabbing}.btn-is-slider.btn-primary .btn-slider-handle{color:var(--ui-primary, var(--color-success, #3dcd58))}.btn-is-slider.btn-danger .btn-slider-handle{color:var(--ui-danger, var(--color-danger, #ef4444))}.btn-is-slider.btn-success .btn-slider-handle{color:var(--ui-success, var(--color-success, #10b981))}.btn-icon-hover-rotate:hover:not(.btn-disabled) .btn-icon{transform:rotate(15deg);transition:transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.btn-follow-glow::before{content:"";position:absolute;inset:0;background:radial-gradient(circle 80px at var(--glow-x, 0) var(--glow-y, 0), rgba(255, 255, 255, 0.15), transparent);opacity:0;transition:opacity 0.3s;pointer-events:none;z-index:1}.btn-follow-glow:hover::before{opacity:1}.btn-spinning .btn-icon{animation:btn-icon-spin 0.6s cubic-bezier(0.34, 1.56, 0.64, 1)}@keyframes btn-icon-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.btn-shatter{position:absolute;background:rgba(0, 0, 0, 0.6);pointer-events:none;z-index:100;animation:btn-shatter-explode 0.8s cubic-bezier(0.1, 0.8, 0.3, 1) forwards}@keyframes btn-shatter-explode{0%{transform:translate(0, 0) rotate(0);opacity:1}100%{transform:translate(var(--vx), var(--vy)) rotate(var(--vr));opacity:0}}.btn-spinner.is-ring{width:24px;height:24px}.btn-spinner.is-ring .progress-ring{transform:rotate(-90deg);width:100%;height:100%}.btn-spinner.is-ring .progress-ring circle{stroke-linecap:round}.btn-spinner.is-ring .progress-ring .ring-bg{stroke:rgba(255, 255, 255, 0.1)}.btn-spinner.is-ring .progress-ring .ring-fg{stroke:currentColor;transition:stroke-dasharray 0.3s ease}.btn-primary .ring-bg{stroke:rgba(0, 0, 0, 0.1)}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--ui-surface), 0 0 0 4px var(--ui-primary, var(--color-success, #3dcd58)) !important;z-index:100}.btn:active:not(.btn-disabled),.btn-active:not(.btn-disabled){transform:translateY(1px) scale(0.96);box-shadow:0 1px 2px rgba(0, 0, 0, 0.1) !important;filter:brightness(0.95)}.btn-raised:active:not(.btn-disabled){box-shadow:0 2px 4px rgba(0, 0, 0, 0.15) !important}@media (max-width: 640px){.btn-hide-mobile{padding:0 !important;width:var(--ui-button-height) !important;min-width:var(--ui-button-height) !important}.btn-hide-mobile .btn-label,.btn-hide-mobile .btn-label-group,.btn-hide-mobile .btn-dropdown-icon{display:none !important}.btn-hide-mobile .btn-icon{margin:0 !important}}.btn-progress-fill{position:absolute;left:0;top:0;bottom:0;background:rgba(255, 255, 255, 0.2);border-radius:inherit;pointer-events:none;transition:width 0.4s ease;z-index:0}.btn-image{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}.btn-counter-badge{display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;height:18px;min-width:18px;padding:0 6px;border-radius:999px;background:var(--btn-counter-bg, rgba(0, 0, 0, 0.08));color:var(--btn-counter-color, inherit);margin-inline-start:8px;line-height:1;flex-shrink:0;box-sizing:border-box;text-shadow:none}.btn-primary .btn-counter-badge,.btn-success .btn-counter-badge,.btn-danger .btn-counter-badge,.btn-warning .btn-counter-badge,.btn-info .btn-counter-badge,.btn-dark .btn-counter-badge{background:var(--btn-counter-bg, rgba(255, 255, 255, 0.25));color:var(--btn-counter-color, #ffffff)}.btn-secondary .btn-counter-badge{background:var(--btn-counter-bg, rgba(0, 0, 0, 0.12));color:var(--btn-counter-color, inherit)}.btn-outline .btn-counter-badge,.btn-ghost .btn-counter-badge{background:var(--btn-counter-bg, rgba(0, 0, 0, 0.08));color:var(--btn-counter-color, var(--btn-label-color, var(--label-color, var(--text-secondary, #374151))))}.btn-soft .btn-counter-badge{background:var(--btn-counter-bg, rgba(0, 0, 0, 0.06));color:var(--btn-counter-color, inherit)}.btn-soft.btn-primary .btn-counter-badge{background:var(--btn-counter-bg, rgba(59, 130, 246, 0.15));color:var(--btn-counter-color, var(--color-primary, #3b82f6))}.btn-soft.btn-success .btn-counter-badge{background:var(--btn-counter-bg, rgba(16, 185, 129, 0.15));color:var(--btn-counter-color, var(--color-success, #10b981))}.btn-soft.btn-danger .btn-counter-badge{background:var(--btn-counter-bg, rgba(239, 68, 68, 0.15));color:var(--btn-counter-color, var(--color-danger, #ef4444))}.btn-soft.btn-warning .btn-counter-badge{background:var(--btn-counter-bg, rgba(245, 158, 11, 0.15));color:var(--btn-counter-color, var(--color-warning, #f59e0b))}.btn-soft.btn-info .btn-counter-badge{background:var(--btn-counter-bg, rgba(6, 182, 212, 0.15));color:var(--btn-counter-color, var(--color-info, #06b6d4))}.btn-gradient .btn-counter-badge,.btn-gradient-blue .btn-counter-badge,.btn-gradient-purple .btn-counter-badge,.btn-gradient-orange .btn-counter-badge,.btn-gradient-ocean .btn-counter-badge,.btn-gradient-sunset .btn-counter-badge,.btn-gradient-candy .btn-counter-badge,.btn-gradient-gold .btn-counter-badge,.btn-gradient-midnight .btn-counter-badge,.btn-gradient-forest .btn-counter-badge,.btn-gradient-blaze .btn-counter-badge{background:var(--btn-counter-bg, rgba(255, 255, 255, 0.25));color:var(--btn-counter-color, #ffffff)}.btn-counter-badge.counter-primary{background-color:var(--color-primary, #3b82f6) !important;color:#ffffff !important}.btn-counter-badge.counter-success{background-color:var(--color-success, #10b981) !important;color:#ffffff !important}.btn-counter-badge.counter-danger{background-color:var(--color-danger, #ef4444) !important;color:#ffffff !important}.btn-counter-badge.counter-warning{background-color:var(--color-warning, #f59e0b) !important;color:#ffffff !important}.btn-counter-badge.counter-info{background-color:var(--color-info, #06b6d4) !important;color:#ffffff !important}.btn-counter-badge.counter-secondary{background-color:var(--color-secondary, #6b7280) !important;color:#ffffff !important}`;
|
|
2004
2016
|
|
|
2005
2017
|
const Button = class {
|
|
2006
2018
|
get el() { return index.getElement(this); }
|
|
@@ -2088,6 +2100,14 @@ const Button = class {
|
|
|
2088
2100
|
grow = false;
|
|
2089
2101
|
/** Badge content */
|
|
2090
2102
|
badge;
|
|
2103
|
+
/** Counter badge content (inline right side of text) */
|
|
2104
|
+
counter;
|
|
2105
|
+
/** Counter badge color variant (primary, success, danger, etc.) */
|
|
2106
|
+
counterColor;
|
|
2107
|
+
/** Custom background color for the counter badge */
|
|
2108
|
+
counterCustomColor;
|
|
2109
|
+
/** Custom text color for the counter badge */
|
|
2110
|
+
counterCustomTextColor;
|
|
2091
2111
|
/** Badge color variant (primary, success, danger, etc.) */
|
|
2092
2112
|
badgeColor = 'danger';
|
|
2093
2113
|
/** Custom background color for the badge */
|
|
@@ -2117,6 +2137,21 @@ const Button = class {
|
|
|
2117
2137
|
copied = false;
|
|
2118
2138
|
/** Click event */
|
|
2119
2139
|
buttonClick;
|
|
2140
|
+
getBadgeColor() {
|
|
2141
|
+
const finalBadgeColor = this.badgeColor;
|
|
2142
|
+
if (finalBadgeColor === this.color) {
|
|
2143
|
+
if (this.color === 'danger') {
|
|
2144
|
+
return 'warning';
|
|
2145
|
+
}
|
|
2146
|
+
else if (this.color === 'warning') {
|
|
2147
|
+
return 'danger';
|
|
2148
|
+
}
|
|
2149
|
+
else {
|
|
2150
|
+
return 'danger';
|
|
2151
|
+
}
|
|
2152
|
+
}
|
|
2153
|
+
return finalBadgeColor;
|
|
2154
|
+
}
|
|
2120
2155
|
handleClick = (event) => {
|
|
2121
2156
|
if (this.disabled || this.loading) {
|
|
2122
2157
|
event.preventDefault();
|
|
@@ -2176,7 +2211,8 @@ const Button = class {
|
|
|
2176
2211
|
* are not needed — the DOM order itself drives the visual order.
|
|
2177
2212
|
*/
|
|
2178
2213
|
renderButtonContent(iconElement, avatarElement, spinner) {
|
|
2179
|
-
const
|
|
2214
|
+
const hostTitle = this.el.getAttribute('title') || '';
|
|
2215
|
+
const trimmedLabel = (this.label || hostTitle).trim();
|
|
2180
2216
|
const trimmedDescription = (this.description || this.subtitle || '').trim();
|
|
2181
2217
|
const hasLabel = !!trimmedLabel;
|
|
2182
2218
|
const hasDescription = !!trimmedDescription;
|
|
@@ -2186,14 +2222,25 @@ const Button = class {
|
|
|
2186
2222
|
return this.loading ? spinner : (avatarElement || iconElement || index.h("slot", null));
|
|
2187
2223
|
}
|
|
2188
2224
|
const badgeInlineLeft = this.badge && (this.badgePosition === 'inline-left' ||
|
|
2189
|
-
(this.rtl && this.badgePosition === 'inline-right')) ? (index.h("ui-badge", { class: "btn-badge-inline", value: this.badge.toString(), color: this.
|
|
2225
|
+
(this.rtl && this.badgePosition === 'inline-right')) ? (index.h("ui-badge", { class: "btn-badge-inline", value: this.badge.toString(), color: this.getBadgeColor(), "custom-color": this.badgeCustomColor, "custom-text-color": this.badgeCustomTextColor, size: "sm" })) : null;
|
|
2190
2226
|
const badgeInlineRight = this.badge && (this.badgePosition === 'inline-right' ||
|
|
2191
|
-
(this.rtl && this.badgePosition === 'inline-left')) ? (index.h("ui-badge", { class: "btn-badge-inline", value: this.badge.toString(), color: this.
|
|
2227
|
+
(this.rtl && this.badgePosition === 'inline-left')) ? (index.h("ui-badge", { class: "btn-badge-inline", value: this.badge.toString(), color: this.getBadgeColor(), "custom-color": this.badgeCustomColor, "custom-text-color": this.badgeCustomTextColor, size: "sm" })) : null;
|
|
2192
2228
|
const showSpinnerAtStart = this.loading && (this.loadingPosition === 'left' || (this.loadingPosition === 'icon' && !iconElement && !avatarElement));
|
|
2193
2229
|
const showSpinnerAtEnd = this.loading && this.loadingPosition === 'right';
|
|
2194
2230
|
const showSpinnerCentered = this.loading && (this.loadingPosition === 'center' || this.loadingPosition === 'icon');
|
|
2195
2231
|
const iconBlock = (avatarElement || iconElement || showSpinnerCentered) ? (index.h("div", { class: "btn-icon-block", part: "icon-block" }, showSpinnerCentered ? spinner : (avatarElement || iconElement))) : null;
|
|
2196
|
-
const
|
|
2232
|
+
const counterStyles = {};
|
|
2233
|
+
if (this.counterCustomColor) {
|
|
2234
|
+
counterStyles['background-color'] = this.counterCustomColor;
|
|
2235
|
+
}
|
|
2236
|
+
if (this.counterCustomTextColor) {
|
|
2237
|
+
counterStyles['color'] = this.counterCustomTextColor;
|
|
2238
|
+
}
|
|
2239
|
+
const counterElement = this.counter !== undefined && this.counter !== '' ? (index.h("span", { class: {
|
|
2240
|
+
'btn-counter-badge': true,
|
|
2241
|
+
[`counter-${this.counterColor}`]: !!this.counterColor
|
|
2242
|
+
}, style: counterStyles, part: "counter" }, this.counter)) : null;
|
|
2243
|
+
const labelBlock = showLabel ? (index.h("div", { class: "btn-label-block", part: "label-block" }, index.h("div", { class: "btn-title", part: "title" }, this.copied ? '✓ Copied!' : (hasLabel ? trimmedLabel : index.h("slot", null)), counterElement), hasDescription && (index.h("div", { class: `btn-subtitle btn-subtitle-${this.descriptionPosition}`, part: "subtitle" }, trimmedDescription)))) : null;
|
|
2197
2244
|
return (index.h("div", { class: {
|
|
2198
2245
|
'btn-label-row': true,
|
|
2199
2246
|
[`icon-pos-${this.iconPosition}`]: true
|
|
@@ -2206,7 +2253,8 @@ const Button = class {
|
|
|
2206
2253
|
const Tag = (this.href ? 'a' : 'button');
|
|
2207
2254
|
const normalizedSize = componentSize.normalizeComponentSize(this.size, 'md');
|
|
2208
2255
|
const spinner = this.loading ? (index.h("span", { class: `btn-spinner btn-spinner-${this.loadingPosition}` }, index.h("ui-loader", { size: "xs", color: "currentColor" }))) : null;
|
|
2209
|
-
const
|
|
2256
|
+
const hostTitle = this.el.getAttribute('title') || '';
|
|
2257
|
+
const sanitizedLabel = this.ariaLabel || (this.label || hostTitle || this.el.textContent || '').trim();
|
|
2210
2258
|
const finalAriaLabel = security.sanitizeHTML(sanitizedLabel);
|
|
2211
2259
|
const renderProps = this.href ? {
|
|
2212
2260
|
href: this.href,
|
|
@@ -2255,7 +2303,7 @@ const Button = class {
|
|
|
2255
2303
|
this.rtl && 'btn-rtl',
|
|
2256
2304
|
this.reveal !== 'none' && `reveal-${this.reveal}`,
|
|
2257
2305
|
].filter(Boolean).join(' ');
|
|
2258
|
-
return (index.h(Tag, { key: '
|
|
2306
|
+
return (index.h(Tag, { key: '1a633068acc34fcf0fa27d2035b26452c17446c1', ...renderProps, style: styles, class: hostClass, part: "button", dir: this.rtl ? 'rtl' : 'ltr', onClick: this.handleClick, ref: (el) => (this.nativeButton = el) }, !this.noRipple && index.h("span", { key: 'c39b6a3c884ddcb8b1123a92fd325a39b6749bdf', class: "btn-ripple-container" }), index.h("span", { key: 'f7ef1d361081711c95019718ca64b7215b59f235', class: "btn-content" }, isImageButton ? (index.h("fragment", null, this.loading && spinner, index.h("img", { src: this.imgSrc, alt: this.imgAlt || '', class: "btn-image" }))) : (this.renderButtonContent(iconElement, avatarElement, spinner))), this.badge && !this.badgePosition.startsWith('inline') && (index.h("ui-badge", { key: '63cf65ca304184c969dedd157730c116823d9ba9', class: `btn-badge is-absolute pos-${this.badgePosition}`, value: this.badge.toString(), color: this.getBadgeColor(), "custom-color": this.badgeCustomColor, "custom-text-color": this.badgeCustomTextColor, size: "sm" })), this.progress !== undefined && (index.h("span", { key: 'e9ea36586c110dc064dc9b8676b83765d5ce281a', class: "btn-progress-fill", style: { width: `${Math.min(100, Math.max(0, this.progress))}%` } }))));
|
|
2259
2307
|
}
|
|
2260
2308
|
static get delegatesFocus() { return true; }
|
|
2261
2309
|
static get formAssociated() { return true; }
|
|
@@ -2929,7 +2977,7 @@ const ButtonToggleGroup = class {
|
|
|
2929
2977
|
};
|
|
2930
2978
|
ButtonToggleGroup.style = buttonToggleGroupCss();
|
|
2931
2979
|
|
|
2932
|
-
const contextMenuCss = () => `.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}.ctx-menu{position:fixed;z-index:20000;min-width:220px;max-width:min(320px, 100vw - 16px);--ctx-bg:var(--bg-primary, #ffffff);--ctx-fg:var(--text-primary, #000000);--ctx-border:var(--border-default, #d9d9d9);--ctx-hover:var(--bg-secondary, #e6e6e6);--ctx-active:rgba(0, 138, 22, 0.08);--ctx-active-fg:var(--color-success, #008a16);--ctx-active-icon:var(--color-success, #008a16);background-color:var(--ctx-bg, #ffffff) !important;background-image:none !important;color:var(--ctx-fg);border:1px solid var(--ctx-border);border-radius:10px;box-shadow:0 12px 28px rgba(0, 0, 0, 0.22), 0 8px 10px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.05);padding:6px;animation:ctx-enter 120ms ease-out;transform-origin:var(--ctx-origin-x, 0%) var(--ctx-origin-y, 0%);scrollbar-width:thin;scrollbar-color:rgba(0, 0, 0, 0.2) transparent}.ctx-menu::-webkit-scrollbar{width:8px}.ctx-menu::-webkit-scrollbar-track{background:transparent}.ctx-menu::-webkit-scrollbar-thumb{background:rgba(0, 0, 0, 0.2);border-radius:4px}.ctx-menu::-webkit-scrollbar-thumb:hover{background:rgba(0, 0, 0, 0.3)}.ctx-virtual-scroll{width:100%;position:relative}.ctx-virtual-spacer{position:relative;width:100%}.ctx-virtual-offset{position:absolute;inset:0;width:100%}:host([theme=dark]) .ctx-menu::-webkit-scrollbar-thumb,:host-context([data-theme=dark]) .ctx-menu::-webkit-scrollbar-thumb,:host-context(.dark) .ctx-menu::-webkit-scrollbar-thumb,html[data-theme=dark] :host .ctx-menu::-webkit-scrollbar-thumb{background:rgba(255, 255, 255, 0.2)}:host([theme=dark]) .ctx-menu,:host-context([data-theme=dark]) .ctx-menu,:host-context(.dark) .ctx-menu,html[data-theme=dark] :host .ctx-menu{--ctx-bg:var(--bg-primary, #1e293b);--ctx-fg:var(--
|
|
2980
|
+
const contextMenuCss = () => `.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}.ctx-menu{position:fixed;z-index:20000;min-width:220px;max-width:min(320px, 100vw - 16px);--ctx-bg:var(--bg-primary, #ffffff);--ctx-fg:var(--text-primary, #000000);--ctx-border:var(--border-default, #d9d9d9);--ctx-hover:var(--bg-secondary, #e6e6e6);--ctx-active:rgba(0, 138, 22, 0.08);--ctx-active-fg:var(--color-success, #008a16);--ctx-active-icon:var(--color-success, #008a16);background-color:var(--ctx-bg, #ffffff) !important;background-image:none !important;color:var(--ctx-fg);border:1px solid var(--ctx-border);border-radius:10px;box-shadow:0 12px 28px rgba(0, 0, 0, 0.22), 0 8px 10px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.05);padding:6px;animation:ctx-enter 120ms ease-out;transform-origin:var(--ctx-origin-x, 0%) var(--ctx-origin-y, 0%);scrollbar-width:thin;scrollbar-color:rgba(0, 0, 0, 0.2) transparent}.ctx-menu::-webkit-scrollbar{width:8px}.ctx-menu::-webkit-scrollbar-track{background:transparent}.ctx-menu::-webkit-scrollbar-thumb{background:rgba(0, 0, 0, 0.2);border-radius:4px}.ctx-menu::-webkit-scrollbar-thumb:hover{background:rgba(0, 0, 0, 0.3)}.ctx-virtual-scroll{width:100%;position:relative}.ctx-virtual-spacer{position:relative;width:100%}.ctx-virtual-offset{position:absolute;inset:0;width:100%}:host([theme=dark]) .ctx-menu::-webkit-scrollbar-thumb,:host-context([data-theme=dark]) .ctx-menu::-webkit-scrollbar-thumb,:host-context(.dark) .ctx-menu::-webkit-scrollbar-thumb,html[data-theme=dark] :host .ctx-menu::-webkit-scrollbar-thumb{background:rgba(255, 255, 255, 0.2)}:host([theme=dark]) .ctx-menu,:host-context([data-theme=dark]) .ctx-menu,:host-context(.dark) .ctx-menu,html[data-theme=dark] :host .ctx-menu{--ctx-bg:var(--bg-primary, #1e293b);--ctx-fg:var(--text-primary, #e2e8f0);--ctx-border:var(--border-color, #334155);--ctx-hover:var(--bg-secondary, #334155);--ctx-active:rgba(0, 138, 22, 0.15);--ctx-active-fg:var(--color-success, #008a16);--ctx-active-icon:var(--color-success, #008a16);box-shadow:0 12px 28px rgba(0, 0, 0, 0.4), 0 8px 10px rgba(0, 0, 0, 0.2)}@keyframes ctx-enter{from{opacity:0;transform:scale(0.96)}to{opacity:1;transform:scale(1)}}.ctx-list{list-style:none;margin:0;padding:4px;overflow:visible;scrollbar-width:thin;scrollbar-color:rgba(0, 0, 0, 0.2) transparent}.ctx-list::-webkit-scrollbar{width:8px}.ctx-list::-webkit-scrollbar-track{background:transparent}.ctx-list::-webkit-scrollbar-thumb{background:rgba(0, 0, 0, 0.2);border-radius:4px}.ctx-list::-webkit-scrollbar-thumb:hover{background:rgba(0, 0, 0, 0.3)}:host([theme=dark]) .ctx-list::-webkit-scrollbar-thumb,:host-context([data-theme=dark]) .ctx-list::-webkit-scrollbar-thumb,:host-context(.dark) .ctx-list::-webkit-scrollbar-thumb,html[data-theme=dark] :host .ctx-list::-webkit-scrollbar-thumb{background:rgba(255, 255, 255, 0.2)}:host([theme=dark]) .ctx-list::-webkit-scrollbar-thumb:hover,:host-context([data-theme=dark]) .ctx-list::-webkit-scrollbar-thumb:hover,:host-context(.dark) .ctx-list::-webkit-scrollbar-thumb:hover,html[data-theme=dark] :host .ctx-list::-webkit-scrollbar-thumb:hover{background:rgba(255, 255, 255, 0.3)}.ctx-item{position:relative;display:block;border-radius:8px;cursor:pointer;user-select:none}.ctx-item:hover,.ctx-item-active{background:var(--ctx-hover, var(--bg-secondary, #f3f4f6))}.ctx-item-selected{background:var(--ctx-active, #e0f2fe);color:var(--ctx-active-fg, #0284c7);font-weight:600;position:relative}.ctx-item-selected::before{content:"";position:absolute;left:2px;top:50%;transform:translateY(-50%);width:4px;height:24px;background-color:var(--color-success, #008a16);border-radius:4px}.ctx-item-selected .ctx-icon-area{color:var(--ctx-active-icon, inherit)}.ctx-item-disabled{opacity:0.55;cursor:not-allowed}.ctx-icon-area{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--ctx-icon, var(--text-muted, #6b7280));font-size:14px;flex-shrink:0}.ctx-sub-arrow{color:var(--ctx-muted, var(--text-muted, #9ca3af));font-weight:600;justify-self:end}.ctx-divider{height:1px;margin:6px 8px;background:var(--ctx-divider, #e5e7eb)}.ctx-header{padding:8px 12px;font-size:11px;text-transform:uppercase;color:var(--ctx-muted, var(--text-muted, #9ca3af));font-weight:600;letter-spacing:0.5px;pointer-events:none}.ctx-item-danger{color:var(--color-danger, #ef4444);}.ctx-item-danger:hover{background:var(--bg-primary, #fee2e2);color:var(--color-danger, #b91c1c);}.ctx-item-danger .ctx-icon-area{color:currentColor}.ctx-description{display:block;font-size:11px;color:var(--ctx-muted, var(--text-muted, #6b7280));margin-top:2px;line-height:1.3}.ctx-text-content{display:flex;flex-direction:column;flex:1;min-width:0}.ctx-label-row{display:flex;align-items:center;justify-content:space-between;width:100%}.ctx-item-content{display:flex;align-items:center;gap:8px;padding:6px 10px;text-decoration:none;color:inherit;width:100%;box-sizing:border-box}.ctx-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ctx-shortcut{margin-left:8px}.ctx-submenu{position:absolute;top:0;left:calc(100% + 4px);min-width:220px;max-width:min(320px, 100vw - 16px);background:var(--ctx-bg, var(--bg-primary, #ffffff));backdrop-filter:blur(20px) saturate(200%);-webkit-backdrop-filter:blur(20px) saturate(200%);border:1px solid var(--ctx-border, var(--border-default, #e5e7eb));border-radius:10px;box-shadow:0 12px 28px rgba(0, 0, 0, 0.25), 0 8px 10px rgba(0, 0, 0, 0.15);padding:6px;z-index:1000}.ctx-sub-left{left:auto;right:calc(100% + 4px)}@media (prefers-color-scheme: dark){.ctx-menu,.ctx-submenu{background:var(--ctx-bg, var(--bg-secondary, #111827));color:var(--ctx-fg, #f3f4f6);border-color:var(--ctx-border, var(--border-default, #374151));box-shadow:0 12px 28px rgba(0, 0, 0, 0.48), 0 8px 10px rgba(0, 0, 0, 0.35)}.ctx-item:hover,.ctx-item-active{background:var(--ctx-hover, var(--bg-primary, #1f2937))}.ctx-divider{background:var(--ctx-divider, #374151)}.ctx-muted,.ctx-shortcut,.ctx-sub-arrow{color:var(--text-muted, #9ca3af)}}:host([theme=green]) .ctx-menu,:host-context([data-theme=green]) .ctx-menu,:host-context(.green) .ctx-menu,html[data-theme=green] :host .ctx-menu,:host([theme=green]) .ctx-submenu,:host-context([data-theme=green]) .ctx-submenu,:host-context(.green) .ctx-submenu,html[data-theme=green] :host .ctx-submenu{--ctx-bg:var(--color-success, #3dcd58);--ctx-fg:var(--bg-primary, #ffffff);--ctx-border:rgba(255, 255, 255, 0.2);--ctx-hover:rgba(255, 255, 255, 0.1);--ctx-active:rgba(255, 255, 255, 0.2);--ctx-active-fg:var(--bg-primary, #ffffff);--ctx-active-icon:var(--bg-primary, #ffffff);--ctx-divider:rgba(255, 255, 255, 0.2);--ctx-muted:rgba(255, 255, 255, 0.7);box-shadow:0 12px 28px rgba(0, 0, 0, 0.2), 0 8px 10px rgba(0, 0, 0, 0.1)}:host([theme=green]) .ctx-shortcut,:host([theme=green]) .ctx-sub-arrow,:host-context([data-theme=green]) .ctx-shortcut,:host-context([data-theme=green]) .ctx-sub-arrow,:host-context(.green) .ctx-shortcut,:host-context(.green) .ctx-sub-arrow{color:rgba(255, 255, 255, 0.7)}@media (prefers-reduced-motion: reduce){.ctx-menu{animation:none}}`;
|
|
2933
2981
|
|
|
2934
2982
|
const UiContextMenu = class {
|
|
2935
2983
|
constructor(hostRef) {
|
|
@@ -4051,7 +4099,7 @@ const Icon = class {
|
|
|
4051
4099
|
const accessibilityAttrs = this.label
|
|
4052
4100
|
? { role: 'img', 'aria-label': this.label }
|
|
4053
4101
|
: { 'aria-hidden': 'true' };
|
|
4054
|
-
return (index.h(index.Host, { key: '
|
|
4102
|
+
return (index.h(index.Host, { key: 'b32e0ca5263061b4fc29bd78648d3f4906095d4b', style: containerStyle, ...accessibilityAttrs }, index.h("div", { key: 'a483ab48abea1360f97875d6e92c2a37324d34ec', class: `icon-container ${this.spin ? 'fa-spin' : ''}` }, (this.loading || this.isFetching)
|
|
4055
4103
|
? index.h("ui-loader", { size: "0.8em", color: "currentColor", type: "spinner" })
|
|
4056
4104
|
: this.renderIconContent(lib, parsedSize))));
|
|
4057
4105
|
}
|
|
@@ -5140,7 +5188,7 @@ const Input = class {
|
|
|
5140
5188
|
onKeyDown: this.handleKeydown,
|
|
5141
5189
|
onKeyUp: this.handleKeyup,
|
|
5142
5190
|
};
|
|
5143
|
-
return (index.h(index.Host, { key: '
|
|
5191
|
+
return (index.h(index.Host, { key: '3a051e8a9e1f0139e4657d60ef8164856307104a', class: {
|
|
5144
5192
|
[`variant-${this.variant}`]: true,
|
|
5145
5193
|
[`size-${this.size}`]: true,
|
|
5146
5194
|
'full-width': this.fullWidth,
|
|
@@ -5148,13 +5196,13 @@ const Input = class {
|
|
|
5148
5196
|
[`input-color-${isCustomColor ? 'custom' : this.color}`]: true,
|
|
5149
5197
|
'shake-animation': this.shake,
|
|
5150
5198
|
'focused': this.isFocused,
|
|
5151
|
-
}, style: hostStyles }, index.h("div", { key: '
|
|
5199
|
+
}, style: hostStyles }, index.h("div", { key: 'e3e095ca40775b9c8acebea74563510d1ce53783', class: { ...inputClasses, 'input-ripple': this.rippleEffect } }, this.label && !this.floatingLabel && !isOtp && index.h("label", { key: '80cf74ffcb51ab88a4b741735f0dd2e605dd6093', class: "input-label" }, this.label, this.required && '*'), index.h("div", { key: 'ab7fd102b717f98310a33f852941193eff690429', class: "input-container", onMouseDown: this.handleMouseDown, onDragOver: this.handleDragOver, onDragLeave: this.handleDragLeave, onDrop: this.handleDrop }, index.h("div", { key: '33ac5d37c8424e3676f0ff3aa7fcc56022234a7a', class: "clipping-layer" }, this.showRipple && index.h("div", { key: '04ce9c9370ba75eccc571b6a77fdc9d0d85aa414', class: "liquid-ripple", style: { left: `${this.rippleX}px`, top: `${this.rippleY}px` } }), this.linearLoading && index.h("div", { key: '57fae93bef66ce2442cff10d8c1047c06534f2f4', class: "linear-loading-bar" }), this.backdropSheen && index.h("div", { key: '4cc4cda3894e58b5de70ee5769c8dcdab7660394', class: "backdrop-sheen-effect" })), this.renderAutocomplete(), (this.badge || (this.dirtyTracking && this.isDirty)) && (index.h("span", { key: '0d81a8f25b0a5f8d657334be35fd6265b0a6d517', class: `input-badge ${!this.badge ? 'dot-mode' : ''}` }, this.badge || '')), this.renderPrefixIcon(), this.floatingLabel && !isOtp && index.h("label", { key: '21b3824bad5426b981cd4c3e24f0d72b11f42800', class: "floating-label" }, this.label, this.required && '*'), this.multiline ? (index.h("textarea", { ...commonProps, style: { resize: this.autoResize ? 'none' : this.resize }, value: this.value })) : isOtp ? (index.h("div", { class: "otp-container" }, Array.from({ length: this.otpLength }).map((_, i) => (index.h("div", { class: { 'otp-box': true, 'filled': this.value.length > i, 'active': this.value.length === i && this.isFocused } }, this.value[i] || ''))), index.h("input", { ...commonProps, style: { opacity: '0', position: 'absolute', inset: '0', caretColor: 'transparent' } }))) : this.type === 'range' ? (index.h("div", { class: "range-input-wrapper", style: { '--range-progress': `${this.getRangePercentage()}%` } }, index.h("input", { ...commonProps, type: "range", value: this.rangeValue, min: this.min || 0, max: this.max || 100, step: this.step || 1 }), index.h("div", { class: "range-manual-adornment" }, index.h("input", { type: "number", class: "range-manual-input", value: this.rangeValue, min: this.min || 0, max: this.max || 100, step: this.step || 1, onInput: this.handleRangeManualInput })))) : (index.h("div", { class: "input-field-stack" }, index.h("input", { ...commonProps, type: inputType, value: isFile ? this.selectedFileNames : this.value }), this.currentGhost && index.h("span", { class: "ghost-text-overlay", onClick: () => (this.value = this.ghostText) }, this.currentGhost))), isColor && (index.h("input", { key: '92a94bf2a1b15d0619402459af2042568d1b41e1', type: "color", style: { opacity: '0', position: 'absolute', inset: '0', pointerEvents: 'none' }, value: this.value || '#000000', onInput: (e) => { this.value = e.target.value; this.inputChange.emit(this.value); }, ref: (el) => (this.colorPickerElement = el) })), isFile && (index.h("input", { key: 'd03600aa9ed340b7aee6d8cc67f85b5d9bffef11', type: "file", style: { opacity: '0', position: 'absolute', inset: '0', cursor: 'pointer', zIndex: '1' }, accept: this.accept, multiple: this.multiple, onInput: this.handleInput, ref: (el) => (this.filePickerElement = el) })), this.suffixText && index.h("span", { key: 'e41d89f9aa5e3f776152bb3571dfe791bb190429', class: { 'suffix-text': true, [`block-color-${this.suffixColor}`]: !!this.suffixColor } }, this.suffixText), (this.statusIndicator !== 'none' || this.isRecording || this._voiceOffLabel) && (index.h("div", { key: '97c5bb06c3cd3c415ae269de07d15e9cae37bc11', class: `status-indicator status-${this.isRecording ? 'listening' : this._voiceOffLabel ? 'offline' : this.statusIndicator}` }, !this.voiceEnabled && !this.voiceInput && (this.statusIndicator === 'listening' || this.isRecording) && (index.h("ui-icon", { key: '13305b3242980ce30f7ddb011f9c293f65520bff', library: "lucide", name: "mic", class: "mic-pulse" })), this.statusIndicator !== 'listening' && !this.isRecording && !this._voiceOffLabel && (index.h("span", { key: '287f8784f85a1c8ce18185668ded6be9abdfe521', class: "status-dot" })), index.h("span", { key: 'dcf8414fd07f22c907d8f0a44e2f291bd8d9e06a', class: "status-label" }, this.isRecording
|
|
5152
5200
|
? 'Listening'
|
|
5153
5201
|
: this._voiceOffLabel
|
|
5154
5202
|
? 'Not listening'
|
|
5155
5203
|
: this.statusIndicator !== 'none'
|
|
5156
5204
|
? this.statusIndicator.charAt(0).toUpperCase() + this.statusIndicator.slice(1)
|
|
5157
|
-
: null), this.statusIndicator === 'typing' && index.h("span", { key: '
|
|
5205
|
+
: null), this.statusIndicator === 'typing' && index.h("span", { key: '97e33fe463f2614ad1d50434113f901295476388', class: "typing-animation" }, index.h("span", { key: '6a4deee492deb251b6d9166932f9bf39575dc7ae' }), index.h("span", { key: '7cfec2336ffed51a4a807f59d9acadf242d6eba1' }), index.h("span", { key: '537aee8e7a731ebe94a9a9d2782211c2ed27ee74' })))), this.renderSuffixContent(), this.renderSteppers(), this.hintTooltip && index.h("div", { key: '0e823d9672e91e3f3e73fee5f3b3b7ffb852d124', class: "hint-tooltip-icon", title: this.hintTooltip }, index.h("ui-icon", { key: 'ddbdd7627df9b9e0b5f21549555478957b987acb', library: "lucide", name: "help-circle" }))), (validationMessage || this.showCounter || this.minLengthIndicator || this.maxLengthIndicator || (this.type === 'password' && this.value && this.showPasswordStrength)) && (index.h("div", { key: 'b744601318eb4bc5591c46b55c7bb6c695b53e0d', class: "input-footer" }, this.type === 'password' && this.value && this.showPasswordStrength && (index.h("div", { key: '0a53061d23adf47ed76c9f136208fa6d1aea24ba', class: "password-strength-meter" }, index.h("div", { key: 'bb04a6a647595ac406a19f66d2070709d9d70427', class: `strength-bar strength-${this.passwordStrength}` }))), validationMessage && (index.h("span", { key: 'b2afa105430243ed422fbba82f3411becb889a65', class: `helper-text ${this.validationState !== 'none' ? this.validationState + '-text' : ''}` }, this.validationState === 'error' && index.h("ui-icon", { key: 'ada379d68e13611f58892c386133633ca52eb20f', library: "lucide", name: "alert-circle", class: "validation-icon" }), this.validationState === 'warning' && index.h("ui-icon", { key: '28b17d21ea957ba6e9c7fc556737182c11894d8f', library: "lucide", name: "alert-triangle", class: "validation-icon" }), this.validationState === 'success' && index.h("ui-icon", { key: '3ea20f412b2a859070585d2cbafade0f692bbbad', library: "lucide", name: "check-circle-2", class: "validation-icon" }), this.validationState === 'info' && index.h("ui-icon", { key: 'f6cfbfbe60bcf78ea2dcd50b75bda182bc8133a1', library: "lucide", name: "info", class: "validation-icon" }), validationMessage)), this.relativeTime && this.type === 'date' && this.value && (index.h("span", { key: 'f952bbb2fc1d5833b64e90717b1c0b8c2ed88e69', class: "relative-time-overlay" }, this.getRelativeTimeString(this.value))), this.showCounter && this.maxLength && index.h("span", { key: '86521b16722af6200a90d99d97b5d41fb601cc88', class: "character-counter" }, this.currentLength, "/", this.maxLength), this.renderLengthIndicator())))));
|
|
5158
5206
|
}
|
|
5159
5207
|
static get formAssociated() { return true; }
|
|
5160
5208
|
static get watchers() { return {
|
|
@@ -5171,7 +5219,545 @@ const Input = class {
|
|
|
5171
5219
|
};
|
|
5172
5220
|
Input.style = inputCss();
|
|
5173
5221
|
|
|
5174
|
-
const navigationBarCss = () => `.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{--nav-bg:#fcfcfc;--nav-color:#000000;--nav-border-color:#d9d9d9;--nav-item-hover-bg:#e6e6e6;--nav-item-active-bg:rgba(0, 138, 22, 0.08);--nav-item-active-color:#008a16;--nav-accent-gradient:linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);--nav-width:280px;--nav-transition:width 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);display:flex;flex-direction:column;height:100%;width:var(--nav-width);background:var(--nav-bg);color:var(--nav-color);border-right:1px solid var(--nav-border-color);transition:var(--nav-transition);box-sizing:border-box;position:relative;z-index:100}:host(.pos-right){border-right:none;border-left:1px solid var(--nav-border-color)}.nav-toggle-edge{position:absolute;top:48px;right:-12px;width:24px;height:24px;background:var(--nav-bg);border:1px solid var(--nav-border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:101;color:var(--nav-color);box-shadow:0 1px 3px rgba(0, 0, 0, 0.1);transition:transform 0.2s, background-color 0.2s}.nav-toggle-edge:hover{background-color:var(--nav-item-hover-bg)}:host(.pos-right) .nav-toggle-edge{right:auto;left:-12px;transform:rotate(180deg)}:host(.is-collapsed) .nav-toggle-edge{transform:rotate(180deg)}:host(.pos-right.is-collapsed) .nav-toggle-edge{transform:rotate(0deg)}:host([data-theme=dark]){--nav-bg:#111827;--nav-color:#94a3b8;--nav-border-color:#1e293b;--nav-item-hover-bg:#1e293b;--nav-item-active-bg:rgba(0, 138, 22, 0.15);--nav-item-active-color:#008a16}:host([data-theme=green]){--nav-bg:#3DCD58;--nav-color:#ffffff;--nav-border-color:rgba(255, 255, 255, 0.2);--nav-item-hover-bg:rgba(255, 255, 255, 0.1);--nav-item-active-bg:rgba(255, 255, 255, 0.2);--nav-item-active-color:#ffffff}:host([orientation=horizontal]){width:100%;height:64px;flex-direction:row;border-right:none;border-bottom:1px solid var(--nav-border-color)}:host([orientation=horizontal]) .nav-blocks-container{display:flex !important;flex-direction:row !important;align-items:center;width:100%;height:100%;overflow:visible;flex-wrap:nowrap !important;justify-content:flex-start !important}:host([orientation=horizontal]) .nav-header{border-bottom:none;border-right:1px solid var(--nav-border-color);flex-shrink:0}:host(.is-collapsed) .nav-block-categories,:host(.is-collapsed) .nav-block-top,:host(.is-collapsed) .nav-block-secondary,:host(.is-collapsed) .nav-block-bottom,:host(.is-collapsed) .nav-block-profile{overflow:visible !important}:host([orientation=horizontal]) .nav-block-bottom{margin-left:auto}:host([orientation=horizontal]) .nav-block-categories,:host([orientation=horizontal]) .nav-block-top,:host([orientation=horizontal]) .nav-block-secondary,:host([orientation=horizontal]) .nav-block-bottom,:host([orientation=horizontal]) .nav-block-profile{display:flex !important;flex-direction:row !important;align-items:center;padding:0;overflow:visible !important;border:none !important;height:100%;flex-shrink:0;flex-grow:0 !important;max-height:none !important;flex-wrap:nowrap !important}:host([orientation=horizontal]) .nav-block-categories,:host([orientation=horizontal]) .nav-block-top,:host([orientation=horizontal]) .nav-block-secondary,:host([orientation=horizontal]) .nav-search-bar{border-right:none !important}:host([orientation=horizontal]) .nav-block-top{flex:none}:host([orientation=horizontal]) .nav-item-wrapper{height:100%;display:flex !important;flex-direction:row !important;align-items:center;flex-shrink:0}:host([orientation=horizontal]) .nav-item{height:100%;padding:0 6px;margin:0 !important;border-radius:0;display:flex;align-items:center;justify-content:center;white-space:nowrap}:host([orientation=horizontal]) .nav-icon{margin-right:4px;}:host([orientation=horizontal]) .nav-glider{left:0;right:auto;bottom:0px !important;top:auto !important;height:3px !important;border-radius:4px 4px 0 0;background-color:var(--nav-item-active-color);transition:left 0.3s cubic-bezier(0.4, 0, 0.2, 1), width 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s}:host([orientation=horizontal]) .nav-toggle-edge{display:none}:host([orientation=horizontal]) .nav-block-bottom .nav-label,:host([orientation=horizontal]) .nav-block-profile .nav-label{display:none;}:host([orientation=horizontal]) .nav-search-bar{padding:0 12px;border-bottom:none;border-right:1px solid var(--nav-border-color);height:100%;display:flex;align-items:center}:host([orientation=horizontal]) .nav-search-bar>div{width:150px}:host(.is-drawer){position:fixed;top:0;left:0;bottom:0;height:100vh;box-shadow:4px 0 16px rgba(0, 0, 0, 0.1);z-index:1000}:host(.is-drawer.pos-right){left:auto;right:0;box-shadow:-4px 0 16px rgba(0, 0, 0, 0.1)}.nav-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0, 0, 0, 0.4);z-index:-1;}:host(.is-drawer){overflow:visible;}.nav-header{flex-shrink:0;min-height:64px;display:flex;align-items:center;padding:0 16px;overflow:hidden;white-space:nowrap;position:relative}.nav-mobile-close{position:absolute;right:16px;top:50%;transform:translateY(-50%);cursor:pointer;padding:4px}.nav-blocks-container{display:flex;flex-direction:column;height:100%;overflow:visible;}.nav-block-categories{flex-shrink:0;max-height:30%;overflow-y:auto;overflow-x:visible;display:flex;flex-direction:column;padding:8px 0;border-bottom:1px solid var(--nav-border-color);scrollbar-width:thin;scrollbar-color:var(--nav-border-color) transparent}.nav-block-top{flex:1;overflow-y:auto;overflow-x:visible;display:flex;flex-direction:column;padding:8px 0;scrollbar-width:thin;scrollbar-color:var(--nav-border-color) transparent}.nav-block-bottom{flex-shrink:0;border-top:1px solid var(--nav-border-color);padding:8px 0;display:flex;flex-direction:column;overflow:visible;min-height:fit-content;max-height:fit-content;}.nav-header{border-bottom:1px solid var(--nav-border-color)}.nav-search-bar{padding:8px 16px;border-bottom:1px solid var(--nav-border-color)}.nav-block-secondary{padding:8px 0;border-top:1px solid var(--nav-border-color);display:flex;flex-direction:column;overflow:visible}.nav-block-profile{flex-shrink:0;padding:8px 0;border-top:1px solid var(--nav-border-color);display:flex;flex-direction:column;overflow:visible;min-height:fit-content;max-height:fit-content;}.nav-block-categories::-webkit-scrollbar,.nav-block-top::-webkit-scrollbar{width:4px}.nav-block-categories::-webkit-scrollbar-thumb,.nav-block-top::-webkit-scrollbar-thumb{background-color:var(--nav-border-color);border-radius:4px}.nav-item-wrapper{display:flex;flex-direction:column;min-width:0;}.nav-item{display:flex;align-items:center;height:40px;cursor:pointer;user-select:none;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);white-space:nowrap;position:relative;overflow:visible;margin:2px 8px;border-radius:8px;outline:none;}a.nav-item{text-decoration:none;color:inherit}.nav-item:focus-visible{outline:2px solid var(--nav-item-active-color);outline-offset:-2px}.nav-item:hover{background-color:var(--nav-item-hover-bg)}.nav-item.active,.nav-item.active-ancestor{background-color:var(--nav-item-active-bg);color:var(--nav-item-active-color);font-weight:500;position:relative}.nav-glider{position:absolute;width:4px;background-color:#008a16;border-radius:4px;transition:top 0.25s cubic-bezier(0.4, 0, 0.2, 1), height 0.2s ease, opacity 0.2s;pointer-events:none;z-index:10;left:6px}:host(.indicator-end) .nav-glider{left:auto;right:6px}.nav-item-wrapper:not(.level-0)>.nav-item{font-size:0.95em;opacity:0.9;height:36px;}.nav-item-wrapper:not(.level-0)>.nav-item.active{background-color:var(--nav-item-active-bg);color:var(--nav-item-active-color);font-weight:600;position:relative}.nav-item-wrapper:not(.level-0)>.nav-item.active::before{content:"";position:absolute;left:2px;top:50%;transform:translateY(-50%);width:4px;height:32px;border-radius:4px;background-color:var(--nav-item-active-color)}.nav-children{position:relative;}.nav-icon-container{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-status-dot{position:absolute;top:2px;right:12px;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--nav-bg);z-index:2}:host(.is-collapsed) .nav-status-dot,:host([orientation=horizontal]) .nav-status-dot{right:0px}.nav-status-dot.status-online{background-color:#22c55e}.nav-status-dot.status-offline{background-color:#94a3b8}.nav-status-dot.status-away{background-color:#eab308}.nav-status-dot.status-busy{background-color:#ef4444}.nav-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;margin-right:12px}:host(.is-collapsed) .nav-icon,:host([orientation=horizontal]) .nav-block-bottom .nav-icon,:host([orientation=horizontal]) .nav-block-profile .nav-icon{margin-right:0}.nav-label-container{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.nav-badge{background-color:var(--nav-item-active-color);color:white;font-size:10px;font-weight:700;padding:0 6px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-badge-mini{position:absolute;top:-4px;right:-4px;background-color:#ef4444;color:white;font-size:9px;font-weight:800;min-width:14px;height:14px;padding:0 3px;border-radius:7px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--nav-bg);z-index:3}.nav-item{border-left:3px solid transparent}.nav-item.active .nav-icon{color:currentColor;}.nav-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.nav-item.no-icon .nav-label{font-size:12px;opacity:0.8;padding-left:4px}.nav-item.is-user-profile .nav-icon{background:var(--nav-accent-gradient);border-radius:50%;color:white !important;width:32px;height:32px;min-width:32px;box-shadow:0 4px 10px rgba(59, 130, 246, 0.4);margin-right:12px}.nav-item.is-user-profile .nav-icon ui-icon{width:18px !important;height:18px !important;font-size:18px !important}.nav-item.is-user-profile .nav-label{font-weight:600;color:var(--nav-color)}.nav-arrow{display:flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:8px;transition:transform 0.2s}:host([orientation=horizontal]) .nav-arrow{margin-left:4px}.nav-arrow .rotate-180{transform:rotate(180deg)}.nav-children{display:flex;flex-direction:column;overflow:hidden;animation:slideDown 0.2s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}:host(.is-collapsed:not([orientation=horizontal])) .nav-item{justify-content:center;padding:0 !important;margin:4px 0;width:100%;border-radius:0}:host(.is-collapsed:not([orientation=horizontal])) .nav-icon{margin-right:0}:host(.is-collapsed:not([orientation=horizontal])) .nav-label,:host(.is-collapsed:not([orientation=horizontal])) .nav-arrow{display:none;}.nav-tooltip{position:absolute;background:#1e293b;color:#f8fafc;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 4px 12px rgba(0, 0, 0, 0.3);border:1px solid rgba(255, 255, 255, 0.1);z-index:2000;pointer-events:none;opacity:0;visibility:hidden;transition:opacity 0.2s, transform 0.2s, visibility 0.2s}.nav-tooltip.visible{opacity:1;visibility:visible}:host(.is-collapsed:not([orientation=horizontal])) .nav-tooltip{left:100%;top:50%;transform:translateY(-50%) translateX(-10px);margin-left:10px}:host(.is-collapsed:not([orientation=horizontal])) .nav-tooltip.visible{transform:translateY(-50%) translateX(0)}:host([orientation=horizontal]) .nav-tooltip{top:100%;left:50%;transform:translateX(-50%) translateY(-10px);margin-top:8px}:host([orientation=horizontal]) .nav-tooltip.visible{transform:translateX(-50%) translateY(0)}:host(:not(.is-collapsed):not([orientation=horizontal])) .nav-tooltip{left:50%;bottom:100%;transform:translateX(-50%) translateY(10px);margin-bottom:8px}:host(:not(.is-collapsed):not([orientation=horizontal])) .nav-tooltip.visible{transform:translateX(-50%) translateY(0)}.nav-tooltip::before{content:"";position:absolute;width:8px;height:8px;background:#1e293b;transform:rotate(45deg);z-index:-1;border:1px solid rgba(255, 255, 255, 0.1)}:host(.is-collapsed:not([orientation=horizontal])) .nav-tooltip::before{left:-4px;top:50%;margin-top:-4px;border-right:none;border-top:none}:host([orientation=horizontal]) .nav-tooltip::before{top:-4px;left:50%;margin-left:-4px;border-right:none;border-bottom:none}:host(:not(.is-collapsed):not([orientation=horizontal])) .nav-tooltip::before{bottom:-4px;left:12px;border-left:none;border-top:none}`;
|
|
5222
|
+
const loaderCss = () => `.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:inline-block;box-sizing:border-box;--ui-primary-color:#3b82f6;--ui-secondary-color:#64748b;--ui-success-color:#10b981;--ui-danger-color:#ef4444;--ui-warning-color:#f59e0b;--ui-info-color:#06b6d4;--loader-color:var(--ui-primary-color);--loader-size:40px;--loader-speed:1s;--loader-thickness:3px;--overlay-opacity:0.5;--overlay-background:rgba(255, 255, 255, var(--overlay-opacity))}.loader-wrapper{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%;transition:opacity 0.3s ease}.loader-wrapper.loader-overlay{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1000;background:var(--overlay-background);display:flex;align-items:center;justify-content:center}.loader-wrapper.loader-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;z-index:9999}.loader-wrapper.loader-blur{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.loader-wrapper.loader-variant-glass{background:rgba(255, 255, 255, 0.15);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(255, 255, 255, 0.2);box-shadow:0 8px 32px 0 rgba(31, 38, 135, 0.1)}.loader-wrapper.loader-variant-neon{background:rgba(10, 10, 12, 0.95);box-shadow:inset 0 0 40px color-mix(in srgb, var(--loader-color) 20%, transparent), 0 0 20px color-mix(in srgb, var(--loader-color) 10%, transparent);--loader-color:#a855f7}.loader-wrapper.loader-variant-minimal{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.loader-wrapper.loader-variant-linear-strip{position:absolute;top:0;left:0;width:100%;height:4px;background:transparent;z-index:1001}.loader-container{display:flex;align-items:center;justify-content:center;box-sizing:border-box;gap:16px}.loader-container.loader-size-3xs{--loader-size:12px}.loader-container.loader-size-2xs{--loader-size:16px}.loader-container.loader-size-xs{--loader-size:20px}.loader-container.loader-size-small{--loader-size:28px}.loader-container.loader-size-md{--loader-size:40px}.loader-container.loader-size-large{--loader-size:56px}.loader-container.loader-size-xl{--loader-size:72px}.loader-container.loader-size-2xl{--loader-size:96px}.loader-container.loader-size-3xl{--loader-size:120px}.loader-container.loader-size-jumbo{--loader-size:160px}.loader-container.loader-color-primary{--loader-color:var(--ui-primary-color)}.loader-container.loader-color-secondary{--loader-color:var(--ui-secondary-color)}.loader-container.loader-color-success{--loader-color:var(--ui-success-color)}.loader-container.loader-color-danger{--loader-color:var(--ui-danger-color)}.loader-container.loader-color-warning{--loader-color:var(--ui-warning-color)}.loader-container.loader-color-info{--loader-color:var(--ui-info-color)}.loader-container.loader-label-bottom{flex-direction:column;text-align:center}.loader-container.loader-label-top{flex-direction:column-reverse;text-align:center}.loader-container.loader-label-left{flex-direction:row-reverse;text-align:right}.loader-container.loader-label-right{flex-direction:row;text-align:left}.loader-visual{display:flex;align-items:center;justify-content:center;position:relative;width:var(--loader-size);height:var(--loader-size);min-width:var(--loader-size);min-height:var(--loader-size)}.loader-text-block{display:flex;flex-direction:column;gap:4px}.loader-label-text{font-family:system-ui, -apple-system, sans-serif;font-size:14px;font-weight:600;color:#1e293b;letter-spacing:0.02em;animation:breathe 2s ease-in-out infinite}.loader-variant-neon .loader-label-text{color:#e9d5ff;text-shadow:0 0 10px rgba(168, 85, 247, 0.8)}.loader-desc-text{font-family:system-ui, -apple-system, sans-serif;font-size:12px;color:#64748b}.loader-variant-neon .loader-desc-text{color:#c084fc}.loader-predictive-bar{display:flex;align-items:center;gap:8px;width:140px;margin-top:4px}.loader-predictive-bar .loader-predictive-fill{height:4px;background:var(--loader-color);border-radius:2px;transition:width 0.3s cubic-bezier(0.1, 0.8, 0.3, 1)}.loader-predictive-bar .loader-predictive-percentage{font-size:11px;font-weight:700;color:var(--loader-color)}.focus-trap-sentinel{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.status-icon-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.status-icon-wrapper .status-svg{width:var(--loader-size);height:var(--loader-size)}.status-icon-wrapper .status-circle-bg{stroke-width:4;stroke-miterlimit:10;animation:status-stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards}.status-icon-wrapper .status-check-path{transform-origin:50% 50%;stroke-width:4;stroke-linecap:round;stroke-dasharray:48;stroke-dashoffset:48;animation:status-stroke-offset 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.6s forwards}.status-icon-wrapper .status-cross-path{transform-origin:50% 50%;stroke-width:4;stroke-linecap:round;stroke-dasharray:48;stroke-dashoffset:48;animation:status-stroke-offset 0.35s cubic-bezier(0.65, 0, 0.45, 1) 0.6s forwards}.status-icon-wrapper.success .status-circle-bg{stroke:var(--ui-success-color);fill:none}.status-icon-wrapper.success .status-check-path{stroke:var(--ui-success-color)}.status-icon-wrapper.error .status-circle-bg{stroke:var(--ui-danger-color);fill:none}.status-icon-wrapper.error .status-cross-path{stroke:var(--ui-danger-color)}.anim-spinner{width:100%;height:100%;border:var(--loader-thickness) solid color-mix(in srgb, var(--loader-color) 15%, transparent);border-left-color:var(--loader-color);border-radius:50%;box-sizing:border-box;animation:spin var(--loader-speed) linear infinite}.loader-variant-neon .anim-spinner{box-shadow:0 0 10px var(--loader-color), inset 0 0 5px var(--loader-color)}.anim-dots{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%}.anim-dots div{width:25%;height:25%;background-color:var(--loader-color);border-radius:50%;animation:dots-pulse var(--loader-speed) ease-in-out infinite}.anim-dots div:nth-child(2){animation-delay:calc(var(--loader-speed) / 6)}.anim-dots div:nth-child(3){animation-delay:calc(var(--loader-speed) / 3)}.anim-bar{width:100%;height:var(--loader-thickness);background:rgba(120, 120, 120, 0.15);border-radius:calc(var(--loader-thickness) / 2);overflow:hidden;position:relative}.anim-bar .bar-indeterminate{position:absolute;height:100%;background:var(--loader-color);left:-50%;width:50%;border-radius:calc(var(--loader-thickness) / 2);animation:bar-slide calc(var(--loader-speed) * 1.5) cubic-bezier(0.4, 0, 0.2, 1) infinite}.anim-bar .bar-determinate{height:100%;background:var(--loader-color);border-radius:calc(var(--loader-thickness) / 2);transition:width 0.3s ease}.anim-pulse{width:80%;height:80%;background-color:var(--loader-color);border-radius:50%;animation:pulse-grow var(--loader-speed) ease-in-out infinite}.anim-ring{width:100%;height:100%;border:var(--loader-thickness) solid transparent;border-top-color:var(--loader-color);border-bottom-color:var(--loader-color);border-radius:50%;box-sizing:border-box;animation:spin var(--loader-speed) cubic-bezier(0.5, 0, 0.5, 1) infinite}.anim-bounce{width:100%;height:100%;position:relative}.anim-bounce div{width:100%;height:100%;border-radius:50%;background-color:var(--loader-color);opacity:0.6;position:absolute;top:0;left:0;animation:bounce-scale calc(var(--loader-speed) * 2) ease-in-out infinite}.anim-bounce div:nth-child(2){animation-delay:calc(var(--loader-speed) * -1)}.anim-grid{display:grid;grid-template-columns:repeat(3, 1fr);grid-gap:15%;width:100%;height:100%}.anim-grid div{background-color:var(--loader-color);border-radius:50%;animation:grid-fade calc(var(--loader-speed) * 1.2) ease-in-out infinite}.anim-grid div:nth-child(1){animation-delay:0s}.anim-grid div:nth-child(2){animation-delay:0.1s}.anim-grid div:nth-child(3){animation-delay:0.2s}.anim-grid div:nth-child(4){animation-delay:0.1s}.anim-grid div:nth-child(5){animation-delay:0.2s}.anim-grid div:nth-child(6){animation-delay:0.3s}.anim-grid div:nth-child(7){animation-delay:0.2s}.anim-grid div:nth-child(8){animation-delay:0.3s}.anim-grid div:nth-child(9){animation-delay:0.4s}.anim-wave{display:flex;align-items:center;justify-content:space-between;width:100%;height:80%}.anim-wave div{width:12%;height:100%;background-color:var(--loader-color);border-radius:4px;animation:wave-stretch var(--loader-speed) ease-in-out infinite}.anim-wave div:nth-child(1){animation-delay:-0.45s}.anim-wave div:nth-child(2){animation-delay:-0.3s}.anim-wave div:nth-child(3){animation-delay:-0.15s}.anim-wave div:nth-child(4){animation-delay:-0.3s}.anim-wave div:nth-child(5){animation-delay:-0.45s}.anim-dual-ring{width:100%;height:100%;border:var(--loader-thickness) solid transparent;border-left-color:var(--loader-color);border-right-color:var(--loader-color);border-radius:50%;animation:spin var(--loader-speed) linear infinite}.anim-heartbeat{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.anim-heartbeat .heart-svg{width:90%;height:90%;fill:var(--loader-color);animation:pulse-heart calc(var(--loader-speed) * 1.2) ease infinite}.anim-clock{width:100%;height:100%;border:var(--loader-thickness) solid var(--loader-color);border-radius:50%;position:relative;box-sizing:border-box}.anim-clock .clock-hour,.anim-clock .clock-minute{position:absolute;background-color:var(--loader-color);width:var(--loader-thickness);left:calc(50% - var(--loader-thickness) / 2);transform-origin:bottom center;border-radius:4px}.anim-clock .clock-hour{height:30%;top:20%;animation:spin calc(var(--loader-speed) * 6) linear infinite}.anim-clock .clock-minute{height:40%;top:10%;animation:spin var(--loader-speed) linear infinite}.anim-raining-letters{width:100%;height:100%;overflow:hidden;border-radius:8px;border:1px solid rgba(120, 120, 120, 0.15);box-sizing:border-box}.anim-raining-letters canvas{width:100% !important;height:100% !important;background:transparent}.anim-ripple{width:100%;height:100%;position:relative}.anim-ripple div{position:absolute;border:var(--loader-thickness) solid var(--loader-color);border-radius:50%;opacity:1;width:0;height:0;top:50%;left:50%;transform:translate(-50%, -50%);animation:ripple-grow var(--loader-speed) cubic-bezier(0, 0.2, 0.8, 1) infinite}.anim-ripple div:nth-child(2){animation-delay:-0.33s}.anim-ripple div:nth-child(3){animation-delay:-0.66s}.anim-infinite{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.anim-infinite svg{width:100%;height:60%}.anim-infinite .infinity-bg{stroke:rgba(120, 120, 120, 0.1);stroke-width:4;fill:none}.anim-infinite .infinity-loop{stroke:var(--loader-color);stroke-width:4;stroke-linecap:round;stroke-dasharray:120 200;fill:none;animation:loop-crawl calc(var(--loader-speed) * 1.5) linear infinite}.anim-wifi{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.anim-wifi div{border:var(--loader-thickness) solid transparent;border-top-color:var(--loader-color);border-radius:50%;position:absolute;transform-origin:center center;box-sizing:border-box}.anim-wifi .wifi-dot{width:15%;height:15%;background-color:var(--loader-color);border:none}.anim-wifi .wifi-arc-1{width:45%;height:45%;animation:wifi-pulse var(--loader-speed) ease-in-out infinite 0.1s}.anim-wifi .wifi-arc-2{width:70%;height:70%;animation:wifi-pulse var(--loader-speed) ease-in-out infinite 0.2s}.anim-wifi .wifi-arc-3{width:95%;height:95%;animation:wifi-pulse var(--loader-speed) ease-in-out infinite 0.3s}.anim-rainbow{width:100%;height:100%;border-radius:50%;padding:var(--loader-thickness);background:linear-gradient(90deg, #ff007f, #7f00ff, #00f0ff, #00ff7f, #ffef00, #ff007f);background-size:300% 300%;box-sizing:border-box;mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);-webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);mask-composite:xor;-webkit-mask-composite:xor;mask-composite:exclude;animation:spin var(--loader-speed) linear infinite, gradient-move 3s ease infinite}.anim-square-shuffle{width:100%;height:100%;position:relative}.anim-square-shuffle div{width:35%;height:35%;background-color:var(--loader-color);position:absolute;animation:shuffle-move calc(var(--loader-speed) * 2) cubic-bezier(0.25, 1, 0.5, 1) infinite}.anim-square-shuffle div:nth-child(1){top:10%;left:10%}.anim-square-shuffle div:nth-child(2){top:10%;left:55%;animation-delay:-0.5s}.anim-square-shuffle div:nth-child(3){top:55%;left:55%;animation-delay:-1s}.anim-square-shuffle div:nth-child(4){top:55%;left:10%;animation-delay:-1.5s}.anim-dna-helix{display:flex;justify-content:space-between;align-items:center;width:100%;height:100%}.anim-dna-helix .dna-strand{height:100%;width:6%;display:flex;flex-direction:column;justify-content:space-between;align-items:center;animation:dna-twist calc(var(--loader-speed) * 1.5) ease-in-out infinite;animation-delay:calc(var(--i) * -0.12s)}.anim-dna-helix .dna-strand .dna-dot{width:150%;height:6%;background:var(--loader-color);border-radius:50%}.anim-dna-helix .dna-strand .dna-bar{width:30%;height:80%;background:rgba(120, 120, 120, 0.15);border-radius:2px}.anim-atom-sphere{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.anim-atom-sphere .atom-nucleus{width:20%;height:20%;background:var(--loader-color);border-radius:50%;box-shadow:0 0 10px var(--loader-color)}.anim-atom-sphere .atom-orbit{position:absolute;width:100%;height:40%;border:1.5px solid color-mix(in srgb, var(--loader-color) 35%, transparent);border-radius:50%}.anim-atom-sphere .atom-orbit .atom-electron{width:var(--loader-thickness);height:var(--loader-thickness);background:var(--loader-color);border-radius:50%;position:absolute;top:-3px;left:50%;box-shadow:0 0 6px var(--loader-color)}.anim-atom-sphere .atom-orbit.orbit-1{transform:rotate(0deg)}.anim-atom-sphere .atom-orbit.orbit-1 .atom-electron{animation:orbit-spin var(--loader-speed) linear infinite}.anim-atom-sphere .atom-orbit.orbit-2{transform:rotate(60deg)}.anim-atom-sphere .atom-orbit.orbit-2 .atom-electron{animation:orbit-spin var(--loader-speed) linear infinite -0.33s}.anim-atom-sphere .atom-orbit.orbit-3{transform:rotate(-60deg)}.anim-atom-sphere .atom-orbit.orbit-3 .atom-electron{animation:orbit-spin var(--loader-speed) linear infinite -0.66s}.anim-staircase{width:100%;height:100%;position:relative}.anim-staircase .stair-climber{width:25%;height:25%;background-color:var(--loader-color);border-radius:4px;position:absolute;top:10%;left:10%;animation:stair-climb var(--loader-speed) cubic-bezier(0.25, 1, 0.5, 1) infinite}.anim-staircase .stairs{display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;width:100%;height:100%}.anim-staircase .stairs div{background:rgba(120, 120, 120, 0.15);height:20%;border-radius:2px;margin-top:5%}.anim-staircase .stairs div:nth-child(1){width:100%}.anim-staircase .stairs div:nth-child(2){width:75%}.anim-staircase .stairs div:nth-child(3){width:50%}.anim-staircase .stairs div:nth-child(4){width:25%}.anim-radar{width:100%;height:100%;border-radius:50%;border:1.5px solid rgba(120, 120, 120, 0.1);box-sizing:border-box;position:relative;overflow:hidden}.anim-radar .radar-scanner{position:absolute;top:50%;left:50%;width:100%;height:100%;background:conic-gradient(from 0deg at 50% 50%, color-mix(in srgb, var(--loader-color) 15%, transparent) 0%, transparent 40%, transparent 100%);transform:translate(-50%, -50%);animation:spin var(--loader-speed) linear infinite;transform-origin:50% 50%}.anim-radar .radar-ring,.anim-radar .radar-ring-mid{position:absolute;border:1px dashed color-mix(in srgb, var(--loader-color) 25%, transparent);border-radius:50%;top:50%;left:50%;transform:translate(-50%, -50%)}.anim-radar .radar-ring{width:70%;height:70%}.anim-radar .radar-ring-mid{width:40%;height:40%}.anim-radar .radar-dot{width:8%;height:8%;background:var(--loader-color);border-radius:50%;position:absolute;top:30%;left:65%;box-shadow:0 0 8px var(--loader-color);animation:blink 1.2s infinite}.anim-liquid-drop{width:100%;height:100%;position:relative}.anim-liquid-drop .drop-nozzle{width:20%;height:10%;background:rgba(120, 120, 120, 0.2);border-radius:0 0 4px 4px;margin:0 auto}.anim-liquid-drop .drop-droplet{width:14%;height:20%;background:var(--loader-color);border-radius:50% 50% 50% 50%/60% 60% 40% 40%;position:absolute;top:10%;left:43%;animation:drop-fall var(--loader-speed) cubic-bezier(0.5, 0, 0.7, 0.4) infinite}.anim-liquid-drop .drop-surface{width:80%;height:8%;background:color-mix(in srgb, var(--loader-color) 30%, transparent);border-radius:50%;position:absolute;bottom:10%;left:10%;animation:surface-ripple var(--loader-speed) ease infinite}.anim-neon-path{width:100%;height:100%;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 0 15px color-mix(in srgb, var(--loader-color) 15%, transparent);box-sizing:border-box}.anim-neon-path div{width:100%;height:100%;border:var(--loader-thickness) solid var(--loader-color);border-radius:12px;box-sizing:border-box;animation:neon-glow-scale 1.5s ease-in-out infinite alternate}.anim-neuro-pulse{width:100%;height:100%}.anim-neuro-pulse .neuro-svg{width:100%;height:100%}.anim-neuro-pulse .neuro-branch{stroke:rgba(120, 120, 120, 0.15);stroke-width:2}.anim-neuro-pulse .neuro-center{fill:var(--loader-color)}.anim-neuro-pulse .neuro-terminal{fill:rgba(120, 120, 120, 0.4)}.anim-neuro-pulse .neuro-active-pulse{fill:var(--loader-color);animation:neuro-pulse-scale 2s ease-out infinite}.anim-neuro-pulse .neuro-active-pulse.pulse-2{animation-delay:1s}.anim-vortex-ring{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.anim-vortex-ring div{position:absolute;border:var(--loader-thickness) solid transparent;border-top-color:var(--loader-color);border-radius:50%;animation:spin var(--loader-speed) cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite}.anim-vortex-ring div:nth-child(1){width:100%;height:100%}.anim-vortex-ring div:nth-child(2){width:70%;height:70%;animation-delay:-0.2s;animation-direction:reverse}.anim-vortex-ring div:nth-child(3){width:40%;height:40%;animation-delay:-0.4s}.anim-cube-fold{width:70%;height:70%;transform:rotateZ(45deg);position:relative}.anim-cube-fold .fold-cube{float:left;width:50%;height:50%;position:relative;transform:scale(1.1)}.anim-cube-fold .fold-cube::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--loader-color);animation:cube-fold-anim calc(var(--loader-speed) * 2.4) linear infinite both;transform-origin:100% 100%}.anim-cube-fold .fold-cube.cube-2{transform:scale(1.1) rotateZ(90deg)}.anim-cube-fold .fold-cube.cube-2::before{animation-delay:0.3s}.anim-cube-fold .fold-cube.cube-3{transform:scale(1.1) rotateZ(270deg)}.anim-cube-fold .fold-cube.cube-3::before{animation-delay:0.9s}.anim-cube-fold .fold-cube.cube-4{transform:scale(1.1) rotateZ(180deg)}.anim-cube-fold .fold-cube.cube-4::before{animation-delay:0.6s}.anim-breathing{width:60%;height:60%;background-color:var(--loader-color);border-radius:50%;animation:breathe 2s ease-in-out infinite;box-shadow:0 0 15px var(--loader-color)}.anim-glitch-text{font-family:"Courier New", Courier, monospace;font-size:16px;font-weight:900;color:#fff;position:relative;text-shadow:0.05em 0 0 rgba(255, 0, 0, 0.75), -0.025em -0.05em 0 rgba(0, 255, 0, 0.75), 0.025em 0.05em 0 rgba(0, 0, 255, 0.75);animation:glitch 1s infinite}.anim-glitch-text::before,.anim-glitch-text::after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;background:transparent}.anim-glitch-text::before{animation:glitch-anim-1 0.7s infinite linear alternate-reverse;text-shadow:-2px 0 #ff00c1;clip:rect(44px, 450px, 56px, 0)}.anim-glitch-text::after{animation:glitch-anim-2 0.7s infinite linear alternate-reverse;text-shadow:-2px 0 #00fff9, 2px 2px #ff00c1;clip:rect(85px, 450px, 140px, 0)}.anim-plc-module{background:#27272a;border:1.5px solid #3f3f46;border-radius:6px;width:90%;height:90%;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden;font-family:monospace;font-size:8px;color:#a1a1aa}.anim-plc-module .plc-header{background:#3f3f46;color:#fff;font-weight:bold;text-align:center;padding:2px 0}.anim-plc-module .plc-leds{display:flex;flex-direction:column;gap:4px;padding:6px;flex:1;justify-content:center}.anim-plc-module .plc-row{display:flex;justify-content:space-between;align-items:center}.anim-plc-module .plc-led{width:6px;height:6px;border-radius:50%}.anim-plc-module .plc-led.led-green{background:#22c55e;box-shadow:0 0 4px #22c55e}.anim-plc-module .plc-led.led-amber{background:#f59e0b;box-shadow:0 0 4px #f59e0b}.anim-plc-module .plc-led.led-red{background:#ef4444}.anim-plc-module .plc-led.blinking{animation:blink 0.8s infinite}.anim-plc-module .plc-led.flicker{animation:blink 0.25s infinite}.anim-plc-module .plc-led.flicker-delayed{animation:blink 0.35s infinite 0.15s}.anim-plc-module .plc-led.off{background:#52525b;box-shadow:none}.anim-m580-signal{display:flex;align-items:flex-end;justify-content:space-between;width:80%;height:60%}.anim-m580-signal div{width:14%;background-color:#22c55e;border-radius:1px;box-shadow:0 0 3px #22c55e;animation:signal-rise 1.5s ease-in-out infinite}.anim-m580-signal div:nth-child(1){height:20%;animation-delay:0.1s}.anim-m580-signal div:nth-child(2){height:40%;animation-delay:0.2s}.anim-m580-signal div:nth-child(3){height:60%;animation-delay:0.3s}.anim-m580-signal div:nth-child(4){height:80%;animation-delay:0.4s}.anim-m580-signal div:nth-child(5){height:100%;animation-delay:0.5s}.anim-circuit-board{width:100%;height:100%}.anim-circuit-board svg{width:100%;height:100%}.anim-circuit-board .circuit-path{stroke:rgba(120, 120, 120, 0.15);stroke-width:3px}.anim-circuit-board .circuit-node{fill:none;stroke:var(--loader-color);stroke-width:2.5px}.anim-circuit-board .circuit-pulse{fill:var(--loader-color);box-shadow:0 0 8px var(--loader-color)}.anim-callout-rotate{width:100%;height:100%;position:relative}.anim-callout-rotate .callout-ring{width:100%;height:100%;border:var(--loader-thickness) dashed color-mix(in srgb, var(--loader-color) 40%, transparent);border-radius:50%;box-sizing:border-box;animation:spin calc(var(--loader-speed) * 3) linear infinite}.anim-callout-rotate .callout-arrow{position:absolute;width:30%;height:30%;border:var(--loader-thickness) solid var(--loader-color);border-top:none;border-left:none;top:35%;left:35%;transform:rotate(-45deg);animation:spin var(--loader-speed) ease-in-out infinite}.anim-infinite-roller{display:flex;align-items:center;justify-content:space-around;width:100%;height:30%;border-radius:10px;background:rgba(120, 120, 120, 0.1);padding:0 4px;box-sizing:border-box}.anim-infinite-roller div{width:16%;height:60%;background-color:var(--loader-color);border-radius:50%;animation:roll-slide 1.5s ease-in-out infinite}.anim-infinite-roller div:nth-child(1){animation-delay:0s}.anim-infinite-roller div:nth-child(2){animation-delay:0.25s}.anim-infinite-roller div:nth-child(3){animation-delay:0.5s}.anim-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.anim-image img{max-width:90%;max-height:90%;object-fit:contain;animation:pulse-grow 2s ease-in-out infinite}@keyframes spin{100%{transform:rotate(360deg)}}@keyframes breathe{0%,100%{opacity:0.45;transform:scale(0.95)}50%{opacity:1;transform:scale(1.05)}}@keyframes dots-pulse{0%,100%{transform:scale(0.3);opacity:0.2}50%{transform:scale(1);opacity:1}}@keyframes bar-slide{0%{left:-50%}100%{left:100%}}@keyframes pulse-grow{0%,100%{transform:scale(0);opacity:0.8}50%{transform:scale(1);opacity:0.2}}@keyframes bounce-scale{0%,100%{transform:scale(0)}50%{transform:scale(1)}}@keyframes grid-fade{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.3;transform:scale(0.7)}}@keyframes wave-stretch{0%,100%{transform:scaleY(0.3)}50%{transform:scaleY(1)}}@keyframes pulse-heart{0%{transform:scale(0.9)}25%{transform:scale(1.1)}35%{transform:scale(1)}55%{transform:scale(1.15)}70%{transform:scale(1)}100%{transform:scale(0.9)}}@keyframes ripple-grow{0%{width:0;height:0;opacity:1}100%{width:100%;height:100%;opacity:0}}@keyframes loop-crawl{0%{stroke-dashoffset:320}100%{stroke-dashoffset:0}}@keyframes wifi-pulse{0%,100%{opacity:0.25}50%{opacity:1}}@keyframes gradient-move{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}@keyframes shuffle-move{0%,100%{transform:translate(0, 0)}25%{transform:translate(120%, 0)}50%{transform:translate(120%, 120%)}75%{transform:translate(0, 120%)}}@keyframes dna-twist{0%,100%{transform:rotateY(0deg)}50%{transform:rotateY(180deg)}}@keyframes orbit-spin{0%{transform:rotate(0deg) translateX(0px)}100%{transform:rotate(360deg) translateX(0px)}}@keyframes stair-climb{0%{transform:translate(0, 0)}20%{transform:translate(0, -25%)}40%{transform:translate(25%, -25%)}60%{transform:translate(25%, -50%)}80%{transform:translate(50%, -50%)}100%{transform:translate(50%, -25%)}}@keyframes drop-fall{0%{transform:scale(0) translateY(0);opacity:0}10%{transform:scale(1) translateY(0);opacity:1}80%{transform:scale(1) translateY(250%);opacity:1}90%,100%{transform:scale(0) translateY(250%);opacity:0}}@keyframes surface-ripple{0%,75%{transform:scale(0.2);opacity:0}82%{opacity:1}100%{transform:scale(1.2);opacity:0}}@keyframes neon-glow-scale{0%{box-shadow:0 0 10px color-mix(in srgb, var(--loader-color) 30%, transparent)}100%{box-shadow:0 0 25px color-mix(in srgb, var(--loader-color) 75%, transparent)}}@keyframes neuro-pulse-scale{0%{transform:scale(0.6);opacity:0.8}100%{transform:scale(4.5);opacity:0}}@keyframes cube-fold-anim{0%,10%{transform:perspective(140px) rotateX(-180deg);opacity:0}25%,75%{transform:perspective(140px) rotateX(0deg);opacity:1}90%,100%{transform:perspective(140px) rotateY(180deg);opacity:0}}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-2px, 2px)}40%{transform:translate(-2px, -2px)}60%{transform:translate(2px, 2px)}80%{transform:translate(2px, -2px)}100%{transform:translate(0)}}@keyframes glitch-anim-1{0%{clip:rect(15px, 9999px, 66px, 0)}5%{clip:rect(85px, 9999px, 5px, 0)}10%{clip:rect(34px, 9999px, 78px, 0)}15%{clip:rect(67px, 9999px, 12px, 0)}20%{clip:rect(12px, 9999px, 115px, 0)}25%{clip:rect(98px, 9999px, 94px, 0)}30%{clip:rect(5px, 9999px, 22px, 0)}35%{clip:rect(143px, 9999px, 87px, 0)}40%{clip:rect(61px, 9999px, 140px, 0)}45%{clip:rect(72px, 9999px, 34px, 0)}50%{clip:rect(110px, 9999px, 99px, 0)}55%{clip:rect(2px, 9999px, 45px, 0)}60%{clip:rect(89px, 9999px, 112px, 0)}65%{clip:rect(30px, 9999px, 5px, 0)}70%{clip:rect(122px, 9999px, 80px, 0)}75%{clip:rect(56px, 9999px, 18px, 0)}80%{clip:rect(95px, 9999px, 134px, 0)}85%{clip:rect(14px, 9999px, 49px, 0)}90%{clip:rect(68px, 9999px, 91px, 0)}95%{clip:rect(104px, 9999px, 120px, 0)}100%{clip:rect(40px, 9999px, 10px, 0)}}@keyframes glitch-anim-2{0%{clip:rect(112px, 9999px, 76px, 0)}5%{clip:rect(25px, 9999px, 5px, 0)}10%{clip:rect(98px, 9999px, 34px, 0)}15%{clip:rect(5px, 9999px, 145px, 0)}20%{clip:rect(87px, 9999px, 67px, 0)}25%{clip:rect(120px, 9999px, 10px, 0)}30%{clip:rect(43px, 9999px, 89px, 0)}35%{clip:rect(72px, 9999px, 120px, 0)}40%{clip:rect(2px, 9999px, 54px, 0)}45%{clip:rect(134px, 9999px, 98px, 0)}50%{clip:rect(61px, 9999px, 15px, 0)}55%{clip:rect(95px, 9999px, 130px, 0)}60%{clip:rect(14px, 9999px, 45px, 0)}65%{clip:rect(80px, 9999px, 112px, 0)}70%{clip:rect(34px, 9999px, 2px, 0)}75%{clip:rect(104px, 9999px, 80px, 0)}80%{clip:rect(44px, 9999px, 91px, 0)}85%{clip:rect(122px, 9999px, 5px, 0)}90%{clip:rect(56px, 9999px, 140px, 0)}95%{clip:rect(89px, 9999px, 22px, 0)}100%{clip:rect(110px, 9999px, 99px, 0)}}@keyframes blink{0%,100%{opacity:0.25}50%{opacity:1}}@keyframes signal-rise{0%,100%{opacity:0.2;transform:scaleY(0.7)}50%{opacity:1;transform:scaleY(1)}}@keyframes roll-slide{0%,100%{transform:translateX(-30%)}50%{transform:translateX(30%)}}@keyframes status-stroke{100%{stroke-dashoffset:0}}@keyframes status-stroke-offset{100%{stroke-dashoffset:0}}`;
|
|
5223
|
+
|
|
5224
|
+
const Loader = class {
|
|
5225
|
+
constructor(hostRef) {
|
|
5226
|
+
index.registerInstance(this, hostRef);
|
|
5227
|
+
this.uiShow = index.createEvent(this, "uiShow");
|
|
5228
|
+
this.uiHide = index.createEvent(this, "uiHide");
|
|
5229
|
+
}
|
|
5230
|
+
get element() { return index.getElement(this); }
|
|
5231
|
+
/**
|
|
5232
|
+
* Accessibility ARIA label
|
|
5233
|
+
*/
|
|
5234
|
+
ariaLabel = 'Loading...';
|
|
5235
|
+
/**
|
|
5236
|
+
* ARIA live region mode
|
|
5237
|
+
*/
|
|
5238
|
+
ariaLive = 'polite';
|
|
5239
|
+
/**
|
|
5240
|
+
* Apply background blur (glassmorphic backdrop)
|
|
5241
|
+
*/
|
|
5242
|
+
backdropBlur = false;
|
|
5243
|
+
/**
|
|
5244
|
+
* Alias for blur attribute used in demo configuration
|
|
5245
|
+
*/
|
|
5246
|
+
enableBlur = false;
|
|
5247
|
+
/**
|
|
5248
|
+
* Semantic color variant ('primary', 'secondary', etc.) or custom hex/gradient string
|
|
5249
|
+
*/
|
|
5250
|
+
color = 'primary';
|
|
5251
|
+
/**
|
|
5252
|
+
* Displays the loader as a full viewport overlay
|
|
5253
|
+
*/
|
|
5254
|
+
fullscreen = false;
|
|
5255
|
+
/**
|
|
5256
|
+
* Text label to display alongside the loader animation
|
|
5257
|
+
*/
|
|
5258
|
+
label;
|
|
5259
|
+
/**
|
|
5260
|
+
* Sub-label description text
|
|
5261
|
+
*/
|
|
5262
|
+
description;
|
|
5263
|
+
/**
|
|
5264
|
+
* Position of the label relative to the loading animation
|
|
5265
|
+
*/
|
|
5266
|
+
labelPosition = 'bottom';
|
|
5267
|
+
/**
|
|
5268
|
+
* Displays the loader as an absolute overlay over its relative parent container
|
|
5269
|
+
*/
|
|
5270
|
+
overlay = false;
|
|
5271
|
+
/**
|
|
5272
|
+
* Opacity value of the overlay backdrop (0 to 1)
|
|
5273
|
+
*/
|
|
5274
|
+
overlayOpacity = 0.5;
|
|
5275
|
+
/**
|
|
5276
|
+
* Custom background color/gradient for overlay mode
|
|
5277
|
+
*/
|
|
5278
|
+
overlayBackground;
|
|
5279
|
+
/**
|
|
5280
|
+
* Size of the loader preset ('3xs'...'jumbo') or custom CSS value ('120px', '4rem')
|
|
5281
|
+
*/
|
|
5282
|
+
size = 'md';
|
|
5283
|
+
/**
|
|
5284
|
+
* Speed of animation cycle
|
|
5285
|
+
*/
|
|
5286
|
+
speed = 'normal';
|
|
5287
|
+
/**
|
|
5288
|
+
* Stroke width thickness for circular loaders (spinner, ring)
|
|
5289
|
+
*/
|
|
5290
|
+
thickness = 3;
|
|
5291
|
+
/**
|
|
5292
|
+
* The animation style variant type (34 total variants)
|
|
5293
|
+
*/
|
|
5294
|
+
type = 'spinner';
|
|
5295
|
+
/**
|
|
5296
|
+
* Whether the loader is visible
|
|
5297
|
+
*/
|
|
5298
|
+
visible = true;
|
|
5299
|
+
/**
|
|
5300
|
+
* Loader style theme variant
|
|
5301
|
+
*/
|
|
5302
|
+
variant = 'standard';
|
|
5303
|
+
/**
|
|
5304
|
+
* Determinate state progress value (0 to 100)
|
|
5305
|
+
*/
|
|
5306
|
+
value;
|
|
5307
|
+
/**
|
|
5308
|
+
* Enables simulated predictive non-linear crawling progress up to 95%
|
|
5309
|
+
*/
|
|
5310
|
+
predictive = false;
|
|
5311
|
+
/**
|
|
5312
|
+
* Array of status messages to rotate through automatically
|
|
5313
|
+
*/
|
|
5314
|
+
messages;
|
|
5315
|
+
/**
|
|
5316
|
+
* Rotation interval time in milliseconds
|
|
5317
|
+
*/
|
|
5318
|
+
messageInterval = 2500;
|
|
5319
|
+
/**
|
|
5320
|
+
* Image URL when using type="image"
|
|
5321
|
+
*/
|
|
5322
|
+
image;
|
|
5323
|
+
/**
|
|
5324
|
+
* Letters pool for Matrix matrix-rain animation
|
|
5325
|
+
*/
|
|
5326
|
+
rainText;
|
|
5327
|
+
/**
|
|
5328
|
+
* Number of columns in Matrix digital rain
|
|
5329
|
+
*/
|
|
5330
|
+
rainColumns = 5;
|
|
5331
|
+
/**
|
|
5332
|
+
* Traps keyboard focus inside the loader overlay (useful for fullscreen modals)
|
|
5333
|
+
*/
|
|
5334
|
+
trapFocus = false;
|
|
5335
|
+
/**
|
|
5336
|
+
* Current loading status state
|
|
5337
|
+
*/
|
|
5338
|
+
status = 'loading';
|
|
5339
|
+
activeLabel;
|
|
5340
|
+
currentProgress = 0;
|
|
5341
|
+
// Events
|
|
5342
|
+
uiShow;
|
|
5343
|
+
uiHide;
|
|
5344
|
+
messageTimer;
|
|
5345
|
+
predictiveTimer;
|
|
5346
|
+
activeMessageIndex = 0;
|
|
5347
|
+
parsedMessages = [];
|
|
5348
|
+
// Focus trap state
|
|
5349
|
+
originalFocusedElement = null;
|
|
5350
|
+
focusableElements = [];
|
|
5351
|
+
// Matrix rain canvas references
|
|
5352
|
+
canvasElement;
|
|
5353
|
+
canvasAnimationId;
|
|
5354
|
+
canvasColumnsDrops = [];
|
|
5355
|
+
handleVisibilityChange(newValue) {
|
|
5356
|
+
if (newValue) {
|
|
5357
|
+
this.uiShow.emit();
|
|
5358
|
+
this.startTimers();
|
|
5359
|
+
if (this.trapFocus) {
|
|
5360
|
+
this.setupFocusTrap();
|
|
5361
|
+
}
|
|
5362
|
+
}
|
|
5363
|
+
else {
|
|
5364
|
+
this.uiHide.emit();
|
|
5365
|
+
this.stopTimers();
|
|
5366
|
+
this.releaseFocusTrap();
|
|
5367
|
+
}
|
|
5368
|
+
}
|
|
5369
|
+
parseMessagesProp() {
|
|
5370
|
+
if (!this.messages) {
|
|
5371
|
+
this.parsedMessages = [];
|
|
5372
|
+
return;
|
|
5373
|
+
}
|
|
5374
|
+
if (typeof this.messages === 'string') {
|
|
5375
|
+
try {
|
|
5376
|
+
this.parsedMessages = JSON.parse(this.messages);
|
|
5377
|
+
}
|
|
5378
|
+
catch {
|
|
5379
|
+
// Fallback split by comma or treat as single item array
|
|
5380
|
+
this.parsedMessages = this.messages.includes(',')
|
|
5381
|
+
? this.messages.split(',').map(m => m.trim())
|
|
5382
|
+
: [this.messages];
|
|
5383
|
+
}
|
|
5384
|
+
}
|
|
5385
|
+
else if (Array.isArray(this.messages)) {
|
|
5386
|
+
this.parsedMessages = this.messages;
|
|
5387
|
+
}
|
|
5388
|
+
this.activeMessageIndex = 0;
|
|
5389
|
+
this.updateActiveLabel();
|
|
5390
|
+
}
|
|
5391
|
+
handleStatusChange(newStatus) {
|
|
5392
|
+
if (newStatus === 'success' && this.predictive) {
|
|
5393
|
+
// Rapidly complete progress to 100%
|
|
5394
|
+
clearInterval(this.predictiveTimer);
|
|
5395
|
+
this.predictiveTimer = setInterval(() => {
|
|
5396
|
+
if (this.currentProgress < 100) {
|
|
5397
|
+
this.currentProgress = Math.min(100, this.currentProgress + 5);
|
|
5398
|
+
}
|
|
5399
|
+
else {
|
|
5400
|
+
clearInterval(this.predictiveTimer);
|
|
5401
|
+
}
|
|
5402
|
+
}, 30);
|
|
5403
|
+
}
|
|
5404
|
+
}
|
|
5405
|
+
componentWillLoad() {
|
|
5406
|
+
this.parseMessagesProp();
|
|
5407
|
+
this.activeLabel = this.label;
|
|
5408
|
+
if (this.value !== undefined) {
|
|
5409
|
+
this.currentProgress = this.value;
|
|
5410
|
+
}
|
|
5411
|
+
}
|
|
5412
|
+
componentDidLoad() {
|
|
5413
|
+
if (this.visible) {
|
|
5414
|
+
this.uiShow.emit();
|
|
5415
|
+
this.startTimers();
|
|
5416
|
+
if (this.trapFocus) {
|
|
5417
|
+
this.setupFocusTrap();
|
|
5418
|
+
}
|
|
5419
|
+
if (this.type === 'raining-letters') {
|
|
5420
|
+
this.initMatrixRain();
|
|
5421
|
+
}
|
|
5422
|
+
}
|
|
5423
|
+
}
|
|
5424
|
+
componentDidUpdate() {
|
|
5425
|
+
if (this.type === 'raining-letters' && !this.canvasAnimationId) {
|
|
5426
|
+
this.initMatrixRain();
|
|
5427
|
+
}
|
|
5428
|
+
else if (this.type !== 'raining-letters' && this.canvasAnimationId) {
|
|
5429
|
+
this.stopMatrixRain();
|
|
5430
|
+
}
|
|
5431
|
+
}
|
|
5432
|
+
disconnectedCallback() {
|
|
5433
|
+
this.stopTimers();
|
|
5434
|
+
this.releaseFocusTrap();
|
|
5435
|
+
this.stopMatrixRain();
|
|
5436
|
+
}
|
|
5437
|
+
startTimers() {
|
|
5438
|
+
this.stopTimers();
|
|
5439
|
+
// 1. Rotating Messages
|
|
5440
|
+
if (this.parsedMessages.length > 0) {
|
|
5441
|
+
this.updateActiveLabel();
|
|
5442
|
+
this.messageTimer = setInterval(() => {
|
|
5443
|
+
this.activeMessageIndex = (this.activeMessageIndex + 1) % this.parsedMessages.length;
|
|
5444
|
+
this.updateActiveLabel();
|
|
5445
|
+
}, this.messageInterval);
|
|
5446
|
+
}
|
|
5447
|
+
// 2. Predictive Crawling Progress
|
|
5448
|
+
if (this.predictive && this.status === 'loading') {
|
|
5449
|
+
this.currentProgress = 0;
|
|
5450
|
+
this.predictiveTimer = setInterval(() => {
|
|
5451
|
+
if (this.currentProgress < 95) {
|
|
5452
|
+
// Logarithmic crawl: slower as progress approaches 95%
|
|
5453
|
+
const remaining = 95 - this.currentProgress;
|
|
5454
|
+
const increment = Math.max(0.1, remaining * 0.05 * Math.random());
|
|
5455
|
+
this.currentProgress = parseFloat((this.currentProgress + increment).toFixed(1));
|
|
5456
|
+
}
|
|
5457
|
+
}, 350);
|
|
5458
|
+
}
|
|
5459
|
+
}
|
|
5460
|
+
stopTimers() {
|
|
5461
|
+
if (this.messageTimer) {
|
|
5462
|
+
clearInterval(this.messageTimer);
|
|
5463
|
+
this.messageTimer = undefined;
|
|
5464
|
+
}
|
|
5465
|
+
if (this.predictiveTimer) {
|
|
5466
|
+
clearInterval(this.predictiveTimer);
|
|
5467
|
+
this.predictiveTimer = undefined;
|
|
5468
|
+
}
|
|
5469
|
+
}
|
|
5470
|
+
updateActiveLabel() {
|
|
5471
|
+
if (this.parsedMessages.length > 0 && this.activeMessageIndex < this.parsedMessages.length) {
|
|
5472
|
+
this.activeLabel = this.parsedMessages[this.activeMessageIndex];
|
|
5473
|
+
}
|
|
5474
|
+
else {
|
|
5475
|
+
this.activeLabel = this.label;
|
|
5476
|
+
}
|
|
5477
|
+
}
|
|
5478
|
+
// Focus trapping support
|
|
5479
|
+
setupFocusTrap() {
|
|
5480
|
+
this.originalFocusedElement = document.activeElement;
|
|
5481
|
+
setTimeout(() => {
|
|
5482
|
+
this.focusableElements = this.getFocusableElements();
|
|
5483
|
+
if (this.focusableElements.length > 0) {
|
|
5484
|
+
this.focusableElements[0].focus();
|
|
5485
|
+
}
|
|
5486
|
+
}, 50);
|
|
5487
|
+
document.addEventListener('keydown', this.handleKeyDown);
|
|
5488
|
+
}
|
|
5489
|
+
releaseFocusTrap() {
|
|
5490
|
+
document.removeEventListener('keydown', this.handleKeyDown);
|
|
5491
|
+
if (this.originalFocusedElement) {
|
|
5492
|
+
this.originalFocusedElement.focus();
|
|
5493
|
+
this.originalFocusedElement = null;
|
|
5494
|
+
}
|
|
5495
|
+
}
|
|
5496
|
+
getFocusableElements() {
|
|
5497
|
+
if (!this.element.shadowRoot)
|
|
5498
|
+
return [];
|
|
5499
|
+
// Select elements inside shadow root that might be focusable
|
|
5500
|
+
const selectors = 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex="0"], [contenteditable]';
|
|
5501
|
+
const elements = Array.from(this.element.shadowRoot.querySelectorAll(selectors));
|
|
5502
|
+
return elements;
|
|
5503
|
+
}
|
|
5504
|
+
handleKeyDown = (e) => {
|
|
5505
|
+
if (!this.visible || !this.trapFocus)
|
|
5506
|
+
return;
|
|
5507
|
+
if (e.key === 'Tab') {
|
|
5508
|
+
this.focusableElements = this.getFocusableElements();
|
|
5509
|
+
if (this.focusableElements.length === 0) {
|
|
5510
|
+
e.preventDefault();
|
|
5511
|
+
return;
|
|
5512
|
+
}
|
|
5513
|
+
const first = this.focusableElements[0];
|
|
5514
|
+
const last = this.focusableElements[this.focusableElements.length - 1];
|
|
5515
|
+
const active = this.element.shadowRoot?.activeElement;
|
|
5516
|
+
if (e.shiftKey) {
|
|
5517
|
+
if (active === first || active === document.body) {
|
|
5518
|
+
last.focus();
|
|
5519
|
+
e.preventDefault();
|
|
5520
|
+
}
|
|
5521
|
+
}
|
|
5522
|
+
else {
|
|
5523
|
+
if (active === last) {
|
|
5524
|
+
first.focus();
|
|
5525
|
+
e.preventDefault();
|
|
5526
|
+
}
|
|
5527
|
+
}
|
|
5528
|
+
}
|
|
5529
|
+
};
|
|
5530
|
+
// Matrix Rain Canvas Animation
|
|
5531
|
+
initMatrixRain() {
|
|
5532
|
+
if (!this.canvasElement)
|
|
5533
|
+
return;
|
|
5534
|
+
this.stopMatrixRain();
|
|
5535
|
+
const canvas = this.canvasElement;
|
|
5536
|
+
const ctx = canvas.getContext('2d');
|
|
5537
|
+
if (!ctx)
|
|
5538
|
+
return;
|
|
5539
|
+
// Set dimensions
|
|
5540
|
+
const width = 160;
|
|
5541
|
+
const height = 120;
|
|
5542
|
+
canvas.width = width;
|
|
5543
|
+
canvas.height = height;
|
|
5544
|
+
const charPool = this.rainText || 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
|
|
5545
|
+
const columnsCount = Math.max(3, this.rainColumns);
|
|
5546
|
+
const fontSize = Math.floor(width / columnsCount);
|
|
5547
|
+
// Initialize drops y-coordinates
|
|
5548
|
+
this.canvasColumnsDrops = [];
|
|
5549
|
+
for (let i = 0; i < columnsCount; i++) {
|
|
5550
|
+
this.canvasColumnsDrops.push(Math.random() * -10);
|
|
5551
|
+
}
|
|
5552
|
+
const draw = () => {
|
|
5553
|
+
// Fade out background to create trailing stream effect
|
|
5554
|
+
ctx.fillStyle = 'rgba(255, 255, 255, 0.15)';
|
|
5555
|
+
ctx.fillRect(0, 0, width, height);
|
|
5556
|
+
// Set character text color
|
|
5557
|
+
let drawColor = '#10b981'; // default matrix emerald
|
|
5558
|
+
if (this.color && !['primary', 'secondary', 'success', 'danger', 'warning', 'info'].includes(this.color)) {
|
|
5559
|
+
drawColor = this.color;
|
|
5560
|
+
}
|
|
5561
|
+
else if (this.color === 'primary') {
|
|
5562
|
+
drawColor = '#3b82f6'; // default primary blue
|
|
5563
|
+
}
|
|
5564
|
+
else if (this.color === 'danger') {
|
|
5565
|
+
drawColor = '#ef4444';
|
|
5566
|
+
}
|
|
5567
|
+
else if (this.color === 'success') {
|
|
5568
|
+
drawColor = '#10b981';
|
|
5569
|
+
}
|
|
5570
|
+
else if (this.color === 'warning') {
|
|
5571
|
+
drawColor = '#f59e0b';
|
|
5572
|
+
}
|
|
5573
|
+
else if (this.color === 'info') {
|
|
5574
|
+
drawColor = '#06b6d4';
|
|
5575
|
+
}
|
|
5576
|
+
ctx.fillStyle = drawColor;
|
|
5577
|
+
ctx.font = `${fontSize}px monospace`;
|
|
5578
|
+
for (let i = 0; i < this.canvasColumnsDrops.length; i++) {
|
|
5579
|
+
const char = charPool[Math.floor(Math.random() * charPool.length)];
|
|
5580
|
+
const x = i * fontSize + fontSize / 4;
|
|
5581
|
+
const y = this.canvasColumnsDrops[i] * fontSize;
|
|
5582
|
+
ctx.fillText(char, x, y);
|
|
5583
|
+
// Reset drop position if it passes bottom of canvas or randomly resets
|
|
5584
|
+
if (y > height && Math.random() > 0.96) {
|
|
5585
|
+
this.canvasColumnsDrops[i] = 0;
|
|
5586
|
+
}
|
|
5587
|
+
else {
|
|
5588
|
+
this.canvasColumnsDrops[i] += 0.45; // scroll speed
|
|
5589
|
+
}
|
|
5590
|
+
}
|
|
5591
|
+
this.canvasAnimationId = requestAnimationFrame(draw);
|
|
5592
|
+
};
|
|
5593
|
+
draw();
|
|
5594
|
+
}
|
|
5595
|
+
stopMatrixRain() {
|
|
5596
|
+
if (this.canvasAnimationId) {
|
|
5597
|
+
cancelAnimationFrame(this.canvasAnimationId);
|
|
5598
|
+
this.canvasAnimationId = undefined;
|
|
5599
|
+
}
|
|
5600
|
+
}
|
|
5601
|
+
// Dynamic Styles Generator
|
|
5602
|
+
getStyles() {
|
|
5603
|
+
const customStyles = {};
|
|
5604
|
+
// 1. Color Customization
|
|
5605
|
+
if (this.color) {
|
|
5606
|
+
const isCustomColor = this.color.startsWith('#') || this.color.startsWith('rgb') || this.color.includes('gradient');
|
|
5607
|
+
if (isCustomColor) {
|
|
5608
|
+
customStyles['--loader-color'] = this.color;
|
|
5609
|
+
}
|
|
5610
|
+
}
|
|
5611
|
+
// 2. Custom Size
|
|
5612
|
+
if (this.size) {
|
|
5613
|
+
const isCustomSize = !['3xs', '2xs', 'xs', 'small', 'md', 'large', 'xl', '2xl', '3xl', 'jumbo'].includes(this.size);
|
|
5614
|
+
if (isCustomSize) {
|
|
5615
|
+
customStyles['--loader-size'] = this.size;
|
|
5616
|
+
}
|
|
5617
|
+
}
|
|
5618
|
+
// 3. Overlay backdrop opacity and custom background
|
|
5619
|
+
if (this.overlay || this.fullscreen) {
|
|
5620
|
+
customStyles['--overlay-opacity'] = `${this.overlayOpacity}`;
|
|
5621
|
+
if (this.overlayBackground) {
|
|
5622
|
+
customStyles['--overlay-background'] = this.overlayBackground;
|
|
5623
|
+
}
|
|
5624
|
+
}
|
|
5625
|
+
// 4. Custom Speed and Stroke Thickness
|
|
5626
|
+
if (this.speed) {
|
|
5627
|
+
const speedMap = { slow: '2s', normal: '1s', fast: '0.5s' };
|
|
5628
|
+
customStyles['--loader-speed'] = speedMap[this.speed] || '1s';
|
|
5629
|
+
}
|
|
5630
|
+
if (this.thickness) {
|
|
5631
|
+
customStyles['--loader-thickness'] = `${this.thickness}px`;
|
|
5632
|
+
}
|
|
5633
|
+
return customStyles;
|
|
5634
|
+
}
|
|
5635
|
+
render() {
|
|
5636
|
+
if (!this.visible)
|
|
5637
|
+
return null;
|
|
5638
|
+
const isOverlayMode = this.overlay || this.fullscreen;
|
|
5639
|
+
const isCustomSizePreset = ['3xs', '2xs', 'xs', 'small', 'md', 'large', 'xl', '2xl', '3xl', 'jumbo'].includes(this.size);
|
|
5640
|
+
const isSemanticColor = ['primary', 'secondary', 'success', 'danger', 'warning', 'info'].includes(this.color);
|
|
5641
|
+
const useBlur = this.backdropBlur || this.enableBlur;
|
|
5642
|
+
const wrapperClasses = {
|
|
5643
|
+
'loader-wrapper': true,
|
|
5644
|
+
'loader-overlay': isOverlayMode,
|
|
5645
|
+
'loader-fullscreen': this.fullscreen,
|
|
5646
|
+
'loader-blur': useBlur,
|
|
5647
|
+
[`loader-variant-${this.variant}`]: true,
|
|
5648
|
+
};
|
|
5649
|
+
const containerClasses = {
|
|
5650
|
+
'loader-container': true,
|
|
5651
|
+
[`loader-size-${this.size}`]: isCustomSizePreset,
|
|
5652
|
+
[`loader-color-${this.color}`]: isSemanticColor,
|
|
5653
|
+
[`loader-label-${this.labelPosition}`]: true,
|
|
5654
|
+
'loader-status-success': this.status === 'success',
|
|
5655
|
+
'loader-status-error': this.status === 'error',
|
|
5656
|
+
};
|
|
5657
|
+
return (index.h("div", { class: wrapperClasses, style: this.getStyles(), role: isOverlayMode ? 'dialog' : 'status', "aria-modal": isOverlayMode ? 'true' : undefined, "aria-label": this.ariaLabel, "aria-live": this.ariaLive }, isOverlayMode && this.trapFocus && (index.h("div", { tabIndex: 0, class: "focus-trap-sentinel" })), index.h("div", { class: containerClasses }, index.h("div", { class: "loader-visual" }, this.status === 'success' ? (this.renderStatusIcon('success')) : this.status === 'error' ? (this.renderStatusIcon('error')) : (this.renderAnimation())), (this.activeLabel || this.description || this.predictive) && (index.h("div", { class: "loader-text-block" }, this.activeLabel && index.h("span", { class: "loader-label-text" }, this.activeLabel), this.description && index.h("span", { class: "loader-desc-text" }, this.description), this.predictive && (index.h("div", { class: "loader-predictive-bar" }, index.h("div", { class: "loader-predictive-fill", style: { width: `${this.currentProgress}%` } }), index.h("span", { class: "loader-predictive-percentage" }, Math.round(this.currentProgress), "%")))))), isOverlayMode && this.trapFocus && (index.h("div", { tabIndex: 0, class: "focus-trap-sentinel" }))));
|
|
5658
|
+
}
|
|
5659
|
+
// Draw checkmarks / cross marks for success / error states
|
|
5660
|
+
renderStatusIcon(status) {
|
|
5661
|
+
if (status === 'success') {
|
|
5662
|
+
return (index.h("div", { class: "status-icon-wrapper success" }, index.h("svg", { viewBox: "0 0 52 52", class: "status-svg" }, index.h("circle", { cx: "26", cy: "26", r: "25", fill: "none", class: "status-circle-bg" }), index.h("path", { fill: "none", d: "M14.1 27.2l7.1 7.2 16.7-16.8", class: "status-check-path" }))));
|
|
5663
|
+
}
|
|
5664
|
+
else {
|
|
5665
|
+
return (index.h("div", { class: "status-icon-wrapper error" }, index.h("svg", { viewBox: "0 0 52 52", class: "status-svg" }, index.h("circle", { cx: "26", cy: "26", r: "25", fill: "none", class: "status-circle-bg" }), index.h("path", { fill: "none", d: "M16 16l20 20M36 16L16 36", class: "status-cross-path" }))));
|
|
5666
|
+
}
|
|
5667
|
+
}
|
|
5668
|
+
// Core Router rendering 34 distinct High-Fidelity animations
|
|
5669
|
+
renderAnimation() {
|
|
5670
|
+
switch (this.type) {
|
|
5671
|
+
case 'dots':
|
|
5672
|
+
return (index.h("div", { class: "anim-dots" }, index.h("div", null), index.h("div", null), index.h("div", null)));
|
|
5673
|
+
case 'bar':
|
|
5674
|
+
return (index.h("div", { class: "anim-bar" }, this.value !== undefined ? (
|
|
5675
|
+
// Determinate bar
|
|
5676
|
+
index.h("div", { class: "bar-determinate", style: { width: `${this.value}%` } })) : (
|
|
5677
|
+
// Indeterminate crawling pulse
|
|
5678
|
+
index.h("div", { class: "bar-indeterminate" }))));
|
|
5679
|
+
case 'pulse':
|
|
5680
|
+
return index.h("div", { class: "anim-pulse" });
|
|
5681
|
+
case 'ring':
|
|
5682
|
+
return index.h("div", { class: "anim-ring" });
|
|
5683
|
+
case 'bounce':
|
|
5684
|
+
return (index.h("div", { class: "anim-bounce" }, index.h("div", null), index.h("div", null)));
|
|
5685
|
+
case 'grid':
|
|
5686
|
+
return (index.h("div", { class: "anim-grid" }, index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null)));
|
|
5687
|
+
case 'wave':
|
|
5688
|
+
return (index.h("div", { class: "anim-wave" }, index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null)));
|
|
5689
|
+
case 'dual-ring':
|
|
5690
|
+
return index.h("div", { class: "anim-dual-ring" });
|
|
5691
|
+
case 'heartbeat':
|
|
5692
|
+
return (index.h("div", { class: "anim-heartbeat" }, index.h("svg", { viewBox: "0 0 32 32", class: "heart-svg" }, index.h("path", { d: "M16 28.5S2 18.2 2 10.5a6.5 6.5 0 0 1 11-4.8 6.5 6.5 0 0 1 11 4.8c0 7.7-14 18-14 18z" }))));
|
|
5693
|
+
case 'clock':
|
|
5694
|
+
return (index.h("div", { class: "anim-clock" }, index.h("div", { class: "clock-hour" }), index.h("div", { class: "clock-minute" })));
|
|
5695
|
+
case 'raining-letters':
|
|
5696
|
+
return (index.h("div", { class: "anim-raining-letters" }, index.h("canvas", { ref: el => this.canvasElement = el })));
|
|
5697
|
+
case 'ripple':
|
|
5698
|
+
return (index.h("div", { class: "anim-ripple" }, index.h("div", null), index.h("div", null), index.h("div", null)));
|
|
5699
|
+
case 'infinite':
|
|
5700
|
+
return (index.h("div", { class: "anim-infinite" }, index.h("svg", { viewBox: "0 0 100 50" }, index.h("path", { d: "M30 15c-8.3 0-15 6.7-15 15s6.7 15 15 15 15-6.7 15-15-6.7-15-15-15zm40 0c-8.3 0-15 6.7-15 15s6.7 15 15 15 15-6.7 15-15-6.7-15-15-15z", class: "infinity-bg" }), index.h("path", { d: "M30 15c-8.3 0-15 6.7-15 15s6.7 15 15 15 15-6.7 15-15-6.7-15-15-15zm40 0c-8.3 0-15 6.7-15 15s6.7 15 15 15 15-6.7 15-15-6.7-15-15-15z", class: "infinity-loop" }))));
|
|
5701
|
+
case 'wifi':
|
|
5702
|
+
return (index.h("div", { class: "anim-wifi" }, index.h("div", { class: "wifi-dot" }), index.h("div", { class: "wifi-arc-1" }), index.h("div", { class: "wifi-arc-2" }), index.h("div", { class: "wifi-arc-3" })));
|
|
5703
|
+
case 'rainbow':
|
|
5704
|
+
return index.h("div", { class: "anim-rainbow" });
|
|
5705
|
+
case 'square-shuffle':
|
|
5706
|
+
return (index.h("div", { class: "anim-square-shuffle" }, index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null)));
|
|
5707
|
+
case 'dna-helix':
|
|
5708
|
+
return (index.h("div", { class: "anim-dna-helix" }, Array.from({ length: 12 }).map((_, i) => (index.h("div", { class: "dna-strand", style: { '--i': `${i}` } }, index.h("div", { class: "dna-dot dot-top" }), index.h("div", { class: "dna-bar" }), index.h("div", { class: "dna-dot dot-bottom" }))))));
|
|
5709
|
+
case 'atom-sphere':
|
|
5710
|
+
return (index.h("div", { class: "anim-atom-sphere" }, index.h("div", { class: "atom-nucleus" }), index.h("div", { class: "atom-orbit orbit-1" }, index.h("div", { class: "atom-electron" })), index.h("div", { class: "atom-orbit orbit-2" }, index.h("div", { class: "atom-electron" })), index.h("div", { class: "atom-orbit orbit-3" }, index.h("div", { class: "atom-electron" }))));
|
|
5711
|
+
case 'staircase':
|
|
5712
|
+
return (index.h("div", { class: "anim-staircase" }, index.h("div", { class: "stair-climber" }), index.h("div", { class: "stairs" }, index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null))));
|
|
5713
|
+
case 'radar':
|
|
5714
|
+
return (index.h("div", { class: "anim-radar" }, index.h("div", { class: "radar-scanner" }), index.h("div", { class: "radar-ring" }), index.h("div", { class: "radar-ring-mid" }), index.h("div", { class: "radar-dot" })));
|
|
5715
|
+
case 'liquid-drop':
|
|
5716
|
+
return (index.h("div", { class: "anim-liquid-drop" }, index.h("div", { class: "drop-nozzle" }), index.h("div", { class: "drop-droplet" }), index.h("div", { class: "drop-surface" })));
|
|
5717
|
+
case 'neon-path':
|
|
5718
|
+
return (index.h("div", { class: "anim-neon-path" }, index.h("div", null)));
|
|
5719
|
+
case 'neuro-pulse':
|
|
5720
|
+
return (index.h("div", { class: "anim-neuro-pulse" }, index.h("svg", { viewBox: "0 0 100 100", class: "neuro-svg" }, index.h("path", { d: "M50 50 L20 20 M50 50 L80 20 M50 50 L50 80 M50 50 L20 70 M50 50 L80 70", class: "neuro-branch" }), index.h("circle", { cx: "50", cy: "50", r: "8", class: "neuro-center" }), index.h("circle", { cx: "20", cy: "20", r: "4", class: "neuro-terminal" }), index.h("circle", { cx: "80", cy: "20", r: "4", class: "neuro-terminal" }), index.h("circle", { cx: "50", cy: "80", r: "4", class: "neuro-terminal" }), index.h("circle", { cx: "20", cy: "70", r: "4", class: "neuro-terminal" }), index.h("circle", { cx: "80", cy: "70", r: "4", class: "neuro-terminal" }), index.h("circle", { cx: "50", cy: "50", class: "neuro-active-pulse pulse-1" }), index.h("circle", { cx: "50", cy: "50", class: "neuro-active-pulse pulse-2" }))));
|
|
5721
|
+
case 'vortex-ring':
|
|
5722
|
+
return (index.h("div", { class: "anim-vortex-ring" }, index.h("div", null), index.h("div", null), index.h("div", null)));
|
|
5723
|
+
case 'cube-fold':
|
|
5724
|
+
return (index.h("div", { class: "anim-cube-fold" }, index.h("div", { class: "fold-cube cube-1" }), index.h("div", { class: "fold-cube cube-2" }), index.h("div", { class: "fold-cube cube-4" }), index.h("div", { class: "fold-cube cube-3" })));
|
|
5725
|
+
case 'breathing':
|
|
5726
|
+
return index.h("div", { class: "anim-breathing" });
|
|
5727
|
+
case 'glitch-text':
|
|
5728
|
+
return (index.h("div", { class: "anim-glitch-text", "data-text": "LOADING" }, "LOADING"));
|
|
5729
|
+
case 'plc-module':
|
|
5730
|
+
return (index.h("div", { class: "anim-plc-module" }, index.h("div", { class: "plc-header" }, "CPU"), index.h("div", { class: "plc-leds" }, index.h("div", { class: "plc-row" }, index.h("span", { class: "led-label" }, "RUN"), index.h("span", { class: "plc-led led-green blinking" })), index.h("div", { class: "plc-row" }, index.h("span", { class: "led-label" }, "ERR"), index.h("span", { class: "plc-led led-red off" })), index.h("div", { class: "plc-row" }, index.h("span", { class: "led-label" }, "COM"), index.h("span", { class: "plc-led led-amber flicker" })), index.h("div", { class: "plc-row" }, index.h("span", { class: "led-label" }, "I/O"), index.h("span", { class: "plc-led led-green flicker-delayed" })))));
|
|
5731
|
+
case 'm580-signal':
|
|
5732
|
+
return (index.h("div", { class: "anim-m580-signal" }, index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null), index.h("div", null)));
|
|
5733
|
+
case 'circuit-board':
|
|
5734
|
+
return (index.h("div", { class: "anim-circuit-board" }, index.h("svg", { viewBox: "0 0 100 100" }, index.h("path", { d: "M10 50 L40 50 L50 40 L90 40 M40 50 L50 60 L80 60", class: "circuit-path", fill: "none" }), index.h("circle", { cx: "10", cy: "50", r: "3", class: "circuit-node" }), index.h("circle", { cx: "90", cy: "40", r: "3", class: "circuit-node" }), index.h("circle", { cx: "80", cy: "60", r: "3", class: "circuit-node" }), index.h("circle", { cx: "0", cy: "0", r: "2.5", class: "circuit-pulse pulse-a" }, index.h("animateMotion", { dur: "2s", repeatCount: "indefinite", path: "M10 50 L40 50 L50 40 L90 40" })), index.h("circle", { cx: "0", cy: "0", r: "2.5", class: "circuit-pulse pulse-b" }, index.h("animateMotion", { dur: "2s", repeatCount: "indefinite", path: "M40 50 L50 60 L80 60", begin: "0.5s" })))));
|
|
5735
|
+
case 'callout-rotate':
|
|
5736
|
+
return (index.h("div", { class: "anim-callout-rotate" }, index.h("div", { class: "callout-ring" }), index.h("div", { class: "callout-arrow" })));
|
|
5737
|
+
case 'infinite-roller':
|
|
5738
|
+
return (index.h("div", { class: "anim-infinite-roller" }, index.h("div", null), index.h("div", null), index.h("div", null)));
|
|
5739
|
+
case 'image':
|
|
5740
|
+
return (index.h("div", { class: "anim-image" }, index.h("img", { src: this.image, alt: "loading-graphic" })));
|
|
5741
|
+
case 'spinner':
|
|
5742
|
+
default:
|
|
5743
|
+
return index.h("div", { class: "anim-spinner" });
|
|
5744
|
+
}
|
|
5745
|
+
}
|
|
5746
|
+
static get watchers() { return {
|
|
5747
|
+
"visible": [{
|
|
5748
|
+
"handleVisibilityChange": 0
|
|
5749
|
+
}],
|
|
5750
|
+
"messages": [{
|
|
5751
|
+
"parseMessagesProp": 0
|
|
5752
|
+
}],
|
|
5753
|
+
"status": [{
|
|
5754
|
+
"handleStatusChange": 0
|
|
5755
|
+
}]
|
|
5756
|
+
}; }
|
|
5757
|
+
};
|
|
5758
|
+
Loader.style = loaderCss();
|
|
5759
|
+
|
|
5760
|
+
const navigationBarCss = () => `.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{--nav-bg:#fcfcfc;--nav-color:#000000;--nav-border-color:#d9d9d9;--nav-item-hover-bg:#e6e6e6;--nav-item-active-bg:rgba(0, 138, 22, 0.08);--nav-item-active-color:#008a16;--nav-accent-gradient:linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);--nav-width:280px;--nav-transition:width 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);display:flex;flex-direction:column;height:100vh;width:var(--nav-width);background:var(--nav-bg);color:var(--nav-color);border-right:1px solid var(--nav-border-color);transition:var(--nav-transition);box-sizing:border-box;position:relative;z-index:100}:host(.pos-right){border-right:none;border-left:1px solid var(--nav-border-color)}.nav-toggle-edge{position:absolute;top:48px;right:-12px;width:24px;height:24px;background:var(--nav-bg);border:1px solid var(--nav-border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:101;color:var(--nav-color);box-shadow:0 1px 3px rgba(0, 0, 0, 0.1);transition:transform 0.2s, background-color 0.2s}.nav-toggle-edge:hover{background-color:var(--nav-item-hover-bg)}:host(.pos-right) .nav-toggle-edge{right:auto;left:-12px;transform:rotate(180deg)}:host(.is-collapsed) .nav-toggle-edge{transform:rotate(180deg)}:host(.pos-right.is-collapsed) .nav-toggle-edge{transform:rotate(0deg)}:host([data-theme=dark]){--nav-bg:#111827;--nav-color:#94a3b8;--nav-border-color:#1e293b;--nav-item-hover-bg:#1e293b;--nav-item-active-bg:rgba(0, 138, 22, 0.15);--nav-item-active-color:#008a16}:host([data-theme=green]){--nav-bg:#3DCD58;--nav-color:#ffffff;--nav-border-color:rgba(255, 255, 255, 0.2);--nav-item-hover-bg:rgba(255, 255, 255, 0.1);--nav-item-active-bg:rgba(255, 255, 255, 0.2);--nav-item-active-color:#ffffff}:host([orientation=horizontal]){width:100%;height:64px;flex-direction:row;border-right:none;border-bottom:1px solid var(--nav-border-color)}:host([orientation=horizontal]) .nav-blocks-container{display:flex !important;flex-direction:row !important;align-items:center;width:100%;height:100%;overflow:visible;flex-wrap:nowrap !important;justify-content:flex-start !important}:host([orientation=horizontal]) .nav-header{border-bottom:none;border-right:1px solid var(--nav-border-color);flex-shrink:0}:host(.is-collapsed) .nav-block-categories,:host(.is-collapsed) .nav-block-top,:host(.is-collapsed) .nav-block-secondary,:host(.is-collapsed) .nav-block-bottom,:host(.is-collapsed) .nav-block-profile{overflow:visible !important}:host([orientation=horizontal]) .nav-block-bottom{margin-left:auto}:host([orientation=horizontal]) .nav-block-categories,:host([orientation=horizontal]) .nav-block-top,:host([orientation=horizontal]) .nav-block-secondary,:host([orientation=horizontal]) .nav-block-bottom,:host([orientation=horizontal]) .nav-block-profile{display:flex !important;flex-direction:row !important;align-items:center;padding:0;overflow:visible !important;border:none !important;height:100%;flex-shrink:0;flex-grow:0 !important;max-height:none !important;flex-wrap:nowrap !important}:host([orientation=horizontal]) .nav-block-categories,:host([orientation=horizontal]) .nav-block-top,:host([orientation=horizontal]) .nav-block-secondary,:host([orientation=horizontal]) .nav-search-bar{border-right:none !important}:host([orientation=horizontal]) .nav-block-top{flex:none}:host([orientation=horizontal]) .nav-item-wrapper{height:100%;display:flex !important;flex-direction:row !important;align-items:center;flex-shrink:0}:host([orientation=horizontal]) .nav-item{height:100%;padding:0 6px;margin:0 !important;border-radius:0;display:flex;align-items:center;justify-content:center;white-space:nowrap}:host([orientation=horizontal]) .nav-icon{margin-right:4px;}:host([orientation=horizontal]) .nav-glider{left:0;right:auto;bottom:0px !important;top:auto !important;height:3px !important;border-radius:4px 4px 0 0;background-color:var(--nav-item-active-color);transition:left 0.3s cubic-bezier(0.4, 0, 0.2, 1), width 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s}:host([orientation=horizontal]) .nav-toggle-edge{display:none}:host([orientation=horizontal]) .nav-block-bottom .nav-label,:host([orientation=horizontal]) .nav-block-profile .nav-label{display:none;}:host([orientation=horizontal]) .nav-search-bar{padding:0 12px;border-bottom:none;border-right:1px solid var(--nav-border-color);height:100%;display:flex;align-items:center}:host([orientation=horizontal]) .nav-search-bar>div{width:150px}:host(.is-drawer){position:fixed;top:0;left:0;bottom:0;height:100vh;box-shadow:4px 0 16px rgba(0, 0, 0, 0.1);z-index:1000}:host(.is-drawer.pos-right){left:auto;right:0;box-shadow:-4px 0 16px rgba(0, 0, 0, 0.1)}.nav-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0, 0, 0, 0.4);z-index:-1;}:host(.is-drawer){overflow:visible;}.nav-header{flex-shrink:0;min-height:64px;display:flex;align-items:center;padding:0 16px;overflow:hidden;white-space:nowrap;position:relative;border-bottom:1px solid var(--nav-border-color)}.nav-mobile-close{position:absolute;right:16px;top:50%;transform:translateY(-50%);cursor:pointer;padding:4px}.nav-blocks-container{display:flex;flex-direction:column;flex:1;min-height:100vh;height:100vh;overflow:hidden;}.nav-block-categories{flex-shrink:0;max-height:30%;overflow-y:auto;overflow-x:visible;display:flex;flex-direction:column;padding:8px 0;border-bottom:1px solid var(--nav-border-color);scrollbar-width:thin;scrollbar-color:var(--nav-border-color) transparent}.nav-block-top{flex:1;min-height:0;overflow-y:auto;overflow-x:visible;display:flex;flex-direction:column;padding:8px 0;scrollbar-width:thin;scrollbar-color:var(--nav-border-color) transparent}.nav-block-bottom{flex-shrink:0;border-top:1px solid var(--nav-border-color);padding:8px 0;background-color:rgba(255, 255, 255, 0.05);display:flex;flex-direction:column;overflow:visible;min-height:fit-content;max-height:fit-content;}:host([data-theme=light]) .nav-block-bottom{background-color:rgba(0, 0, 0, 0.05)}.nav-header{border-bottom:1px solid var(--nav-border-color)}.nav-search-bar{padding:8px 16px;border-bottom:1px solid var(--nav-border-color)}.nav-block-secondary{padding:8px 0;border-top:1px solid var(--nav-border-color);display:flex;flex-direction:column;overflow:visible}.nav-block-profile{flex-shrink:0;padding:8px 0;border-top:1px solid var(--nav-border-color);display:flex;flex-direction:column;background-color:rgba(255, 255, 255, 0.08);overflow:visible;min-height:fit-content;max-height:fit-content;}:host([data-theme=light]) .nav-block-profile{background-color:rgba(0, 0, 0, 0.08)}.nav-block-categories::-webkit-scrollbar,.nav-block-top::-webkit-scrollbar{width:4px}.nav-block-categories::-webkit-scrollbar-thumb,.nav-block-top::-webkit-scrollbar-thumb{background-color:var(--nav-border-color);border-radius:4px}.nav-item-wrapper{display:flex;flex-direction:column;min-width:0;}.nav-item{display:flex;align-items:center;height:40px;cursor:pointer;user-select:none;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);white-space:nowrap;position:relative;overflow:visible;margin:2px 8px;border-radius:8px;outline:none;}a.nav-item{text-decoration:none;color:inherit}.nav-item:focus-visible{outline:2px solid var(--nav-item-active-color);outline-offset:-2px}.nav-item:hover{background-color:var(--nav-item-hover-bg)}.nav-item.active,.nav-item.active-ancestor{background-color:var(--nav-item-active-bg);color:var(--nav-item-active-color);font-weight:500;position:relative}.nav-glider{position:absolute;width:4px;background-color:#008a16;border-radius:4px;transition:top 0.25s cubic-bezier(0.4, 0, 0.2, 1), height 0.2s ease, opacity 0.2s;pointer-events:none;z-index:10;left:6px}:host(.indicator-end) .nav-glider{left:auto;right:6px}.nav-item-wrapper:not(.level-0)>.nav-item{font-size:0.95em;opacity:0.9;height:36px;}.nav-item-wrapper:not(.level-0)>.nav-item.active{background-color:var(--nav-item-active-bg);color:var(--nav-item-active-color);font-weight:600;position:relative}.nav-item-wrapper:not(.level-0)>.nav-item.active::before{content:"";position:absolute;left:2px;top:50%;transform:translateY(-50%);width:4px;height:32px;border-radius:4px;background-color:var(--nav-item-active-color)}.nav-children{position:relative;}.nav-icon-container{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-status-dot{position:absolute;top:2px;right:12px;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--nav-bg);z-index:2}:host(.is-collapsed) .nav-status-dot,:host([orientation=horizontal]) .nav-status-dot{right:0px}.nav-status-dot.status-online{background-color:#22c55e}.nav-status-dot.status-offline{background-color:#94a3b8}.nav-status-dot.status-away{background-color:#eab308}.nav-status-dot.status-busy{background-color:#ef4444}.nav-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;margin-right:12px}:host(.is-collapsed) .nav-icon,:host([orientation=horizontal]) .nav-block-bottom .nav-icon,:host([orientation=horizontal]) .nav-block-profile .nav-icon{margin-right:0}.nav-label-container{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.nav-badge{background-color:var(--nav-item-active-color);color:white;font-size:10px;font-weight:700;padding:0 6px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-badge-mini{position:absolute;top:-4px;right:-4px;background-color:#ef4444;color:white;font-size:9px;font-weight:800;min-width:14px;height:14px;padding:0 3px;border-radius:7px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--nav-bg);z-index:3}.nav-item{border-left:3px solid transparent}.nav-item.active .nav-icon{color:currentColor;}.nav-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.nav-item.no-icon .nav-label{font-size:12px;opacity:0.8;padding-left:4px}.nav-item.is-user-profile .nav-icon{background:var(--nav-accent-gradient);border-radius:50%;color:white !important;width:32px;height:32px;min-width:32px;box-shadow:0 4px 10px rgba(59, 130, 246, 0.4);margin-right:12px}.nav-item.is-user-profile .nav-icon ui-icon{width:18px !important;height:18px !important;font-size:18px !important}.nav-item.is-user-profile .nav-label{font-weight:600;color:var(--nav-color)}.nav-arrow{display:flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:8px;transition:transform 0.2s}:host([orientation=horizontal]) .nav-arrow{margin-left:4px}.nav-arrow .rotate-180{transform:rotate(180deg)}.nav-children{display:flex;flex-direction:column;overflow:hidden;animation:slideDown 0.2s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}:host(.is-collapsed:not([orientation=horizontal])) .nav-item{justify-content:center;padding:0 !important;margin:4px 0;width:100%;border-radius:0}:host(.is-collapsed:not([orientation=horizontal])) .nav-icon{margin-right:0}:host(.is-collapsed:not([orientation=horizontal])) .nav-label,:host(.is-collapsed:not([orientation=horizontal])) .nav-arrow{display:none;}.nav-tooltip{position:absolute;background:#1e293b;color:#f8fafc;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 4px 12px rgba(0, 0, 0, 0.3);border:1px solid rgba(255, 255, 255, 0.1);z-index:2000;pointer-events:none;opacity:0;visibility:hidden;transition:opacity 0.2s, transform 0.2s, visibility 0.2s}.nav-tooltip.visible{opacity:1;visibility:visible}:host(.is-collapsed:not([orientation=horizontal])) .nav-tooltip{left:100%;top:50%;transform:translateY(-50%) translateX(-10px);margin-left:10px}:host(.is-collapsed:not([orientation=horizontal])) .nav-tooltip.visible{transform:translateY(-50%) translateX(0)}:host([orientation=horizontal]) .nav-tooltip{top:100%;left:50%;transform:translateX(-50%) translateY(-10px);margin-top:8px}:host([orientation=horizontal]) .nav-tooltip.visible{transform:translateX(-50%) translateY(0)}:host(:not(.is-collapsed):not([orientation=horizontal])) .nav-tooltip{left:50%;bottom:100%;transform:translateX(-50%) translateY(10px);margin-bottom:8px}:host(:not(.is-collapsed):not([orientation=horizontal])) .nav-tooltip.visible{transform:translateX(-50%) translateY(0)}.nav-tooltip::before{content:"";position:absolute;width:8px;height:8px;background:#1e293b;transform:rotate(45deg);z-index:-1;border:1px solid rgba(255, 255, 255, 0.1)}:host(.is-collapsed:not([orientation=horizontal])) .nav-tooltip::before{left:-4px;top:50%;margin-top:-4px;border-right:none;border-top:none}:host([orientation=horizontal]) .nav-tooltip::before{top:-4px;left:50%;margin-left:-4px;border-right:none;border-bottom:none}:host(:not(.is-collapsed):not([orientation=horizontal])) .nav-tooltip::before{bottom:-4px;left:12px;border-left:none;border-top:none}`;
|
|
5175
5761
|
|
|
5176
5762
|
const NavigationBar = class {
|
|
5177
5763
|
constructor(hostRef) {
|
|
@@ -5224,7 +5810,7 @@ const NavigationBar = class {
|
|
|
5224
5810
|
/** Position of the active item indicator bar: 'start' (left) or 'end' (right) */
|
|
5225
5811
|
indicatorPosition = 'start';
|
|
5226
5812
|
/** Maximum number of items to show before overflowing to "More" menu */
|
|
5227
|
-
maxItems =
|
|
5813
|
+
maxItems = 100;
|
|
5228
5814
|
/** Company Logo URL */
|
|
5229
5815
|
companyLogo;
|
|
5230
5816
|
/** Company Name */
|
|
@@ -5610,7 +6196,7 @@ const NavigationBar = class {
|
|
|
5610
6196
|
const vars = {
|
|
5611
6197
|
'--nav-width': typeof this.isExpanded === 'boolean' ? (this.isExpanded ? this.expandedWidth : this.isMobile ? '0px' : this.collapsedWidth) : this.collapsedWidth,
|
|
5612
6198
|
};
|
|
5613
|
-
return (index.h(index.Host, { key: '
|
|
6199
|
+
return (index.h(index.Host, { key: '8c2709e6da4c4d5dc9c119d80ae046ced0681677', style: vars, class: hostClass, theme: null, "data-theme": this.effectiveTheme }, index.h("div", { key: 'eeb7ad1eae7c89b8d8a81bb62b89b89b7d76f2de', class: "nav-glider", style: {
|
|
5614
6200
|
top: this.orientation === 'horizontal' ? 'auto' : `${typeof this.gliderTop === 'number' ? this.gliderTop : 0}px`,
|
|
5615
6201
|
height: this.orientation === 'horizontal' ? '3px' : `${typeof this.gliderHeight === 'number' ? this.gliderHeight : 0}px`,
|
|
5616
6202
|
left: this.orientation === 'horizontal' ? `${typeof this.gliderLeft === 'number' ? this.gliderLeft : 0}px` : this.position === 'left' ? '6px' : 'auto',
|
|
@@ -5618,21 +6204,21 @@ const NavigationBar = class {
|
|
|
5618
6204
|
width: this.orientation === 'horizontal' ? `${typeof this.gliderWidth === 'number' ? this.gliderWidth : 0}px` : '4px',
|
|
5619
6205
|
bottom: this.orientation === 'horizontal' ? '0' : 'auto',
|
|
5620
6206
|
opacity: `${typeof this.gliderOpacity === 'number' ? this.gliderOpacity : 0}`,
|
|
5621
|
-
} }), this.renderToggle(), this.isMobile && this.isExpanded && index.h("div", { key: '
|
|
6207
|
+
} }), this.renderToggle(), this.isMobile && this.isExpanded && index.h("div", { key: '1c4f23fe57c282e4ad5a1c28d1223de8086fda72', class: "nav-backdrop", onClick: () => this.close() }), index.h("div", { key: '65075734486486764a894c6fb7b83d7333ec73c7', class: "nav-blocks-container" }, index.h("div", { key: 'd4dee15c771e8ae62f649aeb28b56c10e7cbb853', class: "nav-header" }, index.h("slot", { key: 'ca14ebc9b45a559df2aed758838a3ed76bb1c3ae', name: "header" }, (this.companyLogo || this.companyName) && (index.h("div", { key: '7d0a0735620d690057d9a1b62a9c749fdb3f2c84', class: "nav-company-block", style: { display: 'flex', alignItems: 'center', gap: '12px', padding: '0 24px', height: '64px' } }, this.companyLogo && index.h("img", { key: 'f09f09d20a33e176cd566dd53bc0241bd354411a', src: this.companyLogo, alt: this.companyName || 'Logo', style: { height: '32px', width: 'auto' } }), this.isExpanded && this.companyName && (index.h("span", { key: 'e4b520a45523db14ea2336b87e114aa1b71ec17d', class: "nav-company-name", style: { fontWeight: '600', fontSize: '16px' } }, this.companyName))))), index.h("slot", { key: '336712f1b384d40c36799ec38ef4e5855221d00e', name: "logo" }), this.isMobile && (index.h("div", { key: 'af115858dac6594075002677847f4ba5ee56c8d4', class: "nav-mobile-close", onClick: () => this.close() }, index.h("svg", { key: 'f8d652e0e156f6e45460ccad45c81dcca26aa7ee', viewBox: "0 0 24 24", width: "24", height: "24", stroke: "currentColor", fill: "none" }, index.h("path", { key: 'e8fe61ea68a03aedeea2c782674c3ff355391559', d: "M18 6L6 18M6 6l12 12" }))))), this.showSearch && this.isExpanded && (index.h("div", { key: 'b3817d97c27963a5510f11e144bfc9c86224a3d4', class: "nav-search-bar" }, index.h("div", { key: '40459a1c370c1358513a5e0010490c40b2a7c8be', style: {
|
|
5622
6208
|
position: 'relative',
|
|
5623
6209
|
display: 'flex',
|
|
5624
6210
|
alignItems: 'center',
|
|
5625
6211
|
background: 'var(--nav-item-hover-bg, #f1f5f9)',
|
|
5626
6212
|
borderRadius: '6px',
|
|
5627
6213
|
padding: '4px 8px',
|
|
5628
|
-
} }, index.h("svg", { key: '
|
|
6214
|
+
} }, index.h("svg", { key: 'fcde2dfec1ff2ba213d37f07fefaf6cb9f300932', viewBox: "0 0 24 24", width: "16", height: "16", fill: "none", stroke: "currentColor", "stroke-width": "2", style: { opacity: '0.5', marginRight: '8px' } }, index.h("circle", { key: '26527fb8563cce41862c12c99c0e6dbb1459723b', cx: "11", cy: "11", r: "8" }), index.h("line", { key: '0bf144609d27eed0c1bb54de7ed1f3020445f2b1', x1: "21", y1: "21", x2: "16.65", y2: "16.65" })), index.h("input", { key: '43ef6d0df604e1e1edb88303ba4fe4c6bd97ccdb', type: "text", placeholder: "Search...", value: this.keyword, onInput: e => (this.keyword = e.target.value), style: {
|
|
5629
6215
|
background: 'transparent',
|
|
5630
6216
|
border: 'none',
|
|
5631
6217
|
outline: 'none',
|
|
5632
6218
|
width: '100%',
|
|
5633
6219
|
fontSize: '14px',
|
|
5634
6220
|
color: 'inherit',
|
|
5635
|
-
} })))), blocks.categories.length > 0 && (index.h("div", { key: '
|
|
6221
|
+
} })))), blocks.categories.length > 0 && (index.h("div", { key: '66b63ea16b9080d05cd540b503ead73792bb682e', class: "nav-block-categories", role: "tree" }, this.renderNavList(blocks.categories, 'cat'))), index.h("div", { key: '85217416656d87209bd63e35f359a54d3e374a40', class: "nav-block-top", role: "tree" }, this.renderNavList(blocks.primary, 'top'), index.h("slot", { key: 'aeb468782004f5f2f9f49335ee3a22cba28ccf11', name: "menu-item" }), " ", blocks.primary.length === 0 && blocks.categories.length === 0 && blocks.secondary.length === 0 && index.h("slot", { key: 'de7e8d6226e9e76bc112e10a5d8b17e526e30fd6', name: "empty-state" }, "No Items")), blocks.secondary.length > 0 && (index.h("div", { key: '189a5325fef7afc1082bf89551468dad58561308', class: "nav-block-secondary", role: "tree" }, this.renderNavList(blocks.secondary, 'sec'))), blocks.bottom.length > 0 && (index.h("div", { key: '3c5fa508db8925545a430a9b1cf3c4ea87371e15', class: "nav-block-bottom", role: "tree" }, blocks.bottom.map(item => this.renderItem(item)), index.h("slot", { key: '4f749f79cabfb4c3c3b3d902b60ab9d104c40284', name: "footer" }))), blocks.bottomSecondary.length > 0 && (index.h("div", { key: 'c74afe6c446481924cc7393522ebc97803bbc713', class: "nav-block-profile", role: "tree" }, blocks.bottomSecondary.map(item => this.renderItem(item)))))));
|
|
5636
6222
|
}
|
|
5637
6223
|
isBottomItem(id) {
|
|
5638
6224
|
const blocks = this.getBlocks();
|
|
@@ -5730,4 +6316,5 @@ exports.ui_button_toggle_group = ButtonToggleGroup;
|
|
|
5730
6316
|
exports.ui_context_menu = UiContextMenu;
|
|
5731
6317
|
exports.ui_icon = Icon;
|
|
5732
6318
|
exports.ui_input = Input;
|
|
6319
|
+
exports.ui_loader = Loader;
|
|
5733
6320
|
exports.ui_navigation_bar = NavigationBar;
|