@spartan-ng/brain 0.0.1-alpha.373 → 0.0.1-alpha.379
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/accordion/README.md +3 -0
- package/accordion/index.d.ts +13 -0
- package/accordion/lib/brn-accordion-content.component.d.ts +15 -0
- package/accordion/lib/brn-accordion.directive.d.ts +47 -0
- package/alert-dialog/README.md +3 -0
- package/alert-dialog/index.d.ts +25 -0
- package/alert-dialog/lib/brn-alert-dialog-content.directive.d.ts +6 -0
- package/alert-dialog/lib/brn-alert-dialog-description.directive.d.ts +6 -0
- package/alert-dialog/lib/brn-alert-dialog-overlay.component.d.ts +6 -0
- package/alert-dialog/lib/brn-alert-dialog-title.directive.d.ts +6 -0
- package/alert-dialog/lib/brn-alert-dialog-trigger.directive.d.ts +8 -0
- package/alert-dialog/lib/brn-alert-dialog.component.d.ts +7 -0
- package/avatar/README.md +3 -0
- package/avatar/index.d.ts +17 -0
- package/avatar/lib/brn-avatar.component.d.ts +7 -0
- package/avatar/lib/fallback/brn-avatar-fallback.directive.d.ts +11 -0
- package/avatar/lib/fallback/index.d.ts +1 -0
- package/avatar/lib/image/brn-avatar-image.directive.d.ts +9 -0
- package/avatar/lib/image/index.d.ts +1 -0
- package/avatar/lib/util/hex-color-for.d.ts +1 -0
- package/avatar/lib/util/index.d.ts +3 -0
- package/avatar/lib/util/initials.pipe.d.ts +7 -0
- package/avatar/lib/util/is-bright.d.ts +1 -0
- package/calendar/README.md +3 -0
- package/calendar/index.d.ts +36 -0
- package/calendar/lib/brn-calendar-cell-button.directive.d.ts +59 -0
- package/calendar/lib/brn-calendar-cell.directive.d.ts +5 -0
- package/calendar/lib/brn-calendar-grid.directive.d.ts +7 -0
- package/calendar/lib/brn-calendar-header.directive.d.ts +7 -0
- package/calendar/lib/brn-calendar-next-button.directive.d.ts +13 -0
- package/calendar/lib/brn-calendar-previous-button.directive.d.ts +13 -0
- package/calendar/lib/brn-calendar-week.directive.d.ts +25 -0
- package/calendar/lib/brn-calendar-weekday.directive.d.ts +25 -0
- package/calendar/lib/brn-calendar.directive.d.ts +55 -0
- package/calendar/lib/brn-calendar.token.d.ts +8 -0
- package/calendar/lib/i18n/calendar-i18n.d.ts +17 -0
- package/checkbox/lib/brn-checkbox.component.d.ts +1 -1
- package/collapsible/README.md +3 -0
- package/collapsible/index.d.ts +16 -0
- package/collapsible/lib/brn-collapsible-content.component.d.ts +19 -0
- package/collapsible/lib/brn-collapsible-trigger.directive.d.ts +12 -0
- package/collapsible/lib/brn-collapsible.component.d.ts +11 -0
- package/command/README.md +3 -0
- package/command/index.d.ts +33 -0
- package/command/lib/brn-command-empty.directive.d.ts +6 -0
- package/command/lib/brn-command-group.component.d.ts +6 -0
- package/command/lib/brn-command-input.directive.d.ts +6 -0
- package/command/lib/brn-command-item.directive.d.ts +6 -0
- package/command/lib/brn-command-list.component.d.ts +6 -0
- package/command/lib/brn-command-loader.directive.d.ts +6 -0
- package/command/lib/brn-command-separator.component.d.ts +6 -0
- package/command/lib/brn-command.component.d.ts +6 -0
- package/date-time/README.md +3 -0
- package/date-time/index.d.ts +2 -0
- package/date-time/lib/date-adapter.d.ts +176 -0
- package/date-time/lib/native-date-adapter.d.ts +103 -0
- package/date-time-luxon/README.md +3 -0
- package/date-time-luxon/index.d.ts +1 -0
- package/date-time-luxon/lib/date-adapter.d.ts +29 -0
- package/dialog/README.md +3 -0
- package/dialog/index.d.ts +33 -0
- package/dialog/lib/brn-dialog-close.directive.d.ts +10 -0
- package/dialog/lib/brn-dialog-content.directive.d.ts +12 -0
- package/dialog/lib/brn-dialog-description.directive.d.ts +8 -0
- package/dialog/lib/brn-dialog-options.d.ts +26 -0
- package/dialog/lib/brn-dialog-overlay.component.d.ts +8 -0
- package/dialog/lib/brn-dialog-ref.d.ts +24 -0
- package/dialog/lib/brn-dialog-state.d.ts +1 -0
- package/dialog/lib/brn-dialog-title.directive.d.ts +8 -0
- package/dialog/lib/brn-dialog-trigger.directive.d.ts +16 -0
- package/dialog/lib/brn-dialog-utils.d.ts +1 -0
- package/dialog/lib/brn-dialog.component.d.ts +56 -0
- package/dialog/lib/brn-dialog.service.d.ts +22 -0
- package/esm2022/accordion/index.mjs +31 -0
- package/esm2022/accordion/lib/brn-accordion-content.component.mjs +50 -0
- package/esm2022/accordion/lib/brn-accordion.directive.mjs +180 -0
- package/esm2022/accordion/spartan-ng-brain-accordion.mjs +5 -0
- package/esm2022/alert-dialog/index.mjs +45 -0
- package/esm2022/alert-dialog/lib/brn-alert-dialog-content.directive.mjs +17 -0
- package/esm2022/alert-dialog/lib/brn-alert-dialog-description.directive.mjs +18 -0
- package/esm2022/alert-dialog/lib/brn-alert-dialog-overlay.component.mjs +20 -0
- package/esm2022/alert-dialog/lib/brn-alert-dialog-title.directive.mjs +18 -0
- package/esm2022/alert-dialog/lib/brn-alert-dialog-trigger.directive.mjs +27 -0
- package/esm2022/alert-dialog/lib/brn-alert-dialog.component.mjs +40 -0
- package/esm2022/alert-dialog/spartan-ng-brain-alert-dialog.mjs +5 -0
- package/esm2022/avatar/index.mjs +23 -0
- package/esm2022/avatar/lib/brn-avatar.component.mjs +31 -0
- package/esm2022/avatar/lib/fallback/brn-avatar-fallback.directive.mjs +21 -0
- package/esm2022/avatar/lib/fallback/index.mjs +2 -0
- package/esm2022/avatar/lib/image/brn-avatar-image.directive.mjs +29 -0
- package/esm2022/avatar/lib/image/index.mjs +2 -0
- package/esm2022/avatar/lib/util/hex-color-for.mjs +22 -0
- package/esm2022/avatar/lib/util/index.mjs +4 -0
- package/esm2022/avatar/lib/util/initials.pipe.mjs +27 -0
- package/esm2022/avatar/lib/util/is-bright.mjs +12 -0
- package/esm2022/avatar/spartan-ng-brain-avatar.mjs +5 -0
- package/esm2022/calendar/index.mjs +62 -0
- package/esm2022/calendar/lib/brn-calendar-cell-button.directive.mjs +160 -0
- package/esm2022/calendar/lib/brn-calendar-cell.directive.mjs +17 -0
- package/esm2022/calendar/lib/brn-calendar-grid.directive.mjs +21 -0
- package/esm2022/calendar/lib/brn-calendar-header.directive.mjs +22 -0
- package/esm2022/calendar/lib/brn-calendar-next-button.directive.mjs +42 -0
- package/esm2022/calendar/lib/brn-calendar-previous-button.directive.mjs +42 -0
- package/esm2022/calendar/lib/brn-calendar-week.directive.mjs +64 -0
- package/esm2022/calendar/lib/brn-calendar-weekday.directive.mjs +48 -0
- package/esm2022/calendar/lib/brn-calendar.directive.mjs +154 -0
- package/esm2022/calendar/lib/brn-calendar.token.mjs +12 -0
- package/esm2022/calendar/lib/i18n/calendar-i18n.mjs +33 -0
- package/esm2022/calendar/spartan-ng-brain-calendar.mjs +5 -0
- package/esm2022/checkbox/lib/brn-checkbox.component.mjs +1 -1
- package/esm2022/collapsible/index.mjs +30 -0
- package/esm2022/collapsible/lib/brn-collapsible-content.component.mjs +61 -0
- package/esm2022/collapsible/lib/brn-collapsible-trigger.directive.mjs +35 -0
- package/esm2022/collapsible/lib/brn-collapsible.component.mjs +33 -0
- package/esm2022/collapsible/spartan-ng-brain-collapsible.mjs +5 -0
- package/esm2022/command/index.mjs +64 -0
- package/esm2022/command/lib/brn-command-empty.directive.mjs +29 -0
- package/esm2022/command/lib/brn-command-group.component.mjs +45 -0
- package/esm2022/command/lib/brn-command-input.directive.mjs +29 -0
- package/esm2022/command/lib/brn-command-item.directive.mjs +36 -0
- package/esm2022/command/lib/brn-command-list.component.mjs +35 -0
- package/esm2022/command/lib/brn-command-loader.directive.mjs +29 -0
- package/esm2022/command/lib/brn-command-separator.component.mjs +30 -0
- package/esm2022/command/lib/brn-command.component.mjs +21 -0
- package/esm2022/command/spartan-ng-brain-command.mjs +5 -0
- package/esm2022/date-time/index.mjs +3 -0
- package/esm2022/date-time/lib/date-adapter.mjs +16 -0
- package/esm2022/date-time/lib/native-date-adapter.mjs +155 -0
- package/esm2022/date-time/spartan-ng-brain-date-time.mjs +5 -0
- package/esm2022/date-time-luxon/index.mjs +2 -0
- package/esm2022/date-time-luxon/lib/date-adapter.mjs +85 -0
- package/esm2022/date-time-luxon/spartan-ng-brain-date-time-luxon.mjs +5 -0
- package/esm2022/dialog/index.mjs +55 -0
- package/esm2022/dialog/lib/brn-dialog-close.directive.mjs +29 -0
- package/esm2022/dialog/lib/brn-dialog-content.directive.mjs +41 -0
- package/esm2022/dialog/lib/brn-dialog-description.directive.mjs +25 -0
- package/esm2022/dialog/lib/brn-dialog-options.mjs +19 -0
- package/esm2022/dialog/lib/brn-dialog-overlay.component.mjs +29 -0
- package/esm2022/dialog/lib/brn-dialog-ref.mjs +53 -0
- package/esm2022/dialog/lib/brn-dialog-state.mjs +2 -0
- package/esm2022/dialog/lib/brn-dialog-title.directive.mjs +25 -0
- package/esm2022/dialog/lib/brn-dialog-trigger.directive.mjs +39 -0
- package/esm2022/dialog/lib/brn-dialog-utils.mjs +12 -0
- package/esm2022/dialog/lib/brn-dialog.component.mjs +208 -0
- package/esm2022/dialog/lib/brn-dialog.service.mjs +127 -0
- package/esm2022/dialog/spartan-ng-brain-dialog.mjs +5 -0
- package/esm2022/form-field/index.mjs +2 -0
- package/esm2022/form-field/lib/brn-form-field-control.mjs +14 -0
- package/esm2022/form-field/spartan-ng-brain-form-field.mjs +5 -0
- package/esm2022/forms/index.mjs +4 -0
- package/esm2022/forms/lib/control-value-accessor.mjs +2 -0
- package/esm2022/forms/lib/error-options.mjs +26 -0
- package/esm2022/forms/lib/error-state-tracker.mjs +29 -0
- package/esm2022/forms/spartan-ng-brain-forms.mjs +5 -0
- package/esm2022/hover-card/index.mjs +29 -0
- package/esm2022/hover-card/lib/brn-hover-card-content.service.mjs +205 -0
- package/esm2022/hover-card/lib/brn-hover-card.component.mjs +34 -0
- package/esm2022/hover-card/lib/createHoverObservable.mjs +19 -0
- package/esm2022/hover-card/spartan-ng-brain-hover-card.mjs +5 -0
- package/esm2022/label/index.mjs +17 -0
- package/esm2022/label/lib/brn-label.directive.mjs +49 -0
- package/esm2022/label/spartan-ng-brain-label.mjs +5 -0
- package/esm2022/menu/index.mjs +100 -0
- package/esm2022/menu/lib/brn-context-menu-trigger.directive.mjs +40 -0
- package/esm2022/menu/lib/brn-menu-align.mjs +15 -0
- package/esm2022/menu/lib/brn-menu-bar.directive.mjs +17 -0
- package/esm2022/menu/lib/brn-menu-group.directive.mjs +17 -0
- package/esm2022/menu/lib/brn-menu-item-checkbox.directive.mjs +30 -0
- package/esm2022/menu/lib/brn-menu-item-radio.directive.mjs +30 -0
- package/esm2022/menu/lib/brn-menu-item.directive.mjs +27 -0
- package/esm2022/menu/lib/brn-menu-trigger.directive.mjs +36 -0
- package/esm2022/menu/lib/brn-menu.directive.mjs +50 -0
- package/esm2022/menu/spartan-ng-brain-menu.mjs +5 -0
- package/esm2022/popover/index.mjs +35 -0
- package/esm2022/popover/lib/brn-popover-close.directive.mjs +15 -0
- package/esm2022/popover/lib/brn-popover-content.directive.mjs +17 -0
- package/esm2022/popover/lib/brn-popover-trigger.directive.mjs +37 -0
- package/esm2022/popover/lib/brn-popover.component.mjs +81 -0
- package/esm2022/popover/spartan-ng-brain-popover.mjs +5 -0
- package/esm2022/progress/index.mjs +21 -0
- package/esm2022/progress/lib/brn-progress-indicator.component.mjs +22 -0
- package/esm2022/progress/lib/brn-progress.component.mjs +61 -0
- package/esm2022/progress/lib/brn-progress.token.mjs +9 -0
- package/esm2022/progress/spartan-ng-brain-progress.mjs +5 -0
- package/esm2022/radio-group/index.mjs +20 -0
- package/esm2022/radio-group/lib/brn-radio-group.component.mjs +90 -0
- package/esm2022/radio-group/lib/brn-radio-group.token.mjs +9 -0
- package/esm2022/radio-group/lib/brn-radio.component.mjs +185 -0
- package/esm2022/radio-group/spartan-ng-brain-radio-group.mjs +5 -0
- package/esm2022/select/index.mjs +56 -0
- package/esm2022/select/lib/brn-select-content.component.mjs +204 -0
- package/esm2022/select/lib/brn-select-group.directive.mjs +19 -0
- package/esm2022/select/lib/brn-select-label.directive.mjs +23 -0
- package/esm2022/select/lib/brn-select-option.directive.mjs +65 -0
- package/esm2022/select/lib/brn-select-value.component.mjs +46 -0
- package/esm2022/select/lib/brn-select.component.mjs +358 -0
- package/esm2022/select/lib/brn-select.service.mjs +197 -0
- package/esm2022/select/spartan-ng-brain-select.mjs +5 -0
- package/esm2022/separator/index.mjs +17 -0
- package/esm2022/separator/lib/brn-separator.component.mjs +24 -0
- package/esm2022/separator/spartan-ng-brain-separator.mjs +5 -0
- package/esm2022/sheet/index.mjs +50 -0
- package/esm2022/sheet/lib/brn-sheet-close.directive.mjs +15 -0
- package/esm2022/sheet/lib/brn-sheet-content.directive.mjs +25 -0
- package/esm2022/sheet/lib/brn-sheet-description.directive.mjs +18 -0
- package/esm2022/sheet/lib/brn-sheet-overlay.component.mjs +20 -0
- package/esm2022/sheet/lib/brn-sheet-title.directive.mjs +18 -0
- package/esm2022/sheet/lib/brn-sheet-trigger.directive.mjs +26 -0
- package/esm2022/sheet/lib/brn-sheet.component.mjs +55 -0
- package/esm2022/sheet/spartan-ng-brain-sheet.mjs +5 -0
- package/esm2022/slider/index.mjs +13 -0
- package/esm2022/slider/lib/brn-slider-thumb.directive.mjs +41 -0
- package/esm2022/slider/lib/brn-slider-tick-mark.directive.mjs +37 -0
- package/esm2022/slider/lib/brn-slider-track-active-fill.directive.mjs +29 -0
- package/esm2022/slider/lib/brn-slider-track.directive.mjs +290 -0
- package/esm2022/slider/spartan-ng-brain-slider.mjs +5 -0
- package/esm2022/switch/index.mjs +20 -0
- package/esm2022/switch/lib/brn-switch-thumb.component.mjs +16 -0
- package/esm2022/switch/lib/brn-switch.component.mjs +236 -0
- package/esm2022/switch/spartan-ng-brain-switch.mjs +5 -0
- package/esm2022/table/index.mjs +47 -0
- package/esm2022/table/lib/brn-cell-def.directive.mjs +22 -0
- package/esm2022/table/lib/brn-column-def.component.mjs +82 -0
- package/esm2022/table/lib/brn-column-manager.mjs +61 -0
- package/esm2022/table/lib/brn-footer-def.directive.mjs +22 -0
- package/esm2022/table/lib/brn-header-def.directive.mjs +22 -0
- package/esm2022/table/lib/brn-paginator.directive.mjs +109 -0
- package/esm2022/table/lib/brn-table.component.mjs +169 -0
- package/esm2022/table/spartan-ng-brain-table.mjs +5 -0
- package/esm2022/tabs/index.mjs +32 -0
- package/esm2022/tabs/lib/brn-tabs-list.directive.mjs +65 -0
- package/esm2022/tabs/lib/brn-tabs-paginated-list.directive.mjs +525 -0
- package/esm2022/tabs/lib/brn-tabs-trigger.directive.mjs +134 -0
- package/esm2022/tabs/spartan-ng-brain-tabs.mjs +5 -0
- package/esm2022/toggle/index.mjs +31 -0
- package/esm2022/toggle/lib/brn-toggle-group.component.mjs +159 -0
- package/esm2022/toggle/lib/brn-toggle-group.token.mjs +9 -0
- package/esm2022/toggle/lib/brn-toggle.directive.mjs +65 -0
- package/esm2022/toggle/spartan-ng-brain-toggle.mjs +5 -0
- package/esm2022/tooltip/index.mjs +35 -0
- package/esm2022/tooltip/lib/brn-tooltip-content.component.mjs +228 -0
- package/esm2022/tooltip/lib/brn-tooltip-content.directive.mjs +22 -0
- package/esm2022/tooltip/lib/brn-tooltip-trigger.directive.mjs +689 -0
- package/esm2022/tooltip/lib/brn-tooltip.directive.mjs +15 -0
- package/esm2022/tooltip/spartan-ng-brain-tooltip.mjs +5 -0
- package/fesm2022/spartan-ng-brain-accordion.mjs +259 -0
- package/fesm2022/spartan-ng-brain-accordion.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-alert-dialog.mjs +162 -0
- package/fesm2022/spartan-ng-brain-alert-dialog.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-avatar.mjs +156 -0
- package/fesm2022/spartan-ng-brain-avatar.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-calendar.mjs +629 -0
- package/fesm2022/spartan-ng-brain-calendar.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-checkbox.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-collapsible.mjs +152 -0
- package/fesm2022/spartan-ng-brain-collapsible.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-command.mjs +284 -0
- package/fesm2022/spartan-ng-brain-command.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-date-time-luxon.mjs +92 -0
- package/fesm2022/spartan-ng-brain-date-time-luxon.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-date-time.mjs +177 -0
- package/fesm2022/spartan-ng-brain-date-time.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-dialog.mjs +617 -0
- package/fesm2022/spartan-ng-brain-dialog.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-form-field.mjs +21 -0
- package/fesm2022/spartan-ng-brain-form-field.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-forms.mjs +61 -0
- package/fesm2022/spartan-ng-brain-forms.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-hover-card.mjs +274 -0
- package/fesm2022/spartan-ng-brain-hover-card.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-label.mjs +69 -0
- package/fesm2022/spartan-ng-brain-label.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-menu.mjs +316 -0
- package/fesm2022/spartan-ng-brain-menu.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-popover.mjs +173 -0
- package/fesm2022/spartan-ng-brain-popover.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-progress.mjs +108 -0
- package/fesm2022/spartan-ng-brain-progress.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-radio-group.mjs +299 -0
- package/fesm2022/spartan-ng-brain-radio-group.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-select.mjs +928 -0
- package/fesm2022/spartan-ng-brain-select.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-separator.mjs +44 -0
- package/fesm2022/spartan-ng-brain-separator.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-sheet.mjs +197 -0
- package/fesm2022/spartan-ng-brain-sheet.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-slider.mjs +399 -0
- package/fesm2022/spartan-ng-brain-slider.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-switch.mjs +271 -0
- package/fesm2022/spartan-ng-brain-switch.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-table.mjs +506 -0
- package/fesm2022/spartan-ng-brain-table.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-tabs.mjs +748 -0
- package/fesm2022/spartan-ng-brain-tabs.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-toggle.mjs +260 -0
- package/fesm2022/spartan-ng-brain-toggle.mjs.map +1 -0
- package/fesm2022/spartan-ng-brain-tooltip.mjs +975 -0
- package/fesm2022/spartan-ng-brain-tooltip.mjs.map +1 -0
- package/form-field/README.md +3 -0
- package/form-field/index.d.ts +1 -0
- package/form-field/lib/brn-form-field-control.d.ts +11 -0
- package/forms/README.md +3 -0
- package/forms/index.d.ts +3 -0
- package/forms/lib/control-value-accessor.d.ts +2 -0
- package/forms/lib/error-options.d.ts +14 -0
- package/forms/lib/error-state-tracker.d.ts +15 -0
- package/hover-card/README.md +3 -0
- package/hover-card/index.d.ts +14 -0
- package/hover-card/lib/brn-hover-card-content.service.d.ts +65 -0
- package/hover-card/lib/brn-hover-card.component.d.ts +9 -0
- package/hover-card/lib/createHoverObservable.d.ts +4 -0
- package/label/README.md +3 -0
- package/label/index.d.ts +8 -0
- package/label/lib/brn-label.directive.d.ts +15 -0
- package/menu/README.md +3 -0
- package/menu/index.d.ts +49 -0
- package/menu/lib/brn-context-menu-trigger.directive.d.ts +13 -0
- package/menu/lib/brn-menu-align.d.ts +3 -0
- package/menu/lib/brn-menu-bar.directive.d.ts +6 -0
- package/menu/lib/brn-menu-group.directive.d.ts +6 -0
- package/menu/lib/brn-menu-item-checkbox.directive.d.ts +11 -0
- package/menu/lib/brn-menu-item-radio.directive.d.ts +11 -0
- package/menu/lib/brn-menu-item.directive.d.ts +10 -0
- package/menu/lib/brn-menu-trigger.directive.d.ts +10 -0
- package/menu/lib/brn-menu.directive.d.ts +11 -0
- package/package.json +182 -9
- package/popover/README.md +3 -0
- package/popover/index.d.ts +19 -0
- package/popover/lib/brn-popover-close.directive.d.ts +6 -0
- package/popover/lib/brn-popover-content.directive.d.ts +6 -0
- package/popover/lib/brn-popover-trigger.directive.d.ts +10 -0
- package/popover/lib/brn-popover.component.d.ts +14 -0
- package/progress/README.md +3 -0
- package/progress/index.d.ts +14 -0
- package/progress/lib/brn-progress-indicator.component.d.ts +6 -0
- package/progress/lib/brn-progress.component.d.ts +15 -0
- package/progress/lib/brn-progress.token.d.ts +4 -0
- package/radio-group/README.md +3 -0
- package/radio-group/index.d.ts +13 -0
- package/radio-group/lib/brn-radio-group.component.d.ts +57 -0
- package/radio-group/lib/brn-radio-group.token.d.ts +4 -0
- package/radio-group/lib/brn-radio.component.d.ts +58 -0
- package/select/README.md +3 -0
- package/select/index.d.ts +28 -0
- package/select/lib/brn-select-content.component.d.ts +50 -0
- package/select/lib/brn-select-group.directive.d.ts +6 -0
- package/select/lib/brn-select-label.directive.d.ts +9 -0
- package/select/lib/brn-select-option.directive.d.ts +25 -0
- package/select/lib/brn-select-value.component.d.ts +11 -0
- package/select/lib/brn-select.component.d.ts +82 -0
- package/select/lib/brn-select.service.d.ts +67 -0
- package/separator/README.md +3 -0
- package/separator/index.d.ts +8 -0
- package/separator/lib/brn-separator.component.d.ts +11 -0
- package/sheet/README.md +3 -0
- package/sheet/index.d.ts +28 -0
- package/sheet/lib/brn-sheet-close.directive.d.ts +6 -0
- package/sheet/lib/brn-sheet-content.directive.d.ts +8 -0
- package/sheet/lib/brn-sheet-description.directive.d.ts +6 -0
- package/sheet/lib/brn-sheet-overlay.component.d.ts +6 -0
- package/sheet/lib/brn-sheet-title.directive.d.ts +6 -0
- package/sheet/lib/brn-sheet-trigger.directive.d.ts +9 -0
- package/sheet/lib/brn-sheet.component.d.ts +9 -0
- package/slider/README.md +3 -0
- package/slider/index.d.ts +7 -0
- package/slider/lib/brn-slider-thumb.directive.d.ts +17 -0
- package/slider/lib/brn-slider-tick-mark.directive.d.ts +15 -0
- package/slider/lib/brn-slider-track-active-fill.directive.d.ts +10 -0
- package/slider/lib/brn-slider-track.directive.d.ts +139 -0
- package/switch/README.md +3 -0
- package/switch/index.d.ts +13 -0
- package/switch/lib/brn-switch-thumb.component.d.ts +5 -0
- package/switch/lib/brn-switch.component.d.ts +58 -0
- package/table/README.md +3 -0
- package/table/index.d.ts +26 -0
- package/table/lib/brn-cell-def.directive.d.ts +9 -0
- package/table/lib/brn-column-def.component.d.ts +18 -0
- package/table/lib/brn-column-manager.d.ts +26 -0
- package/table/lib/brn-footer-def.directive.d.ts +9 -0
- package/table/lib/brn-header-def.directive.d.ts +9 -0
- package/table/lib/brn-paginator.directive.d.ts +41 -0
- package/table/lib/brn-table.component.d.ts +37 -0
- package/tabs/README.md +3 -0
- package/tabs/index.d.ts +14 -0
- package/tabs/lib/brn-tabs-list.directive.d.ts +17 -0
- package/tabs/lib/brn-tabs-paginated-list.directive.d.ts +196 -0
- package/tabs/lib/brn-tabs-trigger.directive.d.ts +61 -0
- package/toggle/README.md +3 -0
- package/toggle/index.d.ts +15 -0
- package/toggle/lib/brn-toggle-group.component.d.ts +68 -0
- package/toggle/lib/brn-toggle-group.token.d.ts +4 -0
- package/toggle/lib/brn-toggle.directive.d.ts +25 -0
- package/tooltip/README.md +3 -0
- package/tooltip/index.d.ts +19 -0
- package/tooltip/lib/brn-tooltip-content.component.d.ts +73 -0
- package/tooltip/lib/brn-tooltip-content.directive.d.ts +8 -0
- package/tooltip/lib/brn-tooltip-trigger.directive.d.ts +177 -0
- package/tooltip/lib/brn-tooltip.directive.d.ts +7 -0
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
import { FocusMonitor } from '@angular/cdk/a11y';
|
|
2
|
+
import { NgStyle, isPlatformBrowser } from '@angular/common';
|
|
3
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, DestroyRef, ElementRef, HostListener, PLATFORM_ID, Renderer2, ViewEncapsulation, booleanAttribute, computed, effect, forwardRef, inject, input, model, output, signal, viewChild, } from '@angular/core';
|
|
4
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
5
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export const BRN_SWITCH_VALUE_ACCESSOR = {
|
|
8
|
+
provide: NG_VALUE_ACCESSOR,
|
|
9
|
+
useExisting: forwardRef(() => BrnSwitchComponent),
|
|
10
|
+
multi: true,
|
|
11
|
+
};
|
|
12
|
+
const CONTAINER_POST_FIX = '-switch';
|
|
13
|
+
export class BrnSwitchComponent {
|
|
14
|
+
_destroyRef = inject(DestroyRef);
|
|
15
|
+
_renderer = inject(Renderer2);
|
|
16
|
+
_isBrowser = isPlatformBrowser(inject(PLATFORM_ID));
|
|
17
|
+
_elementRef = inject(ElementRef);
|
|
18
|
+
_focusMonitor = inject(FocusMonitor);
|
|
19
|
+
_cdr = inject(ChangeDetectorRef);
|
|
20
|
+
focusVisible = signal(false);
|
|
21
|
+
focused = signal(false);
|
|
22
|
+
checked = model(false);
|
|
23
|
+
/** Used to set the id on the underlying input element. */
|
|
24
|
+
id = input(null);
|
|
25
|
+
/** Used to set the name attribute on the underlying input element. */
|
|
26
|
+
name = input(null);
|
|
27
|
+
/** Used to set the aria-label attribute on the underlying input element. */
|
|
28
|
+
ariaLabel = input(null, { alias: 'aria-label' });
|
|
29
|
+
/** Used to set the aria-labelledby attribute on the underlying input element. */
|
|
30
|
+
ariaLabelledby = input(null, { alias: 'aria-labelledby' });
|
|
31
|
+
/** Used to set the aria-describedby attribute on the underlying input element. */
|
|
32
|
+
ariaDescribedby = input(null, { alias: 'aria-describedby' });
|
|
33
|
+
required = input(false, { transform: booleanAttribute });
|
|
34
|
+
disabled = input(false, {
|
|
35
|
+
transform: booleanAttribute,
|
|
36
|
+
});
|
|
37
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
38
|
+
_onChange = () => { };
|
|
39
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
40
|
+
_onTouched = () => { };
|
|
41
|
+
checkbox = viewChild.required('checkBox');
|
|
42
|
+
changed = output();
|
|
43
|
+
touched = output();
|
|
44
|
+
state = computed(() => {
|
|
45
|
+
const name = this.name();
|
|
46
|
+
const id = this.id();
|
|
47
|
+
return {
|
|
48
|
+
disabled: signal(this.disabled()),
|
|
49
|
+
name: name ? name + CONTAINER_POST_FIX : null,
|
|
50
|
+
id: id ? id + CONTAINER_POST_FIX : null,
|
|
51
|
+
};
|
|
52
|
+
});
|
|
53
|
+
constructor() {
|
|
54
|
+
effect(() => {
|
|
55
|
+
/** search for the label and set the disabled state */
|
|
56
|
+
let parent = this._renderer.parentNode(this._elementRef.nativeElement);
|
|
57
|
+
if (!parent)
|
|
58
|
+
return;
|
|
59
|
+
// if parent is a HLM-SWITCH, then we need to go up one more level to get the label
|
|
60
|
+
if (parent?.tagName === 'HLM-SWITCH') {
|
|
61
|
+
parent = this._renderer.parentNode(parent);
|
|
62
|
+
}
|
|
63
|
+
if (!parent)
|
|
64
|
+
return;
|
|
65
|
+
// check if parent is a label and assume it is for this checkbox
|
|
66
|
+
if (parent?.tagName === 'LABEL') {
|
|
67
|
+
this._renderer.setAttribute(parent, 'data-disabled', this.state().disabled() ? 'true' : 'false');
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
if (!this._isBrowser)
|
|
71
|
+
return;
|
|
72
|
+
const label = parent?.querySelector(`label[for="${this.forChild(this.state().id)}"]`);
|
|
73
|
+
if (!label)
|
|
74
|
+
return;
|
|
75
|
+
this._renderer.setAttribute(label, 'data-disabled', this.state().disabled() ? 'true' : 'false');
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
toggle(event) {
|
|
79
|
+
if (this.state().disabled())
|
|
80
|
+
return;
|
|
81
|
+
event.preventDefault();
|
|
82
|
+
this.checked.update((checked) => !checked);
|
|
83
|
+
this._onChange(this.checked());
|
|
84
|
+
this.changed.emit(this.checked());
|
|
85
|
+
}
|
|
86
|
+
ngAfterContentInit() {
|
|
87
|
+
this._focusMonitor
|
|
88
|
+
.monitor(this._elementRef, true)
|
|
89
|
+
.pipe(takeUntilDestroyed(this._destroyRef))
|
|
90
|
+
.subscribe((focusOrigin) => {
|
|
91
|
+
if (focusOrigin)
|
|
92
|
+
this.focused.set(true);
|
|
93
|
+
if (focusOrigin === 'keyboard' || focusOrigin === 'program') {
|
|
94
|
+
this.focusVisible.set(true);
|
|
95
|
+
this._cdr.markForCheck();
|
|
96
|
+
}
|
|
97
|
+
if (!focusOrigin) {
|
|
98
|
+
// When a focused element becomes disabled, the browser *immediately* fires a blur event.
|
|
99
|
+
// Angular does not expect events to be raised during change detection, so any state
|
|
100
|
+
// change (such as a form control's ng-touched) will cause a changed-after-checked error.
|
|
101
|
+
// See https://github.com/angular/angular/issues/17793. To work around this, we defer
|
|
102
|
+
// telling the form control it has been touched until the next tick.
|
|
103
|
+
Promise.resolve().then(() => {
|
|
104
|
+
this.focusVisible.set(false);
|
|
105
|
+
this.focused.set(false);
|
|
106
|
+
this._onTouched();
|
|
107
|
+
this.touched.emit();
|
|
108
|
+
this._cdr.markForCheck();
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
if (!this.checkbox())
|
|
113
|
+
return;
|
|
114
|
+
this.checkbox().nativeElement.value = this.checked() ? 'on' : 'off';
|
|
115
|
+
this.checkbox().nativeElement.dispatchEvent(new Event('change'));
|
|
116
|
+
}
|
|
117
|
+
ngOnDestroy() {
|
|
118
|
+
this._focusMonitor.stopMonitoring(this._elementRef);
|
|
119
|
+
}
|
|
120
|
+
forChild(parentValue) {
|
|
121
|
+
return parentValue ? parentValue.replace(CONTAINER_POST_FIX, '') : null;
|
|
122
|
+
}
|
|
123
|
+
writeValue(value) {
|
|
124
|
+
this.checked.set(Boolean(value));
|
|
125
|
+
}
|
|
126
|
+
registerOnChange(fn) {
|
|
127
|
+
this._onChange = fn;
|
|
128
|
+
}
|
|
129
|
+
registerOnTouched(fn) {
|
|
130
|
+
this._onTouched = fn;
|
|
131
|
+
}
|
|
132
|
+
/** Implemented as a part of ControlValueAccessor. */
|
|
133
|
+
setDisabledState(isDisabled) {
|
|
134
|
+
this.state().disabled.set(isDisabled);
|
|
135
|
+
this._cdr.markForCheck();
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* If the space key is pressed, prevent the default action to stop the page from scrolling.
|
|
139
|
+
*/
|
|
140
|
+
preventScrolling(event) {
|
|
141
|
+
event.preventDefault();
|
|
142
|
+
}
|
|
143
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSwitchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
144
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.5", type: BrnSwitchComponent, isStandalone: true, selector: "brn-switch", inputs: { checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledby: { classPropertyName: "ariaLabelledby", publicName: "aria-labelledby", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedby: { classPropertyName: "ariaDescribedby", publicName: "aria-describedby", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checked: "checkedChange", changed: "changed", touched: "touched" }, host: { attributes: { "tabindex": "0" }, listeners: { "click": "toggle($event)", "keyup.enter": "toggle($event)", "keyup.space": "toggle($event)", "keydown.space": "preventScrolling($event)" }, properties: { "attr.data-state": "checked() ? \"checked\" : \"unchecked\"", "attr.data-focus-visible": "focusVisible()", "attr.data-focus": "focused()", "attr.data-disabled": "state().disabled()", "attr.aria-labelledby": "null", "attr.aria-label": "null", "attr.aria-describedby": "null", "attr.id": "state().id", "attr.name": "state().name" } }, providers: [BRN_SWITCH_VALUE_ACCESSOR], viewQueries: [{ propertyName: "checkbox", first: true, predicate: ["checkBox"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
145
|
+
<input
|
|
146
|
+
#checkBox
|
|
147
|
+
tabindex="-1"
|
|
148
|
+
type="checkbox"
|
|
149
|
+
role="switch"
|
|
150
|
+
[id]="forChild(state().id) ?? ''"
|
|
151
|
+
[name]="forChild(state().name) ?? ''"
|
|
152
|
+
[value]="checked() ? 'on' : 'off'"
|
|
153
|
+
[ngStyle]="{
|
|
154
|
+
position: 'absolute',
|
|
155
|
+
width: '1px',
|
|
156
|
+
height: '1px',
|
|
157
|
+
padding: '0',
|
|
158
|
+
margin: -'1px',
|
|
159
|
+
overflow: 'hidden',
|
|
160
|
+
clip: 'rect(0, 0, 0, 0)',
|
|
161
|
+
whiteSpace: 'nowrap',
|
|
162
|
+
borderWidth: '0',
|
|
163
|
+
}"
|
|
164
|
+
[checked]="checked()"
|
|
165
|
+
[attr.aria-label]="ariaLabel()"
|
|
166
|
+
[attr.aria-labelledby]="ariaLabelledby()"
|
|
167
|
+
[attr.aria-describedby]="ariaDescribedby()"
|
|
168
|
+
[attr.aria-required]="required() || null"
|
|
169
|
+
/>
|
|
170
|
+
<ng-content select="brn-switch-thumb" />
|
|
171
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
172
|
+
}
|
|
173
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSwitchComponent, decorators: [{
|
|
174
|
+
type: Component,
|
|
175
|
+
args: [{
|
|
176
|
+
selector: 'brn-switch',
|
|
177
|
+
standalone: true,
|
|
178
|
+
imports: [NgStyle],
|
|
179
|
+
template: `
|
|
180
|
+
<input
|
|
181
|
+
#checkBox
|
|
182
|
+
tabindex="-1"
|
|
183
|
+
type="checkbox"
|
|
184
|
+
role="switch"
|
|
185
|
+
[id]="forChild(state().id) ?? ''"
|
|
186
|
+
[name]="forChild(state().name) ?? ''"
|
|
187
|
+
[value]="checked() ? 'on' : 'off'"
|
|
188
|
+
[ngStyle]="{
|
|
189
|
+
position: 'absolute',
|
|
190
|
+
width: '1px',
|
|
191
|
+
height: '1px',
|
|
192
|
+
padding: '0',
|
|
193
|
+
margin: -'1px',
|
|
194
|
+
overflow: 'hidden',
|
|
195
|
+
clip: 'rect(0, 0, 0, 0)',
|
|
196
|
+
whiteSpace: 'nowrap',
|
|
197
|
+
borderWidth: '0',
|
|
198
|
+
}"
|
|
199
|
+
[checked]="checked()"
|
|
200
|
+
[attr.aria-label]="ariaLabel()"
|
|
201
|
+
[attr.aria-labelledby]="ariaLabelledby()"
|
|
202
|
+
[attr.aria-describedby]="ariaDescribedby()"
|
|
203
|
+
[attr.aria-required]="required() || null"
|
|
204
|
+
/>
|
|
205
|
+
<ng-content select="brn-switch-thumb" />
|
|
206
|
+
`,
|
|
207
|
+
host: {
|
|
208
|
+
tabindex: '0',
|
|
209
|
+
'[attr.data-state]': 'checked() ? "checked" : "unchecked"',
|
|
210
|
+
'[attr.data-focus-visible]': 'focusVisible()',
|
|
211
|
+
'[attr.data-focus]': 'focused()',
|
|
212
|
+
'[attr.data-disabled]': 'state().disabled()',
|
|
213
|
+
'[attr.aria-labelledby]': 'null',
|
|
214
|
+
'[attr.aria-label]': 'null',
|
|
215
|
+
'[attr.aria-describedby]': 'null',
|
|
216
|
+
'[attr.id]': 'state().id',
|
|
217
|
+
'[attr.name]': 'state().name',
|
|
218
|
+
},
|
|
219
|
+
providers: [BRN_SWITCH_VALUE_ACCESSOR],
|
|
220
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
221
|
+
encapsulation: ViewEncapsulation.None,
|
|
222
|
+
}]
|
|
223
|
+
}], ctorParameters: () => [], propDecorators: { toggle: [{
|
|
224
|
+
type: HostListener,
|
|
225
|
+
args: ['click', ['$event']]
|
|
226
|
+
}, {
|
|
227
|
+
type: HostListener,
|
|
228
|
+
args: ['keyup.enter', ['$event']]
|
|
229
|
+
}, {
|
|
230
|
+
type: HostListener,
|
|
231
|
+
args: ['keyup.space', ['$event']]
|
|
232
|
+
}], preventScrolling: [{
|
|
233
|
+
type: HostListener,
|
|
234
|
+
args: ['keydown.space', ['$event']]
|
|
235
|
+
}] } });
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLXN3aXRjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL3N3aXRjaC9zcmMvbGliL2Jybi1zd2l0Y2guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUVOLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUVaLFdBQVcsRUFDWCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsTUFBTSxFQUNOLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHbkQsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUc7SUFDeEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO0lBQ2pELEtBQUssRUFBRSxJQUFJO0NBQ1gsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQUcsU0FBUyxDQUFDO0FBa0RyQyxNQUFNLE9BQU8sa0JBQWtCO0lBQ2IsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENB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b0JBQ1YsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBMkJUO29CQUNELElBQUksRUFBRTt3QkFDTCxRQUFRLEVBQUUsR0FBRzt3QkFDYixtQkFBbUIsRUFBRSxxQ0FBcUM7d0JBQzFELDJCQUEyQixFQUFFLGdCQUFnQjt3QkFDN0MsbUJBQW1CLEVBQUUsV0FBVzt3QkFDaEMsc0JBQXNCLEVBQUUsb0JBQW9CO3dCQUM1Qyx3QkFBd0IsRUFBRSxNQUFNO3dCQUNoQyxtQkFBbUIsRUFBRSxNQUFNO3dCQUMzQix5QkFBeUIsRUFBRSxNQUFNO3dCQUNqQyxXQUFXLEVBQUUsWUFBWTt3QkFDekIsYUFBYSxFQUFFLGNBQWM7cUJBQzdCO29CQUNELFNBQVMsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29CQUN0QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3JDO3dEQW1GVSxNQUFNO3NCQUhmLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDOztzQkFDaEMsWUFBWTt1QkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7O3NCQUN0QyxZQUFZO3VCQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkF1RTdCLGdCQUFnQjtzQkFEekIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgTmdTdHlsZSwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcblx0dHlwZSBBZnRlckNvbnRlbnRJbml0LFxuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXG5cdENvbXBvbmVudCxcblx0RGVzdHJveVJlZixcblx0RWxlbWVudFJlZixcblx0SG9zdExpc3RlbmVyLFxuXHR0eXBlIE9uRGVzdHJveSxcblx0UExBVEZPUk1fSUQsXG5cdFJlbmRlcmVyMixcblx0Vmlld0VuY2Fwc3VsYXRpb24sXG5cdGJvb2xlYW5BdHRyaWJ1dGUsXG5cdGNvbXB1dGVkLFxuXHRlZmZlY3QsXG5cdGZvcndhcmRSZWYsXG5cdGluamVjdCxcblx0aW5wdXQsXG5cdG1vZGVsLFxuXHRvdXRwdXQsXG5cdHNpZ25hbCxcblx0dmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2hhbmdlRm4sIFRvdWNoRm4gfSBmcm9tICdAc3BhcnRhbi1uZy9icmFpbi9mb3Jtcyc7XG5cbmV4cG9ydCBjb25zdCBCUk5fU1dJVENIX1ZBTFVFX0FDQ0VTU09SID0ge1xuXHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0dXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQnJuU3dpdGNoQ29tcG9uZW50KSxcblx0bXVsdGk6IHRydWUsXG59O1xuXG5jb25zdCBDT05UQUlORVJfUE9TVF9GSVggPSAnLXN3aXRjaCc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2Jybi1zd2l0Y2gnLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbTmdTdHlsZV0sXG5cdHRlbXBsYXRlOiBgXG5cdFx0PGlucHV0XG5cdFx0XHQjY2hlY2tCb3hcblx0XHRcdHRhYmluZGV4PVwiLTFcIlxuXHRcdFx0dHlwZT1cImNoZWNrYm94XCJcblx0XHRcdHJvbGU9XCJzd2l0Y2hcIlxuXHRcdFx0W2lkXT1cImZvckNoaWxkKHN0YXRlKCkuaWQpID8/ICcnXCJcblx0XHRcdFtuYW1lXT1cImZvckNoaWxkKHN0YXRlKCkubmFtZSkgPz8gJydcIlxuXHRcdFx0W3ZhbHVlXT1cImNoZWNrZWQoKSA/ICdvbicgOiAnb2ZmJ1wiXG5cdFx0XHRbbmdTdHlsZV09XCJ7XG5cdFx0XHRcdHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuXHRcdFx0XHR3aWR0aDogJzFweCcsXG5cdFx0XHRcdGhlaWdodDogJzFweCcsXG5cdFx0XHRcdHBhZGRpbmc6ICcwJyxcblx0XHRcdFx0bWFyZ2luOiAtJzFweCcsXG5cdFx0XHRcdG92ZXJmbG93OiAnaGlkZGVuJyxcblx0XHRcdFx0Y2xpcDogJ3JlY3QoMCwgMCwgMCwgMCknLFxuXHRcdFx0XHR3aGl0ZVNwYWNlOiAnbm93cmFwJyxcblx0XHRcdFx0Ym9yZGVyV2lkdGg6ICcwJyxcblx0XHRcdH1cIlxuXHRcdFx0W2NoZWNrZWRdPVwiY2hlY2tlZCgpXCJcblx0XHRcdFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsKClcIlxuXHRcdFx0W2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZGJ5KClcIlxuXHRcdFx0W2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJhcmlhRGVzY3JpYmVkYnkoKVwiXG5cdFx0XHRbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkKCkgfHwgbnVsbFwiXG5cdFx0Lz5cblx0XHQ8bmctY29udGVudCBzZWxlY3Q9XCJicm4tc3dpdGNoLXRodW1iXCIgLz5cblx0YCxcblx0aG9zdDoge1xuXHRcdHRhYmluZGV4OiAnMCcsXG5cdFx0J1thdHRyLmRhdGEtc3RhdGVdJzogJ2NoZWNrZWQoKSA/IFwiY2hlY2tlZFwiIDogXCJ1bmNoZWNrZWRcIicsXG5cdFx0J1thdHRyLmRhdGEtZm9jdXMtdmlzaWJsZV0nOiAnZm9jdXNWaXNpYmxlKCknLFxuXHRcdCdbYXR0ci5kYXRhLWZvY3VzXSc6ICdmb2N1c2VkKCknLFxuXHRcdCdbYXR0ci5kYXRhLWRpc2FibGVkXSc6ICdzdGF0ZSgpLmRpc2FibGVkKCknLFxuXHRcdCdbYXR0ci5hcmlhLWxhYmVsbGVkYnldJzogJ251bGwnLFxuXHRcdCdbYXR0ci5hcmlhLWxhYmVsXSc6ICdudWxsJyxcblx0XHQnW2F0dHIuYXJpYS1kZXNjcmliZWRieV0nOiAnbnVsbCcsXG5cdFx0J1thdHRyLmlkXSc6ICdzdGF0ZSgpLmlkJyxcblx0XHQnW2F0dHIubmFtZV0nOiAnc3RhdGUoKS5uYW1lJyxcblx0fSxcblx0cHJvdmlkZXJzOiBbQlJOX1NXSVRDSF9WQUxVRV9BQ0NFU1NPUl0sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5Td2l0Y2hDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuXHRwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9yZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9pc0Jyb3dzZXIgPSBpc1BsYXRmb3JtQnJvd3NlcihpbmplY3QoUExBVEZPUk1fSUQpKTtcblx0cHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG5cdHByaXZhdGUgcmVhZG9ubHkgX2ZvY3VzTW9uaXRvciA9IGluamVjdChGb2N1c01vbml0b3IpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9jZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG5cdHByb3RlY3RlZCByZWFkb25seSBmb2N1c1Zpc2libGUgPSBzaWduYWwoZmFsc2UpO1xuXHRwcm90ZWN0ZWQgcmVhZG9ubHkgZm9jdXNlZCA9IHNpZ25hbChmYWxzZSk7XG5cblx0cHVibGljIHJlYWRvbmx5IGNoZWNrZWQgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG5cblx0LyoqIFVzZWQgdG8gc2V0IHRoZSBpZCBvbiB0aGUgdW5kZXJseWluZyBpbnB1dCBlbGVtZW50LiAqL1xuXG5cdHB1YmxpYyByZWFkb25seSBpZCA9IGlucHV0PHN0cmluZyB8IG51bGw+KG51bGwpO1xuXG5cdC8qKiBVc2VkIHRvIHNldCB0aGUgbmFtZSBhdHRyaWJ1dGUgb24gdGhlIHVuZGVybHlpbmcgaW5wdXQgZWxlbWVudC4gKi9cblx0cHVibGljIHJlYWRvbmx5IG5hbWUgPSBpbnB1dDxzdHJpbmcgfCBudWxsPihudWxsKTtcblxuXHQvKiogVXNlZCB0byBzZXQgdGhlIGFyaWEtbGFiZWwgYXR0cmlidXRlIG9uIHRoZSB1bmRlcmx5aW5nIGlucHV0IGVsZW1lbnQuICovXG5cdHB1YmxpYyByZWFkb25seSBhcmlhTGFiZWwgPSBpbnB1dDxzdHJpbmcgfCBudWxsPihudWxsLCB7IGFsaWFzOiAnYXJpYS1sYWJlbCcgfSk7XG5cblx0LyoqIFVzZWQgdG8gc2V0IHRoZSBhcmlhLWxhYmVsbGVkYnkgYXR0cmlidXRlIG9uIHRoZSB1bmRlcmx5aW5nIGlucHV0IGVsZW1lbnQuICovXG5cdHB1YmxpYyByZWFkb25seSBhcmlhTGFiZWxsZWRieSA9IGlucHV0PHN0cmluZyB8IG51bGw+KG51bGwsIHsgYWxpYXM6ICdhcmlhLWxhYmVsbGVkYnknIH0pO1xuXG5cdC8qKiBVc2VkIHRvIHNldCB0aGUgYXJpYS1kZXNjcmliZWRieSBhdHRyaWJ1dGUgb24gdGhlIHVuZGVybHlpbmcgaW5wdXQgZWxlbWVudC4gKi9cblx0cHVibGljIHJlYWRvbmx5IGFyaWFEZXNjcmliZWRieSA9IGlucHV0PHN0cmluZyB8IG51bGw+KG51bGwsIHsgYWxpYXM6ICdhcmlhLWRlc2NyaWJlZGJ5JyB9KTtcblxuXHRwdWJsaWMgcmVhZG9ubHkgcmVxdWlyZWQgPSBpbnB1dChmYWxzZSwgeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSk7XG5cblx0cHVibGljIHJlYWRvbmx5IGRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbiwgQm9vbGVhbklucHV0PihmYWxzZSwge1xuXHRcdHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSxcblx0fSk7XG5cblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuXHRwcm90ZWN0ZWQgX29uQ2hhbmdlOiBDaGFuZ2VGbjxib29sZWFuPiA9ICgpID0+IHt9O1xuXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG5cdHByaXZhdGUgX29uVG91Y2hlZDogVG91Y2hGbiA9ICgpID0+IHt9O1xuXG5cdHB1YmxpYyByZWFkb25seSBjaGVja2JveCA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+PignY2hlY2tCb3gnKTtcblxuXHRwdWJsaWMgcmVhZG9ubHkgY2hhbmdlZCA9IG91dHB1dDxib29sZWFuPigpO1xuXG5cdHB1YmxpYyByZWFkb25seSB0b3VjaGVkID0gb3V0cHV0PHZvaWQ+KCk7XG5cblx0cHJvdGVjdGVkIHJlYWRvbmx5IHN0YXRlID0gY29tcHV0ZWQoKCkgPT4ge1xuXHRcdGNvbnN0IG5hbWUgPSB0aGlzLm5hbWUoKTtcblx0XHRjb25zdCBpZCA9IHRoaXMuaWQoKTtcblx0XHRyZXR1cm4ge1xuXHRcdFx0ZGlzYWJsZWQ6IHNpZ25hbCh0aGlzLmRpc2FibGVkKCkpLFxuXHRcdFx0bmFtZTogbmFtZSA/IG5hbWUgKyBDT05UQUlORVJfUE9TVF9GSVggOiBudWxsLFxuXHRcdFx0aWQ6IGlkID8gaWQgKyBDT05UQUlORVJfUE9TVF9GSVggOiBudWxsLFxuXHRcdH07XG5cdH0pO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGVmZmVjdCgoKSA9PiB7XG5cdFx0XHQvKiogc2VhcmNoIGZvciB0aGUgbGFiZWwgYW5kIHNldCB0aGUgZGlzYWJsZWQgc3RhdGUgKi9cblx0XHRcdGxldCBwYXJlbnQgPSB0aGlzLl9yZW5kZXJlci5wYXJlbnROb2RlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG5cdFx0XHRpZiAoIXBhcmVudCkgcmV0dXJuO1xuXHRcdFx0Ly8gaWYgcGFyZW50IGlzIGEgSExNLVNXSVRDSCwgdGhlbiB3ZSBuZWVkIHRvIGdvIHVwIG9uZSBtb3JlIGxldmVsIHRvIGdldCB0aGUgbGFiZWxcblx0XHRcdGlmIChwYXJlbnQ/LnRhZ05hbWUgPT09ICdITE0tU1dJVENIJykge1xuXHRcdFx0XHRwYXJlbnQgPSB0aGlzLl9yZW5kZXJlci5wYXJlbnROb2RlKHBhcmVudCk7XG5cdFx0XHR9XG5cdFx0XHRpZiAoIXBhcmVudCkgcmV0dXJuO1xuXHRcdFx0Ly8gY2hlY2sgaWYgcGFyZW50IGlzIGEgbGFiZWwgYW5kIGFzc3VtZSBpdCBpcyBmb3IgdGhpcyBjaGVja2JveFxuXHRcdFx0aWYgKHBhcmVudD8udGFnTmFtZSA9PT0gJ0xBQkVMJykge1xuXHRcdFx0XHR0aGlzLl9yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGFyZW50LCAnZGF0YS1kaXNhYmxlZCcsIHRoaXMuc3RhdGUoKS5kaXNhYmxlZCgpID8gJ3RydWUnIDogJ2ZhbHNlJyk7XG5cdFx0XHRcdHJldHVybjtcblx0XHRcdH1cblx0XHRcdGlmICghdGhpcy5faXNCcm93c2VyKSByZXR1cm47XG5cblx0XHRcdGNvbnN0IGxhYmVsID0gcGFyZW50Py5xdWVyeVNlbGVjdG9yKGBsYWJlbFtmb3I9XCIke3RoaXMuZm9yQ2hpbGQodGhpcy5zdGF0ZSgpLmlkKX1cIl1gKTtcblx0XHRcdGlmICghbGFiZWwpIHJldHVybjtcblx0XHRcdHRoaXMuX3JlbmRlcmVyLnNldEF0dHJpYnV0ZShsYWJlbCwgJ2RhdGEtZGlzYWJsZWQnLCB0aGlzLnN0YXRlKCkuZGlzYWJsZWQoKSA/ICd0cnVlJyA6ICdmYWxzZScpO1xuXHRcdH0pO1xuXHR9XG5cblx0QEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuXHRASG9zdExpc3RlbmVyKCdrZXl1cC5lbnRlcicsIFsnJGV2ZW50J10pXG5cdEBIb3N0TGlzdGVuZXIoJ2tleXVwLnNwYWNlJywgWyckZXZlbnQnXSlcblx0cHJvdGVjdGVkIHRvZ2dsZShldmVudDogRXZlbnQpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5zdGF0ZSgpLmRpc2FibGVkKCkpIHJldHVybjtcblx0XHRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG5cdFx0dGhpcy5jaGVja2VkLnVwZGF0ZSgoY2hlY2tlZCkgPT4gIWNoZWNrZWQpO1xuXHRcdHRoaXMuX29uQ2hhbmdlKHRoaXMuY2hlY2tlZCgpKTtcblx0XHR0aGlzLmNoYW5nZWQuZW1pdCh0aGlzLmNoZWNrZWQoKSk7XG5cdH1cblxuXHRuZ0FmdGVyQ29udGVudEluaXQoKSB7XG5cdFx0dGhpcy5fZm9jdXNNb25pdG9yXG5cdFx0XHQubW9uaXRvcih0aGlzLl9lbGVtZW50UmVmLCB0cnVlKVxuXHRcdFx0LnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKVxuXHRcdFx0LnN1YnNjcmliZSgoZm9jdXNPcmlnaW4pID0+IHtcblx0XHRcdFx0aWYgKGZvY3VzT3JpZ2luKSB0aGlzLmZvY3VzZWQuc2V0KHRydWUpO1xuXHRcdFx0XHRpZiAoZm9jdXNPcmlnaW4gPT09ICdrZXlib2FyZCcgfHwgZm9jdXNPcmlnaW4gPT09ICdwcm9ncmFtJykge1xuXHRcdFx0XHRcdHRoaXMuZm9jdXNWaXNpYmxlLnNldCh0cnVlKTtcblx0XHRcdFx0XHR0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKCFmb2N1c09yaWdpbikge1xuXHRcdFx0XHRcdC8vIFdoZW4gYSBmb2N1c2VkIGVsZW1lbnQgYmVjb21lcyBkaXNhYmxlZCwgdGhlIGJyb3dzZXIgKmltbWVkaWF0ZWx5KiBmaXJlcyBhIGJsdXIgZXZlbnQuXG5cdFx0XHRcdFx0Ly8gQW5ndWxhciBkb2VzIG5vdCBleHBlY3QgZXZlbnRzIHRvIGJlIHJhaXNlZCBkdXJpbmcgY2hhbmdlIGRldGVjdGlvbiwgc28gYW55IHN0YXRlXG5cdFx0XHRcdFx0Ly8gY2hhbmdlIChzdWNoIGFzIGEgZm9ybSBjb250cm9sJ3MgbmctdG91Y2hlZCkgd2lsbCBjYXVzZSBhIGNoYW5nZWQtYWZ0ZXItY2hlY2tlZCBlcnJvci5cblx0XHRcdFx0XHQvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTc3OTMuIFRvIHdvcmsgYXJvdW5kIHRoaXMsIHdlIGRlZmVyXG5cdFx0XHRcdFx0Ly8gdGVsbGluZyB0aGUgZm9ybSBjb250cm9sIGl0IGhhcyBiZWVuIHRvdWNoZWQgdW50aWwgdGhlIG5leHQgdGljay5cblx0XHRcdFx0XHRQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcblx0XHRcdFx0XHRcdHRoaXMuZm9jdXNWaXNpYmxlLnNldChmYWxzZSk7XG5cdFx0XHRcdFx0XHR0aGlzLmZvY3VzZWQuc2V0KGZhbHNlKTtcblx0XHRcdFx0XHRcdHRoaXMuX29uVG91Y2hlZCgpO1xuXHRcdFx0XHRcdFx0dGhpcy50b3VjaGVkLmVtaXQoKTtcblx0XHRcdFx0XHRcdHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cblx0XHRpZiAoIXRoaXMuY2hlY2tib3goKSkgcmV0dXJuO1xuXHRcdHRoaXMuY2hlY2tib3goKS5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5jaGVja2VkKCkgPyAnb24nIDogJ29mZic7XG5cdFx0dGhpcy5jaGVja2JveCgpLm5hdGl2ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScpKTtcblx0fVxuXG5cdG5nT25EZXN0cm95KCkge1xuXHRcdHRoaXMuX2ZvY3VzTW9uaXRvci5zdG9wTW9uaXRvcmluZyh0aGlzLl9lbGVtZW50UmVmKTtcblx0fVxuXG5cdHByb3RlY3RlZCBmb3JDaGlsZChwYXJlbnRWYWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IHN0cmluZyB8IG51bGwge1xuXHRcdHJldHVybiBwYXJlbnRWYWx1ZSA/IHBhcmVudFZhbHVlLnJlcGxhY2UoQ09OVEFJTkVSX1BPU1RfRklYLCAnJykgOiBudWxsO1xuXHR9XG5cblx0d3JpdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xuXHRcdHRoaXMuY2hlY2tlZC5zZXQoQm9vbGVhbih2YWx1ZSkpO1xuXHR9XG5cblx0cmVnaXN0ZXJPbkNoYW5nZShmbjogQ2hhbmdlRm48Ym9vbGVhbj4pOiB2b2lkIHtcblx0XHR0aGlzLl9vbkNoYW5nZSA9IGZuO1xuXHR9XG5cblx0cmVnaXN0ZXJPblRvdWNoZWQoZm46IFRvdWNoRm4pOiB2b2lkIHtcblx0XHR0aGlzLl9vblRvdWNoZWQgPSBmbjtcblx0fVxuXG5cdC8qKiBJbXBsZW1lbnRlZCBhcyBhIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuICovXG5cdHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuXHRcdHRoaXMuc3RhdGUoKS5kaXNhYmxlZC5zZXQoaXNEaXNhYmxlZCk7XG5cdFx0dGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuXHR9XG5cblx0LyoqXG5cdCAqIElmIHRoZSBzcGFjZSBrZXkgaXMgcHJlc3NlZCwgcHJldmVudCB0aGUgZGVmYXVsdCBhY3Rpb24gdG8gc3RvcCB0aGUgcGFnZSBmcm9tIHNjcm9sbGluZy5cblx0ICovXG5cdEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uc3BhY2UnLCBbJyRldmVudCddKVxuXHRwcm90ZWN0ZWQgcHJldmVudFNjcm9sbGluZyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuXHRcdGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cdH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BhcnRhbi1uZy1icmFpbi1zd2l0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL3N3aXRjaC9zcmMvc3BhcnRhbi1uZy1icmFpbi1zd2l0Y2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { BrnCellDefDirective } from './lib/brn-cell-def.directive';
|
|
3
|
+
import { BrnColumnDefComponent } from './lib/brn-column-def.component';
|
|
4
|
+
import { BrnFooterDefDirective } from './lib/brn-footer-def.directive';
|
|
5
|
+
import { BrnHeaderDefDirective } from './lib/brn-header-def.directive';
|
|
6
|
+
import { BrnPaginatorDirective } from './lib/brn-paginator.directive';
|
|
7
|
+
import { BrnTableComponent } from './lib/brn-table.component';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export { BrnCellDefDirective } from './lib/brn-cell-def.directive';
|
|
10
|
+
export { BrnColumnDefComponent } from './lib/brn-column-def.component';
|
|
11
|
+
export { BrnColumnManager, useBrnColumnManager } from './lib/brn-column-manager';
|
|
12
|
+
export { BrnFooterDefDirective } from './lib/brn-footer-def.directive';
|
|
13
|
+
export { BrnHeaderDefDirective } from './lib/brn-header-def.directive';
|
|
14
|
+
export { BrnPaginatorDirective } from './lib/brn-paginator.directive';
|
|
15
|
+
export { BrnTableComponent } from './lib/brn-table.component';
|
|
16
|
+
export const BrnTableImports = [
|
|
17
|
+
BrnCellDefDirective,
|
|
18
|
+
BrnColumnDefComponent,
|
|
19
|
+
BrnFooterDefDirective,
|
|
20
|
+
BrnHeaderDefDirective,
|
|
21
|
+
BrnTableComponent,
|
|
22
|
+
BrnPaginatorDirective,
|
|
23
|
+
];
|
|
24
|
+
export class BrnTableModule {
|
|
25
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
26
|
+
/** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: BrnTableModule, imports: [BrnCellDefDirective,
|
|
27
|
+
BrnColumnDefComponent,
|
|
28
|
+
BrnFooterDefDirective,
|
|
29
|
+
BrnHeaderDefDirective,
|
|
30
|
+
BrnTableComponent,
|
|
31
|
+
BrnPaginatorDirective], exports: [BrnCellDefDirective,
|
|
32
|
+
BrnColumnDefComponent,
|
|
33
|
+
BrnFooterDefDirective,
|
|
34
|
+
BrnHeaderDefDirective,
|
|
35
|
+
BrnTableComponent,
|
|
36
|
+
BrnPaginatorDirective] });
|
|
37
|
+
/** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnTableModule, imports: [BrnColumnDefComponent,
|
|
38
|
+
BrnTableComponent] });
|
|
39
|
+
}
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnTableModule, decorators: [{
|
|
41
|
+
type: NgModule,
|
|
42
|
+
args: [{
|
|
43
|
+
imports: [...BrnTableImports],
|
|
44
|
+
exports: [...BrnTableImports],
|
|
45
|
+
}]
|
|
46
|
+
}] });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL3RhYmxlL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUU5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQW9DLE1BQU0sK0JBQStCLENBQUM7QUFDeEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFOUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzlCLG1CQUFtQjtJQUNuQixxQkFBcUI7SUFDckIscUJBQXFCO0lBQ3JCLHFCQUFxQjtJQUNyQixpQkFBaUI7SUFDakIscUJBQXFCO0NBQ1osQ0FBQztBQU1YLE1BQU0sT0FBTyxjQUFjOzBIQUFkLGNBQWM7MkhBQWQsY0FBYyxZQVoxQixtQkFBbUI7WUFDbkIscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsaUJBQWlCO1lBQ2pCLHFCQUFxQixhQUxyQixtQkFBbUI7WUFDbkIscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsaUJBQWlCO1lBQ2pCLHFCQUFxQjsySEFPVCxjQUFjLFlBWDFCLHFCQUFxQjtZQUdyQixpQkFBaUI7OzJGQVFMLGNBQWM7a0JBSjFCLFFBQVE7bUJBQUM7b0JBQ1QsT0FBTyxFQUFFLENBQUMsR0FBRyxlQUFlLENBQUM7b0JBQzdCLE9BQU8sRUFBRSxDQUFDLEdBQUcsZUFBZSxDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCcm5DZWxsRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLWNlbGwtZGVmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5Db2x1bW5EZWZDb21wb25lbnQgfSBmcm9tICcuL2xpYi9icm4tY29sdW1uLWRlZi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnJuRm9vdGVyRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLWZvb3Rlci1kZWYuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJybkhlYWRlckRlZkRpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2Jybi1oZWFkZXItZGVmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5QYWdpbmF0b3JEaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9icm4tcGFnaW5hdG9yLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5UYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vbGliL2Jybi10YWJsZS5jb21wb25lbnQnO1xuXG5leHBvcnQgeyBCcm5DZWxsRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLWNlbGwtZGVmLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBCcm5Db2x1bW5EZWZDb21wb25lbnQgfSBmcm9tICcuL2xpYi9icm4tY29sdW1uLWRlZi5jb21wb25lbnQnO1xuZXhwb3J0IHsgQnJuQ29sdW1uTWFuYWdlciwgdXNlQnJuQ29sdW1uTWFuYWdlciB9IGZyb20gJy4vbGliL2Jybi1jb2x1bW4tbWFuYWdlcic7XG5leHBvcnQgeyBCcm5Gb290ZXJEZWZEaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9icm4tZm9vdGVyLWRlZi5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgQnJuSGVhZGVyRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLWhlYWRlci1kZWYuZGlyZWN0aXZlJztcbmV4cG9ydCB7IEJyblBhZ2luYXRvckRpcmVjdGl2ZSwgUGFnaW5hdG9yQ29udGV4dCwgUGFnaW5hdG9yU3RhdGUgfSBmcm9tICcuL2xpYi9icm4tcGFnaW5hdG9yLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBCcm5UYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vbGliL2Jybi10YWJsZS5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgQnJuVGFibGVJbXBvcnRzID0gW1xuXHRCcm5DZWxsRGVmRGlyZWN0aXZlLFxuXHRCcm5Db2x1bW5EZWZDb21wb25lbnQsXG5cdEJybkZvb3RlckRlZkRpcmVjdGl2ZSxcblx0QnJuSGVhZGVyRGVmRGlyZWN0aXZlLFxuXHRCcm5UYWJsZUNvbXBvbmVudCxcblx0QnJuUGFnaW5hdG9yRGlyZWN0aXZlLFxuXSBhcyBjb25zdDtcblxuQE5nTW9kdWxlKHtcblx0aW1wb3J0czogWy4uLkJyblRhYmxlSW1wb3J0c10sXG5cdGV4cG9ydHM6IFsuLi5Ccm5UYWJsZUltcG9ydHNdLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5UYWJsZU1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CdkCellDef } from '@angular/cdk/table';
|
|
2
|
+
import { Directive, TemplateRef, inject } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class BrnCellDefDirective extends CdkCellDef {
|
|
5
|
+
template;
|
|
6
|
+
constructor() {
|
|
7
|
+
const template = inject(TemplateRef);
|
|
8
|
+
super(template);
|
|
9
|
+
this.template = template;
|
|
10
|
+
}
|
|
11
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnCellDefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
12
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnCellDefDirective, isStandalone: true, selector: "[brnCellDef]", exportAs: ["brnCellDef"], usesInheritance: true, ngImport: i0 });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnCellDefDirective, decorators: [{
|
|
15
|
+
type: Directive,
|
|
16
|
+
args: [{
|
|
17
|
+
standalone: true,
|
|
18
|
+
selector: '[brnCellDef]',
|
|
19
|
+
exportAs: 'brnCellDef',
|
|
20
|
+
}]
|
|
21
|
+
}], ctorParameters: () => [] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWNlbGwtZGVmLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYnJhaW4vdGFibGUvc3JjL2xpYi9icm4tY2VsbC1kZWYuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTy9ELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxVQUFVO0lBQ2xDLFFBQVEsQ0FBdUI7SUFFL0M7UUFDQyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQXVCLFdBQVcsQ0FBQyxDQUFDO1FBRTNELEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMxQixDQUFDOzBIQVJXLG1CQUFtQjs4R0FBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUwvQixTQUFTO21CQUFDO29CQUNWLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsY0FBYztvQkFDeEIsUUFBUSxFQUFFLFlBQVk7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrQ2VsbERlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90YWJsZSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdHNlbGVjdG9yOiAnW2JybkNlbGxEZWZdJyxcblx0ZXhwb3J0QXM6ICdicm5DZWxsRGVmJyxcbn0pXG5leHBvcnQgY2xhc3MgQnJuQ2VsbERlZkRpcmVjdGl2ZSBleHRlbmRzIENka0NlbGxEZWYge1xuXHRwdWJsaWMgb3ZlcnJpZGUgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGNvbnN0IHRlbXBsYXRlID0gaW5qZWN0PFRlbXBsYXRlUmVmPHVua25vd24+PihUZW1wbGF0ZVJlZik7XG5cblx0XHRzdXBlcih0ZW1wbGF0ZSk7XG5cdFx0dGhpcy50ZW1wbGF0ZSA9IHRlbXBsYXRlO1xuXHR9XG59XG4iXX0=
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { CdkColumnDef, CdkTableModule, } from '@angular/cdk/table';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, ContentChild, Input, ViewChild, ViewEncapsulation, input, } from '@angular/core';
|
|
3
|
+
import { BrnCellDefDirective } from './brn-cell-def.directive';
|
|
4
|
+
import { BrnFooterDefDirective } from './brn-footer-def.directive';
|
|
5
|
+
import { BrnHeaderDefDirective } from './brn-header-def.directive';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/cdk/table";
|
|
8
|
+
export class BrnColumnDefComponent {
|
|
9
|
+
get columnDef() {
|
|
10
|
+
return this._columnDef;
|
|
11
|
+
}
|
|
12
|
+
get cell() {
|
|
13
|
+
return this._columnDef.cell;
|
|
14
|
+
}
|
|
15
|
+
_name = '';
|
|
16
|
+
get name() {
|
|
17
|
+
return this._name;
|
|
18
|
+
}
|
|
19
|
+
set name(value) {
|
|
20
|
+
this._name = value;
|
|
21
|
+
if (!this._columnDef)
|
|
22
|
+
return;
|
|
23
|
+
this._columnDef.name = value;
|
|
24
|
+
}
|
|
25
|
+
class = input('');
|
|
26
|
+
_columnDef;
|
|
27
|
+
_cellDef;
|
|
28
|
+
_footerCellDef;
|
|
29
|
+
_headerCellDef;
|
|
30
|
+
ngAfterContentChecked() {
|
|
31
|
+
this._columnDef.name = this.name;
|
|
32
|
+
if (this._cellDef) {
|
|
33
|
+
this._columnDef.cell = this._cellDef;
|
|
34
|
+
}
|
|
35
|
+
if (this._headerCellDef) {
|
|
36
|
+
this._columnDef.headerCell = this._headerCellDef;
|
|
37
|
+
}
|
|
38
|
+
if (this._footerCellDef) {
|
|
39
|
+
this._columnDef.footerCell = this._footerCellDef;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnColumnDefComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
43
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.5", type: BrnColumnDefComponent, isStandalone: true, selector: "brn-column-def", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "_cellDef", first: true, predicate: BrnCellDefDirective, descendants: true, static: true }, { propertyName: "_footerCellDef", first: true, predicate: BrnFooterDefDirective, descendants: true, static: true }, { propertyName: "_headerCellDef", first: true, predicate: BrnHeaderDefDirective, descendants: true, static: true }], viewQueries: [{ propertyName: "_columnDef", first: true, predicate: CdkColumnDef, descendants: true, static: true }], ngImport: i0, template: `
|
|
44
|
+
<ng-container [cdkColumnDef]="name">
|
|
45
|
+
<ng-content select="[brnHeaderDef]" />
|
|
46
|
+
<ng-content select="[brnCellDef]" />
|
|
47
|
+
<ng-content select="[brnFooterDef]" />
|
|
48
|
+
</ng-container>
|
|
49
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CdkTableModule }, { kind: "directive", type: i1.CdkColumnDef, selector: "[cdkColumnDef]", inputs: ["cdkColumnDef", "sticky", "stickyEnd"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
50
|
+
}
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnColumnDefComponent, decorators: [{
|
|
52
|
+
type: Component,
|
|
53
|
+
args: [{
|
|
54
|
+
selector: 'brn-column-def',
|
|
55
|
+
standalone: true,
|
|
56
|
+
imports: [CdkTableModule],
|
|
57
|
+
template: `
|
|
58
|
+
<ng-container [cdkColumnDef]="name">
|
|
59
|
+
<ng-content select="[brnHeaderDef]" />
|
|
60
|
+
<ng-content select="[brnCellDef]" />
|
|
61
|
+
<ng-content select="[brnFooterDef]" />
|
|
62
|
+
</ng-container>
|
|
63
|
+
`,
|
|
64
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
65
|
+
encapsulation: ViewEncapsulation.None,
|
|
66
|
+
}]
|
|
67
|
+
}], propDecorators: { name: [{
|
|
68
|
+
type: Input
|
|
69
|
+
}], _columnDef: [{
|
|
70
|
+
type: ViewChild,
|
|
71
|
+
args: [CdkColumnDef, { static: true }]
|
|
72
|
+
}], _cellDef: [{
|
|
73
|
+
type: ContentChild,
|
|
74
|
+
args: [BrnCellDefDirective, { static: true }]
|
|
75
|
+
}], _footerCellDef: [{
|
|
76
|
+
type: ContentChild,
|
|
77
|
+
args: [BrnFooterDefDirective, { static: true }]
|
|
78
|
+
}], _headerCellDef: [{
|
|
79
|
+
type: ContentChild,
|
|
80
|
+
args: [BrnHeaderDefDirective, { static: true }]
|
|
81
|
+
}] } });
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWNvbHVtbi1kZWYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi90YWJsZS9zcmMvbGliL2Jybi1jb2x1bW4tZGVmLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRU4sWUFBWSxFQUdaLGNBQWMsR0FDZCxNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFFTix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQixLQUFLLEdBQ0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7OztBQWdCbkUsTUFBTSxPQUFPLHFCQUFxQjtJQUNqQyxJQUFXLFNBQVM7UUFDbkIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDZCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO0lBQzdCLENBQUM7SUFFTyxLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ25CLElBQ1csSUFBSTtRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBVyxJQUFJLENBQUMsS0FBYTtRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVU7WUFBRSxPQUFPO1FBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBRWUsS0FBSyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUdqQixVQUFVLENBQWdCO0lBRzFCLFFBQVEsQ0FBYztJQUV0QixjQUFjLENBQW9CO0lBRWxDLGNBQWMsQ0FBb0I7SUFFNUMscUJBQXFCO1FBQzNCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDakMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUNsRCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUNsRCxDQUFDO0lBQ0YsQ0FBQzswSEE1Q1cscUJBQXFCOzhHQUFyQixxQkFBcUIsMFdBMEJuQixtQkFBbUIsK0ZBRW5CLHFCQUFxQiwrRkFFckIscUJBQXFCLDBHQVB4QixZQUFZLDhEQWpDYjs7Ozs7O0VBTVQsMkRBUFMsY0FBYzs7MkZBV1oscUJBQXFCO2tCQWRqQyxTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQ3pCLFFBQVEsRUFBRTs7Ozs7O0VBTVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUNyQzs4QkFZVyxJQUFJO3NCQURkLEtBQUs7Z0JBY1csVUFBVTtzQkFEMUIsU0FBUzt1QkFBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUl4QixRQUFRO3NCQUR4QixZQUFZO3VCQUFDLG1CQUFtQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFHbEMsY0FBYztzQkFEOUIsWUFBWTt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBR3BDLGNBQWM7c0JBRDlCLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0dHlwZSBDZGtDZWxsRGVmLFxuXHRDZGtDb2x1bW5EZWYsXG5cdHR5cGUgQ2RrRm9vdGVyQ2VsbERlZixcblx0dHlwZSBDZGtIZWFkZXJDZWxsRGVmLFxuXHRDZGtUYWJsZU1vZHVsZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RhYmxlJztcbmltcG9ydCB7XG5cdHR5cGUgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0Q29udGVudENoaWxkLFxuXHRJbnB1dCxcblx0Vmlld0NoaWxkLFxuXHRWaWV3RW5jYXBzdWxhdGlvbixcblx0aW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnJuQ2VsbERlZkRpcmVjdGl2ZSB9IGZyb20gJy4vYnJuLWNlbGwtZGVmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5Gb290ZXJEZWZEaXJlY3RpdmUgfSBmcm9tICcuL2Jybi1mb290ZXItZGVmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5IZWFkZXJEZWZEaXJlY3RpdmUgfSBmcm9tICcuL2Jybi1oZWFkZXItZGVmLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2Jybi1jb2x1bW4tZGVmJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW0Nka1RhYmxlTW9kdWxlXSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmctY29udGFpbmVyIFtjZGtDb2x1bW5EZWZdPVwibmFtZVwiPlxuXHRcdFx0PG5nLWNvbnRlbnQgc2VsZWN0PVwiW2JybkhlYWRlckRlZl1cIiAvPlxuXHRcdFx0PG5nLWNvbnRlbnQgc2VsZWN0PVwiW2JybkNlbGxEZWZdXCIgLz5cblx0XHRcdDxuZy1jb250ZW50IHNlbGVjdD1cIlticm5Gb290ZXJEZWZdXCIgLz5cblx0XHQ8L25nLWNvbnRhaW5lcj5cblx0YCxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEJybkNvbHVtbkRlZkNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudENoZWNrZWQge1xuXHRwdWJsaWMgZ2V0IGNvbHVtbkRlZigpIHtcblx0XHRyZXR1cm4gdGhpcy5fY29sdW1uRGVmO1xuXHR9XG5cblx0cHVibGljIGdldCBjZWxsKCkge1xuXHRcdHJldHVybiB0aGlzLl9jb2x1bW5EZWYuY2VsbDtcblx0fVxuXG5cdHByaXZhdGUgX25hbWUgPSAnJztcblx0QElucHV0KClcblx0cHVibGljIGdldCBuYW1lKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuX25hbWU7XG5cdH1cblxuXHRwdWJsaWMgc2V0IG5hbWUodmFsdWU6IHN0cmluZykge1xuXHRcdHRoaXMuX25hbWUgPSB2YWx1ZTtcblx0XHRpZiAoIXRoaXMuX2NvbHVtbkRlZikgcmV0dXJuO1xuXHRcdHRoaXMuX2NvbHVtbkRlZi5uYW1lID0gdmFsdWU7XG5cdH1cblxuXHRwdWJsaWMgcmVhZG9ubHkgY2xhc3MgPSBpbnB1dCgnJyk7XG5cblx0QFZpZXdDaGlsZChDZGtDb2x1bW5EZWYsIHsgc3RhdGljOiB0cnVlIH0pXG5cdHByaXZhdGUgcmVhZG9ubHkgX2NvbHVtbkRlZiE6IENka0NvbHVtbkRlZjtcblxuXHRAQ29udGVudENoaWxkKEJybkNlbGxEZWZEaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlIH0pXG5cdHByaXZhdGUgcmVhZG9ubHkgX2NlbGxEZWY/OiBDZGtDZWxsRGVmO1xuXHRAQ29udGVudENoaWxkKEJybkZvb3RlckRlZkRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcblx0cHJpdmF0ZSByZWFkb25seSBfZm9vdGVyQ2VsbERlZj86IENka0Zvb3RlckNlbGxEZWY7XG5cdEBDb250ZW50Q2hpbGQoQnJuSGVhZGVyRGVmRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuXHRwcml2YXRlIHJlYWRvbmx5IF9oZWFkZXJDZWxsRGVmPzogQ2RrSGVhZGVyQ2VsbERlZjtcblxuXHRwdWJsaWMgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xuXHRcdHRoaXMuX2NvbHVtbkRlZi5uYW1lID0gdGhpcy5uYW1lO1xuXHRcdGlmICh0aGlzLl9jZWxsRGVmKSB7XG5cdFx0XHR0aGlzLl9jb2x1bW5EZWYuY2VsbCA9IHRoaXMuX2NlbGxEZWY7XG5cdFx0fVxuXHRcdGlmICh0aGlzLl9oZWFkZXJDZWxsRGVmKSB7XG5cdFx0XHR0aGlzLl9jb2x1bW5EZWYuaGVhZGVyQ2VsbCA9IHRoaXMuX2hlYWRlckNlbGxEZWY7XG5cdFx0fVxuXHRcdGlmICh0aGlzLl9mb290ZXJDZWxsRGVmKSB7XG5cdFx0XHR0aGlzLl9jb2x1bW5EZWYuZm9vdGVyQ2VsbCA9IHRoaXMuX2Zvb3RlckNlbGxEZWY7XG5cdFx0fVxuXHR9XG59XG4iXX0=
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { computed, signal } from '@angular/core';
|
|
2
|
+
export class BrnColumnManager {
|
|
3
|
+
_initialColumnVisibility;
|
|
4
|
+
_columnVisibility;
|
|
5
|
+
allColumns;
|
|
6
|
+
columnVisibility;
|
|
7
|
+
displayedColumns = computed(() => {
|
|
8
|
+
return Object.entries(this._columnVisibility())
|
|
9
|
+
.filter(([, value]) => (typeof value === 'boolean' ? value : value.visible))
|
|
10
|
+
.map(([key]) => key);
|
|
11
|
+
});
|
|
12
|
+
constructor(initialColumnVisibility) {
|
|
13
|
+
this._initialColumnVisibility = initialColumnVisibility;
|
|
14
|
+
this._columnVisibility = signal(this._initialColumnVisibility);
|
|
15
|
+
this._columnVisibility.set(this._initialColumnVisibility);
|
|
16
|
+
this.columnVisibility = this._columnVisibility.asReadonly();
|
|
17
|
+
this.allColumns = this.createAllColumns(this._initialColumnVisibility);
|
|
18
|
+
}
|
|
19
|
+
isColumnVisible = (columnName) => {
|
|
20
|
+
const visibilityMap = this.columnVisibility();
|
|
21
|
+
const columnEntry = visibilityMap[columnName];
|
|
22
|
+
return typeof columnEntry === 'boolean' ? columnEntry : columnEntry.visible;
|
|
23
|
+
};
|
|
24
|
+
isColumnDisabled = (columnName) => this.isColumnVisible(columnName) && this.displayedColumns().length === 1;
|
|
25
|
+
toggleVisibility(columnName) {
|
|
26
|
+
const visibilityMap = this._columnVisibility();
|
|
27
|
+
const columnEntry = visibilityMap[columnName];
|
|
28
|
+
const newVisibilityState = typeof columnEntry === 'boolean' ? !columnEntry : { visible: !columnEntry.visible };
|
|
29
|
+
this._columnVisibility.set({ ...visibilityMap, [columnName]: newVisibilityState });
|
|
30
|
+
}
|
|
31
|
+
setVisible(columnName) {
|
|
32
|
+
const visibilityMap = this._columnVisibility();
|
|
33
|
+
const columnEntry = visibilityMap[columnName];
|
|
34
|
+
const newVisibilityState = typeof columnEntry === 'boolean' ? true : { visible: true };
|
|
35
|
+
this._columnVisibility.set({ ...visibilityMap, [columnName]: newVisibilityState });
|
|
36
|
+
}
|
|
37
|
+
setInvisible(columnName) {
|
|
38
|
+
const visibilityMap = this._columnVisibility();
|
|
39
|
+
const columnEntry = visibilityMap[columnName];
|
|
40
|
+
const newVisibilityState = typeof columnEntry === 'boolean' ? false : { visible: false };
|
|
41
|
+
this._columnVisibility.set({ ...visibilityMap, [columnName]: newVisibilityState });
|
|
42
|
+
}
|
|
43
|
+
createAllColumns(initialColumnVisibility) {
|
|
44
|
+
const keys = Object.keys(initialColumnVisibility);
|
|
45
|
+
if (this.isBooleanConfig(initialColumnVisibility)) {
|
|
46
|
+
return keys;
|
|
47
|
+
}
|
|
48
|
+
return keys.map((key) => {
|
|
49
|
+
const values = initialColumnVisibility[key];
|
|
50
|
+
return {
|
|
51
|
+
name: key,
|
|
52
|
+
...values,
|
|
53
|
+
};
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
isBooleanConfig(config) {
|
|
57
|
+
return typeof Object.values(config)[0] === 'boolean';
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
export const useBrnColumnManager = (initialColumnVisibility) => new BrnColumnManager(initialColumnVisibility);
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWNvbHVtbi1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi90YWJsZS9zcmMvbGliL2Jybi1jb2x1bW4tbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVc5RCxNQUFNLE9BQU8sZ0JBQWdCO0lBQ1gsd0JBQXdCLENBQUk7SUFDNUIsaUJBQWlCLENBQUM7SUFFbkIsVUFBVSxDQUE0QjtJQUN0QyxnQkFBZ0IsQ0FBQztJQUNqQixnQkFBZ0IsR0FBd0IsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNyRSxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7YUFDN0MsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDM0UsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFFSCxZQUFZLHVCQUEwQjtRQUNyQyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsdUJBQXVCLENBQUM7UUFDeEQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDNUQsSUFBSSxDQUFDLFVB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Q2pDLENBQUM7SUFFTyxlQUFlLENBQUMsTUFBVztRQUNsQyxPQUFPLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUM7SUFDdEQsQ0FBQztDQUNEO0FBRUQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBZ0MsdUJBQTBCLEVBQUUsRUFBRSxDQUNoRyxJQUFJLGdCQUFnQixDQUFDLHVCQUF1QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIFNpZ25hbCwgY29tcHV0ZWQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG50eXBlIEJybkNvbHVtblZpc2liaWxpdHkgPSBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiB8IFJlY29yZDxzdHJpbmcsIHsgdmlzaWJsZTogYm9vbGVhbiB9PjtcblxuLy8gcHJldHRpZXItaWdub3JlXG50eXBlIEFsbENvbHVtbnNQcm9wZXJ0eVR5cGU8VD4gPSBUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYm9vbGVhbj5cblx0PyAoa2V5b2YgVClbXVxuXHQ6IFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBpbmZlciBSPlxuXHRcdD8gKFIgZXh0ZW5kcyB7IHZpc2libGU6IGJvb2xlYW4gfSA/IHsgbmFtZToga2V5b2YgVCB9ICYgUiA6IG5ldmVyKVtdXG5cdFx0OiBuZXZlcjtcblxuZXhwb3J0IGNsYXNzIEJybkNvbHVtbk1hbmFnZXI8VCBleHRlbmRzIEJybkNvbHVtblZpc2liaWxpdHk+IHtcblx0cHJpdmF0ZSByZWFkb25seSBfaW5pdGlhbENvbHVtblZpc2liaWxpdHk6IFQ7XG5cdHByaXZhdGUgcmVhZG9ubHkgX2NvbHVtblZpc2liaWxpdHk7XG5cblx0cHVibGljIHJlYWRvbmx5IGFsbENvbHVtbnM6IEFsbENvbHVtbnNQcm9wZXJ0eVR5cGU8VD47XG5cdHB1YmxpYyByZWFkb25seSBjb2x1bW5WaXNpYmlsaXR5O1xuXHRwdWJsaWMgcmVhZG9ubHkgZGlzcGxheWVkQ29sdW1uczogU2lnbmFsPChrZXlvZiBUKVtdPiA9IGNvbXB1dGVkKCgpID0+IHtcblx0XHRyZXR1cm4gT2JqZWN0LmVudHJpZXModGhpcy5fY29sdW1uVmlzaWJpbGl0eSgpKVxuXHRcdFx0LmZpbHRlcigoWywgdmFsdWVdKSA9PiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicgPyB2YWx1ZSA6IHZhbHVlLnZpc2libGUpKVxuXHRcdFx0Lm1hcCgoW2tleV0pID0+IGtleSk7XG5cdH0pO1xuXG5cdGNvbnN0cnVjdG9yKGluaXRpYWxDb2x1bW5WaXNpYmlsaXR5OiBUKSB7XG5cdFx0dGhpcy5faW5pdGlhbENvbHVtblZpc2liaWxpdHkgPSBpbml0aWFsQ29sdW1uVmlzaWJpbGl0eTtcblx0XHR0aGlzLl9jb2x1bW5WaXNpYmlsaXR5ID0gc2lnbmFsKHRoaXMuX2luaXRpYWxDb2x1bW5WaXNpYmlsaXR5KTtcblx0XHR0aGlzLl9jb2x1bW5WaXNpYmlsaXR5LnNldCh0aGlzLl9pbml0aWFsQ29sdW1uVmlzaWJpbGl0eSk7XG5cdFx0dGhpcy5jb2x1bW5WaXNpYmlsaXR5ID0gdGhpcy5fY29sdW1uVmlzaWJpbGl0eS5hc1JlYWRvbmx5KCk7XG5cdFx0dGhpcy5hbGxDb2x1bW5zID0gdGhpcy5jcmVhdGVBbGxDb2x1bW5zKHRoaXMuX2luaXRpYWxDb2x1bW5WaXNpYmlsaXR5KTtcblx0fVxuXG5cdHB1YmxpYyByZWFkb25seSBpc0NvbHVtblZpc2libGUgPSAoY29sdW1uTmFtZTogc3RyaW5nKSA9PiB7XG5cdFx0Y29uc3QgdmlzaWJpbGl0eU1hcCA9IHRoaXMuY29sdW1uVmlzaWJpbGl0eSgpO1xuXHRcdGNvbnN0IGNvbHVtbkVudHJ5ID0gdmlzaWJpbGl0eU1hcFtjb2x1bW5OYW1lXTtcblx0XHRyZXR1cm4gdHlwZW9mIGNvbHVtbkVudHJ5ID09PSAnYm9vbGVhbicgPyBjb2x1bW5FbnRyeSA6IGNvbHVtbkVudHJ5LnZpc2libGU7XG5cdH07XG5cdHB1YmxpYyByZWFkb25seSBpc0NvbHVtbkRpc2FibGVkID0gKGNvbHVtbk5hbWU6IHN0cmluZykgPT5cblx0XHR0aGlzLmlzQ29sdW1uVmlzaWJsZShjb2x1bW5OYW1lKSAmJiB0aGlzLmRpc3BsYXllZENvbHVtbnMoKS5sZW5ndGggPT09IDE7XG5cblx0cHVibGljIHRvZ2dsZVZpc2liaWxpdHkoY29sdW1uTmFtZToga2V5b2YgVCkge1xuXHRcdGNvbnN0IHZpc2liaWxpdHlNYXAgPSB0aGlzLl9jb2x1bW5WaXNpYmlsaXR5KCk7XG5cdFx0Y29uc3QgY29sdW1uRW50cnkgPSB2aXNpYmlsaXR5TWFwW2NvbHVtbk5hbWVdO1xuXHRcdGNvbnN0IG5ld1Zpc2liaWxpdHlTdGF0ZSA9IHR5cGVvZiBjb2x1bW5FbnRyeSA9PT0gJ2Jvb2xlYW4nID8gIWNvbHVtbkVudHJ5IDogeyB2aXNpYmxlOiAhY29sdW1uRW50cnkudmlzaWJsZSB9O1xuXHRcdHRoaXMuX2NvbHVtblZpc2liaWxpdHkuc2V0KHsgLi4udmlzaWJpbGl0eU1hcCwgW2NvbHVtbk5hbWVdOiBuZXdWaXNpYmlsaXR5U3RhdGUgfSk7XG5cdH1cblx0cHVibGljIHNldFZpc2libGUoY29sdW1uTmFtZToga2V5b2YgVCkge1xuXHRcdGNvbnN0IHZpc2liaWxpdHlNYXAgPSB0aGlzLl9jb2x1bW5WaXNpYmlsaXR5KCk7XG5cdFx0Y29uc3QgY29sdW1uRW50cnkgPSB2aXNpYmlsaXR5TWFwW2NvbHVtbk5hbWVdO1xuXHRcdGNvbnN0IG5ld1Zpc2liaWxpdHlTdGF0ZSA9IHR5cGVvZiBjb2x1bW5FbnRyeSA9PT0gJ2Jvb2xlYW4nID8gdHJ1ZSA6IHsgdmlzaWJsZTogdHJ1ZSB9O1xuXHRcdHRoaXMuX2NvbHVtblZpc2liaWxpdHkuc2V0KHsgLi4udmlzaWJpbGl0eU1hcCwgW2NvbHVtbk5hbWVdOiBuZXdWaXNpYmlsaXR5U3RhdGUgfSk7XG5cdH1cblx0cHVibGljIHNldEludmlzaWJsZShjb2x1bW5OYW1lOiBrZXlvZiBUKSB7XG5cdFx0Y29uc3QgdmlzaWJpbGl0eU1hcCA9IHRoaXMuX2NvbHVtblZpc2liaWxpdHkoKTtcblx0XHRjb25zdCBjb2x1bW5FbnRyeSA9IHZpc2liaWxpdHlNYXBbY29sdW1uTmFtZV07XG5cdFx0Y29uc3QgbmV3VmlzaWJpbGl0eVN0YXRlID0gdHlwZW9mIGNvbHVtbkVudHJ5ID09PSAnYm9vbGVhbicgPyBmYWxzZSA6IHsgdmlzaWJsZTogZmFsc2UgfTtcblx0XHR0aGlzLl9jb2x1bW5WaXNpYmlsaXR5LnNldCh7IC4uLnZpc2liaWxpdHlNYXAsIFtjb2x1bW5OYW1lXTogbmV3VmlzaWJpbGl0eVN0YXRlIH0pO1xuXHR9XG5cblx0cHJpdmF0ZSBjcmVhdGVBbGxDb2x1bW5zKGluaXRpYWxDb2x1bW5WaXNpYmlsaXR5OiBUKTogQWxsQ29sdW1uc1Byb3BlcnR5VHlwZTxUPiB7XG5cdFx0Y29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGluaXRpYWxDb2x1bW5WaXNpYmlsaXR5KSBhcyAoa2V5b2YgVClbXTtcblx0XHRpZiAodGhpcy5pc0Jvb2xlYW5Db25maWcoaW5pdGlhbENvbHVtblZpc2liaWxpdHkpKSB7XG5cdFx0XHRyZXR1cm4ga2V5cyBhcyB1bmtub3duIGFzIEFsbENvbHVtbnNQcm9wZXJ0eVR5cGU8VD47XG5cdFx0fVxuXHRcdHJldHVybiBrZXlzLm1hcCgoa2V5KSA9PiB7XG5cdFx0XHRjb25zdCB2YWx1ZXMgPSBpbml0aWFsQ29sdW1uVmlzaWJpbGl0eVtrZXldIGFzIHsgdmlzaWJsZTogYm9vbGVhbiB9O1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0bmFtZToga2V5LFxuXHRcdFx0XHQuLi52YWx1ZXMsXG5cdFx0XHR9O1xuXHRcdH0pIGFzIEFsbENvbHVtbnNQcm9wZXJ0eVR5cGU8VD47XG5cdH1cblxuXHRwcml2YXRlIGlzQm9vbGVhbkNvbmZpZyhjb25maWc6IGFueSk6IGNvbmZpZyBpcyBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiB7XG5cdFx0cmV0dXJuIHR5cGVvZiBPYmplY3QudmFsdWVzKGNvbmZpZylbMF0gPT09ICdib29sZWFuJztcblx0fVxufVxuXG5leHBvcnQgY29uc3QgdXNlQnJuQ29sdW1uTWFuYWdlciA9IDxUIGV4dGVuZHMgQnJuQ29sdW1uVmlzaWJpbGl0eT4oaW5pdGlhbENvbHVtblZpc2liaWxpdHk6IFQpID0+XG5cdG5ldyBCcm5Db2x1bW5NYW5hZ2VyKGluaXRpYWxDb2x1bW5WaXNpYmlsaXR5KTtcbiJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CdkFooterCellDef } from '@angular/cdk/table';
|
|
2
|
+
import { Directive, TemplateRef, inject } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class BrnFooterDefDirective extends CdkFooterCellDef {
|
|
5
|
+
template;
|
|
6
|
+
constructor() {
|
|
7
|
+
const template = inject(TemplateRef);
|
|
8
|
+
super(template);
|
|
9
|
+
this.template = template;
|
|
10
|
+
}
|
|
11
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnFooterDefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
12
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnFooterDefDirective, isStandalone: true, selector: "[brnFooterDef]", exportAs: ["brnFooterDef"], usesInheritance: true, ngImport: i0 });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnFooterDefDirective, decorators: [{
|
|
15
|
+
type: Directive,
|
|
16
|
+
args: [{
|
|
17
|
+
standalone: true,
|
|
18
|
+
selector: '[brnFooterDef]',
|
|
19
|
+
exportAs: 'brnFooterDef',
|
|
20
|
+
}]
|
|
21
|
+
}], ctorParameters: () => [] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWZvb3Rlci1kZWYuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi90YWJsZS9zcmMvbGliL2Jybi1mb290ZXItZGVmLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTy9ELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxnQkFBZ0I7SUFDMUMsUUFBUSxDQUF1QjtJQUUvQztRQUNDLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBdUIsV0FBVyxDQUFDLENBQUM7UUFFM0QsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzFCLENBQUM7MEhBUlcscUJBQXFCOzhHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxjQUFjO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0Zvb3RlckNlbGxEZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRzZWxlY3RvcjogJ1ticm5Gb290ZXJEZWZdJyxcblx0ZXhwb3J0QXM6ICdicm5Gb290ZXJEZWYnLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5Gb290ZXJEZWZEaXJlY3RpdmUgZXh0ZW5kcyBDZGtGb290ZXJDZWxsRGVmIHtcblx0cHVibGljIG92ZXJyaWRlIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRjb25zdCB0ZW1wbGF0ZSA9IGluamVjdDxUZW1wbGF0ZVJlZjx1bmtub3duPj4oVGVtcGxhdGVSZWYpO1xuXG5cdFx0c3VwZXIodGVtcGxhdGUpO1xuXHRcdHRoaXMudGVtcGxhdGUgPSB0ZW1wbGF0ZTtcblx0fVxufVxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CdkHeaderCellDef } from '@angular/cdk/table';
|
|
2
|
+
import { Directive, TemplateRef, inject } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class BrnHeaderDefDirective extends CdkHeaderCellDef {
|
|
5
|
+
template;
|
|
6
|
+
constructor() {
|
|
7
|
+
const template = inject(TemplateRef);
|
|
8
|
+
super(template);
|
|
9
|
+
this.template = template;
|
|
10
|
+
}
|
|
11
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHeaderDefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
12
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnHeaderDefDirective, isStandalone: true, selector: "[brnHeaderDef]", exportAs: ["brnHeaderDef"], usesInheritance: true, ngImport: i0 });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHeaderDefDirective, decorators: [{
|
|
15
|
+
type: Directive,
|
|
16
|
+
args: [{
|
|
17
|
+
standalone: true,
|
|
18
|
+
selector: '[brnHeaderDef]',
|
|
19
|
+
exportAs: 'brnHeaderDef',
|
|
20
|
+
}]
|
|
21
|
+
}], ctorParameters: () => [] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWhlYWRlci1kZWYuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi90YWJsZS9zcmMvbGliL2Jybi1oZWFkZXItZGVmLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTy9ELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxnQkFBZ0I7SUFDMUMsUUFBUSxDQUF1QjtJQUUvQztRQUNDLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBdUIsV0FBVyxDQUFDLENBQUM7UUFFM0QsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzFCLENBQUM7MEhBUlcscUJBQXFCOzhHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxjQUFjO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0hlYWRlckNlbGxEZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRzZWxlY3RvcjogJ1ticm5IZWFkZXJEZWZdJyxcblx0ZXhwb3J0QXM6ICdicm5IZWFkZXJEZWYnLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5IZWFkZXJEZWZEaXJlY3RpdmUgZXh0ZW5kcyBDZGtIZWFkZXJDZWxsRGVmIHtcblx0cHVibGljIG92ZXJyaWRlIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRjb25zdCB0ZW1wbGF0ZSA9IGluamVjdDxUZW1wbGF0ZVJlZjx1bmtub3duPj4oVGVtcGxhdGVSZWYpO1xuXG5cdFx0c3VwZXIodGVtcGxhdGUpO1xuXHRcdHRoaXMudGVtcGxhdGUgPSB0ZW1wbGF0ZTtcblx0fVxufVxuIl19
|