atomicuilibrary 0.0.1 → 0.1.3
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 +2 -2
- package/dist/cjs/dom-BvBb0kmW.js +267 -0
- package/dist/cjs/exploration-project-tailwind.cjs.js +2 -2
- package/dist/cjs/{index-ClkOYpT8.js → index-C32cWsm5.js} +1 -1
- package/dist/cjs/layout-manager.cjs.entry.js +3 -3
- package/dist/cjs/library-card.cjs.entry.js +2 -2
- package/dist/cjs/lm-container_2.cjs.entry.js +2 -2
- package/dist/cjs/lm-panel_3.cjs.entry.js +5 -5
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/my-component.cjs.entry.js +1 -1
- package/dist/cjs/my-step.cjs.entry.js +2 -2
- package/dist/cjs/nav-bar.cjs.entry.js +4 -4
- package/dist/cjs/{security-E1JcwxGc.js → security-CNaNip8F.js} +88 -154
- package/dist/cjs/smart-step.cjs.entry.js +3 -3
- package/dist/cjs/timeline-item.cjs.entry.js +2 -2
- package/dist/cjs/{ui-accordion_10.cjs.entry.js → ui-accordion_11.cjs.entry.js} +730 -61
- package/dist/cjs/ui-advanced-data-table.cjs.entry.js +2 -2
- package/dist/cjs/ui-anchor.cjs.entry.js +2 -2
- package/dist/cjs/ui-animate-on-scroll.cjs.entry.js +3 -3
- package/dist/cjs/ui-aside-panel.cjs.entry.js +11 -12
- package/dist/cjs/ui-avatar-group_5.cjs.entry.js +1694 -0
- package/dist/cjs/ui-breadcrumb-item.cjs.entry.js +3 -3
- package/dist/cjs/ui-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/ui-callout-banner.cjs.entry.js +3 -3
- package/dist/cjs/ui-card.cjs.entry.js +28 -5
- package/dist/cjs/ui-carousel.cjs.entry.js +1 -1
- package/dist/cjs/ui-checkbox.cjs.entry.js +5 -5
- package/dist/cjs/ui-code-editor.cjs.entry.js +3 -3
- package/dist/cjs/ui-code-preview.cjs.entry.js +2 -2
- package/dist/cjs/ui-color-picker.cjs.entry.js +256 -22
- package/dist/cjs/ui-command-palette.cjs.entry.js +1 -1
- package/dist/cjs/ui-dialog-box.cjs.entry.js +86 -12
- package/dist/cjs/ui-dialog-content.cjs.entry.js +1 -1
- package/dist/cjs/ui-dialog-footer_2.cjs.entry.js +1 -1
- package/dist/cjs/ui-divider.cjs.entry.js +1 -1
- package/dist/cjs/ui-dock-host.cjs.entry.js +4 -4
- package/dist/cjs/ui-dock.cjs.entry.js +2 -2
- package/dist/cjs/ui-drag-drop.cjs.entry.js +2 -2
- package/dist/cjs/ui-dropdown_2.cjs.entry.js +104 -34
- package/dist/cjs/ui-empty-state.cjs.entry.js +2 -2
- package/dist/cjs/ui-fab-item.cjs.entry.js +2 -2
- package/dist/cjs/ui-fab.cjs.entry.js +4 -4
- package/dist/cjs/ui-file-upload.cjs.entry.js +143 -44
- package/dist/cjs/ui-horizontal-nav.cjs.entry.js +2 -2
- package/dist/cjs/ui-knob.cjs.entry.js +1 -1
- package/dist/cjs/ui-label.cjs.entry.js +473 -0
- package/dist/cjs/ui-library.cjs.entry.js +2 -2
- package/dist/cjs/ui-list-group_2.cjs.entry.js +351 -58
- package/dist/cjs/ui-list.cjs.entry.js +76 -42
- package/dist/cjs/ui-masonry.cjs.entry.js +1 -1
- package/dist/cjs/ui-meter-group.cjs.entry.js +5 -4
- package/dist/cjs/ui-navigation-item.cjs.entry.js +5 -5
- package/dist/cjs/ui-number-input.cjs.entry.js +7 -3
- package/dist/cjs/ui-otp-input.cjs.entry.js +5 -5
- package/dist/cjs/ui-pagination_3.cjs.entry.js +235 -504
- package/dist/cjs/ui-panel.cjs.entry.js +1 -1
- package/dist/cjs/ui-pattern-input.cjs.entry.js +46 -11
- package/dist/cjs/ui-progress.cjs.entry.js +164 -23
- package/dist/cjs/ui-range-slider.cjs.entry.js +2 -2
- package/dist/cjs/ui-resizable-panel.cjs.entry.js +2 -2
- package/dist/cjs/ui-scroll-top.cjs.entry.js +1 -1
- package/dist/cjs/ui-smart-context-menu.cjs.entry.js +1 -1
- package/dist/cjs/ui-smart-stepper.cjs.entry.js +2 -2
- package/dist/cjs/ui-snackbar.cjs.entry.js +2 -2
- package/dist/cjs/ui-speed-dial.cjs.entry.js +1 -1
- package/dist/cjs/ui-speedometer.cjs.entry.js +28 -17
- package/dist/cjs/ui-splitter.cjs.entry.js +1 -1
- package/dist/cjs/ui-step.cjs.entry.js +2 -2
- package/dist/cjs/ui-stepper.cjs.entry.js +2 -2
- package/dist/cjs/ui-switch.cjs.entry.js +14 -13
- package/dist/cjs/ui-tabs.cjs.entry.js +3 -3
- package/dist/cjs/ui-tag.cjs.entry.js +58 -13
- package/dist/cjs/ui-timeline.cjs.entry.js +11 -3
- package/dist/cjs/ui-timer.cjs.entry.js +2 -2
- package/dist/cjs/ui-toolbar.cjs.entry.js +2 -2
- package/dist/cjs/ui-tooltip.cjs.entry.js +5 -5
- package/dist/cjs/ui-top-bar.cjs.entry.js +1 -1
- package/dist/cjs/ui-transfer-list.cjs.entry.js +7 -7
- package/dist/cjs/ui-tree.cjs.entry.js +30 -15
- package/dist/cjs/ui-workspace-manager.cjs.entry.js +3 -3
- package/dist/collection/assets/js/component-config.js +1 -0
- package/dist/collection/assets/js/demo-loader.js +2 -1
- package/dist/collection/assets/js/demos/about-demo.js +13 -13
- package/dist/collection/assets/js/demos/accordion-demo.js +238 -49
- package/dist/collection/assets/js/demos/advanced-data-table-demo.js +315 -316
- package/dist/collection/assets/js/demos/anchor-demo.js +27 -28
- package/dist/collection/assets/js/demos/animate-on-scroll-demo.js +12 -12
- package/dist/collection/assets/js/demos/aside-panel-demo.js +57 -57
- package/dist/collection/assets/js/demos/avatar-demo.js +433 -95
- package/dist/collection/assets/js/demos/badge-demo.js +51 -52
- package/dist/collection/assets/js/demos/breadcrumb-demo.js +7 -7
- package/dist/collection/assets/js/demos/button-demo.js +175 -106
- package/dist/collection/assets/js/demos/button-toggle-demo.js +199 -96
- package/dist/collection/assets/js/demos/callout-banner-demo.js +332 -42
- package/dist/collection/assets/js/demos/card-demo.js +122 -74
- package/dist/collection/assets/js/demos/carousel-demo.js +632 -360
- package/dist/collection/assets/js/demos/checkbox-demo.js +124 -7
- package/dist/collection/assets/js/demos/color-picker-demo.js +394 -100
- package/dist/collection/assets/js/demos/command-palette-demo.js +182 -65
- package/dist/collection/assets/js/demos/complex-form-demo.js +5 -5
- package/dist/collection/assets/js/demos/context-menu-demo.js +476 -55
- package/dist/collection/assets/js/demos/dialog-demo-temp.js +3 -3
- package/dist/collection/assets/js/demos/dialog-demo.js +336 -230
- package/dist/collection/assets/js/demos/divider-demo.js +59 -62
- package/dist/collection/assets/js/demos/dock-demo.js +92 -72
- package/dist/collection/assets/js/demos/dock-host-init.js +31 -31
- package/dist/collection/assets/js/demos/documentation-demo.js +227 -22
- package/dist/collection/assets/js/demos/drag-drop-demo.js +2 -2
- package/dist/collection/assets/js/demos/dropdown-demo.js +140 -136
- package/dist/collection/assets/js/demos/dropdown-subtitle-demo.js +2 -2
- package/dist/collection/assets/js/demos/empty-state-demo.js +304 -88
- package/dist/collection/assets/js/demos/fab-demo.js +95 -11
- package/dist/collection/assets/js/demos/file-upload-demo.js +641 -171
- package/dist/collection/assets/js/demos/home-components.js +2 -2
- package/dist/collection/assets/js/demos/horizontal-nav-demo.js +6 -6
- package/dist/collection/assets/js/demos/icon-demo.js +17 -17
- package/dist/collection/assets/js/demos/input-demo.js +147 -143
- package/dist/collection/assets/js/demos/knob-demo.js +29 -30
- package/dist/collection/assets/js/demos/label-demo.js +697 -0
- package/dist/collection/assets/js/demos/layout-manager-demo.js +55 -55
- package/dist/collection/assets/js/demos/list-demo.js +226 -140
- package/dist/collection/assets/js/demos/loader-demo.js +48 -48
- package/dist/collection/assets/js/demos/masonry-demo.js +592 -0
- package/dist/collection/assets/js/demos/meter-group-demo.js +14 -16
- package/dist/collection/assets/js/demos/multi-level-context-menu-demo.js +25 -25
- package/dist/collection/assets/js/demos/my-profile-demo.js +27 -27
- package/dist/collection/assets/js/demos/nav-bar-demo.js +1 -1
- package/dist/collection/assets/js/demos/number-input-demo.js +262 -211
- package/dist/collection/assets/js/demos/pagination-demo.js +29 -29
- package/dist/collection/assets/js/demos/panel-demo.js +18 -25
- package/dist/collection/assets/js/demos/pattern-input-demo.js +278 -40
- package/dist/collection/assets/js/demos/popover-demo.js +240 -149
- package/dist/collection/assets/js/demos/progress-demo.js +768 -61
- package/dist/collection/assets/js/demos/radio-demo.js +73 -12
- package/dist/collection/assets/js/demos/range-slider-demo.js +33 -33
- package/dist/collection/assets/js/demos/rating-demo.js +19 -19
- package/dist/collection/assets/js/demos/scroll-top-demo.js +8 -9
- package/dist/collection/assets/js/demos/skeleton-demo.js +110 -52
- package/dist/collection/assets/js/demos/skeleton-performance-demo.js +2 -2
- package/dist/collection/assets/js/demos/smart-dialog-demo.js +12 -12
- package/dist/collection/assets/js/demos/smart-menu-demo.js +17 -17
- package/dist/collection/assets/js/demos/snackbar-demo.js +53 -53
- package/dist/collection/assets/js/demos/speed-dial-demo.js +14 -14
- package/dist/collection/assets/js/demos/speedometer-demo.js +40 -32
- package/dist/collection/assets/js/demos/split-button-demo.js +2 -2
- package/dist/collection/assets/js/demos/splitter-demo.js +137 -0
- package/dist/collection/assets/js/demos/stack-demo.js +27 -27
- package/dist/collection/assets/js/demos/stepper-demo.js +49 -49
- package/dist/collection/assets/js/demos/switch-demo.js +561 -125
- package/dist/collection/assets/js/demos/tabs-demo.js +22 -22
- package/dist/collection/assets/js/demos/tag-demo.js +110 -80
- package/dist/collection/assets/js/demos/theme-selector-demo.js +27 -27
- package/dist/collection/assets/js/demos/timeline-demo.js +27 -14
- package/dist/collection/assets/js/demos/timeline-playground.js +2 -2
- package/dist/collection/assets/js/demos/timer-demo.js +10 -10
- package/dist/collection/assets/js/demos/toolbar-demo.js +17 -17
- package/dist/collection/assets/js/demos/tooltip-demo.js +116 -114
- package/dist/collection/assets/js/demos/top-bar-demo.js +6 -6
- package/dist/collection/assets/js/demos/transfer-list-demo.js +20 -20
- package/dist/collection/assets/js/demos/tree-demo.js +72 -70
- package/dist/collection/assets/js/demos/workspace-manager-demo.js +20 -20
- package/dist/collection/collection-manifest.json +2 -6
- package/dist/collection/components/accordion/accordion.css +576 -9
- package/dist/collection/components/accordion/accordion.js +47 -14
- package/dist/collection/components/advanced-data-table/advanced-data-table.css +24 -10
- package/dist/collection/components/advanced-data-table/advanced-data-table.js +2 -2
- package/dist/collection/components/anchor/anchor.css +0 -1
- package/dist/collection/components/animate-on-scroll/animate-on-scroll.js +2 -2
- package/dist/collection/components/aside-panel/aside-panel.css +3 -5
- package/dist/collection/components/aside-panel/aside-panel.js +12 -13
- package/dist/collection/components/avatar/avatar.css +6 -6
- package/dist/collection/components/avatar/avatar.js +64 -12
- package/dist/collection/components/badge/badge.css +28 -17
- package/dist/collection/components/badge/badge.js +7 -4
- package/dist/collection/components/breadcrumb/breadcrumb-item.js +2 -2
- package/dist/collection/components/breadcrumb/breadcrumb.js +1 -1
- package/dist/collection/components/button/button.css +132 -0
- package/dist/collection/components/button/button.js +130 -11
- package/dist/collection/components/button-toggle/button-toggle.js +2 -2
- package/dist/collection/components/button-toggle-group/button-toggle-group.css +161 -14
- package/dist/collection/components/button-toggle-group/button-toggle-group.js +2 -2
- package/dist/collection/components/callout-banner/callout-banner.css +75 -0
- package/dist/collection/components/callout-banner/callout-banner.js +1 -1
- package/dist/collection/components/card/card.css +304 -40
- package/dist/collection/components/card/card.js +48 -4
- package/dist/collection/components/checkbox/checkbox.css +8 -10
- package/dist/collection/components/checkbox/checkbox.js +5 -5
- 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-picker/color-picker.css +110 -6
- package/dist/collection/components/color-picker/color-picker.js +302 -26
- package/dist/collection/components/context-menu/context-menu.css +8 -8
- package/dist/collection/components/dialog-box/dialog-box.js +117 -15
- package/dist/collection/components/dialog-header/dialog-header.js +2 -2
- package/dist/collection/components/dock/dock.css +116 -3
- 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/dropdown/dropdown.css +101 -8
- package/dist/collection/components/dropdown/dropdown.js +94 -28
- package/dist/collection/components/empty-state/empty-state.js +1 -1
- package/dist/collection/components/fab/fab.css +87 -15
- package/dist/collection/components/fab/fab.js +3 -3
- package/dist/collection/components/fab-item/fab-item.js +1 -1
- package/dist/collection/components/file-upload/file-upload.css +1362 -31
- package/dist/collection/components/file-upload/file-upload.js +171 -50
- package/dist/collection/components/horizontal-nav/horizontal-nav.css +9 -9
- 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.css +9 -0
- package/dist/collection/components/input/input.js +21 -10
- package/dist/collection/components/label/label.css +583 -0
- package/dist/collection/components/label/label.js +1669 -0
- 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.css +46 -5
- package/dist/collection/components/list/list.js +76 -42
- package/dist/collection/components/list-group/list-group.css +0 -2
- package/dist/collection/components/list-group/list-group.js +11 -5
- package/dist/collection/components/list-item/list-item.css +427 -131
- package/dist/collection/components/list-item/list-item.js +373 -58
- package/dist/collection/components/loader/loader.css +1635 -0
- package/dist/collection/components/loader/loader.js +1120 -0
- package/dist/collection/components/meter-group/meter-group.css +5 -0
- package/dist/collection/components/meter-group/meter-group.js +3 -2
- package/dist/collection/components/my-step/my-step.js +1 -1
- package/dist/collection/components/nav-bar/nav-bar.css +4 -4
- package/dist/collection/components/nav-bar/nav-bar.js +6 -6
- package/dist/collection/components/number-input/number-input.js +6 -2
- package/dist/collection/components/otp-input/otp-input.css +10 -0
- package/dist/collection/components/otp-input/otp-input.js +3 -3
- package/dist/collection/components/pagination/pagination.js +1 -1
- package/dist/collection/components/pattern-input/pattern-input.css +0 -1
- package/dist/collection/components/pattern-input/pattern-input.js +44 -9
- package/dist/collection/components/popover/popover.css +35 -7
- package/dist/collection/components/popover/popover.js +64 -9
- package/dist/collection/components/progress/progress.css +307 -28
- package/dist/collection/components/progress/progress.js +244 -24
- package/dist/collection/components/radio/radio.css +5 -3
- package/dist/collection/components/radio/radio.js +2 -2
- package/dist/collection/components/range-slider/range-slider.css +284 -31
- package/dist/collection/components/range-slider/range-slider.js +5 -5
- package/dist/collection/components/rating/rating.css +151 -65
- package/dist/collection/components/rating/rating.js +31 -13
- package/dist/collection/components/resizable-panel/resizable-panel.js +1 -1
- package/dist/collection/components/skeleton/skeleton-loader.css +144 -44
- package/dist/collection/components/skeleton/skeleton-loader.js +11 -7
- 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/speedometer/speedometer.css +26 -6
- package/dist/collection/components/speedometer/speedometer.js +26 -15
- package/dist/collection/components/stack/stack.js +2 -2
- package/dist/collection/components/step/step.js +1 -1
- package/dist/collection/components/stepper/stepper.js +1 -1
- package/dist/collection/components/switch/switch.css +367 -8
- package/dist/collection/components/switch/switch.js +14 -13
- package/dist/collection/components/tag/tag.css +38 -12
- package/dist/collection/components/tag/tag.js +58 -13
- package/dist/collection/components/tag-group/tag-group.css +0 -1
- package/dist/collection/components/tag-group/tag-group.js +3 -3
- package/dist/collection/components/timeline/timeline.css +380 -317
- package/dist/collection/components/timeline/timeline.js +8 -0
- package/dist/collection/components/timeline-item/timeline-item.js +1 -1
- package/dist/collection/components/timer/timer.js +1 -1
- package/dist/collection/components/toggle-group/toggle-group.css +7 -3
- package/dist/collection/components/toggle-group/toggle-group.js +7 -3
- package/dist/collection/components/toolbar/toolbar.js +1 -1
- package/dist/collection/components/tooltip/tooltip.js +4 -4
- package/dist/collection/components/top-bar/top-bar.js +2 -2
- package/dist/collection/components/transfer-list/transfer-list.css +13 -13
- package/dist/collection/components/transfer-list/transfer-list.js +4 -4
- package/dist/collection/components/tree/tree.css +35 -21
- package/dist/collection/components/tree/tree.js +28 -13
- package/dist/collection/components/ui-navigation-bar/navigation-bar/navigation-bar.css +53 -20
- package/dist/collection/components/ui-navigation-bar/navigation-bar/navigation-bar.js +48 -13
- package/dist/collection/components/ui-navigation-bar/navigation-item.css +7 -7
- package/dist/collection/components/ui-navigation-bar/navigation-item.js +3 -3
- package/dist/collection/components.js +1 -0
- package/dist/collection/utils/dom.js +151 -151
- 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/button.js +1 -0
- 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/dom.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/popover.js +1 -0
- 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-animate-on-scroll.js +1 -1
- package/dist/components/ui-aside-panel.js +1 -1
- package/dist/components/ui-badge.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-button.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-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-input-pair.d.ts → ui-label.d.ts} +4 -4
- package/dist/components/ui-label.js +1 -0
- package/dist/components/ui-library.js +1 -1
- package/dist/components/ui-list.js +1 -1
- package/dist/components/{ui-radio-group.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-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-speedometer.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 +2 -2
- package/dist/esm/dom-DFBTWhGw.js +262 -0
- package/dist/esm/exploration-project-tailwind.js +3 -3
- package/dist/esm/{index-DUsoYu9r.js → index-Dqu2zaH1.js} +1 -1
- package/dist/esm/layout-manager.entry.js +3 -3
- package/dist/esm/library-card.entry.js +2 -2
- package/dist/esm/lm-container_2.entry.js +2 -2
- package/dist/esm/lm-panel_3.entry.js +5 -5
- package/dist/esm/loader.js +3 -3
- package/dist/esm/my-component.entry.js +1 -1
- package/dist/esm/my-step.entry.js +2 -2
- package/dist/esm/nav-bar.entry.js +4 -4
- package/dist/esm/{security-D2WzX6vR.js → security-Dyu3Nplq.js} +88 -154
- package/dist/esm/smart-step.entry.js +3 -3
- package/dist/esm/timeline-item.entry.js +2 -2
- package/dist/esm/{ui-accordion_10.entry.js → ui-accordion_11.entry.js} +730 -62
- package/dist/esm/ui-advanced-data-table.entry.js +2 -2
- package/dist/esm/ui-anchor.entry.js +2 -2
- package/dist/esm/ui-animate-on-scroll.entry.js +3 -3
- package/dist/esm/ui-aside-panel.entry.js +11 -12
- package/dist/esm/ui-avatar-group_5.entry.js +1688 -0
- package/dist/esm/ui-breadcrumb-item.entry.js +3 -3
- package/dist/esm/ui-breadcrumb.entry.js +1 -1
- package/dist/esm/ui-callout-banner.entry.js +3 -3
- package/dist/esm/ui-card.entry.js +28 -5
- package/dist/esm/ui-carousel.entry.js +1 -1
- package/dist/esm/ui-checkbox.entry.js +5 -5
- package/dist/esm/ui-code-editor.entry.js +3 -3
- package/dist/esm/ui-code-preview.entry.js +2 -2
- package/dist/esm/ui-color-picker.entry.js +256 -22
- package/dist/esm/ui-command-palette.entry.js +1 -1
- package/dist/esm/ui-dialog-box.entry.js +86 -12
- package/dist/esm/ui-dialog-content.entry.js +1 -1
- package/dist/esm/ui-dialog-footer_2.entry.js +1 -1
- package/dist/esm/ui-divider.entry.js +1 -1
- package/dist/esm/ui-dock-host.entry.js +4 -4
- package/dist/esm/ui-dock.entry.js +2 -2
- package/dist/esm/ui-drag-drop.entry.js +2 -2
- package/dist/esm/ui-dropdown_2.entry.js +104 -34
- package/dist/esm/ui-empty-state.entry.js +2 -2
- package/dist/esm/ui-fab-item.entry.js +2 -2
- package/dist/esm/ui-fab.entry.js +4 -4
- package/dist/esm/ui-file-upload.entry.js +143 -44
- package/dist/esm/ui-horizontal-nav.entry.js +2 -2
- package/dist/esm/ui-knob.entry.js +1 -1
- package/dist/esm/ui-label.entry.js +471 -0
- package/dist/esm/ui-library.entry.js +2 -2
- package/dist/esm/ui-list-group_2.entry.js +351 -58
- package/dist/esm/ui-list.entry.js +76 -42
- package/dist/esm/ui-masonry.entry.js +1 -1
- package/dist/esm/ui-meter-group.entry.js +5 -4
- package/dist/esm/ui-navigation-item.entry.js +5 -5
- package/dist/esm/ui-number-input.entry.js +7 -3
- package/dist/esm/ui-otp-input.entry.js +5 -5
- package/dist/esm/ui-pagination_3.entry.js +235 -504
- package/dist/esm/ui-panel.entry.js +1 -1
- package/dist/esm/ui-pattern-input.entry.js +46 -11
- package/dist/esm/ui-progress.entry.js +164 -23
- package/dist/esm/ui-range-slider.entry.js +2 -2
- package/dist/esm/ui-resizable-panel.entry.js +2 -2
- package/dist/esm/ui-scroll-top.entry.js +1 -1
- package/dist/esm/ui-smart-context-menu.entry.js +1 -1
- package/dist/esm/ui-smart-stepper.entry.js +2 -2
- package/dist/esm/ui-snackbar.entry.js +2 -2
- package/dist/esm/ui-speed-dial.entry.js +1 -1
- package/dist/esm/ui-speedometer.entry.js +28 -17
- package/dist/esm/ui-splitter.entry.js +1 -1
- package/dist/esm/ui-step.entry.js +2 -2
- package/dist/esm/ui-stepper.entry.js +2 -2
- package/dist/esm/ui-switch.entry.js +14 -13
- package/dist/esm/ui-tabs.entry.js +3 -3
- package/dist/esm/ui-tag.entry.js +58 -13
- package/dist/esm/ui-timeline.entry.js +11 -3
- package/dist/esm/ui-timer.entry.js +2 -2
- package/dist/esm/ui-toolbar.entry.js +2 -2
- package/dist/esm/ui-tooltip.entry.js +5 -5
- package/dist/esm/ui-top-bar.entry.js +1 -1
- package/dist/esm/ui-transfer-list.entry.js +7 -7
- package/dist/esm/ui-tree.entry.js +30 -15
- package/dist/esm/ui-workspace-manager.entry.js +3 -3
- package/dist/exploration-project-tailwind/exploration-project-tailwind.css +1 -1
- package/dist/exploration-project-tailwind/exploration-project-tailwind.esm.js +1 -1
- package/dist/exploration-project-tailwind/{p-f5719913.entry.js → p-024a299a.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-0a71896a.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-35296877.entry.js → p-0cdeb8d8.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-a42fdc33.entry.js → p-139cefbc.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-c7e87fbb.entry.js → p-198c83e5.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-236f47b1.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-81961fb1.entry.js → p-25530d0d.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-41cd6bf0.entry.js → p-298f2057.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-85e36111.entry.js → p-2b5a8e3e.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-2b6aa7bc.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-7515b1e3.entry.js → p-2cfba753.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-c90722ec.entry.js → p-2fe22958.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-85bf89fd.entry.js → p-3012e780.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-321c3f46.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-3d3d48fd.entry.js → p-3ab43638.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-3ad7e47e.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-3b1ca826.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-3ee8ddae.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-4f6bba75.entry.js → p-3efb44c8.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-36861546.entry.js → p-42e3bc28.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-4360331a.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-2f961934.entry.js → p-443de32b.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-898dd0fa.entry.js → p-44d15451.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-e5322e59.entry.js → p-46071679.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-a3f465d9.entry.js → p-497d6182.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-4ad8c55c.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-73d29a4a.entry.js → p-4c46ac0b.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-f0830120.entry.js → p-5042ddaa.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-60190e0e.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-60530874.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-200241f8.entry.js → p-6108565d.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-77124686.entry.js → p-62889cfe.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-9d0c8760.entry.js → p-66f71613.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-2d273118.entry.js → p-67c440b2.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-d419eaf0.entry.js → p-6f09503f.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-721bdbc3.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-747b02ea.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-c6fd72e1.entry.js → p-754cb046.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-ffb1754a.entry.js → p-7ed3bba2.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-77cc333a.entry.js → p-864cebb7.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-4d73c143.entry.js → p-96ee3196.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-c5ddc817.entry.js → p-97086868.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-287dbf09.entry.js → p-9c5ced88.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-9d3044d4.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-9e079be6.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-0b004861.entry.js → p-9e4c45f5.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-9eee7394.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-DFBTWhGw.js +1 -0
- package/dist/exploration-project-tailwind/p-Dqu2zaH1.js +2 -0
- package/dist/exploration-project-tailwind/p-Dyu3Nplq.js +2 -0
- package/dist/exploration-project-tailwind/p-a7bdedc2.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-c87aeab6.entry.js → p-a8ec29de.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-c174a372.entry.js → p-ae617f62.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-62352ef2.entry.js → p-aef76052.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-b5f043fa.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-b637b91b.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-8d951aef.entry.js → p-bc49a088.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-4de419d5.entry.js → p-bd9a631f.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-e8ba0c95.entry.js → p-bf4b6767.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-c0fa400e.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-5e3e80ae.entry.js → p-c4f3d990.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-c68ddb2f.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-c79574c4.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-c840098d.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-a1ad32a2.entry.js → p-c8663cbe.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-7f91d949.entry.js → p-cb6e38a6.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-cb9f2df1.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-cfe8b696.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-d00e13ae.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-c4ba7e52.entry.js → p-d01ed934.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-aa85ff78.entry.js → p-d4e57d94.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-ccb5c737.entry.js → p-d5bd3a3f.entry.js} +1 -1
- package/dist/exploration-project-tailwind/{p-45482d86.entry.js → p-d987cebe.entry.js} +1 -1
- package/dist/exploration-project-tailwind/p-d9ae77c0.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-e9bae5c7.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-f516fabc.entry.js +1 -0
- package/dist/exploration-project-tailwind/p-f68e2794.entry.js +1 -0
- package/dist/exploration-project-tailwind/{p-d30e24bd.entry.js → p-fa034f69.entry.js} +1 -1
- package/dist/types/components/accordion/accordion.d.ts +10 -2
- package/dist/types/components/aside-panel/aside-panel.d.ts +0 -3
- package/dist/types/components/avatar/avatar.d.ts +3 -0
- package/dist/types/components/avatar/types.d.ts +2 -0
- package/dist/types/components/badge/badge.d.ts +1 -0
- package/dist/types/components/button/button.d.ts +9 -0
- package/dist/types/components/card/card.d.ts +4 -0
- package/dist/types/components/color-picker/color-picker.d.ts +35 -2
- package/dist/types/components/dialog-box/dialog-box.d.ts +10 -0
- package/dist/types/components/dropdown/dropdown.d.ts +5 -0
- package/dist/types/components/file-upload/file-upload.d.ts +23 -6
- package/dist/types/components/label/label.d.ts +290 -0
- package/dist/types/components/label/types.d.ts +39 -0
- package/dist/types/components/list/list.d.ts +2 -1
- package/dist/types/components/list-group/list-group.d.ts +1 -0
- package/dist/types/components/list-item/list-item.d.ts +46 -17
- package/dist/types/components/loader/loader.d.ts +145 -0
- package/dist/types/components/pattern-input/pattern-input.d.ts +6 -0
- package/dist/types/components/popover/popover.d.ts +3 -0
- package/dist/types/components/progress/progress.d.ts +41 -2
- package/dist/types/components/range-slider/range-slider.d.ts +2 -2
- package/dist/types/components/rating/rating.d.ts +1 -0
- package/dist/types/components/skeleton/skeleton-loader.d.ts +1 -1
- package/dist/types/components/speedometer/speedometer.d.ts +1 -0
- package/dist/types/components/tag/tag.d.ts +4 -0
- package/dist/types/components/tree/tree.d.ts +1 -0
- package/dist/types/components/ui-navigation-bar/navigation-bar/navigation-bar.d.ts +1 -1
- package/dist/types/components.d.ts +1214 -1381
- package/dist/types/types/common.d.ts +2 -2
- package/dist/types/types/common.type.d.ts +3 -1
- package/dist/types/utils/dom.d.ts +4 -4
- package/package.json +4 -4
- package/dist/cjs/dom-oP1E4Rd3.js +0 -267
- package/dist/cjs/ui-avatar-group_3.cjs.entry.js +0 -634
- package/dist/cjs/ui-checkbox-group.cjs.entry.js +0 -330
- package/dist/cjs/ui-color-controller.cjs.entry.js +0 -150
- 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-popover.cjs.entry.js +0 -517
- package/dist/cjs/ui-radio-group.cjs.entry.js +0 -205
- package/dist/cjs/ui-radio.cjs.entry.js +0 -206
- package/dist/cjs/ui-smart-location-dropdown.cjs.entry.js +0 -565
- 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/color-controller/color-controller.css +0 -108
- package/dist/collection/components/color-controller/color-controller.js +0 -224
- 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/collection/components/smart-location-dropdown/smart-location-dropdown.css +0 -357
- package/dist/collection/components/smart-location-dropdown/smart-location-dropdown.js +0 -1190
- package/dist/collection/components/smart-location-dropdown/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-color-controller.d.ts +0 -11
- package/dist/components/ui-color-controller.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.js +0 -1
- package/dist/components/ui-smart-location-dropdown.d.ts +0 -11
- package/dist/components/ui-smart-location-dropdown.js +0 -1
- package/dist/esm/dom-BMFah5q3.js +0 -262
- package/dist/esm/ui-avatar-group_3.entry.js +0 -630
- package/dist/esm/ui-checkbox-group.entry.js +0 -328
- package/dist/esm/ui-color-controller.entry.js +0 -148
- package/dist/esm/ui-image-button.entry.js +0 -65
- package/dist/esm/ui-input-pair.entry.js +0 -42
- package/dist/esm/ui-popover.entry.js +0 -515
- package/dist/esm/ui-radio-group.entry.js +0 -203
- package/dist/esm/ui-radio.entry.js +0 -204
- package/dist/esm/ui-smart-location-dropdown.entry.js +0 -563
- package/dist/exploration-project-tailwind/p-01c7db7a.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-049744f9.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-06f0c679.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-0d31c9e9.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-148e81df.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-2f1aebb3.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-46596a28.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-46efdea3.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-47e2a7ee.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-5508874f.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-5ce0dbd8.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-61717490.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-64e3a484.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-6fa9dc15.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-70d82d79.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-717dad1f.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-807c6555.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-875be805.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-9fa70359.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-9fc06ff0.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-BMFah5q3.js +0 -1
- package/dist/exploration-project-tailwind/p-D2WzX6vR.js +0 -2
- package/dist/exploration-project-tailwind/p-DUsoYu9r.js +0 -2
- package/dist/exploration-project-tailwind/p-a4f52a76.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-ab752761.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-ba21fed3.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-c2ca71ac.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-c69dd43e.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-ce1222a1.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-d16c9635.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-d2308a00.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-debede45.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-e90d5307.entry.js +0 -1
- package/dist/exploration-project-tailwind/p-ea51c5d8.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/color-controller/color-controller.d.ts +0 -24
- 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
- package/dist/types/components/smart-location-dropdown/smart-location-dropdown.d.ts +0 -119
- package/dist/types/components/smart-location-dropdown/types.d.ts +0 -37
- /package/dist/collection/components/{checkbox-group → label}/types.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,c as e,a as i,h as o}from"./p-
|
|
1
|
+
import{r as t,c as e,a as i,h as o}from"./p-Dqu2zaH1.js";const r=class{constructor(i){t(this,i),this.stepperChange=e(this,"stepperChange")}orientation="horizontal";size="md";activeStep=0;get host(){return i(this)}stepperChange;async next(){const t=this.getStepsSync();return this.activeStep<t.length-1&&this.goTo(this.activeStep+1)}async prev(){return this.activeStep>0&&this.goTo(this.activeStep-1)}async goTo(t){const e=this.getStepsSync();return t>=0&&t<e.length&&(this.activeStep=t,this.updateStepVisibility(),this.stepperChange.emit({index:t,step:e[t]}),!0)}async getCurrentStep(){return this.getStepsSync()[this.activeStep]||null}async getSteps(){return this.getStepsSync()}getStepsSync(){return Array.from(this.host.querySelectorAll("smart-step"))}updateStepVisibility(){this.getStepsSync().forEach(((t,e)=>{const i=t.querySelector(".stepper-content");i&&(i.style.display=e===this.activeStep?"block":"none");const o=t.querySelector(".step-header");o&&(o.classList.remove("active","completed"),e===this.activeStep?o.classList.add("active"):e<this.activeStep&&o.classList.add("completed"))}))}handleStepClick=t=>{const e=t.target.closest("smart-step");if(e){const t=this.getStepsSync().indexOf(e);-1!==t&&this.goTo(t)}};componentDidLoad(){this.updateStepVisibility()}componentDidUpdate(){this.updateStepVisibility()}handleStepClickEvent(t){t.stopPropagation();const e=t.target,i=this.getStepsSync().indexOf(e);-1!==i&&this.goTo(i)}render(){const t=["smart-stepper-container",`stepper-${this.orientation}`,`stepper-${this.size}`].join(" ");return o("div",{key:"5f68b30cf9e222adb3173b3d24cb1660b1f88480",class:t},o("div",{key:"01fa7e21cfe43f093fb695105ac720c2beb8c2f3",class:"stepper-header",onClick:this.handleStepClick},o("slot",{key:"e79f5035758931b91aa9041a72e59ae616ed5ad7"})),o("div",{key:"822a7a9b69e18ce7644d427ee5447992c232a4c9",class:"stepper-content-area"},o("slot",{key:"e81303bd4161bc6dd4dbb7525cf15d02106ce3e3",name:"content"})))}};r.style='.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block}.stepper-header{display:flex;gap:16px;margin-bottom:16px}.step-header{padding:12px 16px;border-radius:4px;background:#fff;cursor:pointer;transition:all 0.2s;border:1px solid #e5e7eb;display:flex;align-items:center;gap:12px;position:relative;flex:1;min-width:0;}:host-context(.stepper-horizontal) .step-header:not(:last-child)::after{content:"";position:absolute;right:-16px;top:50%;width:16px;height:2px;background:#e5e7eb;z-index:1;display:none;}.step-header:hover:not(.disabled){background:#f9fafb;border-color:#d1d5db}.step-header.active{border-color:#3b82f6;background:#eff6ff}.step-header.completed{border-color:#10b981;background:#f0fdf4;}.step-header.disabled{opacity:0.5;cursor:not-allowed;background:#f3f4f6}.step-icon{width:32px;height:32px;border-radius:50%;background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0;transition:all 0.2s}.step-header.active .step-icon{background:#3b82f6;color:#fff}.step-header.completed .step-icon{background:#10b981;color:#fff}.step-text{display:flex;flex-direction:column;min-width:0}.step-title{font-weight:600;font-size:14px;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step-desc{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stepper-content{min-height:80px;background:#fff;border-radius:4px;box-shadow:0 1px 4px rgba(0, 0, 0, 0.04);padding:16px}';export{r as ui_smart_stepper}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as t,c as i,a as r,h as e,H as s}from"./p-Dqu2zaH1.js";const a=class{constructor(r){t(this,r),this.sliderChange=i(this,"sliderChange"),this.sliderDragStart=i(this,"sliderDragStart"),this.sliderDragEnd=i(this,"sliderDragEnd")}get el(){return r(this)}trackElement;isDragging=!1;activeThumb=null;internals;min=0;max=100;step=1;value=50;startValue=25;endValue=75;range=!1;minRange=0;disabled=!1;showTooltip=!0;tooltipAlwaysVisible=!1;color="#3bf673";trackColor="#e5e7eb";size="md";startIcon="";endIcon="";displayFormat="";showMarks=!1;marks=[];restrictedValues=[];vertical=!1;label="";variant="";prefixText="";suffixText="";showMinMax=!1;inputSync=!1;gradientTrack=!1;showValue=!0;customSteps=[];rtl=!1;circle=!1;hideRange=!1;isHovering=!1;isDraggingState=!1;get resolvedColor(){if(Array.isArray(this.color)){const t=this.range?this.endValue:this.value,i=this.color.find((i=>t>=i.min&&t<=i.max));return i?i.color:"#3bf673"}return this.variant&&{primary:"#3bf673",success:"#10b981",danger:"#ef4444",warning:"#f59e0b",info:"#06b6d4",purple:"#8b5cf6"}[this.variant]||("string"==typeof this.color?this.color:this.color.from)}get resolvedGradient(){if(Array.isArray(this.color)){const t=this.range?this.endValue:this.value,i=this.color.find((i=>t>=i.min&&t<=i.max)),r=i?i.color:"#3bf673";return`linear-gradient(90deg, ${r}, ${r}aa)`}const t="string"==typeof this.color?this.color:this.color.from;return this.variant?{primary:"linear-gradient(90deg, #3bf673, #6366f1)",success:"linear-gradient(90deg, #10b981, #34d399)",danger:"linear-gradient(90deg, #ef4444, #f97316)",warning:"linear-gradient(90deg, #f59e0b, #fbbf24)",info:"linear-gradient(90deg, #06b6d4, #3bf673)",purple:"linear-gradient(90deg, #8b5cf6, #ec4899)"}[this.variant]||`linear-gradient(90deg, ${t}, ${t})`:"object"!=typeof this.color||null===this.color||Array.isArray(this.color)?`linear-gradient(90deg, ${this.color}, ${this.color}aa)`:`linear-gradient(90deg, ${this.color.from}, ${this.color.to})`}sliderChange;sliderDragStart;sliderDragEnd;handleColorChange(){this.normalizeProps()}handleMarksChange(){this.normalizeProps()}componentWillLoad(){"function"==typeof this.el.attachInternals&&(this.internals=this.el.attachInternals()),this.normalizeProps(),this.updateFormValue()}updateFormValue(){this.internals&&this.internals.setFormValue(this.range?`${this.startValue},${this.endValue}`:this.value.toString())}normalizeProps(){try{"string"==typeof this.color&&(this.color.startsWith("{")||this.color.startsWith("["))&&(this.color=JSON.parse(this.color)),"string"==typeof this.marks&&(this.marks=JSON.parse(this.marks)),"string"==typeof this.restrictedValues&&(this.restrictedValues=JSON.parse(this.restrictedValues)),"string"==typeof this.customSteps&&(this.customSteps=JSON.parse(this.customSteps))}catch(t){console.warn("Failed to parse complex slider prop",t)}}componentDidLoad(){document.addEventListener("mousemove",this.handleMouseMove),document.addEventListener("mouseup",this.handleMouseUp),document.addEventListener("touchmove",this.handleTouchMove),document.addEventListener("touchend",this.handleTouchEnd)}disconnectedCallback(){document.removeEventListener("mousemove",this.handleMouseMove),document.removeEventListener("mouseup",this.handleMouseUp),document.removeEventListener("touchmove",this.handleTouchMove),document.removeEventListener("touchend",this.handleTouchEnd)}getMarks(){if("string"==typeof this.marks)try{return JSON.parse(this.marks)}catch{return[]}return this.marks}getRestrictedValues(){if("string"==typeof this.restrictedValues)try{return JSON.parse(this.restrictedValues)}catch{return[]}return this.restrictedValues}getCustomSteps(){if("string"==typeof this.customSteps)try{return JSON.parse(this.customSteps)}catch{return[]}return this.customSteps}getNearestValue(t){const i=this.getRestrictedValues();if(i.length>0)return i.reduce(((i,r)=>Math.abs(r-t)<Math.abs(i-t)?r:i));const r=this.getCustomSteps();if(r.length>0)return r.reduce(((i,r)=>Math.abs(r-t)<Math.abs(i-t)?r:i));const e=Math.round((t-this.min)/this.step);return Math.min(this.max,Math.max(this.min,this.min+e*this.step))}isRtl(){return this.rtl||"rtl"===document.dir||this.el&&"rtl"===this.el.getAttribute("dir")}getPositionFromValue(t){const i=this.getCustomSteps();if(i.length>0){const r=[...i].sort(((t,i)=>t-i)),e=r.indexOf(t);if(-1!==e)return e/(r.length-1)*100;for(let i=0;i<r.length-1;i++)if(t>=r[i]&&t<=r[i+1]){const e=i/(r.length-1)*100;return e+(t-r[i])/(r[i+1]-r[i])*((i+1)/(r.length-1)*100-e)}}return(t-this.min)/(this.max-this.min)*100}getValueFromPosition(t){const i=this.getCustomSteps();if(i.length>0){const r=[...i].sort(((t,i)=>t-i)),e=Math.round(t/100*(r.length-1));return r[Math.max(0,Math.min(e,r.length-1))]}return this.getNearestValue(this.min+t/100*(this.max-this.min))}handleTrackClick=t=>{if(this.disabled)return;const i=this.trackElement.getBoundingClientRect();let r;if(this.vertical)r=(i.bottom-t.clientY)/i.height*100;else{const e=(t.clientX-i.left)/i.width*100;r=this.isRtl()?100-e:e}const e=this.getValueFromPosition(Math.max(0,Math.min(100,r)));if(this.range){const t=this.getPositionFromValue(this.startValue),i=this.getPositionFromValue(this.endValue),s=r;Math.abs(s-t)<Math.abs(s-i)?this.startValue=Math.min(e,this.endValue-this.minRange):this.endValue=Math.max(e,this.startValue+this.minRange),this.sliderChange.emit({start:this.startValue,end:this.endValue}),this.updateFormValue()}else this.value=e,this.sliderChange.emit(this.value),this.updateFormValue()};handleThumbMouseDown=t=>i=>{this.disabled||(i.preventDefault(),this.isDragging=!0,this.isDraggingState=!0,this.activeThumb=t,this.sliderDragStart.emit())};handleThumbTouchStart=t=>i=>{this.disabled||(i.preventDefault(),this.isDragging=!0,this.isDraggingState=!0,this.activeThumb=t,this.sliderDragStart.emit())};handleMouseMove=t=>{this.isDragging&&!this.disabled&&this.updateValueFromEvent(t.clientX,t.clientY)};handleTouchMove=t=>{if(!this.isDragging||this.disabled)return;const i=t.touches[0];this.updateValueFromEvent(i.clientX,i.clientY)};updateValueFromEvent(t,i){if(!this.trackElement)return;const r=this.trackElement.getBoundingClientRect();let e;if(this.vertical)e=(r.bottom-i)/r.height*100;else{const i=(t-r.left)/r.width*100;e=this.isRtl()?100-i:i}const s=this.getValueFromPosition(Math.max(0,Math.min(100,e)));this.range?("start"===this.activeThumb?this.startValue=Math.min(s,this.endValue-this.minRange):"end"===this.activeThumb&&(this.endValue=Math.max(s,this.startValue+this.minRange)),this.sliderChange.emit({start:this.startValue,end:this.endValue})):(this.value=s,this.sliderChange.emit(this.value)),this.updateFormValue()}handleMouseUp=()=>{this.isDragging&&(this.isDragging=!1,this.isDraggingState=!1,this.activeThumb=null,this.sliderDragEnd.emit())};handleTouchEnd=()=>{this.isDragging&&(this.isDragging=!1,this.isDraggingState=!1,this.activeThumb=null,this.sliderDragEnd.emit())};formatValue(t){let i;if(this.displayFormat)try{i=this.displayFormat.replace("{value}",t.toString())}catch{i=t.toString()}else i=t.toString();return`${this.prefixText}${i}${this.suffixText}`}handleInputChange=t=>i=>{const r=Math.max(this.min,Math.min(this.max,Number(i.detail)));isNaN(r)||("start"===t?(this.startValue=Math.min(r,this.endValue),this.sliderChange.emit({start:this.startValue,end:this.endValue})):"end"===t?(this.endValue=Math.max(r,this.startValue),this.sliderChange.emit({start:this.startValue,end:this.endValue})):(this.value=r,this.sliderChange.emit(this.value)))};handleKeyDown=t=>i=>{if(this.disabled)return;let r="start"===t?this.startValue:this.range?this.endValue:this.value;const e=this.step,s=10*this.step;let a=!1;switch(i.key){case"ArrowRight":case"ArrowUp":r+=e,a=!0;break;case"ArrowLeft":case"ArrowDown":r-=e,a=!0;break;case"PageUp":r+=s,a=!0;break;case"PageDown":r-=s,a=!0;break;case"Home":r=this.min,a=!0;break;case"End":r=this.max,a=!0;break;default:return}a&&(i.preventDefault(),i.stopPropagation(),r=Math.max(this.min,Math.min(this.max,r)),this.range?("start"===t?this.startValue=Math.min(r,this.endValue):this.endValue=Math.max(r,this.startValue),this.sliderChange.emit({start:this.startValue,end:this.endValue})):(this.value=r,this.sliderChange.emit(this.value)))};renderMarks(){const t=this.getMarks(),i=this.getCustomSteps(),r=this.resolvedColor;let s=t;if(0===s.length&&this.showMarks){const t=i.length>0?i:[];if(0===t.length)for(let i=this.min;i<=this.max;i+=this.step)t.push(i);s=t.map((t=>({value:t})))}const a=this.range?this.startValue:this.min,l=this.range?this.endValue:this.value;return s.map((t=>{const i=this.getPositionFromValue(t.value);return e("div",{class:"slider-mark",style:this.vertical?{bottom:`${i}%`}:{left:`${i}%`}},e("div",{class:"slider-mark-dot",style:t.value>=a&&t.value<=l?{backgroundColor:r,borderColor:"white"}:{}}),t.label&&e("div",{class:"slider-mark-label"},t.label))}))}render(){const t=this.range?this.getPositionFromValue(this.startValue):0,i=this.getPositionFromValue(this.range?this.endValue:this.value),r=this.resolvedColor,a=this.vertical?{bottom:`${t}%`,height:i-t+"%",...this.gradientTrack?{background:this.resolvedGradient}:{backgroundColor:r}}:{left:`${t}%`,width:i-t+"%",...this.gradientTrack?{background:this.resolvedGradient}:{backgroundColor:r}},l=(t,i)=>{const e="object"==typeof this.color&&null!==this.color,s=i?{bottom:`${t}%`}:{[this.isRtl()?"right":"left"]:`${t}%`};return e||this.gradientTrack&&this.variant?s.background=this.resolvedGradient:s.backgroundColor=r,s.boxShadow=`0 0 0 3px ${r}33`,s};return e(s,{dir:this.isRtl()?"rtl":"ltr"},this.label&&e("div",{class:"slider-label"},this.label),e("div",{class:{"slider-container":!0,[`slider-${this.size}`]:!0,[`variant-${this.variant}`]:!!this.variant,"variant-circle":this.circle,"slider-vertical":this.vertical,"slider-disabled":this.disabled,"slider-dragging":this.isDraggingState,"slider-rtl":this.isRtl()},dir:this.isRtl()?"rtl":"ltr",onMouseEnter:()=>this.isHovering=!0,onMouseLeave:()=>this.isHovering=!1},this.startIcon&&e("div",{class:"slider-icon slider-start-icon"},this.startIcon),e("div",{class:"slider-wrapper"},this.showMinMax&&e("div",{class:"slider-minmax-labels"},e("span",{class:"slider-minmax-min"},this.formatValue(this.min)),e("span",{class:"slider-minmax-max"},this.formatValue(this.max))),e("div",{class:"slider-track",ref:t=>this.trackElement=t,onClick:this.handleTrackClick,style:{background:this.trackColor}},!this.hideRange&&e("div",{class:"slider-range",style:a}),this.showMarks&&e("div",{class:"slider-marks"},this.renderMarks()),this.range&&e("div",{class:{"slider-thumb":!0,"slider-thumb-active":"start"===this.activeThumb},style:l(t,this.vertical),onMouseDown:this.handleThumbMouseDown("start"),onTouchStart:this.handleThumbTouchStart("start"),onKeyDown:this.handleKeyDown("start"),tabIndex:this.disabled?-1:0,role:"slider","aria-label":"Start Value","aria-valuemin":this.min,"aria-valuemax":this.endValue,"aria-valuenow":this.startValue},this.showTooltip&&(this.tooltipAlwaysVisible||this.isHovering||this.isDraggingState)&&e("div",{class:"slider-tooltip"},this.formatValue(this.startValue))),e("div",{class:{"slider-thumb":!0,"slider-thumb-active":!this.range||"end"===this.activeThumb},style:l(i,this.vertical),onMouseDown:this.handleThumbMouseDown(this.range?"end":null),onTouchStart:this.handleThumbTouchStart(this.range?"end":null),onKeyDown:this.handleKeyDown("end"),tabIndex:this.disabled?-1:0,role:"slider","aria-label":this.range?"End Value":"Value","aria-valuemin":this.range?this.startValue:this.min,"aria-valuemax":this.max,"aria-valuenow":this.range?this.endValue:this.value},this.showTooltip&&(this.tooltipAlwaysVisible||this.isHovering||this.isDraggingState)&&e("div",{class:"slider-tooltip"},this.formatValue(this.range?this.endValue:this.value)))),this.showValue&&e("div",{class:"slider-value-display"},this.range?`${this.formatValue(this.startValue)} – ${this.formatValue(this.endValue)}`:this.formatValue(this.value)),this.inputSync&&!this.range&&e("ui-input",{type:"number",class:"slider-input",min:this.min,max:this.max,step:this.step,value:this.value,disabled:this.disabled,onInputChange:this.handleInputChange("single"),size:"sm"}),this.inputSync&&this.range&&e("div",{class:"slider-input-row"},e("ui-input",{type:"number",class:"slider-input",min:this.min,max:this.endValue,step:this.step,value:this.startValue,disabled:this.disabled,onInputChange:this.handleInputChange("start"),size:"sm"}),e("span",{class:"slider-input-sep"},"–"),e("ui-input",{type:"number",class:"slider-input",min:this.startValue,max:this.max,step:this.step,value:this.endValue,disabled:this.disabled,onInputChange:this.handleInputChange("end"),size:"sm"}))),this.endIcon&&e("div",{class:"slider-icon slider-end-icon"},this.endIcon)))}static get formAssociated(){return!0}static get watchers(){return{color:[{handleColorChange:0}],marks:[{handleMarksChange:0}]}}};a.style='.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;width:100%;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}.slider-label{font-size:13px;font-weight:600;color:var(--label-color, var(--text-secondary, #374151));margin-bottom:10px;letter-spacing:0.01em}.slider-minmax-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--label-subtitle-color, var(--text-muted, #9ca3af));margin-bottom:8px;padding:0;width:100%;pointer-events:none}.slider-input{width:max-content;padding:4px 8px;border-radius:6px;font-size:13px;font-weight:500;color:var(--text-secondary, #374151);text-align:center;outline:none;transition:border-color 0.2s;background:var(--bg-primary, #ffffff);-moz-appearance:textfield;appearance:textfield}.slider-input::-webkit-inner-spin-button,.slider-input::-webkit-outer-spin-button{opacity:1}.slider-input:focus{border-color:var(--color-primary, #10b981);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb, 59, 130, 246), 0.15)}.slider-input-row{display:flex;align-items:center;gap:8px;margin-top:10px;justify-content:center}.slider-input-sep{color:var(--text-muted, #9ca3af);font-size:14px;font-weight:600}.slider-container{display:flex;align-items:flex-start;gap:16px;width:100%;user-select:none}.slider-vertical{flex-direction:column;height:300px;width:auto;align-items:center}.slider-disabled{opacity:0.5;cursor:not-allowed;pointer-events:none}.slider-icon{display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--text-muted, #6b7280);flex-shrink:0;line-height:1;height:24px}.slider-xxxs .slider-icon{font-size:8px;height:12px}.slider-xxs .slider-icon{font-size:10px;height:14px}.slider-xs .slider-icon{font-size:12px;height:16px}.slider-sm .slider-icon,.slider-small .slider-icon{font-size:14px;height:20px}.slider-lg .slider-icon,.slider-large .slider-icon{font-size:20px;height:28px}.slider-xl .slider-icon{font-size:24px;height:36px}.slider-xxl .slider-icon{font-size:28px;height:44px}.slider-xxxl .slider-icon{font-size:32px;height:56px}.slider-wrapper{flex:1;display:flex;flex-direction:column;gap:8px;position:relative;align-items:stretch;min-height:24px;padding:0 12px}.slider-xxxs .slider-wrapper{min-height:12px}.slider-xxs .slider-wrapper{min-height:14px}.slider-xs .slider-wrapper{min-height:16px}.slider-sm .slider-wrapper,.slider-small .slider-wrapper{min-height:20px}.slider-lg .slider-wrapper,.slider-large .slider-wrapper{min-height:28px}.slider-xl .slider-wrapper{min-height:36px}.slider-xxl .slider-wrapper{min-height:44px}.slider-xxxl .slider-wrapper{min-height:56px}.slider-vertical .slider-wrapper{flex:1;width:100%;align-items:center;justify-content:center;min-height:0}.slider-track{position:relative;width:100%;height:6px;border-radius:10px;cursor:pointer;background-color:var(--bg-primary, #e5e7eb);margin:12px 0}.slider-xxxs .slider-track{height:2px}.slider-xxs .slider-track{height:3px}.slider-xs .slider-track{height:3px}.slider-sm .slider-track,.slider-small .slider-track{height:4px}.slider-md .slider-track,.slider-medium .slider-track,.slider-default .slider-track{height:6px}.slider-lg .slider-track,.slider-large .slider-track{height:8px}.slider-xl .slider-track{height:10px}.slider-xxl .slider-track{height:12px}.slider-xxxl .slider-track{height:16px}.slider-vertical .slider-track{width:6px;height:100%}.slider-vertical.slider-xxxs .slider-track{width:2px}.slider-vertical.slider-xxs .slider-track{width:3px}.slider-vertical.slider-xs .slider-track{width:3px}.slider-vertical.slider-sm .slider-track,.slider-vertical.slider-small .slider-track{width:4px}.slider-vertical.slider-md .slider-track,.slider-vertical.slider-medium .slider-track,.slider-vertical.slider-default .slider-track{width:6px}.slider-vertical.slider-lg .slider-track,.slider-vertical.slider-large .slider-track{width:8px}.slider-vertical.slider-xl .slider-track{width:10px}.slider-vertical.slider-xxl .slider-track{width:12px}.slider-vertical.slider-xxxl .slider-track{width:16px}.slider-range{position:absolute;height:6px;border-radius:10px;background-color:var(--color-primary, #10b981);pointer-events:none;transition:background-color 0.2s ease}.slider-xxxs .slider-range{height:2px}.slider-xxs .slider-range{height:3px}.slider-xs .slider-range{height:3px}.slider-sm .slider-range,.slider-small .slider-range{height:4px}.slider-md .slider-range,.slider-medium .slider-range,.slider-default .slider-range{height:6px}.slider-lg .slider-range,.slider-large .slider-range{height:8px}.slider-xl .slider-range{height:10px}.slider-xxl .slider-range{height:12px}.slider-xxxl .slider-range{height:16px}.slider-vertical .slider-range{width:100%;height:auto}.slider-thumb{position:absolute;transform:translate(-50%, -50%);top:50%;border-radius:50%;background-color:var(--color-primary, #10b981);cursor:grab;box-shadow:0 2px 6px rgba(0, 0, 0, 0.15);transition:transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.2s ease, left 0.1s ease-out, bottom 0.1s ease-out;z-index:10;border:2px solid var(--bg-primary, #ffffff)}.slider-thumb:hover{transform:translate(-50%, -50%) scale(1.15);box-shadow:0 4px 14px rgba(0, 0, 0, 0.18)}.slider-thumb-active,.slider-dragging .slider-thumb-active{cursor:grabbing;transform:translate(-50%, -50%) scale(1.2);box-shadow:0 4px 16px rgba(var(--color-primary-rgb, 59, 130, 246), 0.45);z-index:11}.slider-xxxs .slider-thumb{width:8px;height:8px}.slider-xxs .slider-thumb{width:10px;height:10px}.slider-xs .slider-thumb{width:12px;height:12px}.slider-sm .slider-thumb,.slider-small .slider-thumb{width:14px;height:14px}.slider-md .slider-thumb,.slider-medium .slider-thumb,.slider-default .slider-thumb{width:18px;height:18px}.slider-lg .slider-thumb,.slider-large .slider-thumb{width:24px;height:24px}.slider-xl .slider-thumb{width:30px;height:30px}.slider-xxl .slider-thumb{width:36px;height:36px}.slider-xxxl .slider-thumb{width:44px;height:44px}.slider-vertical .slider-thumb{left:50%;top:auto;transform:translate(-50%, 50%)}.slider-vertical .slider-thumb:hover{transform:translate(-50%, 50%) scale(1.1)}.slider-vertical .slider-thumb-active,.slider-vertical.slider-dragging .slider-thumb-active{transform:translate(-50%, 50%) scale(1.15)}.slider-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:4px 8px;background-color:var(--bg-tertiary, #1e293b);color:var(--text-primary, #ffffff);font-size:12px;font-weight:600;border-radius:6px;border:1px solid var(--border-default, rgba(0, 0, 0, 0.1));white-space:nowrap;pointer-events:none;opacity:0;animation:tooltipFadeIn 0.2s ease forwards;box-shadow:0 4px 12px rgba(0, 0, 0, 0.15)}.slider-tooltip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:4px solid transparent;border-top-color:var(--bg-tertiary, #1e293b)}.slider-vertical .slider-tooltip{bottom:auto;top:50%;left:calc(100% + 8px);transform:translateY(-50%)}.slider-vertical .slider-tooltip::after{top:50%;left:-8px;transform:translateY(-50%);border:4px solid transparent;border-right-color:var(--bg-tertiary, #1e293b);border-top-color:transparent}@keyframes tooltipFadeIn{to{opacity:1}}.slider-marks{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.slider-mark{position:absolute;transform:translateX(-50%)}.slider-vertical .slider-mark{transform:translateY(50%);left:50%}.slider-mark-dot{width:8px;height:8px;border-radius:50%;background-color:var(--bg-secondary, #d1d5db);border:2px solid var(--bg-primary, #ffffff);position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.slider-xxxs .slider-mark-dot{width:3px;height:3px}.slider-xxs .slider-mark-dot{width:4px;height:4px}.slider-xs .slider-mark-dot{width:5px;height:5px}.slider-sm .slider-mark-dot,.slider-small .slider-mark-dot{width:6px;height:6px}.slider-md .slider-mark-dot,.slider-medium .slider-mark-dot,.slider-default .slider-mark-dot{width:8px;height:8px}.slider-lg .slider-mark-dot,.slider-large .slider-mark-dot{width:10px;height:10px}.slider-xl .slider-mark-dot{width:12px;height:12px}.slider-xxl .slider-mark-dot{width:14px;height:14px}.slider-xxxl .slider-mark-dot{width:18px;height:18px}.slider-mark-label{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);font-size:11px;color:var(--text-muted, #6b7280);white-space:nowrap}.slider-vertical .slider-mark-label{top:50%;left:calc(100% + 12px);transform:translateY(-50%)}.slider-value-display{text-align:center;font-size:13px;color:var(--text-secondary, #374151);font-weight:600;margin-top:8px;letter-spacing:0.01em}.slider-xxxs .slider-value-display{font-size:9px}.slider-xxs .slider-value-display{font-size:10px}.slider-xs .slider-value-display{font-size:11px}.slider-sm .slider-value-display,.slider-small .slider-value-display{font-size:12px}.slider-lg .slider-value-display,.slider-large .slider-value-display{font-size:14px}.slider-xl .slider-value-display{font-size:16px}.slider-xxl .slider-value-display{font-size:18px}.slider-xxxl .slider-value-display{font-size:22px}.slider-vertical .slider-value-display{display:none}.slider-thumb:focus{outline:none;box-shadow:0 0 0 4px rgba(var(--color-primary-rgb, 59, 130, 246), 0.25)}.slider-track.has-restricted-values .slider-mark-dot{background-color:var(--color-primary, #10b981)}.slider-range,.slider-thumb{transition:all 0.1s ease-out}.slider-dragging .slider-range,.slider-dragging .slider-thumb{transition:none}.slider-thumb[aria-disabled=true]{cursor:not-allowed;opacity:0.5}@media (hover: none) and (pointer: coarse){.slider-thumb{width:24px;height:24px}.slider-xxxs .slider-thumb{width:12px;height:12px}.slider-xxs .slider-thumb{width:14px;height:14px}.slider-xs .slider-thumb{width:16px;height:16px}.slider-sm .slider-thumb,.slider-small .slider-thumb{width:20px;height:20px}.slider-md .slider-thumb,.slider-medium .slider-thumb,.slider-default .slider-thumb{width:24px;height:24px}.slider-lg .slider-thumb,.slider-large .slider-thumb{width:30px;height:30px}.slider-xl .slider-thumb{width:36px;height:36px}.slider-xxl .slider-thumb{width:42px;height:42px}.slider-xxxl .slider-thumb{width:52px;height:52px}}.variant-glass .slider-track{background:rgba(255, 255, 255, 0.1) !important;backdrop-filter:blur(8px);border:1px solid rgba(255, 255, 255, 0.2);box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.1)}.variant-glass .slider-thumb{background:rgba(255, 255, 255, 0.9);backdrop-filter:blur(4px);border:1px solid var(--bg-primary, #ffffff);box-shadow:0 8px 16px rgba(0, 0, 0, 0.2)}.variant-glass .slider-thumb:hover{background:var(--bg-primary, #ffffff) !important;transform:translate(-50%, -50%) scale(1.1)}.variant-glass .slider-range{background:linear-gradient(90deg, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.8))}.variant-detailed .slider-track{height:12px !important;border-radius:6px !important;background:var(--bg-secondary, #f1f5f9) !important;box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.05)}.variant-detailed .slider-track::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(rgba(0, 0, 0, 0.02), transparent);border-radius:6px;pointer-events:none}.variant-detailed .slider-range{height:12px !important;border-radius:6px !important;box-shadow:0 4px 10px rgba(var(--color-primary-rgb, 59, 130, 246), 0.2);background-size:200% 200% !important;animation:livingTrack 3s ease infinite !important}.variant-detailed .slider-range::after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:rgba(255, 255, 255, 0.2);border-radius:6px 6px 0 0}.variant-detailed .slider-mark-active .slider-mark-dot{transform:translate(-50%, -50%) scale(1.5) !important;background:var(--dd-primary, var(--color-primary, #10b981)) !important;box-shadow:0 0 10px rgba(var(--color-primary-rgb, 59, 130, 246), 0.5) !important}.variant-detailed .slider-thumb{width:24px !important;height:24px !important;background:var(--bg-primary, #ffffff);border:2px solid var(--dd-primary, var(--color-primary, #10b981)) !important;box-shadow:0 4px 12px rgba(0, 0, 0, 0.1), 0 0 0 4px rgba(var(--color-primary-rgb, 59, 130, 246), 0.1)}.variant-detailed .slider-thumb::after{content:"";position:absolute;width:4px;height:10px;background:var(--bg-primary, #e2e8f0);border-radius:2px;left:50%;top:50%;transform:translate(-50%, -50%)}.variant-detailed .slider-thumb:hover{box-shadow:0 8px 24px rgba(0, 0, 0, 0.15), 0 0 0 6px rgba(var(--color-primary-rgb, 59, 130, 246), 0.15);border-color:var(--dd-primary-strong, var(--color-primary-hover, #2563eb)) !important}.variant-detailed .slider-tooltip{background:var(--bg-tertiary, #f1f5f9) !important;color:var(--text-primary, #1e293b) !important;border-radius:10px !important;padding:8px 12px !important;font-weight:700 !important;box-shadow:0 10px 20px rgba(0, 0, 0, 0.15) !important;border:1px solid var(--border-default) !important}.variant-detailed .slider-tooltip::after{border-top-color:var(--bg-tertiary, #f1f5f9) !important}.variant-detailed .slider-mark-dot{width:4px !important;height:12px !important;border-radius:2px !important;border:none !important;background:var(--color-primary, #cbd5e1) !important}.variant-circle .slider-track{height:8px !important;background:var(--bg-secondary, #f1f5f9) !important;border:1px solid var(--border-subtle, #e2e8f0)}.variant-circle .slider-thumb{width:28px !important;height:28px !important;background:var(--bg-primary, #ffffff);border:6px solid var(--dd-primary, var(--color-primary, #10b981)) !important;box-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1)}.variant-circle .slider-thumb:hover{transform:translate(-50%, -50%) scale(1.1);box-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1)}.variant-circle .slider-range{background:var(--dd-primary, var(--color-primary, #10b981)) !important;height:8px !important}.slider-container[dir=rtl] .slider-start-icon{order:2}.slider-container[dir=rtl] .slider-end-icon{order:0}.slider-container[dir=rtl] .slider-wrapper{order:1}.slider-container[dir=rtl] .slider-thumb{cursor:grab}@keyframes livingTrack{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}';export{a as ui_range_slider}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,a as o,h as s,H as i}from"./p-DUsoYu9r.js";const r=class{constructor(o){t(this,o)}get el(){return o(this)}mode="top";threshold=300;behavior="smooth";position="bottom-right";quickJump=!1;strategy="fixed";icon="arrow-up";label;size="md";color="primary";variant="solid";target;showProgress=!1;progressColor;showProgressValue=!1;glassy=!1;magnetic=!1;magneticStrength=.3;magneticRadius=150;autoHide=!1;persistenceId;onPersistenceIdChange(){this.loadPersistedPosition()}isDraggable=!1;autoHideHoldTime=3e3;shape="rounded";iconLibrary="default";animation="scale";tooltip;zIndex=1e3;portal=!1;haptic=!1;skeleton=!1;loading=!1;textDirection="auto";isVisible=!1;isUserScrolling=!1;scrollProgress=0;dir="ltr";pulse=!1;anchors=[];isMenuOpen=!1;magneticTransform={x:0,y:0};dragOffset={x:0,y:0};isDragging=!1;targetElement;autoHideTimer;pulseTimer;dragStartPos={x:0,y:0};initialOffset={x:0,y:0};handleModeChange(){this.triggerPulse()}onTextDirectionChange(){this.updateDir()}componentWillLoad(){this.updateDir(),this.loadPersistedPosition(),this.computeScrollState(document.documentElement,window.pageYOffset??document.documentElement?.scrollTop??0)}componentDidLoad(){this.portal&&document.body&&this.el.parentNode!==document.body&&document.body.appendChild(this.el),this.initTarget()}componentDidUpdate(){this.targetElement||this.initTarget()}scanAnchors(){if(!this.quickJump)return;const t=Array.from(document.querySelectorAll("h1[id], h2[id], h3[id], h4[id], h5[id], h6[id], [data-ui-anchor]"));this.anchors=t.map((t=>({title:t.getAttribute("data-ui-anchor-title")||t.textContent.trim(),id:t.id||(t.hasAttribute("data-ui-anchor")?t.getAttribute("data-ui-anchor")??"":"")}))).filter((t=>!!t.id&&!!t.title))}loadPersistedPosition(){if(this.persistenceId&&this.isDraggable){const t=localStorage.getItem(`ui-scroll-top-pos-${this.persistenceId}`);if(t)try{this.dragOffset=JSON.parse(t)}catch(t){console.error("Failed to load ScrollTop position",t)}}}savePersistedPosition(){this.persistenceId&&this.isDraggable&&localStorage.setItem(`ui-scroll-top-pos-${this.persistenceId}`,JSON.stringify(this.dragOffset))}triggerPulse(){this.pulse=!0,this.pulseTimer&&clearTimeout(this.pulseTimer),this.pulseTimer=setTimeout((()=>this.pulse=!1),600)}updateDir(){if("rtl"===this.textDirection)this.dir="rtl";else if("ltr"===this.textDirection)this.dir="ltr";else{const t=getComputedStyle(this.el).direction;this.dir="rtl"===t?"rtl":"ltr"}}initTarget(){if(this.targetElement=this.target?document.querySelector(this.target):window,this.targetElement){this.targetElement.addEventListener("scroll",this.handleScroll);const t=this.targetElement instanceof Window?document.documentElement:this.targetElement,o=this.targetElement instanceof Window?window.pageYOffset||document.documentElement.scrollTop:this.targetElement.scrollTop;this.computeScrollState(t,o)}}computeScrollState(t,o){if(this.isVisible="top"===this.mode?o>this.threshold:"bottom"===this.mode?o<t.scrollHeight-t.clientHeight-this.threshold:!(o<this.threshold&&o>t.scrollHeight-t.clientHeight-this.threshold),this.showProgress){const s=t.scrollHeight-t.clientHeight;s>0&&(this.scrollProgress=Math.min(100,Math.max(0,o/s*100)))}}disconnectedCallback(){this.targetElement&&this.targetElement.removeEventListener("scroll",this.handleScroll),this.clearAutoHideTimer(),this.clearPulseTimer()}clearPulseTimer(){this.pulseTimer&&(clearTimeout(this.pulseTimer),this.pulseTimer=null)}clearAutoHideTimer(){this.autoHideTimer&&(clearTimeout(this.autoHideTimer),this.autoHideTimer=null)}handleScroll=()=>{const t=this.targetElement instanceof Window?document.documentElement:this.targetElement,o=this.targetElement instanceof Window?window.pageYOffset||document.documentElement.scrollTop:this.targetElement.scrollTop,s=this.isVisible;this.computeScrollState(t,o),this.autoHide&&this.isVisible?(this.isUserScrolling=!0,this.clearAutoHideTimer(),this.autoHideTimer=setTimeout((()=>{this.isUserScrolling=!1}),this.autoHideHoldTime)):this.autoHide||(this.isUserScrolling=!0),!s&&this.isVisible&&this.haptic&&"vibrate"in navigator&&navigator.vibrate(30)};handleAction=()=>{if(this.haptic&&"vibrate"in navigator&&navigator.vibrate(50),this.targetElement instanceof Window){let t=0;"bottom"===this.mode?t=document.documentElement.scrollHeight:"both"===this.mode&&(t=(window.pageYOffset||document.documentElement.scrollTop)>(document.documentElement.scrollHeight-document.documentElement.clientHeight)/2?0:document.documentElement.scrollHeight),window.scrollTo({top:t,behavior:this.behavior})}else{const t=this.targetElement;let o=0;"bottom"===this.mode?o=t.scrollHeight:"both"===this.mode&&(o=t.scrollTop>(t.scrollHeight-t.clientHeight)/2?0:t.scrollHeight),t.scrollTo({top:o,behavior:this.behavior})}};handleMouseMove(t){if(!this.magnetic||!this.isVisible)return;const o=this.el.getBoundingClientRect(),s=t.clientX-(o.left+o.width/2),i=t.clientY-(o.top+o.height/2),r=Math.sqrt(s*s+i*i);if(r<this.magneticRadius){const t=1-r/this.magneticRadius;this.magneticTransform={x:s*this.magneticStrength*t,y:i*this.magneticStrength*t}}else 0===this.magneticTransform.x&&0===this.magneticTransform.y||(this.magneticTransform={x:0,y:0})}handleContextMenu=t=>{this.quickJump&&(t.preventDefault(),this.scanAnchors(),this.isMenuOpen=!this.isMenuOpen)};jumpTo=t=>{const o=document.getElementById(t);o&&o.scrollIntoView({behavior:"smooth"}),this.isMenuOpen=!1};onMouseDown(t){this.isDraggable&&(this.isDragging=!0,this.dragStartPos={x:t.clientX,y:t.clientY},this.initialOffset={...this.dragOffset},this.isMenuOpen=!1,document.addEventListener("mousemove",this.onMouseMove),document.addEventListener("mouseup",this.onMouseUp))}onMouseMove=t=>{this.isDragging&&(this.dragOffset={x:this.initialOffset.x+(t.clientX-this.dragStartPos.x),y:this.initialOffset.y+(t.clientY-this.dragStartPos.y)})};onMouseUp=()=>{this.isDragging=!1,document.removeEventListener("mousemove",this.onMouseMove),document.removeEventListener("mouseup",this.onMouseUp),this.savePersistedPosition()};render(){if(this.skeleton)return s(i,{class:`scroll-top-skeleton scroll-top-${this.position} scroll-top-${this.size}`},s("div",{class:"skeleton-btn"}));const t=this.isVisible&&(!this.autoHide||this.isUserScrolling),o=2*Math.PI*22,r=o-this.scrollProgress/100*o;return s(i,{style:this.portal?{display:"contents"}:{}},s("ui-button",{variant:"solid"===this.variant?"primary":this.variant,class:{"scroll-top":!0,[`scroll-top-${this.position}`]:!0,[`scroll-top-${this.size}`]:!0,[`scroll-top-${this.color}`]:!0,[`scroll-top-variant-${this.variant}`]:!0,[`scroll-top-shape-${this.shape}`]:!0,[`scroll-top-anim-${this.animation}`]:!0,"scroll-top-visible":t,"scroll-top-active":this.isUserScrolling,"scroll-top-with-label":!!this.label,"scroll-top-loading":this.loading,"scroll-top-pulse":this.pulse,"scroll-top-glassy":this.glassy,"scroll-top-rtl":"rtl"===this.dir,"scroll-top-strategy-absolute":"absolute"===this.strategy},style:{"--z-index":`${this.zIndex}`,"--magnetic-x":`${this.magneticTransform.x}px`,"--magnetic-y":`${this.magneticTransform.y}px`,"--drag-x":`${this.dragOffset.x}px`,"--drag-y":`${this.dragOffset.y}px`,transform:"translate(calc(var(--magnetic-x, 0px) + var(--drag-x, 0px)), calc(var(--magnetic-y, 0px) + var(--drag-y, 0px)))",transition:0!==this.magneticTransform.x||this.isDragging?"none":"transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1)","pointer-events":t?"auto":"none",cursor:this.isDraggable?this.isDragging?"grabbing":"grab":"pointer"},onClick:()=>this.handleAction(),onKeyDown:t=>"Enter"===t.key&&this.handleAction(),onContextMenu:this.handleContextMenu,disabled:!t,ariaLabel:"top"===this.mode?"Scroll to top":"Scroll to bottom","aria-haspopup":this.quickJump?"true":"false","aria-expanded":this.isMenuOpen?"true":"false",title:this.quickJump?"Right-click for sections":this.tooltip||("top"===this.mode?"Top":"Bottom"),icon:this.loading?"loading":"top"===this.mode?this.icon:"bottom"===this.mode?"arrow-up"===this.icon?"arrow-down":this.icon:this.scrollProgress>50?"arrow-up"===this.icon?"arrow-up":this.icon:"arrow-up"===this.icon?"arrow-down":this.icon,iconLibrary:this.iconLibrary,loading:this.loading,label:this.label},this.showProgress&&s("svg",{class:"progress-ring",width:"100%",height:"100%",viewBox:"0 0 60 60",slot:"start"},s("circle",{class:"progress-ring__background",stroke:"rgba(255,255,255,0.1)","stroke-width":"3",fill:"transparent",r:22,cx:"30",cy:"30"}),s("circle",{class:"progress-ring__circle",stroke:this.progressColor||"currentColor","stroke-width":"3","stroke-dasharray":`${o} ${o}`,style:{strokeDashoffset:`${r}`},"stroke-linecap":"round",fill:"transparent",r:22,cx:"30",cy:"30"})),this.showProgress&&this.showProgressValue&&s("span",{class:"progress-value",slot:"start"},Math.round(this.scrollProgress),"%"),this.isMenuOpen&&s("div",{class:`scroll-top-anchors scroll-top-anchors-${this.position}`,slot:"end"},s("div",{class:"scroll-top-anchors-header"},"Quick Jump"),s("div",{class:"scroll-top-anchors-list"},this.anchors.map((t=>s("ui-button",{key:t.id,variant:"ghost",class:"scroll-top-anchor-item",onClick:o=>{o.stopPropagation(),this.jumpTo(t.id)},label:t.title,block:!0})))))))}static get watchers(){return{persistenceId:[{onPersistenceIdChange:0}],mode:[{handleModeChange:0}],textDirection:[{onTextDirectionChange:0}]}}};r.style=".sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:contents;--z-index:1000}.scroll-top{position:fixed;z-index:var(--z-index, 1000);display:flex;align-items:center;justify-content:center;padding:0;border:none;cursor:pointer;background:transparent !important;transition:all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);opacity:0;transform:scale(0);pointer-events:none}.scroll-top.scroll-top-strategy-absolute{position:absolute}.scroll-top.scroll-top-visible{opacity:1 !important;pointer-events:auto !important;transform:scale(1)}.scroll-top.scroll-top-visible.scroll-top-bottom-center,.scroll-top.scroll-top-visible.scroll-top-top-center{transform:translateX(-50%) scale(1) !important}.scroll-top.scroll-top-visible.scroll-top-center{transform:translate(-50%, -50%) scale(1) !important}.scroll-top.scroll-top-visible.scroll-top-center-left,.scroll-top.scroll-top-visible.scroll-top-center-right{transform:translateY(-50%) scale(1) !important}.scroll-top{font-family:inherit;font-weight:600;user-select:none;overflow:visible}.scroll-top.scroll-top-glassy{backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%)}.scroll-top-visible{opacity:1 !important;visibility:visible !important}.scroll-top:hover{box-shadow:0 6px 20px rgba(0, 0, 0, 0.2);filter:brightness(1.1)}.scroll-top:active{transform:scale(0.92) !important}.scroll-top-shape-circle{border-radius:50%}.scroll-top-shape-square,.scroll-top-shape-sharp{border-radius:0}.scroll-top-shape-rounded{border-radius:12px}.scroll-top-shape-pill,.scroll-top-shape-oval{border-radius:999px}.scroll-top-shape-chip{border-radius:100px}.scroll-top-sm{width:40px;height:40px;font-size:14px}.scroll-top-md{width:50px;height:50px;font-size:16px}.scroll-top-lg{width:64px;height:64px;font-size:18px}.scroll-top-bottom-right{right:24px;bottom:24px}.scroll-top-bottom-left{left:24px;bottom:24px}.scroll-top-bottom-center{left:50%;bottom:24px;transform:translateX(-50%)}.scroll-top-top-center{top:24px;left:50%;transform:translateX(-50%)}.scroll-top-center-left{top:50%;left:24px;transform:translateY(-50%)}.scroll-top-center-right{top:50%;right:24px;transform:translateY(-50%)}.scroll-top-center{top:50%;left:50%;transform:translate(-50%, -50%)}.scroll-top-top-right{right:24px;top:24px}.scroll-top-top-left{left:24px;top:24px}.scroll-top-anim-scale{transform:scale(0.5)}.scroll-top-anim-scale.scroll-top-visible{transform:scale(1)}.scroll-top-bottom-center.scroll-top-anim-scale{transform:translateX(-50%) scale(0.5)}.scroll-top-bottom-center.scroll-top-anim-scale.scroll-top-visible{transform:translateX(-50%) scale(1)}.scroll-top-anim-fade{transform:none}.scroll-top-anim-slide.scroll-top-bottom-right{transform:translateY(40px)}.scroll-top-anim-slide.scroll-top-bottom-left{transform:translateY(40px)}.scroll-top-anim-slide.scroll-top-bottom-center{transform:translate(-50%, 40px)}.scroll-top-anim-slide.scroll-top-top-right{transform:translateY(-40px)}.scroll-top-anim-slide.scroll-top-top-left{transform:translateY(-40px)}.scroll-top-anim-slide.scroll-top-visible{transform:translate(0, 0) !important}.scroll-top-bottom-center.scroll-top-anim-slide.scroll-top-visible{transform:translate(-50%, 0) !important}.scroll-top-sm{width:40px;height:40px;min-width:40px}.scroll-top-md{width:56px;height:56px;min-width:56px}.scroll-top-lg{width:72px;height:72px;min-width:72px}.progress-ring{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;transform:rotate(-90deg)}.progress-ring__circle{transition:stroke-dashoffset 0.1s}.scroll-top-anchors{position:absolute;background:var(--bg-primary, #ffffff);border-radius:12px;box-shadow:0 10px 25px rgba(0, 0, 0, 0.2);width:200px;max-height:300px;overflow:hidden;display:flex;flex-direction:column;z-index:1000;border:1px solid rgba(0, 0, 0, 0.05);animation:scroll-top-menu-fade 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.scroll-top-glassy .scroll-top-anchors{background:rgba(255, 255, 255, 0.8);backdrop-filter:blur(16px)}.scroll-top-anchors-bottom-right{bottom:120%;right:0;transform-origin:bottom right}.scroll-top-anchors-bottom-left{bottom:120%;left:0;transform-origin:bottom left}.scroll-top-anchors-bottom-center{bottom:120%;left:50%;transform:translateX(-50%);transform-origin:bottom center}.scroll-top-anchors-top-right{top:120%;right:0;transform-origin:top right}.scroll-top-anchors-top-left{top:120%;left:0;transform-origin:top left}@keyframes scroll-top-menu-fade{from{opacity:0;transform:scale(0.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.scroll-top-anchors-header{padding:12px 16px;font-size:11px;font-weight:800;text-transform:uppercase;color:var(--text-muted, #6b7280);background:rgba(0, 0, 0, 0.02);border-bottom:1px solid rgba(0, 0, 0, 0.05);letter-spacing:0.1em}.scroll-top-anchors-list{overflow-y:auto;padding:4px}.scroll-top-anchor-item{width:100%;padding:10px 12px;text-align:left;background:transparent;border:none;border-radius:6px;font-size:13px;color:var(--text-secondary, #374151);cursor:pointer;transition:all 0.2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scroll-top-anchor-item:hover{background:rgba(0, 0, 0, 0.05);color:var(--text-primary, #111827)}.progress-value{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);font-size:10px;font-weight:700;z-index:3;opacity:0.8}.scroll-top-content{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 12px}.scroll-top-with-label{width:auto !important;min-width:50px;border-radius:30px !important}.scroll-top-label{font-size:0.85em;white-space:nowrap}.scroll-top-icon{display:flex;align-items:center;justify-content:center}:host([target]) .scroll-top{position:absolute}";export{r as ui_scroll_top}
|
|
1
|
+
import{r as t,a as o,h as s,H as i}from"./p-Dqu2zaH1.js";const r=class{constructor(o){t(this,o)}get el(){return o(this)}mode="top";threshold=300;behavior="smooth";position="bottom-right";quickJump=!1;strategy="fixed";icon="arrow-up";label;size="md";color="primary";variant="solid";target;showProgress=!1;progressColor;showProgressValue=!1;glassy=!1;magnetic=!1;magneticStrength=.3;magneticRadius=150;autoHide=!1;persistenceId;onPersistenceIdChange(){this.loadPersistedPosition()}isDraggable=!1;autoHideHoldTime=3e3;shape="rounded";iconLibrary="default";animation="scale";tooltip;zIndex=1e3;portal=!1;haptic=!1;skeleton=!1;loading=!1;textDirection="auto";isVisible=!1;isUserScrolling=!1;scrollProgress=0;dir="ltr";pulse=!1;anchors=[];isMenuOpen=!1;magneticTransform={x:0,y:0};dragOffset={x:0,y:0};isDragging=!1;targetElement;autoHideTimer;pulseTimer;dragStartPos={x:0,y:0};initialOffset={x:0,y:0};handleModeChange(){this.triggerPulse()}onTextDirectionChange(){this.updateDir()}componentWillLoad(){this.updateDir(),this.loadPersistedPosition(),this.computeScrollState(document.documentElement,window.pageYOffset??document.documentElement?.scrollTop??0)}componentDidLoad(){this.portal&&document.body&&this.el.parentNode!==document.body&&document.body.appendChild(this.el),this.initTarget()}componentDidUpdate(){this.targetElement||this.initTarget()}scanAnchors(){if(!this.quickJump)return;const t=Array.from(document.querySelectorAll("h1[id], h2[id], h3[id], h4[id], h5[id], h6[id], [data-ui-anchor]"));this.anchors=t.map((t=>({title:t.getAttribute("data-ui-anchor-title")||t.textContent.trim(),id:t.id||(t.hasAttribute("data-ui-anchor")?t.getAttribute("data-ui-anchor")??"":"")}))).filter((t=>!!t.id&&!!t.title))}loadPersistedPosition(){if(this.persistenceId&&this.isDraggable){const t=localStorage.getItem(`ui-scroll-top-pos-${this.persistenceId}`);if(t)try{this.dragOffset=JSON.parse(t)}catch(t){console.error("Failed to load ScrollTop position",t)}}}savePersistedPosition(){this.persistenceId&&this.isDraggable&&localStorage.setItem(`ui-scroll-top-pos-${this.persistenceId}`,JSON.stringify(this.dragOffset))}triggerPulse(){this.pulse=!0,this.pulseTimer&&clearTimeout(this.pulseTimer),this.pulseTimer=setTimeout((()=>this.pulse=!1),600)}updateDir(){if("rtl"===this.textDirection)this.dir="rtl";else if("ltr"===this.textDirection)this.dir="ltr";else{const t=getComputedStyle(this.el).direction;this.dir="rtl"===t?"rtl":"ltr"}}initTarget(){if(this.targetElement=this.target?document.querySelector(this.target):window,this.targetElement){this.targetElement.addEventListener("scroll",this.handleScroll);const t=this.targetElement instanceof Window?document.documentElement:this.targetElement,o=this.targetElement instanceof Window?window.pageYOffset||document.documentElement.scrollTop:this.targetElement.scrollTop;this.computeScrollState(t,o)}}computeScrollState(t,o){if(this.isVisible="top"===this.mode?o>this.threshold:"bottom"===this.mode?o<t.scrollHeight-t.clientHeight-this.threshold:!(o<this.threshold&&o>t.scrollHeight-t.clientHeight-this.threshold),this.showProgress){const s=t.scrollHeight-t.clientHeight;s>0&&(this.scrollProgress=Math.min(100,Math.max(0,o/s*100)))}}disconnectedCallback(){this.targetElement&&this.targetElement.removeEventListener("scroll",this.handleScroll),this.clearAutoHideTimer(),this.clearPulseTimer()}clearPulseTimer(){this.pulseTimer&&(clearTimeout(this.pulseTimer),this.pulseTimer=null)}clearAutoHideTimer(){this.autoHideTimer&&(clearTimeout(this.autoHideTimer),this.autoHideTimer=null)}handleScroll=()=>{const t=this.targetElement instanceof Window?document.documentElement:this.targetElement,o=this.targetElement instanceof Window?window.pageYOffset||document.documentElement.scrollTop:this.targetElement.scrollTop,s=this.isVisible;this.computeScrollState(t,o),this.autoHide&&this.isVisible?(this.isUserScrolling=!0,this.clearAutoHideTimer(),this.autoHideTimer=setTimeout((()=>{this.isUserScrolling=!1}),this.autoHideHoldTime)):this.autoHide||(this.isUserScrolling=!0),!s&&this.isVisible&&this.haptic&&"vibrate"in navigator&&navigator.vibrate(30)};handleAction=()=>{if(this.haptic&&"vibrate"in navigator&&navigator.vibrate(50),this.targetElement instanceof Window){let t=0;"bottom"===this.mode?t=document.documentElement.scrollHeight:"both"===this.mode&&(t=(window.pageYOffset||document.documentElement.scrollTop)>(document.documentElement.scrollHeight-document.documentElement.clientHeight)/2?0:document.documentElement.scrollHeight),window.scrollTo({top:t,behavior:this.behavior})}else{const t=this.targetElement;let o=0;"bottom"===this.mode?o=t.scrollHeight:"both"===this.mode&&(o=t.scrollTop>(t.scrollHeight-t.clientHeight)/2?0:t.scrollHeight),t.scrollTo({top:o,behavior:this.behavior})}};handleMouseMove(t){if(!this.magnetic||!this.isVisible)return;const o=this.el.getBoundingClientRect(),s=t.clientX-(o.left+o.width/2),i=t.clientY-(o.top+o.height/2),r=Math.sqrt(s*s+i*i);if(r<this.magneticRadius){const t=1-r/this.magneticRadius;this.magneticTransform={x:s*this.magneticStrength*t,y:i*this.magneticStrength*t}}else 0===this.magneticTransform.x&&0===this.magneticTransform.y||(this.magneticTransform={x:0,y:0})}handleContextMenu=t=>{this.quickJump&&(t.preventDefault(),this.scanAnchors(),this.isMenuOpen=!this.isMenuOpen)};jumpTo=t=>{const o=document.getElementById(t);o&&o.scrollIntoView({behavior:"smooth"}),this.isMenuOpen=!1};onMouseDown(t){this.isDraggable&&(this.isDragging=!0,this.dragStartPos={x:t.clientX,y:t.clientY},this.initialOffset={...this.dragOffset},this.isMenuOpen=!1,document.addEventListener("mousemove",this.onMouseMove),document.addEventListener("mouseup",this.onMouseUp))}onMouseMove=t=>{this.isDragging&&(this.dragOffset={x:this.initialOffset.x+(t.clientX-this.dragStartPos.x),y:this.initialOffset.y+(t.clientY-this.dragStartPos.y)})};onMouseUp=()=>{this.isDragging=!1,document.removeEventListener("mousemove",this.onMouseMove),document.removeEventListener("mouseup",this.onMouseUp),this.savePersistedPosition()};render(){if(this.skeleton)return s(i,{class:`scroll-top-skeleton scroll-top-${this.position} scroll-top-${this.size}`},s("div",{class:"skeleton-btn"}));const t=this.isVisible&&(!this.autoHide||this.isUserScrolling),o=2*Math.PI*22,r=o-this.scrollProgress/100*o;return s(i,{style:this.portal?{display:"contents"}:{}},s("ui-button",{variant:"solid"===this.variant?"primary":this.variant,class:{"scroll-top":!0,[`scroll-top-${this.position}`]:!0,[`scroll-top-${this.size}`]:!0,[`scroll-top-${this.color}`]:!0,[`scroll-top-variant-${this.variant}`]:!0,[`scroll-top-shape-${this.shape}`]:!0,[`scroll-top-anim-${this.animation}`]:!0,"scroll-top-visible":t,"scroll-top-active":this.isUserScrolling,"scroll-top-with-label":!!this.label,"scroll-top-loading":this.loading,"scroll-top-pulse":this.pulse,"scroll-top-glassy":this.glassy,"scroll-top-rtl":"rtl"===this.dir,"scroll-top-strategy-absolute":"absolute"===this.strategy},style:{"--z-index":`${this.zIndex}`,"--magnetic-x":`${this.magneticTransform.x}px`,"--magnetic-y":`${this.magneticTransform.y}px`,"--drag-x":`${this.dragOffset.x}px`,"--drag-y":`${this.dragOffset.y}px`,transform:"translate(calc(var(--magnetic-x, 0px) + var(--drag-x, 0px)), calc(var(--magnetic-y, 0px) + var(--drag-y, 0px)))",transition:0!==this.magneticTransform.x||this.isDragging?"none":"transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1)","pointer-events":t?"auto":"none",cursor:this.isDraggable?this.isDragging?"grabbing":"grab":"pointer"},onClick:()=>this.handleAction(),onKeyDown:t=>"Enter"===t.key&&this.handleAction(),onContextMenu:this.handleContextMenu,disabled:!t,ariaLabel:"top"===this.mode?"Scroll to top":"Scroll to bottom","aria-haspopup":this.quickJump?"true":"false","aria-expanded":this.isMenuOpen?"true":"false",title:this.quickJump?"Right-click for sections":this.tooltip||("top"===this.mode?"Top":"Bottom"),icon:this.loading?"loading":"top"===this.mode?this.icon:"bottom"===this.mode?"arrow-up"===this.icon?"arrow-down":this.icon:this.scrollProgress>50?"arrow-up"===this.icon?"arrow-up":this.icon:"arrow-up"===this.icon?"arrow-down":this.icon,iconLibrary:this.iconLibrary,loading:this.loading,label:this.label},this.showProgress&&s("svg",{class:"progress-ring",width:"100%",height:"100%",viewBox:"0 0 60 60",slot:"start"},s("circle",{class:"progress-ring__background",stroke:"rgba(255,255,255,0.1)","stroke-width":"3",fill:"transparent",r:22,cx:"30",cy:"30"}),s("circle",{class:"progress-ring__circle",stroke:this.progressColor||"currentColor","stroke-width":"3","stroke-dasharray":`${o} ${o}`,style:{strokeDashoffset:`${r}`},"stroke-linecap":"round",fill:"transparent",r:22,cx:"30",cy:"30"})),this.showProgress&&this.showProgressValue&&s("span",{class:"progress-value",slot:"start"},Math.round(this.scrollProgress),"%"),this.isMenuOpen&&s("div",{class:`scroll-top-anchors scroll-top-anchors-${this.position}`,slot:"end"},s("div",{class:"scroll-top-anchors-header"},"Quick Jump"),s("div",{class:"scroll-top-anchors-list"},this.anchors.map((t=>s("ui-button",{key:t.id,variant:"ghost",class:"scroll-top-anchor-item",onClick:o=>{o.stopPropagation(),this.jumpTo(t.id)},label:t.title,block:!0})))))))}static get watchers(){return{persistenceId:[{onPersistenceIdChange:0}],mode:[{handleModeChange:0}],textDirection:[{onTextDirectionChange:0}]}}};r.style=".sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:contents;--z-index:1000}.scroll-top{position:fixed;z-index:var(--z-index, 1000);display:flex;align-items:center;justify-content:center;padding:0;border:none;cursor:pointer;background:transparent !important;transition:all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);opacity:0;transform:scale(0);pointer-events:none}.scroll-top.scroll-top-strategy-absolute{position:absolute}.scroll-top.scroll-top-visible{opacity:1 !important;pointer-events:auto !important;transform:scale(1)}.scroll-top.scroll-top-visible.scroll-top-bottom-center,.scroll-top.scroll-top-visible.scroll-top-top-center{transform:translateX(-50%) scale(1) !important}.scroll-top.scroll-top-visible.scroll-top-center{transform:translate(-50%, -50%) scale(1) !important}.scroll-top.scroll-top-visible.scroll-top-center-left,.scroll-top.scroll-top-visible.scroll-top-center-right{transform:translateY(-50%) scale(1) !important}.scroll-top{font-family:inherit;font-weight:600;user-select:none;overflow:visible}.scroll-top.scroll-top-glassy{backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%)}.scroll-top-visible{opacity:1 !important;visibility:visible !important}.scroll-top:hover{box-shadow:0 6px 20px rgba(0, 0, 0, 0.2);filter:brightness(1.1)}.scroll-top:active{transform:scale(0.92) !important}.scroll-top-shape-circle{border-radius:50%}.scroll-top-shape-square,.scroll-top-shape-sharp{border-radius:0}.scroll-top-shape-rounded{border-radius:12px}.scroll-top-shape-pill,.scroll-top-shape-oval{border-radius:999px}.scroll-top-shape-chip{border-radius:100px}.scroll-top-sm{width:40px;height:40px;font-size:14px}.scroll-top-md{width:50px;height:50px;font-size:16px}.scroll-top-lg{width:64px;height:64px;font-size:18px}.scroll-top-bottom-right{right:24px;bottom:24px}.scroll-top-bottom-left{left:24px;bottom:24px}.scroll-top-bottom-center{left:50%;bottom:24px;transform:translateX(-50%)}.scroll-top-top-center{top:24px;left:50%;transform:translateX(-50%)}.scroll-top-center-left{top:50%;left:24px;transform:translateY(-50%)}.scroll-top-center-right{top:50%;right:24px;transform:translateY(-50%)}.scroll-top-center{top:50%;left:50%;transform:translate(-50%, -50%)}.scroll-top-top-right{right:24px;top:24px}.scroll-top-top-left{left:24px;top:24px}.scroll-top-anim-scale{transform:scale(0.5)}.scroll-top-anim-scale.scroll-top-visible{transform:scale(1)}.scroll-top-bottom-center.scroll-top-anim-scale{transform:translateX(-50%) scale(0.5)}.scroll-top-bottom-center.scroll-top-anim-scale.scroll-top-visible{transform:translateX(-50%) scale(1)}.scroll-top-anim-fade{transform:none}.scroll-top-anim-slide.scroll-top-bottom-right{transform:translateY(40px)}.scroll-top-anim-slide.scroll-top-bottom-left{transform:translateY(40px)}.scroll-top-anim-slide.scroll-top-bottom-center{transform:translate(-50%, 40px)}.scroll-top-anim-slide.scroll-top-top-right{transform:translateY(-40px)}.scroll-top-anim-slide.scroll-top-top-left{transform:translateY(-40px)}.scroll-top-anim-slide.scroll-top-visible{transform:translate(0, 0) !important}.scroll-top-bottom-center.scroll-top-anim-slide.scroll-top-visible{transform:translate(-50%, 0) !important}.scroll-top-sm{width:40px;height:40px;min-width:40px}.scroll-top-md{width:56px;height:56px;min-width:56px}.scroll-top-lg{width:72px;height:72px;min-width:72px}.progress-ring{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;transform:rotate(-90deg)}.progress-ring__circle{transition:stroke-dashoffset 0.1s}.scroll-top-anchors{position:absolute;background:var(--bg-primary, #ffffff);border-radius:12px;box-shadow:0 10px 25px rgba(0, 0, 0, 0.2);width:200px;max-height:300px;overflow:hidden;display:flex;flex-direction:column;z-index:1000;border:1px solid rgba(0, 0, 0, 0.05);animation:scroll-top-menu-fade 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.scroll-top-glassy .scroll-top-anchors{background:rgba(255, 255, 255, 0.8);backdrop-filter:blur(16px)}.scroll-top-anchors-bottom-right{bottom:120%;right:0;transform-origin:bottom right}.scroll-top-anchors-bottom-left{bottom:120%;left:0;transform-origin:bottom left}.scroll-top-anchors-bottom-center{bottom:120%;left:50%;transform:translateX(-50%);transform-origin:bottom center}.scroll-top-anchors-top-right{top:120%;right:0;transform-origin:top right}.scroll-top-anchors-top-left{top:120%;left:0;transform-origin:top left}@keyframes scroll-top-menu-fade{from{opacity:0;transform:scale(0.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.scroll-top-anchors-header{padding:12px 16px;font-size:11px;font-weight:800;text-transform:uppercase;color:var(--text-muted, #6b7280);background:rgba(0, 0, 0, 0.02);border-bottom:1px solid rgba(0, 0, 0, 0.05);letter-spacing:0.1em}.scroll-top-anchors-list{overflow-y:auto;padding:4px}.scroll-top-anchor-item{width:100%;padding:10px 12px;text-align:left;background:transparent;border:none;border-radius:6px;font-size:13px;color:var(--text-secondary, #374151);cursor:pointer;transition:all 0.2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scroll-top-anchor-item:hover{background:rgba(0, 0, 0, 0.05);color:var(--text-primary, #111827)}.progress-value{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);font-size:10px;font-weight:700;z-index:3;opacity:0.8}.scroll-top-content{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 12px}.scroll-top-with-label{width:auto !important;min-width:50px;border-radius:30px !important}.scroll-top-label{font-size:0.85em;white-space:nowrap}.scroll-top-icon{display:flex;align-items:center;justify-content:center}:host([target]) .scroll-top{position:absolute}";export{r as ui_scroll_top}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,c as i,h as a}from"./p-
|
|
1
|
+
import{r as t,c as i,h as a}from"./p-Dqu2zaH1.js";const n=class{constructor(a){t(this,a),this.navItemClick=i(this,"navItemClick")}items=[];activeId;variant="default";size="md";align="start";scrollable=!1;showDivider=!1;fullWidth=!1;displayAs="buttons";iconLibrary="default";navItemClick;scrollLeft=0;canScrollLeft=!1;canScrollRight=!1;navRef;parseItems(){if("string"==typeof this.items)try{return JSON.parse(this.items)}catch(t){return console.error("Failed to parse items JSON:",t),[]}return this.items}handleItemClick=(t,i)=>{t.disabled?i.preventDefault():(t.href||i.preventDefault(),this.activeId=t.id,this.navItemClick.emit(t))};handleScroll=()=>{if(!this.navRef)return;const{scrollLeft:t,scrollWidth:i,clientWidth:a}=this.navRef;this.scrollLeft=t,this.canScrollLeft=t>0,this.canScrollRight=t<i-a-1};scrollToDirection=t=>{this.navRef&&this.navRef.scrollTo({left:"left"===t?this.navRef.scrollLeft-200:this.navRef.scrollLeft+200,behavior:"smooth"})};componentDidLoad(){this.scrollable&&this.navRef&&this.handleScroll()}render(){const t=this.parseItems(),i={"horizontal-nav-container":!0,scrollable:this.scrollable},n={"horizontal-nav":!0,[`variant-${this.variant}`]:!0,[`size-${this.size}`]:!0,[`align-${this.align}`]:!0,"full-width":this.fullWidth,"with-divider":this.showDivider,[`display-${this.displayAs}`]:!0};return a("div",{key:"fbcf314495c91cb99bc90db33029196edfdb63a2",class:i},this.scrollable&&this.canScrollLeft&&a("button",{key:"f8de2c214e9d6f5b2a98c8f15dd11d21590e21bc",class:"scroll-button left",onClick:()=>this.scrollToDirection("left"),"aria-label":"Scroll left"},a("svg",{key:"f578cf8f8051944b9d172fb4d6b97e23e0534e1a",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},a("polyline",{key:"dc8225738c6d416bff540136ce13421bf92ab06d",points:"15 18 9 12 15 6"}))),a("nav",{key:"3296d5d35db2f5447bbf0081e4a2670e65b25046",class:n,ref:t=>this.navRef=t,onScroll:this.handleScroll},a("ul",{key:"66db7520e79ced35998900fb72abe09ac99b15c1",class:"nav-list"},t.map((t=>this.renderItem(t))))),this.scrollable&&this.canScrollRight&&a("button",{key:"bdf0b40342ff2c07a541258a4cda3310dfa07c5e",class:"scroll-button right",onClick:()=>this.scrollToDirection("right"),"aria-label":"Scroll right"},a("svg",{key:"6cd30d589d60113d2e3cccda8d6c3f7914d23750",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},a("polyline",{key:"02dcff53f897c9dff39369fc1b9c48cd06cb5365",points:"9 18 15 12 9 6"}))))}renderItem(t){const i={"nav-item":!0,active:t.active||t.id===this.activeId,disabled:t.disabled},n=a("span",{class:"nav-item-content"},t.icon&&a("span",{class:"nav-icon"},a("ui-icon",{name:t.icon,library:t.iconLibrary||this.iconLibrary,size:"1.2em"})),a("span",{class:"nav-label"},t.label),t.badge&&a("span",{class:"nav-badge"},t.badge));return a("li",{key:t.id,class:"nav-list-item"},t.href&&!t.disabled?a("a",{href:t.href,class:i,onClick:i=>this.handleItemClick(t,i)},n):a("button",{class:i,disabled:t.disabled,onClick:i=>this.handleItemClick(t,i)},n))}};n.style='.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;width:100%}.horizontal-nav-container{position:relative;display:flex;align-items:center;width:100%}.horizontal-nav-container.scrollable .horizontal-nav{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.horizontal-nav-container.scrollable .horizontal-nav::-webkit-scrollbar{display:none}.horizontal-nav{display:flex;width:100%;background-color:#ffffff;border-radius:8px;padding:4px}.nav-list{display:flex;list-style:none;margin:0;padding:0;gap:4px;width:100%}.horizontal-nav.full-width .nav-list{flex:1}.horizontal-nav.full-width .nav-list-item{flex:1}.horizontal-nav.full-width .nav-item{width:100%;justify-content:center}.horizontal-nav.align-start .nav-list{justify-content:flex-start}.horizontal-nav.align-center .nav-list{justify-content:center}.horizontal-nav.align-end .nav-list{justify-content:flex-end}.horizontal-nav.align-space-between .nav-list{justify-content:space-between}.nav-list-item{display:flex}.nav-item{display:flex;align-items:center;gap:8px;padding:8px 16px;background:none;border:none;border-radius:6px;color:#64748b;text-decoration:none;font-weight:500;cursor:pointer;transition:all 0.2s ease;white-space:nowrap;font-size:14px;position:relative}.horizontal-nav.size-sm .nav-item{padding:6px 12px;font-size:12px;gap:6px}.horizontal-nav.size-md .nav-item{padding:8px 16px;font-size:14px;gap:8px}.horizontal-nav.size-lg .nav-item{padding:10px 20px;font-size:16px;gap:10px}.horizontal-nav.variant-default .nav-item:hover:not(.disabled):not(.active){background-color:#f1f5f9;color:#475569}.horizontal-nav.variant-default .nav-item.active{background-color:var(--color-primary-subtle, rgba(59, 130, 246, 0.1));color:var(--color-primary, #3b82f6)}.horizontal-nav.variant-pills .nav-item{border-radius:20px}.horizontal-nav.variant-pills .nav-item:hover:not(.disabled):not(.active){background-color:#f1f5f9;color:#475569}.horizontal-nav.variant-pills .nav-item.active{background-color:var(--color-primary, #3b82f6);color:var(--text-inverse, white)}.horizontal-nav.variant-underline{background-color:transparent;border-bottom:1px solid #e2e8f0;border-radius:0;padding:0}.horizontal-nav.variant-underline .nav-item{border-radius:0;padding-bottom:12px;margin-bottom:-1px}.horizontal-nav.variant-underline .nav-item::after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background-color:transparent;transition:background-color 0.2s ease}.horizontal-nav.variant-underline .nav-item:hover:not(.disabled):not(.active){color:#475569}.horizontal-nav.variant-underline .nav-item:hover:not(.disabled):not(.active)::after{background-color:#cbd5e1}.horizontal-nav.variant-underline .nav-item.active{color:var(--color-primary, #3b82f6)}.horizontal-nav.variant-underline .nav-item.active::after{background-color:var(--color-primary, #3b82f6)}.horizontal-nav.variant-segmented{background-color:#f1f5f9;border-radius:8px;padding:4px}.horizontal-nav.variant-segmented .nav-item{background-color:transparent}.horizontal-nav.variant-segmented .nav-item:hover:not(.disabled):not(.active){background-color:rgba(255, 255, 255, 0.5)}.horizontal-nav.variant-segmented .nav-item.active{background-color:white;color:#1e293b;box-shadow:0 1px 3px rgba(0, 0, 0, 0.1)}.nav-item.disabled{opacity:0.4;cursor:not-allowed}.nav-item-content{display:flex;align-items:center;gap:inherit}.nav-icon{display:inline-flex;align-items:center;font-size:1.1em;line-height:1}.nav-icon svg{width:1em;height:1em;fill:currentColor}.nav-label{line-height:1}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;background-color:#ef4444;color:white;font-size:11px;font-weight:600;border-radius:10px;line-height:1}.nav-item.active .nav-badge{background-color:#dc2626}.horizontal-nav.with-divider .nav-list-item:not(:last-child)::after{content:"";width:1px;height:20px;background-color:#e2e8f0;margin:auto 4px}.scroll-button{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:white;border:1px solid #e2e8f0;border-radius:50%;cursor:pointer;z-index:10;box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);transition:all 0.2s ease}.scroll-button:hover{background-color:#f8fafc;border-color:#cbd5e1}.scroll-button.left{left:4px}.scroll-button.right{right:4px}.scroll-button svg{width:16px;height:16px;color:#64748b}.horizontal-nav.display-list{padding:0;background:transparent}.horizontal-nav.display-list .nav-list{flex-direction:column;gap:0}.horizontal-nav.display-list .nav-list-item{width:100%;border-bottom:1px solid #e5e7eb}.horizontal-nav.display-list .nav-list-item:last-child{border-bottom:none}.horizontal-nav.display-list .nav-item{width:100%;padding:12px 16px;border-radius:0;justify-content:flex-start;background-color:#ffffff}.horizontal-nav.display-list .nav-item:hover{background-color:#f9fafb}.horizontal-nav.display-list .nav-item.active{background-color:var(--color-primary-subtle, rgba(59, 130, 246, 0.1));border-left:3px solid var(--color-primary, #3b82f6);padding-left:13px}.horizontal-nav.display-list.variant-pills .nav-item,.horizontal-nav.display-list.variant-underline .nav-item,.horizontal-nav.display-list.variant-segmented .nav-item{border-radius:0}.horizontal-nav.display-list.variant-pills .nav-item.active{background-color:var(--color-primary-subtle, rgba(59, 130, 246, 0.1))}.horizontal-nav.display-list.size-sm .nav-item{padding:8px 12px}.horizontal-nav.display-list.size-sm .nav-item.active{padding-left:9px}.horizontal-nav.display-list.size-lg .nav-item{padding:16px 20px}.horizontal-nav.display-list.size-lg .nav-item.active{padding-left:17px}@media (max-width: 640px){.horizontal-nav.size-md .nav-item{padding:6px 12px;font-size:13px}.horizontal-nav.size-lg .nav-item{padding:8px 16px;font-size:14px}}';export{n as ui_horizontal_nav}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r,c as t,a as i,h as a}from"./p-
|
|
1
|
+
import{r,c as t,a as i,h as a}from"./p-Dqu2zaH1.js";const o=class{constructor(i){r(this,i),this.uiDragDropChange=t(this,"uiDragDropChange"),this.uiDragStart=t(this,"uiDragStart"),this.uiDragEnd=t(this,"uiDragEnd"),this.uiDrop=t(this,"uiDrop")}get el(){return i(this)}items=[];orientation="vertical";gap="0.5rem";draggableEnabled=!0;group="";internalItems=[];draggingIndex=null;dragOverIndex=null;uiDragDropChange;uiDragStart;uiDragEnd;uiDrop;componentWillLoad(){this.syncItems()}watchItems(){this.syncItems()}syncItems(){this.internalItems=(this.items??[]).map((r=>({...r})))}onDragStart(r,t){if(!this.draggableEnabled)return void r.preventDefault();this.draggingIndex=t;const i=this.internalItems[t];if(r.dataTransfer){const a=JSON.stringify({item:i,index:t,group:this.group});r.dataTransfer.setData("application/x-ui-drag-drop",a),r.dataTransfer.effectAllowed="move",r.dataTransfer.setDragImage(r.currentTarget,20,20)}this.uiDragStart.emit({item:i,index:t})}onDragOver(r,t){r.preventDefault(),r.dataTransfer&&(r.dataTransfer.dropEffect="move"),t!==this.draggingIndex&&(this.dragOverIndex="horizontal"===this.orientation&&"rtl"===getComputedStyle(this.el).direction&&null!==this.draggingIndex?this.internalItems.length-1-this.draggingIndex!=this.internalItems.length-1-t?t:this.dragOverIndex:t)}onDrop(r,t){r.preventDefault();const i=r.dataTransfer?.getData("application/x-ui-drag-drop");if(i){try{const{item:r,index:a,group:o}=JSON.parse(i);if(this.group&&o!==this.group)return;const d=null!==this.draggingIndex,e="horizontal"===this.orientation&&"rtl"===getComputedStyle(this.el).direction,s=e?this.internalItems.length-1-t:t;if(d)this.reorder(e&&e?this.internalItems.length-1-a:a,s);else{const t=[...this.internalItems];t.splice(s,0,r),this.internalItems=t}this.uiDrop.emit({item:r,sourceIndex:a,targetIndex:t,sourceGroup:o}),this.emitOrder()}catch(r){console.error("Failed to parse drag-drop data",r)}this.draggingIndex=null,this.dragOverIndex=null}}onDragEnd(){null!==this.draggingIndex&&this.uiDragEnd.emit({item:this.internalItems[this.draggingIndex],index:this.draggingIndex}),this.draggingIndex=null,this.dragOverIndex=null}reorder(r,t){const i=[...this.internalItems],[a]=i.splice(r,1);i.splice(t,0,a),this.internalItems=i}emitOrder(){this.uiDragDropChange.emit({items:this.internalItems,order:this.internalItems.map((r=>String(r.id))).filter((r=>"undefined"!==r))})}renderItem(r,t){return a("div",{class:{"drag-drop__item":!0,"drag-drop__item--dragging":t===this.draggingIndex,"drag-drop__item--over":t===this.dragOverIndex},role:"listitem",draggable:this.draggableEnabled,onDragStart:r=>this.onDragStart(r,t),onDragOver:r=>this.onDragOver(r,t),onDrop:r=>this.onDrop(r,t),onDragEnd:()=>this.onDragEnd()},a("span",{class:"drag-drop__handle","aria-hidden":"true"},"::"),a("div",{class:"drag-drop__content"},a("span",{class:"drag-drop__label"},r.label),r.description&&a("span",{class:"drag-drop__description"},r.description),r.detail&&a("sm",{class:"drag-drop__detail"},r.detail)))}render(){return a("div",{key:"6b0c0623c0698599b4552cf193275fdd36532f14",class:{"drag-drop":!0,[`drag-drop--${this.orientation}`]:!0},style:{gap:this.gap},role:"list"},this.internalItems.map(((r,t)=>this.renderItem(r,t))))}static get watchers(){return{items:[{watchItems:0}]}}};o.style=".sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block}.drag-drop{display:flex;flex-direction:column;align-items:stretch;gap:var(--drag-drop-gap, 0.5rem);background:var(--drag-drop-background, transparent);padding:var(--drag-drop-padding, 0)}.drag-drop--horizontal{flex-direction:row;flex-wrap:wrap}.drag-drop__item{display:flex;align-items:center;padding:0.75rem 1rem;background:var(--drag-drop-item-background, var(--ui-color-surface, var(--bg-primary, #ffffff)));border:1px solid var(--drag-drop-border-color, var(--ui-color-border, #d9d9d9));border-radius:var(--drag-drop-border-radius, 0.5rem);box-shadow:var(--drag-drop-item-shadow, 0 1px 2px rgba(15, 23, 42, 0.05));transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;cursor:grab}.drag-drop__item--dragging{opacity:0.5;box-shadow:var(--drag-drop-dragging-shadow, 0 15px 25px rgba(15, 23, 42, 0.15))}.drag-drop__item--over{border-color:var(--drag-drop-highlight-color, var(--ui-color-primary, #0b5fff))}.drag-drop__handle{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;margin-inline-end:0.75rem;border-radius:50%;background:var(--drag-drop-handle-background, rgba(15, 23, 42, 0.05));color:var(--drag-drop-handle-color, var(--ui-color-base, #0b5fff));font-size:1rem;line-height:1;cursor:grab}.drag-drop__content{flex:1;display:flex;flex-direction:column;gap:0.2rem}.drag-drop__label{font-weight:600;color:var(--drag-drop-label-color, var(--ui-color-base, #0f172a))}.drag-drop__description{font-size:0.875rem;color:var(--drag-drop-description-color, var(--ui-color-muted, var(--text-muted, #6b7280)))}.drag-drop__detail{font-size:0.75rem;color:var(--drag-drop-detail-color, var(--ui-color-muted, var(--text-muted, #6b7280)))}.drag-drop__item:active{cursor:grabbing}";export{o as ui_drag_drop}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{h as e,F as a,r as t,c as i,H as n}from"./p-Dqu2zaH1.js";const o=class{topItems=[];bottomItems=[];bottomItemsSecondary=[];collapsed=!0;showHamburger=!0;logoUrl;logoAlt="Logo";appTitle;showSearch=!1;searchPlaceholder="Search...";iconLibrary="default";maxVisibleItems=0;navItemClicked;navToggled;expandedItems=new Set;searchQuery="";showOverflowMenu=!1;isHoveringMenu=!1;overflowMenuPosition={top:"0px",left:"0px"};hoveredIcon=null;tooltipPos={top:0,left:0};overflowTriggerRef;async toggle(){this.collapsed=!this.collapsed,this.navToggled.emit({collapsed:this.collapsed})}async expand(){this.collapsed=!1,this.navToggled.emit({collapsed:this.collapsed})}async collapse(){this.collapsed=!0,this.navToggled.emit({collapsed:this.collapsed})}componentWillLoad(){}handleHamburgerClick=()=>{this.toggle()};handleSearchInput=e=>{this.searchQuery=e.target.value.toLowerCase()};filterItems=e=>this.searchQuery?e.filter((e=>{const a=e.label.toLowerCase().includes(this.searchQuery),t=e.children?.some((e=>e.label.toLowerCase().includes(this.searchQuery)));return a||t})):e;splitItemsByVisibility=e=>0===this.maxVisibleItems||e.length<=this.maxVisibleItems?{visible:e,overflow:[]}:{visible:e.slice(0,this.maxVisibleItems),overflow:e.slice(this.maxVisibleItems)};calculateOverflowMenuPosition=()=>{if(!this.overflowTriggerRef)return;const e=this.overflowTriggerRef.getBoundingClientRect();let a=e.right+8,t=e.top;a+280>window.innerWidth&&(a=e.left-280-8),t+500>window.innerHeight&&(t=Math.max(8,window.innerHeight-500-8)),t=Math.max(8,t),this.overflowMenuPosition={top:`${t}px`,left:`${a}px`}};handleOverflowTriggerEnter=()=>{this.calculateOverflowMenuPosition(),this.showOverflowMenu=!0};toggleSubitems=e=>{const a=new Set(this.expandedItems);a.has(e)?a.delete(e):a.add(e),this.expandedItems=a};handleItemClick=(e,a,t=!1)=>{e.disabled?a.preventDefault():e.children&&e.children.length>0?(a.preventDefault(),this.toggleSubitems(e.id)):this.navItemClicked.emit({item:e,isChild:t})};handleIconEnter=(e,a)=>{if(this.collapsed&&(!e.children||0===e.children.length)){const t=a.currentTarget.getBoundingClientRect();this.hoveredIcon=e.id,this.tooltipPos={top:t.top+t.height/2,left:t.right+12}}};handleIconLeave=()=>{this.hoveredIcon&&(this.hoveredIcon=null)};renderNavItem=(t,i=!1)=>{const n=t.children&&t.children.length>0,o=this.expandedItems.has(t.id),r={"nav-item":!0,active:t.active,disabled:t.disabled,"has-children":n,expanded:o,"is-child":i},s={"nav-item-link":!0,"no-icon":!t.icon};return e("div",{key:t.id},t.sectionHeader&&!this.collapsed&&e("div",{class:"nav-section-header"},t.sectionHeader),e("div",{class:r},e("a",{href:t.href||"#",class:s,onClick:e=>this.handleItemClick(t,e,i)},t.icon&&e("span",{class:"nav-item-icon",onMouseEnter:e=>this.handleIconEnter(t,e),onMouseLeave:this.handleIconLeave},e("ui-icon",{name:t.icon,library:t.iconLibrary||this.iconLibrary,size:"1.25rem"})),!this.collapsed&&e(a,null,e("span",{class:"nav-item-label"},t.label),t.badge&&e("span",{class:"nav-item-badge"},t.badge),n&&e("span",{class:"nav-item-arrow"},e("ui-icon",{name:"chevron-down",library:this.iconLibrary,size:"1rem"})))),n&&o&&e("div",{class:"nav-children"},t.children.map((e=>this.renderNavItem(e,!0))))))};constructor(e){t(this,e),this.navItemClicked=i(this,"navItemClicked"),this.navToggled=i(this,"navToggled")}connectedCallback(){}render(){return e(n,{key:"1ca084a87b49b22d83f87e90cd0cadffbc311eae",collapsed:this.collapsed},e("nav",{key:"bcc0a9d86c7191111ed9997c40eef0a0b5c236e4",class:"nav-bar "+(this.collapsed?"collapsed":"expanded")},e("div",{key:"c18e36e8919eb471554111e7d5ee690f044519d3",class:"nav-header"},this.logoUrl&&e("img",{key:"3ef3c38c0a156bbda0890bba01df49a06afdb0b9",src:this.logoUrl,alt:this.logoAlt,class:"nav-logo"}),this.appTitle&&e("span",{key:"4140fce5cca693439044369924ba42f80bfd3148",class:"nav-title"},this.appTitle),this.showHamburger&&e("button",{key:"58f7a102b5185528ac328c47318fa4caf83ae154",class:"nav-hamburger",onClick:this.handleHamburgerClick,"aria-label":this.collapsed?"Expand navigation":"Collapse navigation"},e("ui-icon",this.collapsed?{name:"menu",library:this.iconLibrary,size:"1.5rem"}:{name:"x",library:this.iconLibrary,size:"1.5rem"}))),this.showSearch&&!this.collapsed&&e("div",{key:"8145564546ad325086238964931b4a48e81ee805",class:"nav-search"},e("input",{key:"61a66f0f1ef1e759205994c1dc0139b4c89f8dac",type:"text",class:"nav-search-input",placeholder:this.searchPlaceholder,onInput:this.handleSearchInput})),e("div",{key:"aab420232ec9816e08926d1ca7b057741e5dc2f6",class:"nav-content"},this.renderSection(this.topItems,"nav-section-top")),this.hoveredIcon&&e("div",{key:"f1cd79267d143e1b4f2ade642da7199b380741d8",class:"nav-tooltip visible",style:{top:`${this.tooltipPos.top}px`,left:`${this.tooltipPos.left}px`}},[...this.topItems,...this.bottomItems,...this.bottomItemsSecondary].flatMap((e=>[e,...e.children||[]])).find((e=>e.id===this.hoveredIcon))?.label),e("div",{key:"993ce0f63b1ad5acf1226741f65437208d6bd3b9",class:"nav-footer"},this.renderSection(this.bottomItems,"nav-section-bottom"),this.renderSection(this.bottomItemsSecondary,"nav-section-bottom-secondary"))))}renderSection(a,t){if(!a||0===a.length)return null;const i=this.filterItems(a),{visible:n,overflow:o}=this.splitItemsByVisibility(i);return e("div",{class:`nav-section ${t}`},n.map((e=>this.renderNavItem(e))),o.length>0&&e("div",{class:"nav-overflow"},e("div",{class:"nav-overflow-trigger",ref:e=>this.overflowTriggerRef=e,onMouseEnter:this.handleOverflowTriggerEnter,onMouseLeave:()=>{setTimeout((()=>{this.isHoveringMenu||(this.showOverflowMenu=!1)}),100)}},e("span",{class:"nav-item-icon"},e("ui-icon",{name:"more-horizontal",library:this.iconLibrary,size:"1.25rem"})),e("span",{class:"nav-item-label"},"More (",o.length,")")),this.showOverflowMenu&&e("div",{class:"nav-overflow-menu",onMouseEnter:()=>{this.isHoveringMenu=!0,this.showOverflowMenu=!0},onMouseLeave:()=>{this.isHoveringMenu=!1,setTimeout((()=>{this.showOverflowMenu=!1}),100)},style:{left:this.overflowMenuPosition.left,top:this.overflowMenuPosition.top}},o.map((e=>this.renderNavItem(e))))))}};o.style=".sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;height:100%;width:var(--nav-width-expanded, 280px);transition:width var(--nav-transition, 0.4s cubic-bezier(0.4, 0, 0.2, 1));flex-shrink:0;overflow:hidden;--nav-bg:#0f172a;--nav-text:#f8fafc;--nav-text-muted:#94a3b8;--nav-accent:var(--color-primary, #3b82f6);--nav-accent-glow:var(--color-primary-subtle, rgba(59, 130, 246, 0.4));--nav-hover-bg:rgba(255, 255, 255, 0.05);--nav-active-bg:linear-gradient(135deg, var(--color-primary-subtle, rgba(59, 130, 246, 0.2)) 0%, rgba(var(--color-primary-rgb, 59, 130, 246), 0.1) 100%);--nav-border:rgba(255, 255, 255, 0.08);--nav-width-expanded:280px;--nav-width-collapsed:80px;--nav-transition:0.4s cubic-bezier(0.4, 0, 0.2, 1)}:host([collapsed]){width:var(--nav-width-collapsed, 80px)}.nav-bar{display:flex;flex-direction:column;height:100%;background:var(--nav-bg);color:var(--nav-text);width:100%;border-right:1px solid var(--nav-border);position:relative;box-sizing:border-box}.nav-bar.collapsed{width:var(--nav-width-collapsed)}.nav-header{display:flex;align-items:center;justify-content:center;gap:16px;padding:24px;min-height:80px;border-bottom:1px solid var(--nav-border)}.collapsed .nav-header{padding:24px 0;justify-content:center}.nav-logo{width:32px;height:32px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255, 255, 255, 0.2))}.nav-title{font-size:18px;font-weight:700;white-space:nowrap;letter-spacing:-0.5px;background:linear-gradient(to right, #fff, #94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.collapsed .nav-title{display:none}.nav-hamburger{background:var(--nav-hover-bg);border:1px solid var(--nav-border);color:white;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all 0.2s ease;margin-left:auto}.collapsed .nav-hamburger{margin-left:0}.collapsed .nav-header{flex-direction:column;padding:16px 0;height:auto;min-height:100px;gap:12px}.nav-hamburger:hover{background:var(--nav-accent);border-color:var(--nav-accent)}.nav-search{padding:16px;position:relative}.nav-search-input{width:100%;padding:10px 12px 10px 38px;background:rgba(255, 255, 255, 0.03);border:1px solid var(--nav-border);border-radius:10px;color:white;font-size:13px;outline:none;transition:all 0.3s ease}.nav-search-input:focus{border-color:var(--nav-accent);background:rgba(255, 255, 255, 0.05);box-shadow:0 0 15px var(--nav-accent-glow)}.nav-search::before{content:\"\";position:absolute;left:28px;top:50%;transform:translateY(-50%);width:16px;height:16px;background:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='M21 21l-4.35-4.35'%3E%3C/path%3E%3C/svg%3E\") no-repeat center;pointer-events:none}.nav-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:12px;gap:8px}.collapsed .nav-content{padding:12px 0}.nav-section{display:flex;flex-direction:column;gap:4px}.nav-section-bottom{}.nav-footer{padding:12px;border-top:1px solid var(--nav-border);flex-shrink:0}.collapsed .nav-footer{padding:12px 0}.nav-section-header{padding:12px 12px 8px 12px;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--nav-text-muted);letter-spacing:1px;opacity:0.8}.nav-item .nav-section-header{padding-left:12px;margin-top:12px;border-top:1px solid rgba(255, 255, 255, 0.05)}.collapsed .nav-section-header{display:none}.nav-item{position:relative}.nav-item-link{display:flex;align-items:center;gap:12px;padding:12px;color:var(--nav-text-muted);text-decoration:none;border-radius:12px;transition:all 0.3s ease;font-size:14px;font-weight:500;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.nav-item-link.no-icon{font-size:13px;padding-left:16px}.nav-item-link.no-icon .nav-item-label{opacity:0.9;font-weight:400}.collapsed .nav-item-link{justify-content:center;padding:12px 0;gap:0}.nav-item-link:hover{background:var(--nav-hover-bg);color:white}.active>.nav-item-link{background:var(--nav-active-bg);color:var(--nav-accent);box-shadow:inset 0 0 0 1px rgba(var(--color-primary-rgb, 59, 130, 246), 0.3)}.active>.nav-item-link::after{content:\"\";position:absolute;left:0;top:15%;bottom:15%;width:4px;background:var(--nav-accent);border-radius:0 4px 4px 0;box-shadow:0 0 15px var(--nav-accent)}.nav-item-arrow{margin-left:auto;transition:transform 0.3s ease;color:var(--nav-text-muted)}.expanded>.nav-item-link .nav-item-arrow{transform:rotate(180deg)}.nav-item-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:transform 0.3s ease}.nav-item-link:hover .nav-item-icon{transform:scale(1.1)}.active .nav-item-icon{color:var(--nav-accent)}.collapsed .nav-item-label{display:none}.nav-item-badge{background:var(--nav-accent);color:white;padding:2px 6px;border-radius:6px;font-size:10px;font-weight:700;margin-left:auto}.collapsed .nav-item-badge{position:absolute;top:8px;right:8px;width:8px;height:8px;padding:0;font-size:0;box-shadow:0 0 10px var(--nav-accent)}.nav-children{padding-left:24px;margin-top:4px;display:flex;flex-direction:column;gap:2px;border-left:1px solid rgba(255, 255, 255, 0.05);margin-left:24px;padding-left:12px}.is-child .nav-item-link{padding:8px 12px;font-size:13px;border-radius:10px}.collapsed .nav-children{display:none}.nav-overflow{position:relative;margin:2px 0}.nav-overflow-trigger{display:flex;align-items:center;gap:12px;padding:12px;color:var(--nav-text-muted);cursor:pointer;border-radius:12px;transition:all 0.3s ease}.nav-overflow-trigger:hover{background:var(--nav-hover-bg);color:white}.nav-overflow-menu{position:fixed;background:var(--nav-bg);border:1px solid var(--nav-border);border-radius:16px;padding:8px;min-width:220px;box-shadow:0 20px 50px rgba(0, 0, 0, 0.5);z-index:10000;display:flex;flex-direction:column;gap:4px;animation:slideUp 0.3s cubic-bezier(0.4, 0, 0.2, 1)}@keyframes slideUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideMenu{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.expanded .nav-item{animation:slideMenu 0.4s ease forwards}.nav-content::-webkit-scrollbar{width:4px}.nav-content::-webkit-scrollbar-thumb{background:var(--nav-border);border-radius:4px}.nav-tooltip{position:fixed;background:#1e293b;color:white;padding:6px 12px;border-radius:6px;font-size:12px;pointer-events:none;z-index:10000;white-space:nowrap;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);border:1px solid rgba(255, 255, 255, 0.1);transform:translateY(-50%);opacity:0;transition:opacity 0.2s}.nav-tooltip.visible{opacity:1}";export{o as nav_bar}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,a as i,h as e}from"./p-DUsoYu9r.js";import{g as s}from"./p-BMFah5q3.js";import{G as n}from"./p-vwwmWKs9.js";const o=t=>JSON.stringify(t),r=t=>JSON.parse(t);class a{state;constructor(t){this.state=t||a.emptyLayout()}static emptyLayout(){return{version:1,root:{id:"root",type:"row",children:[]},floating:[]}}findPanel(t,i=this.state.root){for(let e=0;e<i.children.length;e++){const s=i.children[e];if("panel"===s.type&&s.id===t)return{parent:i,index:e};if(s.children){const i=this.findPanel(t,s);if(i)return i}}return null}addPanel(t,i){const e={...t,id:t.id||`p_${Date.now()}`,type:"panel"};let s=i?this.findContainer(i):null;if(!s){const t=i=>{if(["row","column","tabs"].includes(i.type))return i;for(const e of i.children)if(e.children){const i=t(e);if(i)return i}return null};s=t(this.state.root)}if(s){if("single"===s.type&&s.children.length>0)return console.warn(`Container ${s.id} is 'single' and already has a panel. Rejecting add.`),null;s.children.push(e)}else this.state.root.children.push(e);return n.emit("panel:added",e),e.id}removePanel(t){const i=this.findPanel(t);if(!i||!i.parent)return!1;const e=i.parent.children.splice(i.index,1)[0];return n.emit("panel:removed",e),!0}resizePanel(t,i,e){const s=this.findContainer(t);if(!s||!s.children||s.children.length<=i+1)return;const o=s.children[i],r=s.children[i+1];o.size||(o.size=50),r.size||(r.size=50);const a=.1*e;o.size+=a,r.size-=a,o.size<5&&(o.size=5),r.size<5&&(r.size=5),n.emit("layout:updated",this.state)}setActiveTab(t,i){const e=this.findContainer(t);e&&"tabs"===e.type&&(e.activeTabId=i,n.emit("layout:updated",this.state))}findContainer(t,i=this.state.root){if(i.id===t)return i;for(const e of i.children)if(e.children){const i=this.findContainer(t,e);if(i)return i}return null}save(){return JSON.parse(JSON.stringify(this.state))}load(t){this.state=t,n.emit("layout:loaded",t),n.emit("layout:updated",this.state)}splitPanel(t,i,e){const s=this.findPanel(t);if(!s||!s.parent)return!1;const{parent:o,index:r}=s,a=o.children[r],l={...e,id:e.id||`p_${Date.now()}`,type:"panel"},h="horizontal"===i?"row":"column",c=(a.size||100)/2;if(a.size=c,l.size=c,o.type===h)o.children.splice(r+1,0,l);else{const t={id:`c_${Date.now()}`,type:h,children:[a,l]};o.children.splice(r,1,t)}return this.rebalanceSizes(o),n.emit("layout:updated",this.state),n.emit("panel:added",l),l.id}getPanelState(t,i=this.state.root){const e=this.findPanel(t,i);return e?e.parent.children[e.index]:null}movePanel(t,i,e){const s=this.findPanel(t);if(!s||!s.parent)return!1;const o=s.parent.children.splice(s.index,1)[0],r=this.findContainer(i);if(!r){const t=this.findPanel(i);return!!t&&(t.parent.children.splice(t.index+1,0,o),this.cleanupContainers(this.state.root),n.emit("layout:updated",this.state),!0)}return"number"==typeof e?r.children.splice(e,0,o):r.children.push(o),this.cleanupContainers(this.state.root),n.emit("panel:moved",o,i),n.emit("layout:updated",this.state),!0}mergePanel(t,i){const e=this.getPanelState(t),s=this.findContainer(i);if(s&&"tabs"===s.type)return this.movePanel(t,i);const o=this.findPanel(i);if(o){const{parent:i,index:s}=o,r=i.children[s];this.removePanel(t);const a={id:`c_tabs_${Date.now()}`,type:"tabs",children:[r,{...e,id:t}]};return i.children.splice(s,1,a),this.cleanupContainers(this.state.root),n.emit("layout:updated",this.state),!0}return!1}cleanupContainers(t){t.children=t.children.filter((t=>!t.children||(this.cleanupContainers(t),t.children.length>0))),this.rebalanceSizes(t)}rebalanceSizes(t){if(!t.children||0===t.children.length)return;const i=t.children.filter((t=>!t.size));if(i.length>0){const e=t.children.reduce(((t,i)=>t+(i.size||0)),0),s=Math.max(0,100-e)/i.length;i.forEach((t=>t.size=s))}const e=t.children.reduce(((t,i)=>t+(i.size||0)),0);e>0&&Math.abs(e-100)>.1&&t.children.forEach((t=>t.size=t.size/e*100))}collapsePanel(t){const i=this.getPanelState(t);return!(!i||i.collapsed||(i.collapsed=!0,n.emit("layout:updated",this.state),0))}expandPanel(t){const i=this.getPanelState(t);return!(!i||!i.collapsed||(i.collapsed=!1,n.emit("layout:updated",this.state),0))}}const l=class{constructor(i){t(this,i)}get el(){return i(this)}initialLayout;layout;engine;isDragging=!1;draggedPanelId=null;dropIndicator=null;currentDropTargetId=null;currentDropIndex=null;componentWillLoad(){if(this.initialLayout)try{const t=r(this.initialLayout);this.engine=new a(t)}catch(t){console.warn("Invalid initial layout, using empty layout",t),this.engine=new a}else this.engine=new a;this.layout=this.engine.save(),n.on("panel:dragstart",(t=>{this.isDragging=!0,this.draggedPanelId=t.panelId,document.addEventListener("mousemove",this.onGlobalMouseMove),document.addEventListener("mouseup",this.onGlobalMouseUp)})),n.on("splitter:drag",(t=>{const i=this.engine.findContainer(t.containerId);let e=0;i&&("row"===i.type||"horizontal"===i.type?e=t.dx:"column"!==i.type&&"vertical"!==i.type||(e=t.dy),0!==e&&(this.engine.resizePanel(t.containerId,t.index,e),this.layout=this.engine.save()))})),n.on("tab:changed",(t=>{this.engine.setActiveTab(t.containerId,t.tabId),this.layout=this.engine.save()})),n.on("panel:closed",(t=>{this.engine.removePanel(t),this.layout=this.engine.save()})),n.on("layout:updated",(()=>{this.layout=this.engine.save()})),window.LayoutEventBus=n}resizeObserver;componentDidLoad(){"undefined"!=typeof ResizeObserver&&(this.resizeObserver=new ResizeObserver((()=>{this.checkAutoCollapse()})),this.resizeObserver.observe(this.el))}disconnectedCallback(){this.resizeObserver&&this.resizeObserver.disconnect(),document.removeEventListener("mousemove",this.onGlobalMouseMove),document.removeEventListener("mouseup",this.onGlobalMouseUp)}checkAutoCollapse(){this.el&&Array.from(this.el.querySelectorAll(".lm-panel")).forEach((t=>{const i=t.getAttribute("data-id"),e=this.engine.getPanelState(i);if(!e||!e.collapsible||e.collapsed)return;const s=t.getBoundingClientRect();(s.width<(e.minWidth||100)||s.height<(e.minHeight||100))&&(this.engine.collapsePanel(i),this.layout=this.engine.save())}))}async addPanel(t){const i=this.engine.addPanel(t);return this.layout=this.engine.save(),i}async removePanel(t){const i=this.engine.removePanel(t);return this.layout=this.engine.save(),i}async saveLayout(){return o(this.engine.save())}async loadLayout(t){const i=r(t);return this.engine.load(i),this.layout=this.engine.save(),!0}async splitPanel(t,i,e){const s=this.engine.splitPanel(t,i,e);return s?(this.layout=this.engine.save(),s):null}getIndicatorStyle(){if(!this.dropIndicator)return{};const{rect:t,zone:i}=this.dropIndicator,e=s(this.el),n={position:"fixed",pointerEvents:"none",zIndex:"10000",background:"rgba(59, 130, 246, 0.3)",border:"2px solid #3bf673",transition:"all 0.1s ease-out",borderRadius:"4px"},o=t.left-e.x,r=t.top-e.y,a=t.width,l=t.height;switch(i){case"left":n.left=`${o}px`,n.top=`${r}px`,n.width=a/2+"px",n.height=`${l}px`;break;case"right":n.left=`${o+a/2}px`,n.top=`${r}px`,n.width=a/2+"px",n.height=`${l}px`;break;case"top":n.left=`${o}px`,n.top=`${r}px`,n.width=`${a}px`,n.height=l/2+"px";break;case"bottom":n.left=`${o}px`,n.top=`${r+l/2}px`,n.width=`${a}px`,n.height=l/2+"px";break;case"root-left":n.left=`${o}px`,n.top=`${r}px`,n.width="40px",n.height=`${l}px`;break;case"root-right":n.left=o+a-40+"px",n.top=`${r}px`,n.width="40px",n.height=`${l}px`;break;case"root-top":n.left=`${o}px`,n.top=`${r}px`,n.width=`${a}px`,n.height="40px";break;case"root-bottom":n.left=`${o}px`,n.top=r+l-40+"px",n.width=`${a}px`,n.height="40px";break;default:n.left=`${o}px`,n.top=`${r}px`,n.width=`${a}px`,n.height=`${l}px`}return n}onGlobalMouseMove=t=>{if(!this.isDragging)return;const i=this.el.getBoundingClientRect(),e=t.clientX-i.left,s=t.clientY-i.top;let n=null;if(e<30?n="root-left":e>i.width-30?n="root-right":s<30?n="root-top":s>i.height-30&&(n="root-bottom"),n)return this.currentDropTargetId="root",void(this.dropIndicator={rect:i,zone:n});const o=document.elementsFromPoint(t.clientX,t.clientY).find((t=>t.classList.contains("lm-panel")||t.classList.contains("lm-container")||t.classList.contains("lm-tabs")));if(o){let i=o.getAttribute("data-id");const e=o.getBoundingClientRect();if(o.classList.contains("lm-tabs")){const i=o.querySelector(".lm-tab-list");if(i){const s=Array.from(i.querySelectorAll(".lm-tab"));let n=s.length;return s.forEach(((i,e)=>{const o=i.getBoundingClientRect();t.clientX<o.left+o.width/2&&n===s.length&&(n=e)})),this.currentDropTargetId=o.getAttribute("data-id"),this.currentDropIndex=n,void(this.dropIndicator={rect:e,zone:"center",index:n})}}if(i===this.draggedPanelId)return this.dropIndicator=null,void(this.currentDropTargetId=null);const s=(t.clientX-e.left)/e.width,n=(t.clientY-e.top)/e.height;let r="center";s<.25?r="left":s>.75?r="right":n<.25?r="top":n>.85&&(r="bottom"),this.currentDropTargetId=i,this.currentDropIndex=null,this.dropIndicator={rect:e,zone:r}}else this.dropIndicator=null,this.currentDropTargetId=null,this.currentDropIndex=null};onGlobalMouseUp=()=>{if(this.isDragging&&this.draggedPanelId&&this.currentDropTargetId){const t=this.dropIndicator?.zone,i=this.currentDropTargetId,e=this.draggedPanelId;if("center"===t)if(e.startsWith("new:")){const t=e.split(":")[1],s=`p_${Date.now()}`;this.engine.addPanel({id:s,title:t,content:`Content for ${t}`}),null!==this.currentDropIndex?this.engine.movePanel(s,i,this.currentDropIndex):this.engine.mergePanel(s,i)}else null!==this.currentDropIndex?this.engine.movePanel(e,i,this.currentDropIndex):this.engine.mergePanel(e,i);else if(t.startsWith("root-")){const i="root-left"===t||"root-right"===t?"horizontal":"vertical";let s;if(e.startsWith("new:")){const t=e.split(":")[1];s={id:`p_${Date.now()}`,title:t,content:`Content for ${t}`}}else s=this.engine.getPanelState(e),this.engine.removePanel(e);s&&this.engine.splitPanel(this.layout.root.id,i,s)}else if(t){const s="left"===t||"right"===t?"horizontal":"vertical";let n;if(e.startsWith("new:")){const t=e.split(":")[1];n={id:`p_${Date.now()}`,title:t,content:`New ${t}`}}else n=this.engine.getPanelState(e),this.engine.removePanel(e);n&&this.engine.splitPanel(i,s,n)}this.layout=this.engine.save()}this.isDragging=!1,this.draggedPanelId=null,this.dropIndicator=null,document.removeEventListener("mousemove",this.onGlobalMouseMove),document.removeEventListener("mouseup",this.onGlobalMouseUp)};render(){return e("div",{key:"f569e28b4534614afdb516bf769ad888c11b103f",class:"lm-root"},e("lm-container",{key:"fd8a5616176a28a3da539012d2e683f5216209fb",node:this.layout.root}),this.dropIndicator&&e("div",{key:"27e38072647723cba399914c9f1684dc9ea62de5",class:`lm-drop-indicator ${this.dropIndicator.zone}`,style:this.getIndicatorStyle()}),e("div",{key:"dfc23cda195b1b5ef6096c2fb76f52a0fd57cd3f",class:"lm-floating"},this.layout.floating.map((t=>e("lm-floating-window",{"panel-id":t.id})))))}};l.style=".sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.lm-root{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;position:relative}.lm-floating{position:absolute;top:0;left:0;width:0;height:0;z-index:9999}";export{l as layout_manager}
|
|
1
|
+
import{r as t,a as i,h as e}from"./p-Dqu2zaH1.js";import{g as s}from"./p-DFBTWhGw.js";import{G as n}from"./p-vwwmWKs9.js";const o=t=>JSON.stringify(t),r=t=>JSON.parse(t);class a{state;constructor(t){this.state=t||a.emptyLayout()}static emptyLayout(){return{version:1,root:{id:"root",type:"row",children:[]},floating:[]}}findPanel(t,i=this.state.root){for(let e=0;e<i.children.length;e++){const s=i.children[e];if("panel"===s.type&&s.id===t)return{parent:i,index:e};if(s.children){const i=this.findPanel(t,s);if(i)return i}}return null}addPanel(t,i){const e={...t,id:t.id||`p_${Date.now()}`,type:"panel"};let s=i?this.findContainer(i):null;if(!s){const t=i=>{if(["row","column","tabs"].includes(i.type))return i;for(const e of i.children)if(e.children){const i=t(e);if(i)return i}return null};s=t(this.state.root)}if(s){if("single"===s.type&&s.children.length>0)return console.warn(`Container ${s.id} is 'single' and already has a panel. Rejecting add.`),null;s.children.push(e)}else this.state.root.children.push(e);return n.emit("panel:added",e),e.id}removePanel(t){const i=this.findPanel(t);if(!i||!i.parent)return!1;const e=i.parent.children.splice(i.index,1)[0];return n.emit("panel:removed",e),!0}resizePanel(t,i,e){const s=this.findContainer(t);if(!s||!s.children||s.children.length<=i+1)return;const o=s.children[i],r=s.children[i+1];o.size||(o.size=50),r.size||(r.size=50);const a=.1*e;o.size+=a,r.size-=a,o.size<5&&(o.size=5),r.size<5&&(r.size=5),n.emit("layout:updated",this.state)}setActiveTab(t,i){const e=this.findContainer(t);e&&"tabs"===e.type&&(e.activeTabId=i,n.emit("layout:updated",this.state))}findContainer(t,i=this.state.root){if(i.id===t)return i;for(const e of i.children)if(e.children){const i=this.findContainer(t,e);if(i)return i}return null}save(){return JSON.parse(JSON.stringify(this.state))}load(t){this.state=t,n.emit("layout:loaded",t),n.emit("layout:updated",this.state)}splitPanel(t,i,e){const s=this.findPanel(t);if(!s||!s.parent)return!1;const{parent:o,index:r}=s,a=o.children[r],l={...e,id:e.id||`p_${Date.now()}`,type:"panel"},h="horizontal"===i?"row":"column",c=(a.size||100)/2;if(a.size=c,l.size=c,o.type===h)o.children.splice(r+1,0,l);else{const t={id:`c_${Date.now()}`,type:h,children:[a,l]};o.children.splice(r,1,t)}return this.rebalanceSizes(o),n.emit("layout:updated",this.state),n.emit("panel:added",l),l.id}getPanelState(t,i=this.state.root){const e=this.findPanel(t,i);return e?e.parent.children[e.index]:null}movePanel(t,i,e){const s=this.findPanel(t);if(!s||!s.parent)return!1;const o=s.parent.children.splice(s.index,1)[0],r=this.findContainer(i);if(!r){const t=this.findPanel(i);return!!t&&(t.parent.children.splice(t.index+1,0,o),this.cleanupContainers(this.state.root),n.emit("layout:updated",this.state),!0)}return"number"==typeof e?r.children.splice(e,0,o):r.children.push(o),this.cleanupContainers(this.state.root),n.emit("panel:moved",o,i),n.emit("layout:updated",this.state),!0}mergePanel(t,i){const e=this.getPanelState(t),s=this.findContainer(i);if(s&&"tabs"===s.type)return this.movePanel(t,i);const o=this.findPanel(i);if(o){const{parent:i,index:s}=o,r=i.children[s];this.removePanel(t);const a={id:`c_tabs_${Date.now()}`,type:"tabs",children:[r,{...e,id:t}]};return i.children.splice(s,1,a),this.cleanupContainers(this.state.root),n.emit("layout:updated",this.state),!0}return!1}cleanupContainers(t){t.children=t.children.filter((t=>!t.children||(this.cleanupContainers(t),t.children.length>0))),this.rebalanceSizes(t)}rebalanceSizes(t){if(!t.children||0===t.children.length)return;const i=t.children.filter((t=>!t.size));if(i.length>0){const e=t.children.reduce(((t,i)=>t+(i.size||0)),0),s=Math.max(0,100-e)/i.length;i.forEach((t=>t.size=s))}const e=t.children.reduce(((t,i)=>t+(i.size||0)),0);e>0&&Math.abs(e-100)>.1&&t.children.forEach((t=>t.size=t.size/e*100))}collapsePanel(t){const i=this.getPanelState(t);return!(!i||i.collapsed||(i.collapsed=!0,n.emit("layout:updated",this.state),0))}expandPanel(t){const i=this.getPanelState(t);return!(!i||!i.collapsed||(i.collapsed=!1,n.emit("layout:updated",this.state),0))}}const l=class{constructor(i){t(this,i)}get el(){return i(this)}initialLayout;layout;engine;isDragging=!1;draggedPanelId=null;dropIndicator=null;currentDropTargetId=null;currentDropIndex=null;componentWillLoad(){if(this.initialLayout)try{const t=r(this.initialLayout);this.engine=new a(t)}catch(t){console.warn("Invalid initial layout, using empty layout",t),this.engine=new a}else this.engine=new a;this.layout=this.engine.save(),n.on("panel:dragstart",(t=>{this.isDragging=!0,this.draggedPanelId=t.panelId,document.addEventListener("mousemove",this.onGlobalMouseMove),document.addEventListener("mouseup",this.onGlobalMouseUp)})),n.on("splitter:drag",(t=>{const i=this.engine.findContainer(t.containerId);let e=0;i&&("row"===i.type||"horizontal"===i.type?e=t.dx:"column"!==i.type&&"vertical"!==i.type||(e=t.dy),0!==e&&(this.engine.resizePanel(t.containerId,t.index,e),this.layout=this.engine.save()))})),n.on("tab:changed",(t=>{this.engine.setActiveTab(t.containerId,t.tabId),this.layout=this.engine.save()})),n.on("panel:closed",(t=>{this.engine.removePanel(t),this.layout=this.engine.save()})),n.on("layout:updated",(()=>{this.layout=this.engine.save()})),window.LayoutEventBus=n}resizeObserver;componentDidLoad(){"undefined"!=typeof ResizeObserver&&(this.resizeObserver=new ResizeObserver((()=>{this.checkAutoCollapse()})),this.resizeObserver.observe(this.el))}disconnectedCallback(){this.resizeObserver&&this.resizeObserver.disconnect(),document.removeEventListener("mousemove",this.onGlobalMouseMove),document.removeEventListener("mouseup",this.onGlobalMouseUp)}checkAutoCollapse(){this.el&&Array.from(this.el.querySelectorAll(".lm-panel")).forEach((t=>{const i=t.getAttribute("data-id"),e=this.engine.getPanelState(i);if(!e||!e.collapsible||e.collapsed)return;const s=t.getBoundingClientRect();(s.width<(e.minWidth||100)||s.height<(e.minHeight||100))&&(this.engine.collapsePanel(i),this.layout=this.engine.save())}))}async addPanel(t){const i=this.engine.addPanel(t);return this.layout=this.engine.save(),i}async removePanel(t){const i=this.engine.removePanel(t);return this.layout=this.engine.save(),i}async saveLayout(){return o(this.engine.save())}async loadLayout(t){const i=r(t);return this.engine.load(i),this.layout=this.engine.save(),!0}async splitPanel(t,i,e){const s=this.engine.splitPanel(t,i,e);return s?(this.layout=this.engine.save(),s):null}getIndicatorStyle(){if(!this.dropIndicator)return{};const{rect:t,zone:i}=this.dropIndicator,e=s(this.el),n={position:"fixed",pointerEvents:"none",zIndex:"10000",background:"rgba(59, 130, 246, 0.3)",border:"2px solid #3bf673",transition:"all 0.1s ease-out",borderRadius:"4px"},o=t.left-e.x,r=t.top-e.y,a=t.width,l=t.height;switch(i){case"left":n.left=`${o}px`,n.top=`${r}px`,n.width=a/2+"px",n.height=`${l}px`;break;case"right":n.left=`${o+a/2}px`,n.top=`${r}px`,n.width=a/2+"px",n.height=`${l}px`;break;case"top":n.left=`${o}px`,n.top=`${r}px`,n.width=`${a}px`,n.height=l/2+"px";break;case"bottom":n.left=`${o}px`,n.top=`${r+l/2}px`,n.width=`${a}px`,n.height=l/2+"px";break;case"root-left":n.left=`${o}px`,n.top=`${r}px`,n.width="40px",n.height=`${l}px`;break;case"root-right":n.left=o+a-40+"px",n.top=`${r}px`,n.width="40px",n.height=`${l}px`;break;case"root-top":n.left=`${o}px`,n.top=`${r}px`,n.width=`${a}px`,n.height="40px";break;case"root-bottom":n.left=`${o}px`,n.top=r+l-40+"px",n.width=`${a}px`,n.height="40px";break;default:n.left=`${o}px`,n.top=`${r}px`,n.width=`${a}px`,n.height=`${l}px`}return n}onGlobalMouseMove=t=>{if(!this.isDragging)return;const i=this.el.getBoundingClientRect(),e=t.clientX-i.left,s=t.clientY-i.top;let n=null;if(e<30?n="root-left":e>i.width-30?n="root-right":s<30?n="root-top":s>i.height-30&&(n="root-bottom"),n)return this.currentDropTargetId="root",void(this.dropIndicator={rect:i,zone:n});const o=document.elementsFromPoint(t.clientX,t.clientY).find((t=>t.classList.contains("lm-panel")||t.classList.contains("lm-container")||t.classList.contains("lm-tabs")));if(o){let i=o.getAttribute("data-id");const e=o.getBoundingClientRect();if(o.classList.contains("lm-tabs")){const i=o.querySelector(".lm-tab-list");if(i){const s=Array.from(i.querySelectorAll(".lm-tab"));let n=s.length;return s.forEach(((i,e)=>{const o=i.getBoundingClientRect();t.clientX<o.left+o.width/2&&n===s.length&&(n=e)})),this.currentDropTargetId=o.getAttribute("data-id"),this.currentDropIndex=n,void(this.dropIndicator={rect:e,zone:"center",index:n})}}if(i===this.draggedPanelId)return this.dropIndicator=null,void(this.currentDropTargetId=null);const s=(t.clientX-e.left)/e.width,n=(t.clientY-e.top)/e.height;let r="center";s<.25?r="left":s>.75?r="right":n<.25?r="top":n>.85&&(r="bottom"),this.currentDropTargetId=i,this.currentDropIndex=null,this.dropIndicator={rect:e,zone:r}}else this.dropIndicator=null,this.currentDropTargetId=null,this.currentDropIndex=null};onGlobalMouseUp=()=>{if(this.isDragging&&this.draggedPanelId&&this.currentDropTargetId){const t=this.dropIndicator?.zone,i=this.currentDropTargetId,e=this.draggedPanelId;if("center"===t)if(e.startsWith("new:")){const t=e.split(":")[1],s=`p_${Date.now()}`;this.engine.addPanel({id:s,title:t,content:`Content for ${t}`}),null!==this.currentDropIndex?this.engine.movePanel(s,i,this.currentDropIndex):this.engine.mergePanel(s,i)}else null!==this.currentDropIndex?this.engine.movePanel(e,i,this.currentDropIndex):this.engine.mergePanel(e,i);else if(t.startsWith("root-")){const i="root-left"===t||"root-right"===t?"horizontal":"vertical";let s;if(e.startsWith("new:")){const t=e.split(":")[1];s={id:`p_${Date.now()}`,title:t,content:`Content for ${t}`}}else s=this.engine.getPanelState(e),this.engine.removePanel(e);s&&this.engine.splitPanel(this.layout.root.id,i,s)}else if(t){const s="left"===t||"right"===t?"horizontal":"vertical";let n;if(e.startsWith("new:")){const t=e.split(":")[1];n={id:`p_${Date.now()}`,title:t,content:`New ${t}`}}else n=this.engine.getPanelState(e),this.engine.removePanel(e);n&&this.engine.splitPanel(i,s,n)}this.layout=this.engine.save()}this.isDragging=!1,this.draggedPanelId=null,this.dropIndicator=null,document.removeEventListener("mousemove",this.onGlobalMouseMove),document.removeEventListener("mouseup",this.onGlobalMouseUp)};render(){return e("div",{key:"7753a9c91db9bde41c4d9722965cf7539dbf1853",class:"lm-root"},e("lm-container",{key:"bc8b0577999e7abe56bcdf0b165c6b11ff632f9c",node:this.layout.root}),this.dropIndicator&&e("div",{key:"4524e20157b1f2a6d2507f8d62e520dc887cd941",class:`lm-drop-indicator ${this.dropIndicator.zone}`,style:this.getIndicatorStyle()}),e("div",{key:"80eb024ac89e3417d43983de2a778b63714c932f",class:"lm-floating"},this.layout.floating.map((t=>e("lm-floating-window",{"panel-id":t.id})))))}};l.style=".sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.lm-root{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;position:relative}.lm-floating{position:absolute;top:0;left:0;width:0;height:0;z-index:9999}";export{l as layout_manager}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,h as i}from"./p-
|
|
1
|
+
import{r as t,h as i}from"./p-Dqu2zaH1.js";import{f as o}from"./p-Ck6jDuhz.js";const r=class{constructor(i){t(this,i)}first;middle;last;getText(){return o(this.first,this.middle,this.last)}render(){return i("div",{key:"c54ef18347b7e6ba68f972968779880e74e0d4e5"},"Hello, World! I'm ",this.getText())}};r.style=".sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block}";export{r as my_component}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,c as e,a as i,h as a,H as s}from"./p-DUsoYu9r.js";const o=class{constructor(i){t(this,i),this.actionClick=e(this,"actionClick"),this.speedDialToggle=e(this,"speedDialToggle")}get el(){return i(this)}position="bottom-right";actions=[];strategy="fixed";icon="plus";iconLibrary="se";toggleIcon;actionLibrary="default";color="primary";size="md";variant="solid";direction="auto";shape="rounded";tooltipPosition="auto";showTooltips=!0;labelPosition="auto";labelHide=!1;trigger="click";layout="linear";closeOnScroll=!1;glassy=!1;magnetic=!1;magneticStrength=.3;magneticRadius=150;persistenceId;isDraggable=!1;isOpen=!1;magneticTransform={x:0,y:0};itemAngles=[];dragOffset={x:0,y:0};isDragging=!1;isElastic=!1;actionClick;speedDialToggle;mainButton;closeTimer;dragStartPos={x:0,y:0};initialOffset={x:0,y:0};componentWillLoad(){this.loadPersistedPosition()}loadPersistedPosition(){if(this.persistenceId&&this.isDraggable){const t=localStorage.getItem(`ui-speed-dial-pos-${this.persistenceId}`);if(t)try{this.dragOffset=JSON.parse(t)}catch(t){console.error("Failed to load SpeedDial position",t)}}}savePersistedPosition(){this.persistenceId&&this.isDraggable&&localStorage.setItem(`ui-speed-dial-pos-${this.persistenceId}`,JSON.stringify(this.dragOffset))}getActions(){if("string"==typeof this.actions)try{return JSON.parse(this.actions)}catch{return[]}return this.actions}getDialDirection(){return"auto"!==this.direction?this.direction:"center"===this.position||this.position.startsWith("bottom")?"up":this.position.startsWith("top")?"down":this.position.endsWith("right")?"left":"right"}getTooltipPosition(){if(this.labelPosition&&"auto"!==this.labelPosition)return this.labelPosition;if(this.tooltipPosition&&"auto"!==this.tooltipPosition)return this.tooltipPosition;const t=this.el.getBoundingClientRect();return this.position.endsWith("right")?t.left<120?"right":"left":this.position.endsWith("left")?t.right>window.innerWidth-120?"left":"right":this.position.startsWith("top")?t.bottom>window.innerHeight-120?"top":"bottom":"top"}toggleDial=()=>{this.isDragging||(this.triggerElastic(),this.setOpen(!this.isOpen))};triggerElastic(){this.isElastic=!0,setTimeout((()=>this.isElastic=!1),400)}handleOpenChange(t){t&&this.calculateSafeAngles()}calculateSafeAngles(){if("linear"===this.layout)return;const t=this.getActions().length;if(0===t)return;const e=[],i=this.el.getBoundingClientRect(),a=100;let s=0,o=360;if("arc"===this.layout){const t=this.getDialDirection();"up"===t?(s=180,o=360):"down"===t?(s=0,o=180):"left"===t?(s=90,o=270):"right"===t&&(s=270,o=450),!(i.right>window.innerWidth-a||this.position.includes("right"))||"up"!==t&&"auto"!==t||(s-=45,o-=45),!(i.left<a||this.position.includes("left"))||"up"!==t&&"auto"!==t||(s+=45,o+=45),!(i.top<a||this.position.includes("top"))||"right"!==t&&"auto"!==t||(s+=45,o+=45),!(i.bottom>window.innerHeight-a||this.position.includes("bottom"))||"right"!==t&&"auto"!==t||(s-=45,o-=45),"center-left"===this.position&&(s=270,o=450),"center-right"===this.position&&(s=90,o=270)}const r=t>1?(o-s)/("radial"===this.layout?t:t-1):0;for(let i=0;i<t;i++)e.push(s+i*r);this.itemAngles=e}setOpen(t){this.isOpen!==t&&(this.isOpen=t,this.speedDialToggle.emit(this.isOpen))}handleActionClick=t=>{t.disabled||(this.actionClick.emit(String(t.id)),this.setOpen(!1))};handleBackdropClick=()=>{this.isOpen&&"hover"!==this.trigger&&this.setOpen(!1)};handleWindowScroll(){this.isOpen&&this.closeOnScroll&&this.setOpen(!1)}handleGlobalKeyDown(t){const e=this.getActions();if(!e||0===e.length)return;const i=e.find((e=>e.shortcut===t.key&&!e.disabled));return i?(t.preventDefault(),void this.handleActionClick(i)):void 0}handleMouseMove(t){if(!this.magnetic)return;const e=this.el.getBoundingClientRect(),i=t.clientX-(e.left+e.width/2),a=t.clientY-(e.top+e.height/2),s=Math.sqrt(i*i+a*a);if(s<this.magneticRadius){const t=1-s/this.magneticRadius;this.magneticTransform={x:i*this.magneticStrength*t,y:a*this.magneticStrength*t}}else 0===this.magneticTransform.x&&0===this.magneticTransform.y||(this.magneticTransform={x:0,y:0})}onMouseDown(t){this.isDraggable&&(this.isDragging=!0,this.dragStartPos={x:t.clientX,y:t.clientY},this.initialOffset={...this.dragOffset},this.setOpen(!1),document.addEventListener("mousemove",this.onMouseMove),document.addEventListener("mouseup",this.onMouseUp))}onMouseMove=t=>{this.isDragging&&(this.dragOffset={x:this.initialOffset.x+(t.clientX-this.dragStartPos.x),y:this.initialOffset.y+(t.clientY-this.dragStartPos.y)})};onMouseUp=()=>{this.isDragging=!1,document.removeEventListener("mousemove",this.onMouseMove),document.removeEventListener("mouseup",this.onMouseUp),this.savePersistedPosition()};onMouseEnter=()=>{"hover"===this.trigger&&(clearTimeout(this.closeTimer),this.setOpen(!0))};onMouseLeave=()=>{"hover"===this.trigger&&(this.closeTimer=setTimeout((()=>{this.setOpen(!1)}),300))};handleLocalKeyDown(t){if(!this.isOpen)return;const e=Array.from(this.el.shadowRoot?.querySelectorAll(".speed-dial-action")??[]);if((document.activeElement===this.mainButton||this.el.shadowRoot?.activeElement===this.mainButton)&&["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"].includes(t.key))return t.preventDefault(),void(e.length>0&&e[e.length-1].focus());const i=e.indexOf(this.el.shadowRoot?.activeElement);"Escape"===t.key?(this.setOpen(!1),this.mainButton.focus()):-1!==i&&(["ArrowDown","ArrowRight"].includes(t.key)?(t.preventDefault(),e[(i+1)%e.length].focus()):["ArrowUp","ArrowLeft"].includes(t.key)&&(t.preventDefault(),e[(i-1+e.length)%e.length].focus()))}render(){const t=this.getActions(),e=this.getDialDirection(),i=this.getTooltipPosition(),o={"speed-dial-container":!0,[`speed-dial-${this.size}`]:!0,"speed-dial-open":this.isOpen,"speed-dial-glassy":this.glassy,"speed-dial-dragging":this.isDragging,"speed-dial-elastic":this.isElastic},r={"speed-dial-button":!0,"speed-dial-main":!0,[`speed-dial-${this.color}`]:!0,[`speed-dial-variant-${this.variant}`]:!0,[`speed-dial-shape-${this.shape}`]:!0,"speed-dial-button-open":this.isOpen,"speed-dial-button-has-toggle-icon":!!this.toggleIcon},n={"speed-dial-actions":!0,[`speed-dial-actions-${e}`]:!0,[`speed-dial-layout-${this.layout}`]:!0};return a(s,{key:"044e35eacc272591b4f60488eb366c40c1b1f236",class:{[`speed-dial-strategy-${this.strategy}`]:!0,[`speed-dial-${this.position}`]:!0},onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave},a("div",{key:"37b6426b0b26e5fbb55a7d52a1b1a515a3d56954",class:o,style:{"--magnetic-x":`${this.magneticTransform.x}px`,"--magnetic-y":`${this.magneticTransform.y}px`,"--drag-x":`${this.dragOffset.x}px`,"--drag-y":`${this.dragOffset.y}px`,transform:"translate(calc(var(--magnetic-x, 0px) + var(--drag-x, 0px)), calc(var(--magnetic-y, 0px) + var(--drag-y, 0px)))",transition:0!==this.magneticTransform.x||this.isDragging?"none":"transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1)",cursor:this.isDraggable?this.isDragging?"grabbing":"grab":"default"}},this.isOpen&&"click"===this.trigger&&a("div",{key:"4abeed7f2425ec14494dd7bb8e772eee322ff6a6",class:"speed-dial-backdrop",onClick:this.handleBackdropClick}),a("div",{key:"0bfdc8b5ce0ca3949742414078299c3fda31d755",class:n,role:"menu","aria-orientation":["top","bottom"].includes(e)?"vertical":"horizontal"},this.isOpen&&t.map(((t,e)=>{const s={"--item-angle":`${this.itemAngles[e]||0}deg`,"--index":e.toString(),"--stagger-delay":.05*e+"s","animation-delay":.05*e+"s"};return a("div",{key:t.id,class:"speed-dial-action-wrapper",style:s},a("ui-button",{variant:"ghost",class:{"speed-dial-action":!0,[`speed-dial-${t.variant||this.variant}`]:!0,[`speed-dial-variant-${t.variant||this.variant}`]:!0,[`speed-dial-shape-${t.shape||this.shape}`]:!0,[`speed-dial-${t.color||this.color}`]:!0,"speed-dial-action-disabled":t.disabled},onClick:()=>this.handleActionClick(t),disabled:t.disabled,ariaLabel:t.label,style:{backgroundColor:t.color||void 0}},a("span",{class:"speed-dial-action-icon"},a("ui-icon",{name:t.icon,library:t.iconLibrary||this.actionLibrary,size:"1.25em"})),t.badge&&a("span",{class:"speed-dial-action-badge",style:{backgroundColor:t.badgeColor}},t.badge),t.shortcut&&a("span",{class:"speed-dial-action-shortcut"},t.shortcut)),this.showTooltips&&t.label&&a("div",{class:{"speed-dial-tooltip":!0,[`speed-dial-tooltip-${i}`]:!0,"speed-dial-tooltip-hidden":this.labelHide}},t.label))}))),a("ui-button",{key:"3a6825fce27f39d7a4a689b4e860b7363b34e67f",variant:"ghost",class:r,onClick:this.toggleDial,ariaLabel:"Speed dial menu","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"true",ref:t=>this.mainButton=t},a("slot",{key:"b59d109049ce98eae735d4e598a929669171d247",name:"trigger-icon"},a("span",{key:"3d3c55dbbd3b67ade9dbd28a66b60feb2483e12a",class:"speed-dial-icon"},a("ui-icon",{key:"b0c231ad4fe207ca18e2b8efcf8ad891072d7c65",name:this.isOpen&&this.toggleIcon?this.toggleIcon:this.icon,library:this.iconLibrary,size:"1.5rem"}))))))}static get watchers(){return{isOpen:[{handleOpenChange:0}]}}};o.style='.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;z-index:1000;position:fixed;left:auto;right:auto;top:auto;bottom:auto}:host(.speed-dial-strategy-absolute){position:absolute}:host(.speed-dial-strategy-fixed){position:fixed}.speed-dial-container{position:relative}:host(.speed-dial-top-left){top:var(--speed-dial-top, 24px);left:var(--speed-dial-left, 24px)}:host(.speed-dial-top-right){top:var(--speed-dial-top, 24px);right:var(--speed-dial-right, 24px)}:host(.speed-dial-bottom-left){bottom:var(--speed-dial-bottom, 24px);left:var(--speed-dial-left, 24px)}:host(.speed-dial-bottom-right){bottom:var(--speed-dial-bottom, 24px);right:var(--speed-dial-right, 24px)}:host(.speed-dial-center),:host(.speed-dial-bottom-center){left:50%;bottom:var(--speed-dial-bottom, 24px);transform:translateX(-50%)}:host(.speed-dial-top-center){left:50%;top:var(--speed-dial-top, 24px);transform:translateX(-50%)}:host(.speed-dial-center-left){left:var(--speed-dial-left, 24px);top:50%;transform:translateY(-50%)}:host(.speed-dial-center-right){right:var(--speed-dial-right, 24px);top:50%;transform:translateY(-50%)}.speed-dial-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;opacity:0;animation:fadeIn 0.2s forwards;z-index:-1}.speed-dial-glassy .speed-dial-backdrop{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@keyframes fadeIn{to{opacity:1}}.speed-dial-button{position:relative;z-index:2;display:flex !important;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);outline:none;-webkit-tap-highlight-color:transparent;background:transparent !important;border:none;padding:0;margin:0}.speed-dial-elastic .speed-dial-button{animation:speed-dial-elastic-anim 0.4s cubic-bezier(0.34, 1.56, 0.64, 1)}@keyframes speed-dial-elastic-anim{0%{transform:scale(1)}30%{transform:scale(1.15, 0.85)}60%{transform:scale(0.9, 1.1)}100%{transform:scale(1)}}.speed-dial-button:hover{box-shadow:0 6px 12px rgba(0, 0, 0, 0.3);transform:scale(1.05)}.speed-dial-button:active{transform:scale(0.95)}.speed-dial-button-open:not(.speed-dial-button-has-toggle-icon){transform:rotate(45deg)}.speed-dial-button-open:not(.speed-dial-button-has-toggle-icon):hover{transform:rotate(45deg) scale(1.05)}.speed-dial-sm .speed-dial-button{width:40px;height:40px;font-size:18px}.speed-dial-sm .speed-dial-button{width:40px;height:40px;font-size:20px}.speed-dial-md .speed-dial-button{width:56px;height:56px;font-size:24px}.speed-dial-lg .speed-dial-button{width:72px;height:72px;font-size:32px}.speed-dial-icon{transition:transform 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.speed-dial-actions{position:absolute;display:flex;gap:12px;z-index:1}.speed-dial-actions-up{flex-direction:column-reverse;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:12px}.speed-dial-actions-down{flex-direction:column;top:100%;left:50%;transform:translateX(-50%);margin-top:12px}.speed-dial-actions-left{flex-direction:row-reverse;right:100%;top:50%;transform:translateY(-50%);margin-right:12px}.speed-dial-actions-right{flex-direction:row;left:100%;top:50%;transform:translateY(-50%);margin-left:12px}.speed-dial-layout-radial,.speed-dial-layout-arc{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:0;height:0;overflow:visible}.speed-dial-layout-radial .speed-dial-action-wrapper,.speed-dial-layout-arc .speed-dial-action-wrapper{position:absolute;top:50%;left:50%;margin:-24px;transform-origin:center center;transition:all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);--angle:var(--item-angle, 0deg);--radius:100px;transform:rotate(var(--angle)) translate(var(--radius)) rotate(calc(-1 * var(--angle))) scale(0);opacity:0}.speed-dial-open .speed-dial-layout-radial .speed-dial-action-wrapper,.speed-dial-open .speed-dial-layout-arc .speed-dial-action-wrapper{transform:rotate(var(--angle)) translate(var(--radius)) rotate(calc(-1 * var(--angle))) scale(1);opacity:1}.speed-dial-action-wrapper{position:relative;opacity:0;transform:scale(0);animation:actionAppear 0.2s cubic-bezier(0.4, 0, 0.2, 1) forwards}@keyframes actionAppear{from{opacity:0;transform:translate(0, 0) scale(0)}to{opacity:1;transform:var(--translation, translate(0, 0)) scale(1)}}.speed-dial-layout-linear .speed-dial-action-wrapper{--translation:translate(0, 0)}.speed-dial-layout-radial .speed-dial-action-wrapper,.speed-dial-layout-arc .speed-dial-action-wrapper{--translation:translate(calc(cos(var(--angle)) * var(--radius)), calc(sin(var(--angle)) * -1 * var(--radius)))}.speed-dial-action{display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s ease;background:transparent !important;border:none}.speed-dial-sm .speed-dial-action{width:36px;height:36px;font-size:16px}.speed-dial-md .speed-dial-action{width:48px;height:48px;font-size:20px}.speed-dial-lg .speed-dial-action{width:60px;height:60px;font-size:24px}.speed-dial-action:hover:not(.speed-dial-action-disabled){box-shadow:0 4px 10px rgba(0, 0, 0, 0.3);transform:scale(1.1)}.speed-dial-action:active:not(.speed-dial-action-disabled){transform:scale(0.95)}.speed-dial-action-disabled{opacity:0.5;cursor:not-allowed}.speed-dial-action-icon{display:flex;align-items:center;justify-content:center}.speed-dial-action-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background-color:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0, 0, 0, 0.2);border:2px solid var(--bg-primary, #ffffff)}.speed-dial-action-shortcut{position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);background:var(--color-primary, #374151);color:var(--text-standard, #ffffff);font-size:8px;padding:1px 4px;border-radius:4px;font-weight:700;text-transform:uppercase;z-index:1000;pointer-events:none}.speed-dial-action-shortcut.speed-dial-dragging{pointer-events:auto;z-index:2000}.speed-dial-action-shortcut{opacity:0.8}.speed-dial-tooltip{position:absolute;background-color:rgba(0, 0, 0, 0.85);color:var(--text-standard, #ffffff);padding:6px 12px;border-radius:4px;font-size:12px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity 0.2s ease;z-index:1001}.speed-dial-action-wrapper:hover .speed-dial-tooltip{opacity:1}.speed-dial-tooltip-left{right:100%;top:50%;transform:translateY(-50%);margin-right:8px}.speed-dial-tooltip-right{left:100%;top:50%;transform:translateY(-50%);margin-left:8px}.speed-dial-tooltip-top{bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:8px}.speed-dial-tooltip-bottom{top:100%;left:50%;transform:translateX(-50%);margin-top:8px}.speed-dial-tooltip::after{content:"";position:absolute;width:0;height:0;border:4px solid transparent}.speed-dial-tooltip-left::after{right:-8px;top:50%;transform:translateY(-50%);border-left-color:rgba(0, 0, 0, 0.85)}.speed-dial-tooltip-right::after{left:-8px;top:50%;transform:translateY(-50%);border-right-color:rgba(0, 0, 0, 0.85)}.speed-dial-tooltip-top::after{bottom:-8px;left:50%;transform:translateX(-50%);border-top-color:rgba(0, 0, 0, 0.85)}.speed-dial-tooltip-bottom::after{top:-8px;left:50%;transform:translateX(-50%);border-bottom-color:rgba(0, 0, 0, 0.85)}.speed-dial-button:focus-visible,.speed-dial-action:focus-visible{outline:2px solid var(--color-primary-hover, #2563eb);outline-offset:2px}';export{o as ui_speed_dial}
|
|
1
|
+
import{r as t,c as e,a as i,h as a,H as s}from"./p-Dqu2zaH1.js";const o=class{constructor(i){t(this,i),this.actionClick=e(this,"actionClick"),this.speedDialToggle=e(this,"speedDialToggle")}get el(){return i(this)}position="bottom-right";actions=[];strategy="fixed";icon="plus";iconLibrary="se";toggleIcon;actionLibrary="default";color="primary";size="md";variant="solid";direction="auto";shape="rounded";tooltipPosition="auto";showTooltips=!0;labelPosition="auto";labelHide=!1;trigger="click";layout="linear";closeOnScroll=!1;glassy=!1;magnetic=!1;magneticStrength=.3;magneticRadius=150;persistenceId;isDraggable=!1;isOpen=!1;magneticTransform={x:0,y:0};itemAngles=[];dragOffset={x:0,y:0};isDragging=!1;isElastic=!1;actionClick;speedDialToggle;mainButton;closeTimer;dragStartPos={x:0,y:0};initialOffset={x:0,y:0};componentWillLoad(){this.loadPersistedPosition()}loadPersistedPosition(){if(this.persistenceId&&this.isDraggable){const t=localStorage.getItem(`ui-speed-dial-pos-${this.persistenceId}`);if(t)try{this.dragOffset=JSON.parse(t)}catch(t){console.error("Failed to load SpeedDial position",t)}}}savePersistedPosition(){this.persistenceId&&this.isDraggable&&localStorage.setItem(`ui-speed-dial-pos-${this.persistenceId}`,JSON.stringify(this.dragOffset))}getActions(){if("string"==typeof this.actions)try{return JSON.parse(this.actions)}catch{return[]}return this.actions}getDialDirection(){return"auto"!==this.direction?this.direction:"center"===this.position||this.position.startsWith("bottom")?"up":this.position.startsWith("top")?"down":this.position.endsWith("right")?"left":"right"}getTooltipPosition(){if(this.labelPosition&&"auto"!==this.labelPosition)return this.labelPosition;if(this.tooltipPosition&&"auto"!==this.tooltipPosition)return this.tooltipPosition;const t=this.el.getBoundingClientRect();return this.position.endsWith("right")?t.left<120?"right":"left":this.position.endsWith("left")?t.right>window.innerWidth-120?"left":"right":this.position.startsWith("top")?t.bottom>window.innerHeight-120?"top":"bottom":"top"}toggleDial=()=>{this.isDragging||(this.triggerElastic(),this.setOpen(!this.isOpen))};triggerElastic(){this.isElastic=!0,setTimeout((()=>this.isElastic=!1),400)}handleOpenChange(t){t&&this.calculateSafeAngles()}calculateSafeAngles(){if("linear"===this.layout)return;const t=this.getActions().length;if(0===t)return;const e=[],i=this.el.getBoundingClientRect(),a=100;let s=0,o=360;if("arc"===this.layout){const t=this.getDialDirection();"up"===t?(s=180,o=360):"down"===t?(s=0,o=180):"left"===t?(s=90,o=270):"right"===t&&(s=270,o=450),!(i.right>window.innerWidth-a||this.position.includes("right"))||"up"!==t&&"auto"!==t||(s-=45,o-=45),!(i.left<a||this.position.includes("left"))||"up"!==t&&"auto"!==t||(s+=45,o+=45),!(i.top<a||this.position.includes("top"))||"right"!==t&&"auto"!==t||(s+=45,o+=45),!(i.bottom>window.innerHeight-a||this.position.includes("bottom"))||"right"!==t&&"auto"!==t||(s-=45,o-=45),"center-left"===this.position&&(s=270,o=450),"center-right"===this.position&&(s=90,o=270)}const r=t>1?(o-s)/("radial"===this.layout?t:t-1):0;for(let i=0;i<t;i++)e.push(s+i*r);this.itemAngles=e}setOpen(t){this.isOpen!==t&&(this.isOpen=t,this.speedDialToggle.emit(this.isOpen))}handleActionClick=t=>{t.disabled||(this.actionClick.emit(String(t.id)),this.setOpen(!1))};handleBackdropClick=()=>{this.isOpen&&"hover"!==this.trigger&&this.setOpen(!1)};handleWindowScroll(){this.isOpen&&this.closeOnScroll&&this.setOpen(!1)}handleGlobalKeyDown(t){const e=this.getActions();if(!e||0===e.length)return;const i=e.find((e=>e.shortcut===t.key&&!e.disabled));return i?(t.preventDefault(),void this.handleActionClick(i)):void 0}handleMouseMove(t){if(!this.magnetic)return;const e=this.el.getBoundingClientRect(),i=t.clientX-(e.left+e.width/2),a=t.clientY-(e.top+e.height/2),s=Math.sqrt(i*i+a*a);if(s<this.magneticRadius){const t=1-s/this.magneticRadius;this.magneticTransform={x:i*this.magneticStrength*t,y:a*this.magneticStrength*t}}else 0===this.magneticTransform.x&&0===this.magneticTransform.y||(this.magneticTransform={x:0,y:0})}onMouseDown(t){this.isDraggable&&(this.isDragging=!0,this.dragStartPos={x:t.clientX,y:t.clientY},this.initialOffset={...this.dragOffset},this.setOpen(!1),document.addEventListener("mousemove",this.onMouseMove),document.addEventListener("mouseup",this.onMouseUp))}onMouseMove=t=>{this.isDragging&&(this.dragOffset={x:this.initialOffset.x+(t.clientX-this.dragStartPos.x),y:this.initialOffset.y+(t.clientY-this.dragStartPos.y)})};onMouseUp=()=>{this.isDragging=!1,document.removeEventListener("mousemove",this.onMouseMove),document.removeEventListener("mouseup",this.onMouseUp),this.savePersistedPosition()};onMouseEnter=()=>{"hover"===this.trigger&&(clearTimeout(this.closeTimer),this.setOpen(!0))};onMouseLeave=()=>{"hover"===this.trigger&&(this.closeTimer=setTimeout((()=>{this.setOpen(!1)}),300))};handleLocalKeyDown(t){if(!this.isOpen)return;const e=Array.from(this.el.shadowRoot?.querySelectorAll(".speed-dial-action")??[]);if((document.activeElement===this.mainButton||this.el.shadowRoot?.activeElement===this.mainButton)&&["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"].includes(t.key))return t.preventDefault(),void(e.length>0&&e[e.length-1].focus());const i=e.indexOf(this.el.shadowRoot?.activeElement);"Escape"===t.key?(this.setOpen(!1),this.mainButton.focus()):-1!==i&&(["ArrowDown","ArrowRight"].includes(t.key)?(t.preventDefault(),e[(i+1)%e.length].focus()):["ArrowUp","ArrowLeft"].includes(t.key)&&(t.preventDefault(),e[(i-1+e.length)%e.length].focus()))}render(){const t=this.getActions(),e=this.getDialDirection(),i=this.getTooltipPosition(),o={"speed-dial-container":!0,[`speed-dial-${this.size}`]:!0,"speed-dial-open":this.isOpen,"speed-dial-glassy":this.glassy,"speed-dial-dragging":this.isDragging,"speed-dial-elastic":this.isElastic},r={"speed-dial-button":!0,"speed-dial-main":!0,[`speed-dial-${this.color}`]:!0,[`speed-dial-variant-${this.variant}`]:!0,[`speed-dial-shape-${this.shape}`]:!0,"speed-dial-button-open":this.isOpen,"speed-dial-button-has-toggle-icon":!!this.toggleIcon},n={"speed-dial-actions":!0,[`speed-dial-actions-${e}`]:!0,[`speed-dial-layout-${this.layout}`]:!0};return a(s,{key:"044e35eacc272591b4f60488eb366c40c1b1f236",class:{[`speed-dial-strategy-${this.strategy}`]:!0,[`speed-dial-${this.position}`]:!0},onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave},a("div",{key:"37b6426b0b26e5fbb55a7d52a1b1a515a3d56954",class:o,style:{"--magnetic-x":`${this.magneticTransform.x}px`,"--magnetic-y":`${this.magneticTransform.y}px`,"--drag-x":`${this.dragOffset.x}px`,"--drag-y":`${this.dragOffset.y}px`,transform:"translate(calc(var(--magnetic-x, 0px) + var(--drag-x, 0px)), calc(var(--magnetic-y, 0px) + var(--drag-y, 0px)))",transition:0!==this.magneticTransform.x||this.isDragging?"none":"transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1)",cursor:this.isDraggable?this.isDragging?"grabbing":"grab":"default"}},this.isOpen&&"click"===this.trigger&&a("div",{key:"4abeed7f2425ec14494dd7bb8e772eee322ff6a6",class:"speed-dial-backdrop",onClick:this.handleBackdropClick}),a("div",{key:"0bfdc8b5ce0ca3949742414078299c3fda31d755",class:n,role:"menu","aria-orientation":["top","bottom"].includes(e)?"vertical":"horizontal"},this.isOpen&&t.map(((t,e)=>{const s={"--item-angle":`${this.itemAngles[e]||0}deg`,"--index":e.toString(),"--stagger-delay":.05*e+"s","animation-delay":.05*e+"s"};return a("div",{key:t.id,class:"speed-dial-action-wrapper",style:s},a("ui-button",{variant:"ghost",class:{"speed-dial-action":!0,[`speed-dial-${t.variant||this.variant}`]:!0,[`speed-dial-variant-${t.variant||this.variant}`]:!0,[`speed-dial-shape-${t.shape||this.shape}`]:!0,[`speed-dial-${t.color||this.color}`]:!0,"speed-dial-action-disabled":t.disabled},onClick:()=>this.handleActionClick(t),disabled:t.disabled,ariaLabel:t.label,style:{backgroundColor:t.color||void 0}},a("span",{class:"speed-dial-action-icon"},a("ui-icon",{name:t.icon,library:t.iconLibrary||this.actionLibrary,size:"1.25em"})),t.badge&&a("span",{class:"speed-dial-action-badge",style:{backgroundColor:t.badgeColor}},t.badge),t.shortcut&&a("span",{class:"speed-dial-action-shortcut"},t.shortcut)),this.showTooltips&&t.label&&a("div",{class:{"speed-dial-tooltip":!0,[`speed-dial-tooltip-${i}`]:!0,"speed-dial-tooltip-hidden":this.labelHide}},t.label))}))),a("ui-button",{key:"3a6825fce27f39d7a4a689b4e860b7363b34e67f",variant:"ghost",class:r,onClick:this.toggleDial,ariaLabel:"Speed dial menu","aria-expanded":this.isOpen?"true":"false","aria-haspopup":"true",ref:t=>this.mainButton=t},a("slot",{key:"b59d109049ce98eae735d4e598a929669171d247",name:"trigger-icon"},a("span",{key:"3d3c55dbbd3b67ade9dbd28a66b60feb2483e12a",class:"speed-dial-icon"},a("ui-icon",{key:"b0c231ad4fe207ca18e2b8efcf8ad891072d7c65",name:this.isOpen&&this.toggleIcon?this.toggleIcon:this.icon,library:this.iconLibrary,size:"1.5rem"}))))))}static get watchers(){return{isOpen:[{handleOpenChange:0}]}}};o.style='.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;z-index:1000;position:fixed;left:auto;right:auto;top:auto;bottom:auto}:host(.speed-dial-strategy-absolute){position:absolute}:host(.speed-dial-strategy-fixed){position:fixed}.speed-dial-container{position:relative}:host(.speed-dial-top-left){top:var(--speed-dial-top, 24px);left:var(--speed-dial-left, 24px)}:host(.speed-dial-top-right){top:var(--speed-dial-top, 24px);right:var(--speed-dial-right, 24px)}:host(.speed-dial-bottom-left){bottom:var(--speed-dial-bottom, 24px);left:var(--speed-dial-left, 24px)}:host(.speed-dial-bottom-right){bottom:var(--speed-dial-bottom, 24px);right:var(--speed-dial-right, 24px)}:host(.speed-dial-center),:host(.speed-dial-bottom-center){left:50%;bottom:var(--speed-dial-bottom, 24px);transform:translateX(-50%)}:host(.speed-dial-top-center){left:50%;top:var(--speed-dial-top, 24px);transform:translateX(-50%)}:host(.speed-dial-center-left){left:var(--speed-dial-left, 24px);top:50%;transform:translateY(-50%)}:host(.speed-dial-center-right){right:var(--speed-dial-right, 24px);top:50%;transform:translateY(-50%)}.speed-dial-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;opacity:0;animation:fadeIn 0.2s forwards;z-index:-1}.speed-dial-glassy .speed-dial-backdrop{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@keyframes fadeIn{to{opacity:1}}.speed-dial-button{position:relative;z-index:2;display:flex !important;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);outline:none;-webkit-tap-highlight-color:transparent;background:transparent !important;border:none;padding:0;margin:0}.speed-dial-elastic .speed-dial-button{animation:speed-dial-elastic-anim 0.4s cubic-bezier(0.34, 1.56, 0.64, 1)}@keyframes speed-dial-elastic-anim{0%{transform:scale(1)}30%{transform:scale(1.15, 0.85)}60%{transform:scale(0.9, 1.1)}100%{transform:scale(1)}}.speed-dial-button:hover{box-shadow:0 6px 12px rgba(0, 0, 0, 0.3);transform:scale(1.05)}.speed-dial-button:active{transform:scale(0.95)}.speed-dial-button-open:not(.speed-dial-button-has-toggle-icon){transform:rotate(45deg)}.speed-dial-button-open:not(.speed-dial-button-has-toggle-icon):hover{transform:rotate(45deg) scale(1.05)}.speed-dial-sm .speed-dial-button{width:40px;height:40px;font-size:18px}.speed-dial-sm .speed-dial-button{width:40px;height:40px;font-size:20px}.speed-dial-md .speed-dial-button{width:56px;height:56px;font-size:24px}.speed-dial-lg .speed-dial-button{width:72px;height:72px;font-size:32px}.speed-dial-icon{transition:transform 0.3s cubic-bezier(0.4, 0, 0.2, 1)}.speed-dial-actions{position:absolute;display:flex;gap:12px;z-index:1}.speed-dial-actions-up{flex-direction:column-reverse;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:12px}.speed-dial-actions-down{flex-direction:column;top:100%;left:50%;transform:translateX(-50%);margin-top:12px}.speed-dial-actions-left{flex-direction:row-reverse;right:100%;top:50%;transform:translateY(-50%);margin-right:12px}.speed-dial-actions-right{flex-direction:row;left:100%;top:50%;transform:translateY(-50%);margin-left:12px}.speed-dial-layout-radial,.speed-dial-layout-arc{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:0;height:0;overflow:visible}.speed-dial-layout-radial .speed-dial-action-wrapper,.speed-dial-layout-arc .speed-dial-action-wrapper{position:absolute;top:50%;left:50%;margin:-24px;transform-origin:center center;transition:all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);--angle:var(--item-angle, 0deg);--radius:100px;transform:rotate(var(--angle)) translate(var(--radius)) rotate(calc(-1 * var(--angle))) scale(0);opacity:0}.speed-dial-open .speed-dial-layout-radial .speed-dial-action-wrapper,.speed-dial-open .speed-dial-layout-arc .speed-dial-action-wrapper{transform:rotate(var(--angle)) translate(var(--radius)) rotate(calc(-1 * var(--angle))) scale(1);opacity:1}.speed-dial-action-wrapper{position:relative;opacity:0;transform:scale(0);animation:actionAppear 0.2s cubic-bezier(0.4, 0, 0.2, 1) forwards}@keyframes actionAppear{from{opacity:0;transform:translate(0, 0) scale(0)}to{opacity:1;transform:var(--translation, translate(0, 0)) scale(1)}}.speed-dial-layout-linear .speed-dial-action-wrapper{--translation:translate(0, 0)}.speed-dial-layout-radial .speed-dial-action-wrapper,.speed-dial-layout-arc .speed-dial-action-wrapper{--translation:translate(calc(cos(var(--angle)) * var(--radius)), calc(sin(var(--angle)) * -1 * var(--radius)))}.speed-dial-action{display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s ease;background:transparent !important;border:none}.speed-dial-sm .speed-dial-action{width:36px;height:36px;font-size:16px}.speed-dial-md .speed-dial-action{width:48px;height:48px;font-size:20px}.speed-dial-lg .speed-dial-action{width:60px;height:60px;font-size:24px}.speed-dial-action:hover:not(.speed-dial-action-disabled){box-shadow:0 4px 10px rgba(0, 0, 0, 0.3);transform:scale(1.1)}.speed-dial-action:active:not(.speed-dial-action-disabled){transform:scale(0.95)}.speed-dial-action-disabled{opacity:0.5;cursor:not-allowed}.speed-dial-action-icon{display:flex;align-items:center;justify-content:center}.speed-dial-action-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background-color:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0, 0, 0, 0.2);border:2px solid var(--bg-primary, #ffffff)}.speed-dial-action-shortcut{position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);background:var(--color-primary, #374151);color:var(--text-standard, #ffffff);font-size:8px;padding:1px 4px;border-radius:4px;font-weight:700;text-transform:uppercase;z-index:1000;pointer-events:none}.speed-dial-action-shortcut.speed-dial-dragging{pointer-events:auto;z-index:2000}.speed-dial-action-shortcut{opacity:0.8}.speed-dial-tooltip{position:absolute;background-color:rgba(0, 0, 0, 0.85);color:var(--text-standard, #ffffff);padding:6px 12px;border-radius:4px;font-size:12px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity 0.2s ease;z-index:1001}.speed-dial-action-wrapper:hover .speed-dial-tooltip{opacity:1}.speed-dial-tooltip-left{right:100%;top:50%;transform:translateY(-50%);margin-right:8px}.speed-dial-tooltip-right{left:100%;top:50%;transform:translateY(-50%);margin-left:8px}.speed-dial-tooltip-top{bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:8px}.speed-dial-tooltip-bottom{top:100%;left:50%;transform:translateX(-50%);margin-top:8px}.speed-dial-tooltip::after{content:"";position:absolute;width:0;height:0;border:4px solid transparent}.speed-dial-tooltip-left::after{right:-8px;top:50%;transform:translateY(-50%);border-left-color:rgba(0, 0, 0, 0.85)}.speed-dial-tooltip-right::after{left:-8px;top:50%;transform:translateY(-50%);border-right-color:rgba(0, 0, 0, 0.85)}.speed-dial-tooltip-top::after{bottom:-8px;left:50%;transform:translateX(-50%);border-top-color:rgba(0, 0, 0, 0.85)}.speed-dial-tooltip-bottom::after{top:-8px;left:50%;transform:translateX(-50%);border-bottom-color:rgba(0, 0, 0, 0.85)}.speed-dial-button:focus-visible,.speed-dial-action:focus-visible{outline:2px solid var(--color-primary-hover, #2563eb);outline-offset:2px}';export{o as ui_speed_dial}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e,c,a as o,h as t}from"./p-Dqu2zaH1.js";import{n as r}from"./p-C7gf39HE.js";const i=class{constructor(o){e(this,o),this.analyticsEvent=c(this,"analyticsEvent"),this.checkboxChange=c(this,"checkboxChange"),this.checkboxFocus=c(this,"checkboxFocus"),this.checkboxBlur=c(this,"checkboxBlur")}analyticsEvent;customClass;badge;tooltip;tooltipPosition="top";get el(){return o(this)}internals;inputElement;async setFocus(){this.inputElement?.focus()}checked=!1;indeterminate=!1;disabled=!1;readonly=!1;required=!1;invalid=!1;label="";helperText="";errorMessage="";value="";name="";size="md";color="primary";variant="default";skeleton=!1;labelPosition="right";customCheckIcon="";customIndeterminateIcon="";customImage="";customIconLibrary="lucide";checkboxTabIndex=0;ariaLabel="";ariaDescribedBy="";enableAnimation=!0;rippleEffect=!0;labelClickable=!0;rtl=!1;description="";descriptionPosition="below";confetti=!1;glow=!1;haptic=!1;hapticIntensity="light";reveal="none";revealDelay=0;isButton=!1;isFocused=!1;isHovered=!1;particles=[];checkboxChange;checkboxFocus;checkboxBlur;componentWillLoad(){this.internals=this.el.attachInternals(),this.updateFormValue(),this.updateIndeterminateState()}formResetCallback(){this.checked=!1,this.indeterminate=!1,this.updateFormValue()}updateIndeterminateState(){this.inputElement&&(this.inputElement.indeterminate=this.indeterminate)}handleChange=e=>{this.disabled||this.readonly?e.preventDefault():(this.checked=e.target.checked,this.indeterminate=!1,this.haptic&&this.triggerHaptic(this.hapticIntensity),this.confetti&&this.checked&&this.triggerConfetti(),this.updateFormValue(),this.checkboxChange.emit({checked:this.checked,value:this.value,indeterminate:this.indeterminate}),this.analyticsEvent.emit({checked:this.checked,value:this.value,indeterminate:this.indeterminate}))};updateFormValue(){this.internals.setFormValue(this.checked?this.value||"on":null)}triggerHaptic(e="light"){window.navigator.vibrate&&window.navigator.vibrate("heavy"===e?[50,20,50]:"md"===e?[30]:[10])}triggerConfetti(){const e=Array.from({length:15}).map(((e,c)=>({id:Date.now()+c,x:50,y:50,vx:8*(Math.random()-.5),vy:8*(Math.random()-.5),r:360*Math.random(),color:["#3DCD58","#4ade80","#ffffff"][Math.floor(3*Math.random())],size:6*Math.random()+4})));this.particles=[...e],setTimeout((()=>this.particles=[]),800)}handleFocus=()=>{this.disabled||(this.isFocused=!0,this.checkboxFocus.emit())};handleBlur=()=>{this.isFocused=!1,this.checkboxBlur.emit()};handleMouseEnter=()=>{this.disabled||(this.isHovered=!0)};handleMouseLeave=()=>{this.isHovered=!1};handleKeyDown=e=>{this.disabled||this.readonly||" "!==e.key&&"Enter"!==e.key||(e.preventDefault(),this.checked=!this.checked,this.indeterminate=!1,this.checkboxChange.emit({checked:this.checked,value:this.value,indeterminate:this.indeterminate}))};renderCheckmark(){return this.checked||this.indeterminate?this.customImage?t("img",{src:this.customImage,class:"custom-image-mark"}):this.indeterminate&&this.customIndeterminateIcon?t("ui-icon",{name:this.customIndeterminateIcon,library:this.customIconLibrary,class:"custom-icon-mark"}):!this.indeterminate&&this.customCheckIcon?t("ui-icon",{name:this.customCheckIcon,library:this.customIconLibrary,class:"custom-icon-mark"}):t("svg",{class:"checkmark-svg",viewBox:"0 0 24 24"},t("path",this.indeterminate?{class:"indeterminate-path",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round",d:"M5 12h14"}:{class:"checkmark-path",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",d:"M5 13l4 4L19 7"})):null}renderLabel(){return this.label?t("div",{class:`label-section is-${this.descriptionPosition}`},t("span",{class:{"checkbox-label-text":!0,"non-clickable":!this.labelClickable},onClick:e=>{this.labelClickable||e.preventDefault()}},this.label,this.required&&t("span",{class:"required-indicator"},"*")),this.description&&t("span",{class:"checkbox-description"},this.description)):null}renderHelperText(){return this.invalid&&this.errorMessage?t("div",{class:"helper-text error"},t("ui-icon",{name:"exclamation-circle",library:"fontawesome",size:"14px"}),this.errorMessage):this.helperText?t("div",{class:"helper-text"},this.helperText):null}render(){const e=r(this.size,"md"),c={"checkbox-container":!0,[`checkbox-${e}`]:!0,[`checkbox-${this.color}`]:!0,[`checkbox-${this.variant}`]:!0,"checkbox-disabled":this.disabled,"checkbox-readonly":this.readonly,"checkbox-invalid":this.invalid,"checkbox-focused":this.isFocused,"checkbox-hovered":this.isHovered,[`checkbox-label-${this.labelPosition}`]:!0,"checkbox-animate":this.enableAnimation,"checkbox-skeleton":this.skeleton,"checkbox-checked":this.checked,"checkbox-indeterminate":this.indeterminate,"checkbox-rtl":this.rtl,"checkbox-glow":this.glow,"checkbox-is-button":this.isButton,[`checkbox-reveal-${this.reveal}`]:"none"!==this.reveal,...this.customClass?{[this.customClass]:!0}:{}},o={"checkbox-input-wrapper":!0,"checkbox-checked":this.checked,"checkbox-indeterminate":this.indeterminate,"checkbox-ripple":this.rippleEffect&&!this.disabled};return t("div",{key:"673150aaef8e061ffa6707069559d0c8c7443fc3",class:c,dir:this.rtl?"rtl":"ltr",style:{"--reveal-delay":`${this.revealDelay}ms`}},t("label",{key:"3f5ee2f5bb51d48665ee7c474fcb391b6935a2d3",class:"checkbox-label",onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave},("left"===this.labelPosition||"top"===this.labelPosition)&&this.renderLabel(),t("div",{key:"2c6cf630253c513b809f538a3eb242a85ed35de2",class:o},t("input",{key:"0a8619f9539cdf9e4c204d1624ee04af795c705d",ref:e=>this.inputElement=e,type:"checkbox",class:"checkbox-input",checked:this.checked,disabled:this.disabled,readonly:this.readonly,required:this.required,value:this.value,name:this.name,tabindex:this.checkboxTabIndex,"aria-label":this.ariaLabel||this.label,"aria-describedby":this.ariaDescribedBy,"aria-checked":this.indeterminate?"mixed":this.checked.toString(),"aria-invalid":this.invalid.toString(),onChange:this.handleChange,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown}),t("div",{key:"4b9e1d7467487f5e099f79334e80be33cf79aa46",class:"checkbox-box"},t("div",{key:"7214d1c9b1ed15c2de19011566764e4961919ef0",class:"glow-layer"}),this.renderCheckmark(),this.particles.map((e=>t("span",{class:"btn-confetti",key:e.id,style:{left:`${e.x}%`,top:`${e.y}%`,"--vx":`${e.vx}px`,"--vy":`${e.vy}px`,"--vr":`${e.r}deg`,backgroundColor:e.color,width:`${e.size}px`,height:`${e.size}px`}})))),this.badge&&t("span",{key:"370c8a224d1234ca2c83cfda6bc18d1af4a9f29d",class:"checkbox-badge"},this.badge),this.tooltip&&t("div",{key:"eb8c1e6a57151d12846e897b79ec86c9256cdf4b",class:`checkbox-tooltip checkbox-tooltip-${this.tooltipPosition}`},this.tooltip)),("right"===this.labelPosition||"bottom"===this.labelPosition)&&this.renderLabel()),this.renderHelperText())}static get delegatesFocus(){return!0}static get formAssociated(){return!0}static get watchers(){return{indeterminate:[{updateIndeterminateState:0}]}}};i.style='.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.checkbox-badge{display:inline-block;min-width:18px;height:18px;padding:0 6px;background:var(--color-success, #3dcd58);color:var(--text-standard, #ffffff);font-size:10px;font-weight:700;border-radius:9px;margin-inline-start:8px;vertical-align:middle;text-align:center;line-height:18px;box-shadow:0 2px 4px rgba(var(--color-success-rgb, 61, 205, 88), 0.2)}.btn-confetti{position:absolute;border-radius:50%;pointer-events:none;z-index:100;animation:confetti-drift 0.8s ease-out forwards}@keyframes confetti-drift{0%{transform:translate(0, 0) scale(1) rotate(0deg);opacity:1}100%{transform:translate(var(--vx), var(--vy)) scale(0) rotate(var(--vr));opacity:0}}[class*=checkbox-reveal-]{opacity:0;animation-fill-mode:forwards;animation-delay:var(--reveal-delay, 0ms)}.checkbox-reveal-fade-in{animation:checkbox-fade-in 0.6s ease-out forwards}.checkbox-reveal-slide-up{animation:checkbox-slide-up 0.6s cubic-bezier(0.23, 1, 0.32, 1) forwards}.checkbox-reveal-zoom{animation:checkbox-zoom 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards}@keyframes checkbox-fade-in{from{opacity:0}to{opacity:1}}@keyframes checkbox-slide-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes checkbox-zoom{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:scale(1)}}.checkbox-tooltip{position:absolute;background:var(--bg-primary, #1f2937);color:var(--text-standard, #ffffff);padding:6px 12px;border-radius:6px;font-size:12px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity 0.2s ease;z-index:10}.checkbox-input-wrapper:hover .checkbox-tooltip{opacity:1}.checkbox-tooltip-top{bottom:calc(100% + 10px);left:50%;transform:translateX(-50%)}.checkbox-tooltip-bottom{top:calc(100% + 10px);left:50%;transform:translateX(-50%)}.checkbox-tooltip-left{inset-inline-end:calc(100% + 10px);top:50%;transform:translateY(-50%)}.checkbox-tooltip-right{inset-inline-start:calc(100% + 10px);top:50%;transform:translateY(-50%)}:host{display:inline-block;--ui-checkbox-border:var(--border-strong, #bfc8d8);--ui-checkbox-border-hover:var(--color-primary, #94a3b8);--ui-checkbox-bg:var(--bg-primary, #ffffff);--ui-checkbox-checked-bg:var(--color-primary, #3b82f6);--text-primary:var(--label-color, inherit);--text-secondary:var(--label-subtitle-color, inherit);--error-color-light:var(--bg-secondary, #fef2f2)}:host-context(.dark),:host-context([data-theme=dark]),:host-context([data-theme=violet]),:host-context([data-theme=pink]),:host-context([data-theme=blue]),:host-context([data-theme=green]),:host(.dark){--ui-checkbox-border:var(--border-strong, #334155);--ui-checkbox-border-hover:var(--color-primary, #475569);--ui-checkbox-bg:var(--bg-primary, #1e293b);--ui-checkbox-checked-bg:var(--color-primary, #4ade80)}.checkbox-container{display:inline-flex;flex-direction:column;gap:4px;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;vertical-align:middle;box-sizing:border-box;color:inherit}.checkbox-container.checkbox-rtl{direction:rtl}.checkbox-container *{box-sizing:border-box}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;user-select:none;position:relative;transition:all 0.2s ease}.checkbox-label-top .checkbox-label{flex-direction:column;align-items:flex-start;gap:8px}.checkbox-label-top .checkbox-label .checkbox-label-text{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;opacity:0.65;color:var(--text-primary)}.checkbox-label-bottom .checkbox-label{flex-direction:column-reverse;align-items:flex-start;gap:8px}.checkbox-label-bottom .checkbox-label .checkbox-label-text{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;opacity:0.65;color:var(--text-primary)}.checkbox-label-left .checkbox-label{flex-direction:row-reverse;justify-content:flex-end}.checkbox-container.checkbox-disabled .checkbox-label{cursor:not-allowed;opacity:0.6}.checkbox-container.checkbox-readonly .checkbox-label{cursor:default}.label-section{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.label-section.is-side{flex-direction:row;align-items:baseline;gap:8px}.label-section.is-side .checkbox-description{margin-top:0}.checkbox-description{font-size:0.75rem;opacity:0.7;font-weight:400;line-height:1.1;margin-top:2px;color:var(--text-secondary)}.checkbox-input-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;border-radius:inherit}.checkbox-input{position:absolute;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;padding:0;z-index:1;appearance:none;-webkit-appearance:none;-moz-appearance:none}.checkbox-box{position:relative;display:flex;align-items:center;justify-content:center;border:2px solid var(--ui-checkbox-border);background:var(--ui-checkbox-bg);transition:all 0.35s cubic-bezier(0.4, 0, 0.2, 1);box-shadow:0 1px 2px rgba(0, 0, 0, 0.05)}.checkbox-box .glow-layer{position:absolute;inset:-4px;background:var(--ui-checkbox-color, var(--ui-checkbox-checked-bg, var(--color-primary, #3b82f6)));opacity:0;filter:blur(12px);transition:opacity 0.4s ease;border-radius:inherit;z-index:-1;pointer-events:none}.checkbox-glow.checkbox-checked .checkbox-box .glow-layer{opacity:0.4}.checkbox-xxxs .checkbox-box{width:12px;height:12px;border-radius:3px}.checkbox-xxxs .check-icon{font-size:8px;width:8px;height:8px;display:flex;align-items:center;justify-content:center}.checkbox-xxxs .checkbox-label-text{font-size:0.75rem;line-height:1.25}.checkbox-xxs .checkbox-box{width:14px;height:14px;border-radius:4px}.checkbox-xxs .check-icon{font-size:9px;width:9px;height:9px;display:flex;align-items:center;justify-content:center}.checkbox-xxs .checkbox-label-text{font-size:0.8125rem;line-height:1.25}.checkbox-xs .checkbox-box{width:16px;height:16px;border-radius:4px}.checkbox-xs .check-icon{font-size:10px;width:10px;height:10px;display:flex;align-items:center;justify-content:center}.checkbox-xs .checkbox-label-text{font-size:0.875rem;line-height:1.5}.checkbox-sm .checkbox-box{width:18px;height:18px;border-radius:5px}.checkbox-sm .check-icon{font-size:11px;width:11px;height:11px;display:flex;align-items:center;justify-content:center}.checkbox-sm .checkbox-label-text{font-size:0.9375rem;line-height:1.5}.checkbox-md .checkbox-box{width:20px;height:20px;border-radius:6px}.checkbox-md .check-icon{font-size:12px;width:12px;height:12px;display:flex;align-items:center;justify-content:center}.checkbox-md .checkbox-label-text{font-size:1rem;line-height:1.5}.checkbox-lg .checkbox-box{width:24px;height:24px;border-radius:8px}.checkbox-lg .check-icon{font-size:14px;width:14px;height:14px;display:flex;align-items:center;justify-content:center}.checkbox-lg .checkbox-label-text{font-size:1.125rem;line-height:1.5}.checkbox-xl .checkbox-box{width:28px;height:28px;border-radius:10px}.checkbox-xl .check-icon{font-size:16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.checkbox-xl .checkbox-label-text{font-size:1.25rem;line-height:1.5}.checkbox-xxl .checkbox-box{width:32px;height:32px;border-radius:12px}.checkbox-xxl .check-icon{font-size:18px;width:18px;height:18px;display:flex;align-items:center;justify-content:center}.checkbox-xxl .checkbox-label-text{font-size:1.375rem;line-height:1.5}.checkbox-xxxl .checkbox-box{width:40px;height:40px;border-radius:14px}.checkbox-xxxl .check-icon{font-size:24px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.checkbox-xxxl .checkbox-label-text{font-size:1.5rem;line-height:1.5}.checkbox-rounded .checkbox-box{border-radius:50%}.checkbox-square .checkbox-box{border-radius:0}.checkbox-glass .checkbox-box{background:rgba(255, 255, 255, 0.1) !important;backdrop-filter:blur(8px);border-color:rgba(255, 255, 255, 0.2) !important;border-width:1.5px}.checkbox-glass.checkbox-checked .checkbox-box{background:currentColor !important;backdrop-filter:none}.checkbox-raised .checkbox-box{border-color:rgba(0, 0, 0, 0.1);box-shadow:inset 0 1px 1px rgba(255, 255, 255, 0.8), 0 2px 4px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.05) !important}.checkbox-button,.checkbox-chip{width:auto}.checkbox-button .checkbox-label,.checkbox-chip .checkbox-label{padding:8px 16px;border:2px solid var(--border-color, var(--border-default, #e5e7eb));border-radius:8px;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);background:var(--surface-color, var(--bg-primary, #ffffff));line-height:1.5;box-sizing:border-box;min-height:40px}.checkbox-button .checkbox-box,.checkbox-chip .checkbox-box{margin-inline-end:8px;transform:scale(0.85)}.checkbox-button.checkbox-primary.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-primary.checkbox-checked .checkbox-label{background:rgba(var(--color-success-rgb, 61, 205, 88), 0.1);border-color:var(--color-success, #3dcd58)}.checkbox-button.checkbox-secondary.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-secondary.checkbox-checked .checkbox-label{background:rgba(107, 114, 128, 0.1);border-color:var(--color-primary, #6b7280)}.checkbox-button.checkbox-success.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-success.checkbox-checked .checkbox-label{background:rgba(22, 163, 74, 0.1);border-color:var(--color-success, #16a34a)}.checkbox-button.checkbox-danger.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-danger.checkbox-checked .checkbox-label{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.1);border-color:var(--color-danger-hover, #dc2626)}.checkbox-button.checkbox-warning.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-warning.checkbox-checked .checkbox-label{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.1);border-color:var(--color-warning, #f59e0b)}.checkbox-button.checkbox-info.checkbox-checked .checkbox-label,.checkbox-chip.checkbox-info.checkbox-checked .checkbox-label{background:rgba(8, 145, 178, 0.1);border-color:var(--color-info-hover, #0891b2)}.checkbox-button.checkbox-hovered:not(.checkbox-disabled) .checkbox-label,.checkbox-chip.checkbox-hovered:not(.checkbox-disabled) .checkbox-label{box-shadow:0 4px 12px rgba(0, 0, 0, 0.08);transform:translateY(-1px)}.checkbox-chip .checkbox-label{border-radius:20px;padding:4px 12px;min-height:32px}.checkbox-animate .checkbox-box::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--ui-checkbox-color, var(--ui-checkbox-checked-bg, var(--color-primary, #3b82f6)));transform:scale(0);transition:transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);border-radius:inherit;z-index:0}.checkbox-animate .checkbox-checked .checkbox-box::after,.checkbox-animate .checkbox-indeterminate .checkbox-box::after{transform:scale(1)}.checkbox-animate .checkbox-checked .check-icon,.checkbox-animate .checkbox-indeterminate .check-icon{z-index:1;animation:checkmark-pop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards}.checkbox-primary{--ui-checkbox-color:var(--color-primary, #3b82f6)}.checkbox-secondary{--ui-checkbox-color:var(--text-muted, #6b7280)}.checkbox-success{--ui-checkbox-color:var(--color-success, #16a34a)}.checkbox-danger{--ui-checkbox-color:var(--color-danger-hover, #dc2626)}.checkbox-warning{--ui-checkbox-color:var(--color-warning, #f59e0b)}.checkbox-info{--ui-checkbox-color:var(--color-info-hover, #0891b2)}.checkbox-checked .checkbox-box,.checkbox-indeterminate .checkbox-box{background:var(--ui-checkbox-color, var(--ui-checkbox-checked-bg, var(--color-primary, #3b82f6)));border-color:var(--ui-checkbox-color, var(--ui-checkbox-checked-bg, var(--color-primary, #3b82f6)))}.checkbox-box{background:var(--ui-checkbox-bg);border-color:var(--ui-checkbox-border)}.checkmark-svg{width:100%;height:100%;display:block;padding:10%;color:var(--text-standard, #ffffff);z-index:2}.custom-image-mark{width:100%;height:100%;object-fit:contain;border-radius:inherit;z-index:2}.custom-icon-mark{z-index:2;color:var(--text-standard, #ffffff)}.checkmark-path{stroke-dasharray:48;stroke-dashoffset:48;transition:stroke-dashoffset 0.4s cubic-bezier(0.19, 1, 0.22, 1) 0.1s}.checkbox-checked .checkmark-path{stroke-dashoffset:0}.indeterminate-path{stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset 0.3s ease}.checkbox-indeterminate .indeterminate-path{stroke-dashoffset:0}.checkbox-checked .check-icon,.checkbox-indeterminate .check-icon{transform:scale(1)}@keyframes checkmark-pop{0%{transform:scale(0) rotate(-45deg)}70%{transform:scale(1.2) rotate(0deg)}100%{transform:scale(1) rotate(0deg)}}.checkbox-focused .checkbox-box{box-shadow:0 0 0 3px rgba(var(--color-success-rgb, 61, 205, 88), 0.2);border-color:var(--ui-checkbox-checked-bg)}.checkbox-hovered:not(.checkbox-disabled):not(.checkbox-readonly) .checkbox-box{border-color:var(--ui-checkbox-border-hover)}.checkbox-ripple .checkbox-box::before{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;transform:translate(-50%, -50%) scale(0);background:rgba(0, 0, 0, 0.1);pointer-events:none}.checkbox-ripple .checkbox-input:active~.checkbox-box::before{animation:ripple 0.6s ease}@keyframes ripple{0%{transform:translate(-50%, -50%) scale(0);opacity:1}100%{transform:translate(-50%, -50%) scale(3);opacity:0}}.checkbox-skeleton{pointer-events:none}.checkbox-skeleton .checkbox-box{background:var(--bg-primary, #e5e7eb) !important;border-color:var(--border-default, #e5e7eb) !important;animation:skeleton-shimmer 1.5s infinite linear;background:linear-gradient(90deg, var(--bg-primary, #e5e7eb) 25%, var(--bg-secondary, #f3f4f6) 50%, var(--bg-primary, #e5e7eb) 75%) !important;background-size:200% 100% !important}.checkbox-skeleton .checkbox-label-text{width:100px;height:1rem;background:var(--bg-primary, #e5e7eb);border-radius:4px;color:transparent;animation:skeleton-shimmer 1.5s infinite linear;background:linear-gradient(90deg, var(--bg-primary, #e5e7eb) 25%, var(--bg-secondary, #f3f4f6) 50%, var(--bg-primary, #e5e7eb) 75%);background-size:200% 100%}@keyframes skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.checkbox-label-text{color:var(--text-primary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;opacity:0.65;display:inline-block;line-height:1.5}.required-indicator{color:var(--color-danger-hover, #dc2626);margin-inline-start:4px}.helper-text{font-size:0.875rem;color:var(--text-secondary);margin-inline-start:32px;display:flex;align-items:center;gap:4px}.checkbox-label-left .helper-text{margin-inline-start:0;margin-inline-end:32px}.checkbox-label-top .helper-text,.checkbox-label-bottom .helper-text{margin-inline-start:0;justify-content:center}.helper-text.error{color:var(--color-danger-hover, #dc2626)}.checkbox-invalid .checkbox-box{border-color:var(--color-danger-hover, #dc2626)}.checkbox-invalid:not(.checkbox-checked):not(.checkbox-indeterminate) .checkbox-box{background:var(--error-color-light, #fef2f2)}.checkbox-is-button{width:100%;height:100%}.checkbox-is-button .checkbox-label{padding:8px 16px;justify-content:center;background:var(--ui-checkbox-bg);transition:all 0.2s ease;width:100%;height:100%;border-radius:0;border:1px solid var(--ui-checkbox-border)}.checkbox-is-button .checkbox-label:hover:not(.checkbox-disabled){background:rgba(0, 0, 0, 0.02)}.checkbox-is-button .checkbox-box{margin-inline-end:8px;transform:scale(0.85)}.checkbox-is-button.checkbox-checked .checkbox-label{background:var(--ui-checkbox-checked-bg);color:var(--color-primary-text, #ffffff);z-index:1;border-color:var(--ui-checkbox-checked-bg)}.checkbox-is-button.checkbox-secondary.checkbox-checked .checkbox-label{background:var(--color-primary, #6b7280);border-color:var(--color-primary, #6b7280)}.checkbox-is-button.checkbox-success.checkbox-checked .checkbox-label{background:var(--color-success, #16a34a);border-color:var(--color-success, #16a34a)}.checkbox-is-button.checkbox-danger.checkbox-checked .checkbox-label{background:var(--color-danger-hover, #dc2626);border-color:var(--color-danger-hover, #dc2626)}.checkbox-is-button.checkbox-warning.checkbox-checked .checkbox-label{background:var(--color-warning, #f59e0b);border-color:var(--color-warning, #f59e0b)}.checkbox-is-button.checkbox-info.checkbox-checked .checkbox-label{background:var(--color-info-hover, #0891b2);border-color:var(--color-info-hover, #0891b2)}.checkbox-is-button+.checkbox-is-button .checkbox-label{margin-inline-start:-1px}';export{i as ui_checkbox}
|