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
|
@@ -22,10 +22,11 @@ export class FileUpload {
|
|
|
22
22
|
showPreview = true;
|
|
23
23
|
/** Disabled */
|
|
24
24
|
disabled = false;
|
|
25
|
-
/** Variant: 'dropzone' | 'button' | 'compact' | 'sideload' */
|
|
25
|
+
/** Variant: 'dropzone' | 'button' | 'compact' | 'inline' | 'sideload' */
|
|
26
26
|
variant = 'dropzone';
|
|
27
|
-
/**
|
|
28
|
-
|
|
27
|
+
/** Custom upload icon: pass a lucide icon name (e.g. "file-plus") or any emoji/text.
|
|
28
|
+
* Defaults to the upload-cloud lucide icon when left empty. */
|
|
29
|
+
uploadIcon = '';
|
|
29
30
|
/** RTL support */
|
|
30
31
|
rtl = false;
|
|
31
32
|
/** Capture attribute for mobile camera */
|
|
@@ -36,12 +37,16 @@ export class FileUpload {
|
|
|
36
37
|
fileNamePattern = '';
|
|
37
38
|
/** Show manual validate button */
|
|
38
39
|
showValidateButton = false;
|
|
39
|
-
/** Show manual upload button */
|
|
40
|
+
/** Show manual upload button — overrides auto-upload when true */
|
|
40
41
|
showUploadButton = false;
|
|
41
|
-
/**
|
|
42
|
+
/** When true (default), upload begins immediately after files are selected.
|
|
43
|
+
* When false, files stay in "Ready" state until the user clicks the Upload button inside the queue dialog. */
|
|
42
44
|
autoUpload = true;
|
|
43
45
|
/** Automatically emit completion event and hide list when all files succeed */
|
|
44
46
|
autoCloseOnSuccess = false;
|
|
47
|
+
/** Allow the user to select an entire folder instead of individual files.
|
|
48
|
+
* Sets webkitdirectory on the hidden input. Implicitly enables multiple. */
|
|
49
|
+
directory = false;
|
|
45
50
|
/** Integrated header title (for sideload variant) */
|
|
46
51
|
headerTitle = '';
|
|
47
52
|
isDragging = false;
|
|
@@ -49,6 +54,10 @@ export class FileUpload {
|
|
|
49
54
|
errors = [];
|
|
50
55
|
/** Overall component state: 'idle' | 'validating' | 'uploading' | 'success' | 'error' */
|
|
51
56
|
componentStatus = 'idle';
|
|
57
|
+
/** Whether the queue management dialog is visible */
|
|
58
|
+
isQueueOpen = false;
|
|
59
|
+
/** Index of the file currently shown in the preview dialog (-1 = closed) */
|
|
60
|
+
previewFileIndex = -1;
|
|
52
61
|
uploadIntervals = {};
|
|
53
62
|
fileSelect;
|
|
54
63
|
fileRemove;
|
|
@@ -112,6 +121,8 @@ export class FileUpload {
|
|
|
112
121
|
this.files = [];
|
|
113
122
|
this.errors = [];
|
|
114
123
|
this.componentStatus = 'idle';
|
|
124
|
+
this.isQueueOpen = false;
|
|
125
|
+
this.previewFileIndex = -1;
|
|
115
126
|
}
|
|
116
127
|
formatSize(bytes) {
|
|
117
128
|
if (bytes < 1024)
|
|
@@ -198,6 +209,15 @@ export class FileUpload {
|
|
|
198
209
|
if (fileNameError) {
|
|
199
210
|
validationErrors.push(fileNameError);
|
|
200
211
|
}
|
|
212
|
+
// Empty file check — must come before size-range checks
|
|
213
|
+
if (file.size === 0) {
|
|
214
|
+
validationErrors.push({
|
|
215
|
+
fileName: file.name,
|
|
216
|
+
message: `${file.name} is empty (0 KB) and cannot be uploaded`,
|
|
217
|
+
rule: 'empty-file',
|
|
218
|
+
});
|
|
219
|
+
return validationErrors; // skip further size checks on an empty file
|
|
220
|
+
}
|
|
201
221
|
if (this.minSize > 0 && file.size < this.minSize) {
|
|
202
222
|
validationErrors.push({
|
|
203
223
|
fileName: file.name,
|
|
@@ -255,11 +275,6 @@ export class FileUpload {
|
|
|
255
275
|
uf.errorMessage = `Duplicate detected: "${file.name}"`;
|
|
256
276
|
validationErrors.push({ fileName: file.name, message: uf.errorMessage, rule: 'duplicate-file' });
|
|
257
277
|
}
|
|
258
|
-
if (file.size === 0) {
|
|
259
|
-
uf.status = 'error';
|
|
260
|
-
uf.errorMessage = 'File is empty (0 bytes)';
|
|
261
|
-
validationErrors.push({ fileName: file.name, message: uf.errorMessage, rule: 'empty-file' });
|
|
262
|
-
}
|
|
263
278
|
const fileErrors = this.validateFile(file);
|
|
264
279
|
if (fileErrors.length > 0 && uf.status !== 'error') {
|
|
265
280
|
uf.status = 'error';
|
|
@@ -277,6 +292,9 @@ export class FileUpload {
|
|
|
277
292
|
});
|
|
278
293
|
this.errors = validationErrors.map(error => error.message);
|
|
279
294
|
this.files = [...this.files, ...newFiles];
|
|
295
|
+
// Auto-open the queue dialog whenever files are added
|
|
296
|
+
if (newFiles.length > 0 && this.variant !== 'sideload')
|
|
297
|
+
this.isQueueOpen = true;
|
|
280
298
|
if (this.autoUpload) {
|
|
281
299
|
newFiles.filter(f => f.status === 'pending').forEach(f => this.startSimulation(f.name));
|
|
282
300
|
}
|
|
@@ -356,47 +374,128 @@ export class FileUpload {
|
|
|
356
374
|
delete this.uploadIntervals[removed.name];
|
|
357
375
|
}
|
|
358
376
|
this.files = this.files.filter((_, i) => i !== idx);
|
|
377
|
+
// Remove validation errors that mention this file's name
|
|
378
|
+
this.errors = this.errors.filter(e => !e.includes(removed.name));
|
|
379
|
+
// Clear max-files warnings when we're now under the limit
|
|
380
|
+
if (this.files.length < this.maxFiles) {
|
|
381
|
+
this.errors = this.errors.filter(e => !e.includes('more file') && !e.includes('upload up to'));
|
|
382
|
+
}
|
|
383
|
+
// If no files left, clear all remaining errors
|
|
384
|
+
if (this.files.length === 0) {
|
|
385
|
+
this.errors = [];
|
|
386
|
+
}
|
|
359
387
|
this.fileRemove.emit(removed.name);
|
|
360
388
|
this.fileSelect.emit(this.files);
|
|
361
389
|
};
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
if (
|
|
368
|
-
return '
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
390
|
+
getFileIconStyles(type) {
|
|
391
|
+
const t = (type || '').toLowerCase();
|
|
392
|
+
if (t.startsWith('image/')) {
|
|
393
|
+
return { icon: 'image', bg: 'rgba(168, 85, 247, 0.08)', color: 'rgb(168, 85, 247)' };
|
|
394
|
+
}
|
|
395
|
+
if (t === 'application/pdf' || t.includes('pdf') || t.includes('word') || t.includes('document')) {
|
|
396
|
+
return { icon: 'file-text', bg: 'rgba(59, 130, 246, 0.08)', color: 'rgb(59, 130, 246)' };
|
|
397
|
+
}
|
|
398
|
+
if (t.includes('sheet') || t.includes('excel') || t.includes('csv') || t.includes('spreadsheet')) {
|
|
399
|
+
return { icon: 'file-spreadsheet', bg: 'rgba(16, 185, 129, 0.08)', color: 'rgb(16, 185, 129)' };
|
|
400
|
+
}
|
|
401
|
+
if (t.includes('zip') || t.includes('rar') || t.includes('tar') || t.includes('compressed') || t.includes('7z')) {
|
|
402
|
+
return { icon: 'archive', bg: 'rgba(245, 158, 11, 0.08)', color: 'rgb(245, 158, 11)' };
|
|
403
|
+
}
|
|
404
|
+
if (t.startsWith('audio/')) {
|
|
405
|
+
return { icon: 'music', bg: 'rgba(236, 72, 153, 0.08)', color: 'rgb(236, 72, 153)' };
|
|
406
|
+
}
|
|
407
|
+
if (t.startsWith('video/')) {
|
|
408
|
+
return { icon: 'video', bg: 'rgba(239, 68, 68, 0.08)', color: 'rgb(239, 68, 68)' };
|
|
409
|
+
}
|
|
410
|
+
return { icon: 'file', bg: 'rgba(107, 114, 128, 0.08)', color: 'rgb(107, 114, 128)' };
|
|
411
|
+
}
|
|
412
|
+
/** Renders the zone/trigger icon — lucide icon name, emoji text, or default upload-cloud */
|
|
413
|
+
renderUploadZoneIcon(size = '40px') {
|
|
414
|
+
if (!this.uploadIcon) {
|
|
415
|
+
// Default: use lucide upload-cloud icon
|
|
416
|
+
return h("ui-icon", { name: "upload-cloud", library: "lucide", size: size, color: "var(--color-primary, #10b981)" });
|
|
417
|
+
}
|
|
418
|
+
// Heuristic: if no spaces and only a-z/0-9/- it's a lucide icon name
|
|
419
|
+
if (/^[a-z0-9-]+$/.test(this.uploadIcon)) {
|
|
420
|
+
return h("ui-icon", { name: this.uploadIcon, library: "lucide", size: size, color: "var(--color-primary, #10b981)" });
|
|
421
|
+
}
|
|
422
|
+
// Otherwise render as emoji/text
|
|
423
|
+
return h("span", { class: "fu-upload-icon-text" }, this.uploadIcon);
|
|
424
|
+
}
|
|
425
|
+
/** Renders the reusable file-row used in both the queue dialog and sideload list */
|
|
426
|
+
renderFileRow(f, idx, isUploading) {
|
|
427
|
+
const progress = f.progress || 0;
|
|
428
|
+
const status = f.status;
|
|
429
|
+
const { icon, bg, color } = this.getFileIconStyles(f.type);
|
|
430
|
+
const renderedIcon = status === 'error' ? 'alert-triangle' : icon;
|
|
431
|
+
const renderedBg = status === 'error' ? 'rgba(239, 68, 68, 0.08)' : bg;
|
|
432
|
+
const renderedColor = status === 'error' ? 'rgb(239, 68, 68)' : color;
|
|
433
|
+
return (h("div", { class: { 'fu-file-item': true, [`is-${status}`]: true, 'is-clickable': true }, key: f.name + idx, onClick: () => { this.previewFileIndex = idx; }, title: "Click to preview" }, h("div", { class: "fu-file-icon-wrapper", style: { backgroundColor: renderedBg } }, h("ui-icon", { name: renderedIcon, library: "lucide", size: "20px", color: renderedColor })), h("div", { class: "fu-file-info" }, h("div", { class: "fu-file-name-row" }, h("span", { class: "fu-file-name", title: f.name }, f.name), h("span", { class: "fu-file-status" }, status === 'success' && h("span", { class: "fu-status-badge is-success" }, h("ui-icon", { name: "check", library: "lucide", size: "12px", color: "#10b981" }), h("span", null, "Done")), status === 'uploading' && h("span", { class: "fu-status-badge is-uploading" }, h("span", { class: "fu-spinner-dot" }), h("span", null, Math.round(progress), "%")), status === 'pending' && h("span", { class: "fu-status-badge is-pending" }, h("span", null, "Ready")), status === 'validating' && h("span", { class: "fu-status-badge is-validating" }, h("span", null, "Validating\u00E2\u20AC\u00A6")), status === 'error' && h("span", { class: "fu-status-badge is-error" }, h("span", null, "Failed")))), h("div", { class: "fu-file-meta" }, h("span", { class: "fu-file-size" }, this.formatSize(f.size)), status === 'error' && f.errorMessage && (h("span", { class: "fu-file-error-msg" }, h("ui-icon", { name: "alert-circle", library: "lucide", size: "12px", color: "currentColor" }), h("span", null, f.errorMessage)))), status === 'uploading' && (h("div", { class: "fu-progress-bar" }, h("div", { class: "fu-progress-fill", style: { width: `${progress}%` } })))), h("ui-button", { variant: "ghost", size: "xxs", iconOnly: true, class: "fu-remove", onClick: (e) => { e.stopPropagation(); this.removeFile(idx); }, ariaLabel: "Remove", icon: "x", iconLibrary: "lucide", iconSize: "16px", disabled: isUploading && status === 'uploading' })));
|
|
434
|
+
}
|
|
435
|
+
/** Queue management dialog — shown for all non-sideload variants */
|
|
436
|
+
/** Queue management dialog - shown for all non-sideload variants */
|
|
437
|
+
renderQueueDialog() {
|
|
438
|
+
if (!this.isQueueOpen || this.variant === 'sideload')
|
|
439
|
+
return null;
|
|
440
|
+
const hasFiles = this.files.length > 0;
|
|
441
|
+
const isUploading = this.componentStatus === 'uploading';
|
|
442
|
+
const isValidating = this.componentStatus === 'validating';
|
|
443
|
+
const validCount = this.files.filter(f => f.status !== 'error').length;
|
|
444
|
+
const readyCount = this.files.filter(f => f.status === 'pending').length;
|
|
445
|
+
const doneCount = this.files.filter(f => f.status === 'success').length;
|
|
446
|
+
const pendingCount = this.files.filter(f => f.status === 'pending' || f.status === 'uploading').length;
|
|
447
|
+
const failedCount = this.files.filter(f => f.status === 'error').length;
|
|
448
|
+
const hasErrors = failedCount > 0;
|
|
449
|
+
const allSuccess = hasFiles && this.files.every(f => f.status === 'success');
|
|
450
|
+
const canAdd = !this.disabled && this.files.length < this.maxFiles;
|
|
451
|
+
const isManual = !this.autoUpload || this.showUploadButton;
|
|
452
|
+
const showUploadBtn = isManual && !allSuccess;
|
|
453
|
+
const closeQueue = () => {
|
|
454
|
+
this.isQueueOpen = false;
|
|
455
|
+
// Drop successfully uploaded files — they're done; keep pending/uploading/error
|
|
456
|
+
this.files = this.files.filter(f => f.status !== 'success');
|
|
457
|
+
if (this.files.length === 0) {
|
|
458
|
+
this.componentStatus = 'idle';
|
|
459
|
+
this.errors = [];
|
|
460
|
+
this.previewFileIndex = -1;
|
|
461
|
+
}
|
|
462
|
+
};
|
|
463
|
+
return (h("div", { class: "fu-queue-backdrop", onClick: closeQueue }, h("div", { class: { 'fu-queue-dialog': true, 'fu-queue-dialog--manual': isManual }, onClick: (e) => e.stopPropagation(), role: "dialog", "aria-modal": "true", "aria-label": "Upload Queue" }, h("div", { class: "fu-queue-header" }, h("div", { class: "fu-queue-title" }, h("ui-icon", { name: "upload-cloud", library: "lucide", size: "18px", color: "var(--color-primary, #10b981)" }), h("span", null, "Upload Queue"), h("span", { class: "fu-queue-count-pill" }, this.files.length, " file", this.files.length !== 1 ? 's' : '')), h("div", { class: "fu-queue-header-right" }, h("span", { class: `fu-upload-mode-badge ${isManual ? 'is-manual' : 'is-auto'}` }, h("ui-icon", { name: isManual ? 'hand' : 'zap', library: "lucide", size: "11px", color: "currentColor" }), isManual ? 'Manual upload' : 'Auto upload'), h("ui-button", { variant: "ghost", size: "sm", iconOnly: true, icon: "x", iconLibrary: "lucide", onClick: closeQueue, ariaLabel: "Close dialog" }))), isManual && readyCount > 0 && !isUploading && !allSuccess && (h("div", { class: "fu-queue-manual-banner" }, h("ui-icon", { name: "mouse-pointer-click", library: "lucide", size: "14px", color: "#6366f1" }), h("span", null, readyCount, " file", readyCount !== 1 ? 's' : '', " ready \u2014 click ", h("strong", null, "Upload"), " when ready."))), this.errors.length > 0 && (h("div", { class: "fu-queue-errors" }, this.errors.map(e => (h("div", { class: "fu-queue-error-item" }, h("ui-icon", { name: "alert-triangle", library: "lucide", size: "14px", color: "#ef4444" }), h("span", null, e)))))), hasFiles && (h("div", { class: "fu-queue-summary" }, doneCount > 0 && h("span", { class: "fu-queue-summary-stat" }, h("span", { class: "fu-qs-dot success" }), doneCount, " done"), pendingCount > 0 && h("span", { class: "fu-queue-summary-stat" }, h("span", { class: "fu-qs-dot pending" }), pendingCount, " pending"), hasErrors && h("span", { class: "fu-queue-summary-stat" }, h("span", { class: "fu-qs-dot error" }), failedCount, " failed"), this.autoUpload && isUploading && (h("span", { class: "fu-queue-summary-stat is-auto" }, h("span", { class: "fu-spinner-dot" }), " Uploading...")), allSuccess && (h("span", { class: "fu-queue-summary-stat is-complete" }, h("ui-icon", { name: "check-circle", library: "lucide", size: "13px", color: "#10b981" }), " All done")))), h("div", { class: "fu-queue-list" }, !hasFiles && (h("div", { class: "fu-queue-empty" }, h("ui-icon", { name: "inbox", library: "lucide", size: "32px", color: "var(--text-muted, #9ca3af)" }), h("span", null, "No files in queue"))), this.files.map((f, idx) => this.renderFileRow(f, idx, isUploading))), h("div", { class: "fu-queue-footer" }, h("div", { class: "fu-queue-footer-left" }, canAdd && (h("ui-button", { variant: "ghost", size: "sm", label: "Add more", icon: "plus", iconLibrary: "lucide", disabled: isUploading, onClick: () => this.inputRef?.click() })), hasErrors && (h("ui-button", { variant: "ghost", size: "sm", label: "Remove failed", icon: "trash-2", iconLibrary: "lucide", onClick: () => this.removeInvalidFiles() }))), h("div", { class: "fu-queue-footer-right" }, !isUploading && !allSuccess && (h("ui-button", { variant: "outline", size: "sm", label: "Cancel all", onClick: () => this.clear() })), this.showValidateButton && (h("ui-button", { variant: "outline", size: "sm", label: "Validate", loading: isValidating, disabled: isUploading || !hasFiles, onClick: () => this.validate() })), showUploadBtn && (h("ui-button", { variant: "primary", size: "sm", label: isUploading ? 'Uploading...' : `Upload ${readyCount > 0 ? readyCount : validCount} file${(readyCount || validCount) !== 1 ? 's' : ''}`, icon: isUploading ? 'loader' : 'upload', iconLibrary: "lucide", loading: isUploading, disabled: isValidating || validCount === 0, onClick: () => this.upload() })), allSuccess && (h("ui-button", { variant: "primary", size: "sm", icon: "check", iconLibrary: "lucide", label: "Done", onClick: closeQueue })))))));
|
|
464
|
+
}
|
|
465
|
+
renderPreviewDialog() {
|
|
466
|
+
const idx = this.previewFileIndex;
|
|
467
|
+
if (idx < 0 || idx >= this.files.length)
|
|
468
|
+
return null;
|
|
469
|
+
const f = this.files[idx];
|
|
470
|
+
const progress = f.progress || 0;
|
|
471
|
+
const status = f.status;
|
|
472
|
+
const isUploading = status === 'uploading';
|
|
473
|
+
const isImage = f.type?.startsWith('image/') && !!f.dataUrl;
|
|
474
|
+
const { icon, bg, color } = this.getFileIconStyles(f.type);
|
|
475
|
+
const renderedIcon = status === 'error' ? 'alert-triangle' : icon;
|
|
476
|
+
const renderedBg = status === 'error' ? 'rgba(239, 68, 68, 0.08)' : bg;
|
|
477
|
+
const renderedColor = status === 'error' ? 'rgb(239, 68, 68)' : color;
|
|
478
|
+
const close = () => { this.previewFileIndex = -1; };
|
|
479
|
+
return (h("div", { class: "fu-dialog-backdrop", onClick: close }, h("div", { class: "fu-dialog", onClick: (e) => e.stopPropagation(), role: "dialog", "aria-modal": "true", "aria-label": `File details: ${f.name}` }, h("div", { class: "fu-dialog-header" }, h("div", { class: "fu-dialog-title" }, h("ui-icon", { name: "file-search", library: "lucide", size: "18px", color: "var(--color-primary, #10b981)" }), h("span", null, "File Details")), h("ui-button", { variant: "ghost", size: "sm", iconOnly: true, icon: "x", iconLibrary: "lucide", onClick: close, ariaLabel: "Close" })), h("div", { class: "fu-dialog-preview" }, isImage
|
|
480
|
+
? h("img", { class: "fu-dialog-image", src: f.dataUrl, alt: f.name })
|
|
481
|
+
: h("div", { class: "fu-dialog-file-icon", style: { backgroundColor: renderedBg } }, h("ui-icon", { name: renderedIcon, library: "lucide", size: "48px", color: renderedColor }))), h("div", { class: "fu-dialog-info" }, h("div", { class: "fu-dialog-name", title: f.name }, f.name), h("div", { class: "fu-dialog-meta" }, h("span", { class: "fu-dialog-meta-item" }, h("ui-icon", { name: "hard-drive", library: "lucide", size: "13px", color: "currentColor" }), this.formatSize(f.size)), h("span", { class: "fu-dialog-meta-item" }, h("ui-icon", { name: "tag", library: "lucide", size: "13px", color: "currentColor" }), f.type || 'Unknown type')), h("div", { class: "fu-dialog-status-row" }, status === 'success' && h("span", { class: "fu-dialog-badge is-success" }, h("ui-icon", { name: "check-circle", library: "lucide", size: "14px", color: "currentColor" }), "Uploaded successfully"), status === 'uploading' && h("span", { class: "fu-dialog-badge is-uploading" }, h("span", { class: "fu-spinner-dot" }), "Uploading\u00E2\u20AC\u00A6 ", Math.round(progress), "%"), status === 'pending' && h("span", { class: "fu-dialog-badge is-pending" }, h("ui-icon", { name: "clock", library: "lucide", size: "14px", color: "currentColor" }), "Ready to upload"), status === 'error' && h("span", { class: "fu-dialog-badge is-error" }, h("ui-icon", { name: "alert-circle", library: "lucide", size: "14px", color: "currentColor" }), f.errorMessage || 'Upload failed'), status === 'validating' && h("span", { class: "fu-dialog-badge is-validating" }, h("span", { class: "fu-spinner-dot" }), "Validating\u00E2\u20AC\u00A6")), (status === 'uploading' || status === 'success') && (h("div", { class: "fu-dialog-progress" }, h("div", { class: "fu-dialog-progress-fill", style: { width: `${progress}%` } })))), h("div", { class: "fu-dialog-footer" }, h("ui-button", { variant: "ghost", size: "sm", label: "Remove file", icon: "trash-2", iconLibrary: "lucide", disabled: isUploading, onClick: () => { this.removeFile(idx); close(); } }), h("div", { style: { flex: '1' } }), h("ui-button", { variant: "ghost", size: "sm", iconOnly: true, icon: "chevron-left", iconLibrary: "lucide", disabled: idx === 0, ariaLabel: "Previous file", onClick: () => { this.previewFileIndex = idx - 1; } }), h("span", { class: "fu-dialog-nav-count" }, idx + 1, " / ", this.files.length), h("ui-button", { variant: "ghost", size: "sm", iconOnly: true, icon: "chevron-right", iconLibrary: "lucide", disabled: idx === this.files.length - 1, ariaLabel: "Next file", onClick: () => { this.previewFileIndex = idx + 1; } }), h("ui-button", { variant: "primary", size: "sm", label: "Close", onClick: close })))));
|
|
374
482
|
}
|
|
375
483
|
render() {
|
|
376
484
|
const canAdd = !this.disabled && this.files.length < this.maxFiles;
|
|
377
485
|
const hasFiles = this.files.length > 0;
|
|
378
486
|
const isUploading = this.componentStatus === 'uploading';
|
|
379
|
-
const isValidating = this.componentStatus === 'validating';
|
|
380
487
|
const validFilesCount = this.files.filter(f => f.status !== 'error').length;
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
};
|
|
392
|
-
const itemIcon = status === 'error' ? 'alert-triangle' : (status === 'success' ? 'check-circle' : 'info');
|
|
393
|
-
const iconColor = status === 'error' ? '#f59e0b' : (status === 'success' ? '#10b981' : '#3b82f6');
|
|
394
|
-
return (h("div", { class: { 'fu-file-item': true, [`is-${status}`]: true }, key: f.name + idx }, this.variant === 'sideload'
|
|
395
|
-
? h("ui-icon", { class: "fu-sideload-item-icon", name: itemIcon, library: "lucide", size: "24px", color: iconColor })
|
|
396
|
-
: (f.type.startsWith('image/') && f.dataUrl
|
|
397
|
-
? h("img", { class: "fu-thumb", src: f.dataUrl, alt: f.name })
|
|
398
|
-
: h("span", { class: "fu-file-icon" }, this.getIcon(f.type))), h("div", { class: "fu-file-info" }, h("div", { class: "fu-file-name-row" }, h("span", { class: "fu-file-name" }, f.name), h("span", { class: "fu-file-status" }, this.variant !== 'sideload' && h("span", { class: "fu-status-label" }, statusLabels[status]), status === 'success' && h("ui-icon", { name: "check", library: "lucide", size: "14px", color: "#10b981" }), status === 'error' && this.variant !== 'sideload' && h("ui-icon", { name: "alert-circle", library: "lucide", size: "14px", color: "#ef4444" }), status === 'uploading' && h("span", { class: "fu-file-percent" }, Math.round(progress), "%"))), h("div", { class: "fu-file-meta" }, h("span", { class: "fu-file-size" }, this.formatSize(f.size)), f.errorMessage && h("span", { class: "fu-item-error-msg" }, " \u00B7 ", f.errorMessage)), (status === 'uploading' || status === 'success') && (h("div", { class: "fu-progress-bar" }, h("div", { class: "fu-progress-fill", style: { width: `${progress}%` } })))), h("ui-button", { variant: "ghost", size: "xxs", iconOnly: true, class: "fu-remove", onClick: (e) => { e.stopPropagation(); this.removeFile(idx); }, ariaLabel: "Remove", icon: "x-circle", iconLibrary: "lucide", iconSize: "18px", disabled: isUploading && status === 'uploading' })));
|
|
399
|
-
}))), this.variant === 'sideload' && (h("div", { key: 'ef71906dbefd987da6f7cf54dacb41528d8e7d4b', class: "fu-sideload-footer" }, h("div", { key: 'e5ce897412814293206de68572bce9fe93478fff', class: "fu-footer-actions-left" }, hasErrors && (h("ui-button", { key: '40c336eb57ba23767800511d7f8a5525c3bb3a0f', variant: "ghost", size: "md", label: "Clean Queue", onClick: () => this.removeInvalidFiles(), icon: "trash-2", iconLibrary: "lucide" }))), h("div", { key: '31c7983a14455d24158aa3c7bb69b490f995968e', class: "fu-footer-actions-right" }, h("ui-button", { key: 'd9723f7193044a178473437cad30d2074d41b6b4', variant: "outline", label: "Cancel", onClick: () => this.clear() }), h("ui-button", { key: '532aae5a83893629ee5d8186904286393183f5e7', variant: "primary", label: `Upload ${validFilesCount} files`, disabled: validFilesCount === 0 || isUploading, loading: isUploading, onClick: () => this.upload(), icon: "upload", iconLibrary: "lucide" })))), this.helperText && this.variant !== 'sideload' && h("div", { key: '6bd4941a135fbf542f3d9ca275847660424695d9', class: "fu-helper" }, this.helperText)));
|
|
488
|
+
return (h(Host, { key: 'd3152c915742132400c8c4bb67d9e3b89d54b632', dir: this.rtl ? 'rtl' : 'ltr', onPaste: this.handlePaste, class: { 'is-sideload': this.variant === 'sideload' } }, this.variant === 'sideload' && (h("div", { key: 'dd3fe148a8860b4b9b1ef9e47358bdd46dd64a21', class: "fu-sideload-header" }, h("div", { key: '0f170379a0ea0c797a6c05819af167de7c2dafed', class: "fu-header-title-row" }, h("ui-icon", { key: '6b0b71f7e01651f33efaf6a2a3421367b71b47cc', name: "upload-cloud", library: "lucide", size: "24px", color: "var(--color-primary, #10b981)" }), h("h2", { key: 'a4330e9cb9973cdb61ed42f65dc5a374c371d8f2' }, this.headerTitle || 'Sideload Firmware'), h("ui-button", { key: '2dd90814fbaa9f636c1a0f24f126ab9b31583d66', variant: "ghost", size: "md", iconOnly: true, icon: "x", iconLibrary: "lucide", class: "fu-close-dialog" })), h("div", { key: '234c9679585087721a30df197ae8c0f3739b5c94', class: { 'fu-sideload-zone': true, 'is-dragging': this.isDragging }, onDragOver: (e) => { e.preventDefault(); this.isDragging = true; }, onDragLeave: () => (this.isDragging = false), onDrop: this.handleDrop, onClick: () => canAdd && this.inputRef?.click() }, h("ui-icon", { key: '303cf7a91a182a42aa288519ba933854ffe63b94', name: "upload", library: "lucide", size: "20px", color: "var(--color-primary, #10b981)" }), h("span", { key: 'd3c193b6e528ff43ce0f4ebd7959cfb0ae78b220' }, "Drop more files or ", h("strong", { key: '373cba75237e24b8b6a4e384129cf9543d5cf30e', class: "fu-browse-pill" }, "Browse"))))), this.variant === 'sideload' && hasFiles && (h("div", { key: 'e6b1e6370a769387ec8b75954e34847f93e37e05', class: "fu-file-list is-sideload-list" }, this.files.map((f, idx) => this.renderFileRow(f, idx, isUploading)))), this.variant === 'sideload' && (h("div", { key: 'f4d122874935aeff0dfee060c91d6299234cee5e', class: "fu-sideload-footer" }, h("div", { key: '4e98b7d2bf5fa02766414def762e070d378eb98e', class: "fu-footer-actions-left" }, this.files.some(f => f.status === 'error') && (h("ui-button", { key: 'a2cf99cb5992794930f97f559918a1ad02d05288', variant: "ghost", size: "md", label: "Clean Queue", icon: "trash-2", iconLibrary: "lucide", onClick: () => this.removeInvalidFiles() }))), h("div", { key: '5425b0d9c59a85e6113ab43ca1c03757bc78845b', class: "fu-footer-actions-right" }, h("ui-button", { key: 'c0ef12d4bd32b4eede664130f1cc662abbf1e83f', variant: "outline", label: "Cancel", onClick: () => this.clear() }), h("ui-button", { key: '293aac09dfda74ea69b8d8ea1082ad25786ca62f', variant: "primary", label: `Upload ${validFilesCount} files`, disabled: validFilesCount === 0 || isUploading, loading: isUploading, onClick: () => this.upload(), icon: "upload", iconLibrary: "lucide" })))), this.variant !== 'sideload' && (h("div", { key: 'ad83c062093c5992ca2f02e1b5bd11483e43f1fd' }, this.label && h("label", { key: '9b807a8af85d1fc282375a47d565b1a52d31e207', class: "fu-label" }, this.label), this.variant === 'dropzone' && (h("div", { key: '376d617761e2d03b3fbed7a0fa27da05a6acd1f7', class: { 'fu-zone': true, 'fu-dragging': this.isDragging, 'fu-disabled': this.disabled, 'fu-zone-has-files': hasFiles }, onDragOver: (e) => { e.preventDefault(); this.isDragging = true; }, onDragLeave: () => (this.isDragging = false), onDrop: this.handleDrop, onClick: () => canAdd && this.inputRef?.click() }, h("div", { key: '7df435796b000ddc2af9590115ecd96d8c365bcc', class: "fu-zone-icon" }, this.renderUploadZoneIcon('40px')), h("div", { key: '9cd1d88570d13b1535286a5133aa673eb56473d8', class: "fu-zone-title" }, "Drag & drop files here"), h("div", { key: '82adc9f84981437ed9d1f619ad9f5b52be0a645b', class: "fu-zone-sub" }, "or ", h("span", { key: '0f1f65b55b58aca3eec0d8b3667c9ebeffdc29d3', class: "fu-zone-browse" }, "browse files")), h("div", { key: 'b9a9021442ec5bc8e3309a51cadd2af5cb193c08', class: "fu-zone-limit" }, this.accept && h("span", { key: '12217ab2c6ce5955f966ab627740aabf114484c8' }, "Accepts: ", this.accept), h("span", { key: '5ffd8530aed30321eff0c8e01c6104e2626e0476' }, "Max ", this.formatSize(this.maxSize), " \u00B7 Up to ", this.maxFiles, " files")), hasFiles && (h("div", { key: '4d155a2c4b6516743b7ee38d2ddcc5c20d3c1089', class: "fu-zone-queue-badge", onClick: (e) => { e.stopPropagation(); this.isQueueOpen = true; } }, h("ui-icon", { key: '4e9d11d3444c799a6c54efbe8c3ef894be451809', name: "layers", library: "lucide", size: "14px", color: "#10b981" }), h("span", { key: '8e52407087416f63933efb6288be0e8899f06391' }, this.files.length, " file", this.files.length !== 1 ? 's' : '', " queued"), h("span", { key: '374fbd52cbe323bea13a0749af95050030891dc4', class: "fu-zone-queue-view" }, "View Queue \u2192"))))), (this.variant === 'button' || this.variant === 'compact' || this.variant === 'inline') && (h("div", { key: 'c7b031b7b628d8972fd72ab903e5324f7946fc8c', class: "fu-trigger-row" }, this.variant === 'button' && (h("ui-button", { key: '25a4cdca35f3c1047683825991c36335fbc0166d', variant: "primary", onClick: () => canAdd && this.inputRef?.click(), disabled: this.disabled || isUploading, label: this.label || 'Select Files', icon: this.uploadIcon || 'upload-cloud', iconLibrary: "lucide" })), this.variant === 'compact' && (h("div", { key: '9eb1ef83a2814e814730e42c175b612cdc4f2cd8', class: { 'fu-compact': true, 'fu-disabled': this.disabled }, onClick: () => canAdd && this.inputRef?.click() }, h("span", { key: 'a68573fcfc5a820a46c9b8c832ffd4ceec155651', class: "fu-compact-icon" }, this.renderUploadZoneIcon('18px')), h("span", { key: '5f8c2a40cbceb3f6f10bbb4481284836e476975e', class: "fu-compact-text" }, this.label || 'Choose file'), h("span", { key: 'ae53043e7f6dbc27bc42bde8e2bf9d7870591718', class: "fu-compact-count" }, this.files.length, " / ", this.maxFiles))), this.variant === 'inline' && (h("button", { key: '49e94c27db6aa2b0a9eb56150abed00769a45ba2', class: { 'fu-inline-trigger': true, 'fu-inline-disabled': this.disabled, 'fu-inline-active': hasFiles }, disabled: this.disabled, onClick: () => canAdd && this.inputRef?.click(), type: "button", title: this.label || 'Upload files' }, h("span", { key: '148d06eb63c8df50ba268c5165fd12fb525c238e', class: "fu-inline-icon" }, this.renderUploadZoneIcon('16px')), h("span", { key: 'ba271f05d6d8e0b3c9419bc1e7bd367e0f7adf0d', class: "fu-inline-label" }, this.label || 'Upload files'), hasFiles && (h("span", { key: 'd7ad2159e8e33facc99edc0926d46939c2864fb4', class: "fu-inline-badge", onClick: (e) => { e.stopPropagation(); this.isQueueOpen = true; } }, this.files.length)))), hasFiles && this.variant !== 'inline' && (h("button", { key: 'bd4a50a142bac3d136c0de7221ce15fe078628fd', class: "fu-view-queue-btn", onClick: () => { this.isQueueOpen = true; } }, h("ui-icon", { key: '71083c82786b219595cf9d8b5738848da048c0b9', name: "layers", library: "lucide", size: "14px", color: "currentColor" }), this.files.length, " file", this.files.length !== 1 ? 's' : '', " queued")))), this.helperText && h("div", { key: 'ecc66b684f1e28a0f886faeee45b274b613f36a5', class: "fu-helper" }, this.helperText))), h("input", { key: '3e50fac523ae8a776f4468782a079d8a4206ac45', ref: el => {
|
|
489
|
+
this.inputRef = el;
|
|
490
|
+
if (el) {
|
|
491
|
+
if (this.directory) {
|
|
492
|
+
el.setAttribute('webkitdirectory', '');
|
|
493
|
+
}
|
|
494
|
+
else {
|
|
495
|
+
el.removeAttribute('webkitdirectory');
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
}, type: "file", class: "fu-input-hidden", accept: this.accept, multiple: this.multiple || this.directory, capture: this.capture === true ? 'environment' : (this.capture || undefined), onChange: this.handleFileInput }), this.renderQueueDialog(), this.renderPreviewDialog()));
|
|
400
499
|
}
|
|
401
500
|
static get is() { return "ui-file-upload"; }
|
|
402
501
|
static get encapsulation() { return "shadow"; }
|
|
@@ -596,15 +695,15 @@ export class FileUpload {
|
|
|
596
695
|
"type": "string",
|
|
597
696
|
"mutable": false,
|
|
598
697
|
"complexType": {
|
|
599
|
-
"original": "'dropzone' | 'button' | 'compact' | 'sideload'",
|
|
600
|
-
"resolved": "\"button\" | \"compact\" | \"dropzone\" | \"sideload\"",
|
|
698
|
+
"original": "'dropzone' | 'button' | 'compact' | 'inline' | 'sideload'",
|
|
699
|
+
"resolved": "\"button\" | \"compact\" | \"dropzone\" | \"inline\" | \"sideload\"",
|
|
601
700
|
"references": {}
|
|
602
701
|
},
|
|
603
702
|
"required": false,
|
|
604
703
|
"optional": false,
|
|
605
704
|
"docs": {
|
|
606
705
|
"tags": [],
|
|
607
|
-
"text": "Variant: 'dropzone' | 'button' | 'compact' | 'sideload'"
|
|
706
|
+
"text": "Variant: 'dropzone' | 'button' | 'compact' | 'inline' | 'sideload'"
|
|
608
707
|
},
|
|
609
708
|
"getter": false,
|
|
610
709
|
"setter": false,
|
|
@@ -624,13 +723,13 @@ export class FileUpload {
|
|
|
624
723
|
"optional": false,
|
|
625
724
|
"docs": {
|
|
626
725
|
"tags": [],
|
|
627
|
-
"text": "
|
|
726
|
+
"text": "Custom upload icon: pass a lucide icon name (e.g. \"file-plus\") or any emoji/text.\r\nDefaults to the upload-cloud lucide icon when left empty."
|
|
628
727
|
},
|
|
629
728
|
"getter": false,
|
|
630
729
|
"setter": false,
|
|
631
730
|
"reflect": false,
|
|
632
731
|
"attribute": "upload-icon",
|
|
633
|
-
"defaultValue": "'
|
|
732
|
+
"defaultValue": "''"
|
|
634
733
|
},
|
|
635
734
|
"rtl": {
|
|
636
735
|
"type": "boolean",
|
|
@@ -744,7 +843,7 @@ export class FileUpload {
|
|
|
744
843
|
"optional": false,
|
|
745
844
|
"docs": {
|
|
746
845
|
"tags": [],
|
|
747
|
-
"text": "Show manual upload button"
|
|
846
|
+
"text": "Show manual upload button \u2014 overrides auto-upload when true"
|
|
748
847
|
},
|
|
749
848
|
"getter": false,
|
|
750
849
|
"setter": false,
|
|
@@ -764,7 +863,7 @@ export class FileUpload {
|
|
|
764
863
|
"optional": false,
|
|
765
864
|
"docs": {
|
|
766
865
|
"tags": [],
|
|
767
|
-
"text": "
|
|
866
|
+
"text": "When true (default), upload begins immediately after files are selected.\r\nWhen false, files stay in \"Ready\" state until the user clicks the Upload button inside the queue dialog."
|
|
768
867
|
},
|
|
769
868
|
"getter": false,
|
|
770
869
|
"setter": false,
|
|
@@ -792,6 +891,26 @@ export class FileUpload {
|
|
|
792
891
|
"attribute": "auto-close-on-success",
|
|
793
892
|
"defaultValue": "false"
|
|
794
893
|
},
|
|
894
|
+
"directory": {
|
|
895
|
+
"type": "boolean",
|
|
896
|
+
"mutable": false,
|
|
897
|
+
"complexType": {
|
|
898
|
+
"original": "boolean",
|
|
899
|
+
"resolved": "boolean",
|
|
900
|
+
"references": {}
|
|
901
|
+
},
|
|
902
|
+
"required": false,
|
|
903
|
+
"optional": false,
|
|
904
|
+
"docs": {
|
|
905
|
+
"tags": [],
|
|
906
|
+
"text": "Allow the user to select an entire folder instead of individual files.\r\nSets webkitdirectory on the hidden input. Implicitly enables multiple."
|
|
907
|
+
},
|
|
908
|
+
"getter": false,
|
|
909
|
+
"setter": false,
|
|
910
|
+
"reflect": false,
|
|
911
|
+
"attribute": "directory",
|
|
912
|
+
"defaultValue": "false"
|
|
913
|
+
},
|
|
795
914
|
"headerTitle": {
|
|
796
915
|
"type": "string",
|
|
797
916
|
"mutable": false,
|
|
@@ -819,7 +938,9 @@ export class FileUpload {
|
|
|
819
938
|
"isDragging": {},
|
|
820
939
|
"files": {},
|
|
821
940
|
"errors": {},
|
|
822
|
-
"componentStatus": {}
|
|
941
|
+
"componentStatus": {},
|
|
942
|
+
"isQueueOpen": {},
|
|
943
|
+
"previewFileIndex": {}
|
|
823
944
|
};
|
|
824
945
|
}
|
|
825
946
|
static get events() {
|
|
@@ -140,8 +140,8 @@
|
|
|
140
140
|
}
|
|
141
141
|
|
|
142
142
|
.horizontal-nav.variant-default .nav-item.active {
|
|
143
|
-
background-color:
|
|
144
|
-
color: #3b82f6;
|
|
143
|
+
background-color: var(--color-primary-subtle, rgba(59, 130, 246, 0.1));
|
|
144
|
+
color: var(--color-primary, #3b82f6);
|
|
145
145
|
}
|
|
146
146
|
|
|
147
147
|
/* Variants - Pills */
|
|
@@ -155,8 +155,8 @@
|
|
|
155
155
|
}
|
|
156
156
|
|
|
157
157
|
.horizontal-nav.variant-pills .nav-item.active {
|
|
158
|
-
background-color: #3b82f6;
|
|
159
|
-
color: white;
|
|
158
|
+
background-color: var(--color-primary, #3b82f6);
|
|
159
|
+
color: var(--text-inverse, white);
|
|
160
160
|
}
|
|
161
161
|
|
|
162
162
|
/* Variants - Underline */
|
|
@@ -193,11 +193,11 @@
|
|
|
193
193
|
}
|
|
194
194
|
|
|
195
195
|
.horizontal-nav.variant-underline .nav-item.active {
|
|
196
|
-
color: #3b82f6;
|
|
196
|
+
color: var(--color-primary, #3b82f6);
|
|
197
197
|
}
|
|
198
198
|
|
|
199
199
|
.horizontal-nav.variant-underline .nav-item.active::after {
|
|
200
|
-
background-color: #3b82f6;
|
|
200
|
+
background-color: var(--color-primary, #3b82f6);
|
|
201
201
|
}
|
|
202
202
|
|
|
203
203
|
/* Variants - Segmented */
|
|
@@ -350,8 +350,8 @@
|
|
|
350
350
|
}
|
|
351
351
|
|
|
352
352
|
.horizontal-nav.display-list .nav-item.active {
|
|
353
|
-
background-color:
|
|
354
|
-
border-left: 3px solid #3b82f6;
|
|
353
|
+
background-color: var(--color-primary-subtle, rgba(59, 130, 246, 0.1));
|
|
354
|
+
border-left: 3px solid var(--color-primary, #3b82f6);
|
|
355
355
|
padding-left: 13px;
|
|
356
356
|
}
|
|
357
357
|
|
|
@@ -362,7 +362,7 @@
|
|
|
362
362
|
}
|
|
363
363
|
|
|
364
364
|
.horizontal-nav.display-list.variant-pills .nav-item.active {
|
|
365
|
-
background-color:
|
|
365
|
+
background-color: var(--color-primary-subtle, rgba(59, 130, 246, 0.1));
|
|
366
366
|
}
|
|
367
367
|
|
|
368
368
|
.horizontal-nav.display-list.size-sm .nav-item {
|
|
@@ -143,7 +143,7 @@ export class HorizontalNav {
|
|
|
143
143
|
"references": {
|
|
144
144
|
"HorizontalNavItem": {
|
|
145
145
|
"location": "local",
|
|
146
|
-
"path": "
|
|
146
|
+
"path": "C:/Naveen/PersonalRepo/atomicUILibrary/library/src/components/horizontal-nav/horizontal-nav.tsx",
|
|
147
147
|
"id": "src/components/horizontal-nav/horizontal-nav.tsx::HorizontalNavItem"
|
|
148
148
|
}
|
|
149
149
|
}
|
|
@@ -365,7 +365,7 @@ export class HorizontalNav {
|
|
|
365
365
|
"references": {
|
|
366
366
|
"HorizontalNavItem": {
|
|
367
367
|
"location": "local",
|
|
368
|
-
"path": "
|
|
368
|
+
"path": "C:/Naveen/PersonalRepo/atomicUILibrary/library/src/components/horizontal-nav/horizontal-nav.tsx",
|
|
369
369
|
"id": "src/components/horizontal-nav/horizontal-nav.tsx::HorizontalNavItem"
|
|
370
370
|
}
|
|
371
371
|
}
|
|
@@ -289,7 +289,7 @@ export class Icon {
|
|
|
289
289
|
const accessibilityAttrs = this.label
|
|
290
290
|
? { role: 'img', 'aria-label': this.label }
|
|
291
291
|
: { 'aria-hidden': 'true' };
|
|
292
|
-
return (h(Host, { key: '
|
|
292
|
+
return (h(Host, { key: '11a1cf7893d75e1732568ebbb3df40176c06dda6', style: containerStyle, ...accessibilityAttrs }, h("div", { key: '46e5027b067072e5b30ba7a18185e357bfddd072', class: `icon-container ${this.spin ? 'fa-spin' : ''}` }, (this.loading || this.isFetching)
|
|
293
293
|
? h("ui-loader", { size: "0.8em", color: "currentColor", type: "spinner" })
|
|
294
294
|
: this.renderIconContent(lib, parsedSize))));
|
|
295
295
|
}
|
|
@@ -455,6 +455,8 @@
|
|
|
455
455
|
--ui-input-addon-bg: var(--bg-secondary, #0f172a);
|
|
456
456
|
--ui-input-addon-border: var(--border-subtle, #334155);
|
|
457
457
|
--ui-input-addon-color: var(--label-subtitle-color, #c2c2c2);
|
|
458
|
+
--ui-input-soft-bg: rgba(255, 255, 255, 0.05) !important;
|
|
459
|
+
--ui-input-filled-bg: rgba(255, 255, 255, 0.08) !important;
|
|
458
460
|
}
|
|
459
461
|
|
|
460
462
|
:host-context([data-theme=violet]) {
|
|
@@ -848,6 +850,13 @@
|
|
|
848
850
|
cursor: default;
|
|
849
851
|
color: var(--text-secondary, #374151);
|
|
850
852
|
}
|
|
853
|
+
.input-field[type=number] {
|
|
854
|
+
-moz-appearance: textfield;
|
|
855
|
+
}
|
|
856
|
+
.input-field[type=number]::-webkit-outer-spin-button, .input-field[type=number]::-webkit-inner-spin-button {
|
|
857
|
+
-webkit-appearance: none;
|
|
858
|
+
margin: 0;
|
|
859
|
+
}
|
|
851
860
|
|
|
852
861
|
:host(.variant-outlined) .input-container {
|
|
853
862
|
border: 1px solid var(--ui-input-border);
|