pdm-ui-kit 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/calendar/calendar.module.d.ts +1 -1
- package/calendar/date-picker.component.d.ts +2 -2
- package/command/command.component.d.ts +1 -1
- package/command/command.module.d.ts +1 -1
- package/context-menu/context-menu.component.d.ts +1 -1
- package/data-table/data-table.component.d.ts +1 -1
- package/data-table/draggable-table.component.d.ts +1 -1
- package/data-table/table.component.d.ts +1 -1
- package/drawer/drawer.module.d.ts +1 -1
- package/dropdown-menu/dropdown-menu.component.d.ts +1 -1
- package/empty/empty.module.d.ts +2 -2
- package/esm2020/calendar/calendar.module.mjs +2 -2
- package/esm2020/calendar/date-picker.component.mjs +4 -4
- package/esm2020/combobox/combobox.component.mjs +2 -2
- package/esm2020/command/command.component.mjs +2 -2
- package/esm2020/command/command.module.mjs +2 -2
- package/esm2020/context-menu/context-menu.component.mjs +2 -2
- package/esm2020/data-table/data-table.component.mjs +1 -1
- package/esm2020/data-table/draggable-table.component.mjs +1 -1
- package/esm2020/data-table/table.component.mjs +2 -2
- package/esm2020/dialog/dialog.component.mjs +3 -3
- package/esm2020/drawer/drawer.component.mjs +2 -2
- package/esm2020/drawer/drawer.module.mjs +2 -2
- package/esm2020/drawer/sheet.component.mjs +1 -1
- package/esm2020/dropdown-menu/dropdown-menu.component.mjs +3 -3
- package/esm2020/empty/empty.component.mjs +2 -2
- package/esm2020/empty/empty.module.mjs +3 -3
- package/esm2020/hover-card/hover-card.component.mjs +2 -2
- package/esm2020/input/input-group.component.mjs +1 -1
- package/esm2020/input/input-password.component.mjs +1 -1
- package/esm2020/input/input.module.mjs +2 -2
- package/esm2020/menubar/menubar.component.mjs +2 -2
- package/esm2020/native-select/native-select.component.mjs +1 -1
- package/esm2020/native-select/native-select.module.mjs +2 -2
- package/esm2020/pagination/pagination.component.mjs +3 -3
- package/esm2020/pagination/pagination.module.mjs +3 -3
- package/esm2020/popover/popover.component.mjs +2 -2
- package/esm2020/select/select.component.mjs +4 -4
- package/esm2020/select/select.module.mjs +2 -2
- package/esm2020/sonner/sonner.component.mjs +1 -1
- package/esm2020/sonner/sonner.module.mjs +2 -2
- package/esm2020/src/accordion/accordion.component.mjs +42 -0
- package/esm2020/src/accordion/accordion.module.mjs +21 -0
- package/esm2020/src/accordion/pdm-ui-kit-src-accordion.mjs +5 -0
- package/esm2020/src/accordion/public-api.mjs +3 -0
- package/esm2020/src/alert/alert-dialog.component.mjs +87 -0
- package/esm2020/src/alert/alert.component.mjs +35 -0
- package/esm2020/src/alert/alert.module.mjs +25 -0
- package/esm2020/src/alert/pdm-ui-kit-src-alert.mjs +5 -0
- package/esm2020/src/alert/public-api.mjs +4 -0
- package/esm2020/src/aspect-ratio/aspect-ratio.component.mjs +31 -0
- package/esm2020/src/aspect-ratio/aspect-ratio.module.mjs +21 -0
- package/esm2020/src/aspect-ratio/pdm-ui-kit-src-aspect-ratio.mjs +5 -0
- package/esm2020/src/aspect-ratio/public-api.mjs +3 -0
- package/esm2020/src/avatar/avatar.component.mjs +46 -0
- package/esm2020/src/avatar/avatar.module.mjs +21 -0
- package/esm2020/src/avatar/pdm-ui-kit-src-avatar.mjs +5 -0
- package/esm2020/src/avatar/public-api.mjs +3 -0
- package/esm2020/src/badge/badge.component.mjs +23 -0
- package/esm2020/src/badge/badge.module.mjs +21 -0
- package/esm2020/src/badge/pdm-ui-kit-src-badge.mjs +5 -0
- package/esm2020/src/badge/public-api.mjs +3 -0
- package/esm2020/src/breadcrumb/breadcrumb.component.mjs +62 -0
- package/esm2020/src/breadcrumb/breadcrumb.module.mjs +21 -0
- package/esm2020/src/breadcrumb/pdm-ui-kit-src-breadcrumb.mjs +5 -0
- package/esm2020/src/breadcrumb/public-api.mjs +3 -0
- package/esm2020/src/button/button-group.component.mjs +236 -0
- package/esm2020/src/button/button.component.mjs +114 -0
- package/esm2020/src/button/button.module.mjs +25 -0
- package/esm2020/src/button/pdm-ui-kit-src-button.mjs +5 -0
- package/esm2020/src/button/public-api.mjs +4 -0
- package/esm2020/src/calendar/calendar.component.mjs +529 -0
- package/esm2020/src/calendar/calendar.module.mjs +22 -0
- package/esm2020/src/calendar/date-picker.component.mjs +362 -0
- package/esm2020/src/calendar/pdm-ui-kit-src-calendar.mjs +5 -0
- package/esm2020/src/calendar/public-api.mjs +4 -0
- package/esm2020/src/card/card.component.mjs +48 -0
- package/esm2020/src/card/card.module.mjs +21 -0
- package/esm2020/src/card/pdm-ui-kit-src-card.mjs +5 -0
- package/esm2020/src/card/public-api.mjs +3 -0
- package/esm2020/src/carousel/carousel.component.mjs +102 -0
- package/esm2020/src/carousel/carousel.module.mjs +21 -0
- package/esm2020/src/carousel/pdm-ui-kit-src-carousel.mjs +5 -0
- package/esm2020/src/carousel/public-api.mjs +3 -0
- package/esm2020/src/chart/chart.component.mjs +177 -0
- package/esm2020/src/chart/chart.module.mjs +21 -0
- package/esm2020/src/chart/pdm-ui-kit-src-chart.mjs +5 -0
- package/esm2020/src/chart/public-api.mjs +3 -0
- package/esm2020/src/checkbox/checkbox.component.mjs +47 -0
- package/esm2020/src/checkbox/checkbox.module.mjs +21 -0
- package/esm2020/src/checkbox/pdm-ui-kit-src-checkbox.mjs +5 -0
- package/esm2020/src/checkbox/public-api.mjs +3 -0
- package/esm2020/src/collapsible/collapsible.component.mjs +43 -0
- package/esm2020/src/collapsible/collapsible.module.mjs +21 -0
- package/esm2020/src/collapsible/pdm-ui-kit-src-collapsible.mjs +5 -0
- package/esm2020/src/collapsible/public-api.mjs +3 -0
- package/esm2020/src/combobox/combobox.component.mjs +173 -0
- package/esm2020/src/combobox/combobox.module.mjs +22 -0
- package/esm2020/src/combobox/pdm-ui-kit-src-combobox.mjs +5 -0
- package/esm2020/src/combobox/public-api.mjs +3 -0
- package/esm2020/src/command/command.component.mjs +75 -0
- package/esm2020/src/command/command.module.mjs +20 -0
- package/esm2020/src/command/pdm-ui-kit-src-command.mjs +5 -0
- package/esm2020/src/command/public-api.mjs +3 -0
- package/esm2020/src/context-menu/context-menu.component.mjs +165 -0
- package/esm2020/src/context-menu/context-menu.module.mjs +22 -0
- package/esm2020/src/context-menu/pdm-ui-kit-src-context-menu.mjs +5 -0
- package/esm2020/src/context-menu/public-api.mjs +3 -0
- package/esm2020/src/data-table/data-table.component.mjs +299 -0
- package/esm2020/src/data-table/data-table.module.mjs +29 -0
- package/esm2020/src/data-table/draggable-table.component.mjs +300 -0
- package/esm2020/src/data-table/pdm-ui-kit-src-data-table.mjs +5 -0
- package/esm2020/src/data-table/public-api.mjs +5 -0
- package/esm2020/src/data-table/table.component.mjs +182 -0
- package/esm2020/src/dialog/dialog.component.mjs +265 -0
- package/esm2020/src/dialog/dialog.module.mjs +21 -0
- package/esm2020/src/dialog/pdm-ui-kit-src-dialog.mjs +5 -0
- package/esm2020/src/dialog/public-api.mjs +3 -0
- package/esm2020/src/drawer/drawer.component.mjs +217 -0
- package/esm2020/src/drawer/drawer.module.mjs +21 -0
- package/esm2020/src/drawer/pdm-ui-kit-src-drawer.mjs +5 -0
- package/esm2020/src/drawer/public-api.mjs +4 -0
- package/esm2020/src/drawer/sheet.component.mjs +116 -0
- package/esm2020/src/dropdown-menu/dropdown-menu.component.mjs +192 -0
- package/esm2020/src/dropdown-menu/dropdown-menu.module.mjs +22 -0
- package/esm2020/src/dropdown-menu/pdm-ui-kit-src-dropdown-menu.mjs +5 -0
- package/esm2020/src/dropdown-menu/public-api.mjs +3 -0
- package/esm2020/src/empty/empty.component.mjs +58 -0
- package/esm2020/src/empty/empty.module.mjs +21 -0
- package/esm2020/src/empty/pdm-ui-kit-src-empty.mjs +5 -0
- package/esm2020/src/empty/public-api.mjs +3 -0
- package/esm2020/src/field/field.component.mjs +64 -0
- package/esm2020/src/field/field.module.mjs +21 -0
- package/esm2020/src/field/pdm-ui-kit-src-field.mjs +5 -0
- package/esm2020/src/field/public-api.mjs +3 -0
- package/esm2020/src/hover-card/hover-card.component.mjs +205 -0
- package/esm2020/src/hover-card/hover-card.module.mjs +22 -0
- package/esm2020/src/hover-card/pdm-ui-kit-src-hover-card.mjs +5 -0
- package/esm2020/src/hover-card/public-api.mjs +3 -0
- package/esm2020/src/icon/icon.component.mjs +144 -0
- package/esm2020/src/icon/icon.module.mjs +21 -0
- package/esm2020/src/icon/pdm-ui-kit-src-icon.mjs +5 -0
- package/esm2020/src/icon/public-api.mjs +3 -0
- package/esm2020/src/input/input-group.component.mjs +63 -0
- package/esm2020/src/input/input-otp.component.mjs +144 -0
- package/esm2020/src/input/input-password.component.mjs +78 -0
- package/esm2020/src/input/input.component.mjs +71 -0
- package/esm2020/src/input/input.module.mjs +38 -0
- package/esm2020/src/input/pdm-ui-kit-src-input.mjs +5 -0
- package/esm2020/src/input/public-api.mjs +7 -0
- package/esm2020/src/input/textarea.component.mjs +59 -0
- package/esm2020/src/item/item.component.mjs +23 -0
- package/esm2020/src/item/item.module.mjs +21 -0
- package/esm2020/src/item/pdm-ui-kit-src-item.mjs +5 -0
- package/esm2020/src/item/public-api.mjs +3 -0
- package/esm2020/src/kbd/kbd.component.mjs +17 -0
- package/esm2020/src/kbd/kbd.module.mjs +21 -0
- package/esm2020/src/kbd/pdm-ui-kit-src-kbd.mjs +5 -0
- package/esm2020/src/kbd/public-api.mjs +3 -0
- package/esm2020/src/label/label.component.mjs +23 -0
- package/esm2020/src/label/label.module.mjs +21 -0
- package/esm2020/src/label/pdm-ui-kit-src-label.mjs +5 -0
- package/esm2020/src/label/public-api.mjs +3 -0
- package/esm2020/src/menubar/menubar.component.mjs +144 -0
- package/esm2020/src/menubar/menubar.module.mjs +22 -0
- package/esm2020/src/menubar/pdm-ui-kit-src-menubar.mjs +5 -0
- package/esm2020/src/menubar/public-api.mjs +3 -0
- package/esm2020/src/native-select/native-select.component.mjs +42 -0
- package/esm2020/src/native-select/native-select.module.mjs +20 -0
- package/esm2020/src/native-select/pdm-ui-kit-src-native-select.mjs +5 -0
- package/esm2020/src/native-select/public-api.mjs +3 -0
- package/esm2020/src/navigation-menu/navigation-menu.component.mjs +42 -0
- package/esm2020/src/navigation-menu/navigation-menu.module.mjs +21 -0
- package/esm2020/src/navigation-menu/pdm-ui-kit-src-navigation-menu.mjs +5 -0
- package/esm2020/src/navigation-menu/public-api.mjs +3 -0
- package/esm2020/src/overlay/create-flexible-position-strategy.mjs +54 -0
- package/esm2020/src/overlay/pdm-outside-click.directive.mjs +86 -0
- package/esm2020/src/overlay/pdm-outside-click.module.mjs +18 -0
- package/esm2020/src/overlay/pdm-overlay-options.mjs +2 -0
- package/esm2020/src/overlay/pdm-ui-kit-src-overlay.mjs +5 -0
- package/esm2020/src/overlay/public-api.mjs +6 -0
- package/esm2020/src/overlay/z-index-helper.mjs +69 -0
- package/esm2020/src/pagination/pagination.component.mjs +72 -0
- package/esm2020/src/pagination/pagination.module.mjs +21 -0
- package/esm2020/src/pagination/pdm-ui-kit-src-pagination.mjs +5 -0
- package/esm2020/src/pagination/public-api.mjs +3 -0
- package/esm2020/src/popover/pdm-ui-kit-src-popover.mjs +5 -0
- package/esm2020/src/popover/popover.component.mjs +162 -0
- package/esm2020/src/popover/popover.module.mjs +22 -0
- package/esm2020/src/popover/public-api.mjs +3 -0
- package/esm2020/src/progress/pdm-ui-kit-src-progress.mjs +5 -0
- package/esm2020/src/progress/progress.component.mjs +33 -0
- package/esm2020/src/progress/progress.module.mjs +21 -0
- package/esm2020/src/progress/public-api.mjs +3 -0
- package/esm2020/src/radio-group/pdm-ui-kit-src-radio-group.mjs +5 -0
- package/esm2020/src/radio-group/public-api.mjs +3 -0
- package/esm2020/src/radio-group/radio-group.component.mjs +38 -0
- package/esm2020/src/radio-group/radio-group.module.mjs +21 -0
- package/esm2020/src/scroll-area/pdm-ui-kit-src-scroll-area.mjs +5 -0
- package/esm2020/src/scroll-area/public-api.mjs +3 -0
- package/esm2020/src/scroll-area/scroll-area.component.mjs +20 -0
- package/esm2020/src/scroll-area/scroll-area.module.mjs +21 -0
- package/esm2020/src/select/pdm-ui-kit-src-select.mjs +5 -0
- package/esm2020/src/select/public-api.mjs +4 -0
- package/esm2020/src/select/select-option.directive.mjs +55 -0
- package/esm2020/src/select/select.component.mjs +164 -0
- package/esm2020/src/select/select.module.mjs +22 -0
- package/esm2020/src/separator/pdm-ui-kit-src-separator.mjs +5 -0
- package/esm2020/src/separator/public-api.mjs +3 -0
- package/esm2020/src/separator/separator.component.mjs +26 -0
- package/esm2020/src/separator/separator.module.mjs +21 -0
- package/esm2020/src/sidebar/pdm-ui-kit-src-sidebar.mjs +5 -0
- package/esm2020/src/sidebar/public-api.mjs +3 -0
- package/esm2020/src/sidebar/sidebar.component.mjs +67 -0
- package/esm2020/src/sidebar/sidebar.module.mjs +21 -0
- package/esm2020/src/skeleton/pdm-ui-kit-src-skeleton.mjs +5 -0
- package/esm2020/src/skeleton/public-api.mjs +3 -0
- package/esm2020/src/skeleton/skeleton.component.mjs +17 -0
- package/esm2020/src/skeleton/skeleton.module.mjs +21 -0
- package/esm2020/src/slider/pdm-ui-kit-src-slider.mjs +5 -0
- package/esm2020/src/slider/public-api.mjs +3 -0
- package/esm2020/src/slider/slider.component.mjs +46 -0
- package/esm2020/src/slider/slider.module.mjs +21 -0
- package/esm2020/src/sonner/pdm-ui-kit-src-sonner.mjs +5 -0
- package/esm2020/src/sonner/public-api.mjs +3 -0
- package/esm2020/src/sonner/sonner.component.mjs +39 -0
- package/esm2020/src/sonner/sonner.module.mjs +20 -0
- package/esm2020/src/spinner/pdm-ui-kit-src-spinner.mjs +5 -0
- package/esm2020/src/spinner/public-api.mjs +3 -0
- package/esm2020/src/spinner/spinner.component.mjs +20 -0
- package/esm2020/src/spinner/spinner.module.mjs +21 -0
- package/esm2020/src/switch/pdm-ui-kit-src-switch.mjs +5 -0
- package/esm2020/src/switch/public-api.mjs +3 -0
- package/esm2020/src/switch/switch.component.mjs +58 -0
- package/esm2020/src/switch/switch.module.mjs +21 -0
- package/esm2020/src/tabs/pdm-ui-kit-src-tabs.mjs +5 -0
- package/esm2020/src/tabs/public-api.mjs +3 -0
- package/esm2020/src/tabs/tabs.component.mjs +34 -0
- package/esm2020/src/tabs/tabs.module.mjs +21 -0
- package/esm2020/src/toggle/pdm-ui-kit-src-toggle.mjs +5 -0
- package/esm2020/src/toggle/public-api.mjs +4 -0
- package/esm2020/src/toggle/toggle-group.component.mjs +31 -0
- package/esm2020/src/toggle/toggle.component.mjs +41 -0
- package/esm2020/src/toggle/toggle.module.mjs +25 -0
- package/esm2020/src/tooltip/pdm-ui-kit-src-tooltip.mjs +5 -0
- package/esm2020/src/tooltip/public-api.mjs +3 -0
- package/esm2020/src/tooltip/tooltip.component.mjs +176 -0
- package/esm2020/src/tooltip/tooltip.module.mjs +22 -0
- package/esm2020/src/utils/pdm-ui-kit-src-utils.mjs +5 -0
- package/esm2020/src/utils/public-api.mjs +3 -0
- package/esm2020/src/utils/responsive.mjs +143 -0
- package/esm2020/src/utils/z-index.mjs +90 -0
- package/esm2020/tooltip/tooltip.component.mjs +2 -2
- package/fesm2015/pdm-ui-kit-src-accordion.mjs +68 -0
- package/fesm2015/pdm-ui-kit-src-accordion.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-alert.mjs +147 -0
- package/fesm2015/pdm-ui-kit-src-alert.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-aspect-ratio.mjs +56 -0
- package/fesm2015/pdm-ui-kit-src-aspect-ratio.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-avatar.mjs +71 -0
- package/fesm2015/pdm-ui-kit-src-avatar.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-badge.mjs +48 -0
- package/fesm2015/pdm-ui-kit-src-badge.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-breadcrumb.mjs +87 -0
- package/fesm2015/pdm-ui-kit-src-breadcrumb.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-button.mjs +376 -0
- package/fesm2015/pdm-ui-kit-src-button.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-calendar.mjs +912 -0
- package/fesm2015/pdm-ui-kit-src-calendar.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-card.mjs +73 -0
- package/fesm2015/pdm-ui-kit-src-card.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-carousel.mjs +127 -0
- package/fesm2015/pdm-ui-kit-src-carousel.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-chart.mjs +203 -0
- package/fesm2015/pdm-ui-kit-src-chart.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-checkbox.mjs +72 -0
- package/fesm2015/pdm-ui-kit-src-checkbox.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-collapsible.mjs +68 -0
- package/fesm2015/pdm-ui-kit-src-collapsible.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-combobox.mjs +200 -0
- package/fesm2015/pdm-ui-kit-src-combobox.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-command.mjs +100 -0
- package/fesm2015/pdm-ui-kit-src-command.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-context-menu.mjs +191 -0
- package/fesm2015/pdm-ui-kit-src-context-menu.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-data-table.mjs +806 -0
- package/fesm2015/pdm-ui-kit-src-data-table.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-dialog.mjs +289 -0
- package/fesm2015/pdm-ui-kit-src-dialog.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-drawer.mjs +354 -0
- package/fesm2015/pdm-ui-kit-src-drawer.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-dropdown-menu.mjs +212 -0
- package/fesm2015/pdm-ui-kit-src-dropdown-menu.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-empty.mjs +83 -0
- package/fesm2015/pdm-ui-kit-src-empty.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-field.mjs +89 -0
- package/fesm2015/pdm-ui-kit-src-field.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-hover-card.mjs +231 -0
- package/fesm2015/pdm-ui-kit-src-hover-card.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-icon.mjs +172 -0
- package/fesm2015/pdm-ui-kit-src-icon.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-input.mjs +443 -0
- package/fesm2015/pdm-ui-kit-src-input.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-item.mjs +48 -0
- package/fesm2015/pdm-ui-kit-src-item.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-kbd.mjs +42 -0
- package/fesm2015/pdm-ui-kit-src-kbd.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-label.mjs +48 -0
- package/fesm2015/pdm-ui-kit-src-label.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-menubar.mjs +170 -0
- package/fesm2015/pdm-ui-kit-src-menubar.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-native-select.mjs +66 -0
- package/fesm2015/pdm-ui-kit-src-native-select.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-navigation-menu.mjs +67 -0
- package/fesm2015/pdm-ui-kit-src-navigation-menu.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-overlay.mjs +225 -0
- package/fesm2015/pdm-ui-kit-src-overlay.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-pagination.mjs +97 -0
- package/fesm2015/pdm-ui-kit-src-pagination.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-popover.mjs +189 -0
- package/fesm2015/pdm-ui-kit-src-popover.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-progress.mjs +58 -0
- package/fesm2015/pdm-ui-kit-src-progress.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-radio-group.mjs +63 -0
- package/fesm2015/pdm-ui-kit-src-radio-group.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-scroll-area.mjs +45 -0
- package/fesm2015/pdm-ui-kit-src-scroll-area.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-select.mjs +238 -0
- package/fesm2015/pdm-ui-kit-src-select.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-separator.mjs +51 -0
- package/fesm2015/pdm-ui-kit-src-separator.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-sidebar.mjs +92 -0
- package/fesm2015/pdm-ui-kit-src-sidebar.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-skeleton.mjs +42 -0
- package/fesm2015/pdm-ui-kit-src-skeleton.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-slider.mjs +71 -0
- package/fesm2015/pdm-ui-kit-src-slider.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-sonner.mjs +63 -0
- package/fesm2015/pdm-ui-kit-src-sonner.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-spinner.mjs +45 -0
- package/fesm2015/pdm-ui-kit-src-spinner.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-switch.mjs +83 -0
- package/fesm2015/pdm-ui-kit-src-switch.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-tabs.mjs +59 -0
- package/fesm2015/pdm-ui-kit-src-tabs.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-toggle.mjs +97 -0
- package/fesm2015/pdm-ui-kit-src-toggle.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-tooltip.mjs +202 -0
- package/fesm2015/pdm-ui-kit-src-tooltip.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit-src-utils.mjs +239 -0
- package/fesm2015/pdm-ui-kit-src-utils.mjs.map +1 -0
- package/fesm2015/pdm-ui-kit.mjs +1019 -1009
- package/fesm2015/pdm-ui-kit.mjs.map +1 -1
- package/fesm2020/pdm-ui-kit-src-accordion.mjs +67 -0
- package/fesm2020/pdm-ui-kit-src-accordion.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-alert.mjs +147 -0
- package/fesm2020/pdm-ui-kit-src-alert.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-aspect-ratio.mjs +56 -0
- package/fesm2020/pdm-ui-kit-src-aspect-ratio.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-avatar.mjs +71 -0
- package/fesm2020/pdm-ui-kit-src-avatar.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-badge.mjs +48 -0
- package/fesm2020/pdm-ui-kit-src-badge.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-breadcrumb.mjs +87 -0
- package/fesm2020/pdm-ui-kit-src-breadcrumb.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-button.mjs +375 -0
- package/fesm2020/pdm-ui-kit-src-button.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-calendar.mjs +911 -0
- package/fesm2020/pdm-ui-kit-src-calendar.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-card.mjs +73 -0
- package/fesm2020/pdm-ui-kit-src-card.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-carousel.mjs +127 -0
- package/fesm2020/pdm-ui-kit-src-carousel.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-chart.mjs +202 -0
- package/fesm2020/pdm-ui-kit-src-chart.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-checkbox.mjs +72 -0
- package/fesm2020/pdm-ui-kit-src-checkbox.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-collapsible.mjs +68 -0
- package/fesm2020/pdm-ui-kit-src-collapsible.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-combobox.mjs +199 -0
- package/fesm2020/pdm-ui-kit-src-combobox.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-command.mjs +99 -0
- package/fesm2020/pdm-ui-kit-src-command.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-context-menu.mjs +191 -0
- package/fesm2020/pdm-ui-kit-src-context-menu.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-data-table.mjs +805 -0
- package/fesm2020/pdm-ui-kit-src-data-table.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-dialog.mjs +289 -0
- package/fesm2020/pdm-ui-kit-src-dialog.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-drawer.mjs +354 -0
- package/fesm2020/pdm-ui-kit-src-drawer.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-dropdown-menu.mjs +218 -0
- package/fesm2020/pdm-ui-kit-src-dropdown-menu.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-empty.mjs +83 -0
- package/fesm2020/pdm-ui-kit-src-empty.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-field.mjs +89 -0
- package/fesm2020/pdm-ui-kit-src-field.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-hover-card.mjs +231 -0
- package/fesm2020/pdm-ui-kit-src-hover-card.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-icon.mjs +169 -0
- package/fesm2020/pdm-ui-kit-src-icon.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-input.mjs +441 -0
- package/fesm2020/pdm-ui-kit-src-input.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-item.mjs +48 -0
- package/fesm2020/pdm-ui-kit-src-item.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-kbd.mjs +42 -0
- package/fesm2020/pdm-ui-kit-src-kbd.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-label.mjs +48 -0
- package/fesm2020/pdm-ui-kit-src-label.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-menubar.mjs +170 -0
- package/fesm2020/pdm-ui-kit-src-menubar.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-native-select.mjs +66 -0
- package/fesm2020/pdm-ui-kit-src-native-select.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-navigation-menu.mjs +67 -0
- package/fesm2020/pdm-ui-kit-src-navigation-menu.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-overlay.mjs +229 -0
- package/fesm2020/pdm-ui-kit-src-overlay.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-pagination.mjs +97 -0
- package/fesm2020/pdm-ui-kit-src-pagination.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-popover.mjs +188 -0
- package/fesm2020/pdm-ui-kit-src-popover.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-progress.mjs +58 -0
- package/fesm2020/pdm-ui-kit-src-progress.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-radio-group.mjs +63 -0
- package/fesm2020/pdm-ui-kit-src-radio-group.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-scroll-area.mjs +45 -0
- package/fesm2020/pdm-ui-kit-src-scroll-area.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-select.mjs +241 -0
- package/fesm2020/pdm-ui-kit-src-select.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-separator.mjs +51 -0
- package/fesm2020/pdm-ui-kit-src-separator.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-sidebar.mjs +92 -0
- package/fesm2020/pdm-ui-kit-src-sidebar.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-skeleton.mjs +42 -0
- package/fesm2020/pdm-ui-kit-src-skeleton.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-slider.mjs +71 -0
- package/fesm2020/pdm-ui-kit-src-slider.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-sonner.mjs +63 -0
- package/fesm2020/pdm-ui-kit-src-sonner.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-spinner.mjs +45 -0
- package/fesm2020/pdm-ui-kit-src-spinner.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-switch.mjs +83 -0
- package/fesm2020/pdm-ui-kit-src-switch.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-tabs.mjs +59 -0
- package/fesm2020/pdm-ui-kit-src-tabs.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-toggle.mjs +97 -0
- package/fesm2020/pdm-ui-kit-src-toggle.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-tooltip.mjs +202 -0
- package/fesm2020/pdm-ui-kit-src-tooltip.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit-src-utils.mjs +239 -0
- package/fesm2020/pdm-ui-kit-src-utils.mjs.map +1 -0
- package/fesm2020/pdm-ui-kit.mjs +1022 -1012
- package/fesm2020/pdm-ui-kit.mjs.map +1 -1
- package/input/input-password.component.d.ts +1 -1
- package/input/input.module.d.ts +1 -1
- package/menubar/menubar.component.d.ts +1 -1
- package/native-select/native-select.module.d.ts +1 -1
- package/package.json +703 -115
- package/pagination/pagination.component.d.ts +1 -1
- package/pagination/pagination.module.d.ts +2 -2
- package/select/select.component.d.ts +1 -1
- package/select/select.module.d.ts +1 -1
- package/sonner/sonner.module.d.ts +1 -1
- package/src/accordion/accordion.component.d.ts +19 -0
- package/src/accordion/accordion.module.d.ts +8 -0
- package/src/accordion/index.d.ts +5 -0
- package/src/accordion/public-api.d.ts +2 -0
- package/src/alert/alert-dialog.component.d.ts +29 -0
- package/src/alert/alert.component.d.ts +13 -0
- package/src/alert/alert.module.d.ts +9 -0
- package/src/alert/index.d.ts +5 -0
- package/src/alert/public-api.d.ts +3 -0
- package/src/aspect-ratio/aspect-ratio.component.d.ts +10 -0
- package/src/aspect-ratio/aspect-ratio.module.d.ts +8 -0
- package/src/aspect-ratio/index.d.ts +5 -0
- package/src/aspect-ratio/public-api.d.ts +2 -0
- package/src/avatar/avatar.component.d.ts +20 -0
- package/src/avatar/avatar.module.d.ts +8 -0
- package/src/avatar/index.d.ts +5 -0
- package/src/avatar/public-api.d.ts +2 -0
- package/src/badge/badge.component.d.ts +9 -0
- package/src/badge/badge.module.d.ts +8 -0
- package/src/badge/index.d.ts +5 -0
- package/src/badge/public-api.d.ts +2 -0
- package/src/breadcrumb/breadcrumb.component.d.ts +32 -0
- package/src/breadcrumb/breadcrumb.module.d.ts +8 -0
- package/src/breadcrumb/index.d.ts +5 -0
- package/src/breadcrumb/public-api.d.ts +2 -0
- package/src/button/button-group.component.d.ts +19 -0
- package/src/button/button.component.d.ts +29 -0
- package/src/button/button.module.d.ts +9 -0
- package/src/button/index.d.ts +5 -0
- package/src/button/public-api.d.ts +3 -0
- package/src/calendar/calendar.component.d.ts +149 -0
- package/src/calendar/calendar.module.d.ts +11 -0
- package/src/calendar/date-picker.component.d.ts +89 -0
- package/src/calendar/index.d.ts +5 -0
- package/src/calendar/public-api.d.ts +3 -0
- package/src/card/card.component.d.ts +37 -0
- package/src/card/card.module.d.ts +8 -0
- package/src/card/index.d.ts +5 -0
- package/src/card/public-api.d.ts +2 -0
- package/src/carousel/carousel.component.d.ts +28 -0
- package/src/carousel/carousel.module.d.ts +8 -0
- package/src/carousel/index.d.ts +5 -0
- package/src/carousel/public-api.d.ts +2 -0
- package/src/chart/chart.component.d.ts +44 -0
- package/src/chart/chart.module.d.ts +8 -0
- package/src/chart/index.d.ts +5 -0
- package/src/chart/public-api.d.ts +2 -0
- package/src/checkbox/checkbox.component.d.ts +17 -0
- package/src/checkbox/checkbox.module.d.ts +8 -0
- package/src/checkbox/index.d.ts +5 -0
- package/src/checkbox/public-api.d.ts +2 -0
- package/src/collapsible/collapsible.component.d.ts +14 -0
- package/src/collapsible/collapsible.module.d.ts +8 -0
- package/src/collapsible/index.d.ts +5 -0
- package/src/collapsible/public-api.d.ts +2 -0
- package/src/combobox/combobox.component.d.ts +35 -0
- package/src/combobox/combobox.module.d.ts +9 -0
- package/src/combobox/index.d.ts +5 -0
- package/src/combobox/public-api.d.ts +2 -0
- package/src/command/command.component.d.ts +33 -0
- package/src/command/command.module.d.ts +9 -0
- package/src/command/index.d.ts +5 -0
- package/src/command/public-api.d.ts +2 -0
- package/src/context-menu/context-menu.component.d.ts +38 -0
- package/src/context-menu/context-menu.module.d.ts +9 -0
- package/src/context-menu/index.d.ts +5 -0
- package/src/context-menu/public-api.d.ts +2 -0
- package/src/data-table/data-table.component.d.ts +200 -0
- package/src/data-table/data-table.module.d.ts +10 -0
- package/src/data-table/draggable-table.component.d.ts +74 -0
- package/src/data-table/index.d.ts +5 -0
- package/src/data-table/public-api.d.ts +4 -0
- package/src/data-table/table.component.d.ts +55 -0
- package/src/dialog/dialog.component.d.ts +72 -0
- package/src/dialog/dialog.module.d.ts +8 -0
- package/src/dialog/index.d.ts +5 -0
- package/src/dialog/public-api.d.ts +2 -0
- package/src/drawer/drawer.component.d.ts +96 -0
- package/src/drawer/drawer.module.d.ts +10 -0
- package/src/drawer/index.d.ts +5 -0
- package/src/drawer/public-api.d.ts +3 -0
- package/src/drawer/sheet.component.d.ts +46 -0
- package/src/dropdown-menu/dropdown-menu.component.d.ts +61 -0
- package/src/dropdown-menu/dropdown-menu.module.d.ts +9 -0
- package/src/dropdown-menu/index.d.ts +5 -0
- package/src/dropdown-menu/public-api.d.ts +2 -0
- package/src/empty/empty.component.d.ts +19 -0
- package/src/empty/empty.module.d.ts +10 -0
- package/src/empty/index.d.ts +5 -0
- package/src/empty/public-api.d.ts +2 -0
- package/src/field/field.component.d.ts +23 -0
- package/src/field/field.module.d.ts +8 -0
- package/src/field/index.d.ts +5 -0
- package/src/field/public-api.d.ts +2 -0
- package/src/hover-card/hover-card.component.d.ts +37 -0
- package/src/hover-card/hover-card.module.d.ts +9 -0
- package/src/hover-card/index.d.ts +5 -0
- package/src/hover-card/public-api.d.ts +2 -0
- package/src/icon/icon.component.d.ts +28 -0
- package/src/icon/icon.module.d.ts +8 -0
- package/src/icon/index.d.ts +5 -0
- package/src/icon/public-api.d.ts +2 -0
- package/src/input/index.d.ts +5 -0
- package/src/input/input-group.component.d.ts +22 -0
- package/src/input/input-otp.component.d.ts +26 -0
- package/src/input/input-password.component.d.ts +28 -0
- package/src/input/input.component.d.ts +27 -0
- package/src/input/input.module.d.ts +13 -0
- package/src/input/public-api.d.ts +6 -0
- package/src/input/textarea.component.d.ts +21 -0
- package/src/item/index.d.ts +5 -0
- package/src/item/item.component.d.ts +8 -0
- package/src/item/item.module.d.ts +8 -0
- package/src/item/public-api.d.ts +2 -0
- package/src/kbd/index.d.ts +5 -0
- package/src/kbd/kbd.component.d.ts +6 -0
- package/src/kbd/kbd.module.d.ts +8 -0
- package/src/kbd/public-api.d.ts +2 -0
- package/src/label/index.d.ts +5 -0
- package/src/label/label.component.d.ts +8 -0
- package/src/label/label.module.d.ts +8 -0
- package/src/label/public-api.d.ts +2 -0
- package/src/menubar/index.d.ts +5 -0
- package/src/menubar/menubar.component.d.ts +34 -0
- package/src/menubar/menubar.module.d.ts +9 -0
- package/src/menubar/public-api.d.ts +2 -0
- package/src/native-select/index.d.ts +5 -0
- package/src/native-select/native-select.component.d.ts +20 -0
- package/src/native-select/native-select.module.d.ts +9 -0
- package/src/native-select/public-api.d.ts +2 -0
- package/src/navigation-menu/index.d.ts +5 -0
- package/src/navigation-menu/navigation-menu.component.d.ts +33 -0
- package/src/navigation-menu/navigation-menu.module.d.ts +8 -0
- package/src/navigation-menu/public-api.d.ts +2 -0
- package/src/overlay/create-flexible-position-strategy.d.ts +15 -0
- package/src/overlay/index.d.ts +5 -0
- package/src/overlay/pdm-outside-click.directive.d.ts +40 -0
- package/src/overlay/pdm-outside-click.module.d.ts +8 -0
- package/src/overlay/pdm-overlay-options.d.ts +21 -0
- package/src/overlay/public-api.d.ts +5 -0
- package/src/overlay/z-index-helper.d.ts +36 -0
- package/src/pagination/index.d.ts +5 -0
- package/src/pagination/pagination.component.d.ts +21 -0
- package/src/pagination/pagination.module.d.ts +10 -0
- package/src/pagination/public-api.d.ts +2 -0
- package/src/popover/index.d.ts +5 -0
- package/src/popover/popover.component.d.ts +32 -0
- package/src/popover/popover.module.d.ts +9 -0
- package/src/popover/public-api.d.ts +2 -0
- package/src/progress/index.d.ts +5 -0
- package/src/progress/progress.component.d.ts +10 -0
- package/src/progress/progress.module.d.ts +8 -0
- package/src/progress/public-api.d.ts +2 -0
- package/src/radio-group/index.d.ts +5 -0
- package/src/radio-group/public-api.d.ts +2 -0
- package/src/radio-group/radio-group.component.d.ts +19 -0
- package/src/radio-group/radio-group.module.d.ts +8 -0
- package/src/scroll-area/index.d.ts +5 -0
- package/src/scroll-area/public-api.d.ts +2 -0
- package/src/scroll-area/scroll-area.component.d.ts +7 -0
- package/src/scroll-area/scroll-area.module.d.ts +8 -0
- package/src/select/index.d.ts +5 -0
- package/src/select/public-api.d.ts +3 -0
- package/src/select/select-option.directive.d.ts +34 -0
- package/src/select/select.component.d.ts +55 -0
- package/src/select/select.module.d.ts +11 -0
- package/src/separator/index.d.ts +5 -0
- package/src/separator/public-api.d.ts +2 -0
- package/src/separator/separator.component.d.ts +9 -0
- package/src/separator/separator.module.d.ts +8 -0
- package/src/sidebar/index.d.ts +5 -0
- package/src/sidebar/public-api.d.ts +2 -0
- package/src/sidebar/sidebar.component.d.ts +45 -0
- package/src/sidebar/sidebar.module.d.ts +8 -0
- package/src/skeleton/index.d.ts +5 -0
- package/src/skeleton/public-api.d.ts +2 -0
- package/src/skeleton/skeleton.component.d.ts +6 -0
- package/src/skeleton/skeleton.module.d.ts +8 -0
- package/src/slider/index.d.ts +5 -0
- package/src/slider/public-api.d.ts +2 -0
- package/src/slider/slider.component.d.ts +15 -0
- package/src/slider/slider.module.d.ts +8 -0
- package/src/sonner/index.d.ts +5 -0
- package/src/sonner/public-api.d.ts +2 -0
- package/src/sonner/sonner.component.d.ts +13 -0
- package/src/sonner/sonner.module.d.ts +9 -0
- package/src/spinner/index.d.ts +5 -0
- package/src/spinner/public-api.d.ts +2 -0
- package/src/spinner/spinner.component.d.ts +7 -0
- package/src/spinner/spinner.module.d.ts +8 -0
- package/src/switch/index.d.ts +5 -0
- package/src/switch/public-api.d.ts +2 -0
- package/src/switch/switch.component.d.ts +18 -0
- package/src/switch/switch.module.d.ts +8 -0
- package/src/tabs/index.d.ts +5 -0
- package/src/tabs/public-api.d.ts +2 -0
- package/src/tabs/tabs.component.d.ts +18 -0
- package/src/tabs/tabs.module.d.ts +8 -0
- package/src/toggle/index.d.ts +5 -0
- package/src/toggle/public-api.d.ts +3 -0
- package/src/toggle/toggle-group.component.d.ts +16 -0
- package/src/toggle/toggle.component.d.ts +14 -0
- package/src/toggle/toggle.module.d.ts +9 -0
- package/src/tooltip/index.d.ts +5 -0
- package/src/tooltip/public-api.d.ts +2 -0
- package/src/tooltip/tooltip.component.d.ts +28 -0
- package/src/tooltip/tooltip.module.d.ts +9 -0
- package/src/utils/index.d.ts +5 -0
- package/src/utils/public-api.d.ts +2 -0
- package/src/utils/responsive.d.ts +107 -0
- package/src/utils/z-index.d.ts +69 -0
- package/accordion/index.d.ts +0 -2
- package/accordion/index.mjs +0 -2
- package/alert/index.d.ts +0 -3
- package/alert/index.mjs +0 -3
- package/aspect-ratio/index.d.ts +0 -2
- package/aspect-ratio/index.mjs +0 -2
- package/avatar/index.d.ts +0 -2
- package/avatar/index.mjs +0 -2
- package/badge/index.d.ts +0 -2
- package/badge/index.mjs +0 -2
- package/breadcrumb/index.d.ts +0 -2
- package/breadcrumb/index.mjs +0 -2
- package/button/index.d.ts +0 -3
- package/button/index.mjs +0 -3
- package/calendar/index.d.ts +0 -3
- package/calendar/index.mjs +0 -3
- package/card/index.d.ts +0 -2
- package/card/index.mjs +0 -2
- package/carousel/index.d.ts +0 -2
- package/carousel/index.mjs +0 -2
- package/chart/index.d.ts +0 -2
- package/chart/index.mjs +0 -2
- package/checkbox/index.d.ts +0 -2
- package/checkbox/index.mjs +0 -2
- package/collapsible/index.d.ts +0 -2
- package/collapsible/index.mjs +0 -2
- package/combobox/index.d.ts +0 -2
- package/combobox/index.mjs +0 -2
- package/command/index.d.ts +0 -2
- package/command/index.mjs +0 -2
- package/context-menu/index.d.ts +0 -2
- package/context-menu/index.mjs +0 -2
- package/data-table/index.d.ts +0 -4
- package/data-table/index.mjs +0 -4
- package/dialog/index.d.ts +0 -2
- package/dialog/index.mjs +0 -2
- package/drawer/index.d.ts +0 -3
- package/drawer/index.mjs +0 -3
- package/dropdown-menu/index.d.ts +0 -2
- package/dropdown-menu/index.mjs +0 -2
- package/empty/index.d.ts +0 -2
- package/empty/index.mjs +0 -2
- package/field/index.d.ts +0 -2
- package/field/index.mjs +0 -2
- package/hover-card/index.d.ts +0 -2
- package/hover-card/index.mjs +0 -2
- package/icon/index.d.ts +0 -2
- package/icon/index.mjs +0 -2
- package/input/index.d.ts +0 -6
- package/input/index.mjs +0 -6
- package/item/index.d.ts +0 -2
- package/item/index.mjs +0 -2
- package/kbd/index.d.ts +0 -2
- package/kbd/index.mjs +0 -2
- package/label/index.d.ts +0 -2
- package/label/index.mjs +0 -2
- package/menubar/index.d.ts +0 -2
- package/menubar/index.mjs +0 -2
- package/native-select/index.d.ts +0 -2
- package/native-select/index.mjs +0 -2
- package/navigation-menu/index.d.ts +0 -2
- package/navigation-menu/index.mjs +0 -2
- package/overlay/index.d.ts +0 -8
- package/overlay/index.mjs +0 -8
- package/pagination/index.d.ts +0 -2
- package/pagination/index.mjs +0 -2
- package/popover/index.d.ts +0 -2
- package/popover/index.mjs +0 -2
- package/progress/index.d.ts +0 -2
- package/progress/index.mjs +0 -2
- package/radio-group/index.d.ts +0 -2
- package/radio-group/index.mjs +0 -2
- package/scroll-area/index.d.ts +0 -2
- package/scroll-area/index.mjs +0 -2
- package/select/index.d.ts +0 -3
- package/select/index.mjs +0 -3
- package/separator/index.d.ts +0 -2
- package/separator/index.mjs +0 -2
- package/sidebar/index.d.ts +0 -2
- package/sidebar/index.mjs +0 -2
- package/skeleton/index.d.ts +0 -2
- package/skeleton/index.mjs +0 -2
- package/slider/index.d.ts +0 -2
- package/slider/index.mjs +0 -2
- package/sonner/index.d.ts +0 -2
- package/sonner/index.mjs +0 -2
- package/spinner/index.d.ts +0 -2
- package/spinner/index.mjs +0 -2
- package/switch/index.d.ts +0 -2
- package/switch/index.mjs +0 -2
- package/tabs/index.d.ts +0 -2
- package/tabs/index.mjs +0 -2
- package/toggle/index.d.ts +0 -3
- package/toggle/index.mjs +0 -3
- package/tooltip/index.d.ts +0 -2
- package/tooltip/index.mjs +0 -2
- package/utils/index.d.ts +0 -3
- package/utils/index.mjs +0 -3
package/fesm2015/pdm-ui-kit.mjs
CHANGED
|
@@ -4,10 +4,20 @@ import * as i1 from '@angular/common';
|
|
|
4
4
|
import { CommonModule, isPlatformBrowser, DOCUMENT } from '@angular/common';
|
|
5
5
|
import * as i1$1 from '@angular/cdk/overlay';
|
|
6
6
|
import { OverlayModule } from '@angular/cdk/overlay';
|
|
7
|
+
import * as i3 from 'pdm-ui-kit/src/label';
|
|
8
|
+
import { PdmLabelModule as PdmLabelModule$1 } from 'pdm-ui-kit/src/label';
|
|
7
9
|
import { TemplatePortal } from '@angular/cdk/portal';
|
|
8
10
|
import { format } from 'date-fns';
|
|
11
|
+
import { createFlexiblePositionStrategy as createFlexiblePositionStrategy$1, mergeOverlayPanelClass as mergeOverlayPanelClass$1, OVERLAY_BASE_Z_INDEX as OVERLAY_BASE_Z_INDEX$1 } from 'pdm-ui-kit/src/overlay';
|
|
12
|
+
import * as i2 from 'pdm-ui-kit/src/icon';
|
|
13
|
+
import { PdmIconModule as PdmIconModule$1 } from 'pdm-ui-kit/src/icon';
|
|
14
|
+
import { TABLE_RESPONSIVE as TABLE_RESPONSIVE$1, Z_INDEX as Z_INDEX$1, responsive as responsive$1 } from 'pdm-ui-kit/src/utils';
|
|
15
|
+
import * as i2$1 from 'pdm-ui-kit/src/button';
|
|
16
|
+
import { PdmButtonModule as PdmButtonModule$1 } from 'pdm-ui-kit/src/button';
|
|
9
17
|
import { icons } from 'lucide';
|
|
10
18
|
import * as i1$2 from '@angular/platform-browser';
|
|
19
|
+
import * as i3$1 from 'pdm-ui-kit/src/select';
|
|
20
|
+
import { PdmSelectModule as PdmSelectModule$1 } from 'pdm-ui-kit/src/select';
|
|
11
21
|
|
|
12
22
|
class PdmAccordionComponent {
|
|
13
23
|
constructor() {
|
|
@@ -785,43 +795,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
785
795
|
}]
|
|
786
796
|
}] });
|
|
787
797
|
|
|
788
|
-
class PdmLabelComponent {
|
|
789
|
-
constructor() {
|
|
790
|
-
this.forId = '';
|
|
791
|
-
this.required = false;
|
|
792
|
-
this.className = '';
|
|
793
|
-
}
|
|
794
|
-
}
|
|
795
|
-
PdmLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
796
|
-
PdmLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmLabelComponent, selector: "pdm-label", inputs: { forId: "forId", required: "required", className: "className" }, ngImport: i0, template: "<label\n [attr.for]=\"forId\"\n [ngClass]=\"['text-sm font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-70', className]\"\n>\n <ng-content></ng-content>\n <span *ngIf=\"required\" class=\"ml-1 text-destructive\">*</span>\n</label>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
797
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelComponent, decorators: [{
|
|
798
|
-
type: Component,
|
|
799
|
-
args: [{ selector: 'pdm-label', changeDetection: ChangeDetectionStrategy.OnPush, template: "<label\n [attr.for]=\"forId\"\n [ngClass]=\"['text-sm font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-70', className]\"\n>\n <ng-content></ng-content>\n <span *ngIf=\"required\" class=\"ml-1 text-destructive\">*</span>\n</label>\n" }]
|
|
800
|
-
}], propDecorators: { forId: [{
|
|
801
|
-
type: Input
|
|
802
|
-
}], required: [{
|
|
803
|
-
type: Input
|
|
804
|
-
}], className: [{
|
|
805
|
-
type: Input
|
|
806
|
-
}] } });
|
|
807
|
-
|
|
808
|
-
const COMPONENTS$D = [
|
|
809
|
-
PdmLabelComponent,
|
|
810
|
-
];
|
|
811
|
-
class PdmLabelModule {
|
|
812
|
-
}
|
|
813
|
-
PdmLabelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
814
|
-
PdmLabelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, declarations: [PdmLabelComponent], imports: [CommonModule], exports: [PdmLabelComponent] });
|
|
815
|
-
PdmLabelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, imports: [CommonModule] });
|
|
816
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, decorators: [{
|
|
817
|
-
type: NgModule,
|
|
818
|
-
args: [{
|
|
819
|
-
imports: [CommonModule],
|
|
820
|
-
declarations: COMPONENTS$D,
|
|
821
|
-
exports: COMPONENTS$D
|
|
822
|
-
}]
|
|
823
|
-
}] });
|
|
824
|
-
|
|
825
798
|
const DAY_MS = 24 * 60 * 60 * 1000;
|
|
826
799
|
class PdmCalendarComponent {
|
|
827
800
|
constructor() {
|
|
@@ -1350,123 +1323,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1350
1323
|
type: Input
|
|
1351
1324
|
}] } });
|
|
1352
1325
|
|
|
1353
|
-
/**
|
|
1354
|
-
* Creates a flexible position strategy that automatically adjusts
|
|
1355
|
-
* to keep the overlay within the viewport edges.
|
|
1356
|
-
*
|
|
1357
|
-
* The strategy tries positions in this order:
|
|
1358
|
-
* 1. Bottom-left (origin bottom edge, aligns to left)
|
|
1359
|
-
* 2. Top-left (origin top edge, aligns to left)
|
|
1360
|
-
* 3. Bottom-right (origin bottom edge, aligns to right)
|
|
1361
|
-
* 4. Top-right (origin top edge, aligns to right)
|
|
1362
|
-
*
|
|
1363
|
-
* CDK Overlay will use the first position that fits within the viewport.
|
|
1364
|
-
*/
|
|
1365
|
-
function createFlexiblePositionStrategy(overlay, triggerElement, offset = 4) {
|
|
1366
|
-
return overlay
|
|
1367
|
-
.position()
|
|
1368
|
-
.flexibleConnectedTo(triggerElement)
|
|
1369
|
-
.withPositions([
|
|
1370
|
-
// Bottom-left (default) - opens downward from left edge
|
|
1371
|
-
{
|
|
1372
|
-
originX: 'start',
|
|
1373
|
-
originY: 'bottom',
|
|
1374
|
-
overlayX: 'start',
|
|
1375
|
-
overlayY: 'top',
|
|
1376
|
-
offsetY: offset
|
|
1377
|
-
},
|
|
1378
|
-
// Top-left - opens upward from left edge
|
|
1379
|
-
{
|
|
1380
|
-
originX: 'start',
|
|
1381
|
-
originY: 'top',
|
|
1382
|
-
overlayX: 'start',
|
|
1383
|
-
overlayY: 'bottom',
|
|
1384
|
-
offsetY: -offset
|
|
1385
|
-
},
|
|
1386
|
-
// Bottom-right - opens downward from right edge
|
|
1387
|
-
{
|
|
1388
|
-
originX: 'end',
|
|
1389
|
-
originY: 'bottom',
|
|
1390
|
-
overlayX: 'end',
|
|
1391
|
-
overlayY: 'top',
|
|
1392
|
-
offsetY: offset
|
|
1393
|
-
},
|
|
1394
|
-
// Top-right - opens upward from right edge
|
|
1395
|
-
{
|
|
1396
|
-
originX: 'end',
|
|
1397
|
-
originY: 'top',
|
|
1398
|
-
overlayX: 'end',
|
|
1399
|
-
overlayY: 'bottom',
|
|
1400
|
-
offsetY: -offset
|
|
1401
|
-
}
|
|
1402
|
-
])
|
|
1403
|
-
.withFlexibleDimensions(false)
|
|
1404
|
-
.withPush(true);
|
|
1405
|
-
}
|
|
1406
|
-
|
|
1407
|
-
/**
|
|
1408
|
-
* Z-Index helper for overlay components.
|
|
1409
|
-
*
|
|
1410
|
-
* CRITICAL: Consumer custom panelClass MUST NOT replace the base z-index.
|
|
1411
|
-
* This helper ensures z-index is preserved when merging custom classes.
|
|
1412
|
-
*/
|
|
1413
|
-
/**
|
|
1414
|
-
* Base z-index class for overlays - MUST be included in any overlay panel.
|
|
1415
|
-
* This ensures overlays appear above modals (z-50) and drawers (z-40).
|
|
1416
|
-
*/
|
|
1417
|
-
const OVERLAY_BASE_Z_INDEX = "z-[70]";
|
|
1418
|
-
/**
|
|
1419
|
-
* Merge consumer's panelClass with our base z-index.
|
|
1420
|
-
* Consumer classes are APPENDED, not replacing our z-index guarantee.
|
|
1421
|
-
*
|
|
1422
|
-
* @param baseZIndex - Base z-index class to enforce (default: OVERLAY_BASE_Z_INDEX)
|
|
1423
|
-
* @param consumerClasses - Optional additional classes from consumer
|
|
1424
|
-
* @returns Array of classes safe for CDK Overlay panelClass
|
|
1425
|
-
*/
|
|
1426
|
-
function mergeOverlayPanelClass(baseZIndex = OVERLAY_BASE_Z_INDEX, consumerClasses) {
|
|
1427
|
-
const baseClasses = baseZIndex.split(" ");
|
|
1428
|
-
if (!consumerClasses) {
|
|
1429
|
-
return baseClasses;
|
|
1430
|
-
}
|
|
1431
|
-
const consumerClassArray = Array.isArray(consumerClasses)
|
|
1432
|
-
? consumerClasses
|
|
1433
|
-
: consumerClasses.split(" ");
|
|
1434
|
-
// Consumer classes are appended AFTER base classes
|
|
1435
|
-
// This ensures z-index from baseClasses is preserved first
|
|
1436
|
-
return [...baseClasses, ...consumerClassArray];
|
|
1437
|
-
}
|
|
1438
|
-
/**
|
|
1439
|
-
* Create OverlayConfig with guaranteed z-index.
|
|
1440
|
-
* Use this instead of direct OverlayConfig to ensure z-index enforcement.
|
|
1441
|
-
*
|
|
1442
|
-
* @param baseConfig - Base overlay configuration
|
|
1443
|
-
* @param consumerPanelClass - Optional consumer panelClass to merge
|
|
1444
|
-
* @returns OverlayConfig with z-index guarantee
|
|
1445
|
-
*/
|
|
1446
|
-
function createZIndexEnforcedOverlay(baseConfig, consumerPanelClass) {
|
|
1447
|
-
const mergedClasses = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, consumerPanelClass);
|
|
1448
|
-
const existingPanelClass = baseConfig.panelClass;
|
|
1449
|
-
if (existingPanelClass) {
|
|
1450
|
-
const existingArray = Array.isArray(existingPanelClass)
|
|
1451
|
-
? existingPanelClass
|
|
1452
|
-
: existingPanelClass.split(" ");
|
|
1453
|
-
return Object.assign(Object.assign({}, baseConfig), { panelClass: [...mergedClasses, ...existingArray] });
|
|
1454
|
-
}
|
|
1455
|
-
return Object.assign(Object.assign({}, baseConfig), { panelClass: mergedClasses });
|
|
1456
|
-
}
|
|
1457
|
-
/**
|
|
1458
|
-
* Helper to extract z-index from a class string for debugging.
|
|
1459
|
-
*/
|
|
1460
|
-
function extractZIndex(classes) {
|
|
1461
|
-
const classArray = Array.isArray(classes) ? classes : classes.split(" ");
|
|
1462
|
-
for (const cls of classArray) {
|
|
1463
|
-
if (cls.startsWith("z-") || cls.startsWith("z-[")) {
|
|
1464
|
-
return cls;
|
|
1465
|
-
}
|
|
1466
|
-
}
|
|
1467
|
-
return null;
|
|
1468
|
-
}
|
|
1469
|
-
|
|
1470
1326
|
let nextDatePickerId = 0;
|
|
1471
1327
|
class PdmDatePickerComponent {
|
|
1472
1328
|
constructor(cdr, overlay, viewContainerRef) {
|
|
@@ -1683,13 +1539,13 @@ class PdmDatePickerComponent {
|
|
|
1683
1539
|
this._open = true;
|
|
1684
1540
|
this.openChange.emit(true);
|
|
1685
1541
|
this.cdr.markForCheck();
|
|
1686
|
-
const positionStrategy = createFlexiblePositionStrategy(this.overlay, triggerEl, 8);
|
|
1542
|
+
const positionStrategy = createFlexiblePositionStrategy$1(this.overlay, triggerEl, 8);
|
|
1687
1543
|
// CRITICAL: Use mergeOverlayPanelClass to ensure z-index is never lost.
|
|
1688
1544
|
// Consumer classes are appended AFTER base z-index.
|
|
1689
|
-
const zIndexEnforced = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
1545
|
+
const zIndexEnforced = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
1690
1546
|
// Resolve panelClass: overlayOptions.panelClass wins; otherwise use z-index enforced.
|
|
1691
1547
|
const resolvedPanelClass = ((_b = this.overlayOptions) === null || _b === void 0 ? void 0 : _b.panelClass)
|
|
1692
|
-
? mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.overlayOptions.panelClass)
|
|
1548
|
+
? mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.overlayOptions.panelClass)
|
|
1693
1549
|
: zIndexEnforced;
|
|
1694
1550
|
this.overlayRef = this.overlay.create(Object.assign(Object.assign({ positionStrategy, scrollStrategy: this.overlay.scrollStrategies.reposition() }, this.overlayOptions), {
|
|
1695
1551
|
// panelClass always enforced last to preserve z-index.
|
|
@@ -1743,7 +1599,7 @@ class PdmDatePickerComponent {
|
|
|
1743
1599
|
}
|
|
1744
1600
|
}
|
|
1745
1601
|
PdmDatePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDatePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.Overlay }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1746
|
-
PdmDatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmDatePickerComponent, selector: "pdm-date-picker", inputs: { id: "id", variant: "variant", label: "label", labelClassName: "labelClassName", className: "className", triggerClassName: "triggerClassName", panelClassName: "panelClassName", overlayOptions: "overlayOptions", placeholder: "placeholder", rangePlaceholder: "rangePlaceholder", format: "format", disabled: "disabled", readonly: "readonly", required: "required", invalid: "invalid", allowSameDayRange: "allowSameDayRange", closeOnSelect: "closeOnSelect", minDate: "minDate", maxDate: "maxDate", minYear: "minYear", maxYear: "maxYear", disabledDates: "disabledDates", isDateDisabled: "isDateDisabled", open: "open", value: "value", rangeValue: "rangeValue" }, outputs: { valueChange: "valueChange", rangeValueChange: "rangeValueChange", openChange: "openChange", monthChange: "monthChange" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, viewQueries: [{ propertyName: "triggerRef", first: true, predicate: ["triggerEl"], descendants: true }, { propertyName: "panelTemplateRef", first: true, predicate: ["panelTemplate"], descendants: true }], ngImport: i0, template: "<div [ngClass]=\"rootClasses\">\n <pdm-label *ngIf=\"label\" [forId]=\"triggerId\" [required]=\"required\" [className]=\"labelClassName\">\n {{ label }}\n </pdm-label>\n\n <button\n #triggerEl\n type=\"button\"\n [id]=\"triggerId\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"panelId\"\n [attr.aria-haspopup]=\"'dialog'\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"triggerClasses\"\n [attr.title]=\"displayText\"\n (click)=\"toggleOpen()\"\n (focus)=\"onTriggerFocus()\"\n (blur)=\"onTriggerBlur()\"\n >\n <span class=\"flex h-5 w-5 shrink-0 items-center justify-center p-0.5 text-muted-foreground\" aria-hidden=\"true\">\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\n <path d=\"M8 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <path d=\"M16 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <rect x=\"3\" y=\"4.5\" width=\"18\" height=\"16.5\" rx=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></rect>\n <path d=\"M3 9.5h18\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n </span>\n\n <span [ngClass]=\"textClasses\">{{ displayText }}</span>\n </button>\n</div>\n\n<ng-template #panelTemplate>\n <div [id]=\"panelId\" role=\"dialog\" [attr.aria-labelledby]=\"label ? triggerId : null\">\n <pdm-calendar\n [variant]=\"resolvedVariant\"\n [value]=\"value\"\n [rangeValue]=\"rangeValue\"\n [readonly]=\"readonly\"\n [allowSameDayRange]=\"allowSameDayRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [disabledDates]=\"disabledDates\"\n [isDateDisabled]=\"isDateDisabled\"\n (valueChange)=\"onCalendarValueChange($event)\"\n (rangeValueChange)=\"onCalendarRangeValueChange($event)\"\n (monthChange)=\"onCalendarMonthChange($event)\"\n ></pdm-calendar>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PdmLabelComponent, selector: "pdm-label", inputs: ["forId", "required", "className"] }, { kind: "component", type: PdmCalendarComponent, selector: "pdm-calendar", inputs: ["variant", "className", "disabledDates", "minDate", "maxDate", "minYear", "maxYear", "isDateDisabled", "allowSameDayRange", "readonly", "value", "rangeValue", "month"], outputs: ["valueChange", "rangeValueChange", "monthChange", "dateClick", "disabledDateClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1602
|
+
PdmDatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmDatePickerComponent, selector: "pdm-date-picker", inputs: { id: "id", variant: "variant", label: "label", labelClassName: "labelClassName", className: "className", triggerClassName: "triggerClassName", panelClassName: "panelClassName", overlayOptions: "overlayOptions", placeholder: "placeholder", rangePlaceholder: "rangePlaceholder", format: "format", disabled: "disabled", readonly: "readonly", required: "required", invalid: "invalid", allowSameDayRange: "allowSameDayRange", closeOnSelect: "closeOnSelect", minDate: "minDate", maxDate: "maxDate", minYear: "minYear", maxYear: "maxYear", disabledDates: "disabledDates", isDateDisabled: "isDateDisabled", open: "open", value: "value", rangeValue: "rangeValue" }, outputs: { valueChange: "valueChange", rangeValueChange: "rangeValueChange", openChange: "openChange", monthChange: "monthChange" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, viewQueries: [{ propertyName: "triggerRef", first: true, predicate: ["triggerEl"], descendants: true }, { propertyName: "panelTemplateRef", first: true, predicate: ["panelTemplate"], descendants: true }], ngImport: i0, template: "<div [ngClass]=\"rootClasses\">\n <pdm-label *ngIf=\"label\" [forId]=\"triggerId\" [required]=\"required\" [className]=\"labelClassName\">\n {{ label }}\n </pdm-label>\n\n <button\n #triggerEl\n type=\"button\"\n [id]=\"triggerId\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"panelId\"\n [attr.aria-haspopup]=\"'dialog'\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"triggerClasses\"\n [attr.title]=\"displayText\"\n (click)=\"toggleOpen()\"\n (focus)=\"onTriggerFocus()\"\n (blur)=\"onTriggerBlur()\"\n >\n <span class=\"flex h-5 w-5 shrink-0 items-center justify-center p-0.5 text-muted-foreground\" aria-hidden=\"true\">\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\n <path d=\"M8 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <path d=\"M16 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <rect x=\"3\" y=\"4.5\" width=\"18\" height=\"16.5\" rx=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></rect>\n <path d=\"M3 9.5h18\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n </span>\n\n <span [ngClass]=\"textClasses\">{{ displayText }}</span>\n </button>\n</div>\n\n<ng-template #panelTemplate>\n <div [id]=\"panelId\" role=\"dialog\" [attr.aria-labelledby]=\"label ? triggerId : null\">\n <pdm-calendar\n [variant]=\"resolvedVariant\"\n [value]=\"value\"\n [rangeValue]=\"rangeValue\"\n [readonly]=\"readonly\"\n [allowSameDayRange]=\"allowSameDayRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [disabledDates]=\"disabledDates\"\n [isDateDisabled]=\"isDateDisabled\"\n (valueChange)=\"onCalendarValueChange($event)\"\n (rangeValueChange)=\"onCalendarRangeValueChange($event)\"\n (monthChange)=\"onCalendarMonthChange($event)\"\n ></pdm-calendar>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PdmLabelComponent, selector: "pdm-label", inputs: ["forId", "required", "className"] }, { kind: "component", type: PdmCalendarComponent, selector: "pdm-calendar", inputs: ["variant", "className", "disabledDates", "minDate", "maxDate", "minYear", "maxYear", "isDateDisabled", "allowSameDayRange", "readonly", "value", "rangeValue", "month"], outputs: ["valueChange", "rangeValueChange", "monthChange", "dateClick", "disabledDateClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1747
1603
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDatePickerComponent, decorators: [{
|
|
1748
1604
|
type: Component,
|
|
1749
1605
|
args: [{ selector: "pdm-date-picker", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"rootClasses\">\n <pdm-label *ngIf=\"label\" [forId]=\"triggerId\" [required]=\"required\" [className]=\"labelClassName\">\n {{ label }}\n </pdm-label>\n\n <button\n #triggerEl\n type=\"button\"\n [id]=\"triggerId\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"open\"\n [attr.aria-controls]=\"panelId\"\n [attr.aria-haspopup]=\"'dialog'\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"triggerClasses\"\n [attr.title]=\"displayText\"\n (click)=\"toggleOpen()\"\n (focus)=\"onTriggerFocus()\"\n (blur)=\"onTriggerBlur()\"\n >\n <span class=\"flex h-5 w-5 shrink-0 items-center justify-center p-0.5 text-muted-foreground\" aria-hidden=\"true\">\n <svg viewBox=\"0 0 24 24\" class=\"h-4 w-4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\">\n <path d=\"M8 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <path d=\"M16 2v4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n <rect x=\"3\" y=\"4.5\" width=\"18\" height=\"16.5\" rx=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></rect>\n <path d=\"M3 9.5h18\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path>\n </svg>\n </span>\n\n <span [ngClass]=\"textClasses\">{{ displayText }}</span>\n </button>\n</div>\n\n<ng-template #panelTemplate>\n <div [id]=\"panelId\" role=\"dialog\" [attr.aria-labelledby]=\"label ? triggerId : null\">\n <pdm-calendar\n [variant]=\"resolvedVariant\"\n [value]=\"value\"\n [rangeValue]=\"rangeValue\"\n [readonly]=\"readonly\"\n [allowSameDayRange]=\"allowSameDayRange\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [disabledDates]=\"disabledDates\"\n [isDateDisabled]=\"isDateDisabled\"\n (valueChange)=\"onCalendarValueChange($event)\"\n (rangeValueChange)=\"onCalendarRangeValueChange($event)\"\n (monthChange)=\"onCalendarMonthChange($event)\"\n ></pdm-calendar>\n </div>\n</ng-template>\n" }]
|
|
@@ -1818,18 +1674,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1818
1674
|
args: ["document:keydown.escape"]
|
|
1819
1675
|
}] } });
|
|
1820
1676
|
|
|
1821
|
-
const COMPONENTS$
|
|
1677
|
+
const COMPONENTS$D = [PdmCalendarComponent, PdmDatePickerComponent];
|
|
1822
1678
|
class PdmCalendarModule {
|
|
1823
1679
|
}
|
|
1824
1680
|
PdmCalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1825
|
-
PdmCalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, declarations: [PdmCalendarComponent, PdmDatePickerComponent], imports: [CommonModule, OverlayModule, PdmLabelModule], exports: [PdmCalendarComponent, PdmDatePickerComponent] });
|
|
1826
|
-
PdmCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, imports: [CommonModule, OverlayModule, PdmLabelModule] });
|
|
1681
|
+
PdmCalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, declarations: [PdmCalendarComponent, PdmDatePickerComponent], imports: [CommonModule, OverlayModule, PdmLabelModule$1], exports: [PdmCalendarComponent, PdmDatePickerComponent] });
|
|
1682
|
+
PdmCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, imports: [CommonModule, OverlayModule, PdmLabelModule$1] });
|
|
1827
1683
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, decorators: [{
|
|
1828
1684
|
type: NgModule,
|
|
1829
1685
|
args: [{
|
|
1830
|
-
imports: [CommonModule, OverlayModule, PdmLabelModule],
|
|
1831
|
-
declarations: COMPONENTS$
|
|
1832
|
-
exports: COMPONENTS$
|
|
1686
|
+
imports: [CommonModule, OverlayModule, PdmLabelModule$1],
|
|
1687
|
+
declarations: COMPONENTS$D,
|
|
1688
|
+
exports: COMPONENTS$D,
|
|
1833
1689
|
}]
|
|
1834
1690
|
}] });
|
|
1835
1691
|
|
|
@@ -1878,7 +1734,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1878
1734
|
type: Input
|
|
1879
1735
|
}] } });
|
|
1880
1736
|
|
|
1881
|
-
const COMPONENTS$
|
|
1737
|
+
const COMPONENTS$C = [
|
|
1882
1738
|
PdmCardComponent,
|
|
1883
1739
|
];
|
|
1884
1740
|
class PdmCardModule {
|
|
@@ -1890,8 +1746,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1890
1746
|
type: NgModule,
|
|
1891
1747
|
args: [{
|
|
1892
1748
|
imports: [CommonModule],
|
|
1893
|
-
declarations: COMPONENTS$
|
|
1894
|
-
exports: COMPONENTS$
|
|
1749
|
+
declarations: COMPONENTS$C,
|
|
1750
|
+
exports: COMPONENTS$C
|
|
1895
1751
|
}]
|
|
1896
1752
|
}] });
|
|
1897
1753
|
|
|
@@ -1994,7 +1850,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1994
1850
|
type: Output
|
|
1995
1851
|
}] } });
|
|
1996
1852
|
|
|
1997
|
-
const COMPONENTS$
|
|
1853
|
+
const COMPONENTS$B = [
|
|
1998
1854
|
PdmCarouselComponent,
|
|
1999
1855
|
];
|
|
2000
1856
|
class PdmCarouselModule {
|
|
@@ -2006,8 +1862,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2006
1862
|
type: NgModule,
|
|
2007
1863
|
args: [{
|
|
2008
1864
|
imports: [CommonModule],
|
|
2009
|
-
declarations: COMPONENTS$
|
|
2010
|
-
exports: COMPONENTS$
|
|
1865
|
+
declarations: COMPONENTS$B,
|
|
1866
|
+
exports: COMPONENTS$B
|
|
2011
1867
|
}]
|
|
2012
1868
|
}] });
|
|
2013
1869
|
|
|
@@ -2186,7 +2042,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2186
2042
|
type: Input
|
|
2187
2043
|
}] } });
|
|
2188
2044
|
|
|
2189
|
-
const COMPONENTS$
|
|
2045
|
+
const COMPONENTS$A = [
|
|
2190
2046
|
PdmChartComponent,
|
|
2191
2047
|
];
|
|
2192
2048
|
class PdmChartModule {
|
|
@@ -2198,8 +2054,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2198
2054
|
type: NgModule,
|
|
2199
2055
|
args: [{
|
|
2200
2056
|
imports: [CommonModule],
|
|
2201
|
-
declarations: COMPONENTS$
|
|
2202
|
-
exports: COMPONENTS$
|
|
2057
|
+
declarations: COMPONENTS$A,
|
|
2058
|
+
exports: COMPONENTS$A
|
|
2203
2059
|
}]
|
|
2204
2060
|
}] });
|
|
2205
2061
|
|
|
@@ -2247,7 +2103,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2247
2103
|
type: Output
|
|
2248
2104
|
}] } });
|
|
2249
2105
|
|
|
2250
|
-
const COMPONENTS$
|
|
2106
|
+
const COMPONENTS$z = [
|
|
2251
2107
|
PdmCheckboxComponent,
|
|
2252
2108
|
];
|
|
2253
2109
|
class PdmCheckboxModule {
|
|
@@ -2259,8 +2115,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2259
2115
|
type: NgModule,
|
|
2260
2116
|
args: [{
|
|
2261
2117
|
imports: [CommonModule],
|
|
2262
|
-
declarations: COMPONENTS$
|
|
2263
|
-
exports: COMPONENTS$
|
|
2118
|
+
declarations: COMPONENTS$z,
|
|
2119
|
+
exports: COMPONENTS$z
|
|
2264
2120
|
}]
|
|
2265
2121
|
}] });
|
|
2266
2122
|
|
|
@@ -2304,7 +2160,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2304
2160
|
type: Output
|
|
2305
2161
|
}] } });
|
|
2306
2162
|
|
|
2307
|
-
const COMPONENTS$
|
|
2163
|
+
const COMPONENTS$y = [
|
|
2308
2164
|
PdmCollapsibleComponent,
|
|
2309
2165
|
];
|
|
2310
2166
|
class PdmCollapsibleModule {
|
|
@@ -2316,8 +2172,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2316
2172
|
type: NgModule,
|
|
2317
2173
|
args: [{
|
|
2318
2174
|
imports: [CommonModule],
|
|
2319
|
-
declarations: COMPONENTS$
|
|
2320
|
-
exports: COMPONENTS$
|
|
2175
|
+
declarations: COMPONENTS$y,
|
|
2176
|
+
exports: COMPONENTS$y
|
|
2321
2177
|
}]
|
|
2322
2178
|
}] });
|
|
2323
2179
|
|
|
@@ -2386,7 +2242,7 @@ class PdmComboboxComponent {
|
|
|
2386
2242
|
.withPositions(this.getPositionConfigs())
|
|
2387
2243
|
.withFlexibleDimensions(false)
|
|
2388
2244
|
.withPush(true);
|
|
2389
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
2245
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
2390
2246
|
this.overlayRef = this.overlay.create({
|
|
2391
2247
|
positionStrategy,
|
|
2392
2248
|
panelClass,
|
|
@@ -2489,7 +2345,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2489
2345
|
args: ["document:keydown.escape"]
|
|
2490
2346
|
}] } });
|
|
2491
2347
|
|
|
2492
|
-
const COMPONENTS$
|
|
2348
|
+
const COMPONENTS$x = [
|
|
2493
2349
|
PdmComboboxComponent,
|
|
2494
2350
|
];
|
|
2495
2351
|
class PdmComboboxModule {
|
|
@@ -2501,189 +2357,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2501
2357
|
type: NgModule,
|
|
2502
2358
|
args: [{
|
|
2503
2359
|
imports: [CommonModule, OverlayModule],
|
|
2504
|
-
declarations: COMPONENTS$
|
|
2505
|
-
exports: COMPONENTS$
|
|
2360
|
+
declarations: COMPONENTS$x,
|
|
2361
|
+
exports: COMPONENTS$x
|
|
2506
2362
|
}]
|
|
2507
2363
|
}] });
|
|
2508
2364
|
|
|
2509
|
-
|
|
2510
|
-
|
|
2511
|
-
|
|
2512
|
-
this.
|
|
2513
|
-
this.
|
|
2514
|
-
this.
|
|
2515
|
-
this.
|
|
2516
|
-
this.
|
|
2517
|
-
|
|
2365
|
+
class PdmCommandComponent {
|
|
2366
|
+
constructor() {
|
|
2367
|
+
this.open = true;
|
|
2368
|
+
this.hintLabel = 'Press';
|
|
2369
|
+
this.hintKey = 'J';
|
|
2370
|
+
this.placeholder = 'Type a command or search...';
|
|
2371
|
+
this.emptyMessage = 'No results found.';
|
|
2372
|
+
this.items = [
|
|
2373
|
+
{ label: 'Calendar', value: 'calendar', group: 'Suggestions', icon: 'calendar' },
|
|
2374
|
+
{ label: 'Search emoji', value: 'emoji', group: 'Suggestions', icon: 'smile' },
|
|
2375
|
+
{ label: 'Calculator', value: 'calculator', group: 'Suggestions', icon: 'calculator', disabled: true },
|
|
2376
|
+
{ label: 'Profile', value: 'profile', group: 'Settings', icon: 'user', shortcut: '⌘P' },
|
|
2377
|
+
{ label: 'Billing', value: 'billing', group: 'Settings', icon: 'credit-card', shortcut: '⌘B' },
|
|
2378
|
+
{ label: 'Settings', value: 'settings', group: 'Settings', icon: 'settings', shortcut: '⌘S' }
|
|
2379
|
+
];
|
|
2518
2380
|
this.className = '';
|
|
2519
|
-
this.
|
|
2520
|
-
this.
|
|
2521
|
-
this.
|
|
2522
|
-
this.aliasMapByLibrary = {
|
|
2523
|
-
lucide: {
|
|
2524
|
-
'check-circle': 'circle-check',
|
|
2525
|
-
'alert-circle': 'circle-alert',
|
|
2526
|
-
info: 'circle-info',
|
|
2527
|
-
'sort-asc': 'arrow-up-a-z',
|
|
2528
|
-
'sort-desc': 'arrow-down-z-a'
|
|
2529
|
-
},
|
|
2530
|
-
tabler: {
|
|
2531
|
-
'alert-triangle': 'triangle-alert',
|
|
2532
|
-
'user-circle': 'circle-user',
|
|
2533
|
-
'settings-2': 'settings-2',
|
|
2534
|
-
'external-link': 'external-link'
|
|
2535
|
-
},
|
|
2536
|
-
hugeicons: {
|
|
2537
|
-
'alert-02': 'circle-alert',
|
|
2538
|
-
'user-circle': 'circle-user',
|
|
2539
|
-
'search-01': 'search',
|
|
2540
|
-
'settings-01': 'settings',
|
|
2541
|
-
'arrow-right-01': 'chevron-right',
|
|
2542
|
-
'arrow-down-01': 'chevron-down'
|
|
2543
|
-
},
|
|
2544
|
-
phosphor: {
|
|
2545
|
-
'warning-circle': 'circle-alert',
|
|
2546
|
-
'caret-down': 'chevron-down',
|
|
2547
|
-
'caret-right': 'chevron-right',
|
|
2548
|
-
'user-circle': 'circle-user',
|
|
2549
|
-
gear: 'settings',
|
|
2550
|
-
'arrow-square-out': 'external-link'
|
|
2551
|
-
},
|
|
2552
|
-
remix: {
|
|
2553
|
-
'alert-line': 'circle-alert',
|
|
2554
|
-
'arrow-right-line': 'chevron-right',
|
|
2555
|
-
'arrow-down-s-line': 'chevron-down',
|
|
2556
|
-
'external-link-line': 'external-link',
|
|
2557
|
-
'user-line': 'user',
|
|
2558
|
-
'settings-3-line': 'settings'
|
|
2559
|
-
}
|
|
2560
|
-
};
|
|
2561
|
-
}
|
|
2562
|
-
get resolvedStrokeWidth() {
|
|
2563
|
-
const value = Number(this.strokeWidth);
|
|
2564
|
-
if (Number.isFinite(value) && value > 0) {
|
|
2565
|
-
return value;
|
|
2566
|
-
}
|
|
2567
|
-
if (this.library === 'phosphor') {
|
|
2568
|
-
return 1.6;
|
|
2569
|
-
}
|
|
2570
|
-
if (this.library === 'tabler') {
|
|
2571
|
-
return 1.8;
|
|
2572
|
-
}
|
|
2573
|
-
return 1.5;
|
|
2574
|
-
}
|
|
2575
|
-
get resolvedSize() {
|
|
2576
|
-
const value = Number(this.size);
|
|
2577
|
-
return Number.isFinite(value) && value > 0 ? value : 16;
|
|
2578
|
-
}
|
|
2579
|
-
get iconKey() {
|
|
2580
|
-
var _a, _b;
|
|
2581
|
-
const raw = `${this.name || ''}`.trim();
|
|
2582
|
-
if (!raw) {
|
|
2583
|
-
return 'circle';
|
|
2584
|
-
}
|
|
2585
|
-
const trimmed = raw.replace(/^(lucide|tabler|hugeicons|phosphor|remix)\//, '');
|
|
2586
|
-
const aliases = (_a = this.aliasMapByLibrary[this.library]) !== null && _a !== void 0 ? _a : {};
|
|
2587
|
-
return (_b = aliases[trimmed]) !== null && _b !== void 0 ? _b : trimmed;
|
|
2588
|
-
}
|
|
2589
|
-
get svgMarkup() {
|
|
2590
|
-
var _a;
|
|
2591
|
-
const node = (_a = this.resolveIconNode(this.iconKey)) !== null && _a !== void 0 ? _a : FALLBACK_NODE;
|
|
2592
|
-
const strokeWidth = this.escapeAttr(this.resolvedStrokeWidth);
|
|
2593
|
-
const size = this.escapeAttr(this.resolvedSize);
|
|
2594
|
-
const body = node
|
|
2595
|
-
.map(([tag, attrs]) => {
|
|
2596
|
-
const serializedAttrs = Object.entries(attrs)
|
|
2597
|
-
.map(([key, value]) => `${key}="${this.escapeAttr(value)}"`)
|
|
2598
|
-
.join(' ');
|
|
2599
|
-
return serializedAttrs ? `<${tag} ${serializedAttrs}></${tag}>` : `<${tag}></${tag}>`;
|
|
2600
|
-
})
|
|
2601
|
-
.join('');
|
|
2602
|
-
const svg = `<svg xmlns="http://www.w3.org/2000/svg" width="${size}" height="${size}" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="${strokeWidth}" stroke-linecap="round" stroke-linejoin="round">${body}</svg>`;
|
|
2603
|
-
return this.sanitizer.bypassSecurityTrustHtml(svg);
|
|
2604
|
-
}
|
|
2605
|
-
resolveIconNode(iconName) {
|
|
2606
|
-
var _a;
|
|
2607
|
-
const normalized = this.normalizeIconName(iconName);
|
|
2608
|
-
return (_a = this.lucideIndex.get(normalized)) !== null && _a !== void 0 ? _a : null;
|
|
2609
|
-
}
|
|
2610
|
-
normalizeIconName(name) {
|
|
2611
|
-
return `${name || ''}`.toLowerCase().replace(/[^a-z0-9]/g, '');
|
|
2612
|
-
}
|
|
2613
|
-
buildLucideIndex() {
|
|
2614
|
-
const map = new Map();
|
|
2615
|
-
Object.entries(icons).forEach(([iconName, iconNode]) => {
|
|
2616
|
-
map.set(this.normalizeIconName(iconName), iconNode);
|
|
2617
|
-
});
|
|
2618
|
-
return map;
|
|
2619
|
-
}
|
|
2620
|
-
escapeAttr(value) {
|
|
2621
|
-
return `${value !== null && value !== void 0 ? value : ''}`
|
|
2622
|
-
.replace(/&/g, '&')
|
|
2623
|
-
.replace(/"/g, '"')
|
|
2624
|
-
.replace(/</g, '<')
|
|
2625
|
-
.replace(/>/g, '>');
|
|
2626
|
-
}
|
|
2627
|
-
}
|
|
2628
|
-
PdmIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconComponent, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
2629
|
-
PdmIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmIconComponent, selector: "pdm-icon", inputs: { name: "name", library: "library", assetUrl: "assetUrl", size: "size", strokeWidth: "strokeWidth", className: "className", ariaLabel: "ariaLabel", decorative: "decorative" }, ngImport: i0, template: "<ng-container *ngIf=\"assetUrl; else inlineIcon\">\n <img\n [src]=\"assetUrl\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [ngClass]=\"className\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n alt=\"\"\n />\n</ng-container>\n\n<ng-template #inlineIcon>\n <span\n [ngClass]=\"className\"\n [style.display]=\"'inline-flex'\"\n [style.align-items]=\"'center'\"\n [style.justify-content]=\"'center'\"\n [style.line-height]=\"0\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n [innerHTML]=\"svgMarkup\"\n ></span>\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}:host svg{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2630
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconComponent, decorators: [{
|
|
2631
|
-
type: Component,
|
|
2632
|
-
args: [{ selector: 'pdm-icon', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"assetUrl; else inlineIcon\">\n <img\n [src]=\"assetUrl\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [ngClass]=\"className\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n alt=\"\"\n />\n</ng-container>\n\n<ng-template #inlineIcon>\n <span\n [ngClass]=\"className\"\n [style.display]=\"'inline-flex'\"\n [style.align-items]=\"'center'\"\n [style.justify-content]=\"'center'\"\n [style.line-height]=\"0\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n [innerHTML]=\"svgMarkup\"\n ></span>\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}:host svg{display:block}\n"] }]
|
|
2633
|
-
}], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; }, propDecorators: { name: [{
|
|
2634
|
-
type: Input
|
|
2635
|
-
}], library: [{
|
|
2636
|
-
type: Input
|
|
2637
|
-
}], assetUrl: [{
|
|
2638
|
-
type: Input
|
|
2639
|
-
}], size: [{
|
|
2640
|
-
type: Input
|
|
2641
|
-
}], strokeWidth: [{
|
|
2642
|
-
type: Input
|
|
2643
|
-
}], className: [{
|
|
2644
|
-
type: Input
|
|
2645
|
-
}], ariaLabel: [{
|
|
2646
|
-
type: Input
|
|
2647
|
-
}], decorative: [{
|
|
2648
|
-
type: Input
|
|
2649
|
-
}] } });
|
|
2650
|
-
|
|
2651
|
-
const COMPONENTS$v = [
|
|
2652
|
-
PdmIconComponent,
|
|
2653
|
-
];
|
|
2654
|
-
class PdmIconModule {
|
|
2655
|
-
}
|
|
2656
|
-
PdmIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2657
|
-
PdmIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, declarations: [PdmIconComponent], imports: [CommonModule], exports: [PdmIconComponent] });
|
|
2658
|
-
PdmIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, imports: [CommonModule] });
|
|
2659
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, decorators: [{
|
|
2660
|
-
type: NgModule,
|
|
2661
|
-
args: [{
|
|
2662
|
-
imports: [CommonModule],
|
|
2663
|
-
declarations: COMPONENTS$v,
|
|
2664
|
-
exports: COMPONENTS$v
|
|
2665
|
-
}]
|
|
2666
|
-
}] });
|
|
2667
|
-
|
|
2668
|
-
class PdmCommandComponent {
|
|
2669
|
-
constructor() {
|
|
2670
|
-
this.open = true;
|
|
2671
|
-
this.hintLabel = 'Press';
|
|
2672
|
-
this.hintKey = 'J';
|
|
2673
|
-
this.placeholder = 'Type a command or search...';
|
|
2674
|
-
this.emptyMessage = 'No results found.';
|
|
2675
|
-
this.items = [
|
|
2676
|
-
{ label: 'Calendar', value: 'calendar', group: 'Suggestions', icon: 'calendar' },
|
|
2677
|
-
{ label: 'Search emoji', value: 'emoji', group: 'Suggestions', icon: 'smile' },
|
|
2678
|
-
{ label: 'Calculator', value: 'calculator', group: 'Suggestions', icon: 'calculator', disabled: true },
|
|
2679
|
-
{ label: 'Profile', value: 'profile', group: 'Settings', icon: 'user', shortcut: '⌘P' },
|
|
2680
|
-
{ label: 'Billing', value: 'billing', group: 'Settings', icon: 'credit-card', shortcut: '⌘B' },
|
|
2681
|
-
{ label: 'Settings', value: 'settings', group: 'Settings', icon: 'settings', shortcut: '⌘S' }
|
|
2682
|
-
];
|
|
2683
|
-
this.className = '';
|
|
2684
|
-
this.itemSelect = new EventEmitter();
|
|
2685
|
-
this.openChange = new EventEmitter();
|
|
2686
|
-
this.query = '';
|
|
2381
|
+
this.itemSelect = new EventEmitter();
|
|
2382
|
+
this.openChange = new EventEmitter();
|
|
2383
|
+
this.query = '';
|
|
2687
2384
|
}
|
|
2688
2385
|
get filteredItems() {
|
|
2689
2386
|
const q = this.query.toLowerCase().trim();
|
|
@@ -2713,7 +2410,7 @@ class PdmCommandComponent {
|
|
|
2713
2410
|
}
|
|
2714
2411
|
}
|
|
2715
2412
|
PdmCommandComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2716
|
-
PdmCommandComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmCommandComponent, selector: "pdm-command", inputs: { open: "open", hintLabel: "hintLabel", hintKey: "hintKey", placeholder: "placeholder", emptyMessage: "emptyMessage", items: "items", className: "className" }, outputs: { itemSelect: "itemSelect", openChange: "openChange" }, ngImport: i0, template: "<div [ngClass]=\"['w-full', className]\">\n <div *ngIf=\"!open\" class=\"flex items-center gap-1\">\n <span class=\"text-sm font-medium text-muted-foreground\">{{\n hintLabel\n }}</span>\n <button\n type=\"button\"\n class=\"inline-flex h-5 appearance-none box-border items-center gap-0.5 rounded-sm border border-solid border-border bg-muted px-1.5\"\n (click)=\"toggleOpen()\"\n >\n <pdm-icon\n name=\"command\"\n [size]=\"12\"\n className=\"text-muted-foreground\"\n [decorative]=\"true\"\n ></pdm-icon>\n <span class=\"text-xs text-muted-foreground\">{{ hintKey }}</span>\n </button>\n </div>\n\n <section\n *ngIf=\"open\"\n class=\"flex w-full flex-col overflow-hidden rounded-lg border border-solid border-border bg-popover text-popover-foreground shadow-md\"\n >\n <div class=\"flex items-center gap-2 border-b border-border px-3\">\n <pdm-icon\n name=\"search\"\n [size]=\"16\"\n className=\"text-muted-foreground\"\n [decorative]=\"true\"\n ></pdm-icon>\n <input\n type=\"text\"\n [placeholder]=\"placeholder\"\n [value]=\"query\"\n (input)=\"onQueryChange($event)\"\n class=\"h-10 w-full appearance-none box-border bg-transparent py-3 text-sm text-foreground outline-none placeholder:text-muted-foreground\"\n />\n </div>\n\n <div class=\"max-h-[50vh] overflow-y-auto p-1 md:max-h-72\">\n <ng-container *ngFor=\"let group of groupedItems; let groupIndex = index\">\n <div\n *ngIf=\"group.name\"\n class=\"px-2 py-1.5 text-xs text-muted-foreground\"\n >\n {{ group.name }}\n </div>\n <button\n *ngFor=\"let item of group.items\"\n type=\"button\"\n [disabled]=\"item.disabled\"\n class=\"flex w-full appearance-none box-border items-center gap-2 rounded-sm border-0 bg-transparent px-2 py-1.5 text-left text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground\"\n [ngClass]=\"[\n item.disabled ? 'opacity-50' : '',\n item.label === 'Calendar' ? 'bg-accent text-accent-foreground' : '',\n ]\"\n (click)=\"select(item.value)\"\n >\n <span\n class=\"inline-flex h-4 w-4 items-center justify-center text-foreground\"\n >\n <pdm-icon\n *ngIf=\"item.icon\"\n [name]=\"item.icon\"\n [size]=\"16\"\n [decorative]=\"true\"\n ></pdm-icon>\n </span>\n <span class=\"min-w-0 flex-1 text-foreground\">{{ item.label }}</span>\n <span *ngIf=\"item.shortcut\" class=\"text-xs text-muted-foreground\">{{\n item.shortcut\n }}</span>\n </button>\n <div\n *ngIf=\"groupIndex === 0 && groupedItems.length > 1\"\n class=\"my-1 border-t border-border\"\n ></div>\n </ng-container>\n\n <p\n *ngIf=\"filteredItems.length === 0\"\n class=\"m-0 py-6 text-center text-sm text-muted-foreground\"\n >\n {{ emptyMessage }}\n </p>\n </div>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2413
|
+
PdmCommandComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmCommandComponent, selector: "pdm-command", inputs: { open: "open", hintLabel: "hintLabel", hintKey: "hintKey", placeholder: "placeholder", emptyMessage: "emptyMessage", items: "items", className: "className" }, outputs: { itemSelect: "itemSelect", openChange: "openChange" }, ngImport: i0, template: "<div [ngClass]=\"['w-full', className]\">\n <div *ngIf=\"!open\" class=\"flex items-center gap-1\">\n <span class=\"text-sm font-medium text-muted-foreground\">{{\n hintLabel\n }}</span>\n <button\n type=\"button\"\n class=\"inline-flex h-5 appearance-none box-border items-center gap-0.5 rounded-sm border border-solid border-border bg-muted px-1.5\"\n (click)=\"toggleOpen()\"\n >\n <pdm-icon\n name=\"command\"\n [size]=\"12\"\n className=\"text-muted-foreground\"\n [decorative]=\"true\"\n ></pdm-icon>\n <span class=\"text-xs text-muted-foreground\">{{ hintKey }}</span>\n </button>\n </div>\n\n <section\n *ngIf=\"open\"\n class=\"flex w-full flex-col overflow-hidden rounded-lg border border-solid border-border bg-popover text-popover-foreground shadow-md\"\n >\n <div class=\"flex items-center gap-2 border-b border-border px-3\">\n <pdm-icon\n name=\"search\"\n [size]=\"16\"\n className=\"text-muted-foreground\"\n [decorative]=\"true\"\n ></pdm-icon>\n <input\n type=\"text\"\n [placeholder]=\"placeholder\"\n [value]=\"query\"\n (input)=\"onQueryChange($event)\"\n class=\"h-10 w-full appearance-none box-border bg-transparent py-3 text-sm text-foreground outline-none placeholder:text-muted-foreground\"\n />\n </div>\n\n <div class=\"max-h-[50vh] overflow-y-auto p-1 md:max-h-72\">\n <ng-container *ngFor=\"let group of groupedItems; let groupIndex = index\">\n <div\n *ngIf=\"group.name\"\n class=\"px-2 py-1.5 text-xs text-muted-foreground\"\n >\n {{ group.name }}\n </div>\n <button\n *ngFor=\"let item of group.items\"\n type=\"button\"\n [disabled]=\"item.disabled\"\n class=\"flex w-full appearance-none box-border items-center gap-2 rounded-sm border-0 bg-transparent px-2 py-1.5 text-left text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground\"\n [ngClass]=\"[\n item.disabled ? 'opacity-50' : '',\n item.label === 'Calendar' ? 'bg-accent text-accent-foreground' : '',\n ]\"\n (click)=\"select(item.value)\"\n >\n <span\n class=\"inline-flex h-4 w-4 items-center justify-center text-foreground\"\n >\n <pdm-icon\n *ngIf=\"item.icon\"\n [name]=\"item.icon\"\n [size]=\"16\"\n [decorative]=\"true\"\n ></pdm-icon>\n </span>\n <span class=\"min-w-0 flex-1 text-foreground\">{{ item.label }}</span>\n <span *ngIf=\"item.shortcut\" class=\"text-xs text-muted-foreground\">{{\n item.shortcut\n }}</span>\n </button>\n <div\n *ngIf=\"groupIndex === 0 && groupedItems.length > 1\"\n class=\"my-1 border-t border-border\"\n ></div>\n </ng-container>\n\n <p\n *ngIf=\"filteredItems.length === 0\"\n class=\"m-0 py-6 text-center text-sm text-muted-foreground\"\n >\n {{ emptyMessage }}\n </p>\n </div>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2717
2414
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandComponent, decorators: [{
|
|
2718
2415
|
type: Component,
|
|
2719
2416
|
args: [{ selector: 'pdm-command', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"['w-full', className]\">\n <div *ngIf=\"!open\" class=\"flex items-center gap-1\">\n <span class=\"text-sm font-medium text-muted-foreground\">{{\n hintLabel\n }}</span>\n <button\n type=\"button\"\n class=\"inline-flex h-5 appearance-none box-border items-center gap-0.5 rounded-sm border border-solid border-border bg-muted px-1.5\"\n (click)=\"toggleOpen()\"\n >\n <pdm-icon\n name=\"command\"\n [size]=\"12\"\n className=\"text-muted-foreground\"\n [decorative]=\"true\"\n ></pdm-icon>\n <span class=\"text-xs text-muted-foreground\">{{ hintKey }}</span>\n </button>\n </div>\n\n <section\n *ngIf=\"open\"\n class=\"flex w-full flex-col overflow-hidden rounded-lg border border-solid border-border bg-popover text-popover-foreground shadow-md\"\n >\n <div class=\"flex items-center gap-2 border-b border-border px-3\">\n <pdm-icon\n name=\"search\"\n [size]=\"16\"\n className=\"text-muted-foreground\"\n [decorative]=\"true\"\n ></pdm-icon>\n <input\n type=\"text\"\n [placeholder]=\"placeholder\"\n [value]=\"query\"\n (input)=\"onQueryChange($event)\"\n class=\"h-10 w-full appearance-none box-border bg-transparent py-3 text-sm text-foreground outline-none placeholder:text-muted-foreground\"\n />\n </div>\n\n <div class=\"max-h-[50vh] overflow-y-auto p-1 md:max-h-72\">\n <ng-container *ngFor=\"let group of groupedItems; let groupIndex = index\">\n <div\n *ngIf=\"group.name\"\n class=\"px-2 py-1.5 text-xs text-muted-foreground\"\n >\n {{ group.name }}\n </div>\n <button\n *ngFor=\"let item of group.items\"\n type=\"button\"\n [disabled]=\"item.disabled\"\n class=\"flex w-full appearance-none box-border items-center gap-2 rounded-sm border-0 bg-transparent px-2 py-1.5 text-left text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground\"\n [ngClass]=\"[\n item.disabled ? 'opacity-50' : '',\n item.label === 'Calendar' ? 'bg-accent text-accent-foreground' : '',\n ]\"\n (click)=\"select(item.value)\"\n >\n <span\n class=\"inline-flex h-4 w-4 items-center justify-center text-foreground\"\n >\n <pdm-icon\n *ngIf=\"item.icon\"\n [name]=\"item.icon\"\n [size]=\"16\"\n [decorative]=\"true\"\n ></pdm-icon>\n </span>\n <span class=\"min-w-0 flex-1 text-foreground\">{{ item.label }}</span>\n <span *ngIf=\"item.shortcut\" class=\"text-xs text-muted-foreground\">{{\n item.shortcut\n }}</span>\n </button>\n <div\n *ngIf=\"groupIndex === 0 && groupedItems.length > 1\"\n class=\"my-1 border-t border-border\"\n ></div>\n </ng-container>\n\n <p\n *ngIf=\"filteredItems.length === 0\"\n class=\"m-0 py-6 text-center text-sm text-muted-foreground\"\n >\n {{ emptyMessage }}\n </p>\n </div>\n </section>\n</div>\n" }]
|
|
@@ -2737,18 +2434,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2737
2434
|
type: Output
|
|
2738
2435
|
}] } });
|
|
2739
2436
|
|
|
2740
|
-
const COMPONENTS$
|
|
2437
|
+
const COMPONENTS$w = [PdmCommandComponent];
|
|
2741
2438
|
class PdmCommandModule {
|
|
2742
2439
|
}
|
|
2743
2440
|
PdmCommandModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2744
|
-
PdmCommandModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, declarations: [PdmCommandComponent], imports: [CommonModule, PdmIconModule], exports: [PdmCommandComponent] });
|
|
2745
|
-
PdmCommandModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, imports: [CommonModule, PdmIconModule] });
|
|
2441
|
+
PdmCommandModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, declarations: [PdmCommandComponent], imports: [CommonModule, PdmIconModule$1], exports: [PdmCommandComponent] });
|
|
2442
|
+
PdmCommandModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, imports: [CommonModule, PdmIconModule$1] });
|
|
2746
2443
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, decorators: [{
|
|
2747
2444
|
type: NgModule,
|
|
2748
2445
|
args: [{
|
|
2749
|
-
imports: [CommonModule, PdmIconModule],
|
|
2750
|
-
declarations: COMPONENTS$
|
|
2751
|
-
exports: COMPONENTS$
|
|
2446
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
2447
|
+
declarations: COMPONENTS$w,
|
|
2448
|
+
exports: COMPONENTS$w,
|
|
2752
2449
|
}]
|
|
2753
2450
|
}] });
|
|
2754
2451
|
|
|
@@ -2850,7 +2547,7 @@ class PdmContextMenuComponent {
|
|
|
2850
2547
|
.global()
|
|
2851
2548
|
.left(`${this.x}px`)
|
|
2852
2549
|
.top(`${this.y}px`);
|
|
2853
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
2550
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
2854
2551
|
this.overlayRef = this.overlay.create({
|
|
2855
2552
|
positionStrategy,
|
|
2856
2553
|
panelClass,
|
|
@@ -2911,7 +2608,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2911
2608
|
args: ["document:click"]
|
|
2912
2609
|
}] } });
|
|
2913
2610
|
|
|
2914
|
-
const COMPONENTS$
|
|
2611
|
+
const COMPONENTS$v = [
|
|
2915
2612
|
PdmContextMenuComponent,
|
|
2916
2613
|
];
|
|
2917
2614
|
class PdmContextMenuModule {
|
|
@@ -2923,198 +2620,55 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2923
2620
|
type: NgModule,
|
|
2924
2621
|
args: [{
|
|
2925
2622
|
imports: [CommonModule, OverlayModule],
|
|
2926
|
-
declarations: COMPONENTS$
|
|
2927
|
-
exports: COMPONENTS$
|
|
2623
|
+
declarations: COMPONENTS$v,
|
|
2624
|
+
exports: COMPONENTS$v
|
|
2928
2625
|
}]
|
|
2929
2626
|
}] });
|
|
2930
2627
|
|
|
2931
2628
|
/**
|
|
2932
|
-
*
|
|
2629
|
+
* Componente base de tabla con soporte responsive
|
|
2933
2630
|
*
|
|
2934
|
-
*
|
|
2935
|
-
* de forma consistente en todos los componentes.
|
|
2936
|
-
*/
|
|
2937
|
-
/**
|
|
2938
|
-
* Breakpoints estándar de Tailwind CSS
|
|
2939
|
-
* Mobile-first approach: los estilos base son para mobile, los breakpoints son MIN-WIDTH
|
|
2940
|
-
*/
|
|
2941
|
-
const BREAKPOINTS = {
|
|
2942
|
-
sm: '640px',
|
|
2943
|
-
md: '768px',
|
|
2944
|
-
lg: '1024px',
|
|
2945
|
-
xl: '1280px',
|
|
2946
|
-
'2xl': '1536px' // extra large desktop
|
|
2947
|
-
};
|
|
2948
|
-
/**
|
|
2949
|
-
* Helper para generar clases responsive de forma programática
|
|
2631
|
+
* SIMPLIFICADO: Ya no incluye drag & drop (usar pdm-draggable-table para eso)
|
|
2950
2632
|
*
|
|
2951
2633
|
* @example
|
|
2952
|
-
*
|
|
2953
|
-
*
|
|
2954
|
-
|
|
2955
|
-
|
|
2956
|
-
|
|
2957
|
-
if (config.default) {
|
|
2958
|
-
classes.push(config.default);
|
|
2959
|
-
}
|
|
2960
|
-
['sm', 'md', 'lg', 'xl', '2xl'].forEach(bp => {
|
|
2961
|
-
if (config[bp]) {
|
|
2962
|
-
classes.push(`${bp}:${config[bp]}`);
|
|
2963
|
-
}
|
|
2964
|
-
});
|
|
2965
|
-
return classes.join(' ');
|
|
2966
|
-
}
|
|
2967
|
-
/**
|
|
2968
|
-
* Helper para overflow responsive
|
|
2969
|
-
* Maneja el caso común de scroll en mobile, auto en desktop
|
|
2634
|
+
* // Tabla simple con scroll horizontal
|
|
2635
|
+
* <pdm-table variant="default">
|
|
2636
|
+
* <thead><tr><th>Name</th><th>Email</th></tr></thead>
|
|
2637
|
+
* <tbody><tr><td>John</td><td>john@example.com</td></tr></tbody>
|
|
2638
|
+
* </pdm-table>
|
|
2970
2639
|
*
|
|
2971
2640
|
* @example
|
|
2972
|
-
*
|
|
2973
|
-
*
|
|
2641
|
+
* // Tabla interactiva con wrap en mobile
|
|
2642
|
+
* <pdm-table variant="interactive" responsiveStrategy="wrap">
|
|
2643
|
+
* ...
|
|
2644
|
+
* </pdm-table>
|
|
2974
2645
|
*/
|
|
2975
|
-
|
|
2976
|
-
|
|
2977
|
-
|
|
2978
|
-
|
|
2979
|
-
|
|
2980
|
-
|
|
2981
|
-
|
|
2982
|
-
|
|
2983
|
-
|
|
2984
|
-
|
|
2985
|
-
|
|
2986
|
-
|
|
2987
|
-
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
|
|
2991
|
-
|
|
2992
|
-
|
|
2993
|
-
|
|
2994
|
-
|
|
2995
|
-
|
|
2996
|
-
|
|
2997
|
-
|
|
2998
|
-
|
|
2999
|
-
|
|
3000
|
-
|
|
3001
|
-
* widthResponsive({ default: 'full', sm: 'auto', lg: '1/2' })
|
|
3002
|
-
* // Returns: 'w-full sm:w-auto lg:w-1/2'
|
|
3003
|
-
*/
|
|
3004
|
-
function widthResponsive(values) {
|
|
3005
|
-
return responsive(Object.entries(values).reduce((acc, [key, value]) => {
|
|
3006
|
-
acc[key] = `w-${value}`;
|
|
3007
|
-
return acc;
|
|
3008
|
-
}, {}));
|
|
3009
|
-
}
|
|
3010
|
-
/**
|
|
3011
|
-
* Clases comunes para containers responsive
|
|
3012
|
-
* Pensadas para wrappers que contienen contenido que puede desbordar
|
|
3013
|
-
*/
|
|
3014
|
-
const RESPONSIVE_CONTAINER = {
|
|
3015
|
-
// Container con scroll horizontal en mobile, contenido visible en desktop
|
|
3016
|
-
tableWrapper: 'relative w-full overflow-x-auto sm:overflow-x-visible',
|
|
3017
|
-
// Container con padding negativo en mobile para scroll edge-to-edge
|
|
3018
|
-
tableWrapperFullBleed: 'relative w-full -mx-4 px-4 overflow-x-auto sm:mx-0 sm:px-0 sm:overflow-x-visible',
|
|
3019
|
-
// Container con max-width responsive
|
|
3020
|
-
contentWrapper: 'w-full mx-auto px-4 sm:px-6 lg:px-8 max-w-screen-2xl',
|
|
3021
|
-
// Container para modals/dialogs
|
|
3022
|
-
modalWrapper: 'w-full max-w-lg mx-auto px-4 sm:px-0',
|
|
3023
|
-
// Container para forms
|
|
3024
|
-
formWrapper: 'w-full max-w-md mx-auto space-y-4'
|
|
3025
|
-
};
|
|
3026
|
-
/**
|
|
3027
|
-
* Clases comunes para display responsive
|
|
3028
|
-
*/
|
|
3029
|
-
const RESPONSIVE_DISPLAY = {
|
|
3030
|
-
// Ocultar en mobile, mostrar en desktop
|
|
3031
|
-
hideOnMobile: 'hidden sm:block',
|
|
3032
|
-
// Mostrar solo en mobile
|
|
3033
|
-
showOnMobile: 'block sm:hidden',
|
|
3034
|
-
// Stack en mobile, flex en desktop
|
|
3035
|
-
stackToFlex: 'flex flex-col sm:flex-row',
|
|
3036
|
-
// Stack en mobile, grid en desktop
|
|
3037
|
-
stackToGrid: 'grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3'
|
|
3038
|
-
};
|
|
3039
|
-
/**
|
|
3040
|
-
* Clases para table responsive strategies
|
|
3041
|
-
*/
|
|
3042
|
-
const TABLE_RESPONSIVE = {
|
|
3043
|
-
// Scroll horizontal (default, más simple)
|
|
3044
|
-
scroll: {
|
|
3045
|
-
wrapper: 'relative w-full overflow-x-auto',
|
|
3046
|
-
table: 'w-full min-w-full',
|
|
3047
|
-
cell: 'whitespace-nowrap'
|
|
3048
|
-
},
|
|
3049
|
-
// Permitir wrap del contenido
|
|
3050
|
-
wrap: {
|
|
3051
|
-
wrapper: 'relative w-full overflow-x-auto',
|
|
3052
|
-
table: 'w-full',
|
|
3053
|
-
cell: 'whitespace-normal break-words'
|
|
3054
|
-
},
|
|
3055
|
-
// Stack en mobile (cada fila se convierte en card)
|
|
3056
|
-
// Requiere lógica adicional en el componente
|
|
3057
|
-
stack: {
|
|
3058
|
-
wrapper: 'relative w-full',
|
|
3059
|
-
table: 'w-full',
|
|
3060
|
-
row: 'block sm:table-row border-b sm:border-b-0',
|
|
3061
|
-
cell: 'block sm:table-cell py-2 sm:py-0 before:content-[attr(data-label)] before:font-medium before:inline-block before:w-32 sm:before:content-none'
|
|
3062
|
-
},
|
|
3063
|
-
// Collapse: ocultar columnas menos importantes en mobile
|
|
3064
|
-
// Se usa con clases de visibility en las columnas específicas
|
|
3065
|
-
collapse: {
|
|
3066
|
-
wrapper: 'relative w-full overflow-x-auto',
|
|
3067
|
-
table: 'w-full',
|
|
3068
|
-
cell: 'whitespace-nowrap',
|
|
3069
|
-
// Estas clases se aplican a columnas opcionales
|
|
3070
|
-
optionalColumn: 'hidden md:table-cell'
|
|
3071
|
-
}
|
|
3072
|
-
};
|
|
3073
|
-
|
|
3074
|
-
/**
|
|
3075
|
-
* Componente base de tabla con soporte responsive
|
|
3076
|
-
*
|
|
3077
|
-
* SIMPLIFICADO: Ya no incluye drag & drop (usar pdm-draggable-table para eso)
|
|
3078
|
-
*
|
|
3079
|
-
* @example
|
|
3080
|
-
* // Tabla simple con scroll horizontal
|
|
3081
|
-
* <pdm-table variant="default">
|
|
3082
|
-
* <thead><tr><th>Name</th><th>Email</th></tr></thead>
|
|
3083
|
-
* <tbody><tr><td>John</td><td>john@example.com</td></tr></tbody>
|
|
3084
|
-
* </pdm-table>
|
|
3085
|
-
*
|
|
3086
|
-
* @example
|
|
3087
|
-
* // Tabla interactiva con wrap en mobile
|
|
3088
|
-
* <pdm-table variant="interactive" responsiveStrategy="wrap">
|
|
3089
|
-
* ...
|
|
3090
|
-
* </pdm-table>
|
|
3091
|
-
*/
|
|
3092
|
-
class PdmTableComponent {
|
|
3093
|
-
constructor() {
|
|
3094
|
-
/**
|
|
3095
|
-
* Variante visual de la tabla
|
|
3096
|
-
* - default: tabla básica sin estilos extra
|
|
3097
|
-
* - data: tabla con bordes y espaciado para data
|
|
3098
|
-
* - interactive: tabla con hover, sticky header y estilos interactivos
|
|
3099
|
-
*/
|
|
3100
|
-
this.variant = "default";
|
|
3101
|
-
/**
|
|
3102
|
-
* Estrategia responsive para la tabla
|
|
3103
|
-
* - scroll: scroll horizontal en mobile (default, más simple)
|
|
3104
|
-
* - wrap: permite que el contenido haga wrap
|
|
3105
|
-
* - stack: convierte filas en cards en mobile (requiere data-label en celdas)
|
|
3106
|
-
* - collapse: oculta columnas menos importantes en mobile
|
|
3107
|
-
*/
|
|
3108
|
-
this.responsiveStrategy = "scroll";
|
|
3109
|
-
/**
|
|
3110
|
-
* Clases CSS adicionales para el wrapper
|
|
3111
|
-
*/
|
|
3112
|
-
this.className = "";
|
|
3113
|
-
/**
|
|
3114
|
-
* Si es true, aplica padding negativo en mobile para scroll edge-to-edge
|
|
3115
|
-
* Útil cuando la tabla está dentro de un container con padding
|
|
3116
|
-
*/
|
|
3117
|
-
this.fullBleed = false;
|
|
2646
|
+
class PdmTableComponent {
|
|
2647
|
+
constructor() {
|
|
2648
|
+
/**
|
|
2649
|
+
* Variante visual de la tabla
|
|
2650
|
+
* - default: tabla básica sin estilos extra
|
|
2651
|
+
* - data: tabla con bordes y espaciado para data
|
|
2652
|
+
* - interactive: tabla con hover, sticky header y estilos interactivos
|
|
2653
|
+
*/
|
|
2654
|
+
this.variant = "default";
|
|
2655
|
+
/**
|
|
2656
|
+
* Estrategia responsive para la tabla
|
|
2657
|
+
* - scroll: scroll horizontal en mobile (default, más simple)
|
|
2658
|
+
* - wrap: permite que el contenido haga wrap
|
|
2659
|
+
* - stack: convierte filas en cards en mobile (requiere data-label en celdas)
|
|
2660
|
+
* - collapse: oculta columnas menos importantes en mobile
|
|
2661
|
+
*/
|
|
2662
|
+
this.responsiveStrategy = "scroll";
|
|
2663
|
+
/**
|
|
2664
|
+
* Clases CSS adicionales para el wrapper
|
|
2665
|
+
*/
|
|
2666
|
+
this.className = "";
|
|
2667
|
+
/**
|
|
2668
|
+
* Si es true, aplica padding negativo en mobile para scroll edge-to-edge
|
|
2669
|
+
* Útil cuando la tabla está dentro de un container con padding
|
|
2670
|
+
*/
|
|
2671
|
+
this.fullBleed = false;
|
|
3118
2672
|
}
|
|
3119
2673
|
get wrapperClasses() {
|
|
3120
2674
|
const baseClasses = ["relative", "w-full"];
|
|
@@ -3138,7 +2692,7 @@ class PdmTableComponent {
|
|
|
3138
2692
|
return [...baseClasses, ...variantClasses, ...cellClasses].filter(Boolean);
|
|
3139
2693
|
}
|
|
3140
2694
|
getResponsiveStrategyClasses() {
|
|
3141
|
-
const strategy = TABLE_RESPONSIVE[this.responsiveStrategy];
|
|
2695
|
+
const strategy = TABLE_RESPONSIVE$1[this.responsiveStrategy];
|
|
3142
2696
|
if (this.responsiveStrategy === "scroll") {
|
|
3143
2697
|
return ["overflow-x-auto"];
|
|
3144
2698
|
}
|
|
@@ -3842,7 +3396,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3842
3396
|
args: ['tableElement']
|
|
3843
3397
|
}] } });
|
|
3844
3398
|
|
|
3845
|
-
const COMPONENTS$
|
|
3399
|
+
const COMPONENTS$u = [
|
|
3846
3400
|
PdmDataTableComponent,
|
|
3847
3401
|
PdmDraggableTableComponent,
|
|
3848
3402
|
PdmTableComponent,
|
|
@@ -3860,101 +3414,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3860
3414
|
type: NgModule,
|
|
3861
3415
|
args: [{
|
|
3862
3416
|
imports: [CommonModule],
|
|
3863
|
-
declarations: COMPONENTS$
|
|
3864
|
-
exports: COMPONENTS$
|
|
3417
|
+
declarations: COMPONENTS$u,
|
|
3418
|
+
exports: COMPONENTS$u
|
|
3865
3419
|
}]
|
|
3866
3420
|
}] });
|
|
3867
3421
|
|
|
3868
|
-
/**
|
|
3869
|
-
* Z-Index Scale - Sistema centralizado de z-index
|
|
3870
|
-
*
|
|
3871
|
-
* JERARQUÍA (de menor a mayor):
|
|
3872
|
-
* 1. base (z-0) - Elementos normales del DOM
|
|
3873
|
-
* 2. dropdown (z-10) - Selects, combobox, date-pickers
|
|
3874
|
-
* 3. sticky (z-20) - Headers, navigation bars
|
|
3875
|
-
* 4. drawerBackdrop (z-30) - Backdrop de drawers
|
|
3876
|
-
* 5. drawer (z-40) - Sidebar drawer, sheets laterales
|
|
3877
|
-
* 6. modalBackdrop (z-40) - Backdrop de modals ( mismo nivel que drawer)
|
|
3878
|
-
* 7. modal (z-50) - Dialogs, alert-dialogs
|
|
3879
|
-
* 8. popover (z-[70]) - Tooltips, dropdowns DENTRO de modals
|
|
3880
|
-
* 9. toast (z-[100]) - Notificaciones que deben estar sobre TODO
|
|
3881
|
-
*
|
|
3882
|
-
* REGLA CRÍTICA:
|
|
3883
|
-
* - Componentes overlay (select options, dropdown menu, tooltip) SIEMPRE z-[70] o mayor
|
|
3884
|
-
* - Esto permite que funcionen DENTRO de modals (z-50)
|
|
3885
|
-
* - Backdrop de modal debe ser z-40 para estar DEBAJO del contenido del modal (z-50)
|
|
3886
|
-
*/
|
|
3887
|
-
const Z_INDEX = {
|
|
3888
|
-
/**
|
|
3889
|
-
* Base - contenido normal del DOM
|
|
3890
|
-
*/
|
|
3891
|
-
base: "z-0",
|
|
3892
|
-
/**
|
|
3893
|
-
* Dropdown - Selects, combobox, date-pickers
|
|
3894
|
-
* Debe estar SOBRE contenido normal pero BAJO overlays
|
|
3895
|
-
*/
|
|
3896
|
-
dropdown: "z-10",
|
|
3897
|
-
/**
|
|
3898
|
-
* Sticky - Headers, navigation fija
|
|
3899
|
-
*/
|
|
3900
|
-
sticky: "z-20",
|
|
3901
|
-
/**
|
|
3902
|
-
* Drawer backdrop - Backdrop de sidebar drawer
|
|
3903
|
-
* Debe estar DEBAJO del drawer panel y DEBAJO de modals
|
|
3904
|
-
*/
|
|
3905
|
-
drawerBackdrop: "z-30",
|
|
3906
|
-
/**
|
|
3907
|
-
* Drawer - Sidebar drawer, sheets laterales
|
|
3908
|
-
* Debe estar SOBRE su backdrop pero BAJO modals
|
|
3909
|
-
*/
|
|
3910
|
-
drawer: "z-40",
|
|
3911
|
-
/**
|
|
3912
|
-
* Modal backdrop - Backdrop de dialogs
|
|
3913
|
-
* Mismo nivel que drawer backdrop (z-40)
|
|
3914
|
-
*/
|
|
3915
|
-
modalBackdrop: "z-40",
|
|
3916
|
-
/**
|
|
3917
|
-
* Modal - Dialogs, alert-dialogs
|
|
3918
|
-
* Debe estar SOBRE su backdrop
|
|
3919
|
-
*/
|
|
3920
|
-
modal: "z-50",
|
|
3921
|
-
/**
|
|
3922
|
-
* Popover - Tooltips, dropdowns, selects options DENTRO de modals
|
|
3923
|
-
* CRÍTICO: Debe ser MAYOR que modal (z-50) para aparecer sobre modals
|
|
3924
|
-
* USAR SIEMPRE mergeOverlayPanelClass() para asegurar este valor
|
|
3925
|
-
*/
|
|
3926
|
-
popover: "z-[70]",
|
|
3927
|
-
/**
|
|
3928
|
-
* Toast - Notificaciones globales
|
|
3929
|
-
* Debe estar sobre TODO
|
|
3930
|
-
*/
|
|
3931
|
-
toast: "z-[100]",
|
|
3932
|
-
};
|
|
3933
|
-
/**
|
|
3934
|
-
* Helper para debugging z-index issues
|
|
3935
|
-
*/
|
|
3936
|
-
function logZIndexStack(element) {
|
|
3937
|
-
if (typeof window === "undefined")
|
|
3938
|
-
return;
|
|
3939
|
-
let current = element;
|
|
3940
|
-
const stack = [];
|
|
3941
|
-
while (current && current !== document.body) {
|
|
3942
|
-
const computed = window.getComputedStyle(current);
|
|
3943
|
-
const zIndex = computed.zIndex;
|
|
3944
|
-
const position = computed.position;
|
|
3945
|
-
if (zIndex !== "auto") {
|
|
3946
|
-
stack.push({
|
|
3947
|
-
element: current.tagName +
|
|
3948
|
-
(current.className ? `.${current.className.split(" ")[0]}` : ""),
|
|
3949
|
-
zIndex,
|
|
3950
|
-
position,
|
|
3951
|
-
});
|
|
3952
|
-
}
|
|
3953
|
-
current = current.parentElement;
|
|
3954
|
-
}
|
|
3955
|
-
console.table(stack);
|
|
3956
|
-
}
|
|
3957
|
-
|
|
3958
3422
|
/**
|
|
3959
3423
|
* Modal/Dialog component con soporte responsive
|
|
3960
3424
|
*
|
|
@@ -4091,7 +3555,7 @@ class PdmDialogComponent {
|
|
|
4091
3555
|
buildPanelClasses(sizeClasses) {
|
|
4092
3556
|
const base = [
|
|
4093
3557
|
"relative",
|
|
4094
|
-
Z_INDEX.modal,
|
|
3558
|
+
Z_INDEX$1.modal,
|
|
4095
3559
|
"flex",
|
|
4096
3560
|
"flex-col",
|
|
4097
3561
|
"border border-solid",
|
|
@@ -4159,9 +3623,9 @@ class PdmDialogComponent {
|
|
|
4159
3623
|
// Container con backdrop z-40
|
|
4160
3624
|
// Mobile: fullscreen desde el bottom
|
|
4161
3625
|
// Desktop: centrado
|
|
4162
|
-
return responsive({
|
|
4163
|
-
default: `fixed inset-x-0 bottom-0 ${Z_INDEX.modalBackdrop} flex items-end justify-center`,
|
|
4164
|
-
sm: `fixed inset-0 ${Z_INDEX.modalBackdrop} flex items-center justify-center p-4`,
|
|
3626
|
+
return responsive$1({
|
|
3627
|
+
default: `fixed inset-x-0 bottom-0 ${Z_INDEX$1.modalBackdrop} flex items-end justify-center`,
|
|
3628
|
+
sm: `fixed inset-0 ${Z_INDEX$1.modalBackdrop} flex items-center justify-center p-4`,
|
|
4165
3629
|
});
|
|
4166
3630
|
}
|
|
4167
3631
|
}
|
|
@@ -4215,7 +3679,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4215
3679
|
args: ["document:keydown.escape"]
|
|
4216
3680
|
}] } });
|
|
4217
3681
|
|
|
4218
|
-
const COMPONENTS$
|
|
3682
|
+
const COMPONENTS$t = [
|
|
4219
3683
|
PdmDialogComponent,
|
|
4220
3684
|
];
|
|
4221
3685
|
class PdmDialogModule {
|
|
@@ -4227,8 +3691,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4227
3691
|
type: NgModule,
|
|
4228
3692
|
args: [{
|
|
4229
3693
|
imports: [CommonModule],
|
|
4230
|
-
declarations: COMPONENTS$
|
|
4231
|
-
exports: COMPONENTS$
|
|
3694
|
+
declarations: COMPONENTS$t,
|
|
3695
|
+
exports: COMPONENTS$t
|
|
4232
3696
|
}]
|
|
4233
3697
|
}] });
|
|
4234
3698
|
|
|
@@ -4330,7 +3794,7 @@ class PdmDrawerComponent {
|
|
|
4330
3794
|
this.secondaryAction.emit();
|
|
4331
3795
|
}
|
|
4332
3796
|
get containerClassName() {
|
|
4333
|
-
return `fixed inset-0 ${Z_INDEX.drawer} ${this.className}`;
|
|
3797
|
+
return `fixed inset-0 ${Z_INDEX$1.drawer} ${this.className}`;
|
|
4334
3798
|
}
|
|
4335
3799
|
get panelClassName() {
|
|
4336
3800
|
const base = [
|
|
@@ -4534,7 +3998,7 @@ class PdmSheetComponent {
|
|
|
4534
3998
|
}
|
|
4535
3999
|
}
|
|
4536
4000
|
PdmSheetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSheetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4537
|
-
PdmSheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSheetComponent, selector: "pdm-sheet", inputs: { open: "open", side: "side", size: "size", className: "className", closeOnEsc: "closeOnEsc", closeOnBackdropClick: "closeOnBackdropClick" }, outputs: { openChange: "openChange" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\">\n <button type=\"button\" class=\"absolute inset-0 appearance-none box-border border-0 bg-foreground/80 p-0\" aria-label=\"Close sheet\" (click)=\"onBackdropClick()\"></button>\n\n <section [ngClass]=\"['absolute z-[60] border border-solid border-border bg-background p-6 shadow-lg', panelClass, className]\" role=\"dialog\" aria-modal=\"true\">\n <button type=\"button\" class=\"absolute right-3 top-3 appearance-none box-border rounded-sm border-0 bg-transparent p-0 opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none\" (click)=\"close()\">\n <pdm-icon name=\"x\" [size]=\"16\"></pdm-icon>\n </button>\n <ng-content></ng-content>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4001
|
+
PdmSheetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSheetComponent, selector: "pdm-sheet", inputs: { open: "open", side: "side", size: "size", className: "className", closeOnEsc: "closeOnEsc", closeOnBackdropClick: "closeOnBackdropClick" }, outputs: { openChange: "openChange" }, host: { listeners: { "document:keydown.escape": "onEsc()" } }, ngImport: i0, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\">\n <button type=\"button\" class=\"absolute inset-0 appearance-none box-border border-0 bg-foreground/80 p-0\" aria-label=\"Close sheet\" (click)=\"onBackdropClick()\"></button>\n\n <section [ngClass]=\"['absolute z-[60] border border-solid border-border bg-background p-6 shadow-lg', panelClass, className]\" role=\"dialog\" aria-modal=\"true\">\n <button type=\"button\" class=\"absolute right-3 top-3 appearance-none box-border rounded-sm border-0 bg-transparent p-0 opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none\" (click)=\"close()\">\n <pdm-icon name=\"x\" [size]=\"16\"></pdm-icon>\n </button>\n <ng-content></ng-content>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4538
4002
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSheetComponent, decorators: [{
|
|
4539
4003
|
type: Component,
|
|
4540
4004
|
args: [{ selector: 'pdm-sheet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"open\" class=\"fixed inset-0 z-50\">\n <button type=\"button\" class=\"absolute inset-0 appearance-none box-border border-0 bg-foreground/80 p-0\" aria-label=\"Close sheet\" (click)=\"onBackdropClick()\"></button>\n\n <section [ngClass]=\"['absolute z-[60] border border-solid border-border bg-background p-6 shadow-lg', panelClass, className]\" role=\"dialog\" aria-modal=\"true\">\n <button type=\"button\" class=\"absolute right-3 top-3 appearance-none box-border rounded-sm border-0 bg-transparent p-0 opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none\" (click)=\"close()\">\n <pdm-icon name=\"x\" [size]=\"16\"></pdm-icon>\n </button>\n <ng-content></ng-content>\n </section>\n</div>\n" }]
|
|
@@ -4557,18 +4021,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4557
4021
|
args: ['document:keydown.escape']
|
|
4558
4022
|
}] } });
|
|
4559
4023
|
|
|
4560
|
-
const COMPONENTS$
|
|
4024
|
+
const COMPONENTS$s = [PdmDrawerComponent, PdmSheetComponent];
|
|
4561
4025
|
class PdmDrawerModule {
|
|
4562
4026
|
}
|
|
4563
4027
|
PdmDrawerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4564
|
-
PdmDrawerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, declarations: [PdmDrawerComponent, PdmSheetComponent], imports: [CommonModule, PdmIconModule], exports: [PdmDrawerComponent, PdmSheetComponent] });
|
|
4565
|
-
PdmDrawerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, imports: [CommonModule, PdmIconModule] });
|
|
4028
|
+
PdmDrawerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, declarations: [PdmDrawerComponent, PdmSheetComponent], imports: [CommonModule, PdmIconModule$1], exports: [PdmDrawerComponent, PdmSheetComponent] });
|
|
4029
|
+
PdmDrawerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, imports: [CommonModule, PdmIconModule$1] });
|
|
4566
4030
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, decorators: [{
|
|
4567
4031
|
type: NgModule,
|
|
4568
4032
|
args: [{
|
|
4569
|
-
imports: [CommonModule, PdmIconModule],
|
|
4570
|
-
declarations: COMPONENTS$
|
|
4571
|
-
exports: COMPONENTS$
|
|
4033
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
4034
|
+
declarations: COMPONENTS$s,
|
|
4035
|
+
exports: COMPONENTS$s,
|
|
4572
4036
|
}]
|
|
4573
4037
|
}] });
|
|
4574
4038
|
|
|
@@ -4683,9 +4147,9 @@ class PdmDropdownMenuComponent {
|
|
|
4683
4147
|
return;
|
|
4684
4148
|
this.open = true;
|
|
4685
4149
|
this.cdr.markForCheck();
|
|
4686
|
-
const positionStrategy = createFlexiblePositionStrategy(this.overlay, triggerEl, 8);
|
|
4150
|
+
const positionStrategy = createFlexiblePositionStrategy$1(this.overlay, triggerEl, 8);
|
|
4687
4151
|
// Resolve panelClass: overlayOptions.panelClass wins; otherwise map panelClassName.
|
|
4688
|
-
const resolvedPanelClass = (_c = (_b = this.overlayOptions) === null || _b === void 0 ? void 0 : _b.panelClass) !== null && _c !== void 0 ? _c : (this.panelClassName ? [Z_INDEX.popover, this.panelClassName] : [Z_INDEX.popover]);
|
|
4152
|
+
const resolvedPanelClass = (_c = (_b = this.overlayOptions) === null || _b === void 0 ? void 0 : _b.panelClass) !== null && _c !== void 0 ? _c : (this.panelClassName ? [Z_INDEX$1.popover, this.panelClassName] : [Z_INDEX$1.popover]);
|
|
4689
4153
|
this.overlayRef = this.overlay.create(Object.assign(Object.assign({ positionStrategy, scrollStrategy: this.overlay.scrollStrategies.reposition() }, this.overlayOptions), {
|
|
4690
4154
|
// panelClass always overrides last: it already merges panelClassName + overlayOptions.
|
|
4691
4155
|
panelClass: resolvedPanelClass }));
|
|
@@ -4751,7 +4215,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4751
4215
|
args: ['document:keydown.escape']
|
|
4752
4216
|
}] } });
|
|
4753
4217
|
|
|
4754
|
-
const COMPONENTS$
|
|
4218
|
+
const COMPONENTS$r = [
|
|
4755
4219
|
PdmDropdownMenuComponent,
|
|
4756
4220
|
];
|
|
4757
4221
|
class PdmDropdownMenuModule {
|
|
@@ -4763,8 +4227,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4763
4227
|
type: NgModule,
|
|
4764
4228
|
args: [{
|
|
4765
4229
|
imports: [CommonModule, OverlayModule],
|
|
4766
|
-
declarations: COMPONENTS$
|
|
4767
|
-
exports: COMPONENTS$
|
|
4230
|
+
declarations: COMPONENTS$r,
|
|
4231
|
+
exports: COMPONENTS$r
|
|
4768
4232
|
}]
|
|
4769
4233
|
}] });
|
|
4770
4234
|
|
|
@@ -4793,7 +4257,7 @@ class PdmEmptyComponent {
|
|
|
4793
4257
|
}
|
|
4794
4258
|
}
|
|
4795
4259
|
PdmEmptyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4796
|
-
PdmEmptyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmEmptyComponent, selector: "pdm-empty", inputs: { variant: "variant", title: "title", description: "description", iconName: "iconName", primaryActionLabel: "primaryActionLabel", secondaryActionLabel: "secondaryActionLabel", linkLabel: "linkLabel", className: "className" }, outputs: { primaryAction: "primaryAction", secondaryAction: "secondaryAction", linkAction: "linkAction" }, ngImport: i0, template: "<section [ngClass]=\"['flex flex-col items-center justify-center gap-4 px-6 py-10 text-center text-foreground', containerClass, className]\">\n <div class=\"flex h-10 w-10 items-center justify-center rounded-lg bg-muted text-muted-foreground\">\n <pdm-icon [name]=\"iconName\" [size]=\"20\"></pdm-icon>\n </div>\n\n <div class=\"space-y-2\">\n <h3 class=\"m-0 text-2xl font-semibold leading-none tracking-tight\">{{ title }}</h3>\n <p class=\"m-0 mx-auto max-w-md text-sm leading-relaxed text-muted-foreground\">\n {{ description }}\n </p>\n </div>\n\n <div *ngIf=\"primaryActionLabel || secondaryActionLabel\" class=\"mt-1 flex flex-wrap items-center justify-center gap-3\">\n <pdm-button *ngIf=\"primaryActionLabel\" variant=\"default\" (pressed)=\"primaryAction.emit()\">{{ primaryActionLabel }}</pdm-button>\n <pdm-button *ngIf=\"secondaryActionLabel\" variant=\"outline\" (pressed)=\"secondaryAction.emit()\">{{ secondaryActionLabel }}</pdm-button>\n </div>\n\n <button\n *ngIf=\"linkLabel\"\n type=\"button\"\n class=\"mt-1 inline-flex appearance-none box-border items-center gap-2 border-0 bg-transparent p-0 text-sm font-medium text-muted-foreground underline-offset-4 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n (click)=\"linkAction.emit()\"\n >\n <span>{{ linkLabel }}</span>\n <pdm-icon name=\"arrow-up-right\" [size]=\"16\"></pdm-icon>\n </button>\n\n <ng-content></ng-content>\n</section>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PdmButtonComponent, selector: "pdm-button", inputs: ["type", "variant", "state", "size", "disabled", "loading", "className"], outputs: ["pressed"] }, { kind: "component", type: PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4260
|
+
PdmEmptyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmEmptyComponent, selector: "pdm-empty", inputs: { variant: "variant", title: "title", description: "description", iconName: "iconName", primaryActionLabel: "primaryActionLabel", secondaryActionLabel: "secondaryActionLabel", linkLabel: "linkLabel", className: "className" }, outputs: { primaryAction: "primaryAction", secondaryAction: "secondaryAction", linkAction: "linkAction" }, ngImport: i0, template: "<section [ngClass]=\"['flex flex-col items-center justify-center gap-4 px-6 py-10 text-center text-foreground', containerClass, className]\">\n <div class=\"flex h-10 w-10 items-center justify-center rounded-lg bg-muted text-muted-foreground\">\n <pdm-icon [name]=\"iconName\" [size]=\"20\"></pdm-icon>\n </div>\n\n <div class=\"space-y-2\">\n <h3 class=\"m-0 text-2xl font-semibold leading-none tracking-tight\">{{ title }}</h3>\n <p class=\"m-0 mx-auto max-w-md text-sm leading-relaxed text-muted-foreground\">\n {{ description }}\n </p>\n </div>\n\n <div *ngIf=\"primaryActionLabel || secondaryActionLabel\" class=\"mt-1 flex flex-wrap items-center justify-center gap-3\">\n <pdm-button *ngIf=\"primaryActionLabel\" variant=\"default\" (pressed)=\"primaryAction.emit()\">{{ primaryActionLabel }}</pdm-button>\n <pdm-button *ngIf=\"secondaryActionLabel\" variant=\"outline\" (pressed)=\"secondaryAction.emit()\">{{ secondaryActionLabel }}</pdm-button>\n </div>\n\n <button\n *ngIf=\"linkLabel\"\n type=\"button\"\n class=\"mt-1 inline-flex appearance-none box-border items-center gap-2 border-0 bg-transparent p-0 text-sm font-medium text-muted-foreground underline-offset-4 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n (click)=\"linkAction.emit()\"\n >\n <span>{{ linkLabel }}</span>\n <pdm-icon name=\"arrow-up-right\" [size]=\"16\"></pdm-icon>\n </button>\n\n <ng-content></ng-content>\n</section>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.PdmButtonComponent, selector: "pdm-button", inputs: ["type", "variant", "state", "size", "disabled", "loading", "className"], outputs: ["pressed"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4797
4261
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyComponent, decorators: [{
|
|
4798
4262
|
type: Component,
|
|
4799
4263
|
args: [{ selector: 'pdm-empty', changeDetection: ChangeDetectionStrategy.OnPush, template: "<section [ngClass]=\"['flex flex-col items-center justify-center gap-4 px-6 py-10 text-center text-foreground', containerClass, className]\">\n <div class=\"flex h-10 w-10 items-center justify-center rounded-lg bg-muted text-muted-foreground\">\n <pdm-icon [name]=\"iconName\" [size]=\"20\"></pdm-icon>\n </div>\n\n <div class=\"space-y-2\">\n <h3 class=\"m-0 text-2xl font-semibold leading-none tracking-tight\">{{ title }}</h3>\n <p class=\"m-0 mx-auto max-w-md text-sm leading-relaxed text-muted-foreground\">\n {{ description }}\n </p>\n </div>\n\n <div *ngIf=\"primaryActionLabel || secondaryActionLabel\" class=\"mt-1 flex flex-wrap items-center justify-center gap-3\">\n <pdm-button *ngIf=\"primaryActionLabel\" variant=\"default\" (pressed)=\"primaryAction.emit()\">{{ primaryActionLabel }}</pdm-button>\n <pdm-button *ngIf=\"secondaryActionLabel\" variant=\"outline\" (pressed)=\"secondaryAction.emit()\">{{ secondaryActionLabel }}</pdm-button>\n </div>\n\n <button\n *ngIf=\"linkLabel\"\n type=\"button\"\n class=\"mt-1 inline-flex appearance-none box-border items-center gap-2 border-0 bg-transparent p-0 text-sm font-medium text-muted-foreground underline-offset-4 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n (click)=\"linkAction.emit()\"\n >\n <span>{{ linkLabel }}</span>\n <pdm-icon name=\"arrow-up-right\" [size]=\"16\"></pdm-icon>\n </button>\n\n <ng-content></ng-content>\n</section>\n" }]
|
|
@@ -4821,18 +4285,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4821
4285
|
type: Output
|
|
4822
4286
|
}] } });
|
|
4823
4287
|
|
|
4824
|
-
const COMPONENTS$
|
|
4288
|
+
const COMPONENTS$q = [PdmEmptyComponent];
|
|
4825
4289
|
class PdmEmptyModule {
|
|
4826
4290
|
}
|
|
4827
4291
|
PdmEmptyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4828
|
-
PdmEmptyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, declarations: [PdmEmptyComponent], imports: [CommonModule, PdmButtonModule, PdmIconModule], exports: [PdmEmptyComponent] });
|
|
4829
|
-
PdmEmptyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, imports: [CommonModule, PdmButtonModule, PdmIconModule] });
|
|
4292
|
+
PdmEmptyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, declarations: [PdmEmptyComponent], imports: [CommonModule, PdmButtonModule$1, PdmIconModule$1], exports: [PdmEmptyComponent] });
|
|
4293
|
+
PdmEmptyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, imports: [CommonModule, PdmButtonModule$1, PdmIconModule$1] });
|
|
4830
4294
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, decorators: [{
|
|
4831
4295
|
type: NgModule,
|
|
4832
4296
|
args: [{
|
|
4833
|
-
imports: [CommonModule, PdmButtonModule, PdmIconModule],
|
|
4834
|
-
declarations: COMPONENTS$
|
|
4835
|
-
exports: COMPONENTS$
|
|
4297
|
+
imports: [CommonModule, PdmButtonModule$1, PdmIconModule$1],
|
|
4298
|
+
declarations: COMPONENTS$q,
|
|
4299
|
+
exports: COMPONENTS$q,
|
|
4836
4300
|
}]
|
|
4837
4301
|
}] });
|
|
4838
4302
|
|
|
@@ -4897,7 +4361,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4897
4361
|
type: Input
|
|
4898
4362
|
}] } });
|
|
4899
4363
|
|
|
4900
|
-
const COMPONENTS$
|
|
4364
|
+
const COMPONENTS$p = [
|
|
4901
4365
|
PdmFieldComponent,
|
|
4902
4366
|
];
|
|
4903
4367
|
class PdmFieldModule {
|
|
@@ -4909,8 +4373,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4909
4373
|
type: NgModule,
|
|
4910
4374
|
args: [{
|
|
4911
4375
|
imports: [CommonModule],
|
|
4912
|
-
declarations: COMPONENTS$
|
|
4913
|
-
exports: COMPONENTS$
|
|
4376
|
+
declarations: COMPONENTS$p,
|
|
4377
|
+
exports: COMPONENTS$p
|
|
4914
4378
|
}]
|
|
4915
4379
|
}] });
|
|
4916
4380
|
|
|
@@ -4985,7 +4449,7 @@ class PdmHoverCardComponent {
|
|
|
4985
4449
|
.withPositions(this.getPositionConfigs())
|
|
4986
4450
|
.withFlexibleDimensions(false)
|
|
4987
4451
|
.withPush(true);
|
|
4988
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
4452
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
4989
4453
|
this.overlayRef = this.overlay.create({
|
|
4990
4454
|
positionStrategy,
|
|
4991
4455
|
panelClass,
|
|
@@ -5113,7 +4577,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5113
4577
|
args: ["focusout"]
|
|
5114
4578
|
}] } });
|
|
5115
4579
|
|
|
5116
|
-
const COMPONENTS$
|
|
4580
|
+
const COMPONENTS$o = [
|
|
5117
4581
|
PdmHoverCardComponent,
|
|
5118
4582
|
];
|
|
5119
4583
|
class PdmHoverCardModule {
|
|
@@ -5125,54 +4589,213 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5125
4589
|
type: NgModule,
|
|
5126
4590
|
args: [{
|
|
5127
4591
|
imports: [CommonModule, OverlayModule],
|
|
5128
|
-
declarations: COMPONENTS$
|
|
5129
|
-
exports: COMPONENTS$
|
|
4592
|
+
declarations: COMPONENTS$o,
|
|
4593
|
+
exports: COMPONENTS$o
|
|
5130
4594
|
}]
|
|
5131
4595
|
}] });
|
|
5132
4596
|
|
|
5133
|
-
|
|
5134
|
-
|
|
5135
|
-
|
|
5136
|
-
this.
|
|
5137
|
-
this.
|
|
5138
|
-
this.
|
|
5139
|
-
this.
|
|
5140
|
-
this.
|
|
5141
|
-
this.
|
|
5142
|
-
this.
|
|
5143
|
-
this.
|
|
5144
|
-
this.
|
|
5145
|
-
this.
|
|
5146
|
-
this.
|
|
5147
|
-
|
|
5148
|
-
|
|
5149
|
-
|
|
5150
|
-
|
|
5151
|
-
|
|
5152
|
-
|
|
5153
|
-
|
|
5154
|
-
|
|
5155
|
-
|
|
5156
|
-
|
|
5157
|
-
|
|
5158
|
-
|
|
5159
|
-
}
|
|
5160
|
-
|
|
5161
|
-
|
|
5162
|
-
|
|
5163
|
-
|
|
5164
|
-
|
|
5165
|
-
|
|
5166
|
-
|
|
5167
|
-
}
|
|
5168
|
-
|
|
5169
|
-
|
|
5170
|
-
|
|
5171
|
-
|
|
5172
|
-
|
|
5173
|
-
|
|
5174
|
-
|
|
5175
|
-
}
|
|
4597
|
+
const FALLBACK_NODE = [['circle', { cx: '12', cy: '12', r: '9' }]];
|
|
4598
|
+
class PdmIconComponent {
|
|
4599
|
+
constructor(sanitizer) {
|
|
4600
|
+
this.sanitizer = sanitizer;
|
|
4601
|
+
this.name = 'check';
|
|
4602
|
+
this.library = 'lucide';
|
|
4603
|
+
this.assetUrl = null;
|
|
4604
|
+
this.size = 16;
|
|
4605
|
+
this.strokeWidth = 1.5;
|
|
4606
|
+
this.className = '';
|
|
4607
|
+
this.ariaLabel = null;
|
|
4608
|
+
this.decorative = false;
|
|
4609
|
+
this.lucideIndex = this.buildLucideIndex();
|
|
4610
|
+
this.aliasMapByLibrary = {
|
|
4611
|
+
lucide: {
|
|
4612
|
+
'check-circle': 'circle-check',
|
|
4613
|
+
'alert-circle': 'circle-alert',
|
|
4614
|
+
info: 'circle-info',
|
|
4615
|
+
'sort-asc': 'arrow-up-a-z',
|
|
4616
|
+
'sort-desc': 'arrow-down-z-a'
|
|
4617
|
+
},
|
|
4618
|
+
tabler: {
|
|
4619
|
+
'alert-triangle': 'triangle-alert',
|
|
4620
|
+
'user-circle': 'circle-user',
|
|
4621
|
+
'settings-2': 'settings-2',
|
|
4622
|
+
'external-link': 'external-link'
|
|
4623
|
+
},
|
|
4624
|
+
hugeicons: {
|
|
4625
|
+
'alert-02': 'circle-alert',
|
|
4626
|
+
'user-circle': 'circle-user',
|
|
4627
|
+
'search-01': 'search',
|
|
4628
|
+
'settings-01': 'settings',
|
|
4629
|
+
'arrow-right-01': 'chevron-right',
|
|
4630
|
+
'arrow-down-01': 'chevron-down'
|
|
4631
|
+
},
|
|
4632
|
+
phosphor: {
|
|
4633
|
+
'warning-circle': 'circle-alert',
|
|
4634
|
+
'caret-down': 'chevron-down',
|
|
4635
|
+
'caret-right': 'chevron-right',
|
|
4636
|
+
'user-circle': 'circle-user',
|
|
4637
|
+
gear: 'settings',
|
|
4638
|
+
'arrow-square-out': 'external-link'
|
|
4639
|
+
},
|
|
4640
|
+
remix: {
|
|
4641
|
+
'alert-line': 'circle-alert',
|
|
4642
|
+
'arrow-right-line': 'chevron-right',
|
|
4643
|
+
'arrow-down-s-line': 'chevron-down',
|
|
4644
|
+
'external-link-line': 'external-link',
|
|
4645
|
+
'user-line': 'user',
|
|
4646
|
+
'settings-3-line': 'settings'
|
|
4647
|
+
}
|
|
4648
|
+
};
|
|
4649
|
+
}
|
|
4650
|
+
get resolvedStrokeWidth() {
|
|
4651
|
+
const value = Number(this.strokeWidth);
|
|
4652
|
+
if (Number.isFinite(value) && value > 0) {
|
|
4653
|
+
return value;
|
|
4654
|
+
}
|
|
4655
|
+
if (this.library === 'phosphor') {
|
|
4656
|
+
return 1.6;
|
|
4657
|
+
}
|
|
4658
|
+
if (this.library === 'tabler') {
|
|
4659
|
+
return 1.8;
|
|
4660
|
+
}
|
|
4661
|
+
return 1.5;
|
|
4662
|
+
}
|
|
4663
|
+
get resolvedSize() {
|
|
4664
|
+
const value = Number(this.size);
|
|
4665
|
+
return Number.isFinite(value) && value > 0 ? value : 16;
|
|
4666
|
+
}
|
|
4667
|
+
get iconKey() {
|
|
4668
|
+
var _a, _b;
|
|
4669
|
+
const raw = `${this.name || ''}`.trim();
|
|
4670
|
+
if (!raw) {
|
|
4671
|
+
return 'circle';
|
|
4672
|
+
}
|
|
4673
|
+
const trimmed = raw.replace(/^(lucide|tabler|hugeicons|phosphor|remix)\//, '');
|
|
4674
|
+
const aliases = (_a = this.aliasMapByLibrary[this.library]) !== null && _a !== void 0 ? _a : {};
|
|
4675
|
+
return (_b = aliases[trimmed]) !== null && _b !== void 0 ? _b : trimmed;
|
|
4676
|
+
}
|
|
4677
|
+
get svgMarkup() {
|
|
4678
|
+
var _a;
|
|
4679
|
+
const node = (_a = this.resolveIconNode(this.iconKey)) !== null && _a !== void 0 ? _a : FALLBACK_NODE;
|
|
4680
|
+
const strokeWidth = this.escapeAttr(this.resolvedStrokeWidth);
|
|
4681
|
+
const size = this.escapeAttr(this.resolvedSize);
|
|
4682
|
+
const body = node
|
|
4683
|
+
.map(([tag, attrs]) => {
|
|
4684
|
+
const serializedAttrs = Object.entries(attrs)
|
|
4685
|
+
.map(([key, value]) => `${key}="${this.escapeAttr(value)}"`)
|
|
4686
|
+
.join(' ');
|
|
4687
|
+
return serializedAttrs ? `<${tag} ${serializedAttrs}></${tag}>` : `<${tag}></${tag}>`;
|
|
4688
|
+
})
|
|
4689
|
+
.join('');
|
|
4690
|
+
const svg = `<svg xmlns="http://www.w3.org/2000/svg" width="${size}" height="${size}" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="${strokeWidth}" stroke-linecap="round" stroke-linejoin="round">${body}</svg>`;
|
|
4691
|
+
return this.sanitizer.bypassSecurityTrustHtml(svg);
|
|
4692
|
+
}
|
|
4693
|
+
resolveIconNode(iconName) {
|
|
4694
|
+
var _a;
|
|
4695
|
+
const normalized = this.normalizeIconName(iconName);
|
|
4696
|
+
return (_a = this.lucideIndex.get(normalized)) !== null && _a !== void 0 ? _a : null;
|
|
4697
|
+
}
|
|
4698
|
+
normalizeIconName(name) {
|
|
4699
|
+
return `${name || ''}`.toLowerCase().replace(/[^a-z0-9]/g, '');
|
|
4700
|
+
}
|
|
4701
|
+
buildLucideIndex() {
|
|
4702
|
+
const map = new Map();
|
|
4703
|
+
Object.entries(icons).forEach(([iconName, iconNode]) => {
|
|
4704
|
+
map.set(this.normalizeIconName(iconName), iconNode);
|
|
4705
|
+
});
|
|
4706
|
+
return map;
|
|
4707
|
+
}
|
|
4708
|
+
escapeAttr(value) {
|
|
4709
|
+
return `${value !== null && value !== void 0 ? value : ''}`
|
|
4710
|
+
.replace(/&/g, '&')
|
|
4711
|
+
.replace(/"/g, '"')
|
|
4712
|
+
.replace(/</g, '<')
|
|
4713
|
+
.replace(/>/g, '>');
|
|
4714
|
+
}
|
|
4715
|
+
}
|
|
4716
|
+
PdmIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconComponent, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
4717
|
+
PdmIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmIconComponent, selector: "pdm-icon", inputs: { name: "name", library: "library", assetUrl: "assetUrl", size: "size", strokeWidth: "strokeWidth", className: "className", ariaLabel: "ariaLabel", decorative: "decorative" }, ngImport: i0, template: "<ng-container *ngIf=\"assetUrl; else inlineIcon\">\n <img\n [src]=\"assetUrl\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [ngClass]=\"className\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n alt=\"\"\n />\n</ng-container>\n\n<ng-template #inlineIcon>\n <span\n [ngClass]=\"className\"\n [style.display]=\"'inline-flex'\"\n [style.align-items]=\"'center'\"\n [style.justify-content]=\"'center'\"\n [style.line-height]=\"0\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n [innerHTML]=\"svgMarkup\"\n ></span>\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}:host svg{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4718
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconComponent, decorators: [{
|
|
4719
|
+
type: Component,
|
|
4720
|
+
args: [{ selector: 'pdm-icon', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"assetUrl; else inlineIcon\">\n <img\n [src]=\"assetUrl\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [ngClass]=\"className\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n alt=\"\"\n />\n</ng-container>\n\n<ng-template #inlineIcon>\n <span\n [ngClass]=\"className\"\n [style.display]=\"'inline-flex'\"\n [style.align-items]=\"'center'\"\n [style.justify-content]=\"'center'\"\n [style.line-height]=\"0\"\n [style.width.px]=\"resolvedSize\"\n [style.height.px]=\"resolvedSize\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? 'true' : null\"\n [attr.aria-label]=\"!decorative ? ariaLabel || name : null\"\n [innerHTML]=\"svgMarkup\"\n ></span>\n</ng-template>\n", styles: [":host{display:inline-flex;align-items:center;justify-content:center;line-height:0;flex-shrink:0}:host svg{display:block}\n"] }]
|
|
4721
|
+
}], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; }, propDecorators: { name: [{
|
|
4722
|
+
type: Input
|
|
4723
|
+
}], library: [{
|
|
4724
|
+
type: Input
|
|
4725
|
+
}], assetUrl: [{
|
|
4726
|
+
type: Input
|
|
4727
|
+
}], size: [{
|
|
4728
|
+
type: Input
|
|
4729
|
+
}], strokeWidth: [{
|
|
4730
|
+
type: Input
|
|
4731
|
+
}], className: [{
|
|
4732
|
+
type: Input
|
|
4733
|
+
}], ariaLabel: [{
|
|
4734
|
+
type: Input
|
|
4735
|
+
}], decorative: [{
|
|
4736
|
+
type: Input
|
|
4737
|
+
}] } });
|
|
4738
|
+
|
|
4739
|
+
const COMPONENTS$n = [
|
|
4740
|
+
PdmIconComponent,
|
|
4741
|
+
];
|
|
4742
|
+
class PdmIconModule {
|
|
4743
|
+
}
|
|
4744
|
+
PdmIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4745
|
+
PdmIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, declarations: [PdmIconComponent], imports: [CommonModule], exports: [PdmIconComponent] });
|
|
4746
|
+
PdmIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, imports: [CommonModule] });
|
|
4747
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, decorators: [{
|
|
4748
|
+
type: NgModule,
|
|
4749
|
+
args: [{
|
|
4750
|
+
imports: [CommonModule],
|
|
4751
|
+
declarations: COMPONENTS$n,
|
|
4752
|
+
exports: COMPONENTS$n
|
|
4753
|
+
}]
|
|
4754
|
+
}] });
|
|
4755
|
+
|
|
4756
|
+
class PdmInputComponent {
|
|
4757
|
+
constructor() {
|
|
4758
|
+
this.id = "";
|
|
4759
|
+
this.type = "text";
|
|
4760
|
+
this.value = "";
|
|
4761
|
+
this.placeholder = "";
|
|
4762
|
+
this.disabled = false;
|
|
4763
|
+
this.readonly = false;
|
|
4764
|
+
this.required = false;
|
|
4765
|
+
this.invalid = false;
|
|
4766
|
+
this.size = "regular";
|
|
4767
|
+
this.roundness = "default";
|
|
4768
|
+
this.className = "";
|
|
4769
|
+
this.inputClassName = "";
|
|
4770
|
+
this.label = "";
|
|
4771
|
+
this.helperText = "";
|
|
4772
|
+
this.errorText = "";
|
|
4773
|
+
this.valueChange = new EventEmitter();
|
|
4774
|
+
this.blurred = new EventEmitter();
|
|
4775
|
+
}
|
|
4776
|
+
onInput(event) {
|
|
4777
|
+
this.valueChange.emit(event.target.value);
|
|
4778
|
+
}
|
|
4779
|
+
onBlur(event) {
|
|
4780
|
+
this.blurred.emit(event);
|
|
4781
|
+
}
|
|
4782
|
+
}
|
|
4783
|
+
PdmInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4784
|
+
PdmInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmInputComponent, selector: "pdm-input", inputs: { id: "id", type: "type", value: "value", placeholder: "placeholder", disabled: "disabled", readonly: "readonly", required: "required", invalid: "invalid", size: "size", roundness: "roundness", className: "className", inputClassName: "inputClassName", label: "label", helperText: "helperText", errorText: "errorText" }, outputs: { valueChange: "valueChange", blurred: "blurred" }, ngImport: i0, template: "<div [ngClass]=\"['grid w-full gap-3', className]\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"id\"\n [ngClass]=\"[\n 'text-sm font-medium leading-none',\n invalid ? 'text-destructive' : 'text-foreground',\n ]\"\n >{{ label }}</label\n >\n <input\n [id]=\"id\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 placeholder:text-muted-foreground w-full min-w-0 appearance-none box-border rounded-lg border border-solid bg-transparent px-3 py-1 text-sm shadow-sm transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n size === 'large' ? 'h-10 px-4 text-sm' : '',\n size === 'regular' ? 'h-9 px-3 text-sm' : '',\n size === 'small' ? 'h-8 px-2 text-sm' : '',\n size === 'mini' ? 'h-6 px-1.5 text-xs' : '',\n roundness === 'round' ? 'rounded-full' : 'rounded-lg',\n type === 'file' ? 'text-sm' : 'text-foreground',\n inputClassName,\n ]\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n />\n <p *ngIf=\"!invalid && helperText\" class=\"m-0 text-sm text-muted-foreground\">\n {{ helperText }}\n </p>\n <p *ngIf=\"invalid && errorText\" class=\"m-0 text-sm text-destructive\">\n {{ errorText }}\n </p>\n</div>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4785
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputComponent, decorators: [{
|
|
4786
|
+
type: Component,
|
|
4787
|
+
args: [{ selector: "pdm-input", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"['grid w-full gap-3', className]\">\n <label\n *ngIf=\"label\"\n [attr.for]=\"id\"\n [ngClass]=\"[\n 'text-sm font-medium leading-none',\n invalid ? 'text-destructive' : 'text-foreground',\n ]\"\n >{{ label }}</label\n >\n <input\n [id]=\"id\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 placeholder:text-muted-foreground w-full min-w-0 appearance-none box-border rounded-lg border border-solid bg-transparent px-3 py-1 text-sm shadow-sm transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n size === 'large' ? 'h-10 px-4 text-sm' : '',\n size === 'regular' ? 'h-9 px-3 text-sm' : '',\n size === 'small' ? 'h-8 px-2 text-sm' : '',\n size === 'mini' ? 'h-6 px-1.5 text-xs' : '',\n roundness === 'round' ? 'rounded-full' : 'rounded-lg',\n type === 'file' ? 'text-sm' : 'text-foreground',\n inputClassName,\n ]\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n />\n <p *ngIf=\"!invalid && helperText\" class=\"m-0 text-sm text-muted-foreground\">\n {{ helperText }}\n </p>\n <p *ngIf=\"invalid && errorText\" class=\"m-0 text-sm text-destructive\">\n {{ errorText }}\n </p>\n</div>\n", styles: [":host{display:block}\n"] }]
|
|
4788
|
+
}], propDecorators: { id: [{
|
|
4789
|
+
type: Input
|
|
4790
|
+
}], type: [{
|
|
4791
|
+
type: Input
|
|
4792
|
+
}], value: [{
|
|
4793
|
+
type: Input
|
|
4794
|
+
}], placeholder: [{
|
|
4795
|
+
type: Input
|
|
4796
|
+
}], disabled: [{
|
|
4797
|
+
type: Input
|
|
4798
|
+
}], readonly: [{
|
|
5176
4799
|
type: Input
|
|
5177
4800
|
}], required: [{
|
|
5178
4801
|
type: Input
|
|
@@ -5223,7 +4846,7 @@ class PdmInputGroupComponent {
|
|
|
5223
4846
|
}
|
|
5224
4847
|
}
|
|
5225
4848
|
PdmInputGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5226
|
-
PdmInputGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmInputGroupComponent, selector: "pdm-input-group", inputs: { id: "id", type: "type", value: "value", placeholder: "placeholder", disabled: "disabled", invalid: "invalid", prefixText: "prefixText", suffixText: "suffixText", prefixIcon: "prefixIcon", suffixIcon: "suffixIcon", buttonText: "buttonText", className: "className" }, outputs: { valueChange: "valueChange", buttonClick: "buttonClick" }, ngImport: i0, template: "<div\n [ngClass]=\"[\n 'flex w-full flex-col items-stretch gap-2 sm:flex-row sm:items-center',\n disabled ? 'opacity-50' : '',\n className,\n ]\"\n>\n <div\n [ngClass]=\"[\n 'flex h-9 min-w-0 flex-1 box-border items-center overflow-hidden rounded-md border border-solid border-input bg-transparent px-3 py-1 text-sm text-foreground shadow-sm transition-colors focus-within:border-ring focus-within:ring-2 focus-within:ring-ring/50',\n invalid ? 'border-destructive focus-within:ring-destructive' : '',\n disabled ? 'cursor-not-allowed' : '',\n ]\"\n >\n <div\n *ngIf=\"prefixText || prefixIcon\"\n class=\"inline-flex h-full shrink-0 items-center gap-2 pr-2 text-sm text-muted-foreground\"\n >\n <pdm-icon *ngIf=\"prefixIcon\" [name]=\"prefixIcon\" [size]=\"16\"></pdm-icon>\n <span *ngIf=\"prefixText\">{{ prefixText }}</span>\n <ng-content select=\"[pdmInputGroupPrefix]\"></ng-content>\n </div>\n\n <input\n [id]=\"id\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"[\n 'h-full min-w-0 flex-1 appearance-none box-border border-0 bg-transparent p-0 text-sm text-foreground outline-none placeholder:text-muted-foreground aria-invalid:placeholder:text-destructive/70',\n type === 'file'\n ? 'text-sm file:mr-2 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground'\n : '',\n ]\"\n (input)=\"onInput($event)\"\n />\n\n <div\n *ngIf=\"!buttonText && (suffixText || suffixIcon)\"\n class=\"inline-flex h-full shrink-0 items-center gap-2 pl-2 text-sm text-muted-foreground\"\n >\n <pdm-icon *ngIf=\"suffixIcon\" [name]=\"suffixIcon\" [size]=\"16\"></pdm-icon>\n <span *ngIf=\"suffixText\" class=\"font-medium\">{{ suffixText }}</span>\n <ng-content select=\"[pdmInputGroupSuffix]\"></ng-content>\n </div>\n </div>\n\n <button\n *ngIf=\"buttonText\"\n type=\"button\"\n [disabled]=\"disabled\"\n class=\"inline-flex h-9 w-full shrink-0 appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm outline-none transition-colors focus-visible:ring-2 focus-visible:ring-ring/50 disabled:cursor-not-allowed sm:w-auto\"\n (click)=\"onButtonClick($event)\"\n >\n {{ buttonText }}\n </button>\n</div>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4849
|
+
PdmInputGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmInputGroupComponent, selector: "pdm-input-group", inputs: { id: "id", type: "type", value: "value", placeholder: "placeholder", disabled: "disabled", invalid: "invalid", prefixText: "prefixText", suffixText: "suffixText", prefixIcon: "prefixIcon", suffixIcon: "suffixIcon", buttonText: "buttonText", className: "className" }, outputs: { valueChange: "valueChange", buttonClick: "buttonClick" }, ngImport: i0, template: "<div\n [ngClass]=\"[\n 'flex w-full flex-col items-stretch gap-2 sm:flex-row sm:items-center',\n disabled ? 'opacity-50' : '',\n className,\n ]\"\n>\n <div\n [ngClass]=\"[\n 'flex h-9 min-w-0 flex-1 box-border items-center overflow-hidden rounded-md border border-solid border-input bg-transparent px-3 py-1 text-sm text-foreground shadow-sm transition-colors focus-within:border-ring focus-within:ring-2 focus-within:ring-ring/50',\n invalid ? 'border-destructive focus-within:ring-destructive' : '',\n disabled ? 'cursor-not-allowed' : '',\n ]\"\n >\n <div\n *ngIf=\"prefixText || prefixIcon\"\n class=\"inline-flex h-full shrink-0 items-center gap-2 pr-2 text-sm text-muted-foreground\"\n >\n <pdm-icon *ngIf=\"prefixIcon\" [name]=\"prefixIcon\" [size]=\"16\"></pdm-icon>\n <span *ngIf=\"prefixText\">{{ prefixText }}</span>\n <ng-content select=\"[pdmInputGroupPrefix]\"></ng-content>\n </div>\n\n <input\n [id]=\"id\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"[\n 'h-full min-w-0 flex-1 appearance-none box-border border-0 bg-transparent p-0 text-sm text-foreground outline-none placeholder:text-muted-foreground aria-invalid:placeholder:text-destructive/70',\n type === 'file'\n ? 'text-sm file:mr-2 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground'\n : '',\n ]\"\n (input)=\"onInput($event)\"\n />\n\n <div\n *ngIf=\"!buttonText && (suffixText || suffixIcon)\"\n class=\"inline-flex h-full shrink-0 items-center gap-2 pl-2 text-sm text-muted-foreground\"\n >\n <pdm-icon *ngIf=\"suffixIcon\" [name]=\"suffixIcon\" [size]=\"16\"></pdm-icon>\n <span *ngIf=\"suffixText\" class=\"font-medium\">{{ suffixText }}</span>\n <ng-content select=\"[pdmInputGroupSuffix]\"></ng-content>\n </div>\n </div>\n\n <button\n *ngIf=\"buttonText\"\n type=\"button\"\n [disabled]=\"disabled\"\n class=\"inline-flex h-9 w-full shrink-0 appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm outline-none transition-colors focus-visible:ring-2 focus-visible:ring-ring/50 disabled:cursor-not-allowed sm:w-auto\"\n (click)=\"onButtonClick($event)\"\n >\n {{ buttonText }}\n </button>\n</div>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5227
4850
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputGroupComponent, decorators: [{
|
|
5228
4851
|
type: Component,
|
|
5229
4852
|
args: [{ selector: "pdm-input-group", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n [ngClass]=\"[\n 'flex w-full flex-col items-stretch gap-2 sm:flex-row sm:items-center',\n disabled ? 'opacity-50' : '',\n className,\n ]\"\n>\n <div\n [ngClass]=\"[\n 'flex h-9 min-w-0 flex-1 box-border items-center overflow-hidden rounded-md border border-solid border-input bg-transparent px-3 py-1 text-sm text-foreground shadow-sm transition-colors focus-within:border-ring focus-within:ring-2 focus-within:ring-ring/50',\n invalid ? 'border-destructive focus-within:ring-destructive' : '',\n disabled ? 'cursor-not-allowed' : '',\n ]\"\n >\n <div\n *ngIf=\"prefixText || prefixIcon\"\n class=\"inline-flex h-full shrink-0 items-center gap-2 pr-2 text-sm text-muted-foreground\"\n >\n <pdm-icon *ngIf=\"prefixIcon\" [name]=\"prefixIcon\" [size]=\"16\"></pdm-icon>\n <span *ngIf=\"prefixText\">{{ prefixText }}</span>\n <ng-content select=\"[pdmInputGroupPrefix]\"></ng-content>\n </div>\n\n <input\n [id]=\"id\"\n [type]=\"type\"\n [value]=\"value\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [ngClass]=\"[\n 'h-full min-w-0 flex-1 appearance-none box-border border-0 bg-transparent p-0 text-sm text-foreground outline-none placeholder:text-muted-foreground aria-invalid:placeholder:text-destructive/70',\n type === 'file'\n ? 'text-sm file:mr-2 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground'\n : '',\n ]\"\n (input)=\"onInput($event)\"\n />\n\n <div\n *ngIf=\"!buttonText && (suffixText || suffixIcon)\"\n class=\"inline-flex h-full shrink-0 items-center gap-2 pl-2 text-sm text-muted-foreground\"\n >\n <pdm-icon *ngIf=\"suffixIcon\" [name]=\"suffixIcon\" [size]=\"16\"></pdm-icon>\n <span *ngIf=\"suffixText\" class=\"font-medium\">{{ suffixText }}</span>\n <ng-content select=\"[pdmInputGroupSuffix]\"></ng-content>\n </div>\n </div>\n\n <button\n *ngIf=\"buttonText\"\n type=\"button\"\n [disabled]=\"disabled\"\n class=\"inline-flex h-9 w-full shrink-0 appearance-none box-border items-center justify-center rounded-md border border-solid border-input bg-background px-4 py-2 text-sm font-medium text-foreground shadow-sm outline-none transition-colors focus-visible:ring-2 focus-visible:ring-ring/50 disabled:cursor-not-allowed sm:w-auto\"\n (click)=\"onButtonClick($event)\"\n >\n {{ buttonText }}\n </button>\n</div>\n", styles: [":host{display:block}\n"] }]
|
|
@@ -5531,7 +5154,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5531
5154
|
type: Output
|
|
5532
5155
|
}] } });
|
|
5533
5156
|
|
|
5534
|
-
const COMPONENTS$
|
|
5157
|
+
const COMPONENTS$m = [
|
|
5535
5158
|
PdmInputComponent,
|
|
5536
5159
|
PdmInputGroupComponent,
|
|
5537
5160
|
PdmInputOtpComponent,
|
|
@@ -5545,18 +5168,18 @@ PdmInputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
5545
5168
|
PdmInputGroupComponent,
|
|
5546
5169
|
PdmInputOtpComponent,
|
|
5547
5170
|
PdmInputPasswordComponent,
|
|
5548
|
-
PdmTextareaComponent], imports: [CommonModule, PdmIconModule], exports: [PdmInputComponent,
|
|
5171
|
+
PdmTextareaComponent], imports: [CommonModule, PdmIconModule$1], exports: [PdmInputComponent,
|
|
5549
5172
|
PdmInputGroupComponent,
|
|
5550
5173
|
PdmInputOtpComponent,
|
|
5551
5174
|
PdmInputPasswordComponent,
|
|
5552
5175
|
PdmTextareaComponent] });
|
|
5553
|
-
PdmInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputModule, imports: [CommonModule, PdmIconModule] });
|
|
5176
|
+
PdmInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputModule, imports: [CommonModule, PdmIconModule$1] });
|
|
5554
5177
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputModule, decorators: [{
|
|
5555
5178
|
type: NgModule,
|
|
5556
5179
|
args: [{
|
|
5557
|
-
imports: [CommonModule, PdmIconModule],
|
|
5558
|
-
declarations: COMPONENTS$
|
|
5559
|
-
exports: COMPONENTS$
|
|
5180
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
5181
|
+
declarations: COMPONENTS$m,
|
|
5182
|
+
exports: COMPONENTS$m,
|
|
5560
5183
|
}]
|
|
5561
5184
|
}] });
|
|
5562
5185
|
|
|
@@ -5580,7 +5203,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5580
5203
|
type: Input
|
|
5581
5204
|
}] } });
|
|
5582
5205
|
|
|
5583
|
-
const COMPONENTS$
|
|
5206
|
+
const COMPONENTS$l = [
|
|
5584
5207
|
PdmItemComponent,
|
|
5585
5208
|
];
|
|
5586
5209
|
class PdmItemModule {
|
|
@@ -5592,8 +5215,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5592
5215
|
type: NgModule,
|
|
5593
5216
|
args: [{
|
|
5594
5217
|
imports: [CommonModule],
|
|
5595
|
-
declarations: COMPONENTS$
|
|
5596
|
-
exports: COMPONENTS$
|
|
5218
|
+
declarations: COMPONENTS$l,
|
|
5219
|
+
exports: COMPONENTS$l
|
|
5597
5220
|
}]
|
|
5598
5221
|
}] });
|
|
5599
5222
|
|
|
@@ -5611,7 +5234,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5611
5234
|
type: Input
|
|
5612
5235
|
}] } });
|
|
5613
5236
|
|
|
5614
|
-
const COMPONENTS$
|
|
5237
|
+
const COMPONENTS$k = [
|
|
5615
5238
|
PdmKbdComponent,
|
|
5616
5239
|
];
|
|
5617
5240
|
class PdmKbdModule {
|
|
@@ -5620,6 +5243,43 @@ PdmKbdModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "1
|
|
|
5620
5243
|
PdmKbdModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, declarations: [PdmKbdComponent], imports: [CommonModule], exports: [PdmKbdComponent] });
|
|
5621
5244
|
PdmKbdModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, imports: [CommonModule] });
|
|
5622
5245
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, decorators: [{
|
|
5246
|
+
type: NgModule,
|
|
5247
|
+
args: [{
|
|
5248
|
+
imports: [CommonModule],
|
|
5249
|
+
declarations: COMPONENTS$k,
|
|
5250
|
+
exports: COMPONENTS$k
|
|
5251
|
+
}]
|
|
5252
|
+
}] });
|
|
5253
|
+
|
|
5254
|
+
class PdmLabelComponent {
|
|
5255
|
+
constructor() {
|
|
5256
|
+
this.forId = '';
|
|
5257
|
+
this.required = false;
|
|
5258
|
+
this.className = '';
|
|
5259
|
+
}
|
|
5260
|
+
}
|
|
5261
|
+
PdmLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5262
|
+
PdmLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmLabelComponent, selector: "pdm-label", inputs: { forId: "forId", required: "required", className: "className" }, ngImport: i0, template: "<label\n [attr.for]=\"forId\"\n [ngClass]=\"['text-sm font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-70', className]\"\n>\n <ng-content></ng-content>\n <span *ngIf=\"required\" class=\"ml-1 text-destructive\">*</span>\n</label>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5263
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelComponent, decorators: [{
|
|
5264
|
+
type: Component,
|
|
5265
|
+
args: [{ selector: 'pdm-label', changeDetection: ChangeDetectionStrategy.OnPush, template: "<label\n [attr.for]=\"forId\"\n [ngClass]=\"['text-sm font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-70', className]\"\n>\n <ng-content></ng-content>\n <span *ngIf=\"required\" class=\"ml-1 text-destructive\">*</span>\n</label>\n" }]
|
|
5266
|
+
}], propDecorators: { forId: [{
|
|
5267
|
+
type: Input
|
|
5268
|
+
}], required: [{
|
|
5269
|
+
type: Input
|
|
5270
|
+
}], className: [{
|
|
5271
|
+
type: Input
|
|
5272
|
+
}] } });
|
|
5273
|
+
|
|
5274
|
+
const COMPONENTS$j = [
|
|
5275
|
+
PdmLabelComponent,
|
|
5276
|
+
];
|
|
5277
|
+
class PdmLabelModule {
|
|
5278
|
+
}
|
|
5279
|
+
PdmLabelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5280
|
+
PdmLabelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, declarations: [PdmLabelComponent], imports: [CommonModule], exports: [PdmLabelComponent] });
|
|
5281
|
+
PdmLabelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, imports: [CommonModule] });
|
|
5282
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, decorators: [{
|
|
5623
5283
|
type: NgModule,
|
|
5624
5284
|
args: [{
|
|
5625
5285
|
imports: [CommonModule],
|
|
@@ -5696,7 +5356,7 @@ class PdmMenubarComponent {
|
|
|
5696
5356
|
.withPositions(this.getPositionConfigs())
|
|
5697
5357
|
.withFlexibleDimensions(false)
|
|
5698
5358
|
.withPush(true);
|
|
5699
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
5359
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
5700
5360
|
this.overlayRef = this.overlay.create({
|
|
5701
5361
|
positionStrategy,
|
|
5702
5362
|
panelClass,
|
|
@@ -5799,7 +5459,7 @@ class PdmNativeSelectComponent {
|
|
|
5799
5459
|
}
|
|
5800
5460
|
}
|
|
5801
5461
|
PdmNativeSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5802
|
-
PdmNativeSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmNativeSelectComponent, selector: "pdm-native-select", inputs: { id: "id", value: "value", disabled: "disabled", invalid: "invalid", options: "options", placeholder: "placeholder", className: "className" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"relative\" [ngClass]=\"className\">\n <select\n [id]=\"id\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n (change)=\"onChange($event)\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 flex h-9 w-full appearance-none box-border rounded-md border border-solid bg-transparent px-3 py-2 pr-9 text-sm shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50'\n ]\"\n >\n <option value=\"\" disabled>{{ placeholder }}</option>\n <option *ngFor=\"let option of options\" [value]=\"option.value\" [disabled]=\"option.disabled\">{{ option.label }}</option>\n </select>\n <pdm-icon className=\"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 text-muted-foreground\" name=\"chevron-down\" [size]=\"16\"></pdm-icon>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5462
|
+
PdmNativeSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmNativeSelectComponent, selector: "pdm-native-select", inputs: { id: "id", value: "value", disabled: "disabled", invalid: "invalid", options: "options", placeholder: "placeholder", className: "className" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"relative\" [ngClass]=\"className\">\n <select\n [id]=\"id\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n (change)=\"onChange($event)\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 flex h-9 w-full appearance-none box-border rounded-md border border-solid bg-transparent px-3 py-2 pr-9 text-sm shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50'\n ]\"\n >\n <option value=\"\" disabled>{{ placeholder }}</option>\n <option *ngFor=\"let option of options\" [value]=\"option.value\" [disabled]=\"option.disabled\">{{ option.label }}</option>\n </select>\n <pdm-icon className=\"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 text-muted-foreground\" name=\"chevron-down\" [size]=\"16\"></pdm-icon>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5803
5463
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectComponent, decorators: [{
|
|
5804
5464
|
type: Component,
|
|
5805
5465
|
args: [{ selector: 'pdm-native-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\" [ngClass]=\"className\">\n <select\n [id]=\"id\"\n [value]=\"value\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n (change)=\"onChange($event)\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive aria-invalid:placeholder:text-destructive/70 flex h-9 w-full appearance-none box-border rounded-md border border-solid bg-transparent px-3 py-2 pr-9 text-sm shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50'\n ]\"\n >\n <option value=\"\" disabled>{{ placeholder }}</option>\n <option *ngFor=\"let option of options\" [value]=\"option.value\" [disabled]=\"option.disabled\">{{ option.label }}</option>\n </select>\n <pdm-icon className=\"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 text-muted-foreground\" name=\"chevron-down\" [size]=\"16\"></pdm-icon>\n</div>\n" }]
|
|
@@ -5825,12 +5485,12 @@ const COMPONENTS$h = [PdmNativeSelectComponent];
|
|
|
5825
5485
|
class PdmNativeSelectModule {
|
|
5826
5486
|
}
|
|
5827
5487
|
PdmNativeSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5828
|
-
PdmNativeSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, declarations: [PdmNativeSelectComponent], imports: [CommonModule, PdmIconModule], exports: [PdmNativeSelectComponent] });
|
|
5829
|
-
PdmNativeSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, imports: [CommonModule, PdmIconModule] });
|
|
5488
|
+
PdmNativeSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, declarations: [PdmNativeSelectComponent], imports: [CommonModule, PdmIconModule$1], exports: [PdmNativeSelectComponent] });
|
|
5489
|
+
PdmNativeSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, imports: [CommonModule, PdmIconModule$1] });
|
|
5830
5490
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, decorators: [{
|
|
5831
5491
|
type: NgModule,
|
|
5832
5492
|
args: [{
|
|
5833
|
-
imports: [CommonModule, PdmIconModule],
|
|
5493
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
5834
5494
|
declarations: COMPONENTS$h,
|
|
5835
5495
|
exports: COMPONENTS$h,
|
|
5836
5496
|
}]
|
|
@@ -5892,226 +5552,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5892
5552
|
}]
|
|
5893
5553
|
}] });
|
|
5894
5554
|
|
|
5895
|
-
/**
|
|
5896
|
-
* Directive used to declare an option inside `<pdm-select>` via content projection.
|
|
5897
|
-
*
|
|
5898
|
-
* Usage:
|
|
5899
|
-
* ```html
|
|
5900
|
-
* <pdm-select [(value)]="val">
|
|
5901
|
-
* <pdm-select-option value="a">Option A</pdm-select-option>
|
|
5902
|
-
* <pdm-select-option value="b" [disabled]="true">Option B</pdm-select-option>
|
|
5903
|
-
* <pdm-select-option value="c" label="Option C"></pdm-select-option>
|
|
5904
|
-
* </pdm-select>
|
|
5905
|
-
* ```
|
|
5906
|
-
*
|
|
5907
|
-
* When `label` is not provided, the text content of the projected node is used.
|
|
5908
|
-
*/
|
|
5909
|
-
class PdmSelectOptionDirective {
|
|
5910
|
-
constructor(el) {
|
|
5911
|
-
this.el = el;
|
|
5912
|
-
/** The option value that will be emitted on selection. */
|
|
5913
|
-
this.value = '';
|
|
5914
|
-
/** When true, the option is rendered but cannot be selected. */
|
|
5915
|
-
this.disabled = false;
|
|
5916
|
-
/**
|
|
5917
|
-
* Explicit label for the option.
|
|
5918
|
-
* When omitted, the directive reads the element's `textContent` after content init.
|
|
5919
|
-
*/
|
|
5920
|
-
this.label = '';
|
|
5921
|
-
}
|
|
5922
|
-
ngAfterContentInit() {
|
|
5923
|
-
var _a;
|
|
5924
|
-
// If no explicit label, harvest text from the projected node.
|
|
5925
|
-
if (!this.label) {
|
|
5926
|
-
this.label = ((_a = this.el.nativeElement.textContent) !== null && _a !== void 0 ? _a : '').trim();
|
|
5927
|
-
}
|
|
5928
|
-
}
|
|
5929
|
-
/** Resolved label string — always non-empty after ngAfterContentInit. */
|
|
5930
|
-
get resolvedLabel() {
|
|
5931
|
-
return this.label || this.value;
|
|
5932
|
-
}
|
|
5933
|
-
}
|
|
5934
|
-
PdmSelectOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectOptionDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
5935
|
-
PdmSelectOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: PdmSelectOptionDirective, selector: "pdm-select-option", inputs: { value: "value", disabled: "disabled", label: "label" }, ngImport: i0 });
|
|
5936
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectOptionDirective, decorators: [{
|
|
5937
|
-
type: Directive,
|
|
5938
|
-
args: [{
|
|
5939
|
-
selector: 'pdm-select-option'
|
|
5940
|
-
}]
|
|
5941
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { value: [{
|
|
5942
|
-
type: Input
|
|
5943
|
-
}], disabled: [{
|
|
5944
|
-
type: Input
|
|
5945
|
-
}], label: [{
|
|
5946
|
-
type: Input
|
|
5947
|
-
}] } });
|
|
5948
|
-
|
|
5949
|
-
class PdmSelectComponent {
|
|
5950
|
-
constructor(cdr, overlay, viewContainerRef) {
|
|
5951
|
-
this.cdr = cdr;
|
|
5952
|
-
this.overlay = overlay;
|
|
5953
|
-
this.viewContainerRef = viewContainerRef;
|
|
5954
|
-
this.id = "";
|
|
5955
|
-
this.value = "";
|
|
5956
|
-
this.options = [];
|
|
5957
|
-
this.disabled = false;
|
|
5958
|
-
this.invalid = false;
|
|
5959
|
-
this.className = "";
|
|
5960
|
-
this.placeholder = "Select an option";
|
|
5961
|
-
this.open = false;
|
|
5962
|
-
this.valueChange = new EventEmitter();
|
|
5963
|
-
this.overlayRef = null;
|
|
5964
|
-
this.backdropSub = null;
|
|
5965
|
-
}
|
|
5966
|
-
ngAfterContentInit() {
|
|
5967
|
-
// Re-render when projected options change (e.g. *ngFor on pdm-select-option).
|
|
5968
|
-
this.projectedOptions.changes.subscribe(() => this.cdr.markForCheck());
|
|
5969
|
-
}
|
|
5970
|
-
ngOnDestroy() {
|
|
5971
|
-
this.destroyOverlay();
|
|
5972
|
-
}
|
|
5973
|
-
/**
|
|
5974
|
-
* Returns the effective list of options.
|
|
5975
|
-
* Projected `<pdm-select-option>` children take priority over the `[options]` input.
|
|
5976
|
-
* Falls back to `[options]` when no children are projected.
|
|
5977
|
-
*/
|
|
5978
|
-
get resolvedOptions() {
|
|
5979
|
-
if (this.projectedOptions && this.projectedOptions.length > 0) {
|
|
5980
|
-
return this.projectedOptions.map((d) => ({
|
|
5981
|
-
label: d.resolvedLabel,
|
|
5982
|
-
value: d.value,
|
|
5983
|
-
disabled: d.disabled,
|
|
5984
|
-
}));
|
|
5985
|
-
}
|
|
5986
|
-
return this.options;
|
|
5987
|
-
}
|
|
5988
|
-
get selectedOption() {
|
|
5989
|
-
return this.resolvedOptions.find((option) => option.value === this.value);
|
|
5990
|
-
}
|
|
5991
|
-
get selectedLabel() {
|
|
5992
|
-
var _a;
|
|
5993
|
-
return ((_a = this.selectedOption) === null || _a === void 0 ? void 0 : _a.label) || this.placeholder;
|
|
5994
|
-
}
|
|
5995
|
-
toggle() {
|
|
5996
|
-
if (this.disabled)
|
|
5997
|
-
return;
|
|
5998
|
-
if (this.open) {
|
|
5999
|
-
this.closePanel();
|
|
6000
|
-
}
|
|
6001
|
-
else {
|
|
6002
|
-
this.openPanel();
|
|
6003
|
-
}
|
|
6004
|
-
}
|
|
6005
|
-
onChange(event) {
|
|
6006
|
-
this.valueChange.emit(event.target.value);
|
|
6007
|
-
}
|
|
6008
|
-
selectOption(option) {
|
|
6009
|
-
if (option.disabled)
|
|
6010
|
-
return;
|
|
6011
|
-
this.valueChange.emit(option.value);
|
|
6012
|
-
this.closePanel();
|
|
6013
|
-
}
|
|
6014
|
-
onEscape() {
|
|
6015
|
-
if (this.open) {
|
|
6016
|
-
this.closePanel();
|
|
6017
|
-
}
|
|
6018
|
-
}
|
|
6019
|
-
openPanel() {
|
|
6020
|
-
var _a;
|
|
6021
|
-
if (this.overlayRef)
|
|
6022
|
-
return;
|
|
6023
|
-
const triggerEl = (_a = this.triggerRef) === null || _a === void 0 ? void 0 : _a.nativeElement;
|
|
6024
|
-
if (!triggerEl)
|
|
6025
|
-
return;
|
|
6026
|
-
this.open = true;
|
|
6027
|
-
this.cdr.markForCheck();
|
|
6028
|
-
const positionStrategy = createFlexiblePositionStrategy(this.overlay, triggerEl, 4);
|
|
6029
|
-
this.overlayRef = this.overlay.create(Object.assign({
|
|
6030
|
-
// CRÍTICO: z-[70] para aparecer SOBRE modals (z-[60])
|
|
6031
|
-
// panelClass se aplica al cdk-overlay-pane wrapper
|
|
6032
|
-
panelClass: [Z_INDEX.popover], positionStrategy, scrollStrategy: this.overlay.scrollStrategies.reposition(), width: triggerEl.offsetWidth }, this.overlayOptions));
|
|
6033
|
-
const portal = new TemplatePortal(this.panelTemplateRef, this.viewContainerRef);
|
|
6034
|
-
this.overlayRef.attach(portal);
|
|
6035
|
-
this.backdropSub = this.overlayRef
|
|
6036
|
-
.outsidePointerEvents()
|
|
6037
|
-
.subscribe((event) => {
|
|
6038
|
-
const target = event.target;
|
|
6039
|
-
if (!triggerEl.contains(target)) {
|
|
6040
|
-
this.closePanel();
|
|
6041
|
-
}
|
|
6042
|
-
});
|
|
6043
|
-
this.cdr.markForCheck();
|
|
6044
|
-
}
|
|
6045
|
-
closePanel() {
|
|
6046
|
-
if (!this.overlayRef)
|
|
6047
|
-
return;
|
|
6048
|
-
this.open = false;
|
|
6049
|
-
this.destroyOverlay();
|
|
6050
|
-
this.cdr.markForCheck();
|
|
6051
|
-
}
|
|
6052
|
-
destroyOverlay() {
|
|
6053
|
-
if (this.backdropSub) {
|
|
6054
|
-
this.backdropSub.unsubscribe();
|
|
6055
|
-
this.backdropSub = null;
|
|
6056
|
-
}
|
|
6057
|
-
if (this.overlayRef) {
|
|
6058
|
-
this.overlayRef.dispose();
|
|
6059
|
-
this.overlayRef = null;
|
|
6060
|
-
}
|
|
6061
|
-
}
|
|
6062
|
-
}
|
|
6063
|
-
PdmSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.Overlay }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
6064
|
-
PdmSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSelectComponent, selector: "pdm-select", inputs: { id: "id", value: "value", options: "options", disabled: "disabled", invalid: "invalid", className: "className", placeholder: "placeholder", overlayOptions: "overlayOptions" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, queries: [{ propertyName: "projectedOptions", predicate: PdmSelectOptionDirective }], viewQueries: [{ propertyName: "triggerRef", first: true, predicate: ["triggerEl"], descendants: true }, { propertyName: "panelTemplateRef", first: true, predicate: ["panelTemplate"], descendants: true }], ngImport: i0, template: "<div [ngClass]=\"['relative', className || 'w-full']\">\n <button\n #triggerEl\n type=\"button\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-expanded]=\"open\"\n [attr.data-state]=\"open ? 'open' : 'closed'\"\n aria-haspopup=\"listbox\"\n (click)=\"toggle()\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive flex h-9 w-full appearance-none box-border items-center justify-between rounded-md border border-solid bg-background px-3 py-2 text-sm shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50',\n ]\"\n >\n <span\n [ngClass]=\"[\n 'min-w-0 flex-1 truncate text-left leading-5',\n selectedOption\n ? 'font-medium text-foreground'\n : 'font-normal text-muted-foreground',\n ]\"\n >\n {{ selectedLabel }}\n </span>\n <pdm-icon\n name=\"chevron-down\"\n [size]=\"16\"\n className=\"shrink-0 text-muted-foreground\"\n ></pdm-icon>\n </button>\n\n <!-- Hidden native select kept for screen-reader / form fallback -->\n <select\n class=\"sr-only\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n [value]=\"value\"\n (change)=\"onChange($event)\"\n >\n <option\n *ngFor=\"let option of resolvedOptions\"\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n >\n {{ option.label }}\n </option>\n </select>\n\n <!-- Slot for content-projected pdm-select-option elements (hidden from layout) -->\n <span class=\"hidden\">\n <ng-content select=\"pdm-select-option\"></ng-content>\n </span>\n</div>\n\n<ng-template #panelTemplate>\n <div\n role=\"listbox\"\n [attr.aria-labelledby]=\"id || null\"\n class=\"w-full overflow-y-auto rounded-md border border-solid border-border bg-popover p-1 text-popover-foreground shadow-md max-h-96\"\n >\n <button\n *ngFor=\"let option of resolvedOptions\"\n type=\"button\"\n role=\"option\"\n [attr.aria-selected]=\"option.value === value\"\n [disabled]=\"option.disabled\"\n (click)=\"selectOption(option)\"\n [ngClass]=\"[\n 'flex w-full appearance-none box-border items-center justify-between rounded-sm border-0 bg-transparent px-2 py-1.5 text-left text-sm outline-none transition-colors',\n option.disabled\n ? 'cursor-not-allowed opacity-50'\n : 'hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground',\n option.value === value ? 'text-foreground' : '',\n ]\"\n >\n <span class=\"min-w-0 flex-1 truncate leading-5\">{{ option.label }}</span>\n <span\n *ngIf=\"option.value === value\"\n class=\"ml-2 flex shrink-0 items-center justify-end\"\n >\n <pdm-icon\n name=\"check\"\n [size]=\"16\"\n className=\"shrink-0 text-current\"\n ></pdm-icon>\n </span>\n </button>\n </div>\n</ng-template>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6065
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectComponent, decorators: [{
|
|
6066
|
-
type: Component,
|
|
6067
|
-
args: [{ selector: "pdm-select", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"['relative', className || 'w-full']\">\n <button\n #triggerEl\n type=\"button\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-expanded]=\"open\"\n [attr.data-state]=\"open ? 'open' : 'closed'\"\n aria-haspopup=\"listbox\"\n (click)=\"toggle()\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive flex h-9 w-full appearance-none box-border items-center justify-between rounded-md border border-solid bg-background px-3 py-2 text-sm shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50',\n ]\"\n >\n <span\n [ngClass]=\"[\n 'min-w-0 flex-1 truncate text-left leading-5',\n selectedOption\n ? 'font-medium text-foreground'\n : 'font-normal text-muted-foreground',\n ]\"\n >\n {{ selectedLabel }}\n </span>\n <pdm-icon\n name=\"chevron-down\"\n [size]=\"16\"\n className=\"shrink-0 text-muted-foreground\"\n ></pdm-icon>\n </button>\n\n <!-- Hidden native select kept for screen-reader / form fallback -->\n <select\n class=\"sr-only\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n [value]=\"value\"\n (change)=\"onChange($event)\"\n >\n <option\n *ngFor=\"let option of resolvedOptions\"\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n >\n {{ option.label }}\n </option>\n </select>\n\n <!-- Slot for content-projected pdm-select-option elements (hidden from layout) -->\n <span class=\"hidden\">\n <ng-content select=\"pdm-select-option\"></ng-content>\n </span>\n</div>\n\n<ng-template #panelTemplate>\n <div\n role=\"listbox\"\n [attr.aria-labelledby]=\"id || null\"\n class=\"w-full overflow-y-auto rounded-md border border-solid border-border bg-popover p-1 text-popover-foreground shadow-md max-h-96\"\n >\n <button\n *ngFor=\"let option of resolvedOptions\"\n type=\"button\"\n role=\"option\"\n [attr.aria-selected]=\"option.value === value\"\n [disabled]=\"option.disabled\"\n (click)=\"selectOption(option)\"\n [ngClass]=\"[\n 'flex w-full appearance-none box-border items-center justify-between rounded-sm border-0 bg-transparent px-2 py-1.5 text-left text-sm outline-none transition-colors',\n option.disabled\n ? 'cursor-not-allowed opacity-50'\n : 'hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground',\n option.value === value ? 'text-foreground' : '',\n ]\"\n >\n <span class=\"min-w-0 flex-1 truncate leading-5\">{{ option.label }}</span>\n <span\n *ngIf=\"option.value === value\"\n class=\"ml-2 flex shrink-0 items-center justify-end\"\n >\n <pdm-icon\n name=\"check\"\n [size]=\"16\"\n className=\"shrink-0 text-current\"\n ></pdm-icon>\n </span>\n </button>\n </div>\n</ng-template>\n", styles: [":host{display:block}\n"] }]
|
|
6068
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.Overlay }, { type: i0.ViewContainerRef }]; }, propDecorators: { id: [{
|
|
6069
|
-
type: Input
|
|
6070
|
-
}], value: [{
|
|
6071
|
-
type: Input
|
|
6072
|
-
}], options: [{
|
|
6073
|
-
type: Input
|
|
6074
|
-
}], disabled: [{
|
|
6075
|
-
type: Input
|
|
6076
|
-
}], invalid: [{
|
|
6077
|
-
type: Input
|
|
6078
|
-
}], className: [{
|
|
6079
|
-
type: Input
|
|
6080
|
-
}], placeholder: [{
|
|
6081
|
-
type: Input
|
|
6082
|
-
}], overlayOptions: [{
|
|
6083
|
-
type: Input
|
|
6084
|
-
}], valueChange: [{
|
|
6085
|
-
type: Output
|
|
6086
|
-
}], triggerRef: [{
|
|
6087
|
-
type: ViewChild,
|
|
6088
|
-
args: ["triggerEl"]
|
|
6089
|
-
}], panelTemplateRef: [{
|
|
6090
|
-
type: ViewChild,
|
|
6091
|
-
args: ["panelTemplate"]
|
|
6092
|
-
}], projectedOptions: [{
|
|
6093
|
-
type: ContentChildren,
|
|
6094
|
-
args: [PdmSelectOptionDirective]
|
|
6095
|
-
}], onEscape: [{
|
|
6096
|
-
type: HostListener,
|
|
6097
|
-
args: ["document:keydown.escape"]
|
|
6098
|
-
}] } });
|
|
6099
|
-
|
|
6100
|
-
const COMPONENTS$f = [PdmSelectComponent, PdmSelectOptionDirective];
|
|
6101
|
-
class PdmSelectModule {
|
|
6102
|
-
}
|
|
6103
|
-
PdmSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
6104
|
-
PdmSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, declarations: [PdmSelectComponent, PdmSelectOptionDirective], imports: [CommonModule, OverlayModule, PdmIconModule], exports: [PdmSelectComponent, PdmSelectOptionDirective] });
|
|
6105
|
-
PdmSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, imports: [CommonModule, OverlayModule, PdmIconModule] });
|
|
6106
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, decorators: [{
|
|
6107
|
-
type: NgModule,
|
|
6108
|
-
args: [{
|
|
6109
|
-
imports: [CommonModule, OverlayModule, PdmIconModule],
|
|
6110
|
-
declarations: COMPONENTS$f,
|
|
6111
|
-
exports: COMPONENTS$f,
|
|
6112
|
-
}]
|
|
6113
|
-
}] });
|
|
6114
|
-
|
|
6115
5555
|
class PdmPaginationComponent {
|
|
6116
5556
|
constructor() {
|
|
6117
5557
|
this.page = 1;
|
|
@@ -6155,7 +5595,7 @@ class PdmPaginationComponent {
|
|
|
6155
5595
|
}
|
|
6156
5596
|
}
|
|
6157
5597
|
PdmPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6158
|
-
PdmPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmPaginationComponent, selector: "pdm-pagination", inputs: { page: "page", pageCount: "pageCount", maxVisible: "maxVisible", className: "className", rowsPerPageLabel: "rowsPerPageLabel", rowsPerPage: "rowsPerPage", rowsPerPageOptions: "rowsPerPageOptions" }, outputs: { pageChange: "pageChange", rowsPerPageChange: "rowsPerPageChange" }, ngImport: i0, template: "<nav\n aria-label=\"Pagination\"\n [ngClass]=\"[\n 'mx-auto flex w-full flex-wrap items-center justify-center gap-4',\n className,\n ]\"\n>\n <div class=\"flex items-center gap-3\" *ngIf=\"rowsPerPageOptions.length > 0\">\n <span class=\"text-sm font-medium text-foreground\">{{\n rowsPerPageLabel\n }}</span>\n <pdm-select\n [value]=\"rowsPerPageValue\"\n [options]=\"rowsPerPageSelectOptions\"\n [placeholder]=\"rowsPerPageValue\"\n className=\"w-[100px] sm:w-[120px]\"\n (valueChange)=\"onRowsPerPageChangeValue($event)\"\n ></pdm-select>\n </div>\n\n <ul class=\"m-0 flex list-none items-center gap-1 p-0\">\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page <= 1\"\n (click)=\"setPage(page - 1)\"\n >\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <ng-container *ngIf=\"pageNumber === 'ellipsis'; else pageButton\">\n <span\n class=\"inline-flex h-9 min-w-9 items-center justify-center px-2 text-sm text-muted-foreground\"\n >...</span\n >\n </ng-container>\n <ng-template #pageButton>\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'appearance-none box-border border border-solid border-border bg-muted text-foreground shadow-sm'\n : 'appearance-none box-border border-0 bg-transparent text-foreground hover:bg-accent hover:text-accent-foreground',\n ]\"\n (click)=\"setPage(+pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </ng-template>\n </li>\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page >= pageCount\"\n (click)=\"setPage(page + 1)\"\n >\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\n</nav>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }, { kind: "component", type: PdmSelectComponent, selector: "pdm-select", inputs: ["id", "value", "options", "disabled", "invalid", "className", "placeholder", "overlayOptions"], outputs: ["valueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5598
|
+
PdmPaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmPaginationComponent, selector: "pdm-pagination", inputs: { page: "page", pageCount: "pageCount", maxVisible: "maxVisible", className: "className", rowsPerPageLabel: "rowsPerPageLabel", rowsPerPage: "rowsPerPage", rowsPerPageOptions: "rowsPerPageOptions" }, outputs: { pageChange: "pageChange", rowsPerPageChange: "rowsPerPageChange" }, ngImport: i0, template: "<nav\n aria-label=\"Pagination\"\n [ngClass]=\"[\n 'mx-auto flex w-full flex-wrap items-center justify-center gap-4',\n className,\n ]\"\n>\n <div class=\"flex items-center gap-3\" *ngIf=\"rowsPerPageOptions.length > 0\">\n <span class=\"text-sm font-medium text-foreground\">{{\n rowsPerPageLabel\n }}</span>\n <pdm-select\n [value]=\"rowsPerPageValue\"\n [options]=\"rowsPerPageSelectOptions\"\n [placeholder]=\"rowsPerPageValue\"\n className=\"w-[100px] sm:w-[120px]\"\n (valueChange)=\"onRowsPerPageChangeValue($event)\"\n ></pdm-select>\n </div>\n\n <ul class=\"m-0 flex list-none items-center gap-1 p-0\">\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page <= 1\"\n (click)=\"setPage(page - 1)\"\n >\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <ng-container *ngIf=\"pageNumber === 'ellipsis'; else pageButton\">\n <span\n class=\"inline-flex h-9 min-w-9 items-center justify-center px-2 text-sm text-muted-foreground\"\n >...</span\n >\n </ng-container>\n <ng-template #pageButton>\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'appearance-none box-border border border-solid border-border bg-muted text-foreground shadow-sm'\n : 'appearance-none box-border border-0 bg-transparent text-foreground hover:bg-accent hover:text-accent-foreground',\n ]\"\n (click)=\"setPage(+pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </ng-template>\n </li>\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page >= pageCount\"\n (click)=\"setPage(page + 1)\"\n >\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\n</nav>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }, { kind: "component", type: i3$1.PdmSelectComponent, selector: "pdm-select", inputs: ["id", "value", "options", "disabled", "invalid", "className", "placeholder", "overlayOptions"], outputs: ["valueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6159
5599
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationComponent, decorators: [{
|
|
6160
5600
|
type: Component,
|
|
6161
5601
|
args: [{ selector: 'pdm-pagination', changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav\n aria-label=\"Pagination\"\n [ngClass]=\"[\n 'mx-auto flex w-full flex-wrap items-center justify-center gap-4',\n className,\n ]\"\n>\n <div class=\"flex items-center gap-3\" *ngIf=\"rowsPerPageOptions.length > 0\">\n <span class=\"text-sm font-medium text-foreground\">{{\n rowsPerPageLabel\n }}</span>\n <pdm-select\n [value]=\"rowsPerPageValue\"\n [options]=\"rowsPerPageSelectOptions\"\n [placeholder]=\"rowsPerPageValue\"\n className=\"w-[100px] sm:w-[120px]\"\n (valueChange)=\"onRowsPerPageChangeValue($event)\"\n ></pdm-select>\n </div>\n\n <ul class=\"m-0 flex list-none items-center gap-1 p-0\">\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page <= 1\"\n (click)=\"setPage(page - 1)\"\n >\n <pdm-icon name=\"chevron-left\" [size]=\"14\"></pdm-icon>\n Previous\n </button>\n </li>\n <li *ngFor=\"let pageNumber of visiblePages\">\n <ng-container *ngIf=\"pageNumber === 'ellipsis'; else pageButton\">\n <span\n class=\"inline-flex h-9 min-w-9 items-center justify-center px-2 text-sm text-muted-foreground\"\n >...</span\n >\n </ng-container>\n <ng-template #pageButton>\n <button\n type=\"button\"\n [ngClass]=\"[\n 'inline-flex h-9 min-w-9 items-center justify-center rounded-md px-2 text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n pageNumber === page\n ? 'appearance-none box-border border border-solid border-border bg-muted text-foreground shadow-sm'\n : 'appearance-none box-border border-0 bg-transparent text-foreground hover:bg-accent hover:text-accent-foreground',\n ]\"\n (click)=\"setPage(+pageNumber)\"\n >\n {{ pageNumber }}\n </button>\n </ng-template>\n </li>\n <li>\n <button\n type=\"button\"\n class=\"inline-flex h-9 appearance-none box-border items-center justify-center gap-1 rounded-md border-0 bg-transparent px-2 text-sm text-foreground hover:bg-accent disabled:opacity-50 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\"\n [disabled]=\"page >= pageCount\"\n (click)=\"setPage(page + 1)\"\n >\n Next\n <pdm-icon name=\"chevron-right\" [size]=\"14\"></pdm-icon>\n </button>\n </li>\n </ul>\n</nav>\n" }]
|
|
@@ -6179,18 +5619,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6179
5619
|
type: Output
|
|
6180
5620
|
}] } });
|
|
6181
5621
|
|
|
6182
|
-
const COMPONENTS$
|
|
5622
|
+
const COMPONENTS$f = [PdmPaginationComponent];
|
|
6183
5623
|
class PdmPaginationModule {
|
|
6184
5624
|
}
|
|
6185
5625
|
PdmPaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
6186
|
-
PdmPaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, declarations: [PdmPaginationComponent], imports: [CommonModule, PdmIconModule, PdmSelectModule], exports: [PdmPaginationComponent] });
|
|
6187
|
-
PdmPaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, imports: [CommonModule, PdmIconModule, PdmSelectModule] });
|
|
5626
|
+
PdmPaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, declarations: [PdmPaginationComponent], imports: [CommonModule, PdmIconModule$1, PdmSelectModule$1], exports: [PdmPaginationComponent] });
|
|
5627
|
+
PdmPaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, imports: [CommonModule, PdmIconModule$1, PdmSelectModule$1] });
|
|
6188
5628
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, decorators: [{
|
|
6189
5629
|
type: NgModule,
|
|
6190
5630
|
args: [{
|
|
6191
|
-
imports: [CommonModule, PdmIconModule, PdmSelectModule],
|
|
6192
|
-
declarations: COMPONENTS$
|
|
6193
|
-
exports: COMPONENTS$
|
|
5631
|
+
imports: [CommonModule, PdmIconModule$1, PdmSelectModule$1],
|
|
5632
|
+
declarations: COMPONENTS$f,
|
|
5633
|
+
exports: COMPONENTS$f,
|
|
6194
5634
|
}]
|
|
6195
5635
|
}] });
|
|
6196
5636
|
|
|
@@ -6251,7 +5691,7 @@ class PdmPopoverComponent {
|
|
|
6251
5691
|
.withPositions(this.getPositionConfigs())
|
|
6252
5692
|
.withFlexibleDimensions(false)
|
|
6253
5693
|
.withPush(true);
|
|
6254
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
5694
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
6255
5695
|
this.overlayRef = this.overlay.create({
|
|
6256
5696
|
positionStrategy,
|
|
6257
5697
|
panelClass,
|
|
@@ -6351,7 +5791,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6351
5791
|
args: ["document:keydown.escape"]
|
|
6352
5792
|
}] } });
|
|
6353
5793
|
|
|
6354
|
-
const COMPONENTS$
|
|
5794
|
+
const COMPONENTS$e = [
|
|
6355
5795
|
PdmPopoverComponent,
|
|
6356
5796
|
];
|
|
6357
5797
|
class PdmPopoverModule {
|
|
@@ -6363,8 +5803,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6363
5803
|
type: NgModule,
|
|
6364
5804
|
args: [{
|
|
6365
5805
|
imports: [CommonModule, OverlayModule],
|
|
6366
|
-
declarations: COMPONENTS$
|
|
6367
|
-
exports: COMPONENTS$
|
|
5806
|
+
declarations: COMPONENTS$e,
|
|
5807
|
+
exports: COMPONENTS$e
|
|
6368
5808
|
}]
|
|
6369
5809
|
}] });
|
|
6370
5810
|
|
|
@@ -6398,7 +5838,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6398
5838
|
type: Input
|
|
6399
5839
|
}] } });
|
|
6400
5840
|
|
|
6401
|
-
const COMPONENTS$
|
|
5841
|
+
const COMPONENTS$d = [
|
|
6402
5842
|
PdmProgressComponent,
|
|
6403
5843
|
];
|
|
6404
5844
|
class PdmProgressModule {
|
|
@@ -6410,8 +5850,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6410
5850
|
type: NgModule,
|
|
6411
5851
|
args: [{
|
|
6412
5852
|
imports: [CommonModule],
|
|
6413
|
-
declarations: COMPONENTS$
|
|
6414
|
-
exports: COMPONENTS$
|
|
5853
|
+
declarations: COMPONENTS$d,
|
|
5854
|
+
exports: COMPONENTS$d
|
|
6415
5855
|
}]
|
|
6416
5856
|
}] });
|
|
6417
5857
|
|
|
@@ -6450,7 +5890,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6450
5890
|
type: Output
|
|
6451
5891
|
}] } });
|
|
6452
5892
|
|
|
6453
|
-
const COMPONENTS$
|
|
5893
|
+
const COMPONENTS$c = [
|
|
6454
5894
|
PdmRadioGroupComponent,
|
|
6455
5895
|
];
|
|
6456
5896
|
class PdmRadioGroupModule {
|
|
@@ -6462,8 +5902,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6462
5902
|
type: NgModule,
|
|
6463
5903
|
args: [{
|
|
6464
5904
|
imports: [CommonModule],
|
|
6465
|
-
declarations: COMPONENTS$
|
|
6466
|
-
exports: COMPONENTS$
|
|
5905
|
+
declarations: COMPONENTS$c,
|
|
5906
|
+
exports: COMPONENTS$c
|
|
6467
5907
|
}]
|
|
6468
5908
|
}] });
|
|
6469
5909
|
|
|
@@ -6484,7 +5924,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6484
5924
|
type: Input
|
|
6485
5925
|
}] } });
|
|
6486
5926
|
|
|
6487
|
-
const COMPONENTS$
|
|
5927
|
+
const COMPONENTS$b = [
|
|
6488
5928
|
PdmScrollAreaComponent,
|
|
6489
5929
|
];
|
|
6490
5930
|
class PdmScrollAreaModule {
|
|
@@ -6496,37 +5936,257 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6496
5936
|
type: NgModule,
|
|
6497
5937
|
args: [{
|
|
6498
5938
|
imports: [CommonModule],
|
|
6499
|
-
declarations: COMPONENTS$
|
|
6500
|
-
exports: COMPONENTS$
|
|
5939
|
+
declarations: COMPONENTS$b,
|
|
5940
|
+
exports: COMPONENTS$b
|
|
6501
5941
|
}]
|
|
6502
5942
|
}] });
|
|
6503
5943
|
|
|
6504
|
-
|
|
6505
|
-
|
|
6506
|
-
|
|
6507
|
-
|
|
6508
|
-
|
|
6509
|
-
|
|
6510
|
-
|
|
6511
|
-
|
|
6512
|
-
|
|
6513
|
-
|
|
6514
|
-
|
|
6515
|
-
|
|
6516
|
-
|
|
6517
|
-
|
|
6518
|
-
|
|
6519
|
-
|
|
6520
|
-
|
|
6521
|
-
|
|
6522
|
-
|
|
6523
|
-
|
|
6524
|
-
|
|
6525
|
-
|
|
6526
|
-
|
|
6527
|
-
|
|
6528
|
-
|
|
6529
|
-
|
|
5944
|
+
/**
|
|
5945
|
+
* Directive used to declare an option inside `<pdm-select>` via content projection.
|
|
5946
|
+
*
|
|
5947
|
+
* Usage:
|
|
5948
|
+
* ```html
|
|
5949
|
+
* <pdm-select [(value)]="val">
|
|
5950
|
+
* <pdm-select-option value="a">Option A</pdm-select-option>
|
|
5951
|
+
* <pdm-select-option value="b" [disabled]="true">Option B</pdm-select-option>
|
|
5952
|
+
* <pdm-select-option value="c" label="Option C"></pdm-select-option>
|
|
5953
|
+
* </pdm-select>
|
|
5954
|
+
* ```
|
|
5955
|
+
*
|
|
5956
|
+
* When `label` is not provided, the text content of the projected node is used.
|
|
5957
|
+
*/
|
|
5958
|
+
class PdmSelectOptionDirective {
|
|
5959
|
+
constructor(el) {
|
|
5960
|
+
this.el = el;
|
|
5961
|
+
/** The option value that will be emitted on selection. */
|
|
5962
|
+
this.value = '';
|
|
5963
|
+
/** When true, the option is rendered but cannot be selected. */
|
|
5964
|
+
this.disabled = false;
|
|
5965
|
+
/**
|
|
5966
|
+
* Explicit label for the option.
|
|
5967
|
+
* When omitted, the directive reads the element's `textContent` after content init.
|
|
5968
|
+
*/
|
|
5969
|
+
this.label = '';
|
|
5970
|
+
}
|
|
5971
|
+
ngAfterContentInit() {
|
|
5972
|
+
var _a;
|
|
5973
|
+
// If no explicit label, harvest text from the projected node.
|
|
5974
|
+
if (!this.label) {
|
|
5975
|
+
this.label = ((_a = this.el.nativeElement.textContent) !== null && _a !== void 0 ? _a : '').trim();
|
|
5976
|
+
}
|
|
5977
|
+
}
|
|
5978
|
+
/** Resolved label string — always non-empty after ngAfterContentInit. */
|
|
5979
|
+
get resolvedLabel() {
|
|
5980
|
+
return this.label || this.value;
|
|
5981
|
+
}
|
|
5982
|
+
}
|
|
5983
|
+
PdmSelectOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectOptionDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
5984
|
+
PdmSelectOptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: PdmSelectOptionDirective, selector: "pdm-select-option", inputs: { value: "value", disabled: "disabled", label: "label" }, ngImport: i0 });
|
|
5985
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectOptionDirective, decorators: [{
|
|
5986
|
+
type: Directive,
|
|
5987
|
+
args: [{
|
|
5988
|
+
selector: 'pdm-select-option'
|
|
5989
|
+
}]
|
|
5990
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { value: [{
|
|
5991
|
+
type: Input
|
|
5992
|
+
}], disabled: [{
|
|
5993
|
+
type: Input
|
|
5994
|
+
}], label: [{
|
|
5995
|
+
type: Input
|
|
5996
|
+
}] } });
|
|
5997
|
+
|
|
5998
|
+
class PdmSelectComponent {
|
|
5999
|
+
constructor(cdr, overlay, viewContainerRef) {
|
|
6000
|
+
this.cdr = cdr;
|
|
6001
|
+
this.overlay = overlay;
|
|
6002
|
+
this.viewContainerRef = viewContainerRef;
|
|
6003
|
+
this.id = "";
|
|
6004
|
+
this.value = "";
|
|
6005
|
+
this.options = [];
|
|
6006
|
+
this.disabled = false;
|
|
6007
|
+
this.invalid = false;
|
|
6008
|
+
this.className = "";
|
|
6009
|
+
this.placeholder = "Select an option";
|
|
6010
|
+
this.open = false;
|
|
6011
|
+
this.valueChange = new EventEmitter();
|
|
6012
|
+
this.overlayRef = null;
|
|
6013
|
+
this.backdropSub = null;
|
|
6014
|
+
}
|
|
6015
|
+
ngAfterContentInit() {
|
|
6016
|
+
// Re-render when projected options change (e.g. *ngFor on pdm-select-option).
|
|
6017
|
+
this.projectedOptions.changes.subscribe(() => this.cdr.markForCheck());
|
|
6018
|
+
}
|
|
6019
|
+
ngOnDestroy() {
|
|
6020
|
+
this.destroyOverlay();
|
|
6021
|
+
}
|
|
6022
|
+
/**
|
|
6023
|
+
* Returns the effective list of options.
|
|
6024
|
+
* Projected `<pdm-select-option>` children take priority over the `[options]` input.
|
|
6025
|
+
* Falls back to `[options]` when no children are projected.
|
|
6026
|
+
*/
|
|
6027
|
+
get resolvedOptions() {
|
|
6028
|
+
if (this.projectedOptions && this.projectedOptions.length > 0) {
|
|
6029
|
+
return this.projectedOptions.map((d) => ({
|
|
6030
|
+
label: d.resolvedLabel,
|
|
6031
|
+
value: d.value,
|
|
6032
|
+
disabled: d.disabled,
|
|
6033
|
+
}));
|
|
6034
|
+
}
|
|
6035
|
+
return this.options;
|
|
6036
|
+
}
|
|
6037
|
+
get selectedOption() {
|
|
6038
|
+
return this.resolvedOptions.find((option) => option.value === this.value);
|
|
6039
|
+
}
|
|
6040
|
+
get selectedLabel() {
|
|
6041
|
+
var _a;
|
|
6042
|
+
return ((_a = this.selectedOption) === null || _a === void 0 ? void 0 : _a.label) || this.placeholder;
|
|
6043
|
+
}
|
|
6044
|
+
toggle() {
|
|
6045
|
+
if (this.disabled)
|
|
6046
|
+
return;
|
|
6047
|
+
if (this.open) {
|
|
6048
|
+
this.closePanel();
|
|
6049
|
+
}
|
|
6050
|
+
else {
|
|
6051
|
+
this.openPanel();
|
|
6052
|
+
}
|
|
6053
|
+
}
|
|
6054
|
+
onChange(event) {
|
|
6055
|
+
this.valueChange.emit(event.target.value);
|
|
6056
|
+
}
|
|
6057
|
+
selectOption(option) {
|
|
6058
|
+
if (option.disabled)
|
|
6059
|
+
return;
|
|
6060
|
+
this.valueChange.emit(option.value);
|
|
6061
|
+
this.closePanel();
|
|
6062
|
+
}
|
|
6063
|
+
onEscape() {
|
|
6064
|
+
if (this.open) {
|
|
6065
|
+
this.closePanel();
|
|
6066
|
+
}
|
|
6067
|
+
}
|
|
6068
|
+
openPanel() {
|
|
6069
|
+
var _a;
|
|
6070
|
+
if (this.overlayRef)
|
|
6071
|
+
return;
|
|
6072
|
+
const triggerEl = (_a = this.triggerRef) === null || _a === void 0 ? void 0 : _a.nativeElement;
|
|
6073
|
+
if (!triggerEl)
|
|
6074
|
+
return;
|
|
6075
|
+
this.open = true;
|
|
6076
|
+
this.cdr.markForCheck();
|
|
6077
|
+
const positionStrategy = createFlexiblePositionStrategy$1(this.overlay, triggerEl, 4);
|
|
6078
|
+
this.overlayRef = this.overlay.create(Object.assign({
|
|
6079
|
+
// CRÍTICO: z-[70] para aparecer SOBRE modals (z-[60])
|
|
6080
|
+
// panelClass se aplica al cdk-overlay-pane wrapper
|
|
6081
|
+
panelClass: [Z_INDEX$1.popover], positionStrategy, scrollStrategy: this.overlay.scrollStrategies.reposition(), width: triggerEl.offsetWidth }, this.overlayOptions));
|
|
6082
|
+
const portal = new TemplatePortal(this.panelTemplateRef, this.viewContainerRef);
|
|
6083
|
+
this.overlayRef.attach(portal);
|
|
6084
|
+
this.backdropSub = this.overlayRef
|
|
6085
|
+
.outsidePointerEvents()
|
|
6086
|
+
.subscribe((event) => {
|
|
6087
|
+
const target = event.target;
|
|
6088
|
+
if (!triggerEl.contains(target)) {
|
|
6089
|
+
this.closePanel();
|
|
6090
|
+
}
|
|
6091
|
+
});
|
|
6092
|
+
this.cdr.markForCheck();
|
|
6093
|
+
}
|
|
6094
|
+
closePanel() {
|
|
6095
|
+
if (!this.overlayRef)
|
|
6096
|
+
return;
|
|
6097
|
+
this.open = false;
|
|
6098
|
+
this.destroyOverlay();
|
|
6099
|
+
this.cdr.markForCheck();
|
|
6100
|
+
}
|
|
6101
|
+
destroyOverlay() {
|
|
6102
|
+
if (this.backdropSub) {
|
|
6103
|
+
this.backdropSub.unsubscribe();
|
|
6104
|
+
this.backdropSub = null;
|
|
6105
|
+
}
|
|
6106
|
+
if (this.overlayRef) {
|
|
6107
|
+
this.overlayRef.dispose();
|
|
6108
|
+
this.overlayRef = null;
|
|
6109
|
+
}
|
|
6110
|
+
}
|
|
6111
|
+
}
|
|
6112
|
+
PdmSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.Overlay }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
6113
|
+
PdmSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSelectComponent, selector: "pdm-select", inputs: { id: "id", value: "value", options: "options", disabled: "disabled", invalid: "invalid", className: "className", placeholder: "placeholder", overlayOptions: "overlayOptions" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, queries: [{ propertyName: "projectedOptions", predicate: PdmSelectOptionDirective }], viewQueries: [{ propertyName: "triggerRef", first: true, predicate: ["triggerEl"], descendants: true }, { propertyName: "panelTemplateRef", first: true, predicate: ["panelTemplate"], descendants: true }], ngImport: i0, template: "<div [ngClass]=\"['relative', className || 'w-full']\">\n <button\n #triggerEl\n type=\"button\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-expanded]=\"open\"\n [attr.data-state]=\"open ? 'open' : 'closed'\"\n aria-haspopup=\"listbox\"\n (click)=\"toggle()\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive flex h-9 w-full appearance-none box-border items-center justify-between rounded-md border border-solid bg-background px-3 py-2 text-sm shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50',\n ]\"\n >\n <span\n [ngClass]=\"[\n 'min-w-0 flex-1 truncate text-left leading-5',\n selectedOption\n ? 'font-medium text-foreground'\n : 'font-normal text-muted-foreground',\n ]\"\n >\n {{ selectedLabel }}\n </span>\n <pdm-icon\n name=\"chevron-down\"\n [size]=\"16\"\n className=\"shrink-0 text-muted-foreground\"\n ></pdm-icon>\n </button>\n\n <!-- Hidden native select kept for screen-reader / form fallback -->\n <select\n class=\"sr-only\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n [value]=\"value\"\n (change)=\"onChange($event)\"\n >\n <option\n *ngFor=\"let option of resolvedOptions\"\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n >\n {{ option.label }}\n </option>\n </select>\n\n <!-- Slot for content-projected pdm-select-option elements (hidden from layout) -->\n <span class=\"hidden\">\n <ng-content select=\"pdm-select-option\"></ng-content>\n </span>\n</div>\n\n<ng-template #panelTemplate>\n <div\n role=\"listbox\"\n [attr.aria-labelledby]=\"id || null\"\n class=\"w-full overflow-y-auto rounded-md border border-solid border-border bg-popover p-1 text-popover-foreground shadow-md max-h-96\"\n >\n <button\n *ngFor=\"let option of resolvedOptions\"\n type=\"button\"\n role=\"option\"\n [attr.aria-selected]=\"option.value === value\"\n [disabled]=\"option.disabled\"\n (click)=\"selectOption(option)\"\n [ngClass]=\"[\n 'flex w-full appearance-none box-border items-center justify-between rounded-sm border-0 bg-transparent px-2 py-1.5 text-left text-sm outline-none transition-colors',\n option.disabled\n ? 'cursor-not-allowed opacity-50'\n : 'hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground',\n option.value === value ? 'text-foreground' : '',\n ]\"\n >\n <span class=\"min-w-0 flex-1 truncate leading-5\">{{ option.label }}</span>\n <span\n *ngIf=\"option.value === value\"\n class=\"ml-2 flex shrink-0 items-center justify-end\"\n >\n <pdm-icon\n name=\"check\"\n [size]=\"16\"\n className=\"shrink-0 text-current\"\n ></pdm-icon>\n </span>\n </button>\n </div>\n</ng-template>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6114
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectComponent, decorators: [{
|
|
6115
|
+
type: Component,
|
|
6116
|
+
args: [{ selector: "pdm-select", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"['relative', className || 'w-full']\">\n <button\n #triggerEl\n type=\"button\"\n [id]=\"id\"\n [disabled]=\"disabled\"\n [attr.aria-invalid]=\"invalid\"\n [attr.aria-expanded]=\"open\"\n [attr.data-state]=\"open ? 'open' : 'closed'\"\n aria-haspopup=\"listbox\"\n (click)=\"toggle()\"\n [ngClass]=\"[\n 'border-input focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/50 aria-invalid:ring-2 aria-invalid:ring-destructive aria-invalid:border-destructive flex h-9 w-full appearance-none box-border items-center justify-between rounded-md border border-solid bg-background px-3 py-2 text-sm shadow-sm outline-none disabled:cursor-not-allowed disabled:opacity-50',\n ]\"\n >\n <span\n [ngClass]=\"[\n 'min-w-0 flex-1 truncate text-left leading-5',\n selectedOption\n ? 'font-medium text-foreground'\n : 'font-normal text-muted-foreground',\n ]\"\n >\n {{ selectedLabel }}\n </span>\n <pdm-icon\n name=\"chevron-down\"\n [size]=\"16\"\n className=\"shrink-0 text-muted-foreground\"\n ></pdm-icon>\n </button>\n\n <!-- Hidden native select kept for screen-reader / form fallback -->\n <select\n class=\"sr-only\"\n tabindex=\"-1\"\n aria-hidden=\"true\"\n [value]=\"value\"\n (change)=\"onChange($event)\"\n >\n <option\n *ngFor=\"let option of resolvedOptions\"\n [value]=\"option.value\"\n [disabled]=\"option.disabled\"\n >\n {{ option.label }}\n </option>\n </select>\n\n <!-- Slot for content-projected pdm-select-option elements (hidden from layout) -->\n <span class=\"hidden\">\n <ng-content select=\"pdm-select-option\"></ng-content>\n </span>\n</div>\n\n<ng-template #panelTemplate>\n <div\n role=\"listbox\"\n [attr.aria-labelledby]=\"id || null\"\n class=\"w-full overflow-y-auto rounded-md border border-solid border-border bg-popover p-1 text-popover-foreground shadow-md max-h-96\"\n >\n <button\n *ngFor=\"let option of resolvedOptions\"\n type=\"button\"\n role=\"option\"\n [attr.aria-selected]=\"option.value === value\"\n [disabled]=\"option.disabled\"\n (click)=\"selectOption(option)\"\n [ngClass]=\"[\n 'flex w-full appearance-none box-border items-center justify-between rounded-sm border-0 bg-transparent px-2 py-1.5 text-left text-sm outline-none transition-colors',\n option.disabled\n ? 'cursor-not-allowed opacity-50'\n : 'hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground',\n option.value === value ? 'text-foreground' : '',\n ]\"\n >\n <span class=\"min-w-0 flex-1 truncate leading-5\">{{ option.label }}</span>\n <span\n *ngIf=\"option.value === value\"\n class=\"ml-2 flex shrink-0 items-center justify-end\"\n >\n <pdm-icon\n name=\"check\"\n [size]=\"16\"\n className=\"shrink-0 text-current\"\n ></pdm-icon>\n </span>\n </button>\n </div>\n</ng-template>\n", styles: [":host{display:block}\n"] }]
|
|
6117
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.Overlay }, { type: i0.ViewContainerRef }]; }, propDecorators: { id: [{
|
|
6118
|
+
type: Input
|
|
6119
|
+
}], value: [{
|
|
6120
|
+
type: Input
|
|
6121
|
+
}], options: [{
|
|
6122
|
+
type: Input
|
|
6123
|
+
}], disabled: [{
|
|
6124
|
+
type: Input
|
|
6125
|
+
}], invalid: [{
|
|
6126
|
+
type: Input
|
|
6127
|
+
}], className: [{
|
|
6128
|
+
type: Input
|
|
6129
|
+
}], placeholder: [{
|
|
6130
|
+
type: Input
|
|
6131
|
+
}], overlayOptions: [{
|
|
6132
|
+
type: Input
|
|
6133
|
+
}], valueChange: [{
|
|
6134
|
+
type: Output
|
|
6135
|
+
}], triggerRef: [{
|
|
6136
|
+
type: ViewChild,
|
|
6137
|
+
args: ["triggerEl"]
|
|
6138
|
+
}], panelTemplateRef: [{
|
|
6139
|
+
type: ViewChild,
|
|
6140
|
+
args: ["panelTemplate"]
|
|
6141
|
+
}], projectedOptions: [{
|
|
6142
|
+
type: ContentChildren,
|
|
6143
|
+
args: [PdmSelectOptionDirective]
|
|
6144
|
+
}], onEscape: [{
|
|
6145
|
+
type: HostListener,
|
|
6146
|
+
args: ["document:keydown.escape"]
|
|
6147
|
+
}] } });
|
|
6148
|
+
|
|
6149
|
+
const COMPONENTS$a = [PdmSelectComponent, PdmSelectOptionDirective];
|
|
6150
|
+
class PdmSelectModule {
|
|
6151
|
+
}
|
|
6152
|
+
PdmSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
6153
|
+
PdmSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, declarations: [PdmSelectComponent, PdmSelectOptionDirective], imports: [CommonModule, OverlayModule, PdmIconModule$1], exports: [PdmSelectComponent, PdmSelectOptionDirective] });
|
|
6154
|
+
PdmSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, imports: [CommonModule, OverlayModule, PdmIconModule$1] });
|
|
6155
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, decorators: [{
|
|
6156
|
+
type: NgModule,
|
|
6157
|
+
args: [{
|
|
6158
|
+
imports: [CommonModule, OverlayModule, PdmIconModule$1],
|
|
6159
|
+
declarations: COMPONENTS$a,
|
|
6160
|
+
exports: COMPONENTS$a,
|
|
6161
|
+
}]
|
|
6162
|
+
}] });
|
|
6163
|
+
|
|
6164
|
+
class PdmSeparatorComponent {
|
|
6165
|
+
constructor() {
|
|
6166
|
+
this.orientation = 'horizontal';
|
|
6167
|
+
this.decorative = true;
|
|
6168
|
+
this.className = '';
|
|
6169
|
+
}
|
|
6170
|
+
get orientationClass() {
|
|
6171
|
+
return this.orientation === 'vertical' ? 'h-full w-px' : 'h-px w-full';
|
|
6172
|
+
}
|
|
6173
|
+
}
|
|
6174
|
+
PdmSeparatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6175
|
+
PdmSeparatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSeparatorComponent, selector: "pdm-separator", inputs: { orientation: "orientation", decorative: "decorative", className: "className" }, ngImport: i0, template: "<div\n [attr.role]=\"decorative ? 'none' : 'separator'\"\n [attr.aria-orientation]=\"orientation\"\n [ngClass]=\"['shrink-0 bg-border', orientationClass, className]\"\n></div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6176
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorComponent, decorators: [{
|
|
6177
|
+
type: Component,
|
|
6178
|
+
args: [{ selector: 'pdm-separator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n [attr.role]=\"decorative ? 'none' : 'separator'\"\n [attr.aria-orientation]=\"orientation\"\n [ngClass]=\"['shrink-0 bg-border', orientationClass, className]\"\n></div>\n" }]
|
|
6179
|
+
}], propDecorators: { orientation: [{
|
|
6180
|
+
type: Input
|
|
6181
|
+
}], decorative: [{
|
|
6182
|
+
type: Input
|
|
6183
|
+
}], className: [{
|
|
6184
|
+
type: Input
|
|
6185
|
+
}] } });
|
|
6186
|
+
|
|
6187
|
+
const COMPONENTS$9 = [
|
|
6188
|
+
PdmSeparatorComponent,
|
|
6189
|
+
];
|
|
6530
6190
|
class PdmSeparatorModule {
|
|
6531
6191
|
}
|
|
6532
6192
|
PdmSeparatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -6732,7 +6392,7 @@ class PdmSonnerComponent {
|
|
|
6732
6392
|
}
|
|
6733
6393
|
}
|
|
6734
6394
|
PdmSonnerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6735
|
-
PdmSonnerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSonnerComponent, selector: "pdm-sonner", inputs: { title: "title", description: "description", tone: "tone", className: "className" }, outputs: { dismissed: "dismissed" }, ngImport: i0, template: "<div [ngClass]=\"['flex w-full max-w-sm items-start gap-3 rounded-lg border border-solid p-4 shadow-lg', toneClass, className]\" role=\"status\" aria-live=\"polite\">\n <div class=\"grid gap-0.5\">\n <p *ngIf=\"title\" class=\"m-0 text-sm font-semibold\">{{ title }}</p>\n <p *ngIf=\"description\" class=\"m-0 text-sm opacity-90\">{{ description }}</p>\n <ng-content></ng-content>\n </div>\n <button type=\"button\" class=\"ml-auto appearance-none box-border rounded-sm border-0 bg-transparent p-0 opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none\" (click)=\"dismissed.emit()\" aria-label=\"Dismiss\">\n <pdm-icon name=\"x\" [size]=\"14\"></pdm-icon>\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6395
|
+
PdmSonnerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmSonnerComponent, selector: "pdm-sonner", inputs: { title: "title", description: "description", tone: "tone", className: "className" }, outputs: { dismissed: "dismissed" }, ngImport: i0, template: "<div [ngClass]=\"['flex w-full max-w-sm items-start gap-3 rounded-lg border border-solid p-4 shadow-lg', toneClass, className]\" role=\"status\" aria-live=\"polite\">\n <div class=\"grid gap-0.5\">\n <p *ngIf=\"title\" class=\"m-0 text-sm font-semibold\">{{ title }}</p>\n <p *ngIf=\"description\" class=\"m-0 text-sm opacity-90\">{{ description }}</p>\n <ng-content></ng-content>\n </div>\n <button type=\"button\" class=\"ml-auto appearance-none box-border rounded-sm border-0 bg-transparent p-0 opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none\" (click)=\"dismissed.emit()\" aria-label=\"Dismiss\">\n <pdm-icon name=\"x\" [size]=\"14\"></pdm-icon>\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.PdmIconComponent, selector: "pdm-icon", inputs: ["name", "library", "assetUrl", "size", "strokeWidth", "className", "ariaLabel", "decorative"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6736
6396
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerComponent, decorators: [{
|
|
6737
6397
|
type: Component,
|
|
6738
6398
|
args: [{ selector: 'pdm-sonner', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"['flex w-full max-w-sm items-start gap-3 rounded-lg border border-solid p-4 shadow-lg', toneClass, className]\" role=\"status\" aria-live=\"polite\">\n <div class=\"grid gap-0.5\">\n <p *ngIf=\"title\" class=\"m-0 text-sm font-semibold\">{{ title }}</p>\n <p *ngIf=\"description\" class=\"m-0 text-sm opacity-90\">{{ description }}</p>\n <ng-content></ng-content>\n </div>\n <button type=\"button\" class=\"ml-auto appearance-none box-border rounded-sm border-0 bg-transparent p-0 opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none\" (click)=\"dismissed.emit()\" aria-label=\"Dismiss\">\n <pdm-icon name=\"x\" [size]=\"14\"></pdm-icon>\n </button>\n</div>\n" }]
|
|
@@ -6752,12 +6412,12 @@ const COMPONENTS$5 = [PdmSonnerComponent];
|
|
|
6752
6412
|
class PdmSonnerModule {
|
|
6753
6413
|
}
|
|
6754
6414
|
PdmSonnerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
6755
|
-
PdmSonnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, declarations: [PdmSonnerComponent], imports: [CommonModule, PdmIconModule], exports: [PdmSonnerComponent] });
|
|
6756
|
-
PdmSonnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, imports: [CommonModule, PdmIconModule] });
|
|
6415
|
+
PdmSonnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, declarations: [PdmSonnerComponent], imports: [CommonModule, PdmIconModule$1], exports: [PdmSonnerComponent] });
|
|
6416
|
+
PdmSonnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, imports: [CommonModule, PdmIconModule$1] });
|
|
6757
6417
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, decorators: [{
|
|
6758
6418
|
type: NgModule,
|
|
6759
6419
|
args: [{
|
|
6760
|
-
imports: [CommonModule, PdmIconModule],
|
|
6420
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
6761
6421
|
declarations: COMPONENTS$5,
|
|
6762
6422
|
exports: COMPONENTS$5,
|
|
6763
6423
|
}]
|
|
@@ -7055,7 +6715,7 @@ class PdmTooltipComponent {
|
|
|
7055
6715
|
.withPositions(this.getPositionConfigs())
|
|
7056
6716
|
.withFlexibleDimensions(false)
|
|
7057
6717
|
.withPush(true);
|
|
7058
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX);
|
|
6718
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1);
|
|
7059
6719
|
this.overlayRef = this.overlay.create({
|
|
7060
6720
|
positionStrategy,
|
|
7061
6721
|
panelClass,
|
|
@@ -7498,6 +7158,356 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
7498
7158
|
}]
|
|
7499
7159
|
}] });
|
|
7500
7160
|
|
|
7161
|
+
/**
|
|
7162
|
+
* Creates a flexible position strategy that automatically adjusts
|
|
7163
|
+
* to keep the overlay within the viewport edges.
|
|
7164
|
+
*
|
|
7165
|
+
* The strategy tries positions in this order:
|
|
7166
|
+
* 1. Bottom-left (origin bottom edge, aligns to left)
|
|
7167
|
+
* 2. Top-left (origin top edge, aligns to left)
|
|
7168
|
+
* 3. Bottom-right (origin bottom edge, aligns to right)
|
|
7169
|
+
* 4. Top-right (origin top edge, aligns to right)
|
|
7170
|
+
*
|
|
7171
|
+
* CDK Overlay will use the first position that fits within the viewport.
|
|
7172
|
+
*/
|
|
7173
|
+
function createFlexiblePositionStrategy(overlay, triggerElement, offset = 4) {
|
|
7174
|
+
return overlay
|
|
7175
|
+
.position()
|
|
7176
|
+
.flexibleConnectedTo(triggerElement)
|
|
7177
|
+
.withPositions([
|
|
7178
|
+
// Bottom-left (default) - opens downward from left edge
|
|
7179
|
+
{
|
|
7180
|
+
originX: 'start',
|
|
7181
|
+
originY: 'bottom',
|
|
7182
|
+
overlayX: 'start',
|
|
7183
|
+
overlayY: 'top',
|
|
7184
|
+
offsetY: offset
|
|
7185
|
+
},
|
|
7186
|
+
// Top-left - opens upward from left edge
|
|
7187
|
+
{
|
|
7188
|
+
originX: 'start',
|
|
7189
|
+
originY: 'top',
|
|
7190
|
+
overlayX: 'start',
|
|
7191
|
+
overlayY: 'bottom',
|
|
7192
|
+
offsetY: -offset
|
|
7193
|
+
},
|
|
7194
|
+
// Bottom-right - opens downward from right edge
|
|
7195
|
+
{
|
|
7196
|
+
originX: 'end',
|
|
7197
|
+
originY: 'bottom',
|
|
7198
|
+
overlayX: 'end',
|
|
7199
|
+
overlayY: 'top',
|
|
7200
|
+
offsetY: offset
|
|
7201
|
+
},
|
|
7202
|
+
// Top-right - opens upward from right edge
|
|
7203
|
+
{
|
|
7204
|
+
originX: 'end',
|
|
7205
|
+
originY: 'top',
|
|
7206
|
+
overlayX: 'end',
|
|
7207
|
+
overlayY: 'bottom',
|
|
7208
|
+
offsetY: -offset
|
|
7209
|
+
}
|
|
7210
|
+
])
|
|
7211
|
+
.withFlexibleDimensions(false)
|
|
7212
|
+
.withPush(true);
|
|
7213
|
+
}
|
|
7214
|
+
|
|
7215
|
+
/**
|
|
7216
|
+
* Z-Index helper for overlay components.
|
|
7217
|
+
*
|
|
7218
|
+
* CRITICAL: Consumer custom panelClass MUST NOT replace the base z-index.
|
|
7219
|
+
* This helper ensures z-index is preserved when merging custom classes.
|
|
7220
|
+
*/
|
|
7221
|
+
/**
|
|
7222
|
+
* Base z-index class for overlays - MUST be included in any overlay panel.
|
|
7223
|
+
* This ensures overlays appear above modals (z-50) and drawers (z-40).
|
|
7224
|
+
*/
|
|
7225
|
+
const OVERLAY_BASE_Z_INDEX = "z-[70]";
|
|
7226
|
+
/**
|
|
7227
|
+
* Merge consumer's panelClass with our base z-index.
|
|
7228
|
+
* Consumer classes are APPENDED, not replacing our z-index guarantee.
|
|
7229
|
+
*
|
|
7230
|
+
* @param baseZIndex - Base z-index class to enforce (default: OVERLAY_BASE_Z_INDEX)
|
|
7231
|
+
* @param consumerClasses - Optional additional classes from consumer
|
|
7232
|
+
* @returns Array of classes safe for CDK Overlay panelClass
|
|
7233
|
+
*/
|
|
7234
|
+
function mergeOverlayPanelClass(baseZIndex = OVERLAY_BASE_Z_INDEX, consumerClasses) {
|
|
7235
|
+
const baseClasses = baseZIndex.split(" ");
|
|
7236
|
+
if (!consumerClasses) {
|
|
7237
|
+
return baseClasses;
|
|
7238
|
+
}
|
|
7239
|
+
const consumerClassArray = Array.isArray(consumerClasses)
|
|
7240
|
+
? consumerClasses
|
|
7241
|
+
: consumerClasses.split(" ");
|
|
7242
|
+
// Consumer classes are appended AFTER base classes
|
|
7243
|
+
// This ensures z-index from baseClasses is preserved first
|
|
7244
|
+
return [...baseClasses, ...consumerClassArray];
|
|
7245
|
+
}
|
|
7246
|
+
/**
|
|
7247
|
+
* Create OverlayConfig with guaranteed z-index.
|
|
7248
|
+
* Use this instead of direct OverlayConfig to ensure z-index enforcement.
|
|
7249
|
+
*
|
|
7250
|
+
* @param baseConfig - Base overlay configuration
|
|
7251
|
+
* @param consumerPanelClass - Optional consumer panelClass to merge
|
|
7252
|
+
* @returns OverlayConfig with z-index guarantee
|
|
7253
|
+
*/
|
|
7254
|
+
function createZIndexEnforcedOverlay(baseConfig, consumerPanelClass) {
|
|
7255
|
+
const mergedClasses = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, consumerPanelClass);
|
|
7256
|
+
const existingPanelClass = baseConfig.panelClass;
|
|
7257
|
+
if (existingPanelClass) {
|
|
7258
|
+
const existingArray = Array.isArray(existingPanelClass)
|
|
7259
|
+
? existingPanelClass
|
|
7260
|
+
: existingPanelClass.split(" ");
|
|
7261
|
+
return Object.assign(Object.assign({}, baseConfig), { panelClass: [...mergedClasses, ...existingArray] });
|
|
7262
|
+
}
|
|
7263
|
+
return Object.assign(Object.assign({}, baseConfig), { panelClass: mergedClasses });
|
|
7264
|
+
}
|
|
7265
|
+
/**
|
|
7266
|
+
* Helper to extract z-index from a class string for debugging.
|
|
7267
|
+
*/
|
|
7268
|
+
function extractZIndex(classes) {
|
|
7269
|
+
const classArray = Array.isArray(classes) ? classes : classes.split(" ");
|
|
7270
|
+
for (const cls of classArray) {
|
|
7271
|
+
if (cls.startsWith("z-") || cls.startsWith("z-[")) {
|
|
7272
|
+
return cls;
|
|
7273
|
+
}
|
|
7274
|
+
}
|
|
7275
|
+
return null;
|
|
7276
|
+
}
|
|
7277
|
+
|
|
7278
|
+
/**
|
|
7279
|
+
* Sistema de responsive utilities para PDM UI Kit
|
|
7280
|
+
*
|
|
7281
|
+
* Proporciona constantes, tipos y helpers para manejar responsive design
|
|
7282
|
+
* de forma consistente en todos los componentes.
|
|
7283
|
+
*/
|
|
7284
|
+
/**
|
|
7285
|
+
* Breakpoints estándar de Tailwind CSS
|
|
7286
|
+
* Mobile-first approach: los estilos base son para mobile, los breakpoints son MIN-WIDTH
|
|
7287
|
+
*/
|
|
7288
|
+
const BREAKPOINTS = {
|
|
7289
|
+
sm: '640px',
|
|
7290
|
+
md: '768px',
|
|
7291
|
+
lg: '1024px',
|
|
7292
|
+
xl: '1280px',
|
|
7293
|
+
'2xl': '1536px' // extra large desktop
|
|
7294
|
+
};
|
|
7295
|
+
/**
|
|
7296
|
+
* Helper para generar clases responsive de forma programática
|
|
7297
|
+
*
|
|
7298
|
+
* @example
|
|
7299
|
+
* responsive({ default: 'block', sm: 'flex', lg: 'grid' })
|
|
7300
|
+
* // Returns: 'block sm:flex lg:grid'
|
|
7301
|
+
*/
|
|
7302
|
+
function responsive(config) {
|
|
7303
|
+
const classes = [];
|
|
7304
|
+
if (config.default) {
|
|
7305
|
+
classes.push(config.default);
|
|
7306
|
+
}
|
|
7307
|
+
['sm', 'md', 'lg', 'xl', '2xl'].forEach(bp => {
|
|
7308
|
+
if (config[bp]) {
|
|
7309
|
+
classes.push(`${bp}:${config[bp]}`);
|
|
7310
|
+
}
|
|
7311
|
+
});
|
|
7312
|
+
return classes.join(' ');
|
|
7313
|
+
}
|
|
7314
|
+
/**
|
|
7315
|
+
* Helper para overflow responsive
|
|
7316
|
+
* Maneja el caso común de scroll en mobile, auto en desktop
|
|
7317
|
+
*
|
|
7318
|
+
* @example
|
|
7319
|
+
* overflowResponsive('x', 'scroll', 'auto')
|
|
7320
|
+
* // Returns: 'overflow-x-scroll sm:overflow-x-auto'
|
|
7321
|
+
*/
|
|
7322
|
+
function overflowResponsive(axis, mobile, desktop) {
|
|
7323
|
+
const axisClass = axis === 'both' ? 'overflow' : `overflow-${axis}`;
|
|
7324
|
+
const mobileClass = `${axisClass}-${mobile}`;
|
|
7325
|
+
if (!desktop || desktop === mobile) {
|
|
7326
|
+
return mobileClass;
|
|
7327
|
+
}
|
|
7328
|
+
return `${mobileClass} sm:${axisClass}-${desktop}`;
|
|
7329
|
+
}
|
|
7330
|
+
/**
|
|
7331
|
+
* Helper para spacing responsive
|
|
7332
|
+
* Útil para padding/margin que necesita ajustarse por breakpoint
|
|
7333
|
+
*
|
|
7334
|
+
* @example
|
|
7335
|
+
* spacingResponsive('px', { default: '4', sm: '6', lg: '8' })
|
|
7336
|
+
* // Returns: 'px-4 sm:px-6 lg:px-8'
|
|
7337
|
+
*/
|
|
7338
|
+
function spacingResponsive(property, values) {
|
|
7339
|
+
return responsive(Object.entries(values).reduce((acc, [key, value]) => {
|
|
7340
|
+
acc[key] = `${property}-${value}`;
|
|
7341
|
+
return acc;
|
|
7342
|
+
}, {}));
|
|
7343
|
+
}
|
|
7344
|
+
/**
|
|
7345
|
+
* Helper para width responsive
|
|
7346
|
+
*
|
|
7347
|
+
* @example
|
|
7348
|
+
* widthResponsive({ default: 'full', sm: 'auto', lg: '1/2' })
|
|
7349
|
+
* // Returns: 'w-full sm:w-auto lg:w-1/2'
|
|
7350
|
+
*/
|
|
7351
|
+
function widthResponsive(values) {
|
|
7352
|
+
return responsive(Object.entries(values).reduce((acc, [key, value]) => {
|
|
7353
|
+
acc[key] = `w-${value}`;
|
|
7354
|
+
return acc;
|
|
7355
|
+
}, {}));
|
|
7356
|
+
}
|
|
7357
|
+
/**
|
|
7358
|
+
* Clases comunes para containers responsive
|
|
7359
|
+
* Pensadas para wrappers que contienen contenido que puede desbordar
|
|
7360
|
+
*/
|
|
7361
|
+
const RESPONSIVE_CONTAINER = {
|
|
7362
|
+
// Container con scroll horizontal en mobile, contenido visible en desktop
|
|
7363
|
+
tableWrapper: 'relative w-full overflow-x-auto sm:overflow-x-visible',
|
|
7364
|
+
// Container con padding negativo en mobile para scroll edge-to-edge
|
|
7365
|
+
tableWrapperFullBleed: 'relative w-full -mx-4 px-4 overflow-x-auto sm:mx-0 sm:px-0 sm:overflow-x-visible',
|
|
7366
|
+
// Container con max-width responsive
|
|
7367
|
+
contentWrapper: 'w-full mx-auto px-4 sm:px-6 lg:px-8 max-w-screen-2xl',
|
|
7368
|
+
// Container para modals/dialogs
|
|
7369
|
+
modalWrapper: 'w-full max-w-lg mx-auto px-4 sm:px-0',
|
|
7370
|
+
// Container para forms
|
|
7371
|
+
formWrapper: 'w-full max-w-md mx-auto space-y-4'
|
|
7372
|
+
};
|
|
7373
|
+
/**
|
|
7374
|
+
* Clases comunes para display responsive
|
|
7375
|
+
*/
|
|
7376
|
+
const RESPONSIVE_DISPLAY = {
|
|
7377
|
+
// Ocultar en mobile, mostrar en desktop
|
|
7378
|
+
hideOnMobile: 'hidden sm:block',
|
|
7379
|
+
// Mostrar solo en mobile
|
|
7380
|
+
showOnMobile: 'block sm:hidden',
|
|
7381
|
+
// Stack en mobile, flex en desktop
|
|
7382
|
+
stackToFlex: 'flex flex-col sm:flex-row',
|
|
7383
|
+
// Stack en mobile, grid en desktop
|
|
7384
|
+
stackToGrid: 'grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3'
|
|
7385
|
+
};
|
|
7386
|
+
/**
|
|
7387
|
+
* Clases para table responsive strategies
|
|
7388
|
+
*/
|
|
7389
|
+
const TABLE_RESPONSIVE = {
|
|
7390
|
+
// Scroll horizontal (default, más simple)
|
|
7391
|
+
scroll: {
|
|
7392
|
+
wrapper: 'relative w-full overflow-x-auto',
|
|
7393
|
+
table: 'w-full min-w-full',
|
|
7394
|
+
cell: 'whitespace-nowrap'
|
|
7395
|
+
},
|
|
7396
|
+
// Permitir wrap del contenido
|
|
7397
|
+
wrap: {
|
|
7398
|
+
wrapper: 'relative w-full overflow-x-auto',
|
|
7399
|
+
table: 'w-full',
|
|
7400
|
+
cell: 'whitespace-normal break-words'
|
|
7401
|
+
},
|
|
7402
|
+
// Stack en mobile (cada fila se convierte en card)
|
|
7403
|
+
// Requiere lógica adicional en el componente
|
|
7404
|
+
stack: {
|
|
7405
|
+
wrapper: 'relative w-full',
|
|
7406
|
+
table: 'w-full',
|
|
7407
|
+
row: 'block sm:table-row border-b sm:border-b-0',
|
|
7408
|
+
cell: 'block sm:table-cell py-2 sm:py-0 before:content-[attr(data-label)] before:font-medium before:inline-block before:w-32 sm:before:content-none'
|
|
7409
|
+
},
|
|
7410
|
+
// Collapse: ocultar columnas menos importantes en mobile
|
|
7411
|
+
// Se usa con clases de visibility en las columnas específicas
|
|
7412
|
+
collapse: {
|
|
7413
|
+
wrapper: 'relative w-full overflow-x-auto',
|
|
7414
|
+
table: 'w-full',
|
|
7415
|
+
cell: 'whitespace-nowrap',
|
|
7416
|
+
// Estas clases se aplican a columnas opcionales
|
|
7417
|
+
optionalColumn: 'hidden md:table-cell'
|
|
7418
|
+
}
|
|
7419
|
+
};
|
|
7420
|
+
|
|
7421
|
+
/**
|
|
7422
|
+
* Z-Index Scale - Sistema centralizado de z-index
|
|
7423
|
+
*
|
|
7424
|
+
* JERARQUÍA (de menor a mayor):
|
|
7425
|
+
* 1. base (z-0) - Elementos normales del DOM
|
|
7426
|
+
* 2. dropdown (z-10) - Selects, combobox, date-pickers
|
|
7427
|
+
* 3. sticky (z-20) - Headers, navigation bars
|
|
7428
|
+
* 4. drawerBackdrop (z-30) - Backdrop de drawers
|
|
7429
|
+
* 5. drawer (z-40) - Sidebar drawer, sheets laterales
|
|
7430
|
+
* 6. modalBackdrop (z-40) - Backdrop de modals ( mismo nivel que drawer)
|
|
7431
|
+
* 7. modal (z-50) - Dialogs, alert-dialogs
|
|
7432
|
+
* 8. popover (z-[70]) - Tooltips, dropdowns DENTRO de modals
|
|
7433
|
+
* 9. toast (z-[100]) - Notificaciones que deben estar sobre TODO
|
|
7434
|
+
*
|
|
7435
|
+
* REGLA CRÍTICA:
|
|
7436
|
+
* - Componentes overlay (select options, dropdown menu, tooltip) SIEMPRE z-[70] o mayor
|
|
7437
|
+
* - Esto permite que funcionen DENTRO de modals (z-50)
|
|
7438
|
+
* - Backdrop de modal debe ser z-40 para estar DEBAJO del contenido del modal (z-50)
|
|
7439
|
+
*/
|
|
7440
|
+
const Z_INDEX = {
|
|
7441
|
+
/**
|
|
7442
|
+
* Base - contenido normal del DOM
|
|
7443
|
+
*/
|
|
7444
|
+
base: "z-0",
|
|
7445
|
+
/**
|
|
7446
|
+
* Dropdown - Selects, combobox, date-pickers
|
|
7447
|
+
* Debe estar SOBRE contenido normal pero BAJO overlays
|
|
7448
|
+
*/
|
|
7449
|
+
dropdown: "z-10",
|
|
7450
|
+
/**
|
|
7451
|
+
* Sticky - Headers, navigation fija
|
|
7452
|
+
*/
|
|
7453
|
+
sticky: "z-20",
|
|
7454
|
+
/**
|
|
7455
|
+
* Drawer backdrop - Backdrop de sidebar drawer
|
|
7456
|
+
* Debe estar DEBAJO del drawer panel y DEBAJO de modals
|
|
7457
|
+
*/
|
|
7458
|
+
drawerBackdrop: "z-30",
|
|
7459
|
+
/**
|
|
7460
|
+
* Drawer - Sidebar drawer, sheets laterales
|
|
7461
|
+
* Debe estar SOBRE su backdrop pero BAJO modals
|
|
7462
|
+
*/
|
|
7463
|
+
drawer: "z-40",
|
|
7464
|
+
/**
|
|
7465
|
+
* Modal backdrop - Backdrop de dialogs
|
|
7466
|
+
* Mismo nivel que drawer backdrop (z-40)
|
|
7467
|
+
*/
|
|
7468
|
+
modalBackdrop: "z-40",
|
|
7469
|
+
/**
|
|
7470
|
+
* Modal - Dialogs, alert-dialogs
|
|
7471
|
+
* Debe estar SOBRE su backdrop
|
|
7472
|
+
*/
|
|
7473
|
+
modal: "z-50",
|
|
7474
|
+
/**
|
|
7475
|
+
* Popover - Tooltips, dropdowns, selects options DENTRO de modals
|
|
7476
|
+
* CRÍTICO: Debe ser MAYOR que modal (z-50) para aparecer sobre modals
|
|
7477
|
+
* USAR SIEMPRE mergeOverlayPanelClass() para asegurar este valor
|
|
7478
|
+
*/
|
|
7479
|
+
popover: "z-[70]",
|
|
7480
|
+
/**
|
|
7481
|
+
* Toast - Notificaciones globales
|
|
7482
|
+
* Debe estar sobre TODO
|
|
7483
|
+
*/
|
|
7484
|
+
toast: "z-[100]",
|
|
7485
|
+
};
|
|
7486
|
+
/**
|
|
7487
|
+
* Helper para debugging z-index issues
|
|
7488
|
+
*/
|
|
7489
|
+
function logZIndexStack(element) {
|
|
7490
|
+
if (typeof window === "undefined")
|
|
7491
|
+
return;
|
|
7492
|
+
let current = element;
|
|
7493
|
+
const stack = [];
|
|
7494
|
+
while (current && current !== document.body) {
|
|
7495
|
+
const computed = window.getComputedStyle(current);
|
|
7496
|
+
const zIndex = computed.zIndex;
|
|
7497
|
+
const position = computed.position;
|
|
7498
|
+
if (zIndex !== "auto") {
|
|
7499
|
+
stack.push({
|
|
7500
|
+
element: current.tagName +
|
|
7501
|
+
(current.className ? `.${current.className.split(" ")[0]}` : ""),
|
|
7502
|
+
zIndex,
|
|
7503
|
+
position,
|
|
7504
|
+
});
|
|
7505
|
+
}
|
|
7506
|
+
current = current.parentElement;
|
|
7507
|
+
}
|
|
7508
|
+
console.table(stack);
|
|
7509
|
+
}
|
|
7510
|
+
|
|
7501
7511
|
/**
|
|
7502
7512
|
* Generated bundle index. Do not edit.
|
|
7503
7513
|
*/
|