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
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
/**
|
|
5
|
+
* Tabla con funcionalidad de reordenamiento de filas mediante drag & drop
|
|
6
|
+
*
|
|
7
|
+
* Extiende pdm-table agregando la capacidad de reordenar filas.
|
|
8
|
+
* Si no necesitás drag & drop, usá pdm-table directamente (más simple y liviano).
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* <pdm-draggable-table
|
|
12
|
+
* variant="interactive"
|
|
13
|
+
* [reorderRows]="true"
|
|
14
|
+
* (rowOrderChange)="onOrderChange($event)">
|
|
15
|
+
* <tbody>
|
|
16
|
+
* <tr data-row-id="1"><td>Row 1</td></tr>
|
|
17
|
+
* <tr data-row-id="2"><td>Row 2</td></tr>
|
|
18
|
+
* </tbody>
|
|
19
|
+
* </pdm-draggable-table>
|
|
20
|
+
*
|
|
21
|
+
* IMPORTANTE: Cada <tr> debe tener un atributo data-row-id único
|
|
22
|
+
*/
|
|
23
|
+
export class PdmDraggableTableComponent {
|
|
24
|
+
constructor(renderer) {
|
|
25
|
+
this.renderer = renderer;
|
|
26
|
+
this.variant = 'default';
|
|
27
|
+
this.responsiveStrategy = 'scroll';
|
|
28
|
+
this.className = '';
|
|
29
|
+
this.fullBleed = false;
|
|
30
|
+
/**
|
|
31
|
+
* Habilita el reordenamiento de filas mediante drag & drop
|
|
32
|
+
*/
|
|
33
|
+
this.reorderRows = false;
|
|
34
|
+
/**
|
|
35
|
+
* Selector CSS para identificar los handles de drag
|
|
36
|
+
* Por defecto busca: [data-drag-handle], [data-slot=row-drag-handle], .row-drag-handle
|
|
37
|
+
* Si no encuentra ninguno, inserta un handle automático
|
|
38
|
+
*/
|
|
39
|
+
this.dragHandleSelector = '[data-drag-handle],[data-slot=row-drag-handle],.row-drag-handle,[data-auto-drag-handle]';
|
|
40
|
+
/**
|
|
41
|
+
* Emite el nuevo orden de las filas cuando el usuario termina de arrastrar
|
|
42
|
+
* Array de data-row-id en el nuevo orden
|
|
43
|
+
*/
|
|
44
|
+
this.rowOrderChange = new EventEmitter();
|
|
45
|
+
this.cleanupListeners = [];
|
|
46
|
+
this.draggedRow = null;
|
|
47
|
+
}
|
|
48
|
+
ngAfterViewInit() {
|
|
49
|
+
this.syncReorderBehavior();
|
|
50
|
+
}
|
|
51
|
+
// Getters para clases CSS (mismo comportamiento que pdm-table)
|
|
52
|
+
get wrapperClasses() {
|
|
53
|
+
const baseClasses = ['relative', 'w-full'];
|
|
54
|
+
const strategyClasses = this.getResponsiveStrategyClasses();
|
|
55
|
+
const variantClasses = this.getVariantWrapperClasses();
|
|
56
|
+
if (this.fullBleed && this.responsiveStrategy === 'scroll') {
|
|
57
|
+
baseClasses.push('-mx-4', 'px-4', 'sm:mx-0', 'sm:px-0');
|
|
58
|
+
}
|
|
59
|
+
return [
|
|
60
|
+
...baseClasses,
|
|
61
|
+
...strategyClasses,
|
|
62
|
+
...variantClasses,
|
|
63
|
+
this.className
|
|
64
|
+
].filter(Boolean);
|
|
65
|
+
}
|
|
66
|
+
get tableClasses() {
|
|
67
|
+
const baseClasses = ['w-full', 'caption-bottom', 'text-sm'];
|
|
68
|
+
const variantClasses = this.getVariantTableClasses();
|
|
69
|
+
const cellClasses = this.getCellClasses();
|
|
70
|
+
return [...baseClasses, ...variantClasses, ...cellClasses].filter(Boolean);
|
|
71
|
+
}
|
|
72
|
+
getResponsiveStrategyClasses() {
|
|
73
|
+
if (this.responsiveStrategy === 'scroll' || this.responsiveStrategy === 'wrap' || this.responsiveStrategy === 'collapse') {
|
|
74
|
+
return ['overflow-x-auto'];
|
|
75
|
+
}
|
|
76
|
+
return [];
|
|
77
|
+
}
|
|
78
|
+
getVariantWrapperClasses() {
|
|
79
|
+
if (this.variant === 'interactive') {
|
|
80
|
+
return ['rounded-xl', 'border border-solid', 'border-border', 'bg-background'];
|
|
81
|
+
}
|
|
82
|
+
if (this.variant === 'data') {
|
|
83
|
+
return ['rounded-md', 'border border-solid', 'border-border', 'bg-background'];
|
|
84
|
+
}
|
|
85
|
+
return [];
|
|
86
|
+
}
|
|
87
|
+
getVariantTableClasses() {
|
|
88
|
+
if (this.variant === 'data') {
|
|
89
|
+
return [
|
|
90
|
+
'border-collapse', 'text-foreground',
|
|
91
|
+
'[&_thead_tr]:border-b', '[&_thead_tr]:border-border',
|
|
92
|
+
'[&_tbody_tr]:border-b', '[&_tbody_tr]:border-border',
|
|
93
|
+
'[&_tbody_tr:last-child]:border-b-0',
|
|
94
|
+
'[&_th]:h-10', '[&_th]:px-2', '[&_th]:text-left', '[&_th]:align-middle', '[&_th]:font-medium',
|
|
95
|
+
'[&_td]:p-2', '[&_td]:align-middle'
|
|
96
|
+
];
|
|
97
|
+
}
|
|
98
|
+
if (this.variant === 'interactive') {
|
|
99
|
+
return [
|
|
100
|
+
'text-foreground',
|
|
101
|
+
'[&_thead]:sticky', '[&_thead]:top-0', '[&_thead]:z-10', '[&_thead]:bg-muted/70',
|
|
102
|
+
'[&_thead_tr]:border-b', '[&_thead_tr]:border-border',
|
|
103
|
+
'[&_th]:h-12', '[&_th]:px-4', '[&_th]:text-left', '[&_th]:align-middle', '[&_th]:text-sm', '[&_th]:font-medium',
|
|
104
|
+
'[&_tbody_tr]:border-b', '[&_tbody_tr]:border-border',
|
|
105
|
+
'[&_tbody_tr]:transition-colors', '[&_tbody_tr:hover]:bg-muted/50',
|
|
106
|
+
'[&_tbody_tr:last-child]:border-b-0',
|
|
107
|
+
'[&_td]:h-14', '[&_td]:px-4', '[&_td]:align-middle', '[&_td]:text-sm',
|
|
108
|
+
'[&_svg]:text-muted-foreground'
|
|
109
|
+
];
|
|
110
|
+
}
|
|
111
|
+
return [];
|
|
112
|
+
}
|
|
113
|
+
getCellClasses() {
|
|
114
|
+
if (this.responsiveStrategy === 'scroll') {
|
|
115
|
+
return ['[&_td]:whitespace-normal', '[&_th]:whitespace-normal', 'sm:[&_td]:whitespace-nowrap', 'sm:[&_th]:whitespace-nowrap'];
|
|
116
|
+
}
|
|
117
|
+
if (this.responsiveStrategy === 'wrap') {
|
|
118
|
+
return ['[&_td]:whitespace-normal', '[&_td]:break-words', '[&_th]:whitespace-normal'];
|
|
119
|
+
}
|
|
120
|
+
return [];
|
|
121
|
+
}
|
|
122
|
+
ngOnChanges(changes) {
|
|
123
|
+
if (changes['reorderRows'] || changes['variant']) {
|
|
124
|
+
this.syncReorderBehavior();
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
ngOnDestroy() {
|
|
128
|
+
this.cleanupReorderBehavior();
|
|
129
|
+
}
|
|
130
|
+
syncReorderBehavior() {
|
|
131
|
+
this.cleanupReorderBehavior();
|
|
132
|
+
if (!this.reorderRows) {
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
const tbody = this.getTbody();
|
|
136
|
+
if (!tbody) {
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
this.setRowsDraggable(tbody, true);
|
|
140
|
+
this.cleanupListeners.push(this.renderer.listen(tbody, 'mousedown', (event) => this.armDragFromHandle(event)), this.renderer.listen(tbody, 'dragstart', (event) => this.onDragStart(event)), this.renderer.listen(tbody, 'dragover', (event) => this.onDragOver(event, tbody)), this.renderer.listen(tbody, 'drop', (event) => this.onDrop(event)), this.renderer.listen(tbody, 'dragend', () => this.onDragEnd()));
|
|
141
|
+
// Observer para detectar cambios en el DOM (filas agregadas/removidas)
|
|
142
|
+
this.observer = new MutationObserver(() => this.setRowsDraggable(tbody, true));
|
|
143
|
+
this.observer.observe(tbody, { childList: true });
|
|
144
|
+
}
|
|
145
|
+
cleanupReorderBehavior() {
|
|
146
|
+
this.cleanupListeners.forEach((dispose) => dispose());
|
|
147
|
+
this.cleanupListeners = [];
|
|
148
|
+
if (this.observer) {
|
|
149
|
+
this.observer.disconnect();
|
|
150
|
+
this.observer = undefined;
|
|
151
|
+
}
|
|
152
|
+
const tbody = this.getTbody();
|
|
153
|
+
if (tbody) {
|
|
154
|
+
this.setRowsDraggable(tbody, false);
|
|
155
|
+
}
|
|
156
|
+
this.draggedRow = null;
|
|
157
|
+
}
|
|
158
|
+
getTbody() {
|
|
159
|
+
return this.tableElement?.nativeElement.tBodies.item(0) ?? null;
|
|
160
|
+
}
|
|
161
|
+
setRowsDraggable(tbody, enabled) {
|
|
162
|
+
const rows = Array.from(tbody.rows);
|
|
163
|
+
rows.forEach((row) => {
|
|
164
|
+
this.syncAutoDragHandle(row, enabled);
|
|
165
|
+
row.draggable = false;
|
|
166
|
+
if (!enabled) {
|
|
167
|
+
delete row.dataset['dragging'];
|
|
168
|
+
delete row.dataset['dragArmed'];
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Inserta un handle de drag automático si no existe uno custom
|
|
174
|
+
*/
|
|
175
|
+
syncAutoDragHandle(row, enabled) {
|
|
176
|
+
const firstCell = row.cells.item(0);
|
|
177
|
+
if (!firstCell) {
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
const existingAutoHandle = firstCell.querySelector('[data-auto-drag-handle]');
|
|
181
|
+
if (!enabled) {
|
|
182
|
+
existingAutoHandle?.remove();
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
const hasCustomHandle = !!firstCell.querySelector('[data-drag-handle],[data-slot=row-drag-handle],.row-drag-handle');
|
|
186
|
+
if (hasCustomHandle || existingAutoHandle) {
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
// Crear handle automático
|
|
190
|
+
const button = this.renderer.createElement('button');
|
|
191
|
+
this.renderer.setAttribute(button, 'type', 'button');
|
|
192
|
+
this.renderer.setAttribute(button, 'aria-label', 'Drag row');
|
|
193
|
+
this.renderer.setAttribute(button, 'data-auto-drag-handle', 'true');
|
|
194
|
+
this.renderer.addClass(button, 'inline-flex');
|
|
195
|
+
this.renderer.addClass(button, 'h-7');
|
|
196
|
+
this.renderer.addClass(button, 'w-7');
|
|
197
|
+
this.renderer.addClass(button, 'items-center');
|
|
198
|
+
this.renderer.addClass(button, 'justify-center');
|
|
199
|
+
this.renderer.addClass(button, 'cursor-grab');
|
|
200
|
+
this.renderer.addClass(button, 'active:cursor-grabbing');
|
|
201
|
+
this.renderer.addClass(button, 'text-muted-foreground');
|
|
202
|
+
const dots = this.renderer.createElement('span');
|
|
203
|
+
this.renderer.addClass(dots, 'text-sm');
|
|
204
|
+
this.renderer.addClass(dots, 'leading-none');
|
|
205
|
+
this.renderer.setProperty(dots, 'textContent', '⋮⋮');
|
|
206
|
+
this.renderer.appendChild(button, dots);
|
|
207
|
+
this.renderer.insertBefore(firstCell, button, firstCell.firstChild);
|
|
208
|
+
}
|
|
209
|
+
onDragStart(event) {
|
|
210
|
+
const target = event.target;
|
|
211
|
+
const row = target?.closest('tr');
|
|
212
|
+
if (!row) {
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
const handle = target?.closest(this.dragHandleSelector);
|
|
216
|
+
const isArmed = row.dataset['dragArmed'] === 'true';
|
|
217
|
+
if ((!handle || !row.contains(handle)) && !isArmed) {
|
|
218
|
+
event.preventDefault();
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
this.draggedRow = row;
|
|
222
|
+
this.draggedRow.dataset['dragging'] = 'true';
|
|
223
|
+
if (event.dataTransfer) {
|
|
224
|
+
event.dataTransfer.effectAllowed = 'move';
|
|
225
|
+
event.dataTransfer.setData('text/plain', '');
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
onDragOver(event, tbody) {
|
|
229
|
+
if (!this.draggedRow) {
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
event.preventDefault();
|
|
233
|
+
const target = event.target;
|
|
234
|
+
const targetRow = target?.closest('tr');
|
|
235
|
+
if (!targetRow || targetRow === this.draggedRow) {
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
const rect = targetRow.getBoundingClientRect();
|
|
239
|
+
const shouldInsertBefore = event.clientY < rect.top + rect.height / 2;
|
|
240
|
+
tbody.insertBefore(this.draggedRow, shouldInsertBefore ? targetRow : targetRow.nextSibling);
|
|
241
|
+
}
|
|
242
|
+
onDrop(event) {
|
|
243
|
+
event.preventDefault();
|
|
244
|
+
}
|
|
245
|
+
onDragEnd() {
|
|
246
|
+
const tbody = this.getTbody();
|
|
247
|
+
if (tbody) {
|
|
248
|
+
Array.from(tbody.rows).forEach((row) => {
|
|
249
|
+
row.draggable = false;
|
|
250
|
+
delete row.dataset['dragArmed'];
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
if (this.draggedRow) {
|
|
254
|
+
delete this.draggedRow.dataset['dragging'];
|
|
255
|
+
this.draggedRow = null;
|
|
256
|
+
}
|
|
257
|
+
if (!tbody) {
|
|
258
|
+
return;
|
|
259
|
+
}
|
|
260
|
+
const order = Array.from(tbody.rows).map((row, index) => row.getAttribute('data-row-id') || String(index));
|
|
261
|
+
this.rowOrderChange.emit(order);
|
|
262
|
+
}
|
|
263
|
+
armDragFromHandle(event) {
|
|
264
|
+
const target = event.target;
|
|
265
|
+
const handle = target?.closest(this.dragHandleSelector);
|
|
266
|
+
if (!handle) {
|
|
267
|
+
return;
|
|
268
|
+
}
|
|
269
|
+
const row = handle.closest('tr');
|
|
270
|
+
if (!row) {
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
row.draggable = true;
|
|
274
|
+
row.dataset['dragArmed'] = 'true';
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
PdmDraggableTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDraggableTableComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
278
|
+
PdmDraggableTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmDraggableTableComponent, selector: "pdm-draggable-table", inputs: { variant: "variant", responsiveStrategy: "responsiveStrategy", className: "className", fullBleed: "fullBleed", reorderRows: "reorderRows", dragHandleSelector: "dragHandleSelector" }, outputs: { rowOrderChange: "rowOrderChange" }, viewQueries: [{ propertyName: "tableElement", first: true, predicate: ["tableElement"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div [ngClass]=\"wrapperClasses\" [attr.data-slot]=\"variant === 'interactive' ? 'table-container' : null\">\n <table #tableElement [ngClass]=\"tableClasses\" [attr.data-slot]=\"variant === 'interactive' ? 'table' : null\">\n <ng-content></ng-content>\n </table>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
279
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmDraggableTableComponent, decorators: [{
|
|
280
|
+
type: Component,
|
|
281
|
+
args: [{ selector: 'pdm-draggable-table', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"wrapperClasses\" [attr.data-slot]=\"variant === 'interactive' ? 'table-container' : null\">\n <table #tableElement [ngClass]=\"tableClasses\" [attr.data-slot]=\"variant === 'interactive' ? 'table' : null\">\n <ng-content></ng-content>\n </table>\n</div>\n" }]
|
|
282
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }]; }, propDecorators: { variant: [{
|
|
283
|
+
type: Input
|
|
284
|
+
}], responsiveStrategy: [{
|
|
285
|
+
type: Input
|
|
286
|
+
}], className: [{
|
|
287
|
+
type: Input
|
|
288
|
+
}], fullBleed: [{
|
|
289
|
+
type: Input
|
|
290
|
+
}], reorderRows: [{
|
|
291
|
+
type: Input
|
|
292
|
+
}], dragHandleSelector: [{
|
|
293
|
+
type: Input
|
|
294
|
+
}], rowOrderChange: [{
|
|
295
|
+
type: Output
|
|
296
|
+
}], tableElement: [{
|
|
297
|
+
type: ViewChild,
|
|
298
|
+
args: ['tableElement']
|
|
299
|
+
}] } });
|
|
300
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZ2dhYmxlLXRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRhLXRhYmxlL2RyYWdnYWJsZS10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvZGF0YS10YWJsZS9kcmFnZ2FibGUtdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBR04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDOzs7QUFJdkI7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQU1ILE1BQU0sT0FBTywwQkFBMEI7SUE4QnJDLFlBQTZCLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUE3QnZDLFlBQU8sR0FBb0IsU0FBUyxDQUFDO1FBQ3JDLHVCQUFrQixHQUE0QixRQUFRLENBQUM7UUFDdkQsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFM0I7O1dBRUc7UUFDTSxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUU3Qjs7OztXQUlHO1FBQ00sdUJBQWtCLEdBQUcseUZBQXlGLENBQUM7UUFFeEg7OztXQUdHO1FBQ08sbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBSWhELHFCQUFnQixHQUFzQixFQUFFLENBQUM7UUFFekMsZUFBVSxHQUErQixJQUFJLENBQUM7SUFFSCxDQUFDO0lBRXBELGVBQWU7UUFDYixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsK0RBQStEO0lBQy9ELElBQUksY0FBYztRQUNoQixNQUFNLFdBQVcsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUMzQyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FB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UzsrQkFDRSxxQkFBcUIsbUJBRWQsdUJBQXVCLENBQUMsTUFBTTtnR0FHdEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBS0csV0FBVztzQkFBbkIsS0FBSztnQkFPRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBTUksY0FBYztzQkFBdkIsTUFBTTtnQkFFb0IsWUFBWTtzQkFBdEMsU0FBUzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQZG1UYWJsZVZhcmlhbnQgfSBmcm9tICcuL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVJlc3BvbnNpdmVTdHJhdGVneSB9IGZyb20gJ3BkbS11aS1raXQvc3JjL3V0aWxzJztcblxuLyoqXG4gKiBUYWJsYSBjb24gZnVuY2lvbmFsaWRhZCBkZSByZW9yZGVuYW1pZW50byBkZSBmaWxhcyBtZWRpYW50ZSBkcmFnICYgZHJvcFxuICogXG4gKiBFeHRpZW5kZSBwZG0tdGFibGUgYWdyZWdhbmRvIGxhIGNhcGFjaWRhZCBkZSByZW9yZGVuYXIgZmlsYXMuXG4gKiBTaSBubyBuZWNlc2l0w6FzIGRyYWcgJiBkcm9wLCB1c8OhIHBkbS10YWJsZSBkaXJlY3RhbWVudGUgKG3DoXMgc2ltcGxlIHkgbGl2aWFubykuXG4gKiBcbiAqIEBleGFtcGxlXG4gKiA8cGRtLWRyYWdnYWJsZS10YWJsZSBcbiAqICAgdmFyaWFudD1cImludGVyYWN0aXZlXCJcbiAqICAgW3Jlb3JkZXJSb3dzXT1cInRydWVcIlxuICogICAocm93T3JkZXJDaGFuZ2UpPVwib25PcmRlckNoYW5nZSgkZXZlbnQpXCI+XG4gKiAgIDx0Ym9keT5cbiAqICAgICA8dHIgZGF0YS1yb3ctaWQ9XCIxXCI+PHRkPlJvdyAxPC90ZD48L3RyPlxuICogICAgIDx0ciBkYXRhLXJvdy1pZD1cIjJcIj48dGQ+Um93IDI8L3RkPjwvdHI+XG4gKiAgIDwvdGJvZHk+XG4gKiA8L3BkbS1kcmFnZ2FibGUtdGFibGU+XG4gKiBcbiAqIElNUE9SVEFOVEU6IENhZGEgPHRyPiBkZWJlIHRlbmVyIHVuIGF0cmlidXRvIGRhdGEtcm93LWlkIMO6bmljb1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwZG0tZHJhZ2dhYmxlLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RyYWdnYWJsZS10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFBkbURyYWdnYWJsZVRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSB2YXJpYW50OiBQZG1UYWJsZVZhcmlhbnQgPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpIHJlc3BvbnNpdmVTdHJhdGVneTogVGFibGVSZXNwb25zaXZlU3RyYXRlZ3kgPSAnc2Nyb2xsJztcbiAgQElucHV0KCkgY2xhc3NOYW1lID0gJyc7XG4gIEBJbnB1dCgpIGZ1bGxCbGVlZCA9IGZhbHNlO1xuICBcbiAgLyoqXG4gICAqIEhhYmlsaXRhIGVsIHJlb3JkZW5hbWllbnRvIGRlIGZpbGFzIG1lZGlhbnRlIGRyYWcgJiBkcm9wXG4gICAqL1xuICBASW5wdXQoKSByZW9yZGVyUm93cyA9IGZhbHNlO1xuICBcbiAgLyoqXG4gICAqIFNlbGVjdG9yIENTUyBwYXJhIGlkZW50aWZpY2FyIGxvcyBoYW5kbGVzIGRlIGRyYWdcbiAgICogUG9yIGRlZmVjdG8gYnVzY2E6IFtkYXRhLWRyYWctaGFuZGxlXSwgW2RhdGEtc2xvdD1yb3ctZHJhZy1oYW5kbGVdLCAucm93LWRyYWctaGFuZGxlXG4gICAqIFNpIG5vIGVuY3VlbnRyYSBuaW5ndW5vLCBpbnNlcnRhIHVuIGhhbmRsZSBhdXRvbcOhdGljb1xuICAgKi9cbiAgQElucHV0KCkgZHJhZ0hhbmRsZVNlbGVjdG9yID0gJ1tkYXRhLWRyYWctaGFuZGxlXSxbZGF0YS1zbG90PXJvdy1kcmFnLWhhbmRsZV0sLnJvdy1kcmFnLWhhbmRsZSxbZGF0YS1hdXRvLWRyYWctaGFuZGxlXSc7XG4gIFxuICAvKipcbiAgICogRW1pdGUgZWwgbnVldm8gb3JkZW4gZGUgbGFzIGZpbGFzIGN1YW5kbyBlbCB1c3VhcmlvIHRlcm1pbmEgZGUgYXJyYXN0cmFyXG4gICAqIEFycmF5IGRlIGRhdGEtcm93LWlkIGVuIGVsIG51ZXZvIG9yZGVuXG4gICAqL1xuICBAT3V0cHV0KCkgcm93T3JkZXJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZ1tdPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlRWxlbWVudCcpIHRhYmxlRWxlbWVudD86IEVsZW1lbnRSZWY8SFRNTFRhYmxlRWxlbWVudD47XG5cbiAgcHJpdmF0ZSBjbGVhbnVwTGlzdGVuZXJzOiBBcnJheTwoKSA9PiB2b2lkPiA9IFtdO1xuICBwcml2YXRlIG9ic2VydmVyPzogTXV0YXRpb25PYnNlcnZlcjtcbiAgcHJpdmF0ZSBkcmFnZ2VkUm93OiBIVE1MVGFibGVSb3dFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN5bmNSZW9yZGVyQmVoYXZpb3IoKTtcbiAgfVxuXG4gIC8vIEdldHRlcnMgcGFyYSBjbGFzZXMgQ1NTIChtaXNtbyBjb21wb3J0YW1pZW50byBxdWUgcGRtLXRhYmxlKVxuICBnZXQgd3JhcHBlckNsYXNzZXMoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGJhc2VDbGFzc2VzID0gWydyZWxhdGl2ZScsICd3LWZ1bGwnXTtcbiAgICBjb25zdCBzdHJhdGVneUNsYXNzZXMgPSB0aGlzLmdldFJlc3BvbnNpdmVTdHJhdGVneUNsYXNzZXMoKTtcbiAgICBjb25zdCB2YXJpYW50Q2xhc3NlcyA9IHRoaXMuZ2V0VmFyaWFudFdyYXBwZXJDbGFzc2VzKCk7XG4gICAgXG4gICAgaWYgKHRoaXMuZnVsbEJsZWVkICYmIHRoaXMucmVzcG9uc2l2ZVN0cmF0ZWd5ID09PSAnc2Nyb2xsJykge1xuICAgICAgYmFzZUNsYXNzZXMucHVzaCgnLW14LTQnLCAncHgtNCcsICdzbTpteC0wJywgJ3NtOnB4LTAnKTtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIFtcbiAgICAgIC4uLmJhc2VDbGFzc2VzLFxuICAgICAgLi4uc3RyYXRlZ3lDbGFzc2VzLFxuICAgICAgLi4udmFyaWFudENsYXNzZXMsXG4gICAgICB0aGlzLmNsYXNzTmFtZVxuICAgIF0uZmlsdGVyKEJvb2xlYW4pO1xuICB9XG5cbiAgZ2V0IHRhYmxlQ2xhc3NlcygpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgYmFzZUNsYXNzZXMgPSBbJ3ctZnVsbCcsICdjYXB0aW9uLWJvdHRvbScsICd0ZXh0LXNtJ107XG4gICAgY29uc3QgdmFyaWFudENsYXNzZXMgPSB0aGlzLmdldFZhcmlhbnRUYWJsZUNsYXNzZXMoKTtcbiAgICBjb25zdCBjZWxsQ2xhc3NlcyA9IHRoaXMuZ2V0Q2VsbENsYXNzZXMoKTtcbiAgICBcbiAgICByZXR1cm4gWy4uLmJhc2VDbGFzc2VzLCAuLi52YXJpYW50Q2xhc3NlcywgLi4uY2VsbENsYXNzZXNdLmZpbHRlcihCb29sZWFuKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UmVzcG9uc2l2ZVN0cmF0ZWd5Q2xhc3NlcygpOiBzdHJpbmdbXSB7XG4gICAgaWYgKHRoaXMucmVzcG9uc2l2ZVN0cmF0ZWd5ID09PSAnc2Nyb2xsJyB8fCB0aGlzLnJlc3BvbnNpdmVTdHJhdGVneSA9PT0gJ3dyYXAnIHx8IHRoaXMucmVzcG9uc2l2ZVN0cmF0ZWd5ID09PSAnY29sbGFwc2UnKSB7XG4gICAgICByZXR1cm4gWydvdmVyZmxvdy14LWF1dG8nXTtcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRWYXJpYW50V3JhcHBlckNsYXNzZXMoKTogc3RyaW5nW10ge1xuICAgIGlmICh0aGlzLnZhcmlhbnQgPT09ICdpbnRlcmFjdGl2ZScpIHtcbiAgICAgIHJldHVybiBbJ3JvdW5kZWQteGwnLCAnYm9yZGVyIGJvcmRlci1zb2xpZCcsICdib3JkZXItYm9yZGVyJywgJ2JnLWJhY2tncm91bmQnXTtcbiAgICB9XG4gICAgaWYgKHRoaXMudmFyaWFudCA9PT0gJ2RhdGEnKSB7XG4gICAgICByZXR1cm4gWydyb3VuZGVkLW1kJywgJ2JvcmRlciBib3JkZXItc29saWQnLCAnYm9yZGVyLWJvcmRlcicsICdiZy1iYWNrZ3JvdW5kJ107XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFyaWFudFRhYmxlQ2xhc3NlcygpOiBzdHJpbmdbXSB7XG4gICAgaWYgKHRoaXMudmFyaWFudCA9PT0gJ2RhdGEnKSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICAnYm9yZGVyLWNvbGxhcHNlJywgJ3RleHQtZm9yZWdyb3VuZCcsXG4gICAgICAgICdbJl90aGVhZF90cl06Ym9yZGVyLWInLCAnWyZfdGhlYWRfdHJdOmJvcmRlci1ib3JkZXInLFxuICAgICAgICAnWyZfdGJvZHlfdHJdOmJvcmRlci1iJywgJ1smX3Rib2R5X3RyXTpib3JkZXItYm9yZGVyJyxcbiAgICAgICAgJ1smX3Rib2R5X3RyOmxhc3QtY2hpbGRdOmJvcmRlci1iLTAnLFxuICAgICAgICAnWyZfdGhdOmgtMTAnLCAnWyZfdGhdOnB4LTInLCAnWyZfdGhdOnRleHQtbGVmdCcsICdbJl90aF06YWxpZ24tbWlkZGxlJywgJ1smX3RoXTpmb250LW1lZGl1bScsXG4gICAgICAgICdbJl90ZF06cC0yJywgJ1smX3RkXTphbGlnbi1taWRkbGUnXG4gICAgICBdO1xuICAgIH1cbiAgICBcbiAgICBpZiAodGhpcy52YXJpYW50ID09PSAnaW50ZXJhY3RpdmUnKSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICAndGV4dC1mb3JlZ3JvdW5kJyxcbiAgICAgICAgJ1smX3RoZWFkXTpzdGlja3knLCAnWyZfdGhlYWRdOnRvcC0wJywgJ1smX3RoZWFkXTp6LTEwJywgJ1smX3RoZWFkXTpiZy1tdXRlZC83MCcsXG4gICAgICAgICdbJl90aGVhZF90cl06Ym9yZGVyLWInLCAnWyZfdGhlYWRfdHJdOmJvcmRlci1ib3JkZXInLFxuICAgICAgICAnWyZfdGhdOmgtMTInLCAnWyZfdGhdOnB4LTQnLCAnWyZfdGhdOnRleHQtbGVmdCcsICdbJl90aF06YWxpZ24tbWlkZGxlJywgJ1smX3RoXTp0ZXh0LXNtJywgJ1smX3RoXTpmb250LW1lZGl1bScsXG4gICAgICAgICdbJl90Ym9keV90cl06Ym9yZGVyLWInLCAnWyZfdGJvZHlfdHJdOmJvcmRlci1ib3JkZXInLFxuICAgICAgICAnWyZfdGJvZHlfdHJdOnRyYW5zaXRpb24tY29sb3JzJywgJ1smX3Rib2R5X3RyOmhvdmVyXTpiZy1tdXRlZC81MCcsXG4gICAgICAgICdbJl90Ym9keV90cjpsYXN0LWNoaWxkXTpib3JkZXItYi0wJyxcbiAgICAgICAgJ1smX3RkXTpoLTE0JywgJ1smX3RkXTpweC00JywgJ1smX3RkXTphbGlnbi1taWRkbGUnLCAnWyZfdGRdOnRleHQtc20nLFxuICAgICAgICAnWyZfc3ZnXTp0ZXh0LW11dGVkLWZvcmVncm91bmQnXG4gICAgICBdO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gW107XG4gIH1cblxuICBwcml2YXRlIGdldENlbGxDbGFzc2VzKCk6IHN0cmluZ1tdIHtcbiAgICBpZiAodGhpcy5yZXNwb25zaXZlU3RyYXRlZ3kgPT09ICdzY3JvbGwnKSB7XG4gICAgICByZXR1cm4gWydbJl90ZF06d2hpdGVzcGFjZS1ub3JtYWwnLCAnWyZfdGhdOndoaXRlc3BhY2Utbm9ybWFsJywgJ3NtOlsmX3RkXTp3aGl0ZXNwYWNlLW5vd3JhcCcsICdzbTpbJl90aF06d2hpdGVzcGFjZS1ub3dyYXAnXTtcbiAgICB9XG4gICAgaWYgKHRoaXMucmVzcG9uc2l2ZVN0cmF0ZWd5ID09PSAnd3JhcCcpIHtcbiAgICAgIHJldHVybiBbJ1smX3RkXTp3aGl0ZXNwYWNlLW5vcm1hbCcsICdbJl90ZF06YnJlYWstd29yZHMnLCAnWyZfdGhdOndoaXRlc3BhY2Utbm9ybWFsJ107XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1sncmVvcmRlclJvd3MnXSB8fCBjaGFuZ2VzWyd2YXJpYW50J10pIHtcbiAgICAgIHRoaXMuc3luY1Jlb3JkZXJCZWhhdmlvcigpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYW51cFJlb3JkZXJCZWhhdmlvcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBzeW5jUmVvcmRlckJlaGF2aW9yKCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYW51cFJlb3JkZXJCZWhhdmlvcigpO1xuXG4gICAgaWYgKCF0aGlzLnJlb3JkZXJSb3dzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdGJvZHkgPSB0aGlzLmdldFRib2R5KCk7XG4gICAgaWYgKCF0Ym9keSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2V0Um93c0RyYWdnYWJsZSh0Ym9keSwgdHJ1ZSk7XG5cbiAgICB0aGlzLmNsZWFudXBMaXN0ZW5lcnMucHVzaChcbiAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKHRib2R5LCAnbW91c2Vkb3duJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB0aGlzLmFybURyYWdGcm9tSGFuZGxlKGV2ZW50KSksXG4gICAgICB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0Ym9keSwgJ2RyYWdzdGFydCcsIChldmVudDogRHJhZ0V2ZW50KSA9PiB0aGlzLm9uRHJhZ1N0YXJ0KGV2ZW50KSksXG4gICAgICB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0Ym9keSwgJ2RyYWdvdmVyJywgKGV2ZW50OiBEcmFnRXZlbnQpID0+IHRoaXMub25EcmFnT3ZlcihldmVudCwgdGJvZHkpKSxcbiAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKHRib2R5LCAnZHJvcCcsIChldmVudDogRHJhZ0V2ZW50KSA9PiB0aGlzLm9uRHJvcChldmVudCkpLFxuICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4odGJvZHksICdkcmFnZW5kJywgKCkgPT4gdGhpcy5vbkRyYWdFbmQoKSlcbiAgICApO1xuXG4gICAgLy8gT2JzZXJ2ZXIgcGFyYSBkZXRlY3RhciBjYW1iaW9zIGVuIGVsIERPTSAoZmlsYXMgYWdyZWdhZGFzL3JlbW92aWRhcylcbiAgICB0aGlzLm9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCkgPT4gdGhpcy5zZXRSb3dzRHJhZ2dhYmxlKHRib2R5LCB0cnVlKSk7XG4gICAgdGhpcy5vYnNlcnZlci5vYnNlcnZlKHRib2R5LCB7IGNoaWxkTGlzdDogdHJ1ZSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYW51cFJlb3JkZXJCZWhhdmlvcigpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFudXBMaXN0ZW5lcnMuZm9yRWFjaCgoZGlzcG9zZSkgPT4gZGlzcG9zZSgpKTtcbiAgICB0aGlzLmNsZWFudXBMaXN0ZW5lcnMgPSBbXTtcblxuICAgIGlmICh0aGlzLm9ic2VydmVyKSB7XG4gICAgICB0aGlzLm9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICAgIHRoaXMub2JzZXJ2ZXIgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgY29uc3QgdGJvZHkgPSB0aGlzLmdldFRib2R5KCk7XG4gICAgaWYgKHRib2R5KSB7XG4gICAgICB0aGlzLnNldFJvd3NEcmFnZ2FibGUodGJvZHksIGZhbHNlKTtcbiAgICB9XG5cbiAgICB0aGlzLmRyYWdnZWRSb3cgPSBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUYm9keSgpOiBIVE1MVGFibGVTZWN0aW9uRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnRhYmxlRWxlbWVudD8ubmF0aXZlRWxlbWVudC50Qm9kaWVzLml0ZW0oMCkgPz8gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Um93c0RyYWdnYWJsZSh0Ym9keTogSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQsIGVuYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCByb3dzID0gQXJyYXkuZnJvbSh0Ym9keS5yb3dzKTtcbiAgICByb3dzLmZvckVhY2goKHJvdykgPT4ge1xuICAgICAgdGhpcy5zeW5jQXV0b0RyYWdIYW5kbGUocm93LCBlbmFibGVkKTtcbiAgICAgIHJvdy5kcmFnZ2FibGUgPSBmYWxzZTtcbiAgICAgIGlmICghZW5hYmxlZCkge1xuICAgICAgICBkZWxldGUgcm93LmRhdGFzZXRbJ2RyYWdnaW5nJ107XG4gICAgICAgIGRlbGV0ZSByb3cuZGF0YXNldFsnZHJhZ0FybWVkJ107XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW5zZXJ0YSB1biBoYW5kbGUgZGUgZHJhZyBhdXRvbcOhdGljbyBzaSBubyBleGlzdGUgdW5vIGN1c3RvbVxuICAgKi9cbiAgcHJpdmF0ZSBzeW5jQXV0b0RyYWdIYW5kbGUocm93OiBIVE1MVGFibGVSb3dFbGVtZW50LCBlbmFibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgY29uc3QgZmlyc3RDZWxsID0gcm93LmNlbGxzLml0ZW0oMCk7XG4gICAgaWYgKCFmaXJzdENlbGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBleGlzdGluZ0F1dG9IYW5kbGUgPSBmaXJzdENlbGwucXVlcnlTZWxlY3RvcignW2RhdGEtYXV0by1kcmFnLWhhbmRsZV0nKTtcbiAgICBpZiAoIWVuYWJsZWQpIHtcbiAgICAgIGV4aXN0aW5nQXV0b0hhbmRsZT8ucmVtb3ZlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgaGFzQ3VzdG9tSGFuZGxlID0gISFmaXJzdENlbGwucXVlcnlTZWxlY3RvcignW2RhdGEtZHJhZy1oYW5kbGVdLFtkYXRhLXNsb3Q9cm93LWRyYWctaGFuZGxlXSwucm93LWRyYWctaGFuZGxlJyk7XG4gICAgaWYgKGhhc0N1c3RvbUhhbmRsZSB8fCBleGlzdGluZ0F1dG9IYW5kbGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBDcmVhciBoYW5kbGUgYXV0b23DoXRpY29cbiAgICBjb25zdCBidXR0b24gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2J1dHRvbicpIGFzIEhUTUxCdXR0b25FbGVtZW50O1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGJ1dHRvbiwgJ3R5cGUnLCAnYnV0dG9uJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoYnV0dG9uLCAnYXJpYS1sYWJlbCcsICdEcmFnIHJvdycpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGJ1dHRvbiwgJ2RhdGEtYXV0by1kcmFnLWhhbmRsZScsICd0cnVlJyk7XG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhidXR0b24sICdpbmxpbmUtZmxleCcpO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoYnV0dG9uLCAnaC03Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhidXR0b24sICd3LTcnKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGJ1dHRvbiwgJ2l0ZW1zLWNlbnRlcicpO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoYnV0dG9uLCAnanVzdGlmeS1jZW50ZXInKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGJ1dHRvbiwgJ2N1cnNvci1ncmFiJyk7XG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhidXR0b24sICdhY3RpdmU6Y3Vyc29yLWdyYWJiaW5nJyk7XG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhidXR0b24sICd0ZXh0LW11dGVkLWZvcmVncm91bmQnKTtcblxuICAgIGNvbnN0IGRvdHMgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGRvdHMsICd0ZXh0LXNtJyk7XG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhkb3RzLCAnbGVhZGluZy1ub25lJyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eShkb3RzLCAndGV4dENvbnRlbnQnLCAn4ouu4ouuJyk7XG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChidXR0b24sIGRvdHMpO1xuXG4gICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUoZmlyc3RDZWxsLCBidXR0b24sIGZpcnN0Q2VsbC5maXJzdENoaWxkKTtcbiAgfVxuXG4gIHByaXZhdGUgb25EcmFnU3RhcnQoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgY29uc3Qgcm93ID0gdGFyZ2V0Py5jbG9zZXN0KCd0cicpO1xuICAgIGlmICghcm93KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgaGFuZGxlID0gdGFyZ2V0Py5jbG9zZXN0KHRoaXMuZHJhZ0hhbmRsZVNlbGVjdG9yKTtcbiAgICBjb25zdCBpc0FybWVkID0gcm93LmRhdGFzZXRbJ2RyYWdBcm1lZCddID09PSAndHJ1ZSc7XG4gICAgaWYgKCghaGFuZGxlIHx8ICFyb3cuY29udGFpbnMoaGFuZGxlKSkgJiYgIWlzQXJtZWQpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5kcmFnZ2VkUm93ID0gcm93IGFzIEhUTUxUYWJsZVJvd0VsZW1lbnQ7XG4gICAgdGhpcy5kcmFnZ2VkUm93LmRhdGFzZXRbJ2RyYWdnaW5nJ10gPSAndHJ1ZSc7XG5cbiAgICBpZiAoZXZlbnQuZGF0YVRyYW5zZmVyKSB7XG4gICAgICBldmVudC5kYXRhVHJhbnNmZXIuZWZmZWN0QWxsb3dlZCA9ICdtb3ZlJztcbiAgICAgIGV2ZW50LmRhdGFUcmFuc2Zlci5zZXREYXRhKCd0ZXh0L3BsYWluJywgJycpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25EcmFnT3ZlcihldmVudDogRHJhZ0V2ZW50LCB0Ym9keTogSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZHJhZ2dlZFJvdykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50IHwgbnVsbDtcbiAgICBjb25zdCB0YXJnZXRSb3cgPSB0YXJnZXQ/LmNsb3Nlc3QoJ3RyJykgYXMgSFRNTFRhYmxlUm93RWxlbWVudCB8IG51bGw7XG5cbiAgICBpZiAoIXRhcmdldFJvdyB8fCB0YXJnZXRSb3cgPT09IHRoaXMuZHJhZ2dlZFJvdykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHJlY3QgPSB0YXJnZXRSb3cuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3Qgc2hvdWxkSW5zZXJ0QmVmb3JlID0gZXZlbnQuY2xpZW50WSA8IHJlY3QudG9wICsgcmVjdC5oZWlnaHQgLyAyO1xuICAgIHRib2R5Lmluc2VydEJlZm9yZSh0aGlzLmRyYWdnZWRSb3csIHNob3VsZEluc2VydEJlZm9yZSA/IHRhcmdldFJvdyA6IHRhcmdldFJvdy5uZXh0U2libGluZyk7XG4gIH1cblxuICBwcml2YXRlIG9uRHJvcChldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgb25EcmFnRW5kKCk6IHZvaWQge1xuICAgIGNvbnN0IHRib2R5ID0gdGhpcy5nZXRUYm9keSgpO1xuICAgIGlmICh0Ym9keSkge1xuICAgICAgQXJyYXkuZnJvbSh0Ym9keS5yb3dzKS5mb3JFYWNoKChyb3cpID0+IHtcbiAgICAgICAgcm93LmRyYWdnYWJsZSA9IGZhbHNlO1xuICAgICAgICBkZWxldGUgcm93LmRhdGFzZXRbJ2RyYWdBcm1lZCddO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZHJhZ2dlZFJvdykge1xuICAgICAgZGVsZXRlIHRoaXMuZHJhZ2dlZFJvdy5kYXRhc2V0WydkcmFnZ2luZyddO1xuICAgICAgdGhpcy5kcmFnZ2VkUm93ID0gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoIXRib2R5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgb3JkZXIgPSBBcnJheS5mcm9tKHRib2R5LnJvd3MpLm1hcCgocm93LCBpbmRleCkgPT4gcm93LmdldEF0dHJpYnV0ZSgnZGF0YS1yb3ctaWQnKSB8fCBTdHJpbmcoaW5kZXgpKTtcbiAgICB0aGlzLnJvd09yZGVyQ2hhbmdlLmVtaXQob3JkZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBhcm1EcmFnRnJvbUhhbmRsZShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgY29uc3QgaGFuZGxlID0gdGFyZ2V0Py5jbG9zZXN0KHRoaXMuZHJhZ0hhbmRsZVNlbGVjdG9yKTtcbiAgICBpZiAoIWhhbmRsZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHJvdyA9IGhhbmRsZS5jbG9zZXN0KCd0cicpIGFzIEhUTUxUYWJsZVJvd0VsZW1lbnQgfCBudWxsO1xuICAgIGlmICghcm93KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcm93LmRyYWdnYWJsZSA9IHRydWU7XG4gICAgcm93LmRhdGFzZXRbJ2RyYWdBcm1lZCddID0gJ3RydWUnO1xuICB9XG59XG4iLCI8ZGl2IFtuZ0NsYXNzXT1cIndyYXBwZXJDbGFzc2VzXCIgW2F0dHIuZGF0YS1zbG90XT1cInZhcmlhbnQgPT09ICdpbnRlcmFjdGl2ZScgPyAndGFibGUtY29udGFpbmVyJyA6IG51bGxcIj5cbiAgPHRhYmxlICN0YWJsZUVsZW1lbnQgW25nQ2xhc3NdPVwidGFibGVDbGFzc2VzXCIgW2F0dHIuZGF0YS1zbG90XT1cInZhcmlhbnQgPT09ICdpbnRlcmFjdGl2ZScgPyAndGFibGUnIDogbnVsbFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC90YWJsZT5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRtLXVpLWtpdC1zcmMtZGF0YS10YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRhLXRhYmxlL3BkbS11aS1raXQtc3JjLWRhdGEtdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from "./data-table.component";
|
|
2
|
+
export * from "./draggable-table.component";
|
|
3
|
+
export * from "./table.component";
|
|
4
|
+
export * from "./data-table.module";
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRhLXRhYmxlL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2RhdGEtdGFibGUuY29tcG9uZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9kcmFnZ2FibGUtdGFibGUuY29tcG9uZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi90YWJsZS5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2RhdGEtdGFibGUubW9kdWxlXCI7XG4iXX0=
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from "@angular/core";
|
|
2
|
+
import { TABLE_RESPONSIVE, } from "pdm-ui-kit/src/utils";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
/**
|
|
6
|
+
* Componente base de tabla con soporte responsive
|
|
7
|
+
*
|
|
8
|
+
* SIMPLIFICADO: Ya no incluye drag & drop (usar pdm-draggable-table para eso)
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* // Tabla simple con scroll horizontal
|
|
12
|
+
* <pdm-table variant="default">
|
|
13
|
+
* <thead><tr><th>Name</th><th>Email</th></tr></thead>
|
|
14
|
+
* <tbody><tr><td>John</td><td>john@example.com</td></tr></tbody>
|
|
15
|
+
* </pdm-table>
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* // Tabla interactiva con wrap en mobile
|
|
19
|
+
* <pdm-table variant="interactive" responsiveStrategy="wrap">
|
|
20
|
+
* ...
|
|
21
|
+
* </pdm-table>
|
|
22
|
+
*/
|
|
23
|
+
export class PdmTableComponent {
|
|
24
|
+
constructor() {
|
|
25
|
+
/**
|
|
26
|
+
* Variante visual de la tabla
|
|
27
|
+
* - default: tabla básica sin estilos extra
|
|
28
|
+
* - data: tabla con bordes y espaciado para data
|
|
29
|
+
* - interactive: tabla con hover, sticky header y estilos interactivos
|
|
30
|
+
*/
|
|
31
|
+
this.variant = "default";
|
|
32
|
+
/**
|
|
33
|
+
* Estrategia responsive para la tabla
|
|
34
|
+
* - scroll: scroll horizontal en mobile (default, más simple)
|
|
35
|
+
* - wrap: permite que el contenido haga wrap
|
|
36
|
+
* - stack: convierte filas en cards en mobile (requiere data-label en celdas)
|
|
37
|
+
* - collapse: oculta columnas menos importantes en mobile
|
|
38
|
+
*/
|
|
39
|
+
this.responsiveStrategy = "scroll";
|
|
40
|
+
/**
|
|
41
|
+
* Clases CSS adicionales para el wrapper
|
|
42
|
+
*/
|
|
43
|
+
this.className = "";
|
|
44
|
+
/**
|
|
45
|
+
* Si es true, aplica padding negativo en mobile para scroll edge-to-edge
|
|
46
|
+
* Útil cuando la tabla está dentro de un container con padding
|
|
47
|
+
*/
|
|
48
|
+
this.fullBleed = false;
|
|
49
|
+
}
|
|
50
|
+
get wrapperClasses() {
|
|
51
|
+
const baseClasses = ["relative", "w-full"];
|
|
52
|
+
const strategyClasses = this.getResponsiveStrategyClasses();
|
|
53
|
+
const variantClasses = this.getVariantWrapperClasses();
|
|
54
|
+
// Full bleed: scroll edge-to-edge en mobile
|
|
55
|
+
if (this.fullBleed && this.responsiveStrategy === "scroll") {
|
|
56
|
+
baseClasses.push("-mx-4", "px-4", "sm:mx-0", "sm:px-0");
|
|
57
|
+
}
|
|
58
|
+
return [
|
|
59
|
+
...baseClasses,
|
|
60
|
+
...strategyClasses,
|
|
61
|
+
...variantClasses,
|
|
62
|
+
this.className,
|
|
63
|
+
].filter(Boolean);
|
|
64
|
+
}
|
|
65
|
+
get tableClasses() {
|
|
66
|
+
const baseClasses = ["w-full", "caption-bottom", "text-sm"];
|
|
67
|
+
const variantClasses = this.getVariantTableClasses();
|
|
68
|
+
const cellClasses = this.getCellClasses();
|
|
69
|
+
return [...baseClasses, ...variantClasses, ...cellClasses].filter(Boolean);
|
|
70
|
+
}
|
|
71
|
+
getResponsiveStrategyClasses() {
|
|
72
|
+
const strategy = TABLE_RESPONSIVE[this.responsiveStrategy];
|
|
73
|
+
if (this.responsiveStrategy === "scroll") {
|
|
74
|
+
return ["overflow-x-auto"];
|
|
75
|
+
}
|
|
76
|
+
if (this.responsiveStrategy === "wrap") {
|
|
77
|
+
return ["overflow-x-auto"];
|
|
78
|
+
}
|
|
79
|
+
if (this.responsiveStrategy === "stack") {
|
|
80
|
+
// Stack requiere lógica en el template, aquí solo el wrapper
|
|
81
|
+
return [];
|
|
82
|
+
}
|
|
83
|
+
if (this.responsiveStrategy === "collapse") {
|
|
84
|
+
return ["overflow-x-auto"];
|
|
85
|
+
}
|
|
86
|
+
return ["overflow-auto"];
|
|
87
|
+
}
|
|
88
|
+
getVariantWrapperClasses() {
|
|
89
|
+
if (this.variant === "interactive") {
|
|
90
|
+
return ["rounded-xl", "border border-solid", "border-border", "bg-background"];
|
|
91
|
+
}
|
|
92
|
+
if (this.variant === "data") {
|
|
93
|
+
return ["rounded-md", "border border-solid", "border-border", "bg-background"];
|
|
94
|
+
}
|
|
95
|
+
return [];
|
|
96
|
+
}
|
|
97
|
+
getVariantTableClasses() {
|
|
98
|
+
if (this.variant === "data") {
|
|
99
|
+
return [
|
|
100
|
+
"border-collapse",
|
|
101
|
+
"text-foreground",
|
|
102
|
+
"[&_thead_tr]:border-b",
|
|
103
|
+
"[&_thead_tr]:border-border",
|
|
104
|
+
"[&_tbody_tr]:border-b",
|
|
105
|
+
"[&_tbody_tr]:border-border",
|
|
106
|
+
"[&_tbody_tr:last-child]:border-b-0",
|
|
107
|
+
"[&_th]:h-10",
|
|
108
|
+
"[&_th]:px-2",
|
|
109
|
+
"[&_th]:text-left",
|
|
110
|
+
"[&_th]:align-middle",
|
|
111
|
+
"[&_th]:font-medium",
|
|
112
|
+
"[&_td]:p-2",
|
|
113
|
+
"[&_td]:align-middle",
|
|
114
|
+
];
|
|
115
|
+
}
|
|
116
|
+
if (this.variant === "interactive") {
|
|
117
|
+
return [
|
|
118
|
+
"text-foreground",
|
|
119
|
+
"[&_thead]:sticky",
|
|
120
|
+
"[&_thead]:top-0",
|
|
121
|
+
"[&_thead]:z-10",
|
|
122
|
+
"[&_thead]:bg-muted/70",
|
|
123
|
+
"[&_thead_tr]:border-b",
|
|
124
|
+
"[&_thead_tr]:border-border",
|
|
125
|
+
"[&_th]:h-12",
|
|
126
|
+
"[&_th]:px-4",
|
|
127
|
+
"[&_th]:text-left",
|
|
128
|
+
"[&_th]:align-middle",
|
|
129
|
+
"[&_th]:text-sm",
|
|
130
|
+
"[&_th]:font-medium",
|
|
131
|
+
"[&_tbody_tr]:border-b",
|
|
132
|
+
"[&_tbody_tr]:border-border",
|
|
133
|
+
"[&_tbody_tr]:transition-colors",
|
|
134
|
+
"[&_tbody_tr:hover]:bg-muted/50",
|
|
135
|
+
"[&_tbody_tr:last-child]:border-b-0",
|
|
136
|
+
"[&_td]:h-14",
|
|
137
|
+
"[&_td]:px-4",
|
|
138
|
+
"[&_td]:align-middle",
|
|
139
|
+
"[&_td]:text-sm",
|
|
140
|
+
"[&_svg]:text-muted-foreground",
|
|
141
|
+
];
|
|
142
|
+
}
|
|
143
|
+
return [];
|
|
144
|
+
}
|
|
145
|
+
getCellClasses() {
|
|
146
|
+
// Manejo responsive de whitespace
|
|
147
|
+
if (this.responsiveStrategy === "scroll") {
|
|
148
|
+
// En scroll, permitir wrap en mobile, nowrap en desktop
|
|
149
|
+
return [
|
|
150
|
+
"[&_td]:whitespace-normal",
|
|
151
|
+
"[&_th]:whitespace-normal",
|
|
152
|
+
"sm:[&_td]:whitespace-nowrap",
|
|
153
|
+
"sm:[&_th]:whitespace-nowrap",
|
|
154
|
+
];
|
|
155
|
+
}
|
|
156
|
+
if (this.responsiveStrategy === "wrap") {
|
|
157
|
+
// En wrap, siempre permitir wrap
|
|
158
|
+
return [
|
|
159
|
+
"[&_td]:whitespace-normal",
|
|
160
|
+
"[&_td]:break-words",
|
|
161
|
+
"[&_th]:whitespace-normal",
|
|
162
|
+
];
|
|
163
|
+
}
|
|
164
|
+
// Default: nowrap (comportamiento anterior para backward compatibility)
|
|
165
|
+
return [];
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
PdmTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
169
|
+
PdmTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PdmTableComponent, selector: "pdm-table", inputs: { variant: "variant", responsiveStrategy: "responsiveStrategy", className: "className", fullBleed: "fullBleed" }, ngImport: i0, template: "<div [ngClass]=\"wrapperClasses\" [attr.data-slot]=\"variant === 'interactive' ? 'table-container' : null\">\n <table #tableElement [ngClass]=\"tableClasses\" [attr.data-slot]=\"variant === 'interactive' ? 'table' : null\">\n <ng-content></ng-content>\n </table>\n</div>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
170
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PdmTableComponent, decorators: [{
|
|
171
|
+
type: Component,
|
|
172
|
+
args: [{ selector: "pdm-table", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"wrapperClasses\" [attr.data-slot]=\"variant === 'interactive' ? 'table-container' : null\">\n <table #tableElement [ngClass]=\"tableClasses\" [attr.data-slot]=\"variant === 'interactive' ? 'table' : null\">\n <ng-content></ng-content>\n </table>\n</div>\n", styles: [":host{display:block}\n"] }]
|
|
173
|
+
}], propDecorators: { variant: [{
|
|
174
|
+
type: Input
|
|
175
|
+
}], responsiveStrategy: [{
|
|
176
|
+
type: Input
|
|
177
|
+
}], className: [{
|
|
178
|
+
type: Input
|
|
179
|
+
}], fullBleed: [{
|
|
180
|
+
type: Input
|
|
181
|
+
}] } });
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGEtdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGEtdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUVOLGdCQUFnQixHQUNoQixNQUFNLHNCQUFzQixDQUFDOzs7QUFJOUI7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJHO0FBT0gsTUFBTSxPQUFPLGlCQUFpQjtJQU45QjtRQU9DOzs7OztXQUtHO1FBQ00sWUFBTyxHQUFvQixTQUFTLENBQUM7UUFFOUM7Ozs7OztXQU1HO1FBQ00sdUJBQWtCLEdBQTRCLFFBQVEsQ0FBQztRQUVoRTs7V0FFRztRQUNNLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFFeEI7OztXQUdHO1FBQ00sY0FBUyxHQUFHLEtBQUssQ0FBQztLQTBJM0I7SUF4SUEsSUFBSSxjQUFjO1FBQ2pCLE1BQU0sV0FBVyxHQUFHLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzNDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO1FBQzVELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBRXZELDRDQUE0QztRQUM1QyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLGtCQUFrQixLQUFLLFFBQVEsRUFBRTtZQUMzRCxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQ3hEO1FBRUQsT0FBTztZQUNOLEdBQUcsV0FBVztZQUNkLEdBQUcsZUFBZTtZQUNsQixHQUFHLGNBQWM7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O2dCQUNOLDBCQUEwQjtnQkFDMUIsMEJBQTBCO2dCQUMxQiw2QkFBNkI7Z0JBQzdCLDZCQUE2QjthQUM3QixDQUFDO1NBQ0Y7UUFFRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsS0FBSyxNQUFNLEVBQUU7WUFDdkMsaUNBQWlDO1lBQ2pDLE9BQU87Z0JBQ04sMEJBQTBCO2dCQUMxQixvQkFBb0I7Z0JBQ3BCLDBCQUEwQjthQUMxQixDQUFDO1NBQ0Y7UUFFRCx3RUFBd0U7UUFDeEUsT0FBTyxFQUFFLENBQUM7SUFDWCxDQUFDOzs4R0FwS1csaUJBQWlCO2tHQUFqQixpQkFBaUIsMktDaEM5Qix1UkFLQTsyRkQyQmEsaUJBQWlCO2tCQU43QixTQUFTOytCQUNDLFdBQVcsbUJBR0osdUJBQXVCLENBQUMsTUFBTTs4QkFTdEMsT0FBTztzQkFBZixLQUFLO2dCQVNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFLRyxTQUFTO3NCQUFqQixLQUFLO2dCQU1HLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge1xuXHR0eXBlIFRhYmxlUmVzcG9uc2l2ZVN0cmF0ZWd5LFxuXHRUQUJMRV9SRVNQT05TSVZFLFxufSBmcm9tIFwicGRtLXVpLWtpdC9zcmMvdXRpbHNcIjtcblxuZXhwb3J0IHR5cGUgUGRtVGFibGVWYXJpYW50ID0gXCJkZWZhdWx0XCIgfCBcImRhdGFcIiB8IFwiaW50ZXJhY3RpdmVcIjtcblxuLyoqXG4gKiBDb21wb25lbnRlIGJhc2UgZGUgdGFibGEgY29uIHNvcG9ydGUgcmVzcG9uc2l2ZVxuICpcbiAqIFNJTVBMSUZJQ0FETzogWWEgbm8gaW5jbHV5ZSBkcmFnICYgZHJvcCAodXNhciBwZG0tZHJhZ2dhYmxlLXRhYmxlIHBhcmEgZXNvKVxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBUYWJsYSBzaW1wbGUgY29uIHNjcm9sbCBob3Jpem9udGFsXG4gKiA8cGRtLXRhYmxlIHZhcmlhbnQ9XCJkZWZhdWx0XCI+XG4gKiAgIDx0aGVhZD48dHI+PHRoPk5hbWU8L3RoPjx0aD5FbWFpbDwvdGg+PC90cj48L3RoZWFkPlxuICogICA8dGJvZHk+PHRyPjx0ZD5Kb2huPC90ZD48dGQ+am9obkBleGFtcGxlLmNvbTwvdGQ+PC90cj48L3Rib2R5PlxuICogPC9wZG0tdGFibGU+XG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIFRhYmxhIGludGVyYWN0aXZhIGNvbiB3cmFwIGVuIG1vYmlsZVxuICogPHBkbS10YWJsZSB2YXJpYW50PVwiaW50ZXJhY3RpdmVcIiByZXNwb25zaXZlU3RyYXRlZ3k9XCJ3cmFwXCI+XG4gKiAgIC4uLlxuICogPC9wZG0tdGFibGU+XG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJwZG0tdGFibGVcIixcblx0dGVtcGxhdGVVcmw6IFwiLi90YWJsZS5jb21wb25lbnQuaHRtbFwiLFxuXHRzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogYmxvY2s7IH1cIl0sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBQZG1UYWJsZUNvbXBvbmVudCB7XG5cdC8qKlxuXHQgKiBWYXJpYW50ZSB2aXN1YWwgZGUgbGEgdGFibGFcblx0ICogLSBkZWZhdWx0OiB0YWJsYSBiw6FzaWNhIHNpbiBlc3RpbG9zIGV4dHJhXG5cdCAqIC0gZGF0YTogdGFibGEgY29uIGJvcmRlcyB5IGVzcGFjaWFkbyBwYXJhIGRhdGFcblx0ICogLSBpbnRlcmFjdGl2ZTogdGFibGEgY29uIGhvdmVyLCBzdGlja3kgaGVhZGVyIHkgZXN0aWxvcyBpbnRlcmFjdGl2b3Ncblx0ICovXG5cdEBJbnB1dCgpIHZhcmlhbnQ6IFBkbVRhYmxlVmFyaWFudCA9IFwiZGVmYXVsdFwiO1xuXG5cdC8qKlxuXHQgKiBFc3RyYXRlZ2lhIHJlc3BvbnNpdmUgcGFyYSBsYSB0YWJsYVxuXHQgKiAtIHNjcm9sbDogc2Nyb2xsIGhvcml6b250YWwgZW4gbW9iaWxlIChkZWZhdWx0LCBtw6FzIHNpbXBsZSlcblx0ICogLSB3cmFwOiBwZXJtaXRlIHF1ZSBlbCBjb250ZW5pZG8gaGFnYSB3cmFwXG5cdCAqIC0gc3RhY2s6IGNvbnZpZXJ0ZSBmaWxhcyBlbiBjYXJkcyBlbiBtb2JpbGUgKHJlcXVpZXJlIGRhdGEtbGFiZWwgZW4gY2VsZGFzKVxuXHQgKiAtIGNvbGxhcHNlOiBvY3VsdGEgY29sdW1uYXMgbWVub3MgaW1wb3J0YW50ZXMgZW4gbW9iaWxlXG5cdCAqL1xuXHRASW5wdXQoKSByZXNwb25zaXZlU3RyYXRlZ3k6IFRhYmxlUmVzcG9uc2l2ZVN0cmF0ZWd5ID0gXCJzY3JvbGxcIjtcblxuXHQvKipcblx0ICogQ2xhc2VzIENTUyBhZGljaW9uYWxlcyBwYXJhIGVsIHdyYXBwZXJcblx0ICovXG5cdEBJbnB1dCgpIGNsYXNzTmFtZSA9IFwiXCI7XG5cblx0LyoqXG5cdCAqIFNpIGVzIHRydWUsIGFwbGljYSBwYWRkaW5nIG5lZ2F0aXZvIGVuIG1vYmlsZSBwYXJhIHNjcm9sbCBlZGdlLXRvLWVkZ2Vcblx0ICogw5p0aWwgY3VhbmRvIGxhIHRhYmxhIGVzdMOhIGRlbnRybyBkZSB1biBjb250YWluZXIgY29uIHBhZGRpbmdcblx0ICovXG5cdEBJbnB1dCgpIGZ1bGxCbGVlZCA9IGZhbHNlO1xuXG5cdGdldCB3cmFwcGVyQ2xhc3NlcygpOiBzdHJpbmdbXSB7XG5cdFx0Y29uc3QgYmFzZUNsYXNzZXMgPSBbXCJyZWxhdGl2ZVwiLCBcInctZnVsbFwiXTtcblx0XHRjb25zdCBzdHJhdGVneUNsYXNzZXMgPSB0aGlzLmdldFJlc3BvbnNpdmVTdHJhdGVneUNsYXNzZXMoKTtcblx0XHRjb25zdCB2YXJpYW50Q2xhc3NlcyA9IHRoaXMuZ2V0VmFyaWFudFdyYXBwZXJDbGFzc2VzKCk7XG5cblx0XHQvLyBGdWxsIGJsZWVkOiBzY3JvbGwgZWRnZS10by1lZGdlIGVuIG1vYmlsZVxuXHRcdGlmICh0aGlzLmZ1bGxCbGVlZCAmJiB0aGlzLnJlc3BvbnNpdmVTdHJhdGVneSA9PT0gXCJzY3JvbGxcIikge1xuXHRcdFx0YmFzZUNsYXNzZXMucHVzaChcIi1teC00XCIsIFwicHgtNFwiLCBcInNtOm14LTBcIiwgXCJzbTpweC0wXCIpO1xuXHRcdH1cblxuXHRcdHJldHVybiBbXG5cdFx0XHQuLi5iYXNlQ2xhc3Nlcyxcblx0XHRcdC4uLnN0cmF0ZWd5Q2xhc3Nlcyxcblx0XHRcdC4uLnZhcmlhbnRDbGFzc2VzLFxuXHRcdFx0dGhpcy5jbGFzc05hbWUsXG5cdFx0XS5maWx0ZXIoQm9vbGVhbik7XG5cdH1cblxuXHRnZXQgdGFibGVDbGFzc2VzKCk6IHN0cmluZ1tdIHtcblx0XHRjb25zdCBiYXNlQ2xhc3NlcyA9IFtcInctZnVsbFwiLCBcImNhcHRpb24tYm90dG9tXCIsIFwidGV4dC1zbVwiXTtcblx0XHRjb25zdCB2YXJpYW50Q2xhc3NlcyA9IHRoaXMuZ2V0VmFyaWFudFRhYmxlQ2xhc3NlcygpO1xuXHRcdGNvbnN0IGNlbGxDbGFzc2VzID0gdGhpcy5nZXRDZWxsQ2xhc3NlcygpO1xuXG5cdFx0cmV0dXJuIFsuLi5iYXNlQ2xhc3NlcywgLi4udmFyaWFudENsYXNzZXMsIC4uLmNlbGxDbGFzc2VzXS5maWx0ZXIoQm9vbGVhbik7XG5cdH1cblxuXHRwcml2YXRlIGdldFJlc3BvbnNpdmVTdHJhdGVneUNsYXNzZXMoKTogc3RyaW5nW10ge1xuXHRcdGNvbnN0IHN0cmF0ZWd5ID0gVEFCTEVfUkVTUE9OU0lWRVt0aGlzLnJlc3BvbnNpdmVTdHJhdGVneV07XG5cblx0XHRpZiAodGhpcy5yZXNwb25zaXZlU3RyYXRlZ3kgPT09IFwic2Nyb2xsXCIpIHtcblx0XHRcdHJldHVybiBbXCJvdmVyZmxvdy14LWF1dG9cIl07XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMucmVzcG9uc2l2ZVN0cmF0ZWd5ID09PSBcIndyYXBcIikge1xuXHRcdFx0cmV0dXJuIFtcIm92ZXJmbG93LXgtYXV0b1wiXTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5yZXNwb25zaXZlU3RyYXRlZ3kgPT09IFwic3RhY2tcIikge1xuXHRcdFx0Ly8gU3RhY2sgcmVxdWllcmUgbMOzZ2ljYSBlbiBlbCB0ZW1wbGF0ZSwgYXF1w60gc29sbyBlbCB3cmFwcGVyXG5cdFx0XHRyZXR1cm4gW107XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMucmVzcG9uc2l2ZVN0cmF0ZWd5ID09PSBcImNvbGxhcHNlXCIpIHtcblx0XHRcdHJldHVybiBbXCJvdmVyZmxvdy14LWF1dG9cIl07XG5cdFx0fVxuXG5cdFx0cmV0dXJuIFtcIm92ZXJmbG93LWF1dG9cIl07XG5cdH1cblxuXHRwcml2YXRlIGdldFZhcmlhbnRXcmFwcGVyQ2xhc3NlcygpOiBzdHJpbmdbXSB7XG5cdFx0aWYgKHRoaXMudmFyaWFudCA9PT0gXCJpbnRlcmFjdGl2ZVwiKSB7XG5cdFx0XHRyZXR1cm4gW1wicm91bmRlZC14bFwiLCBcImJvcmRlciBib3JkZXItc29saWRcIiwgXCJib3JkZXItYm9yZGVyXCIsIFwiYmctYmFja2dyb3VuZFwiXTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy52YXJpYW50ID09PSBcImRhdGFcIikge1xuXHRcdFx0cmV0dXJuIFtcInJvdW5kZWQtbWRcIiwgXCJib3JkZXIgYm9yZGVyLXNvbGlkXCIsIFwiYm9yZGVyLWJvcmRlclwiLCBcImJnLWJhY2tncm91bmRcIl07XG5cdFx0fVxuXG5cdFx0cmV0dXJuIFtdO1xuXHR9XG5cblx0cHJpdmF0ZSBnZXRWYXJpYW50VGFibGVDbGFzc2VzKCk6IHN0cmluZ1tdIHtcblx0XHRpZiAodGhpcy52YXJpYW50ID09PSBcImRhdGFcIikge1xuXHRcdFx0cmV0dXJuIFtcblx0XHRcdFx0XCJib3JkZXItY29sbGFwc2VcIixcblx0XHRcdFx0XCJ0ZXh0LWZvcmVncm91bmRcIixcblx0XHRcdFx0XCJbJl90aGVhZF90cl06Ym9yZGVyLWJcIixcblx0XHRcdFx0XCJbJl90aGVhZF90cl06Ym9yZGVyLWJvcmRlclwiLFxuXHRcdFx0XHRcIlsmX3Rib2R5X3RyXTpib3JkZXItYlwiLFxuXHRcdFx0XHRcIlsmX3Rib2R5X3RyXTpib3JkZXItYm9yZGVyXCIsXG5cdFx0XHRcdFwiWyZfdGJvZHlfdHI6bGFzdC1jaGlsZF06Ym9yZGVyLWItMFwiLFxuXHRcdFx0XHRcIlsmX3RoXTpoLTEwXCIsXG5cdFx0XHRcdFwiWyZfdGhdOnB4LTJcIixcblx0XHRcdFx0XCJbJl90aF06dGV4dC1sZWZ0XCIsXG5cdFx0XHRcdFwiWyZfdGhdOmFsaWduLW1pZGRsZVwiLFxuXHRcdFx0XHRcIlsmX3RoXTpmb250LW1lZGl1bVwiLFxuXHRcdFx0XHRcIlsmX3RkXTpwLTJcIixcblx0XHRcdFx0XCJbJl90ZF06YWxpZ24tbWlkZGxlXCIsXG5cdFx0XHRdO1xuXHRcdH1cblxuXHRcdGlmICh0aGlzLnZhcmlhbnQgPT09IFwiaW50ZXJhY3RpdmVcIikge1xuXHRcdFx0cmV0dXJuIFtcblx0XHRcdFx0XCJ0ZXh0LWZvcmVncm91bmRcIixcblx0XHRcdFx0XCJbJl90aGVhZF06c3RpY2t5XCIsXG5cdFx0XHRcdFwiWyZfdGhlYWRdOnRvcC0wXCIsXG5cdFx0XHRcdFwiWyZfdGhlYWRdOnotMTBcIixcblx0XHRcdFx0XCJbJl90aGVhZF06YmctbXV0ZWQvNzBcIixcblx0XHRcdFx0XCJbJl90aGVhZF90cl06Ym9yZGVyLWJcIixcblx0XHRcdFx0XCJbJl90aGVhZF90cl06Ym9yZGVyLWJvcmRlclwiLFxuXHRcdFx0XHRcIlsmX3RoXTpoLTEyXCIsXG5cdFx0XHRcdFwiWyZfdGhdOnB4LTRcIixcblx0XHRcdFx0XCJbJl90aF06dGV4dC1sZWZ0XCIsXG5cdFx0XHRcdFwiWyZfdGhdOmFsaWduLW1pZGRsZVwiLFxuXHRcdFx0XHRcIlsmX3RoXTp0ZXh0LXNtXCIsXG5cdFx0XHRcdFwiWyZfdGhdOmZvbnQtbWVkaXVtXCIsXG5cdFx0XHRcdFwiWyZfdGJvZHlfdHJdOmJvcmRlci1iXCIsXG5cdFx0XHRcdFwiWyZfdGJvZHlfdHJdOmJvcmRlci1ib3JkZXJcIixcblx0XHRcdFx0XCJbJl90Ym9keV90cl06dHJhbnNpdGlvbi1jb2xvcnNcIixcblx0XHRcdFx0XCJbJl90Ym9keV90cjpob3Zlcl06YmctbXV0ZWQvNTBcIixcblx0XHRcdFx0XCJbJl90Ym9keV90cjpsYXN0LWNoaWxkXTpib3JkZXItYi0wXCIsXG5cdFx0XHRcdFwiWyZfdGRdOmgtMTRcIixcblx0XHRcdFx0XCJbJl90ZF06cHgtNFwiLFxuXHRcdFx0XHRcIlsmX3RkXTphbGlnbi1taWRkbGVcIixcblx0XHRcdFx0XCJbJl90ZF06dGV4dC1zbVwiLFxuXHRcdFx0XHRcIlsmX3N2Z106dGV4dC1tdXRlZC1mb3JlZ3JvdW5kXCIsXG5cdFx0XHRdO1xuXHRcdH1cblxuXHRcdHJldHVybiBbXTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0Q2VsbENsYXNzZXMoKTogc3RyaW5nW10ge1xuXHRcdC8vIE1hbmVqbyByZXNwb25zaXZlIGRlIHdoaXRlc3BhY2Vcblx0XHRpZiAodGhpcy5yZXNwb25zaXZlU3RyYXRlZ3kgPT09IFwic2Nyb2xsXCIpIHtcblx0XHRcdC8vIEVuIHNjcm9sbCwgcGVybWl0aXIgd3JhcCBlbiBtb2JpbGUsIG5vd3JhcCBlbiBkZXNrdG9wXG5cdFx0XHRyZXR1cm4gW1xuXHRcdFx0XHRcIlsmX3RkXTp3aGl0ZXNwYWNlLW5vcm1hbFwiLFxuXHRcdFx0XHRcIlsmX3RoXTp3aGl0ZXNwYWNlLW5vcm1hbFwiLFxuXHRcdFx0XHRcInNtOlsmX3RkXTp3aGl0ZXNwYWNlLW5vd3JhcFwiLFxuXHRcdFx0XHRcInNtOlsmX3RoXTp3aGl0ZXNwYWNlLW5vd3JhcFwiLFxuXHRcdFx0XTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5yZXNwb25zaXZlU3RyYXRlZ3kgPT09IFwid3JhcFwiKSB7XG5cdFx0XHQvLyBFbiB3cmFwLCBzaWVtcHJlIHBlcm1pdGlyIHdyYXBcblx0XHRcdHJldHVybiBbXG5cdFx0XHRcdFwiWyZfdGRdOndoaXRlc3BhY2Utbm9ybWFsXCIsXG5cdFx0XHRcdFwiWyZfdGRdOmJyZWFrLXdvcmRzXCIsXG5cdFx0XHRcdFwiWyZfdGhdOndoaXRlc3BhY2Utbm9ybWFsXCIsXG5cdFx0XHRdO1xuXHRcdH1cblxuXHRcdC8vIERlZmF1bHQ6IG5vd3JhcCAoY29tcG9ydGFtaWVudG8gYW50ZXJpb3IgcGFyYSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5KVxuXHRcdHJldHVybiBbXTtcblx0fVxufVxuIiwiPGRpdiBbbmdDbGFzc109XCJ3cmFwcGVyQ2xhc3Nlc1wiIFthdHRyLmRhdGEtc2xvdF09XCJ2YXJpYW50ID09PSAnaW50ZXJhY3RpdmUnID8gJ3RhYmxlLWNvbnRhaW5lcicgOiBudWxsXCI+XG4gIDx0YWJsZSAjdGFibGVFbGVtZW50IFtuZ0NsYXNzXT1cInRhYmxlQ2xhc3Nlc1wiIFthdHRyLmRhdGEtc2xvdF09XCJ2YXJpYW50ID09PSAnaW50ZXJhY3RpdmUnID8gJ3RhYmxlJyA6IG51bGxcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvdGFibGU+XG48L2Rpdj5cbiJdfQ==
|