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/fesm2020/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() {
|
|
@@ -783,43 +793,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
783
793
|
}]
|
|
784
794
|
}] });
|
|
785
795
|
|
|
786
|
-
class PdmLabelComponent {
|
|
787
|
-
constructor() {
|
|
788
|
-
this.forId = '';
|
|
789
|
-
this.required = false;
|
|
790
|
-
this.className = '';
|
|
791
|
-
}
|
|
792
|
-
}
|
|
793
|
-
PdmLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
794
|
-
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 });
|
|
795
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelComponent, decorators: [{
|
|
796
|
-
type: Component,
|
|
797
|
-
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" }]
|
|
798
|
-
}], propDecorators: { forId: [{
|
|
799
|
-
type: Input
|
|
800
|
-
}], required: [{
|
|
801
|
-
type: Input
|
|
802
|
-
}], className: [{
|
|
803
|
-
type: Input
|
|
804
|
-
}] } });
|
|
805
|
-
|
|
806
|
-
const COMPONENTS$D = [
|
|
807
|
-
PdmLabelComponent,
|
|
808
|
-
];
|
|
809
|
-
class PdmLabelModule {
|
|
810
|
-
}
|
|
811
|
-
PdmLabelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
812
|
-
PdmLabelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, declarations: [PdmLabelComponent], imports: [CommonModule], exports: [PdmLabelComponent] });
|
|
813
|
-
PdmLabelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, imports: [CommonModule] });
|
|
814
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, decorators: [{
|
|
815
|
-
type: NgModule,
|
|
816
|
-
args: [{
|
|
817
|
-
imports: [CommonModule],
|
|
818
|
-
declarations: COMPONENTS$D,
|
|
819
|
-
exports: COMPONENTS$D
|
|
820
|
-
}]
|
|
821
|
-
}] });
|
|
822
|
-
|
|
823
796
|
const DAY_MS = 24 * 60 * 60 * 1000;
|
|
824
797
|
class PdmCalendarComponent {
|
|
825
798
|
constructor() {
|
|
@@ -1346,129 +1319,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1346
1319
|
type: Input
|
|
1347
1320
|
}] } });
|
|
1348
1321
|
|
|
1349
|
-
/**
|
|
1350
|
-
* Creates a flexible position strategy that automatically adjusts
|
|
1351
|
-
* to keep the overlay within the viewport edges.
|
|
1352
|
-
*
|
|
1353
|
-
* The strategy tries positions in this order:
|
|
1354
|
-
* 1. Bottom-left (origin bottom edge, aligns to left)
|
|
1355
|
-
* 2. Top-left (origin top edge, aligns to left)
|
|
1356
|
-
* 3. Bottom-right (origin bottom edge, aligns to right)
|
|
1357
|
-
* 4. Top-right (origin top edge, aligns to right)
|
|
1358
|
-
*
|
|
1359
|
-
* CDK Overlay will use the first position that fits within the viewport.
|
|
1360
|
-
*/
|
|
1361
|
-
function createFlexiblePositionStrategy(overlay, triggerElement, offset = 4) {
|
|
1362
|
-
return overlay
|
|
1363
|
-
.position()
|
|
1364
|
-
.flexibleConnectedTo(triggerElement)
|
|
1365
|
-
.withPositions([
|
|
1366
|
-
// Bottom-left (default) - opens downward from left edge
|
|
1367
|
-
{
|
|
1368
|
-
originX: 'start',
|
|
1369
|
-
originY: 'bottom',
|
|
1370
|
-
overlayX: 'start',
|
|
1371
|
-
overlayY: 'top',
|
|
1372
|
-
offsetY: offset
|
|
1373
|
-
},
|
|
1374
|
-
// Top-left - opens upward from left edge
|
|
1375
|
-
{
|
|
1376
|
-
originX: 'start',
|
|
1377
|
-
originY: 'top',
|
|
1378
|
-
overlayX: 'start',
|
|
1379
|
-
overlayY: 'bottom',
|
|
1380
|
-
offsetY: -offset
|
|
1381
|
-
},
|
|
1382
|
-
// Bottom-right - opens downward from right edge
|
|
1383
|
-
{
|
|
1384
|
-
originX: 'end',
|
|
1385
|
-
originY: 'bottom',
|
|
1386
|
-
overlayX: 'end',
|
|
1387
|
-
overlayY: 'top',
|
|
1388
|
-
offsetY: offset
|
|
1389
|
-
},
|
|
1390
|
-
// Top-right - opens upward from right edge
|
|
1391
|
-
{
|
|
1392
|
-
originX: 'end',
|
|
1393
|
-
originY: 'top',
|
|
1394
|
-
overlayX: 'end',
|
|
1395
|
-
overlayY: 'bottom',
|
|
1396
|
-
offsetY: -offset
|
|
1397
|
-
}
|
|
1398
|
-
])
|
|
1399
|
-
.withFlexibleDimensions(false)
|
|
1400
|
-
.withPush(true);
|
|
1401
|
-
}
|
|
1402
|
-
|
|
1403
|
-
/**
|
|
1404
|
-
* Z-Index helper for overlay components.
|
|
1405
|
-
*
|
|
1406
|
-
* CRITICAL: Consumer custom panelClass MUST NOT replace the base z-index.
|
|
1407
|
-
* This helper ensures z-index is preserved when merging custom classes.
|
|
1408
|
-
*/
|
|
1409
|
-
/**
|
|
1410
|
-
* Base z-index class for overlays - MUST be included in any overlay panel.
|
|
1411
|
-
* This ensures overlays appear above modals (z-50) and drawers (z-40).
|
|
1412
|
-
*/
|
|
1413
|
-
const OVERLAY_BASE_Z_INDEX = "z-[70]";
|
|
1414
|
-
/**
|
|
1415
|
-
* Merge consumer's panelClass with our base z-index.
|
|
1416
|
-
* Consumer classes are APPENDED, not replacing our z-index guarantee.
|
|
1417
|
-
*
|
|
1418
|
-
* @param baseZIndex - Base z-index class to enforce (default: OVERLAY_BASE_Z_INDEX)
|
|
1419
|
-
* @param consumerClasses - Optional additional classes from consumer
|
|
1420
|
-
* @returns Array of classes safe for CDK Overlay panelClass
|
|
1421
|
-
*/
|
|
1422
|
-
function mergeOverlayPanelClass(baseZIndex = OVERLAY_BASE_Z_INDEX, consumerClasses) {
|
|
1423
|
-
const baseClasses = baseZIndex.split(" ");
|
|
1424
|
-
if (!consumerClasses) {
|
|
1425
|
-
return baseClasses;
|
|
1426
|
-
}
|
|
1427
|
-
const consumerClassArray = Array.isArray(consumerClasses)
|
|
1428
|
-
? consumerClasses
|
|
1429
|
-
: consumerClasses.split(" ");
|
|
1430
|
-
// Consumer classes are appended AFTER base classes
|
|
1431
|
-
// This ensures z-index from baseClasses is preserved first
|
|
1432
|
-
return [...baseClasses, ...consumerClassArray];
|
|
1433
|
-
}
|
|
1434
|
-
/**
|
|
1435
|
-
* Create OverlayConfig with guaranteed z-index.
|
|
1436
|
-
* Use this instead of direct OverlayConfig to ensure z-index enforcement.
|
|
1437
|
-
*
|
|
1438
|
-
* @param baseConfig - Base overlay configuration
|
|
1439
|
-
* @param consumerPanelClass - Optional consumer panelClass to merge
|
|
1440
|
-
* @returns OverlayConfig with z-index guarantee
|
|
1441
|
-
*/
|
|
1442
|
-
function createZIndexEnforcedOverlay(baseConfig, consumerPanelClass) {
|
|
1443
|
-
const mergedClasses = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, consumerPanelClass);
|
|
1444
|
-
const existingPanelClass = baseConfig.panelClass;
|
|
1445
|
-
if (existingPanelClass) {
|
|
1446
|
-
const existingArray = Array.isArray(existingPanelClass)
|
|
1447
|
-
? existingPanelClass
|
|
1448
|
-
: existingPanelClass.split(" ");
|
|
1449
|
-
return {
|
|
1450
|
-
...baseConfig,
|
|
1451
|
-
panelClass: [...mergedClasses, ...existingArray],
|
|
1452
|
-
};
|
|
1453
|
-
}
|
|
1454
|
-
return {
|
|
1455
|
-
...baseConfig,
|
|
1456
|
-
panelClass: mergedClasses,
|
|
1457
|
-
};
|
|
1458
|
-
}
|
|
1459
|
-
/**
|
|
1460
|
-
* Helper to extract z-index from a class string for debugging.
|
|
1461
|
-
*/
|
|
1462
|
-
function extractZIndex(classes) {
|
|
1463
|
-
const classArray = Array.isArray(classes) ? classes : classes.split(" ");
|
|
1464
|
-
for (const cls of classArray) {
|
|
1465
|
-
if (cls.startsWith("z-") || cls.startsWith("z-[")) {
|
|
1466
|
-
return cls;
|
|
1467
|
-
}
|
|
1468
|
-
}
|
|
1469
|
-
return null;
|
|
1470
|
-
}
|
|
1471
|
-
|
|
1472
1322
|
let nextDatePickerId = 0;
|
|
1473
1323
|
class PdmDatePickerComponent {
|
|
1474
1324
|
constructor(cdr, overlay, viewContainerRef) {
|
|
@@ -1681,13 +1531,13 @@ class PdmDatePickerComponent {
|
|
|
1681
1531
|
this._open = true;
|
|
1682
1532
|
this.openChange.emit(true);
|
|
1683
1533
|
this.cdr.markForCheck();
|
|
1684
|
-
const positionStrategy = createFlexiblePositionStrategy(this.overlay, triggerEl, 8);
|
|
1534
|
+
const positionStrategy = createFlexiblePositionStrategy$1(this.overlay, triggerEl, 8);
|
|
1685
1535
|
// CRITICAL: Use mergeOverlayPanelClass to ensure z-index is never lost.
|
|
1686
1536
|
// Consumer classes are appended AFTER base z-index.
|
|
1687
|
-
const zIndexEnforced = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
1537
|
+
const zIndexEnforced = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
1688
1538
|
// Resolve panelClass: overlayOptions.panelClass wins; otherwise use z-index enforced.
|
|
1689
1539
|
const resolvedPanelClass = this.overlayOptions?.panelClass
|
|
1690
|
-
? mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.overlayOptions.panelClass)
|
|
1540
|
+
? mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.overlayOptions.panelClass)
|
|
1691
1541
|
: zIndexEnforced;
|
|
1692
1542
|
this.overlayRef = this.overlay.create({
|
|
1693
1543
|
positionStrategy,
|
|
@@ -1746,7 +1596,7 @@ class PdmDatePickerComponent {
|
|
|
1746
1596
|
}
|
|
1747
1597
|
}
|
|
1748
1598
|
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 });
|
|
1749
|
-
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 });
|
|
1599
|
+
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 });
|
|
1750
1600
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDatePickerComponent, decorators: [{
|
|
1751
1601
|
type: Component,
|
|
1752
1602
|
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" }]
|
|
@@ -1821,18 +1671,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1821
1671
|
args: ["document:keydown.escape"]
|
|
1822
1672
|
}] } });
|
|
1823
1673
|
|
|
1824
|
-
const COMPONENTS$
|
|
1674
|
+
const COMPONENTS$D = [PdmCalendarComponent, PdmDatePickerComponent];
|
|
1825
1675
|
class PdmCalendarModule {
|
|
1826
1676
|
}
|
|
1827
1677
|
PdmCalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1828
|
-
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] });
|
|
1829
|
-
PdmCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, imports: [CommonModule, OverlayModule, PdmLabelModule] });
|
|
1678
|
+
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] });
|
|
1679
|
+
PdmCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, imports: [CommonModule, OverlayModule, PdmLabelModule$1] });
|
|
1830
1680
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCalendarModule, decorators: [{
|
|
1831
1681
|
type: NgModule,
|
|
1832
1682
|
args: [{
|
|
1833
|
-
imports: [CommonModule, OverlayModule, PdmLabelModule],
|
|
1834
|
-
declarations: COMPONENTS$
|
|
1835
|
-
exports: COMPONENTS$
|
|
1683
|
+
imports: [CommonModule, OverlayModule, PdmLabelModule$1],
|
|
1684
|
+
declarations: COMPONENTS$D,
|
|
1685
|
+
exports: COMPONENTS$D,
|
|
1836
1686
|
}]
|
|
1837
1687
|
}] });
|
|
1838
1688
|
|
|
@@ -1881,7 +1731,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1881
1731
|
type: Input
|
|
1882
1732
|
}] } });
|
|
1883
1733
|
|
|
1884
|
-
const COMPONENTS$
|
|
1734
|
+
const COMPONENTS$C = [
|
|
1885
1735
|
PdmCardComponent,
|
|
1886
1736
|
];
|
|
1887
1737
|
class PdmCardModule {
|
|
@@ -1893,8 +1743,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1893
1743
|
type: NgModule,
|
|
1894
1744
|
args: [{
|
|
1895
1745
|
imports: [CommonModule],
|
|
1896
|
-
declarations: COMPONENTS$
|
|
1897
|
-
exports: COMPONENTS$
|
|
1746
|
+
declarations: COMPONENTS$C,
|
|
1747
|
+
exports: COMPONENTS$C
|
|
1898
1748
|
}]
|
|
1899
1749
|
}] });
|
|
1900
1750
|
|
|
@@ -1997,7 +1847,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
1997
1847
|
type: Output
|
|
1998
1848
|
}] } });
|
|
1999
1849
|
|
|
2000
|
-
const COMPONENTS$
|
|
1850
|
+
const COMPONENTS$B = [
|
|
2001
1851
|
PdmCarouselComponent,
|
|
2002
1852
|
];
|
|
2003
1853
|
class PdmCarouselModule {
|
|
@@ -2009,8 +1859,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2009
1859
|
type: NgModule,
|
|
2010
1860
|
args: [{
|
|
2011
1861
|
imports: [CommonModule],
|
|
2012
|
-
declarations: COMPONENTS$
|
|
2013
|
-
exports: COMPONENTS$
|
|
1862
|
+
declarations: COMPONENTS$B,
|
|
1863
|
+
exports: COMPONENTS$B
|
|
2014
1864
|
}]
|
|
2015
1865
|
}] });
|
|
2016
1866
|
|
|
@@ -2188,7 +2038,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2188
2038
|
type: Input
|
|
2189
2039
|
}] } });
|
|
2190
2040
|
|
|
2191
|
-
const COMPONENTS$
|
|
2041
|
+
const COMPONENTS$A = [
|
|
2192
2042
|
PdmChartComponent,
|
|
2193
2043
|
];
|
|
2194
2044
|
class PdmChartModule {
|
|
@@ -2200,8 +2050,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2200
2050
|
type: NgModule,
|
|
2201
2051
|
args: [{
|
|
2202
2052
|
imports: [CommonModule],
|
|
2203
|
-
declarations: COMPONENTS$
|
|
2204
|
-
exports: COMPONENTS$
|
|
2053
|
+
declarations: COMPONENTS$A,
|
|
2054
|
+
exports: COMPONENTS$A
|
|
2205
2055
|
}]
|
|
2206
2056
|
}] });
|
|
2207
2057
|
|
|
@@ -2249,7 +2099,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2249
2099
|
type: Output
|
|
2250
2100
|
}] } });
|
|
2251
2101
|
|
|
2252
|
-
const COMPONENTS$
|
|
2102
|
+
const COMPONENTS$z = [
|
|
2253
2103
|
PdmCheckboxComponent,
|
|
2254
2104
|
];
|
|
2255
2105
|
class PdmCheckboxModule {
|
|
@@ -2261,8 +2111,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2261
2111
|
type: NgModule,
|
|
2262
2112
|
args: [{
|
|
2263
2113
|
imports: [CommonModule],
|
|
2264
|
-
declarations: COMPONENTS$
|
|
2265
|
-
exports: COMPONENTS$
|
|
2114
|
+
declarations: COMPONENTS$z,
|
|
2115
|
+
exports: COMPONENTS$z
|
|
2266
2116
|
}]
|
|
2267
2117
|
}] });
|
|
2268
2118
|
|
|
@@ -2306,7 +2156,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2306
2156
|
type: Output
|
|
2307
2157
|
}] } });
|
|
2308
2158
|
|
|
2309
|
-
const COMPONENTS$
|
|
2159
|
+
const COMPONENTS$y = [
|
|
2310
2160
|
PdmCollapsibleComponent,
|
|
2311
2161
|
];
|
|
2312
2162
|
class PdmCollapsibleModule {
|
|
@@ -2318,8 +2168,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2318
2168
|
type: NgModule,
|
|
2319
2169
|
args: [{
|
|
2320
2170
|
imports: [CommonModule],
|
|
2321
|
-
declarations: COMPONENTS$
|
|
2322
|
-
exports: COMPONENTS$
|
|
2171
|
+
declarations: COMPONENTS$y,
|
|
2172
|
+
exports: COMPONENTS$y
|
|
2323
2173
|
}]
|
|
2324
2174
|
}] });
|
|
2325
2175
|
|
|
@@ -2387,7 +2237,7 @@ class PdmComboboxComponent {
|
|
|
2387
2237
|
.withPositions(this.getPositionConfigs())
|
|
2388
2238
|
.withFlexibleDimensions(false)
|
|
2389
2239
|
.withPush(true);
|
|
2390
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
2240
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
2391
2241
|
this.overlayRef = this.overlay.create({
|
|
2392
2242
|
positionStrategy,
|
|
2393
2243
|
panelClass,
|
|
@@ -2490,7 +2340,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2490
2340
|
args: ["document:keydown.escape"]
|
|
2491
2341
|
}] } });
|
|
2492
2342
|
|
|
2493
|
-
const COMPONENTS$
|
|
2343
|
+
const COMPONENTS$x = [
|
|
2494
2344
|
PdmComboboxComponent,
|
|
2495
2345
|
];
|
|
2496
2346
|
class PdmComboboxModule {
|
|
@@ -2502,182 +2352,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2502
2352
|
type: NgModule,
|
|
2503
2353
|
args: [{
|
|
2504
2354
|
imports: [CommonModule, OverlayModule],
|
|
2505
|
-
declarations: COMPONENTS$
|
|
2506
|
-
exports: COMPONENTS$
|
|
2355
|
+
declarations: COMPONENTS$x,
|
|
2356
|
+
exports: COMPONENTS$x
|
|
2507
2357
|
}]
|
|
2508
2358
|
}] });
|
|
2509
2359
|
|
|
2510
|
-
|
|
2511
|
-
|
|
2512
|
-
|
|
2513
|
-
this.
|
|
2514
|
-
this.
|
|
2515
|
-
this.
|
|
2516
|
-
this.
|
|
2517
|
-
this.
|
|
2518
|
-
|
|
2519
|
-
|
|
2520
|
-
|
|
2521
|
-
|
|
2522
|
-
|
|
2523
|
-
|
|
2524
|
-
|
|
2525
|
-
'check-circle': 'circle-check',
|
|
2526
|
-
'alert-circle': 'circle-alert',
|
|
2527
|
-
info: 'circle-info',
|
|
2528
|
-
'sort-asc': 'arrow-up-a-z',
|
|
2529
|
-
'sort-desc': 'arrow-down-z-a'
|
|
2530
|
-
},
|
|
2531
|
-
tabler: {
|
|
2532
|
-
'alert-triangle': 'triangle-alert',
|
|
2533
|
-
'user-circle': 'circle-user',
|
|
2534
|
-
'settings-2': 'settings-2',
|
|
2535
|
-
'external-link': 'external-link'
|
|
2536
|
-
},
|
|
2537
|
-
hugeicons: {
|
|
2538
|
-
'alert-02': 'circle-alert',
|
|
2539
|
-
'user-circle': 'circle-user',
|
|
2540
|
-
'search-01': 'search',
|
|
2541
|
-
'settings-01': 'settings',
|
|
2542
|
-
'arrow-right-01': 'chevron-right',
|
|
2543
|
-
'arrow-down-01': 'chevron-down'
|
|
2544
|
-
},
|
|
2545
|
-
phosphor: {
|
|
2546
|
-
'warning-circle': 'circle-alert',
|
|
2547
|
-
'caret-down': 'chevron-down',
|
|
2548
|
-
'caret-right': 'chevron-right',
|
|
2549
|
-
'user-circle': 'circle-user',
|
|
2550
|
-
gear: 'settings',
|
|
2551
|
-
'arrow-square-out': 'external-link'
|
|
2552
|
-
},
|
|
2553
|
-
remix: {
|
|
2554
|
-
'alert-line': 'circle-alert',
|
|
2555
|
-
'arrow-right-line': 'chevron-right',
|
|
2556
|
-
'arrow-down-s-line': 'chevron-down',
|
|
2557
|
-
'external-link-line': 'external-link',
|
|
2558
|
-
'user-line': 'user',
|
|
2559
|
-
'settings-3-line': 'settings'
|
|
2560
|
-
}
|
|
2561
|
-
};
|
|
2562
|
-
}
|
|
2563
|
-
get resolvedStrokeWidth() {
|
|
2564
|
-
const value = Number(this.strokeWidth);
|
|
2565
|
-
if (Number.isFinite(value) && value > 0) {
|
|
2566
|
-
return value;
|
|
2567
|
-
}
|
|
2568
|
-
if (this.library === 'phosphor') {
|
|
2569
|
-
return 1.6;
|
|
2570
|
-
}
|
|
2571
|
-
if (this.library === 'tabler') {
|
|
2572
|
-
return 1.8;
|
|
2573
|
-
}
|
|
2574
|
-
return 1.5;
|
|
2575
|
-
}
|
|
2576
|
-
get resolvedSize() {
|
|
2577
|
-
const value = Number(this.size);
|
|
2578
|
-
return Number.isFinite(value) && value > 0 ? value : 16;
|
|
2579
|
-
}
|
|
2580
|
-
get iconKey() {
|
|
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 = this.aliasMapByLibrary[this.library] ?? {};
|
|
2587
|
-
return aliases[trimmed] ?? trimmed;
|
|
2588
|
-
}
|
|
2589
|
-
get svgMarkup() {
|
|
2590
|
-
const node = this.resolveIconNode(this.iconKey) ?? FALLBACK_NODE;
|
|
2591
|
-
const strokeWidth = this.escapeAttr(this.resolvedStrokeWidth);
|
|
2592
|
-
const size = this.escapeAttr(this.resolvedSize);
|
|
2593
|
-
const body = node
|
|
2594
|
-
.map(([tag, attrs]) => {
|
|
2595
|
-
const serializedAttrs = Object.entries(attrs)
|
|
2596
|
-
.map(([key, value]) => `${key}="${this.escapeAttr(value)}"`)
|
|
2597
|
-
.join(' ');
|
|
2598
|
-
return serializedAttrs ? `<${tag} ${serializedAttrs}></${tag}>` : `<${tag}></${tag}>`;
|
|
2599
|
-
})
|
|
2600
|
-
.join('');
|
|
2601
|
-
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>`;
|
|
2602
|
-
return this.sanitizer.bypassSecurityTrustHtml(svg);
|
|
2603
|
-
}
|
|
2604
|
-
resolveIconNode(iconName) {
|
|
2605
|
-
const normalized = this.normalizeIconName(iconName);
|
|
2606
|
-
return this.lucideIndex.get(normalized) ?? null;
|
|
2607
|
-
}
|
|
2608
|
-
normalizeIconName(name) {
|
|
2609
|
-
return `${name || ''}`.toLowerCase().replace(/[^a-z0-9]/g, '');
|
|
2610
|
-
}
|
|
2611
|
-
buildLucideIndex() {
|
|
2612
|
-
const map = new Map();
|
|
2613
|
-
Object.entries(icons).forEach(([iconName, iconNode]) => {
|
|
2614
|
-
map.set(this.normalizeIconName(iconName), iconNode);
|
|
2615
|
-
});
|
|
2616
|
-
return map;
|
|
2617
|
-
}
|
|
2618
|
-
escapeAttr(value) {
|
|
2619
|
-
return `${value ?? ''}`
|
|
2620
|
-
.replace(/&/g, '&')
|
|
2621
|
-
.replace(/"/g, '"')
|
|
2622
|
-
.replace(/</g, '<')
|
|
2623
|
-
.replace(/>/g, '>');
|
|
2624
|
-
}
|
|
2625
|
-
}
|
|
2626
|
-
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 });
|
|
2627
|
-
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 });
|
|
2628
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconComponent, decorators: [{
|
|
2629
|
-
type: Component,
|
|
2630
|
-
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"] }]
|
|
2631
|
-
}], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; }, propDecorators: { name: [{
|
|
2632
|
-
type: Input
|
|
2633
|
-
}], library: [{
|
|
2634
|
-
type: Input
|
|
2635
|
-
}], assetUrl: [{
|
|
2636
|
-
type: Input
|
|
2637
|
-
}], size: [{
|
|
2638
|
-
type: Input
|
|
2639
|
-
}], strokeWidth: [{
|
|
2640
|
-
type: Input
|
|
2641
|
-
}], className: [{
|
|
2642
|
-
type: Input
|
|
2643
|
-
}], ariaLabel: [{
|
|
2644
|
-
type: Input
|
|
2645
|
-
}], decorative: [{
|
|
2646
|
-
type: Input
|
|
2647
|
-
}] } });
|
|
2648
|
-
|
|
2649
|
-
const COMPONENTS$v = [
|
|
2650
|
-
PdmIconComponent,
|
|
2651
|
-
];
|
|
2652
|
-
class PdmIconModule {
|
|
2653
|
-
}
|
|
2654
|
-
PdmIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2655
|
-
PdmIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, declarations: [PdmIconComponent], imports: [CommonModule], exports: [PdmIconComponent] });
|
|
2656
|
-
PdmIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, imports: [CommonModule] });
|
|
2657
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, decorators: [{
|
|
2658
|
-
type: NgModule,
|
|
2659
|
-
args: [{
|
|
2660
|
-
imports: [CommonModule],
|
|
2661
|
-
declarations: COMPONENTS$v,
|
|
2662
|
-
exports: COMPONENTS$v
|
|
2663
|
-
}]
|
|
2664
|
-
}] });
|
|
2665
|
-
|
|
2666
|
-
class PdmCommandComponent {
|
|
2667
|
-
constructor() {
|
|
2668
|
-
this.open = true;
|
|
2669
|
-
this.hintLabel = 'Press';
|
|
2670
|
-
this.hintKey = 'J';
|
|
2671
|
-
this.placeholder = 'Type a command or search...';
|
|
2672
|
-
this.emptyMessage = 'No results found.';
|
|
2673
|
-
this.items = [
|
|
2674
|
-
{ label: 'Calendar', value: 'calendar', group: 'Suggestions', icon: 'calendar' },
|
|
2675
|
-
{ label: 'Search emoji', value: 'emoji', group: 'Suggestions', icon: 'smile' },
|
|
2676
|
-
{ label: 'Calculator', value: 'calculator', group: 'Suggestions', icon: 'calculator', disabled: true },
|
|
2677
|
-
{ label: 'Profile', value: 'profile', group: 'Settings', icon: 'user', shortcut: '⌘P' },
|
|
2678
|
-
{ label: 'Billing', value: 'billing', group: 'Settings', icon: 'credit-card', shortcut: '⌘B' },
|
|
2679
|
-
{ label: 'Settings', value: 'settings', group: 'Settings', icon: 'settings', shortcut: '⌘S' }
|
|
2680
|
-
];
|
|
2360
|
+
class PdmCommandComponent {
|
|
2361
|
+
constructor() {
|
|
2362
|
+
this.open = true;
|
|
2363
|
+
this.hintLabel = 'Press';
|
|
2364
|
+
this.hintKey = 'J';
|
|
2365
|
+
this.placeholder = 'Type a command or search...';
|
|
2366
|
+
this.emptyMessage = 'No results found.';
|
|
2367
|
+
this.items = [
|
|
2368
|
+
{ label: 'Calendar', value: 'calendar', group: 'Suggestions', icon: 'calendar' },
|
|
2369
|
+
{ label: 'Search emoji', value: 'emoji', group: 'Suggestions', icon: 'smile' },
|
|
2370
|
+
{ label: 'Calculator', value: 'calculator', group: 'Suggestions', icon: 'calculator', disabled: true },
|
|
2371
|
+
{ label: 'Profile', value: 'profile', group: 'Settings', icon: 'user', shortcut: '⌘P' },
|
|
2372
|
+
{ label: 'Billing', value: 'billing', group: 'Settings', icon: 'credit-card', shortcut: '⌘B' },
|
|
2373
|
+
{ label: 'Settings', value: 'settings', group: 'Settings', icon: 'settings', shortcut: '⌘S' }
|
|
2374
|
+
];
|
|
2681
2375
|
this.className = '';
|
|
2682
2376
|
this.itemSelect = new EventEmitter();
|
|
2683
2377
|
this.openChange = new EventEmitter();
|
|
@@ -2710,7 +2404,7 @@ class PdmCommandComponent {
|
|
|
2710
2404
|
}
|
|
2711
2405
|
}
|
|
2712
2406
|
PdmCommandComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2713
|
-
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 });
|
|
2407
|
+
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 });
|
|
2714
2408
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandComponent, decorators: [{
|
|
2715
2409
|
type: Component,
|
|
2716
2410
|
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" }]
|
|
@@ -2734,18 +2428,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2734
2428
|
type: Output
|
|
2735
2429
|
}] } });
|
|
2736
2430
|
|
|
2737
|
-
const COMPONENTS$
|
|
2431
|
+
const COMPONENTS$w = [PdmCommandComponent];
|
|
2738
2432
|
class PdmCommandModule {
|
|
2739
2433
|
}
|
|
2740
2434
|
PdmCommandModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2741
|
-
PdmCommandModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, declarations: [PdmCommandComponent], imports: [CommonModule, PdmIconModule], exports: [PdmCommandComponent] });
|
|
2742
|
-
PdmCommandModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, imports: [CommonModule, PdmIconModule] });
|
|
2435
|
+
PdmCommandModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, declarations: [PdmCommandComponent], imports: [CommonModule, PdmIconModule$1], exports: [PdmCommandComponent] });
|
|
2436
|
+
PdmCommandModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, imports: [CommonModule, PdmIconModule$1] });
|
|
2743
2437
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmCommandModule, decorators: [{
|
|
2744
2438
|
type: NgModule,
|
|
2745
2439
|
args: [{
|
|
2746
|
-
imports: [CommonModule, PdmIconModule],
|
|
2747
|
-
declarations: COMPONENTS$
|
|
2748
|
-
exports: COMPONENTS$
|
|
2440
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
2441
|
+
declarations: COMPONENTS$w,
|
|
2442
|
+
exports: COMPONENTS$w,
|
|
2749
2443
|
}]
|
|
2750
2444
|
}] });
|
|
2751
2445
|
|
|
@@ -2847,7 +2541,7 @@ class PdmContextMenuComponent {
|
|
|
2847
2541
|
.global()
|
|
2848
2542
|
.left(`${this.x}px`)
|
|
2849
2543
|
.top(`${this.y}px`);
|
|
2850
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
2544
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
2851
2545
|
this.overlayRef = this.overlay.create({
|
|
2852
2546
|
positionStrategy,
|
|
2853
2547
|
panelClass,
|
|
@@ -2908,7 +2602,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2908
2602
|
args: ["document:click"]
|
|
2909
2603
|
}] } });
|
|
2910
2604
|
|
|
2911
|
-
const COMPONENTS$
|
|
2605
|
+
const COMPONENTS$v = [
|
|
2912
2606
|
PdmContextMenuComponent,
|
|
2913
2607
|
];
|
|
2914
2608
|
class PdmContextMenuModule {
|
|
@@ -2920,198 +2614,55 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
2920
2614
|
type: NgModule,
|
|
2921
2615
|
args: [{
|
|
2922
2616
|
imports: [CommonModule, OverlayModule],
|
|
2923
|
-
declarations: COMPONENTS$
|
|
2924
|
-
exports: COMPONENTS$
|
|
2617
|
+
declarations: COMPONENTS$v,
|
|
2618
|
+
exports: COMPONENTS$v
|
|
2925
2619
|
}]
|
|
2926
2620
|
}] });
|
|
2927
2621
|
|
|
2928
2622
|
/**
|
|
2929
|
-
*
|
|
2623
|
+
* Componente base de tabla con soporte responsive
|
|
2930
2624
|
*
|
|
2931
|
-
*
|
|
2932
|
-
* de forma consistente en todos los componentes.
|
|
2933
|
-
*/
|
|
2934
|
-
/**
|
|
2935
|
-
* Breakpoints estándar de Tailwind CSS
|
|
2936
|
-
* Mobile-first approach: los estilos base son para mobile, los breakpoints son MIN-WIDTH
|
|
2937
|
-
*/
|
|
2938
|
-
const BREAKPOINTS = {
|
|
2939
|
-
sm: '640px',
|
|
2940
|
-
md: '768px',
|
|
2941
|
-
lg: '1024px',
|
|
2942
|
-
xl: '1280px',
|
|
2943
|
-
'2xl': '1536px' // extra large desktop
|
|
2944
|
-
};
|
|
2945
|
-
/**
|
|
2946
|
-
* Helper para generar clases responsive de forma programática
|
|
2625
|
+
* SIMPLIFICADO: Ya no incluye drag & drop (usar pdm-draggable-table para eso)
|
|
2947
2626
|
*
|
|
2948
2627
|
* @example
|
|
2949
|
-
*
|
|
2950
|
-
*
|
|
2951
|
-
|
|
2952
|
-
|
|
2953
|
-
|
|
2954
|
-
if (config.default) {
|
|
2955
|
-
classes.push(config.default);
|
|
2956
|
-
}
|
|
2957
|
-
['sm', 'md', 'lg', 'xl', '2xl'].forEach(bp => {
|
|
2958
|
-
if (config[bp]) {
|
|
2959
|
-
classes.push(`${bp}:${config[bp]}`);
|
|
2960
|
-
}
|
|
2961
|
-
});
|
|
2962
|
-
return classes.join(' ');
|
|
2963
|
-
}
|
|
2964
|
-
/**
|
|
2965
|
-
* Helper para overflow responsive
|
|
2966
|
-
* Maneja el caso común de scroll en mobile, auto en desktop
|
|
2628
|
+
* // Tabla simple con scroll horizontal
|
|
2629
|
+
* <pdm-table variant="default">
|
|
2630
|
+
* <thead><tr><th>Name</th><th>Email</th></tr></thead>
|
|
2631
|
+
* <tbody><tr><td>John</td><td>john@example.com</td></tr></tbody>
|
|
2632
|
+
* </pdm-table>
|
|
2967
2633
|
*
|
|
2968
2634
|
* @example
|
|
2969
|
-
*
|
|
2970
|
-
*
|
|
2635
|
+
* // Tabla interactiva con wrap en mobile
|
|
2636
|
+
* <pdm-table variant="interactive" responsiveStrategy="wrap">
|
|
2637
|
+
* ...
|
|
2638
|
+
* </pdm-table>
|
|
2971
2639
|
*/
|
|
2972
|
-
|
|
2973
|
-
|
|
2974
|
-
|
|
2975
|
-
|
|
2976
|
-
|
|
2977
|
-
|
|
2978
|
-
|
|
2979
|
-
|
|
2980
|
-
|
|
2981
|
-
|
|
2982
|
-
|
|
2983
|
-
|
|
2984
|
-
|
|
2985
|
-
|
|
2986
|
-
|
|
2987
|
-
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
|
|
2991
|
-
|
|
2992
|
-
|
|
2993
|
-
|
|
2994
|
-
|
|
2995
|
-
|
|
2996
|
-
|
|
2997
|
-
|
|
2998
|
-
* widthResponsive({ default: 'full', sm: 'auto', lg: '1/2' })
|
|
2999
|
-
* // Returns: 'w-full sm:w-auto lg:w-1/2'
|
|
3000
|
-
*/
|
|
3001
|
-
function widthResponsive(values) {
|
|
3002
|
-
return responsive(Object.entries(values).reduce((acc, [key, value]) => {
|
|
3003
|
-
acc[key] = `w-${value}`;
|
|
3004
|
-
return acc;
|
|
3005
|
-
}, {}));
|
|
3006
|
-
}
|
|
3007
|
-
/**
|
|
3008
|
-
* Clases comunes para containers responsive
|
|
3009
|
-
* Pensadas para wrappers que contienen contenido que puede desbordar
|
|
3010
|
-
*/
|
|
3011
|
-
const RESPONSIVE_CONTAINER = {
|
|
3012
|
-
// Container con scroll horizontal en mobile, contenido visible en desktop
|
|
3013
|
-
tableWrapper: 'relative w-full overflow-x-auto sm:overflow-x-visible',
|
|
3014
|
-
// Container con padding negativo en mobile para scroll edge-to-edge
|
|
3015
|
-
tableWrapperFullBleed: 'relative w-full -mx-4 px-4 overflow-x-auto sm:mx-0 sm:px-0 sm:overflow-x-visible',
|
|
3016
|
-
// Container con max-width responsive
|
|
3017
|
-
contentWrapper: 'w-full mx-auto px-4 sm:px-6 lg:px-8 max-w-screen-2xl',
|
|
3018
|
-
// Container para modals/dialogs
|
|
3019
|
-
modalWrapper: 'w-full max-w-lg mx-auto px-4 sm:px-0',
|
|
3020
|
-
// Container para forms
|
|
3021
|
-
formWrapper: 'w-full max-w-md mx-auto space-y-4'
|
|
3022
|
-
};
|
|
3023
|
-
/**
|
|
3024
|
-
* Clases comunes para display responsive
|
|
3025
|
-
*/
|
|
3026
|
-
const RESPONSIVE_DISPLAY = {
|
|
3027
|
-
// Ocultar en mobile, mostrar en desktop
|
|
3028
|
-
hideOnMobile: 'hidden sm:block',
|
|
3029
|
-
// Mostrar solo en mobile
|
|
3030
|
-
showOnMobile: 'block sm:hidden',
|
|
3031
|
-
// Stack en mobile, flex en desktop
|
|
3032
|
-
stackToFlex: 'flex flex-col sm:flex-row',
|
|
3033
|
-
// Stack en mobile, grid en desktop
|
|
3034
|
-
stackToGrid: 'grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3'
|
|
3035
|
-
};
|
|
3036
|
-
/**
|
|
3037
|
-
* Clases para table responsive strategies
|
|
3038
|
-
*/
|
|
3039
|
-
const TABLE_RESPONSIVE = {
|
|
3040
|
-
// Scroll horizontal (default, más simple)
|
|
3041
|
-
scroll: {
|
|
3042
|
-
wrapper: 'relative w-full overflow-x-auto',
|
|
3043
|
-
table: 'w-full min-w-full',
|
|
3044
|
-
cell: 'whitespace-nowrap'
|
|
3045
|
-
},
|
|
3046
|
-
// Permitir wrap del contenido
|
|
3047
|
-
wrap: {
|
|
3048
|
-
wrapper: 'relative w-full overflow-x-auto',
|
|
3049
|
-
table: 'w-full',
|
|
3050
|
-
cell: 'whitespace-normal break-words'
|
|
3051
|
-
},
|
|
3052
|
-
// Stack en mobile (cada fila se convierte en card)
|
|
3053
|
-
// Requiere lógica adicional en el componente
|
|
3054
|
-
stack: {
|
|
3055
|
-
wrapper: 'relative w-full',
|
|
3056
|
-
table: 'w-full',
|
|
3057
|
-
row: 'block sm:table-row border-b sm:border-b-0',
|
|
3058
|
-
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'
|
|
3059
|
-
},
|
|
3060
|
-
// Collapse: ocultar columnas menos importantes en mobile
|
|
3061
|
-
// Se usa con clases de visibility en las columnas específicas
|
|
3062
|
-
collapse: {
|
|
3063
|
-
wrapper: 'relative w-full overflow-x-auto',
|
|
3064
|
-
table: 'w-full',
|
|
3065
|
-
cell: 'whitespace-nowrap',
|
|
3066
|
-
// Estas clases se aplican a columnas opcionales
|
|
3067
|
-
optionalColumn: 'hidden md:table-cell'
|
|
3068
|
-
}
|
|
3069
|
-
};
|
|
3070
|
-
|
|
3071
|
-
/**
|
|
3072
|
-
* Componente base de tabla con soporte responsive
|
|
3073
|
-
*
|
|
3074
|
-
* SIMPLIFICADO: Ya no incluye drag & drop (usar pdm-draggable-table para eso)
|
|
3075
|
-
*
|
|
3076
|
-
* @example
|
|
3077
|
-
* // Tabla simple con scroll horizontal
|
|
3078
|
-
* <pdm-table variant="default">
|
|
3079
|
-
* <thead><tr><th>Name</th><th>Email</th></tr></thead>
|
|
3080
|
-
* <tbody><tr><td>John</td><td>john@example.com</td></tr></tbody>
|
|
3081
|
-
* </pdm-table>
|
|
3082
|
-
*
|
|
3083
|
-
* @example
|
|
3084
|
-
* // Tabla interactiva con wrap en mobile
|
|
3085
|
-
* <pdm-table variant="interactive" responsiveStrategy="wrap">
|
|
3086
|
-
* ...
|
|
3087
|
-
* </pdm-table>
|
|
3088
|
-
*/
|
|
3089
|
-
class PdmTableComponent {
|
|
3090
|
-
constructor() {
|
|
3091
|
-
/**
|
|
3092
|
-
* Variante visual de la tabla
|
|
3093
|
-
* - default: tabla básica sin estilos extra
|
|
3094
|
-
* - data: tabla con bordes y espaciado para data
|
|
3095
|
-
* - interactive: tabla con hover, sticky header y estilos interactivos
|
|
3096
|
-
*/
|
|
3097
|
-
this.variant = "default";
|
|
3098
|
-
/**
|
|
3099
|
-
* Estrategia responsive para la tabla
|
|
3100
|
-
* - scroll: scroll horizontal en mobile (default, más simple)
|
|
3101
|
-
* - wrap: permite que el contenido haga wrap
|
|
3102
|
-
* - stack: convierte filas en cards en mobile (requiere data-label en celdas)
|
|
3103
|
-
* - collapse: oculta columnas menos importantes en mobile
|
|
3104
|
-
*/
|
|
3105
|
-
this.responsiveStrategy = "scroll";
|
|
3106
|
-
/**
|
|
3107
|
-
* Clases CSS adicionales para el wrapper
|
|
3108
|
-
*/
|
|
3109
|
-
this.className = "";
|
|
3110
|
-
/**
|
|
3111
|
-
* Si es true, aplica padding negativo en mobile para scroll edge-to-edge
|
|
3112
|
-
* Útil cuando la tabla está dentro de un container con padding
|
|
3113
|
-
*/
|
|
3114
|
-
this.fullBleed = false;
|
|
2640
|
+
class PdmTableComponent {
|
|
2641
|
+
constructor() {
|
|
2642
|
+
/**
|
|
2643
|
+
* Variante visual de la tabla
|
|
2644
|
+
* - default: tabla básica sin estilos extra
|
|
2645
|
+
* - data: tabla con bordes y espaciado para data
|
|
2646
|
+
* - interactive: tabla con hover, sticky header y estilos interactivos
|
|
2647
|
+
*/
|
|
2648
|
+
this.variant = "default";
|
|
2649
|
+
/**
|
|
2650
|
+
* Estrategia responsive para la tabla
|
|
2651
|
+
* - scroll: scroll horizontal en mobile (default, más simple)
|
|
2652
|
+
* - wrap: permite que el contenido haga wrap
|
|
2653
|
+
* - stack: convierte filas en cards en mobile (requiere data-label en celdas)
|
|
2654
|
+
* - collapse: oculta columnas menos importantes en mobile
|
|
2655
|
+
*/
|
|
2656
|
+
this.responsiveStrategy = "scroll";
|
|
2657
|
+
/**
|
|
2658
|
+
* Clases CSS adicionales para el wrapper
|
|
2659
|
+
*/
|
|
2660
|
+
this.className = "";
|
|
2661
|
+
/**
|
|
2662
|
+
* Si es true, aplica padding negativo en mobile para scroll edge-to-edge
|
|
2663
|
+
* Útil cuando la tabla está dentro de un container con padding
|
|
2664
|
+
*/
|
|
2665
|
+
this.fullBleed = false;
|
|
3115
2666
|
}
|
|
3116
2667
|
get wrapperClasses() {
|
|
3117
2668
|
const baseClasses = ["relative", "w-full"];
|
|
@@ -3135,7 +2686,7 @@ class PdmTableComponent {
|
|
|
3135
2686
|
return [...baseClasses, ...variantClasses, ...cellClasses].filter(Boolean);
|
|
3136
2687
|
}
|
|
3137
2688
|
getResponsiveStrategyClasses() {
|
|
3138
|
-
const strategy = TABLE_RESPONSIVE[this.responsiveStrategy];
|
|
2689
|
+
const strategy = TABLE_RESPONSIVE$1[this.responsiveStrategy];
|
|
3139
2690
|
if (this.responsiveStrategy === "scroll") {
|
|
3140
2691
|
return ["overflow-x-auto"];
|
|
3141
2692
|
}
|
|
@@ -3838,7 +3389,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3838
3389
|
args: ['tableElement']
|
|
3839
3390
|
}] } });
|
|
3840
3391
|
|
|
3841
|
-
const COMPONENTS$
|
|
3392
|
+
const COMPONENTS$u = [
|
|
3842
3393
|
PdmDataTableComponent,
|
|
3843
3394
|
PdmDraggableTableComponent,
|
|
3844
3395
|
PdmTableComponent,
|
|
@@ -3856,101 +3407,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
3856
3407
|
type: NgModule,
|
|
3857
3408
|
args: [{
|
|
3858
3409
|
imports: [CommonModule],
|
|
3859
|
-
declarations: COMPONENTS$
|
|
3860
|
-
exports: COMPONENTS$
|
|
3410
|
+
declarations: COMPONENTS$u,
|
|
3411
|
+
exports: COMPONENTS$u
|
|
3861
3412
|
}]
|
|
3862
3413
|
}] });
|
|
3863
3414
|
|
|
3864
|
-
/**
|
|
3865
|
-
* Z-Index Scale - Sistema centralizado de z-index
|
|
3866
|
-
*
|
|
3867
|
-
* JERARQUÍA (de menor a mayor):
|
|
3868
|
-
* 1. base (z-0) - Elementos normales del DOM
|
|
3869
|
-
* 2. dropdown (z-10) - Selects, combobox, date-pickers
|
|
3870
|
-
* 3. sticky (z-20) - Headers, navigation bars
|
|
3871
|
-
* 4. drawerBackdrop (z-30) - Backdrop de drawers
|
|
3872
|
-
* 5. drawer (z-40) - Sidebar drawer, sheets laterales
|
|
3873
|
-
* 6. modalBackdrop (z-40) - Backdrop de modals ( mismo nivel que drawer)
|
|
3874
|
-
* 7. modal (z-50) - Dialogs, alert-dialogs
|
|
3875
|
-
* 8. popover (z-[70]) - Tooltips, dropdowns DENTRO de modals
|
|
3876
|
-
* 9. toast (z-[100]) - Notificaciones que deben estar sobre TODO
|
|
3877
|
-
*
|
|
3878
|
-
* REGLA CRÍTICA:
|
|
3879
|
-
* - Componentes overlay (select options, dropdown menu, tooltip) SIEMPRE z-[70] o mayor
|
|
3880
|
-
* - Esto permite que funcionen DENTRO de modals (z-50)
|
|
3881
|
-
* - Backdrop de modal debe ser z-40 para estar DEBAJO del contenido del modal (z-50)
|
|
3882
|
-
*/
|
|
3883
|
-
const Z_INDEX = {
|
|
3884
|
-
/**
|
|
3885
|
-
* Base - contenido normal del DOM
|
|
3886
|
-
*/
|
|
3887
|
-
base: "z-0",
|
|
3888
|
-
/**
|
|
3889
|
-
* Dropdown - Selects, combobox, date-pickers
|
|
3890
|
-
* Debe estar SOBRE contenido normal pero BAJO overlays
|
|
3891
|
-
*/
|
|
3892
|
-
dropdown: "z-10",
|
|
3893
|
-
/**
|
|
3894
|
-
* Sticky - Headers, navigation fija
|
|
3895
|
-
*/
|
|
3896
|
-
sticky: "z-20",
|
|
3897
|
-
/**
|
|
3898
|
-
* Drawer backdrop - Backdrop de sidebar drawer
|
|
3899
|
-
* Debe estar DEBAJO del drawer panel y DEBAJO de modals
|
|
3900
|
-
*/
|
|
3901
|
-
drawerBackdrop: "z-30",
|
|
3902
|
-
/**
|
|
3903
|
-
* Drawer - Sidebar drawer, sheets laterales
|
|
3904
|
-
* Debe estar SOBRE su backdrop pero BAJO modals
|
|
3905
|
-
*/
|
|
3906
|
-
drawer: "z-40",
|
|
3907
|
-
/**
|
|
3908
|
-
* Modal backdrop - Backdrop de dialogs
|
|
3909
|
-
* Mismo nivel que drawer backdrop (z-40)
|
|
3910
|
-
*/
|
|
3911
|
-
modalBackdrop: "z-40",
|
|
3912
|
-
/**
|
|
3913
|
-
* Modal - Dialogs, alert-dialogs
|
|
3914
|
-
* Debe estar SOBRE su backdrop
|
|
3915
|
-
*/
|
|
3916
|
-
modal: "z-50",
|
|
3917
|
-
/**
|
|
3918
|
-
* Popover - Tooltips, dropdowns, selects options DENTRO de modals
|
|
3919
|
-
* CRÍTICO: Debe ser MAYOR que modal (z-50) para aparecer sobre modals
|
|
3920
|
-
* USAR SIEMPRE mergeOverlayPanelClass() para asegurar este valor
|
|
3921
|
-
*/
|
|
3922
|
-
popover: "z-[70]",
|
|
3923
|
-
/**
|
|
3924
|
-
* Toast - Notificaciones globales
|
|
3925
|
-
* Debe estar sobre TODO
|
|
3926
|
-
*/
|
|
3927
|
-
toast: "z-[100]",
|
|
3928
|
-
};
|
|
3929
|
-
/**
|
|
3930
|
-
* Helper para debugging z-index issues
|
|
3931
|
-
*/
|
|
3932
|
-
function logZIndexStack(element) {
|
|
3933
|
-
if (typeof window === "undefined")
|
|
3934
|
-
return;
|
|
3935
|
-
let current = element;
|
|
3936
|
-
const stack = [];
|
|
3937
|
-
while (current && current !== document.body) {
|
|
3938
|
-
const computed = window.getComputedStyle(current);
|
|
3939
|
-
const zIndex = computed.zIndex;
|
|
3940
|
-
const position = computed.position;
|
|
3941
|
-
if (zIndex !== "auto") {
|
|
3942
|
-
stack.push({
|
|
3943
|
-
element: current.tagName +
|
|
3944
|
-
(current.className ? `.${current.className.split(" ")[0]}` : ""),
|
|
3945
|
-
zIndex,
|
|
3946
|
-
position,
|
|
3947
|
-
});
|
|
3948
|
-
}
|
|
3949
|
-
current = current.parentElement;
|
|
3950
|
-
}
|
|
3951
|
-
console.table(stack);
|
|
3952
|
-
}
|
|
3953
|
-
|
|
3954
3415
|
/**
|
|
3955
3416
|
* Modal/Dialog component con soporte responsive
|
|
3956
3417
|
*
|
|
@@ -4087,7 +3548,7 @@ class PdmDialogComponent {
|
|
|
4087
3548
|
buildPanelClasses(sizeClasses) {
|
|
4088
3549
|
const base = [
|
|
4089
3550
|
"relative",
|
|
4090
|
-
Z_INDEX.modal,
|
|
3551
|
+
Z_INDEX$1.modal,
|
|
4091
3552
|
"flex",
|
|
4092
3553
|
"flex-col",
|
|
4093
3554
|
"border border-solid",
|
|
@@ -4155,9 +3616,9 @@ class PdmDialogComponent {
|
|
|
4155
3616
|
// Container con backdrop z-40
|
|
4156
3617
|
// Mobile: fullscreen desde el bottom
|
|
4157
3618
|
// Desktop: centrado
|
|
4158
|
-
return responsive({
|
|
4159
|
-
default: `fixed inset-x-0 bottom-0 ${Z_INDEX.modalBackdrop} flex items-end justify-center`,
|
|
4160
|
-
sm: `fixed inset-0 ${Z_INDEX.modalBackdrop} flex items-center justify-center p-4`,
|
|
3619
|
+
return responsive$1({
|
|
3620
|
+
default: `fixed inset-x-0 bottom-0 ${Z_INDEX$1.modalBackdrop} flex items-end justify-center`,
|
|
3621
|
+
sm: `fixed inset-0 ${Z_INDEX$1.modalBackdrop} flex items-center justify-center p-4`,
|
|
4161
3622
|
});
|
|
4162
3623
|
}
|
|
4163
3624
|
}
|
|
@@ -4211,7 +3672,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4211
3672
|
args: ["document:keydown.escape"]
|
|
4212
3673
|
}] } });
|
|
4213
3674
|
|
|
4214
|
-
const COMPONENTS$
|
|
3675
|
+
const COMPONENTS$t = [
|
|
4215
3676
|
PdmDialogComponent,
|
|
4216
3677
|
];
|
|
4217
3678
|
class PdmDialogModule {
|
|
@@ -4223,8 +3684,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4223
3684
|
type: NgModule,
|
|
4224
3685
|
args: [{
|
|
4225
3686
|
imports: [CommonModule],
|
|
4226
|
-
declarations: COMPONENTS$
|
|
4227
|
-
exports: COMPONENTS$
|
|
3687
|
+
declarations: COMPONENTS$t,
|
|
3688
|
+
exports: COMPONENTS$t
|
|
4228
3689
|
}]
|
|
4229
3690
|
}] });
|
|
4230
3691
|
|
|
@@ -4326,7 +3787,7 @@ class PdmDrawerComponent {
|
|
|
4326
3787
|
this.secondaryAction.emit();
|
|
4327
3788
|
}
|
|
4328
3789
|
get containerClassName() {
|
|
4329
|
-
return `fixed inset-0 ${Z_INDEX.drawer} ${this.className}`;
|
|
3790
|
+
return `fixed inset-0 ${Z_INDEX$1.drawer} ${this.className}`;
|
|
4330
3791
|
}
|
|
4331
3792
|
get panelClassName() {
|
|
4332
3793
|
const base = [
|
|
@@ -4530,7 +3991,7 @@ class PdmSheetComponent {
|
|
|
4530
3991
|
}
|
|
4531
3992
|
}
|
|
4532
3993
|
PdmSheetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSheetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4533
|
-
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 });
|
|
3994
|
+
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 });
|
|
4534
3995
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSheetComponent, decorators: [{
|
|
4535
3996
|
type: Component,
|
|
4536
3997
|
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" }]
|
|
@@ -4553,18 +4014,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4553
4014
|
args: ['document:keydown.escape']
|
|
4554
4015
|
}] } });
|
|
4555
4016
|
|
|
4556
|
-
const COMPONENTS$
|
|
4017
|
+
const COMPONENTS$s = [PdmDrawerComponent, PdmSheetComponent];
|
|
4557
4018
|
class PdmDrawerModule {
|
|
4558
4019
|
}
|
|
4559
4020
|
PdmDrawerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4560
|
-
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] });
|
|
4561
|
-
PdmDrawerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, imports: [CommonModule, PdmIconModule] });
|
|
4021
|
+
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] });
|
|
4022
|
+
PdmDrawerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, imports: [CommonModule, PdmIconModule$1] });
|
|
4562
4023
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDrawerModule, decorators: [{
|
|
4563
4024
|
type: NgModule,
|
|
4564
4025
|
args: [{
|
|
4565
|
-
imports: [CommonModule, PdmIconModule],
|
|
4566
|
-
declarations: COMPONENTS$
|
|
4567
|
-
exports: COMPONENTS$
|
|
4026
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
4027
|
+
declarations: COMPONENTS$s,
|
|
4028
|
+
exports: COMPONENTS$s,
|
|
4568
4029
|
}]
|
|
4569
4030
|
}] });
|
|
4570
4031
|
|
|
@@ -4679,10 +4140,10 @@ class PdmDropdownMenuComponent {
|
|
|
4679
4140
|
return;
|
|
4680
4141
|
this.open = true;
|
|
4681
4142
|
this.cdr.markForCheck();
|
|
4682
|
-
const positionStrategy = createFlexiblePositionStrategy(this.overlay, triggerEl, 8);
|
|
4143
|
+
const positionStrategy = createFlexiblePositionStrategy$1(this.overlay, triggerEl, 8);
|
|
4683
4144
|
// Resolve panelClass: overlayOptions.panelClass wins; otherwise map panelClassName.
|
|
4684
4145
|
const resolvedPanelClass = this.overlayOptions?.panelClass
|
|
4685
|
-
?? (this.panelClassName ? [Z_INDEX.popover, this.panelClassName] : [Z_INDEX.popover]);
|
|
4146
|
+
?? (this.panelClassName ? [Z_INDEX$1.popover, this.panelClassName] : [Z_INDEX$1.popover]);
|
|
4686
4147
|
this.overlayRef = this.overlay.create({
|
|
4687
4148
|
positionStrategy,
|
|
4688
4149
|
scrollStrategy: this.overlay.scrollStrategies.reposition(),
|
|
@@ -4753,7 +4214,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4753
4214
|
args: ['document:keydown.escape']
|
|
4754
4215
|
}] } });
|
|
4755
4216
|
|
|
4756
|
-
const COMPONENTS$
|
|
4217
|
+
const COMPONENTS$r = [
|
|
4757
4218
|
PdmDropdownMenuComponent,
|
|
4758
4219
|
];
|
|
4759
4220
|
class PdmDropdownMenuModule {
|
|
@@ -4765,8 +4226,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4765
4226
|
type: NgModule,
|
|
4766
4227
|
args: [{
|
|
4767
4228
|
imports: [CommonModule, OverlayModule],
|
|
4768
|
-
declarations: COMPONENTS$
|
|
4769
|
-
exports: COMPONENTS$
|
|
4229
|
+
declarations: COMPONENTS$r,
|
|
4230
|
+
exports: COMPONENTS$r
|
|
4770
4231
|
}]
|
|
4771
4232
|
}] });
|
|
4772
4233
|
|
|
@@ -4795,7 +4256,7 @@ class PdmEmptyComponent {
|
|
|
4795
4256
|
}
|
|
4796
4257
|
}
|
|
4797
4258
|
PdmEmptyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4798
|
-
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 });
|
|
4259
|
+
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 });
|
|
4799
4260
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyComponent, decorators: [{
|
|
4800
4261
|
type: Component,
|
|
4801
4262
|
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" }]
|
|
@@ -4823,18 +4284,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4823
4284
|
type: Output
|
|
4824
4285
|
}] } });
|
|
4825
4286
|
|
|
4826
|
-
const COMPONENTS$
|
|
4287
|
+
const COMPONENTS$q = [PdmEmptyComponent];
|
|
4827
4288
|
class PdmEmptyModule {
|
|
4828
4289
|
}
|
|
4829
4290
|
PdmEmptyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4830
|
-
PdmEmptyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, declarations: [PdmEmptyComponent], imports: [CommonModule, PdmButtonModule, PdmIconModule], exports: [PdmEmptyComponent] });
|
|
4831
|
-
PdmEmptyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, imports: [CommonModule, PdmButtonModule, PdmIconModule] });
|
|
4291
|
+
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] });
|
|
4292
|
+
PdmEmptyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, imports: [CommonModule, PdmButtonModule$1, PdmIconModule$1] });
|
|
4832
4293
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmEmptyModule, decorators: [{
|
|
4833
4294
|
type: NgModule,
|
|
4834
4295
|
args: [{
|
|
4835
|
-
imports: [CommonModule, PdmButtonModule, PdmIconModule],
|
|
4836
|
-
declarations: COMPONENTS$
|
|
4837
|
-
exports: COMPONENTS$
|
|
4296
|
+
imports: [CommonModule, PdmButtonModule$1, PdmIconModule$1],
|
|
4297
|
+
declarations: COMPONENTS$q,
|
|
4298
|
+
exports: COMPONENTS$q,
|
|
4838
4299
|
}]
|
|
4839
4300
|
}] });
|
|
4840
4301
|
|
|
@@ -4899,7 +4360,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4899
4360
|
type: Input
|
|
4900
4361
|
}] } });
|
|
4901
4362
|
|
|
4902
|
-
const COMPONENTS$
|
|
4363
|
+
const COMPONENTS$p = [
|
|
4903
4364
|
PdmFieldComponent,
|
|
4904
4365
|
];
|
|
4905
4366
|
class PdmFieldModule {
|
|
@@ -4911,8 +4372,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
4911
4372
|
type: NgModule,
|
|
4912
4373
|
args: [{
|
|
4913
4374
|
imports: [CommonModule],
|
|
4914
|
-
declarations: COMPONENTS$
|
|
4915
|
-
exports: COMPONENTS$
|
|
4375
|
+
declarations: COMPONENTS$p,
|
|
4376
|
+
exports: COMPONENTS$p
|
|
4916
4377
|
}]
|
|
4917
4378
|
}] });
|
|
4918
4379
|
|
|
@@ -4987,7 +4448,7 @@ class PdmHoverCardComponent {
|
|
|
4987
4448
|
.withPositions(this.getPositionConfigs())
|
|
4988
4449
|
.withFlexibleDimensions(false)
|
|
4989
4450
|
.withPush(true);
|
|
4990
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
4451
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
4991
4452
|
this.overlayRef = this.overlay.create({
|
|
4992
4453
|
positionStrategy,
|
|
4993
4454
|
panelClass,
|
|
@@ -5115,7 +4576,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5115
4576
|
args: ["focusout"]
|
|
5116
4577
|
}] } });
|
|
5117
4578
|
|
|
5118
|
-
const COMPONENTS$
|
|
4579
|
+
const COMPONENTS$o = [
|
|
5119
4580
|
PdmHoverCardComponent,
|
|
5120
4581
|
];
|
|
5121
4582
|
class PdmHoverCardModule {
|
|
@@ -5127,57 +4588,213 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5127
4588
|
type: NgModule,
|
|
5128
4589
|
args: [{
|
|
5129
4590
|
imports: [CommonModule, OverlayModule],
|
|
5130
|
-
declarations: COMPONENTS$
|
|
5131
|
-
exports: COMPONENTS$
|
|
4591
|
+
declarations: COMPONENTS$o,
|
|
4592
|
+
exports: COMPONENTS$o
|
|
5132
4593
|
}]
|
|
5133
4594
|
}] });
|
|
5134
4595
|
|
|
5135
|
-
|
|
5136
|
-
|
|
5137
|
-
|
|
5138
|
-
this.
|
|
5139
|
-
this.
|
|
5140
|
-
this.
|
|
5141
|
-
this.
|
|
5142
|
-
this.
|
|
5143
|
-
this.
|
|
5144
|
-
this.
|
|
5145
|
-
this.
|
|
5146
|
-
this.
|
|
5147
|
-
this.
|
|
5148
|
-
this.
|
|
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
|
-
|
|
5176
|
-
|
|
5177
|
-
}
|
|
5178
|
-
|
|
5179
|
-
|
|
5180
|
-
|
|
4596
|
+
const FALLBACK_NODE = [['circle', { cx: '12', cy: '12', r: '9' }]];
|
|
4597
|
+
class PdmIconComponent {
|
|
4598
|
+
constructor(sanitizer) {
|
|
4599
|
+
this.sanitizer = sanitizer;
|
|
4600
|
+
this.name = 'check';
|
|
4601
|
+
this.library = 'lucide';
|
|
4602
|
+
this.assetUrl = null;
|
|
4603
|
+
this.size = 16;
|
|
4604
|
+
this.strokeWidth = 1.5;
|
|
4605
|
+
this.className = '';
|
|
4606
|
+
this.ariaLabel = null;
|
|
4607
|
+
this.decorative = false;
|
|
4608
|
+
this.lucideIndex = this.buildLucideIndex();
|
|
4609
|
+
this.aliasMapByLibrary = {
|
|
4610
|
+
lucide: {
|
|
4611
|
+
'check-circle': 'circle-check',
|
|
4612
|
+
'alert-circle': 'circle-alert',
|
|
4613
|
+
info: 'circle-info',
|
|
4614
|
+
'sort-asc': 'arrow-up-a-z',
|
|
4615
|
+
'sort-desc': 'arrow-down-z-a'
|
|
4616
|
+
},
|
|
4617
|
+
tabler: {
|
|
4618
|
+
'alert-triangle': 'triangle-alert',
|
|
4619
|
+
'user-circle': 'circle-user',
|
|
4620
|
+
'settings-2': 'settings-2',
|
|
4621
|
+
'external-link': 'external-link'
|
|
4622
|
+
},
|
|
4623
|
+
hugeicons: {
|
|
4624
|
+
'alert-02': 'circle-alert',
|
|
4625
|
+
'user-circle': 'circle-user',
|
|
4626
|
+
'search-01': 'search',
|
|
4627
|
+
'settings-01': 'settings',
|
|
4628
|
+
'arrow-right-01': 'chevron-right',
|
|
4629
|
+
'arrow-down-01': 'chevron-down'
|
|
4630
|
+
},
|
|
4631
|
+
phosphor: {
|
|
4632
|
+
'warning-circle': 'circle-alert',
|
|
4633
|
+
'caret-down': 'chevron-down',
|
|
4634
|
+
'caret-right': 'chevron-right',
|
|
4635
|
+
'user-circle': 'circle-user',
|
|
4636
|
+
gear: 'settings',
|
|
4637
|
+
'arrow-square-out': 'external-link'
|
|
4638
|
+
},
|
|
4639
|
+
remix: {
|
|
4640
|
+
'alert-line': 'circle-alert',
|
|
4641
|
+
'arrow-right-line': 'chevron-right',
|
|
4642
|
+
'arrow-down-s-line': 'chevron-down',
|
|
4643
|
+
'external-link-line': 'external-link',
|
|
4644
|
+
'user-line': 'user',
|
|
4645
|
+
'settings-3-line': 'settings'
|
|
4646
|
+
}
|
|
4647
|
+
};
|
|
4648
|
+
}
|
|
4649
|
+
get resolvedStrokeWidth() {
|
|
4650
|
+
const value = Number(this.strokeWidth);
|
|
4651
|
+
if (Number.isFinite(value) && value > 0) {
|
|
4652
|
+
return value;
|
|
4653
|
+
}
|
|
4654
|
+
if (this.library === 'phosphor') {
|
|
4655
|
+
return 1.6;
|
|
4656
|
+
}
|
|
4657
|
+
if (this.library === 'tabler') {
|
|
4658
|
+
return 1.8;
|
|
4659
|
+
}
|
|
4660
|
+
return 1.5;
|
|
4661
|
+
}
|
|
4662
|
+
get resolvedSize() {
|
|
4663
|
+
const value = Number(this.size);
|
|
4664
|
+
return Number.isFinite(value) && value > 0 ? value : 16;
|
|
4665
|
+
}
|
|
4666
|
+
get iconKey() {
|
|
4667
|
+
const raw = `${this.name || ''}`.trim();
|
|
4668
|
+
if (!raw) {
|
|
4669
|
+
return 'circle';
|
|
4670
|
+
}
|
|
4671
|
+
const trimmed = raw.replace(/^(lucide|tabler|hugeicons|phosphor|remix)\//, '');
|
|
4672
|
+
const aliases = this.aliasMapByLibrary[this.library] ?? {};
|
|
4673
|
+
return aliases[trimmed] ?? trimmed;
|
|
4674
|
+
}
|
|
4675
|
+
get svgMarkup() {
|
|
4676
|
+
const node = this.resolveIconNode(this.iconKey) ?? FALLBACK_NODE;
|
|
4677
|
+
const strokeWidth = this.escapeAttr(this.resolvedStrokeWidth);
|
|
4678
|
+
const size = this.escapeAttr(this.resolvedSize);
|
|
4679
|
+
const body = node
|
|
4680
|
+
.map(([tag, attrs]) => {
|
|
4681
|
+
const serializedAttrs = Object.entries(attrs)
|
|
4682
|
+
.map(([key, value]) => `${key}="${this.escapeAttr(value)}"`)
|
|
4683
|
+
.join(' ');
|
|
4684
|
+
return serializedAttrs ? `<${tag} ${serializedAttrs}></${tag}>` : `<${tag}></${tag}>`;
|
|
4685
|
+
})
|
|
4686
|
+
.join('');
|
|
4687
|
+
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>`;
|
|
4688
|
+
return this.sanitizer.bypassSecurityTrustHtml(svg);
|
|
4689
|
+
}
|
|
4690
|
+
resolveIconNode(iconName) {
|
|
4691
|
+
const normalized = this.normalizeIconName(iconName);
|
|
4692
|
+
return this.lucideIndex.get(normalized) ?? null;
|
|
4693
|
+
}
|
|
4694
|
+
normalizeIconName(name) {
|
|
4695
|
+
return `${name || ''}`.toLowerCase().replace(/[^a-z0-9]/g, '');
|
|
4696
|
+
}
|
|
4697
|
+
buildLucideIndex() {
|
|
4698
|
+
const map = new Map();
|
|
4699
|
+
Object.entries(icons).forEach(([iconName, iconNode]) => {
|
|
4700
|
+
map.set(this.normalizeIconName(iconName), iconNode);
|
|
4701
|
+
});
|
|
4702
|
+
return map;
|
|
4703
|
+
}
|
|
4704
|
+
escapeAttr(value) {
|
|
4705
|
+
return `${value ?? ''}`
|
|
4706
|
+
.replace(/&/g, '&')
|
|
4707
|
+
.replace(/"/g, '"')
|
|
4708
|
+
.replace(/</g, '<')
|
|
4709
|
+
.replace(/>/g, '>');
|
|
4710
|
+
}
|
|
4711
|
+
}
|
|
4712
|
+
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 });
|
|
4713
|
+
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 });
|
|
4714
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconComponent, decorators: [{
|
|
4715
|
+
type: Component,
|
|
4716
|
+
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"] }]
|
|
4717
|
+
}], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; }, propDecorators: { name: [{
|
|
4718
|
+
type: Input
|
|
4719
|
+
}], library: [{
|
|
4720
|
+
type: Input
|
|
4721
|
+
}], assetUrl: [{
|
|
4722
|
+
type: Input
|
|
4723
|
+
}], size: [{
|
|
4724
|
+
type: Input
|
|
4725
|
+
}], strokeWidth: [{
|
|
4726
|
+
type: Input
|
|
4727
|
+
}], className: [{
|
|
4728
|
+
type: Input
|
|
4729
|
+
}], ariaLabel: [{
|
|
4730
|
+
type: Input
|
|
4731
|
+
}], decorative: [{
|
|
4732
|
+
type: Input
|
|
4733
|
+
}] } });
|
|
4734
|
+
|
|
4735
|
+
const COMPONENTS$n = [
|
|
4736
|
+
PdmIconComponent,
|
|
4737
|
+
];
|
|
4738
|
+
class PdmIconModule {
|
|
4739
|
+
}
|
|
4740
|
+
PdmIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4741
|
+
PdmIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, declarations: [PdmIconComponent], imports: [CommonModule], exports: [PdmIconComponent] });
|
|
4742
|
+
PdmIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, imports: [CommonModule] });
|
|
4743
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmIconModule, decorators: [{
|
|
4744
|
+
type: NgModule,
|
|
4745
|
+
args: [{
|
|
4746
|
+
imports: [CommonModule],
|
|
4747
|
+
declarations: COMPONENTS$n,
|
|
4748
|
+
exports: COMPONENTS$n
|
|
4749
|
+
}]
|
|
4750
|
+
}] });
|
|
4751
|
+
|
|
4752
|
+
class PdmInputComponent {
|
|
4753
|
+
constructor() {
|
|
4754
|
+
this.id = "";
|
|
4755
|
+
this.type = "text";
|
|
4756
|
+
this.value = "";
|
|
4757
|
+
this.placeholder = "";
|
|
4758
|
+
this.disabled = false;
|
|
4759
|
+
this.readonly = false;
|
|
4760
|
+
this.required = false;
|
|
4761
|
+
this.invalid = false;
|
|
4762
|
+
this.size = "regular";
|
|
4763
|
+
this.roundness = "default";
|
|
4764
|
+
this.className = "";
|
|
4765
|
+
this.inputClassName = "";
|
|
4766
|
+
this.label = "";
|
|
4767
|
+
this.helperText = "";
|
|
4768
|
+
this.errorText = "";
|
|
4769
|
+
this.valueChange = new EventEmitter();
|
|
4770
|
+
this.blurred = new EventEmitter();
|
|
4771
|
+
}
|
|
4772
|
+
onInput(event) {
|
|
4773
|
+
this.valueChange.emit(event.target.value);
|
|
4774
|
+
}
|
|
4775
|
+
onBlur(event) {
|
|
4776
|
+
this.blurred.emit(event);
|
|
4777
|
+
}
|
|
4778
|
+
}
|
|
4779
|
+
PdmInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4780
|
+
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 });
|
|
4781
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputComponent, decorators: [{
|
|
4782
|
+
type: Component,
|
|
4783
|
+
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"] }]
|
|
4784
|
+
}], propDecorators: { id: [{
|
|
4785
|
+
type: Input
|
|
4786
|
+
}], type: [{
|
|
4787
|
+
type: Input
|
|
4788
|
+
}], value: [{
|
|
4789
|
+
type: Input
|
|
4790
|
+
}], placeholder: [{
|
|
4791
|
+
type: Input
|
|
4792
|
+
}], disabled: [{
|
|
4793
|
+
type: Input
|
|
4794
|
+
}], readonly: [{
|
|
4795
|
+
type: Input
|
|
4796
|
+
}], required: [{
|
|
4797
|
+
type: Input
|
|
5181
4798
|
}], invalid: [{
|
|
5182
4799
|
type: Input
|
|
5183
4800
|
}], size: [{
|
|
@@ -5225,7 +4842,7 @@ class PdmInputGroupComponent {
|
|
|
5225
4842
|
}
|
|
5226
4843
|
}
|
|
5227
4844
|
PdmInputGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5228
|
-
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 });
|
|
4845
|
+
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 });
|
|
5229
4846
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputGroupComponent, decorators: [{
|
|
5230
4847
|
type: Component,
|
|
5231
4848
|
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 +5148,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5531
5148
|
type: Output
|
|
5532
5149
|
}] } });
|
|
5533
5150
|
|
|
5534
|
-
const COMPONENTS$
|
|
5151
|
+
const COMPONENTS$m = [
|
|
5535
5152
|
PdmInputComponent,
|
|
5536
5153
|
PdmInputGroupComponent,
|
|
5537
5154
|
PdmInputOtpComponent,
|
|
@@ -5545,18 +5162,18 @@ PdmInputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
|
|
|
5545
5162
|
PdmInputGroupComponent,
|
|
5546
5163
|
PdmInputOtpComponent,
|
|
5547
5164
|
PdmInputPasswordComponent,
|
|
5548
|
-
PdmTextareaComponent], imports: [CommonModule, PdmIconModule], exports: [PdmInputComponent,
|
|
5165
|
+
PdmTextareaComponent], imports: [CommonModule, PdmIconModule$1], exports: [PdmInputComponent,
|
|
5549
5166
|
PdmInputGroupComponent,
|
|
5550
5167
|
PdmInputOtpComponent,
|
|
5551
5168
|
PdmInputPasswordComponent,
|
|
5552
5169
|
PdmTextareaComponent] });
|
|
5553
|
-
PdmInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputModule, imports: [CommonModule, PdmIconModule] });
|
|
5170
|
+
PdmInputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputModule, imports: [CommonModule, PdmIconModule$1] });
|
|
5554
5171
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmInputModule, decorators: [{
|
|
5555
5172
|
type: NgModule,
|
|
5556
5173
|
args: [{
|
|
5557
|
-
imports: [CommonModule, PdmIconModule],
|
|
5558
|
-
declarations: COMPONENTS$
|
|
5559
|
-
exports: COMPONENTS$
|
|
5174
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
5175
|
+
declarations: COMPONENTS$m,
|
|
5176
|
+
exports: COMPONENTS$m,
|
|
5560
5177
|
}]
|
|
5561
5178
|
}] });
|
|
5562
5179
|
|
|
@@ -5580,7 +5197,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5580
5197
|
type: Input
|
|
5581
5198
|
}] } });
|
|
5582
5199
|
|
|
5583
|
-
const COMPONENTS$
|
|
5200
|
+
const COMPONENTS$l = [
|
|
5584
5201
|
PdmItemComponent,
|
|
5585
5202
|
];
|
|
5586
5203
|
class PdmItemModule {
|
|
@@ -5592,8 +5209,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5592
5209
|
type: NgModule,
|
|
5593
5210
|
args: [{
|
|
5594
5211
|
imports: [CommonModule],
|
|
5595
|
-
declarations: COMPONENTS$
|
|
5596
|
-
exports: COMPONENTS$
|
|
5212
|
+
declarations: COMPONENTS$l,
|
|
5213
|
+
exports: COMPONENTS$l
|
|
5597
5214
|
}]
|
|
5598
5215
|
}] });
|
|
5599
5216
|
|
|
@@ -5611,7 +5228,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5611
5228
|
type: Input
|
|
5612
5229
|
}] } });
|
|
5613
5230
|
|
|
5614
|
-
const COMPONENTS$
|
|
5231
|
+
const COMPONENTS$k = [
|
|
5615
5232
|
PdmKbdComponent,
|
|
5616
5233
|
];
|
|
5617
5234
|
class PdmKbdModule {
|
|
@@ -5620,6 +5237,43 @@ PdmKbdModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "1
|
|
|
5620
5237
|
PdmKbdModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, declarations: [PdmKbdComponent], imports: [CommonModule], exports: [PdmKbdComponent] });
|
|
5621
5238
|
PdmKbdModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, imports: [CommonModule] });
|
|
5622
5239
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmKbdModule, decorators: [{
|
|
5240
|
+
type: NgModule,
|
|
5241
|
+
args: [{
|
|
5242
|
+
imports: [CommonModule],
|
|
5243
|
+
declarations: COMPONENTS$k,
|
|
5244
|
+
exports: COMPONENTS$k
|
|
5245
|
+
}]
|
|
5246
|
+
}] });
|
|
5247
|
+
|
|
5248
|
+
class PdmLabelComponent {
|
|
5249
|
+
constructor() {
|
|
5250
|
+
this.forId = '';
|
|
5251
|
+
this.required = false;
|
|
5252
|
+
this.className = '';
|
|
5253
|
+
}
|
|
5254
|
+
}
|
|
5255
|
+
PdmLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5256
|
+
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 });
|
|
5257
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelComponent, decorators: [{
|
|
5258
|
+
type: Component,
|
|
5259
|
+
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" }]
|
|
5260
|
+
}], propDecorators: { forId: [{
|
|
5261
|
+
type: Input
|
|
5262
|
+
}], required: [{
|
|
5263
|
+
type: Input
|
|
5264
|
+
}], className: [{
|
|
5265
|
+
type: Input
|
|
5266
|
+
}] } });
|
|
5267
|
+
|
|
5268
|
+
const COMPONENTS$j = [
|
|
5269
|
+
PdmLabelComponent,
|
|
5270
|
+
];
|
|
5271
|
+
class PdmLabelModule {
|
|
5272
|
+
}
|
|
5273
|
+
PdmLabelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5274
|
+
PdmLabelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, declarations: [PdmLabelComponent], imports: [CommonModule], exports: [PdmLabelComponent] });
|
|
5275
|
+
PdmLabelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, imports: [CommonModule] });
|
|
5276
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmLabelModule, decorators: [{
|
|
5623
5277
|
type: NgModule,
|
|
5624
5278
|
args: [{
|
|
5625
5279
|
imports: [CommonModule],
|
|
@@ -5696,7 +5350,7 @@ class PdmMenubarComponent {
|
|
|
5696
5350
|
.withPositions(this.getPositionConfigs())
|
|
5697
5351
|
.withFlexibleDimensions(false)
|
|
5698
5352
|
.withPush(true);
|
|
5699
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
5353
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
5700
5354
|
this.overlayRef = this.overlay.create({
|
|
5701
5355
|
positionStrategy,
|
|
5702
5356
|
panelClass,
|
|
@@ -5799,7 +5453,7 @@ class PdmNativeSelectComponent {
|
|
|
5799
5453
|
}
|
|
5800
5454
|
}
|
|
5801
5455
|
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 });
|
|
5456
|
+
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
5457
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectComponent, decorators: [{
|
|
5804
5458
|
type: Component,
|
|
5805
5459
|
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 +5479,12 @@ const COMPONENTS$h = [PdmNativeSelectComponent];
|
|
|
5825
5479
|
class PdmNativeSelectModule {
|
|
5826
5480
|
}
|
|
5827
5481
|
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] });
|
|
5482
|
+
PdmNativeSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, declarations: [PdmNativeSelectComponent], imports: [CommonModule, PdmIconModule$1], exports: [PdmNativeSelectComponent] });
|
|
5483
|
+
PdmNativeSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, imports: [CommonModule, PdmIconModule$1] });
|
|
5830
5484
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmNativeSelectModule, decorators: [{
|
|
5831
5485
|
type: NgModule,
|
|
5832
5486
|
args: [{
|
|
5833
|
-
imports: [CommonModule, PdmIconModule],
|
|
5487
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
5834
5488
|
declarations: COMPONENTS$h,
|
|
5835
5489
|
exports: COMPONENTS$h,
|
|
5836
5490
|
}]
|
|
@@ -5892,229 +5546,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
5892
5546
|
}]
|
|
5893
5547
|
}] });
|
|
5894
5548
|
|
|
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
|
-
// If no explicit label, harvest text from the projected node.
|
|
5924
|
-
if (!this.label) {
|
|
5925
|
-
this.label = (this.el.nativeElement.textContent ?? '').trim();
|
|
5926
|
-
}
|
|
5927
|
-
}
|
|
5928
|
-
/** Resolved label string — always non-empty after ngAfterContentInit. */
|
|
5929
|
-
get resolvedLabel() {
|
|
5930
|
-
return this.label || this.value;
|
|
5931
|
-
}
|
|
5932
|
-
}
|
|
5933
|
-
PdmSelectOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectOptionDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
5934
|
-
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 });
|
|
5935
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectOptionDirective, decorators: [{
|
|
5936
|
-
type: Directive,
|
|
5937
|
-
args: [{
|
|
5938
|
-
selector: 'pdm-select-option'
|
|
5939
|
-
}]
|
|
5940
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { value: [{
|
|
5941
|
-
type: Input
|
|
5942
|
-
}], disabled: [{
|
|
5943
|
-
type: Input
|
|
5944
|
-
}], label: [{
|
|
5945
|
-
type: Input
|
|
5946
|
-
}] } });
|
|
5947
|
-
|
|
5948
|
-
class PdmSelectComponent {
|
|
5949
|
-
constructor(cdr, overlay, viewContainerRef) {
|
|
5950
|
-
this.cdr = cdr;
|
|
5951
|
-
this.overlay = overlay;
|
|
5952
|
-
this.viewContainerRef = viewContainerRef;
|
|
5953
|
-
this.id = "";
|
|
5954
|
-
this.value = "";
|
|
5955
|
-
this.options = [];
|
|
5956
|
-
this.disabled = false;
|
|
5957
|
-
this.invalid = false;
|
|
5958
|
-
this.className = "";
|
|
5959
|
-
this.placeholder = "Select an option";
|
|
5960
|
-
this.open = false;
|
|
5961
|
-
this.valueChange = new EventEmitter();
|
|
5962
|
-
this.overlayRef = null;
|
|
5963
|
-
this.backdropSub = null;
|
|
5964
|
-
}
|
|
5965
|
-
ngAfterContentInit() {
|
|
5966
|
-
// Re-render when projected options change (e.g. *ngFor on pdm-select-option).
|
|
5967
|
-
this.projectedOptions.changes.subscribe(() => this.cdr.markForCheck());
|
|
5968
|
-
}
|
|
5969
|
-
ngOnDestroy() {
|
|
5970
|
-
this.destroyOverlay();
|
|
5971
|
-
}
|
|
5972
|
-
/**
|
|
5973
|
-
* Returns the effective list of options.
|
|
5974
|
-
* Projected `<pdm-select-option>` children take priority over the `[options]` input.
|
|
5975
|
-
* Falls back to `[options]` when no children are projected.
|
|
5976
|
-
*/
|
|
5977
|
-
get resolvedOptions() {
|
|
5978
|
-
if (this.projectedOptions && this.projectedOptions.length > 0) {
|
|
5979
|
-
return this.projectedOptions.map((d) => ({
|
|
5980
|
-
label: d.resolvedLabel,
|
|
5981
|
-
value: d.value,
|
|
5982
|
-
disabled: d.disabled,
|
|
5983
|
-
}));
|
|
5984
|
-
}
|
|
5985
|
-
return this.options;
|
|
5986
|
-
}
|
|
5987
|
-
get selectedOption() {
|
|
5988
|
-
return this.resolvedOptions.find((option) => option.value === this.value);
|
|
5989
|
-
}
|
|
5990
|
-
get selectedLabel() {
|
|
5991
|
-
return this.selectedOption?.label || this.placeholder;
|
|
5992
|
-
}
|
|
5993
|
-
toggle() {
|
|
5994
|
-
if (this.disabled)
|
|
5995
|
-
return;
|
|
5996
|
-
if (this.open) {
|
|
5997
|
-
this.closePanel();
|
|
5998
|
-
}
|
|
5999
|
-
else {
|
|
6000
|
-
this.openPanel();
|
|
6001
|
-
}
|
|
6002
|
-
}
|
|
6003
|
-
onChange(event) {
|
|
6004
|
-
this.valueChange.emit(event.target.value);
|
|
6005
|
-
}
|
|
6006
|
-
selectOption(option) {
|
|
6007
|
-
if (option.disabled)
|
|
6008
|
-
return;
|
|
6009
|
-
this.valueChange.emit(option.value);
|
|
6010
|
-
this.closePanel();
|
|
6011
|
-
}
|
|
6012
|
-
onEscape() {
|
|
6013
|
-
if (this.open) {
|
|
6014
|
-
this.closePanel();
|
|
6015
|
-
}
|
|
6016
|
-
}
|
|
6017
|
-
openPanel() {
|
|
6018
|
-
if (this.overlayRef)
|
|
6019
|
-
return;
|
|
6020
|
-
const triggerEl = this.triggerRef?.nativeElement;
|
|
6021
|
-
if (!triggerEl)
|
|
6022
|
-
return;
|
|
6023
|
-
this.open = true;
|
|
6024
|
-
this.cdr.markForCheck();
|
|
6025
|
-
const positionStrategy = createFlexiblePositionStrategy(this.overlay, triggerEl, 4);
|
|
6026
|
-
this.overlayRef = this.overlay.create({
|
|
6027
|
-
// CRÍTICO: z-[70] para aparecer SOBRE modals (z-[60])
|
|
6028
|
-
// panelClass se aplica al cdk-overlay-pane wrapper
|
|
6029
|
-
panelClass: [Z_INDEX.popover],
|
|
6030
|
-
positionStrategy,
|
|
6031
|
-
scrollStrategy: this.overlay.scrollStrategies.reposition(),
|
|
6032
|
-
width: triggerEl.offsetWidth,
|
|
6033
|
-
// Consumer overrides are spread last — they win over every default above.
|
|
6034
|
-
...this.overlayOptions,
|
|
6035
|
-
});
|
|
6036
|
-
const portal = new TemplatePortal(this.panelTemplateRef, this.viewContainerRef);
|
|
6037
|
-
this.overlayRef.attach(portal);
|
|
6038
|
-
this.backdropSub = this.overlayRef
|
|
6039
|
-
.outsidePointerEvents()
|
|
6040
|
-
.subscribe((event) => {
|
|
6041
|
-
const target = event.target;
|
|
6042
|
-
if (!triggerEl.contains(target)) {
|
|
6043
|
-
this.closePanel();
|
|
6044
|
-
}
|
|
6045
|
-
});
|
|
6046
|
-
this.cdr.markForCheck();
|
|
6047
|
-
}
|
|
6048
|
-
closePanel() {
|
|
6049
|
-
if (!this.overlayRef)
|
|
6050
|
-
return;
|
|
6051
|
-
this.open = false;
|
|
6052
|
-
this.destroyOverlay();
|
|
6053
|
-
this.cdr.markForCheck();
|
|
6054
|
-
}
|
|
6055
|
-
destroyOverlay() {
|
|
6056
|
-
if (this.backdropSub) {
|
|
6057
|
-
this.backdropSub.unsubscribe();
|
|
6058
|
-
this.backdropSub = null;
|
|
6059
|
-
}
|
|
6060
|
-
if (this.overlayRef) {
|
|
6061
|
-
this.overlayRef.dispose();
|
|
6062
|
-
this.overlayRef = null;
|
|
6063
|
-
}
|
|
6064
|
-
}
|
|
6065
|
-
}
|
|
6066
|
-
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 });
|
|
6067
|
-
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 });
|
|
6068
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectComponent, decorators: [{
|
|
6069
|
-
type: Component,
|
|
6070
|
-
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"] }]
|
|
6071
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.Overlay }, { type: i0.ViewContainerRef }]; }, propDecorators: { id: [{
|
|
6072
|
-
type: Input
|
|
6073
|
-
}], value: [{
|
|
6074
|
-
type: Input
|
|
6075
|
-
}], options: [{
|
|
6076
|
-
type: Input
|
|
6077
|
-
}], disabled: [{
|
|
6078
|
-
type: Input
|
|
6079
|
-
}], invalid: [{
|
|
6080
|
-
type: Input
|
|
6081
|
-
}], className: [{
|
|
6082
|
-
type: Input
|
|
6083
|
-
}], placeholder: [{
|
|
6084
|
-
type: Input
|
|
6085
|
-
}], overlayOptions: [{
|
|
6086
|
-
type: Input
|
|
6087
|
-
}], valueChange: [{
|
|
6088
|
-
type: Output
|
|
6089
|
-
}], triggerRef: [{
|
|
6090
|
-
type: ViewChild,
|
|
6091
|
-
args: ["triggerEl"]
|
|
6092
|
-
}], panelTemplateRef: [{
|
|
6093
|
-
type: ViewChild,
|
|
6094
|
-
args: ["panelTemplate"]
|
|
6095
|
-
}], projectedOptions: [{
|
|
6096
|
-
type: ContentChildren,
|
|
6097
|
-
args: [PdmSelectOptionDirective]
|
|
6098
|
-
}], onEscape: [{
|
|
6099
|
-
type: HostListener,
|
|
6100
|
-
args: ["document:keydown.escape"]
|
|
6101
|
-
}] } });
|
|
6102
|
-
|
|
6103
|
-
const COMPONENTS$f = [PdmSelectComponent, PdmSelectOptionDirective];
|
|
6104
|
-
class PdmSelectModule {
|
|
6105
|
-
}
|
|
6106
|
-
PdmSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
6107
|
-
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] });
|
|
6108
|
-
PdmSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, imports: [CommonModule, OverlayModule, PdmIconModule] });
|
|
6109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, decorators: [{
|
|
6110
|
-
type: NgModule,
|
|
6111
|
-
args: [{
|
|
6112
|
-
imports: [CommonModule, OverlayModule, PdmIconModule],
|
|
6113
|
-
declarations: COMPONENTS$f,
|
|
6114
|
-
exports: COMPONENTS$f,
|
|
6115
|
-
}]
|
|
6116
|
-
}] });
|
|
6117
|
-
|
|
6118
5549
|
class PdmPaginationComponent {
|
|
6119
5550
|
constructor() {
|
|
6120
5551
|
this.page = 1;
|
|
@@ -6158,7 +5589,7 @@ class PdmPaginationComponent {
|
|
|
6158
5589
|
}
|
|
6159
5590
|
}
|
|
6160
5591
|
PdmPaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6161
|
-
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 });
|
|
5592
|
+
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 });
|
|
6162
5593
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationComponent, decorators: [{
|
|
6163
5594
|
type: Component,
|
|
6164
5595
|
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" }]
|
|
@@ -6182,18 +5613,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6182
5613
|
type: Output
|
|
6183
5614
|
}] } });
|
|
6184
5615
|
|
|
6185
|
-
const COMPONENTS$
|
|
5616
|
+
const COMPONENTS$f = [PdmPaginationComponent];
|
|
6186
5617
|
class PdmPaginationModule {
|
|
6187
5618
|
}
|
|
6188
5619
|
PdmPaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
6189
|
-
PdmPaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, declarations: [PdmPaginationComponent], imports: [CommonModule, PdmIconModule, PdmSelectModule], exports: [PdmPaginationComponent] });
|
|
6190
|
-
PdmPaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, imports: [CommonModule, PdmIconModule, PdmSelectModule] });
|
|
5620
|
+
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] });
|
|
5621
|
+
PdmPaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, imports: [CommonModule, PdmIconModule$1, PdmSelectModule$1] });
|
|
6191
5622
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmPaginationModule, decorators: [{
|
|
6192
5623
|
type: NgModule,
|
|
6193
5624
|
args: [{
|
|
6194
|
-
imports: [CommonModule, PdmIconModule, PdmSelectModule],
|
|
6195
|
-
declarations: COMPONENTS$
|
|
6196
|
-
exports: COMPONENTS$
|
|
5625
|
+
imports: [CommonModule, PdmIconModule$1, PdmSelectModule$1],
|
|
5626
|
+
declarations: COMPONENTS$f,
|
|
5627
|
+
exports: COMPONENTS$f,
|
|
6197
5628
|
}]
|
|
6198
5629
|
}] });
|
|
6199
5630
|
|
|
@@ -6253,7 +5684,7 @@ class PdmPopoverComponent {
|
|
|
6253
5684
|
.withPositions(this.getPositionConfigs())
|
|
6254
5685
|
.withFlexibleDimensions(false)
|
|
6255
5686
|
.withPush(true);
|
|
6256
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, this.panelClassName);
|
|
5687
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1, this.panelClassName);
|
|
6257
5688
|
this.overlayRef = this.overlay.create({
|
|
6258
5689
|
positionStrategy,
|
|
6259
5690
|
panelClass,
|
|
@@ -6353,7 +5784,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6353
5784
|
args: ["document:keydown.escape"]
|
|
6354
5785
|
}] } });
|
|
6355
5786
|
|
|
6356
|
-
const COMPONENTS$
|
|
5787
|
+
const COMPONENTS$e = [
|
|
6357
5788
|
PdmPopoverComponent,
|
|
6358
5789
|
];
|
|
6359
5790
|
class PdmPopoverModule {
|
|
@@ -6365,8 +5796,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6365
5796
|
type: NgModule,
|
|
6366
5797
|
args: [{
|
|
6367
5798
|
imports: [CommonModule, OverlayModule],
|
|
6368
|
-
declarations: COMPONENTS$
|
|
6369
|
-
exports: COMPONENTS$
|
|
5799
|
+
declarations: COMPONENTS$e,
|
|
5800
|
+
exports: COMPONENTS$e
|
|
6370
5801
|
}]
|
|
6371
5802
|
}] });
|
|
6372
5803
|
|
|
@@ -6400,7 +5831,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6400
5831
|
type: Input
|
|
6401
5832
|
}] } });
|
|
6402
5833
|
|
|
6403
|
-
const COMPONENTS$
|
|
5834
|
+
const COMPONENTS$d = [
|
|
6404
5835
|
PdmProgressComponent,
|
|
6405
5836
|
];
|
|
6406
5837
|
class PdmProgressModule {
|
|
@@ -6412,8 +5843,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6412
5843
|
type: NgModule,
|
|
6413
5844
|
args: [{
|
|
6414
5845
|
imports: [CommonModule],
|
|
6415
|
-
declarations: COMPONENTS$
|
|
6416
|
-
exports: COMPONENTS$
|
|
5846
|
+
declarations: COMPONENTS$d,
|
|
5847
|
+
exports: COMPONENTS$d
|
|
6417
5848
|
}]
|
|
6418
5849
|
}] });
|
|
6419
5850
|
|
|
@@ -6452,7 +5883,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6452
5883
|
type: Output
|
|
6453
5884
|
}] } });
|
|
6454
5885
|
|
|
6455
|
-
const COMPONENTS$
|
|
5886
|
+
const COMPONENTS$c = [
|
|
6456
5887
|
PdmRadioGroupComponent,
|
|
6457
5888
|
];
|
|
6458
5889
|
class PdmRadioGroupModule {
|
|
@@ -6464,8 +5895,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6464
5895
|
type: NgModule,
|
|
6465
5896
|
args: [{
|
|
6466
5897
|
imports: [CommonModule],
|
|
6467
|
-
declarations: COMPONENTS$
|
|
6468
|
-
exports: COMPONENTS$
|
|
5898
|
+
declarations: COMPONENTS$c,
|
|
5899
|
+
exports: COMPONENTS$c
|
|
6469
5900
|
}]
|
|
6470
5901
|
}] });
|
|
6471
5902
|
|
|
@@ -6486,7 +5917,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6486
5917
|
type: Input
|
|
6487
5918
|
}] } });
|
|
6488
5919
|
|
|
6489
|
-
const COMPONENTS$
|
|
5920
|
+
const COMPONENTS$b = [
|
|
6490
5921
|
PdmScrollAreaComponent,
|
|
6491
5922
|
];
|
|
6492
5923
|
class PdmScrollAreaModule {
|
|
@@ -6498,34 +5929,257 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
6498
5929
|
type: NgModule,
|
|
6499
5930
|
args: [{
|
|
6500
5931
|
imports: [CommonModule],
|
|
6501
|
-
declarations: COMPONENTS$
|
|
6502
|
-
exports: COMPONENTS$
|
|
5932
|
+
declarations: COMPONENTS$b,
|
|
5933
|
+
exports: COMPONENTS$b
|
|
6503
5934
|
}]
|
|
6504
5935
|
}] });
|
|
6505
5936
|
|
|
6506
|
-
|
|
6507
|
-
|
|
6508
|
-
|
|
6509
|
-
|
|
6510
|
-
|
|
6511
|
-
|
|
6512
|
-
|
|
6513
|
-
|
|
6514
|
-
|
|
6515
|
-
|
|
6516
|
-
|
|
6517
|
-
|
|
6518
|
-
|
|
6519
|
-
|
|
6520
|
-
|
|
6521
|
-
|
|
6522
|
-
|
|
6523
|
-
|
|
6524
|
-
|
|
6525
|
-
|
|
6526
|
-
|
|
6527
|
-
|
|
6528
|
-
|
|
5937
|
+
/**
|
|
5938
|
+
* Directive used to declare an option inside `<pdm-select>` via content projection.
|
|
5939
|
+
*
|
|
5940
|
+
* Usage:
|
|
5941
|
+
* ```html
|
|
5942
|
+
* <pdm-select [(value)]="val">
|
|
5943
|
+
* <pdm-select-option value="a">Option A</pdm-select-option>
|
|
5944
|
+
* <pdm-select-option value="b" [disabled]="true">Option B</pdm-select-option>
|
|
5945
|
+
* <pdm-select-option value="c" label="Option C"></pdm-select-option>
|
|
5946
|
+
* </pdm-select>
|
|
5947
|
+
* ```
|
|
5948
|
+
*
|
|
5949
|
+
* When `label` is not provided, the text content of the projected node is used.
|
|
5950
|
+
*/
|
|
5951
|
+
class PdmSelectOptionDirective {
|
|
5952
|
+
constructor(el) {
|
|
5953
|
+
this.el = el;
|
|
5954
|
+
/** The option value that will be emitted on selection. */
|
|
5955
|
+
this.value = '';
|
|
5956
|
+
/** When true, the option is rendered but cannot be selected. */
|
|
5957
|
+
this.disabled = false;
|
|
5958
|
+
/**
|
|
5959
|
+
* Explicit label for the option.
|
|
5960
|
+
* When omitted, the directive reads the element's `textContent` after content init.
|
|
5961
|
+
*/
|
|
5962
|
+
this.label = '';
|
|
5963
|
+
}
|
|
5964
|
+
ngAfterContentInit() {
|
|
5965
|
+
// If no explicit label, harvest text from the projected node.
|
|
5966
|
+
if (!this.label) {
|
|
5967
|
+
this.label = (this.el.nativeElement.textContent ?? '').trim();
|
|
5968
|
+
}
|
|
5969
|
+
}
|
|
5970
|
+
/** Resolved label string — always non-empty after ngAfterContentInit. */
|
|
5971
|
+
get resolvedLabel() {
|
|
5972
|
+
return this.label || this.value;
|
|
5973
|
+
}
|
|
5974
|
+
}
|
|
5975
|
+
PdmSelectOptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectOptionDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
5976
|
+
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 });
|
|
5977
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectOptionDirective, decorators: [{
|
|
5978
|
+
type: Directive,
|
|
5979
|
+
args: [{
|
|
5980
|
+
selector: 'pdm-select-option'
|
|
5981
|
+
}]
|
|
5982
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { value: [{
|
|
5983
|
+
type: Input
|
|
5984
|
+
}], disabled: [{
|
|
5985
|
+
type: Input
|
|
5986
|
+
}], label: [{
|
|
5987
|
+
type: Input
|
|
5988
|
+
}] } });
|
|
5989
|
+
|
|
5990
|
+
class PdmSelectComponent {
|
|
5991
|
+
constructor(cdr, overlay, viewContainerRef) {
|
|
5992
|
+
this.cdr = cdr;
|
|
5993
|
+
this.overlay = overlay;
|
|
5994
|
+
this.viewContainerRef = viewContainerRef;
|
|
5995
|
+
this.id = "";
|
|
5996
|
+
this.value = "";
|
|
5997
|
+
this.options = [];
|
|
5998
|
+
this.disabled = false;
|
|
5999
|
+
this.invalid = false;
|
|
6000
|
+
this.className = "";
|
|
6001
|
+
this.placeholder = "Select an option";
|
|
6002
|
+
this.open = false;
|
|
6003
|
+
this.valueChange = new EventEmitter();
|
|
6004
|
+
this.overlayRef = null;
|
|
6005
|
+
this.backdropSub = null;
|
|
6006
|
+
}
|
|
6007
|
+
ngAfterContentInit() {
|
|
6008
|
+
// Re-render when projected options change (e.g. *ngFor on pdm-select-option).
|
|
6009
|
+
this.projectedOptions.changes.subscribe(() => this.cdr.markForCheck());
|
|
6010
|
+
}
|
|
6011
|
+
ngOnDestroy() {
|
|
6012
|
+
this.destroyOverlay();
|
|
6013
|
+
}
|
|
6014
|
+
/**
|
|
6015
|
+
* Returns the effective list of options.
|
|
6016
|
+
* Projected `<pdm-select-option>` children take priority over the `[options]` input.
|
|
6017
|
+
* Falls back to `[options]` when no children are projected.
|
|
6018
|
+
*/
|
|
6019
|
+
get resolvedOptions() {
|
|
6020
|
+
if (this.projectedOptions && this.projectedOptions.length > 0) {
|
|
6021
|
+
return this.projectedOptions.map((d) => ({
|
|
6022
|
+
label: d.resolvedLabel,
|
|
6023
|
+
value: d.value,
|
|
6024
|
+
disabled: d.disabled,
|
|
6025
|
+
}));
|
|
6026
|
+
}
|
|
6027
|
+
return this.options;
|
|
6028
|
+
}
|
|
6029
|
+
get selectedOption() {
|
|
6030
|
+
return this.resolvedOptions.find((option) => option.value === this.value);
|
|
6031
|
+
}
|
|
6032
|
+
get selectedLabel() {
|
|
6033
|
+
return this.selectedOption?.label || this.placeholder;
|
|
6034
|
+
}
|
|
6035
|
+
toggle() {
|
|
6036
|
+
if (this.disabled)
|
|
6037
|
+
return;
|
|
6038
|
+
if (this.open) {
|
|
6039
|
+
this.closePanel();
|
|
6040
|
+
}
|
|
6041
|
+
else {
|
|
6042
|
+
this.openPanel();
|
|
6043
|
+
}
|
|
6044
|
+
}
|
|
6045
|
+
onChange(event) {
|
|
6046
|
+
this.valueChange.emit(event.target.value);
|
|
6047
|
+
}
|
|
6048
|
+
selectOption(option) {
|
|
6049
|
+
if (option.disabled)
|
|
6050
|
+
return;
|
|
6051
|
+
this.valueChange.emit(option.value);
|
|
6052
|
+
this.closePanel();
|
|
6053
|
+
}
|
|
6054
|
+
onEscape() {
|
|
6055
|
+
if (this.open) {
|
|
6056
|
+
this.closePanel();
|
|
6057
|
+
}
|
|
6058
|
+
}
|
|
6059
|
+
openPanel() {
|
|
6060
|
+
if (this.overlayRef)
|
|
6061
|
+
return;
|
|
6062
|
+
const triggerEl = this.triggerRef?.nativeElement;
|
|
6063
|
+
if (!triggerEl)
|
|
6064
|
+
return;
|
|
6065
|
+
this.open = true;
|
|
6066
|
+
this.cdr.markForCheck();
|
|
6067
|
+
const positionStrategy = createFlexiblePositionStrategy$1(this.overlay, triggerEl, 4);
|
|
6068
|
+
this.overlayRef = this.overlay.create({
|
|
6069
|
+
// CRÍTICO: z-[70] para aparecer SOBRE modals (z-[60])
|
|
6070
|
+
// panelClass se aplica al cdk-overlay-pane wrapper
|
|
6071
|
+
panelClass: [Z_INDEX$1.popover],
|
|
6072
|
+
positionStrategy,
|
|
6073
|
+
scrollStrategy: this.overlay.scrollStrategies.reposition(),
|
|
6074
|
+
width: triggerEl.offsetWidth,
|
|
6075
|
+
// Consumer overrides are spread last — they win over every default above.
|
|
6076
|
+
...this.overlayOptions,
|
|
6077
|
+
});
|
|
6078
|
+
const portal = new TemplatePortal(this.panelTemplateRef, this.viewContainerRef);
|
|
6079
|
+
this.overlayRef.attach(portal);
|
|
6080
|
+
this.backdropSub = this.overlayRef
|
|
6081
|
+
.outsidePointerEvents()
|
|
6082
|
+
.subscribe((event) => {
|
|
6083
|
+
const target = event.target;
|
|
6084
|
+
if (!triggerEl.contains(target)) {
|
|
6085
|
+
this.closePanel();
|
|
6086
|
+
}
|
|
6087
|
+
});
|
|
6088
|
+
this.cdr.markForCheck();
|
|
6089
|
+
}
|
|
6090
|
+
closePanel() {
|
|
6091
|
+
if (!this.overlayRef)
|
|
6092
|
+
return;
|
|
6093
|
+
this.open = false;
|
|
6094
|
+
this.destroyOverlay();
|
|
6095
|
+
this.cdr.markForCheck();
|
|
6096
|
+
}
|
|
6097
|
+
destroyOverlay() {
|
|
6098
|
+
if (this.backdropSub) {
|
|
6099
|
+
this.backdropSub.unsubscribe();
|
|
6100
|
+
this.backdropSub = null;
|
|
6101
|
+
}
|
|
6102
|
+
if (this.overlayRef) {
|
|
6103
|
+
this.overlayRef.dispose();
|
|
6104
|
+
this.overlayRef = null;
|
|
6105
|
+
}
|
|
6106
|
+
}
|
|
6107
|
+
}
|
|
6108
|
+
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 });
|
|
6109
|
+
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 });
|
|
6110
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectComponent, decorators: [{
|
|
6111
|
+
type: Component,
|
|
6112
|
+
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"] }]
|
|
6113
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1$1.Overlay }, { type: i0.ViewContainerRef }]; }, propDecorators: { id: [{
|
|
6114
|
+
type: Input
|
|
6115
|
+
}], value: [{
|
|
6116
|
+
type: Input
|
|
6117
|
+
}], options: [{
|
|
6118
|
+
type: Input
|
|
6119
|
+
}], disabled: [{
|
|
6120
|
+
type: Input
|
|
6121
|
+
}], invalid: [{
|
|
6122
|
+
type: Input
|
|
6123
|
+
}], className: [{
|
|
6124
|
+
type: Input
|
|
6125
|
+
}], placeholder: [{
|
|
6126
|
+
type: Input
|
|
6127
|
+
}], overlayOptions: [{
|
|
6128
|
+
type: Input
|
|
6129
|
+
}], valueChange: [{
|
|
6130
|
+
type: Output
|
|
6131
|
+
}], triggerRef: [{
|
|
6132
|
+
type: ViewChild,
|
|
6133
|
+
args: ["triggerEl"]
|
|
6134
|
+
}], panelTemplateRef: [{
|
|
6135
|
+
type: ViewChild,
|
|
6136
|
+
args: ["panelTemplate"]
|
|
6137
|
+
}], projectedOptions: [{
|
|
6138
|
+
type: ContentChildren,
|
|
6139
|
+
args: [PdmSelectOptionDirective]
|
|
6140
|
+
}], onEscape: [{
|
|
6141
|
+
type: HostListener,
|
|
6142
|
+
args: ["document:keydown.escape"]
|
|
6143
|
+
}] } });
|
|
6144
|
+
|
|
6145
|
+
const COMPONENTS$a = [PdmSelectComponent, PdmSelectOptionDirective];
|
|
6146
|
+
class PdmSelectModule {
|
|
6147
|
+
}
|
|
6148
|
+
PdmSelectModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
6149
|
+
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] });
|
|
6150
|
+
PdmSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, imports: [CommonModule, OverlayModule, PdmIconModule$1] });
|
|
6151
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSelectModule, decorators: [{
|
|
6152
|
+
type: NgModule,
|
|
6153
|
+
args: [{
|
|
6154
|
+
imports: [CommonModule, OverlayModule, PdmIconModule$1],
|
|
6155
|
+
declarations: COMPONENTS$a,
|
|
6156
|
+
exports: COMPONENTS$a,
|
|
6157
|
+
}]
|
|
6158
|
+
}] });
|
|
6159
|
+
|
|
6160
|
+
class PdmSeparatorComponent {
|
|
6161
|
+
constructor() {
|
|
6162
|
+
this.orientation = 'horizontal';
|
|
6163
|
+
this.decorative = true;
|
|
6164
|
+
this.className = '';
|
|
6165
|
+
}
|
|
6166
|
+
get orientationClass() {
|
|
6167
|
+
return this.orientation === 'vertical' ? 'h-full w-px' : 'h-px w-full';
|
|
6168
|
+
}
|
|
6169
|
+
}
|
|
6170
|
+
PdmSeparatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6171
|
+
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 });
|
|
6172
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSeparatorComponent, decorators: [{
|
|
6173
|
+
type: Component,
|
|
6174
|
+
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" }]
|
|
6175
|
+
}], propDecorators: { orientation: [{
|
|
6176
|
+
type: Input
|
|
6177
|
+
}], decorative: [{
|
|
6178
|
+
type: Input
|
|
6179
|
+
}], className: [{
|
|
6180
|
+
type: Input
|
|
6181
|
+
}] } });
|
|
6182
|
+
|
|
6529
6183
|
const COMPONENTS$9 = [
|
|
6530
6184
|
PdmSeparatorComponent,
|
|
6531
6185
|
];
|
|
@@ -6734,7 +6388,7 @@ class PdmSonnerComponent {
|
|
|
6734
6388
|
}
|
|
6735
6389
|
}
|
|
6736
6390
|
PdmSonnerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6737
|
-
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 });
|
|
6391
|
+
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 });
|
|
6738
6392
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerComponent, decorators: [{
|
|
6739
6393
|
type: Component,
|
|
6740
6394
|
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" }]
|
|
@@ -6754,12 +6408,12 @@ const COMPONENTS$5 = [PdmSonnerComponent];
|
|
|
6754
6408
|
class PdmSonnerModule {
|
|
6755
6409
|
}
|
|
6756
6410
|
PdmSonnerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
6757
|
-
PdmSonnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, declarations: [PdmSonnerComponent], imports: [CommonModule, PdmIconModule], exports: [PdmSonnerComponent] });
|
|
6758
|
-
PdmSonnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, imports: [CommonModule, PdmIconModule] });
|
|
6411
|
+
PdmSonnerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, declarations: [PdmSonnerComponent], imports: [CommonModule, PdmIconModule$1], exports: [PdmSonnerComponent] });
|
|
6412
|
+
PdmSonnerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, imports: [CommonModule, PdmIconModule$1] });
|
|
6759
6413
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmSonnerModule, decorators: [{
|
|
6760
6414
|
type: NgModule,
|
|
6761
6415
|
args: [{
|
|
6762
|
-
imports: [CommonModule, PdmIconModule],
|
|
6416
|
+
imports: [CommonModule, PdmIconModule$1],
|
|
6763
6417
|
declarations: COMPONENTS$5,
|
|
6764
6418
|
exports: COMPONENTS$5,
|
|
6765
6419
|
}]
|
|
@@ -7057,7 +6711,7 @@ class PdmTooltipComponent {
|
|
|
7057
6711
|
.withPositions(this.getPositionConfigs())
|
|
7058
6712
|
.withFlexibleDimensions(false)
|
|
7059
6713
|
.withPush(true);
|
|
7060
|
-
const panelClass = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX);
|
|
6714
|
+
const panelClass = mergeOverlayPanelClass$1(OVERLAY_BASE_Z_INDEX$1);
|
|
7061
6715
|
this.overlayRef = this.overlay.create({
|
|
7062
6716
|
positionStrategy,
|
|
7063
6717
|
panelClass,
|
|
@@ -7498,6 +7152,362 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
7498
7152
|
}]
|
|
7499
7153
|
}] });
|
|
7500
7154
|
|
|
7155
|
+
/**
|
|
7156
|
+
* Creates a flexible position strategy that automatically adjusts
|
|
7157
|
+
* to keep the overlay within the viewport edges.
|
|
7158
|
+
*
|
|
7159
|
+
* The strategy tries positions in this order:
|
|
7160
|
+
* 1. Bottom-left (origin bottom edge, aligns to left)
|
|
7161
|
+
* 2. Top-left (origin top edge, aligns to left)
|
|
7162
|
+
* 3. Bottom-right (origin bottom edge, aligns to right)
|
|
7163
|
+
* 4. Top-right (origin top edge, aligns to right)
|
|
7164
|
+
*
|
|
7165
|
+
* CDK Overlay will use the first position that fits within the viewport.
|
|
7166
|
+
*/
|
|
7167
|
+
function createFlexiblePositionStrategy(overlay, triggerElement, offset = 4) {
|
|
7168
|
+
return overlay
|
|
7169
|
+
.position()
|
|
7170
|
+
.flexibleConnectedTo(triggerElement)
|
|
7171
|
+
.withPositions([
|
|
7172
|
+
// Bottom-left (default) - opens downward from left edge
|
|
7173
|
+
{
|
|
7174
|
+
originX: 'start',
|
|
7175
|
+
originY: 'bottom',
|
|
7176
|
+
overlayX: 'start',
|
|
7177
|
+
overlayY: 'top',
|
|
7178
|
+
offsetY: offset
|
|
7179
|
+
},
|
|
7180
|
+
// Top-left - opens upward from left edge
|
|
7181
|
+
{
|
|
7182
|
+
originX: 'start',
|
|
7183
|
+
originY: 'top',
|
|
7184
|
+
overlayX: 'start',
|
|
7185
|
+
overlayY: 'bottom',
|
|
7186
|
+
offsetY: -offset
|
|
7187
|
+
},
|
|
7188
|
+
// Bottom-right - opens downward from right edge
|
|
7189
|
+
{
|
|
7190
|
+
originX: 'end',
|
|
7191
|
+
originY: 'bottom',
|
|
7192
|
+
overlayX: 'end',
|
|
7193
|
+
overlayY: 'top',
|
|
7194
|
+
offsetY: offset
|
|
7195
|
+
},
|
|
7196
|
+
// Top-right - opens upward from right edge
|
|
7197
|
+
{
|
|
7198
|
+
originX: 'end',
|
|
7199
|
+
originY: 'top',
|
|
7200
|
+
overlayX: 'end',
|
|
7201
|
+
overlayY: 'bottom',
|
|
7202
|
+
offsetY: -offset
|
|
7203
|
+
}
|
|
7204
|
+
])
|
|
7205
|
+
.withFlexibleDimensions(false)
|
|
7206
|
+
.withPush(true);
|
|
7207
|
+
}
|
|
7208
|
+
|
|
7209
|
+
/**
|
|
7210
|
+
* Z-Index helper for overlay components.
|
|
7211
|
+
*
|
|
7212
|
+
* CRITICAL: Consumer custom panelClass MUST NOT replace the base z-index.
|
|
7213
|
+
* This helper ensures z-index is preserved when merging custom classes.
|
|
7214
|
+
*/
|
|
7215
|
+
/**
|
|
7216
|
+
* Base z-index class for overlays - MUST be included in any overlay panel.
|
|
7217
|
+
* This ensures overlays appear above modals (z-50) and drawers (z-40).
|
|
7218
|
+
*/
|
|
7219
|
+
const OVERLAY_BASE_Z_INDEX = "z-[70]";
|
|
7220
|
+
/**
|
|
7221
|
+
* Merge consumer's panelClass with our base z-index.
|
|
7222
|
+
* Consumer classes are APPENDED, not replacing our z-index guarantee.
|
|
7223
|
+
*
|
|
7224
|
+
* @param baseZIndex - Base z-index class to enforce (default: OVERLAY_BASE_Z_INDEX)
|
|
7225
|
+
* @param consumerClasses - Optional additional classes from consumer
|
|
7226
|
+
* @returns Array of classes safe for CDK Overlay panelClass
|
|
7227
|
+
*/
|
|
7228
|
+
function mergeOverlayPanelClass(baseZIndex = OVERLAY_BASE_Z_INDEX, consumerClasses) {
|
|
7229
|
+
const baseClasses = baseZIndex.split(" ");
|
|
7230
|
+
if (!consumerClasses) {
|
|
7231
|
+
return baseClasses;
|
|
7232
|
+
}
|
|
7233
|
+
const consumerClassArray = Array.isArray(consumerClasses)
|
|
7234
|
+
? consumerClasses
|
|
7235
|
+
: consumerClasses.split(" ");
|
|
7236
|
+
// Consumer classes are appended AFTER base classes
|
|
7237
|
+
// This ensures z-index from baseClasses is preserved first
|
|
7238
|
+
return [...baseClasses, ...consumerClassArray];
|
|
7239
|
+
}
|
|
7240
|
+
/**
|
|
7241
|
+
* Create OverlayConfig with guaranteed z-index.
|
|
7242
|
+
* Use this instead of direct OverlayConfig to ensure z-index enforcement.
|
|
7243
|
+
*
|
|
7244
|
+
* @param baseConfig - Base overlay configuration
|
|
7245
|
+
* @param consumerPanelClass - Optional consumer panelClass to merge
|
|
7246
|
+
* @returns OverlayConfig with z-index guarantee
|
|
7247
|
+
*/
|
|
7248
|
+
function createZIndexEnforcedOverlay(baseConfig, consumerPanelClass) {
|
|
7249
|
+
const mergedClasses = mergeOverlayPanelClass(OVERLAY_BASE_Z_INDEX, consumerPanelClass);
|
|
7250
|
+
const existingPanelClass = baseConfig.panelClass;
|
|
7251
|
+
if (existingPanelClass) {
|
|
7252
|
+
const existingArray = Array.isArray(existingPanelClass)
|
|
7253
|
+
? existingPanelClass
|
|
7254
|
+
: existingPanelClass.split(" ");
|
|
7255
|
+
return {
|
|
7256
|
+
...baseConfig,
|
|
7257
|
+
panelClass: [...mergedClasses, ...existingArray],
|
|
7258
|
+
};
|
|
7259
|
+
}
|
|
7260
|
+
return {
|
|
7261
|
+
...baseConfig,
|
|
7262
|
+
panelClass: mergedClasses,
|
|
7263
|
+
};
|
|
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
|
*/
|