@coreui/angular-pro 4.5.24 → 4.5.26
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/esm2022/lib/accordion/accordion/accordion.component.mjs +3 -3
- package/esm2022/lib/accordion/accordion-button/accordion-button.directive.mjs +3 -3
- package/esm2022/lib/accordion/accordion-item/accordion-item.component.mjs +3 -3
- package/esm2022/lib/accordion/accordion.module.mjs +4 -4
- package/esm2022/lib/accordion/accordion.service.mjs +3 -3
- package/esm2022/lib/alert/alert-heading.directive.mjs +3 -3
- package/esm2022/lib/alert/alert-link.directive.mjs +3 -3
- package/esm2022/lib/alert/alert.component.mjs +3 -3
- package/esm2022/lib/alert/alert.module.mjs +4 -4
- package/esm2022/lib/avatar/avatar.component.mjs +3 -3
- package/esm2022/lib/avatar/avatar.module.mjs +4 -4
- package/esm2022/lib/backdrop/backdrop.service.mjs +3 -3
- package/esm2022/lib/badge/badge.component.mjs +3 -3
- package/esm2022/lib/badge/badge.module.mjs +4 -4
- package/esm2022/lib/breadcrumb/breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2022/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.mjs +3 -3
- package/esm2022/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.mjs +3 -3
- package/esm2022/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.mjs +3 -3
- package/esm2022/lib/breadcrumb/breadcrumb.module.mjs +4 -4
- package/esm2022/lib/button/button-close.directive.mjs +3 -3
- package/esm2022/lib/button/button.directive.mjs +3 -3
- package/esm2022/lib/button/button.module.mjs +4 -4
- package/esm2022/lib/button-group/button-group/button-group.component.mjs +3 -3
- package/esm2022/lib/button-group/button-group.module.mjs +4 -4
- package/esm2022/lib/button-group/button-toolbar/button-toolbar.component.mjs +3 -3
- package/esm2022/lib/calendar/calendar/calendar-class-view.pipe.mjs +3 -3
- package/esm2022/lib/calendar/calendar/calendar.component.mjs +3 -3
- package/esm2022/lib/calendar/calendar-month/calendar-class-day.pipe.mjs +3 -3
- package/esm2022/lib/calendar/calendar-month/calendar-class-month.pipe.mjs +3 -3
- package/esm2022/lib/calendar/calendar-month/calendar-class-year.pipe.mjs +3 -3
- package/esm2022/lib/calendar/calendar-month/calendar-day-title.pipe.mjs +3 -3
- package/esm2022/lib/calendar/calendar-month/calendar-day.directive.mjs +3 -3
- package/esm2022/lib/calendar/calendar-month/calendar-day.pipe.mjs +3 -3
- package/esm2022/lib/calendar/calendar-month/calendar-month.component.mjs +3 -3
- package/esm2022/lib/calendar/calendar-month/calendar-weekday.pipe.mjs +3 -3
- package/esm2022/lib/calendar/calendar-navigation/calendar-navigation.component.mjs +3 -3
- package/esm2022/lib/calendar/calendar.module.mjs +4 -4
- package/esm2022/lib/calendar/calendar.service.mjs +3 -3
- package/esm2022/lib/callout/callout.component.mjs +3 -3
- package/esm2022/lib/callout/callout.module.mjs +4 -4
- package/esm2022/lib/card/card-body.component.mjs +3 -3
- package/esm2022/lib/card/card-footer.component.mjs +3 -3
- package/esm2022/lib/card/card-group.component.mjs +3 -3
- package/esm2022/lib/card/card-header-actions.component.mjs +3 -3
- package/esm2022/lib/card/card-header.component.mjs +3 -3
- package/esm2022/lib/card/card-img-overlay/card-img-overlay.component.mjs +3 -3
- package/esm2022/lib/card/card-img.directive.mjs +3 -3
- package/esm2022/lib/card/card-link.directive.mjs +3 -3
- package/esm2022/lib/card/card-subtitle.directive.mjs +3 -3
- package/esm2022/lib/card/card-text.directive.mjs +3 -3
- package/esm2022/lib/card/card-title.directive.mjs +3 -3
- package/esm2022/lib/card/card.component.mjs +3 -3
- package/esm2022/lib/card/card.module.mjs +4 -4
- package/esm2022/lib/carousel/carousel/carousel.component.mjs +3 -3
- package/esm2022/lib/carousel/carousel-caption/carousel-caption.component.mjs +3 -3
- package/esm2022/lib/carousel/carousel-control/carousel-control.component.mjs +3 -3
- package/esm2022/lib/carousel/carousel-indicators/carousel-indicators.component.mjs +3 -3
- package/esm2022/lib/carousel/carousel-inner/carousel-inner.component.mjs +3 -3
- package/esm2022/lib/carousel/carousel-item/carousel-item.component.mjs +3 -3
- package/esm2022/lib/carousel/carousel-state.mjs +3 -3
- package/esm2022/lib/carousel/carousel.config.mjs +3 -3
- package/esm2022/lib/carousel/carousel.module.mjs +4 -4
- package/esm2022/lib/carousel/carousel.service.mjs +3 -3
- package/esm2022/lib/collapse/collapse.directive.mjs +3 -3
- package/esm2022/lib/collapse/collapse.module.mjs +4 -4
- package/esm2022/lib/date-picker/date-picker.component.mjs +3 -3
- package/esm2022/lib/date-picker/date-picker.module.mjs +4 -4
- package/esm2022/lib/date-range-picker/date-range-picker/custom-range-key.pipe.mjs +3 -3
- package/esm2022/lib/date-range-picker/date-range-picker/date-range-picker.component.mjs +3 -3
- package/esm2022/lib/date-range-picker/date-range-picker.module.mjs +4 -4
- package/esm2022/lib/dropdown/dropdown/dropdown.component.mjs +6 -6
- package/esm2022/lib/dropdown/dropdown-close/dropdown-close.directive.mjs +3 -3
- package/esm2022/lib/dropdown/dropdown-divider/dropdown-divider.directive.mjs +3 -3
- package/esm2022/lib/dropdown/dropdown-header/dropdown-header.directive.mjs +3 -3
- package/esm2022/lib/dropdown/dropdown-item/dropdown-item-plain.directive.mjs +3 -3
- package/esm2022/lib/dropdown/dropdown-item/dropdown-item.directive.mjs +3 -3
- package/esm2022/lib/dropdown/dropdown-menu/dropdown-menu.directive.mjs +3 -3
- package/esm2022/lib/dropdown/dropdown.module.mjs +4 -4
- package/esm2022/lib/dropdown/dropdown.service.mjs +3 -3
- package/esm2022/lib/element-cover/element-cover.component.mjs +3 -3
- package/esm2022/lib/element-cover/element-cover.module.mjs +4 -4
- package/esm2022/lib/footer/footer.component.mjs +3 -3
- package/esm2022/lib/footer/footer.module.mjs +4 -4
- package/esm2022/lib/form/form/form.directive.mjs +3 -3
- package/esm2022/lib/form/form-check/form-check-input.directive.mjs +3 -3
- package/esm2022/lib/form/form-check/form-check-label.directive.mjs +3 -3
- package/esm2022/lib/form/form-check/form-check.component.mjs +3 -3
- package/esm2022/lib/form/form-control/form-control.directive.mjs +3 -3
- package/esm2022/lib/form/form-feedback/form-feedback.component.mjs +3 -3
- package/esm2022/lib/form/form-floating/form-floating.directive.mjs +3 -3
- package/esm2022/lib/form/form-label/form-label.directive.mjs +3 -3
- package/esm2022/lib/form/form-select/form-select.directive.mjs +3 -3
- package/esm2022/lib/form/form-text/form-text.directive.mjs +3 -3
- package/esm2022/lib/form/form.module.mjs +4 -4
- package/esm2022/lib/form/input-group/input-group.component.mjs +3 -3
- package/esm2022/lib/form/input-group-text/input-group-text.directive.mjs +3 -3
- package/esm2022/lib/grid/col.component.mjs +3 -3
- package/esm2022/lib/grid/col.directive.mjs +3 -3
- package/esm2022/lib/grid/container.component.mjs +3 -3
- package/esm2022/lib/grid/grid.module.mjs +4 -4
- package/esm2022/lib/grid/gutter.directive.mjs +3 -3
- package/esm2022/lib/grid/row.component.mjs +3 -3
- package/esm2022/lib/grid/row.directive.mjs +3 -3
- package/esm2022/lib/header/header/header.component.mjs +3 -3
- package/esm2022/lib/header/header-brand/header-brand.component.mjs +3 -3
- package/esm2022/lib/header/header-divider/header-divider.component.mjs +3 -3
- package/esm2022/lib/header/header-nav/header-nav.component.mjs +3 -3
- package/esm2022/lib/header/header-text/header-text.component.mjs +3 -3
- package/esm2022/lib/header/header-toggler/header-toggler.directive.mjs +3 -3
- package/esm2022/lib/header/header.module.mjs +4 -4
- package/esm2022/lib/image/img.directive.mjs +3 -3
- package/esm2022/lib/image/img.module.mjs +4 -4
- package/esm2022/lib/list-group/list-group-item.directive.mjs +3 -3
- package/esm2022/lib/list-group/list-group.directive.mjs +3 -3
- package/esm2022/lib/list-group/list-group.module.mjs +4 -4
- package/esm2022/lib/loading-button/loading-button.component.mjs +3 -3
- package/esm2022/lib/loading-button/loading-button.module.mjs +4 -4
- package/esm2022/lib/modal/modal/modal.component.mjs +3 -3
- package/esm2022/lib/modal/modal-body/modal-body.component.mjs +3 -3
- package/esm2022/lib/modal/modal-content/modal-content.component.mjs +3 -3
- package/esm2022/lib/modal/modal-dialog/modal-dialog.component.mjs +3 -3
- package/esm2022/lib/modal/modal-dismiss/modal-toggle.directive.mjs +3 -3
- package/esm2022/lib/modal/modal-footer/modal-footer.component.mjs +3 -3
- package/esm2022/lib/modal/modal-header/modal-header.component.mjs +3 -3
- package/esm2022/lib/modal/modal-title/modal-title.directive.mjs +3 -3
- package/esm2022/lib/modal/modal.module.mjs +4 -4
- package/esm2022/lib/modal/modal.service.mjs +3 -3
- package/esm2022/lib/multi-select/multi-select/multi-select-search.directive.mjs +3 -3
- package/esm2022/lib/multi-select/multi-select/multi-select.component.mjs +3 -3
- package/esm2022/lib/multi-select/multi-select-native-select/multi-select-native-select.component.mjs +3 -3
- package/esm2022/lib/multi-select/multi-select-optgroup/multi-select-optgroup-label.component.mjs +3 -3
- package/esm2022/lib/multi-select/multi-select-optgroup/multi-select-optgroup.component.mjs +3 -3
- package/esm2022/lib/multi-select/multi-select-option/multi-select-option.component.mjs +3 -3
- package/esm2022/lib/multi-select/multi-select-tag/multi-select-tag.component.mjs +3 -3
- package/esm2022/lib/multi-select/multi-select.module.mjs +4 -4
- package/esm2022/lib/multi-select/multi-select.service.mjs +3 -3
- package/esm2022/lib/nav/nav-item.component.mjs +3 -3
- package/esm2022/lib/nav/nav-link.directive.mjs +3 -3
- package/esm2022/lib/nav/nav.component.mjs +3 -3
- package/esm2022/lib/nav/nav.module.mjs +4 -4
- package/esm2022/lib/navbar/navbar-brand/navbar-brand.directive.mjs +3 -3
- package/esm2022/lib/navbar/navbar-nav/navbar-nav.component.mjs +3 -3
- package/esm2022/lib/navbar/navbar-text/navbar-text.component.mjs +3 -3
- package/esm2022/lib/navbar/navbar-toggler/navbar-toggler.directive.mjs +3 -3
- package/esm2022/lib/navbar/navbar.component.mjs +3 -3
- package/esm2022/lib/navbar/navbar.module.mjs +4 -4
- package/esm2022/lib/offcanvas/offcanvas/offcanvas.component.mjs +3 -3
- package/esm2022/lib/offcanvas/offcanvas-body/offcanvas-body.component.mjs +3 -3
- package/esm2022/lib/offcanvas/offcanvas-header/offcanvas-header.component.mjs +3 -3
- package/esm2022/lib/offcanvas/offcanvas-title/offcanvas-title.directive.mjs +3 -3
- package/esm2022/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.mjs +3 -3
- package/esm2022/lib/offcanvas/offcanvas.module.mjs +4 -4
- package/esm2022/lib/offcanvas/offcanvas.service.mjs +3 -3
- package/esm2022/lib/pagination/page-item/page-item.component.mjs +3 -3
- package/esm2022/lib/pagination/page-item/page-item.directive.mjs +3 -3
- package/esm2022/lib/pagination/page-link/page-link.directive.mjs +3 -3
- package/esm2022/lib/pagination/pagination/pagination.component.mjs +3 -3
- package/esm2022/lib/pagination/pagination.module.mjs +4 -4
- package/esm2022/lib/placeholder/placeholder-animation.directive.mjs +3 -3
- package/esm2022/lib/placeholder/placeholder.directive.mjs +3 -3
- package/esm2022/lib/placeholder/placeholder.module.mjs +4 -4
- package/esm2022/lib/popover/popover/popover.component.mjs +3 -3
- package/esm2022/lib/popover/popover.directive.mjs +3 -3
- package/esm2022/lib/popover/popover.module.mjs +4 -4
- package/esm2022/lib/progress/progress-bar.component.mjs +3 -3
- package/esm2022/lib/progress/progress.component.mjs +3 -3
- package/esm2022/lib/progress/progress.module.mjs +4 -4
- package/esm2022/lib/services/class-toggle.service.mjs +3 -3
- package/esm2022/lib/services/intersection.service.mjs +3 -3
- package/esm2022/lib/services/listeners.service.mjs +3 -3
- package/esm2022/lib/shared/html-attr.directive.mjs +3 -3
- package/esm2022/lib/shared/shared.module.mjs +4 -4
- package/esm2022/lib/shared/template-id.directive.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar/sidebar.component.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-brand/sidebar-brand.component.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-group.service.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-label.component.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-link.component.mjs +6 -6
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav-title.component.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav.component.mjs +6 -6
- package/esm2022/lib/sidebar/sidebar-nav/sidebar-nav.service.mjs +6 -6
- package/esm2022/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar-toggler/sidebar-toggler.component.mjs +3 -3
- package/esm2022/lib/sidebar/sidebar.module.mjs +4 -4
- package/esm2022/lib/sidebar/sidebar.service.mjs +3 -3
- package/esm2022/lib/smart-pagination/smart-pagination.component.mjs +3 -3
- package/esm2022/lib/smart-pagination/smart-pagination.module.mjs +4 -4
- package/esm2022/lib/smart-table/smart-table/smart-table.component.mjs +11 -6
- package/esm2022/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs +3 -3
- package/esm2022/lib/smart-table/smart-table-filter/filter-input.directive.mjs +3 -3
- package/esm2022/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +3 -3
- package/esm2022/lib/smart-table/smart-table-head/smart-table-column-label.pipe.mjs +26 -0
- package/esm2022/lib/smart-table/smart-table-head/smart-table-head.component.mjs +26 -23
- package/esm2022/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +3 -3
- package/esm2022/lib/smart-table/smart-table.module.mjs +4 -4
- package/esm2022/lib/spinner/spinner.component.mjs +3 -3
- package/esm2022/lib/spinner/spinner.module.mjs +4 -4
- package/esm2022/lib/table/table-active.directive.mjs +3 -3
- package/esm2022/lib/table/table-color.directive.mjs +3 -3
- package/esm2022/lib/table/table.directive.mjs +3 -3
- package/esm2022/lib/table/table.module.mjs +4 -4
- package/esm2022/lib/table/table.type.mjs +1 -1
- package/esm2022/lib/tabs/tab-content/tab-content.component.mjs +3 -3
- package/esm2022/lib/tabs/tab-content-ref.directive.mjs +3 -3
- package/esm2022/lib/tabs/tab-pane/tab-pane.component.mjs +3 -3
- package/esm2022/lib/tabs/tab.service.mjs +3 -3
- package/esm2022/lib/tabs/tabs.module.mjs +4 -4
- package/esm2022/lib/time-picker/time-picker-roll-col/time-picker-roll-am-pm.component.mjs +6 -6
- package/esm2022/lib/time-picker/time-picker-roll-col/time-picker-roll-col.component.mjs +6 -6
- package/esm2022/lib/time-picker/time-picker.component.mjs +3 -3
- package/esm2022/lib/time-picker/time-picker.module.mjs +4 -4
- package/esm2022/lib/toast/toast/toast.component.mjs +3 -3
- package/esm2022/lib/toast/toast-body/toast-body.component.mjs +3 -3
- package/esm2022/lib/toast/toast-close.directive.mjs +3 -3
- package/esm2022/lib/toast/toast-header/toast-header.component.mjs +3 -3
- package/esm2022/lib/toast/toast.module.mjs +4 -4
- package/esm2022/lib/toast/toaster/toaster-host.directive.mjs +3 -3
- package/esm2022/lib/toast/toaster/toaster.component.mjs +3 -3
- package/esm2022/lib/toast/toaster/toaster.service.mjs +3 -3
- package/esm2022/lib/tooltip/tooltip/tooltip.component.mjs +3 -3
- package/esm2022/lib/tooltip/tooltip.directive.mjs +3 -3
- package/esm2022/lib/tooltip/tooltip.module.mjs +4 -4
- package/esm2022/lib/utilities/align.directive.mjs +3 -3
- package/esm2022/lib/utilities/bg-color.directive.mjs +3 -3
- package/esm2022/lib/utilities/border.directive.mjs +3 -3
- package/esm2022/lib/utilities/rounded.directive.mjs +3 -3
- package/esm2022/lib/utilities/text-color.directive.mjs +3 -3
- package/esm2022/lib/utilities/utilities.module.mjs +4 -4
- package/esm2022/lib/widget/widget-stat-a/widget-stat-a.component.mjs +3 -3
- package/esm2022/lib/widget/widget-stat-b/widget-stat-b.component.mjs +3 -3
- package/esm2022/lib/widget/widget-stat-c/widget-stat-c.component.mjs +3 -3
- package/esm2022/lib/widget/widget-stat-d/widget-stat-d.component.mjs +3 -3
- package/esm2022/lib/widget/widget-stat-e/widget-stat-e.component.mjs +3 -3
- package/esm2022/lib/widget/widget-stat-f/widget-stat-f.component.mjs +3 -3
- package/esm2022/lib/widget/widget.module.mjs +4 -4
- package/fesm2022/coreui-angular-pro.mjs +837 -806
- package/fesm2022/coreui-angular-pro.mjs.map +1 -1
- package/lib/smart-table/smart-table/smart-table.component.d.ts +4 -0
- package/lib/smart-table/smart-table-head/smart-table-column-label.pipe.d.ts +9 -0
- package/lib/smart-table/smart-table-head/smart-table-head.component.d.ts +5 -6
- package/lib/table/table.type.d.ts +3 -0
- package/package.json +1 -1
|
@@ -7,6 +7,7 @@ import { TableColorDirective } from '../../table';
|
|
|
7
7
|
import { FormCheckInputDirective } from '../../form';
|
|
8
8
|
import { SmartTableColumnFilterComponent } from '../smart-table-column-filter/smart-table-column-filter.component';
|
|
9
9
|
import { FilterInputDirective } from '../smart-table-filter/filter-input.directive';
|
|
10
|
+
import { SmartTableColumnLabelPipe } from './smart-table-column-label.pipe';
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
11
12
|
export class SmartTableHeadComponent {
|
|
12
13
|
constructor() {
|
|
@@ -15,12 +16,13 @@ export class SmartTableHeadComponent {
|
|
|
15
16
|
this.component = 'thead';
|
|
16
17
|
this.#selectAll = true;
|
|
17
18
|
this.#selectedAll = false;
|
|
18
|
-
this
|
|
19
|
+
this.#columnFilterTemplates = {};
|
|
20
|
+
this.#summaryRowTemplate = null;
|
|
19
21
|
// todo
|
|
20
22
|
// @Input() sortingIcon?: string | TemplateRef<any>;
|
|
21
23
|
// @Input() sortingIconAscending?: string | TemplateRef<any>;
|
|
22
24
|
// @Input() sortingIconDescending?: string | TemplateRef<any>;
|
|
23
|
-
this.indeterminate = new BehaviorSubject(false);
|
|
25
|
+
this.indeterminate$ = new BehaviorSubject(false);
|
|
24
26
|
this.columnFilterStateChange = new EventEmitter();
|
|
25
27
|
this.sorterStateChange = new EventEmitter();
|
|
26
28
|
this.selectAllChange = new EventEmitter();
|
|
@@ -35,7 +37,7 @@ export class SmartTableHeadComponent {
|
|
|
35
37
|
#selectAll;
|
|
36
38
|
#selectedAllPreviousValue;
|
|
37
39
|
set selectedAll(value) {
|
|
38
|
-
this.indeterminate
|
|
40
|
+
this.indeterminate$.next(value === 'indeterminate');
|
|
39
41
|
this.#selectedAll = value === 'indeterminate' ? false : coerceBooleanProperty(value);
|
|
40
42
|
if (value !== 'indeterminate') {
|
|
41
43
|
this.#selectedAllPreviousValue = this.#selectedAll;
|
|
@@ -47,13 +49,23 @@ export class SmartTableHeadComponent {
|
|
|
47
49
|
}
|
|
48
50
|
#selectedAll;
|
|
49
51
|
set columnFilterTemplates(value) {
|
|
50
|
-
this
|
|
52
|
+
this.#columnFilterTemplates = { ...value };
|
|
51
53
|
}
|
|
52
54
|
;
|
|
53
55
|
get columnFilterTemplates() {
|
|
54
|
-
return this
|
|
56
|
+
return this.#columnFilterTemplates;
|
|
55
57
|
}
|
|
56
58
|
;
|
|
59
|
+
#columnFilterTemplates;
|
|
60
|
+
set summaryRowTemplate(value) {
|
|
61
|
+
this.#summaryRowTemplate = value;
|
|
62
|
+
}
|
|
63
|
+
;
|
|
64
|
+
get summaryRowTemplate() {
|
|
65
|
+
return this.#summaryRowTemplate;
|
|
66
|
+
}
|
|
67
|
+
;
|
|
68
|
+
#summaryRowTemplate;
|
|
57
69
|
get hostClasses() {
|
|
58
70
|
return {
|
|
59
71
|
thead: this.component === 'thead',
|
|
@@ -92,9 +104,6 @@ export class SmartTableHeadComponent {
|
|
|
92
104
|
}
|
|
93
105
|
return style;
|
|
94
106
|
}
|
|
95
|
-
columnLabel(column) {
|
|
96
|
-
return typeof column === 'object' ? column.label !== undefined ? column.label : this.prettifyName(column.key) : this.prettifyName(column);
|
|
97
|
-
}
|
|
98
107
|
columnKey(column) {
|
|
99
108
|
return typeof column === 'object' ? column.key : column;
|
|
100
109
|
}
|
|
@@ -108,15 +117,6 @@ export class SmartTableHeadComponent {
|
|
|
108
117
|
}
|
|
109
118
|
return 0;
|
|
110
119
|
}
|
|
111
|
-
prettifyName(name) {
|
|
112
|
-
return name
|
|
113
|
-
.replace(/[-_.]/g, ' ')
|
|
114
|
-
.replace(/ +/g, ' ')
|
|
115
|
-
.replace(/([a-z0-9])([A-Z])/g, '$1 $2')
|
|
116
|
-
.split(' ')
|
|
117
|
-
.map((word) => word.charAt(0).toUpperCase() + word.slice(1))
|
|
118
|
-
.join(' ');
|
|
119
|
-
}
|
|
120
120
|
handleSortClick(column, i) {
|
|
121
121
|
if (this.columnSorterEnabled(column)) {
|
|
122
122
|
const columnKey = this.columnKey(column);
|
|
@@ -157,10 +157,10 @@ export class SmartTableHeadComponent {
|
|
|
157
157
|
return (typeof this.columnFilter === 'object' && this.columnFilter.lazy) ? 'change' : 'input';
|
|
158
158
|
}
|
|
159
159
|
;
|
|
160
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
161
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.
|
|
160
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SmartTableHeadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
161
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SmartTableHeadComponent, isStandalone: true, selector: "c-smart-table-head", inputs: { columnFilter: "columnFilter", columnFilterState: "columnFilterState", columnSorter: "columnSorter", component: "component", columns: "columns", selectable: "selectable", selectAll: "selectAll", selectedAll: "selectedAll", sorterValue: "sorterValue", columnFilterTemplates: "columnFilterTemplates", summaryRowTemplate: "summaryRowTemplate" }, outputs: { columnFilterStateChange: "columnFilterStateChange", sorterStateChange: "sorterStateChange", selectAllChange: "selectAllChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<ng-template [ngIf]=\"component==='tfoot'\">\n <ng-container *ngTemplateOutlet=\"summaryRowTemplate\" />\n</ng-template>\n<tr>\n <th *ngIf=\"selectable\">\n <input\n cFormCheckInput\n (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectedAll === true\"\n [indeterminate]=\"indeterminate$ | async\"\n type=\"checkbox\"\n [disabled]=\"!selectAll\"\n autocomplete=\"off\"\n >\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n />\n </ng-template>\n <div class=\"d-inline\">{{ column | columnLabel }}</div>\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-container\n *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"\n />\n </th>\n</tr>\n\n<ng-template #defaultColumnFilter let-column>\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n *ngIf=\"columnFilterEnabled(column)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n />\n</ng-template>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n <ng-container [ngSwitch]=\"columnSorterState\">\n <span *ngSwitchCase=\"'asc'\" class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\" />\n </span>\n <span *ngSwitchCase=\"'desc'\" class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\" />\n </span>\n <span *ngSwitchDefault class=\"opacity-25 float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\" />\n </span>\n </ng-container>\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"], dependencies: [{ kind: "directive", type: FilterInputDirective, selector: "[cFilterInput]", inputs: ["delay", "onEvent", "value"], outputs: ["valueChange"], exportAs: ["cFilterInput"] }, { kind: "directive", type: FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: ["type", "indeterminate", "valid", "checked"] }, { kind: "directive", type: HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "component", type: SmartTableColumnFilterComponent, selector: "c-smart-table-column-filter", inputs: ["column", "sizing"] }, { kind: "directive", type: TableColorDirective, selector: "[cTableColor]", inputs: ["cTableColor"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: SmartTableColumnLabelPipe, name: "columnLabel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
162
162
|
}
|
|
163
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
163
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SmartTableHeadComponent, decorators: [{
|
|
164
164
|
type: Component,
|
|
165
165
|
args: [{ selector: 'c-smart-table-head', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
166
166
|
FilterInputDirective,
|
|
@@ -175,8 +175,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImpor
|
|
|
175
175
|
NgSwitch,
|
|
176
176
|
NgSwitchCase,
|
|
177
177
|
NgSwitchDefault,
|
|
178
|
-
NgTemplateOutlet
|
|
179
|
-
|
|
178
|
+
NgTemplateOutlet,
|
|
179
|
+
SmartTableColumnLabelPipe
|
|
180
|
+
], template: "<ng-template [ngIf]=\"component==='tfoot'\">\n <ng-container *ngTemplateOutlet=\"summaryRowTemplate\" />\n</ng-template>\n<tr>\n <th *ngIf=\"selectable\">\n <input\n cFormCheckInput\n (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectedAll === true\"\n [indeterminate]=\"indeterminate$ | async\"\n type=\"checkbox\"\n [disabled]=\"!selectAll\"\n autocomplete=\"off\"\n >\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n />\n </ng-template>\n <div class=\"d-inline\">{{ column | columnLabel }}</div>\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-container\n *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"\n />\n </th>\n</tr>\n\n<ng-template #defaultColumnFilter let-column>\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n *ngIf=\"columnFilterEnabled(column)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n />\n</ng-template>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n <ng-container [ngSwitch]=\"columnSorterState\">\n <span *ngSwitchCase=\"'asc'\" class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\" />\n </span>\n <span *ngSwitchCase=\"'desc'\" class=\"float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\" />\n </span>\n <span *ngSwitchDefault class=\"opacity-25 float-end mx-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\" />\n </span>\n </ng-container>\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"] }]
|
|
180
181
|
}], ctorParameters: function () { return []; }, propDecorators: { columnFilter: [{
|
|
181
182
|
type: Input
|
|
182
183
|
}], columnFilterState: [{
|
|
@@ -197,6 +198,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImpor
|
|
|
197
198
|
type: Input
|
|
198
199
|
}], columnFilterTemplates: [{
|
|
199
200
|
type: Input
|
|
201
|
+
}], summaryRowTemplate: [{
|
|
202
|
+
type: Input
|
|
200
203
|
}], columnFilterStateChange: [{
|
|
201
204
|
type: Output
|
|
202
205
|
}], sorterStateChange: [{
|
|
@@ -207,4 +210,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.8", ngImpor
|
|
|
207
210
|
type: HostBinding,
|
|
208
211
|
args: ['class']
|
|
209
212
|
}] } });
|
|
210
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNySCxPQUFPLEVBQ0wsU0FBUyxFQUNULE9BQU8sRUFDUCxJQUFJLEVBQ0osT0FBTyxFQUNQLFFBQVEsRUFDUixZQUFZLEVBQ1osZUFBZSxFQUNmLGdCQUFnQixFQUNqQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFLdkMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNsRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDckQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDbkgsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBd0JwRixNQUFNLE9BQU8sdUJBQXVCO0lBRWxDO1FBR1Msc0JBQWlCLEdBQXVCLEVBQUUsQ0FBQztR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OytCQUNFLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxvQkFBb0I7d0JBQ3BCLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2QiwrQkFBK0I7d0JBQy9CLG1CQUFtQjt3QkFDbkIsU0FBUzt3QkFDVCxPQUFPO3dCQUNQLElBQUk7d0JBQ0osT0FBTzt3QkFDUCxRQUFRO3dCQUNSLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixnQkFBZ0I7cUJBQ2pCOzBFQU1RLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFHRixTQUFTO3NCQURaLEtBQUs7Z0JBY0YsV0FBVztzQkFEZCxLQUFLO2dCQWdCRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdGLHFCQUFxQjtzQkFEeEIsS0FBSztnQkFrQmEsdUJBQXVCO3NCQUF6QyxNQUFNO2dCQUNZLGlCQUFpQjtzQkFBbkMsTUFBTTtnQkFDWSxlQUFlO3NCQUFqQyxNQUFNO2dCQUdILFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBc3luY1BpcGUsXG4gIE5nRm9yT2YsXG4gIE5nSWYsXG4gIE5nU3R5bGUsXG4gIE5nU3dpdGNoLFxuICBOZ1N3aXRjaENhc2UsXG4gIE5nU3dpdGNoRGVmYXVsdCxcbiAgTmdUZW1wbGF0ZU91dGxldFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBJQ29sdW1uLCBJQ29sdW1uRmlsdGVyLCBJQ29sdW1uRmlsdGVyVmFsdWUsIElTb3J0ZXIsIElTb3J0ZXJWYWx1ZSB9IGZyb20gJy4uL3NtYXJ0LXRhYmxlLnR5cGUnO1xuXG5pbXBvcnQgeyBDb2xvcnMgfSBmcm9tICcuLi8uLi9jb3JldWkudHlwZXMnO1xuaW1wb3J0IHsgSHRtbEF0dHJpYnV0ZXNEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9zaGFyZWQnO1xuaW1wb3J0IHsgVGFibGVDb2xvckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3RhYmxlJztcbmltcG9ydCB7IEZvcm1DaGVja0lucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZm9ybSc7XG5pbXBvcnQgeyBTbWFydFRhYmxlQ29sdW1uRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vc21hcnQtdGFibGUtY29sdW1uLWZpbHRlci9zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWx0ZXJJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4uL3NtYXJ0LXRhYmxlLWZpbHRlci9maWx0ZXItaW5wdXQuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1zbWFydC10YWJsZS1oZWFkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LXRhYmxlLWhlYWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zbWFydC10YWJsZS1oZWFkLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgRmlsdGVySW5wdXREaXJlY3RpdmUsXG4gICAgRm9ybUNoZWNrSW5wdXREaXJlY3RpdmUsXG4gICAgSHRtbEF0dHJpYnV0ZXNEaXJlY3RpdmUsXG4gICAgU21hcnRUYWJsZUNvbHVtbkZpbHRlckNvbXBvbmVudCxcbiAgICBUYWJsZUNvbG9yRGlyZWN0aXZlLFxuICAgIEFzeW5jUGlwZSxcbiAgICBOZ0Zvck9mLFxuICAgIE5nSWYsXG4gICAgTmdTdHlsZSxcbiAgICBOZ1N3aXRjaCxcbiAgICBOZ1N3aXRjaENhc2UsXG4gICAgTmdTd2l0Y2hEZWZhdWx0LFxuICAgIE5nVGVtcGxhdGVPdXRsZXRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTbWFydFRhYmxlSGVhZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBASW5wdXQoKSBjb2x1bW5GaWx0ZXI/OiBib29sZWFuIHwgSUNvbHVtbkZpbHRlcjtcbiAgQElucHV0KCkgY29sdW1uRmlsdGVyU3RhdGU6IElDb2x1bW5GaWx0ZXJWYWx1ZSA9IHt9O1xuICBASW5wdXQoKSBjb2x1bW5Tb3J0ZXI/OiBib29sZWFuIHwgSVNvcnRlciA9IHRydWU7XG4gIEBJbnB1dCgpIGNvbXBvbmVudD86IHN0cmluZyA9ICd0aGVhZCc7XG4gIEBJbnB1dCgpIGNvbHVtbnM/OiAoSUNvbHVtbiB8IHN0cmluZylbXTtcbiAgQElucHV0KCkgc2VsZWN0YWJsZT86IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgc2V0IHNlbGVjdEFsbCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuI3NlbGVjdEFsbCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH07XG5cbiAgZ2V0IHNlbGVjdEFsbCgpIHtcbiAgICByZXR1cm4gdGhpcy4jc2VsZWN0QWxsO1xuICB9XG5cbiAgI3NlbGVjdEFsbCA9IHRydWU7XG5cbiAgI3NlbGVjdGVkQWxsUHJldmlvdXNWYWx1ZT86IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgc2V0IHNlbGVjdGVkQWxsKHZhbHVlOiBib29sZWFuIHwgJ2luZGV0ZXJtaW5hdGUnKSB7XG4gICAgdGhpcy5pbmRldGVybWluYXRlLm5leHQodmFsdWUgPT09ICdpbmRldGVybWluYXRlJyk7XG5cbiAgICB0aGlzLiNzZWxlY3RlZEFsbCA9IHZhbHVlID09PSAnaW5kZXRlcm1pbmF0ZScgPyBmYWxzZSA6IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgaWYgKHZhbHVlICE9PSAnaW5kZXRlcm1pbmF0ZScpIHtcbiAgICAgIHRoaXMuI3NlbGVjdGVkQWxsUHJldmlvdXNWYWx1ZSA9IHRoaXMuI3NlbGVjdGVkQWxsO1xuICAgIH1cbiAgfTtcblxuICBnZXQgc2VsZWN0ZWRBbGwoKSB7XG4gICAgcmV0dXJuIHRoaXMuI3NlbGVjdGVkQWxsO1xuICB9XG5cbiAgI3NlbGVjdGVkQWxsOiBib29sZWFuIHwgJ2luZGV0ZXJtaW5hdGUnID0gZmFsc2U7XG5cbiAgQElucHV0KCkgc29ydGVyVmFsdWU/OiBJU29ydGVyVmFsdWU7XG5cbiAgQElucHV0KClcbiAgc2V0IGNvbHVtbkZpbHRlclRlbXBsYXRlcyh2YWx1ZSkge1xuICAgIHRoaXMuX2NvbHVtbkZpbHRlclRlbXBsYXRlcyA9IHsgLi4udmFsdWUgfTtcbiAgfTtcblxuICBnZXQgY29sdW1uRmlsdGVyVGVtcGxhdGVzKCkge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5GaWx0ZXJUZW1wbGF0ZXM7XG4gIH07XG5cbiAgX2NvbHVtbkZpbHRlclRlbXBsYXRlcz86IGFueSA9IHt9O1xuXG4gIC8vIHRvZG9cbiAgLy8gQElucHV0KCkgc29ydGluZ0ljb24/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvLyBASW5wdXQoKSBzb3J0aW5nSWNvbkFzY2VuZGluZz86IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG4gIC8vIEBJbnB1dCgpIHNvcnRpbmdJY29uRGVzY2VuZGluZz86IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgaW5kZXRlcm1pbmF0ZSA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIEBPdXRwdXQoKSByZWFkb25seSBjb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNvcnRlclN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgc2VsZWN0QWxsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGhlYWQ6IHRoaXMuY29tcG9uZW50ID09PSAndGhlYWQnLFxuICAgICAgdGZvb3Q6IHRoaXMuY29tcG9uZW50ID09PSAndGZvb3QnXG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29sdW1ucz8uZm9yRWFjaCgoY29sdW1uLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICAgIHRoaXMuY29sdW1uRmlsdGVyU3RhdGVbY29sdW1uS2V5XSA9IHRoaXMuY29sdW1uRmlsdGVyU3RhdGVbY29sdW1uS2V5XSA/PyAnJztcbiAgICB9KTtcbiAgfVxuXG4gIHRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIGlmICh0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyAmJiBjb2x1bW4uX3Byb3BzKSB7XG4gICAgICBjb25zdCB7IGNvbG9yLCAuLi5wcm9wcyB9ID0geyAuLi5jb2x1bW4uX3Byb3BzIH07XG4gICAgICByZXR1cm4gcHJvcHM7XG4gICAgfVxuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIHRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZyk6IENvbG9ycyB7XG4gICAgaWYgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmIGNvbHVtbi5fcHJvcHMpIHtcbiAgICAgIGNvbnN0IHsgY29sb3IgfSA9IHsgLi4uY29sdW1uLl9wcm9wcyB9O1xuICAgICAgcmV0dXJuIDxDb2xvcnMgfCBzdHJpbmc+Y29sb3I7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHRhYmxlSGVhZGVyQ2VsbFN0eWxlcyhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBjb25zdCBzdHlsZSA9IHsgdmVydGljYWxBbGlnbjogJ21pZGRsZScsIG92ZXJmbG93OiAnaGlkZGVuJywgY3Vyc29yOiAnJyB9O1xuICAgIGlmIChcbiAgICAgIHRoaXMuY29sdW1uU29ydGVyICYmXG4gICAgICAodHlwZW9mIGNvbHVtbiAhPT0gJ29iamVjdCcgfHxcbiAgICAgICAgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmICh0eXBlb2YgY29sdW1uLnNvcnRlciA9PT0gJ3VuZGVmaW5lZCcgfHwgY29sdW1uLnNvcnRlcikpKVxuICAgICkge1xuICAgICAgc3R5bGUuY3Vyc29yID0gJ3BvaW50ZXInO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyAmJiBjb2x1bW4uX3N0eWxlKSB7XG4gICAgICByZXR1cm4geyAuLi5zdHlsZSwgLi4uY29sdW1uLl9zdHlsZSB9O1xuICAgIH1cbiAgICByZXR1cm4gc3R5bGU7XG4gIH1cblxuICBjb2x1bW5MYWJlbChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgPyBjb2x1bW4ubGFiZWwgIT09IHVuZGVmaW5lZCA/IGNvbHVtbi5sYWJlbCA6IHRoaXMucHJldHRpZnlOYW1lKGNvbHVtbi5rZXkpIDogdGhpcy5wcmV0dGlmeU5hbWUoY29sdW1uKTtcbiAgfVxuXG4gIGNvbHVtbktleShjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgPyBjb2x1bW4ua2V5IDogY29sdW1uO1xuICB9XG5cbiAgZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICBpZiAodGhpcy5zb3J0ZXJWYWx1ZT8uY29sdW1uID09PSBjb2x1bW5LZXkpIHtcbiAgICAgIGlmICh0aGlzLnNvcnRlclZhbHVlLnN0YXRlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNvcnRlclZhbHVlLnN0YXRlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiAwO1xuICB9XG5cbiAgcHJldHRpZnlOYW1lKG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBuYW1lXG4gICAgICAucmVwbGFjZSgvWy1fLl0vZywgJyAnKVxuICAgICAgLnJlcGxhY2UoLyArL2csICcgJylcbiAgICAgIC5yZXBsYWNlKC8oW2EtejAtOV0pKFtBLVpdKS9nLCAnJDEgJDInKVxuICAgICAgLnNwbGl0KCcgJylcbiAgICAgIC5tYXAoKHdvcmQpID0+IHdvcmQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpKVxuICAgICAgLmpvaW4oJyAnKTtcbiAgfVxuXG4gIGhhbmRsZVNvcnRDbGljayhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcsIGk6IG51bWJlcikge1xuICAgIGlmICh0aGlzLmNvbHVtblNvcnRlckVuYWJsZWQoY29sdW1uKSkge1xuICAgICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICAgIHRoaXMuc29ydGVyU3RhdGVDaGFuZ2UuZW1pdCh7IGNvbHVtbktleSwgaW5kZXg6IGkgfSk7XG4gICAgfVxuICB9XG5cbiAgY29sdW1uRmlsdGVyRW5hYmxlZChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiAhPT0gJ29iamVjdCcgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5maWx0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5maWx0ZXI7XG4gIH1cblxuICBjb2x1bW5Tb3J0ZXJFbmFibGVkKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIGlmICghdGhpcy5jb2x1bW5Tb3J0ZXIpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuICh0eXBlb2YgY29sdW1uICE9PSAnb2JqZWN0JykgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5zb3J0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5zb3J0ZXI7XG4gIH1cblxuICBoYW5kbGVDb2x1bW5GaWx0ZXJWYWx1ZUNoYW5nZSgkZXZlbnQ6IHsgdmFsdWU6IHN0cmluZywgdHlwZT86IHN0cmluZywgY29sdW1uOiAoSUNvbHVtbiB8IHN0cmluZykgfSkge1xuICAgIGNvbnN0IHsgdmFsdWUsIHR5cGU6IGV2ZW50VHlwZSwgY29sdW1uIH0gPSB7IC4uLiRldmVudCB9O1xuICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XG4gICAgY29uc3QgY29sdW1uRmlsdGVyVmFsdWUgPSB2YWx1ZTtcbiAgICBjb25zdCBpc0xhenkgPSB0eXBlb2YgdGhpcy5jb2x1bW5GaWx0ZXIgPT09ICdvYmplY3QnICYmIHRoaXMuY29sdW1uRmlsdGVyLmxhenkgPT09IHRydWU7XG4gICAgaWYgKCgoaXNMYXp5ICYmIGV2ZW50VHlwZSA9PT0gJ2lucHV0JykgfHwgKCFpc0xhenkgJiYgZXZlbnRUeXBlID09PSAnY2hhbmdlJykpICYmIGNvbHVtbkZpbHRlclZhbHVlLmxlbmd0aCAhPT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW3RoaXMuY29sdW1uS2V5KGNvbHVtbildID0gY29sdW1uRmlsdGVyVmFsdWU7XG4gICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZS5lbWl0KHsgY29sdW1uOiBjb2x1bW5LZXksIHZhbHVlOiBjb2x1bW5GaWx0ZXJWYWx1ZSwgdHlwZTogZXZlbnRUeXBlIH0pO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0QWxsQ2hlY2tlZCgkZXZlbnQ6IEV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgKCRldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuY2hlY2tlZCA9ICF0aGlzLiNzZWxlY3RlZEFsbFByZXZpb3VzVmFsdWU7XG4gICAgLy8gKCRldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuY2hlY2tlZCA9ICF0aGlzLnNlbGVjdGVkQWxsO1xuICAgIGNvbnN0IHNlbGVjdEFsbCA9ICgkZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmNoZWNrZWQ7XG4gICAgdGhpcy5zZWxlY3RBbGxDaGFuZ2UuZW1pdChzZWxlY3RBbGwpO1xuICB9XG5cbiAgZ2V0Q29sdW1uRmlsdGVyKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIHJldHVybiBgY29sdW1uRmlsdGVyXyR7dGhpcy5jb2x1bW5LZXkoY29sdW1uKSA/PyAnX3VuZGVmaW5lZCd9YDtcbiAgfVxuXG4gIGdldCBjb2x1bW5GaWx0ZXJFdmVudCgpOiAnY2hhbmdlJyB8ICdpbnB1dCcge1xuICAgIHJldHVybiAodHlwZW9mIHRoaXMuY29sdW1uRmlsdGVyID09PSAnb2JqZWN0JyAmJiB0aGlzLmNvbHVtbkZpbHRlci5sYXp5KSA/ICdjaGFuZ2UnIDogJ2lucHV0JztcbiAgfTtcblxufVxuIiwiPHRyPlxuICA8dGggKm5nSWY9XCJzZWxlY3RhYmxlXCI+XG4gICAgPGlucHV0XG4gICAgICBjRm9ybUNoZWNrSW5wdXRcbiAgICAgIChjaGFuZ2UpPVwiaGFuZGxlU2VsZWN0QWxsQ2hlY2tlZCgkZXZlbnQpXCJcbiAgICAgIFtjaGVja2VkXT1cInNlbGVjdGVkQWxsID09PSB0cnVlXCJcbiAgICAgIFtpbmRldGVybWluYXRlXT1cImluZGV0ZXJtaW5hdGUgfCBhc3luY1wiXG4gICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgW2Rpc2FibGVkXT1cIiFzZWxlY3RBbGxcIlxuICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICA+XG4gIDwvdGg+XG4gIDx0aFxuICAgIChjbGljayk9XCJoYW5kbGVTb3J0Q2xpY2soY29sdW1uLCBpKVwiXG4gICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zOyBsZXQgaSA9IGluZGV4XCJcbiAgICBbY0h0bWxBdHRyXT1cInRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxuICAgIFtjVGFibGVDb2xvcl09XCJ0YWJsZUhlYWRlckNlbGxDb2xvcihjb2x1bW4pXCJcbiAgICBbbmdTdHlsZV09XCJ0YWJsZUhlYWRlckNlbGxTdHlsZXMoY29sdW1uKVwiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiY29sdW1uU29ydGVyICYmIGNvbHVtblNvcnRlckVuYWJsZWQoY29sdW1uKVwiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtblNvcnRlckljb25UZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGdldENvbHVtblNvcnRlclN0YXRlKGNvbHVtbikgfVwiXG4gICAgICAvPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cImQtaW5saW5lXCI+e3sgY29sdW1uTGFiZWwoY29sdW1uKSB9fTwvZGl2PlxuICA8L3RoPlxuPC90cj5cbjx0ciAqbmdJZj1cImNvbHVtbkZpbHRlclwiPlxuICA8dGggKm5nSWY9XCJzZWxlY3RhYmxlXCI+PC90aD5cbiAgPHRoICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICBbY0h0bWxBdHRyXT1cInRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxuICAgICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxuICAgICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW5GaWx0ZXJUZW1wbGF0ZXNbZ2V0Q29sdW1uRmlsdGVyKGNvbHVtbildID8/IGRlZmF1bHRDb2x1bW5GaWx0ZXI7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGNvbHVtbiwgaGVhZGVyOiB0aGlzfVwiXG4gICAgLz5cbiAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRDb2x1bW5GaWx0ZXIgbGV0LWNvbHVtbj5cbiAgICAgIDxjLXNtYXJ0LXRhYmxlLWNvbHVtbi1maWx0ZXJcbiAgICAgICAgKHZhbHVlQ2hhbmdlKT1cImhhbmRsZUNvbHVtbkZpbHRlclZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAqbmdJZj1cImNvbHVtbkZpbHRlckVuYWJsZWQoY29sdW1uKVwiXG4gICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcbiAgICAgICAgW2RlbGF5XT1cIjMwMFwiXG4gICAgICAgIFtvbkV2ZW50XT1cImNvbHVtbkZpbHRlckV2ZW50XCJcbiAgICAgICAgW3ZhbHVlXT1cImNvbHVtbkZpbHRlclN0YXRlW2NvbHVtbktleShjb2x1bW4pXSA/PyAnJ1wiXG4gICAgICAgIGNGaWx0ZXJJbnB1dFxuICAgICAgICBzaXppbmc9XCJzbVwiXG4gICAgICAvPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvdGg+XG48L3RyPlxuXG48bmctdGVtcGxhdGUgI2NvbHVtblNvcnRlckljb25UZW1wbGF0ZSBsZXQtY29sdW1uU29ydGVyU3RhdGU+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbHVtblNvcnRlclN0YXRlXCI+XG4gICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidhc2MnXCIgY2xhc3M9XCJmbG9hdC1lbmQgbXgtMVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uQXNjZW5kaW5nVGVtcGxhdGVcIiAvPlxuICAgIDwvc3Bhbj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiJ2Rlc2MnXCIgY2xhc3M9XCJmbG9hdC1lbmQgbXgtMVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uRGVzY2VuZGluZ1RlbXBsYXRlXCIgLz5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gKm5nU3dpdGNoRGVmYXVsdCBjbGFzcz1cIm9wYWNpdHktMjUgZmxvYXQtZW5kIG14LTFcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb3J0aW5nSWNvblRlbXBsYXRlXCIgLz5cbiAgICA8L3NwYW4+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLXRvZG86IHNvcnRpbmdJY29uQ3VzdG9tIFRlbXBsYXRlcy0tPlxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvblRlbXBsYXRlPlxuICA8c3ZnXG4gICAgY2xhc3M9XCJpY29uIGljb24tY3VzdG9tLXNpemVcIlxuICAgIHJvbGU9XCJpbWdcIlxuICAgIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiXG4gICAgd2lkdGg9XCIxOFwiXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gID5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjM4NCA0MzMuMzczIDM4NCAxNjAgMzUyIDE2MCAzNTIgNDM0LjUxIDI4Mi4xNzcgMzY0LjY4NyAyNTkuNTUgMzg3LjMxMyAzNjcuNDMyIDQ5NS4xOTYgNDc1LjMxMyAzODcuMzEzIDQ1Mi42ODcgMzY0LjY4NyAzODQgNDMzLjM3M1wiXG4gICAgPjwvcG9seWdvbj5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjE1OS40MzIgMTcuMzcyIDUxLjU1IDEyNS4yNTUgNzQuMTc3IDE0Ny44ODIgMTQ0IDc4LjA1OSAxNDQgMzUyIDE3NiAzNTIgMTc2IDc5LjE5NSAyNDQuNjg3IDE0Ny44ODIgMjY3LjMxMyAxMjUuMjU1IDE1OS40MzIgMTcuMzcyXCJcbiAgICA+PC9wb2x5Z29uPlxuICA8L3N2Zz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc29ydGluZ0ljb25Bc2NlbmRpbmdUZW1wbGF0ZT5cbiAgPHN2Z1xuICAgIGNsYXNzPVwiaWNvbiBpY29uLWN1c3RvbS1zaXplXCJcbiAgICByb2xlPVwiaW1nXCJcbiAgICB2aWV3Qm94PVwiMCAwIDUxMiA1MTJcIlxuICAgIHdpZHRoPVwiMThcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPHBvbHlnb25cbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXG4gICAgICBmaWxsPVwidmFyKC0tY2ktcHJpbWFyeS1jb2xvciwgY3VycmVudENvbG9yKVwiXG4gICAgICBwb2ludHM9XCIzOTAuNjI0IDE1MC42MjUgMjU2IDE2IDEyMS4zNzYgMTUwLjYyNSAxNDQuMDA0IDE3My4yNTIgMjQwLjAwMSA3Ny4yNTQgMjQwLjAwMSA0OTUuMjM2IDI3Mi4wMDEgNDk1LjIzNiAyNzIuMDAxIDc3LjI1NyAzNjcuOTk2IDE3My4yNTIgMzkwLjYyNCAxNTAuNjI1XCJcbiAgICA+PC9wb2x5Z29uPlxuICA8L3N2Zz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc29ydGluZ0ljb25EZXNjZW5kaW5nVGVtcGxhdGU+XG4gIDxzdmdcbiAgICBjbGFzcz1cImljb24gaWNvbi1jdXN0b20tc2l6ZVwiXG4gICAgcm9sZT1cImltZ1wiXG4gICAgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcbiAgICB3aWR0aD1cIjE4XCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMzY3Ljk5NyAzMzguNzUgMjcxLjk5OSA0MzQuNzQ3IDI3MS45OTkgMTcuNTAzIDIzOS45OTkgMTcuNTAzIDIzOS45OTkgNDM0Ljc0NSAxNDQuMDAzIDMzOC43NSAxMjEuMzc2IDM2MS4zNzcgMjU2IDQ5NiAzOTAuNjI0IDM2MS4zNzcgMzY3Ljk5NyAzMzguNzVcIlxuICAgID48L3BvbHlnb24+XG4gIDwvc3ZnPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
213
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFFTCxNQUFNLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsSUFBSSxFQUNKLE9BQU8sRUFDUCxRQUFRLEVBQ1IsWUFBWSxFQUNaLGVBQWUsRUFDZixnQkFBZ0IsRUFDakIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBS3ZDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQXlCNUUsTUFBTSxP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WTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdGLFNBQVM7c0JBRFosS0FBSztnQkFjRixXQUFXO3NCQURkLEtBQUs7Z0JBZ0JHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0YscUJBQXFCO3NCQUR4QixLQUFLO2dCQVlGLGtCQUFrQjtzQkFEckIsS0FBSztnQkFrQmEsdUJBQXVCO3NCQUF6QyxNQUFNO2dCQUNZLGlCQUFpQjtzQkFBbkMsTUFBTTtnQkFDWSxlQUFlO3NCQUFqQyxNQUFNO2dCQUdILFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFzeW5jUGlwZSxcbiAgTmdGb3JPZixcbiAgTmdJZixcbiAgTmdTdHlsZSxcbiAgTmdTd2l0Y2gsXG4gIE5nU3dpdGNoQ2FzZSxcbiAgTmdTd2l0Y2hEZWZhdWx0LFxuICBOZ1RlbXBsYXRlT3V0bGV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IElDb2x1bW4sIElDb2x1bW5GaWx0ZXIsIElDb2x1bW5GaWx0ZXJWYWx1ZSwgSVNvcnRlciwgSVNvcnRlclZhbHVlIH0gZnJvbSAnLi4vc21hcnQtdGFibGUudHlwZSc7XG5cbmltcG9ydCB7IENvbG9ycyB9IGZyb20gJy4uLy4uL2NvcmV1aS50eXBlcyc7XG5pbXBvcnQgeyBIdG1sQXR0cmlidXRlc0RpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3NoYXJlZCc7XG5pbXBvcnQgeyBUYWJsZUNvbG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vdGFibGUnO1xuaW1wb3J0IHsgRm9ybUNoZWNrSW5wdXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9mb3JtJztcbmltcG9ydCB7IFNtYXJ0VGFibGVDb2x1bW5GaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuLi9zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyL3NtYXJ0LXRhYmxlLWNvbHVtbi1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbHRlcklucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi4vc21hcnQtdGFibGUtZmlsdGVyL2ZpbHRlci1pbnB1dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU21hcnRUYWJsZUNvbHVtbkxhYmVsUGlwZSB9IGZyb20gJy4vc21hcnQtdGFibGUtY29sdW1uLWxhYmVsLnBpcGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLXNtYXJ0LXRhYmxlLWhlYWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LXRhYmxlLWhlYWQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBGaWx0ZXJJbnB1dERpcmVjdGl2ZSxcbiAgICBGb3JtQ2hlY2tJbnB1dERpcmVjdGl2ZSxcbiAgICBIdG1sQXR0cmlidXRlc0RpcmVjdGl2ZSxcbiAgICBTbWFydFRhYmxlQ29sdW1uRmlsdGVyQ29tcG9uZW50LFxuICAgIFRhYmxlQ29sb3JEaXJlY3RpdmUsXG4gICAgQXN5bmNQaXBlLFxuICAgIE5nRm9yT2YsXG4gICAgTmdJZixcbiAgICBOZ1N0eWxlLFxuICAgIE5nU3dpdGNoLFxuICAgIE5nU3dpdGNoQ2FzZSxcbiAgICBOZ1N3aXRjaERlZmF1bHQsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBTbWFydFRhYmxlQ29sdW1uTGFiZWxQaXBlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU21hcnRUYWJsZUhlYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgQElucHV0KCkgY29sdW1uRmlsdGVyPzogYm9vbGVhbiB8IElDb2x1bW5GaWx0ZXI7XG4gIEBJbnB1dCgpIGNvbHVtbkZpbHRlclN0YXRlOiBJQ29sdW1uRmlsdGVyVmFsdWUgPSB7fTtcbiAgQElucHV0KCkgY29sdW1uU29ydGVyPzogYm9vbGVhbiB8IElTb3J0ZXIgPSB0cnVlO1xuICBASW5wdXQoKSBjb21wb25lbnQ/OiBzdHJpbmcgPSAndGhlYWQnO1xuICBASW5wdXQoKSBjb2x1bW5zPzogKElDb2x1bW4gfCBzdHJpbmcpW107XG4gIEBJbnB1dCgpIHNlbGVjdGFibGU/OiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBzZWxlY3RBbGwodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLiNzZWxlY3RBbGwgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9O1xuXG4gIGdldCBzZWxlY3RBbGwoKSB7XG4gICAgcmV0dXJuIHRoaXMuI3NlbGVjdEFsbDtcbiAgfVxuXG4gICNzZWxlY3RBbGwgPSB0cnVlO1xuXG4gICNzZWxlY3RlZEFsbFByZXZpb3VzVmFsdWU/OiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBzZWxlY3RlZEFsbCh2YWx1ZTogYm9vbGVhbiB8ICdpbmRldGVybWluYXRlJykge1xuICAgIHRoaXMuaW5kZXRlcm1pbmF0ZSQubmV4dCh2YWx1ZSA9PT0gJ2luZGV0ZXJtaW5hdGUnKTtcblxuICAgIHRoaXMuI3NlbGVjdGVkQWxsID0gdmFsdWUgPT09ICdpbmRldGVybWluYXRlJyA/IGZhbHNlIDogY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAodmFsdWUgIT09ICdpbmRldGVybWluYXRlJykge1xuICAgICAgdGhpcy4jc2VsZWN0ZWRBbGxQcmV2aW91c1ZhbHVlID0gdGhpcy4jc2VsZWN0ZWRBbGw7XG4gICAgfVxuICB9O1xuXG4gIGdldCBzZWxlY3RlZEFsbCgpIHtcbiAgICByZXR1cm4gdGhpcy4jc2VsZWN0ZWRBbGw7XG4gIH1cblxuICAjc2VsZWN0ZWRBbGw6IGJvb2xlYW4gfCAnaW5kZXRlcm1pbmF0ZScgPSBmYWxzZTtcblxuICBASW5wdXQoKSBzb3J0ZXJWYWx1ZT86IElTb3J0ZXJWYWx1ZTtcblxuICBASW5wdXQoKVxuICBzZXQgY29sdW1uRmlsdGVyVGVtcGxhdGVzKHZhbHVlKSB7XG4gICAgdGhpcy4jY29sdW1uRmlsdGVyVGVtcGxhdGVzID0geyAuLi52YWx1ZSB9O1xuICB9O1xuXG4gIGdldCBjb2x1bW5GaWx0ZXJUZW1wbGF0ZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuI2NvbHVtbkZpbHRlclRlbXBsYXRlcztcbiAgfTtcblxuICAjY29sdW1uRmlsdGVyVGVtcGxhdGVzPzogYW55ID0ge307XG5cbiAgQElucHV0KClcbiAgc2V0IHN1bW1hcnlSb3dUZW1wbGF0ZSh2YWx1ZSkge1xuICAgIHRoaXMuI3N1bW1hcnlSb3dUZW1wbGF0ZSA9IHZhbHVlO1xuICB9O1xuXG4gIGdldCBzdW1tYXJ5Um93VGVtcGxhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuI3N1bW1hcnlSb3dUZW1wbGF0ZTtcbiAgfTtcblxuICAjc3VtbWFyeVJvd1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IG51bGwgPSBudWxsO1xuXG4gIC8vIHRvZG9cbiAgLy8gQElucHV0KCkgc29ydGluZ0ljb24/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvLyBASW5wdXQoKSBzb3J0aW5nSWNvbkFzY2VuZGluZz86IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG4gIC8vIEBJbnB1dCgpIHNvcnRpbmdJY29uRGVzY2VuZGluZz86IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgcmVhZG9ubHkgaW5kZXRlcm1pbmF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBAT3V0cHV0KCkgcmVhZG9ubHkgY29sdW1uRmlsdGVyU3RhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSByZWFkb25seSBzb3J0ZXJTdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdEFsbENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRoZWFkOiB0aGlzLmNvbXBvbmVudCA9PT0gJ3RoZWFkJyxcbiAgICAgIHRmb290OiB0aGlzLmNvbXBvbmVudCA9PT0gJ3Rmb290J1xuICAgIH07XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbHVtbnM/LmZvckVhY2goKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XG4gICAgICB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW2NvbHVtbktleV0gPSB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW2NvbHVtbktleV0gPz8gJyc7XG4gICAgfSk7XG4gIH1cblxuICB0YWJsZUhlYWRlckNlbGxQcm9wcyhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9wcm9wcykge1xuICAgICAgY29uc3QgeyBjb2xvciwgLi4ucHJvcHMgfSA9IHsgLi4uY29sdW1uLl9wcm9wcyB9O1xuICAgICAgcmV0dXJuIHByb3BzO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH1cblxuICB0YWJsZUhlYWRlckNlbGxDb2xvcihjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpOiBDb2xvcnMge1xuICAgIGlmICh0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyAmJiBjb2x1bW4uX3Byb3BzKSB7XG4gICAgICBjb25zdCB7IGNvbG9yIH0gPSB7IC4uLmNvbHVtbi5fcHJvcHMgfTtcbiAgICAgIHJldHVybiA8Q29sb3JzIHwgc3RyaW5nPmNvbG9yO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICB0YWJsZUhlYWRlckNlbGxTdHlsZXMoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgY29uc3Qgc3R5bGUgPSB7IHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLCBvdmVyZmxvdzogJ2hpZGRlbicsIGN1cnNvcjogJycgfTtcbiAgICBpZiAoXG4gICAgICB0aGlzLmNvbHVtblNvcnRlciAmJlxuICAgICAgKHR5cGVvZiBjb2x1bW4gIT09ICdvYmplY3QnIHx8XG4gICAgICAgICh0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyAmJiAodHlwZW9mIGNvbHVtbi5zb3J0ZXIgPT09ICd1bmRlZmluZWQnIHx8IGNvbHVtbi5zb3J0ZXIpKSlcbiAgICApIHtcbiAgICAgIHN0eWxlLmN1cnNvciA9ICdwb2ludGVyJztcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9zdHlsZSkge1xuICAgICAgcmV0dXJuIHsgLi4uc3R5bGUsIC4uLmNvbHVtbi5fc3R5bGUgfTtcbiAgICB9XG4gICAgcmV0dXJuIHN0eWxlO1xuICB9XG5cbiAgY29sdW1uS2V5KGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIHJldHVybiB0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyA/IGNvbHVtbi5rZXkgOiBjb2x1bW47XG4gIH1cblxuICBnZXRDb2x1bW5Tb3J0ZXJTdGF0ZShjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBjb25zdCBjb2x1bW5LZXkgPSB0aGlzLmNvbHVtbktleShjb2x1bW4pO1xuICAgIGlmICh0aGlzLnNvcnRlclZhbHVlPy5jb2x1bW4gPT09IGNvbHVtbktleSkge1xuICAgICAgaWYgKHRoaXMuc29ydGVyVmFsdWUuc3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc29ydGVyVmFsdWUuc3RhdGU7XG4gICAgICB9XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBoYW5kbGVTb3J0Q2xpY2soY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nLCBpOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5jb2x1bW5Tb3J0ZXJFbmFibGVkKGNvbHVtbikpIHtcbiAgICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XG4gICAgICB0aGlzLnNvcnRlclN0YXRlQ2hhbmdlLmVtaXQoeyBjb2x1bW5LZXksIGluZGV4OiBpIH0pO1xuICAgIH1cbiAgfVxuXG4gIGNvbHVtbkZpbHRlckVuYWJsZWQoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgcmV0dXJuIHR5cGVvZiBjb2x1bW4gIT09ICdvYmplY3QnID8gdHJ1ZSA6IHR5cGVvZiBjb2x1bW4uZmlsdGVyID09PSAndW5kZWZpbmVkJyA/IHRydWUgOiBjb2x1bW4uZmlsdGVyO1xuICB9XG5cbiAgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuY29sdW1uU29ydGVyKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiAodHlwZW9mIGNvbHVtbiAhPT0gJ29iamVjdCcpID8gdHJ1ZSA6IHR5cGVvZiBjb2x1bW4uc29ydGVyID09PSAndW5kZWZpbmVkJyA/IHRydWUgOiBjb2x1bW4uc29ydGVyO1xuICB9XG5cbiAgaGFuZGxlQ29sdW1uRmlsdGVyVmFsdWVDaGFuZ2UoJGV2ZW50OiB7IHZhbHVlOiBzdHJpbmcsIHR5cGU/OiBzdHJpbmcsIGNvbHVtbjogKElDb2x1bW4gfCBzdHJpbmcpIH0pIHtcbiAgICBjb25zdCB7IHZhbHVlLCB0eXBlOiBldmVudFR5cGUsIGNvbHVtbiB9ID0geyAuLi4kZXZlbnQgfTtcbiAgICBjb25zdCBjb2x1bW5LZXkgPSB0aGlzLmNvbHVtbktleShjb2x1bW4pO1xuICAgIGNvbnN0IGNvbHVtbkZpbHRlclZhbHVlID0gdmFsdWU7XG4gICAgY29uc3QgaXNMYXp5ID0gdHlwZW9mIHRoaXMuY29sdW1uRmlsdGVyID09PSAnb2JqZWN0JyAmJiB0aGlzLmNvbHVtbkZpbHRlci5sYXp5ID09PSB0cnVlO1xuICAgIGlmICgoKGlzTGF6eSAmJiBldmVudFR5cGUgPT09ICdpbnB1dCcpIHx8ICghaXNMYXp5ICYmIGV2ZW50VHlwZSA9PT0gJ2NoYW5nZScpKSAmJiBjb2x1bW5GaWx0ZXJWYWx1ZS5sZW5ndGggIT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZVt0aGlzLmNvbHVtbktleShjb2x1bW4pXSA9IGNvbHVtbkZpbHRlclZhbHVlO1xuICAgIHRoaXMuY29sdW1uRmlsdGVyU3RhdGVDaGFuZ2UuZW1pdCh7IGNvbHVtbjogY29sdW1uS2V5LCB2YWx1ZTogY29sdW1uRmlsdGVyVmFsdWUsIHR5cGU6IGV2ZW50VHlwZSB9KTtcbiAgfVxuXG4gIGhhbmRsZVNlbGVjdEFsbENoZWNrZWQoJGV2ZW50OiBFdmVudCkge1xuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICgkZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmNoZWNrZWQgPSAhdGhpcy4jc2VsZWN0ZWRBbGxQcmV2aW91c1ZhbHVlO1xuICAgIC8vICgkZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmNoZWNrZWQgPSAhdGhpcy5zZWxlY3RlZEFsbDtcbiAgICBjb25zdCBzZWxlY3RBbGwgPSAoJGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS5jaGVja2VkO1xuICAgIHRoaXMuc2VsZWN0QWxsQ2hhbmdlLmVtaXQoc2VsZWN0QWxsKTtcbiAgfVxuXG4gIGdldENvbHVtbkZpbHRlcihjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gYGNvbHVtbkZpbHRlcl8ke3RoaXMuY29sdW1uS2V5KGNvbHVtbikgPz8gJ191bmRlZmluZWQnfWA7XG4gIH1cblxuICBnZXQgY29sdW1uRmlsdGVyRXZlbnQoKTogJ2NoYW5nZScgfCAnaW5wdXQnIHtcbiAgICByZXR1cm4gKHR5cGVvZiB0aGlzLmNvbHVtbkZpbHRlciA9PT0gJ29iamVjdCcgJiYgdGhpcy5jb2x1bW5GaWx0ZXIubGF6eSkgPyAnY2hhbmdlJyA6ICdpbnB1dCc7XG4gIH07XG5cbn1cbiIsIjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb21wb25lbnQ9PT0ndGZvb3QnXCI+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzdW1tYXJ5Um93VGVtcGxhdGVcIiAvPlxuPC9uZy10ZW1wbGF0ZT5cbjx0cj5cbiAgPHRoICpuZ0lmPVwic2VsZWN0YWJsZVwiPlxuICAgIDxpbnB1dFxuICAgICAgY0Zvcm1DaGVja0lucHV0XG4gICAgICAoY2hhbmdlKT1cImhhbmRsZVNlbGVjdEFsbENoZWNrZWQoJGV2ZW50KVwiXG4gICAgICBbY2hlY2tlZF09XCJzZWxlY3RlZEFsbCA9PT0gdHJ1ZVwiXG4gICAgICBbaW5kZXRlcm1pbmF0ZV09XCJpbmRldGVybWluYXRlJCB8IGFzeW5jXCJcbiAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICBbZGlzYWJsZWRdPVwiIXNlbGVjdEFsbFwiXG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgID5cbiAgPC90aD5cbiAgPHRoXG4gICAgKGNsaWNrKT1cImhhbmRsZVNvcnRDbGljayhjb2x1bW4sIGkpXCJcbiAgICAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IGxldCBpID0gaW5kZXhcIlxuICAgIFtjSHRtbEF0dHJdPVwidGFibGVIZWFkZXJDZWxsUHJvcHMoY29sdW1uKVwiXG4gICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxuICAgIFtuZ1N0eWxlXT1cInRhYmxlSGVhZGVyQ2VsbFN0eWxlcyhjb2x1bW4pXCJcbiAgPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb2x1bW5Tb3J0ZXIgJiYgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uU29ydGVySWNvblRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uKSB9XCJcbiAgICAgIC8+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8ZGl2IGNsYXNzPVwiZC1pbmxpbmVcIj57eyBjb2x1bW4gfCBjb2x1bW5MYWJlbCB9fTwvZGl2PlxuICA8L3RoPlxuPC90cj5cbjx0ciAqbmdJZj1cImNvbHVtbkZpbHRlclwiPlxuICA8dGggKm5nSWY9XCJzZWxlY3RhYmxlXCI+PC90aD5cbiAgPHRoICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICBbY0h0bWxBdHRyXT1cInRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxuICAgICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxuICAgICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW5GaWx0ZXJUZW1wbGF0ZXNbZ2V0Q29sdW1uRmlsdGVyKGNvbHVtbildID8/IGRlZmF1bHRDb2x1bW5GaWx0ZXI7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGNvbHVtbiwgaGVhZGVyOiB0aGlzfVwiXG4gICAgLz5cbiAgPC90aD5cbjwvdHI+XG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdENvbHVtbkZpbHRlciBsZXQtY29sdW1uPlxuICA8Yy1zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyXG4gICAgKHZhbHVlQ2hhbmdlKT1cImhhbmRsZUNvbHVtbkZpbHRlclZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICpuZ0lmPVwiY29sdW1uRmlsdGVyRW5hYmxlZChjb2x1bW4pXCJcbiAgICBbY29sdW1uXT1cImNvbHVtblwiXG4gICAgW2RlbGF5XT1cIjMwMFwiXG4gICAgW29uRXZlbnRdPVwiY29sdW1uRmlsdGVyRXZlbnRcIlxuICAgIFt2YWx1ZV09XCJjb2x1bW5GaWx0ZXJTdGF0ZVtjb2x1bW5LZXkoY29sdW1uKV0gPz8gJydcIlxuICAgIGNGaWx0ZXJJbnB1dFxuICAgIHNpemluZz1cInNtXCJcbiAgLz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjY29sdW1uU29ydGVySWNvblRlbXBsYXRlIGxldC1jb2x1bW5Tb3J0ZXJTdGF0ZT5cbiAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29sdW1uU29ydGVyU3RhdGVcIj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiJ2FzYydcIiBjbGFzcz1cImZsb2F0LWVuZCBteC0xXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29ydGluZ0ljb25Bc2NlbmRpbmdUZW1wbGF0ZVwiIC8+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInZGVzYydcIiBjbGFzcz1cImZsb2F0LWVuZCBteC0xXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29ydGluZ0ljb25EZXNjZW5kaW5nVGVtcGxhdGVcIiAvPlxuICAgIDwvc3Bhbj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hEZWZhdWx0IGNsYXNzPVwib3BhY2l0eS0yNSBmbG9hdC1lbmQgbXgtMVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uVGVtcGxhdGVcIiAvPlxuICAgIDwvc3Bhbj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tdG9kbzogc29ydGluZ0ljb25DdXN0b20gVGVtcGxhdGVzLS0+XG48bmctdGVtcGxhdGUgI3NvcnRpbmdJY29uVGVtcGxhdGU+XG4gIDxzdmdcbiAgICBjbGFzcz1cImljb24gaWNvbi1jdXN0b20tc2l6ZVwiXG4gICAgcm9sZT1cImltZ1wiXG4gICAgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcbiAgICB3aWR0aD1cIjE4XCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMzg0IDQzMy4zNzMgMzg0IDE2MCAzNTIgMTYwIDM1MiA0MzQuNTEgMjgyLjE3NyAzNjQuNjg3IDI1OS41NSAzODcuMzEzIDM2Ny40MzIgNDk1LjE5NiA0NzUuMzEzIDM4Ny4zMTMgNDUyLjY4NyAzNjQuNjg3IDM4NCA0MzMuMzczXCJcbiAgICA+PC9wb2x5Z29uPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMTU5LjQzMiAxNy4zNzIgNTEuNTUgMTI1LjI1NSA3NC4xNzcgMTQ3Ljg4MiAxNDQgNzguMDU5IDE0NCAzNTIgMTc2IDM1MiAxNzYgNzkuMTk1IDI0NC42ODcgMTQ3Ljg4MiAyNjcuMzEzIDEyNS4yNTUgMTU5LjQzMiAxNy4zNzJcIlxuICAgID48L3BvbHlnb24+XG4gIDwvc3ZnPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvbkFzY2VuZGluZ1RlbXBsYXRlPlxuICA8c3ZnXG4gICAgY2xhc3M9XCJpY29uIGljb24tY3VzdG9tLXNpemVcIlxuICAgIHJvbGU9XCJpbWdcIlxuICAgIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiXG4gICAgd2lkdGg9XCIxOFwiXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gID5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjM5MC42MjQgMTUwLjYyNSAyNTYgMTYgMTIxLjM3NiAxNTAuNjI1IDE0NC4wMDQgMTczLjI1MiAyNDAuMDAxIDc3LjI1NCAyNDAuMDAxIDQ5NS4yMzYgMjcyLjAwMSA0OTUuMjM2IDI3Mi4wMDEgNzcuMjU3IDM2Ny45OTYgMTczLjI1MiAzOTAuNjI0IDE1MC42MjVcIlxuICAgID48L3BvbHlnb24+XG4gIDwvc3ZnPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvbkRlc2NlbmRpbmdUZW1wbGF0ZT5cbiAgPHN2Z1xuICAgIGNsYXNzPVwiaWNvbiBpY29uLWN1c3RvbS1zaXplXCJcbiAgICByb2xlPVwiaW1nXCJcbiAgICB2aWV3Qm94PVwiMCAwIDUxMiA1MTJcIlxuICAgIHdpZHRoPVwiMThcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPHBvbHlnb25cbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXG4gICAgICBmaWxsPVwidmFyKC0tY2ktcHJpbWFyeS1jb2xvciwgY3VycmVudENvbG9yKVwiXG4gICAgICBwb2ludHM9XCIzNjcuOTk3IDMzOC43NSAyNzEuOTk5IDQzNC43NDcgMjcxLjk5OSAxNy41MDMgMjM5Ljk5OSAxNy41MDMgMjM5Ljk5OSA0MzQuNzQ1IDE0NC4wMDMgMzM4Ljc1IDEyMS4zNzYgMzYxLjM3NyAyNTYgNDk2IDM5MC42MjQgMzYxLjM3NyAzNjcuOTk3IDMzOC43NVwiXG4gICAgPjwvcG9seWdvbj5cbiAgPC9zdmc+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -26,10 +26,10 @@ export class SmartTableItemsPerPageSelectorComponent {
|
|
|
26
26
|
row: true
|
|
27
27
|
};
|
|
28
28
|
}
|
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
30
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.
|
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SmartTableItemsPerPageSelectorComponent, isStandalone: true, selector: "c-smart-table-items-per-page-selector", inputs: { itemsPerPage: "itemsPerPage", itemsPerPageLabel: "itemsPerPageLabel", itemsPerPageOptions: "itemsPerPageOptions" }, outputs: { itemsPerPageChange: "itemsPerPageChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<label cLabel=\"col\" class=\"col-sm-auto\">{{itemsPerPageLabel}}</label>\n<div class=\"col-auto\">\n <select [(ngModel)]=\"itemsPerPage\" cSelect name=\"itemsPerPageSelector\">\n <option *ngFor=\"let option of itemsPerPageOptions; let i = index\" [ngValue]=\"option\">{{option}}</option>\n </select>\n</div>\n", dependencies: [{ kind: "directive", type: FormSelectDirective, selector: "select[cSelect]", inputs: ["sizing", "valid"] }, { kind: "directive", type: FormLabelDirective, selector: "[cLabel]", inputs: ["cLabel", "sizing"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
31
31
|
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SmartTableItemsPerPageSelectorComponent, decorators: [{
|
|
33
33
|
type: Component,
|
|
34
34
|
args: [{ selector: 'c-smart-table-items-per-page-selector', imports: [
|
|
35
35
|
FormSelectDirective,
|
|
@@ -3,11 +3,11 @@ import { SmartTableComponent } from './smart-table/smart-table.component';
|
|
|
3
3
|
import { SmartTableFilterComponent } from './smart-table-filter/smart-table-filter.component';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export class SmartTableModule {
|
|
6
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
7
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.
|
|
8
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SmartTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.9", ngImport: i0, type: SmartTableModule, imports: [SmartTableComponent, SmartTableFilterComponent], exports: [SmartTableComponent, SmartTableFilterComponent] }); }
|
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SmartTableModule, imports: [SmartTableComponent] }); }
|
|
9
9
|
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SmartTableModule, decorators: [{
|
|
11
11
|
type: NgModule,
|
|
12
12
|
args: [{
|
|
13
13
|
exports: [SmartTableComponent, SmartTableFilterComponent],
|
|
@@ -23,10 +23,10 @@ export class SpinnerComponent {
|
|
|
23
23
|
[`spinner-${this.variant}-${this.size}`]: !!this.size
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
27
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SpinnerComponent, isStandalone: true, selector: "c-spinner", inputs: { color: "color", label: "label", size: "size", variant: "variant", role: "role" }, host: { properties: { "attr.role": "this.role", "class": "this.hostClasses" } }, ngImport: i0, template: "<span class=\"visually-hidden\">{{label}}</span>\n" }); }
|
|
28
28
|
}
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SpinnerComponent, decorators: [{
|
|
30
30
|
type: Component,
|
|
31
31
|
args: [{ selector: 'c-spinner', standalone: true, template: "<span class=\"visually-hidden\">{{label}}</span>\n" }]
|
|
32
32
|
}], propDecorators: { color: [{
|
|
@@ -2,11 +2,11 @@ import { NgModule } from '@angular/core';
|
|
|
2
2
|
import { SpinnerComponent } from './spinner.component';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class SpinnerModule {
|
|
5
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
6
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.
|
|
7
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SpinnerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.9", ngImport: i0, type: SpinnerModule, imports: [SpinnerComponent], exports: [SpinnerComponent] }); }
|
|
7
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SpinnerModule }); }
|
|
8
8
|
}
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SpinnerModule, decorators: [{
|
|
10
10
|
type: NgModule,
|
|
11
11
|
args: [{
|
|
12
12
|
exports: [
|
|
@@ -13,10 +13,10 @@ export class TableActiveDirective {
|
|
|
13
13
|
'table-active': this.active
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
17
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableActiveDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
17
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.9", type: TableActiveDirective, isStandalone: true, selector: "[cTableActive]", inputs: { active: ["cTableActive", "active", booleanAttribute] }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 }); }
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableActiveDirective, decorators: [{
|
|
20
20
|
type: Directive,
|
|
21
21
|
args: [{
|
|
22
22
|
selector: '[cTableActive]',
|
|
@@ -6,10 +6,10 @@ export class TableColorDirective {
|
|
|
6
6
|
[`table-${this.color}`]: !!this.color,
|
|
7
7
|
};
|
|
8
8
|
}
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
10
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableColorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
10
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: TableColorDirective, isStandalone: true, selector: "[cTableColor]", inputs: { color: ["cTableColor", "color"] }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 }); }
|
|
11
11
|
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableColorDirective, decorators: [{
|
|
13
13
|
type: Directive,
|
|
14
14
|
args: [{
|
|
15
15
|
selector: '[cTableColor]',
|
|
@@ -67,10 +67,10 @@ export class TableDirective {
|
|
|
67
67
|
this.renderer.appendChild(wrapper, nativeElement);
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
71
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.
|
|
70
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
71
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.9", type: TableDirective, isStandalone: true, selector: "table[cTable]", inputs: { align: "align", borderColor: "borderColor", bordered: ["bordered", "bordered", booleanAttribute], borderless: ["borderless", "borderless", booleanAttribute], caption: "caption", color: "color", hover: ["hover", "hover", booleanAttribute], responsive: "responsive", small: ["small", "small", booleanAttribute], striped: ["striped", "striped", booleanAttribute], stripedColumns: ["stripedColumns", "stripedColumns", booleanAttribute] }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 }); }
|
|
72
72
|
}
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableDirective, decorators: [{
|
|
74
74
|
type: Directive,
|
|
75
75
|
args: [{
|
|
76
76
|
selector: 'table[cTable]',
|
|
@@ -4,15 +4,15 @@ import { TableColorDirective } from './table-color.directive';
|
|
|
4
4
|
import { TableActiveDirective } from './table-active.directive';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class TableModule {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
8
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.9", ngImport: i0, type: TableModule, imports: [TableDirective,
|
|
9
9
|
TableColorDirective,
|
|
10
10
|
TableActiveDirective], exports: [TableDirective,
|
|
11
11
|
TableColorDirective,
|
|
12
12
|
TableActiveDirective] }); }
|
|
13
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.
|
|
13
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableModule }); }
|
|
14
14
|
}
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableModule, decorators: [{
|
|
16
16
|
type: NgModule,
|
|
17
17
|
args: [{
|
|
18
18
|
exports: [
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvdGFibGUvdGFibGUudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnJlYWtwb2ludHMsIENvbG9ycyB9IGZyb20gJy4uL2NvcmV1aS50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRhYmxlIHtcbiAgLyoqXG4gICAqIFNldCB0aGUgdmVydGljYWwgYWxpZ25tZW50LlxuICAgKiBAdHlwZSBzdHJpbmdcbiAgICogQHZhbHVlcyAnYm90dG9tJyB8ICdtaWRkbGUnIHwgJ3RvcCdcbiAgICovXG4gIGFsaWduPzogJ2JvdHRvbScgfCAnbWlkZGxlJyB8ICd0b3AnO1xuICAvKipcbiAgICogU2V0cyB0aGUgYm9yZGVyIGNvbG9yIG9mIHRoZSBjb21wb25lbnQgdG8gb25lIG9mIENvcmVVSeKAmXMgdGhlbWVkIGNvbG9ycy5cbiAgICogQHR5cGUgQ29sb3JzXG4gICAqL1xuICBib3JkZXJDb2xvcj86IENvbG9ycztcbiAgLyoqXG4gICAqIEFkZCBib3JkZXJzIG9uIGFsbCBzaWRlcyBvZiB0aGUgdGFibGUgYW5kIGNlbGxzLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBib3JkZXJlZD86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIC8qKlxuICAgKiBSZW1vdmUgYm9yZGVycyBvbiBhbGwgc2lkZXMgb2YgdGhlIHRhYmxlIGFuZCBjZWxscy5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgYm9yZGVybGVzcz86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIC8qKlxuICAgKiBQdXQgdGhlIGA8Y2FwdGlvbj5gIG9uIHRoZSB0b3Agb2YgdGhlIHRhYmxlLlxuICAgKiBAdmFsdWVzICd0b3AnXG4gICAqL1xuICBjYXB0aW9uPzogJ3RvcCc7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb2xvciBjb250ZXh0IG9mIHRoZSBjb21wb25lbnQgdG8gb25lIG9mIENvcmVVSeKAmXMgdGhlbWVkIGNvbG9ycy5cbiAgICogQHR5cGUgQ29sb3JzXG4gICAqL1xuICBjb2xvcj86IENvbG9ycztcbiAgLyoqXG4gICAqIEVuYWJsZSBhIGhvdmVyIHN0YXRlIG9uIHRhYmxlIHJvd3Mgd2l0aGluIHRhYmxlIGJvZHkuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICovXG4gIGhvdmVyPzogYm9vbGVhbiB8IHN0cmluZztcbiAgLyoqXG4gICAqIE1ha2UgdGFibGUgcmVzcG9uc2l2ZSBhY3Jvc3MgYWxsIHZpZXdwb3J0cyBvciBwaWNrIGEgbWF4aW11bSBicmVha3BvaW50IHdpdGggd2hpY2ggdG8gaGF2ZSBhIHJlc3BvbnNpdmUgdGFibGUgdXAgdG8uXG4gICAqIEB0eXBlOiB7Ym9vbGVhbiB8ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICd4bCcgfCAneHhsJ31cbiAgICovXG4gIHJlc3BvbnNpdmU/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvdGFibGUvdGFibGUudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnJlYWtwb2ludHMsIENvbG9ycyB9IGZyb20gJy4uL2NvcmV1aS50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRhYmxlIHtcbiAgLyoqXG4gICAqIFNldCB0aGUgdmVydGljYWwgYWxpZ25tZW50LlxuICAgKiBAdHlwZSBzdHJpbmdcbiAgICogQHZhbHVlcyAnYm90dG9tJyB8ICdtaWRkbGUnIHwgJ3RvcCdcbiAgICovXG4gIGFsaWduPzogJ2JvdHRvbScgfCAnbWlkZGxlJyB8ICd0b3AnO1xuICAvKipcbiAgICogU2V0cyB0aGUgYm9yZGVyIGNvbG9yIG9mIHRoZSBjb21wb25lbnQgdG8gb25lIG9mIENvcmVVSeKAmXMgdGhlbWVkIGNvbG9ycy5cbiAgICogQHR5cGUgQ29sb3JzXG4gICAqL1xuICBib3JkZXJDb2xvcj86IENvbG9ycztcbiAgLyoqXG4gICAqIEFkZCBib3JkZXJzIG9uIGFsbCBzaWRlcyBvZiB0aGUgdGFibGUgYW5kIGNlbGxzLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBib3JkZXJlZD86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIC8qKlxuICAgKiBSZW1vdmUgYm9yZGVycyBvbiBhbGwgc2lkZXMgb2YgdGhlIHRhYmxlIGFuZCBjZWxscy5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgYm9yZGVybGVzcz86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIC8qKlxuICAgKiBQdXQgdGhlIGA8Y2FwdGlvbj5gIG9uIHRoZSB0b3Agb2YgdGhlIHRhYmxlLlxuICAgKiBAdmFsdWVzICd0b3AnXG4gICAqL1xuICBjYXB0aW9uPzogJ3RvcCc7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb2xvciBjb250ZXh0IG9mIHRoZSBjb21wb25lbnQgdG8gb25lIG9mIENvcmVVSeKAmXMgdGhlbWVkIGNvbG9ycy5cbiAgICogQHR5cGUgQ29sb3JzXG4gICAqL1xuICBjb2xvcj86IENvbG9ycztcbiAgLyoqXG4gICAqIEVuYWJsZSBhIGhvdmVyIHN0YXRlIG9uIHRhYmxlIHJvd3Mgd2l0aGluIHRhYmxlIGJvZHkuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICovXG4gIGhvdmVyPzogYm9vbGVhbiB8IHN0cmluZztcbiAgLyoqXG4gICAqIE1ha2UgdGFibGUgcmVzcG9uc2l2ZSBhY3Jvc3MgYWxsIHZpZXdwb3J0cyBvciBwaWNrIGEgbWF4aW11bSBicmVha3BvaW50IHdpdGggd2hpY2ggdG8gaGF2ZSBhIHJlc3BvbnNpdmUgdGFibGUgdXAgdG8uXG4gICAqIEB0eXBlOiB7Ym9vbGVhbiB8ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICd4bCcgfCAneHhsJ31cbiAgICovXG4gIHJlc3BvbnNpdmU/OiBib29sZWFuIHwgT21pdDxCcmVha3BvaW50cywgJ3hzJz47XG4gIC8qKlxuICAgKiBNYWtlIHRhYmxlIG1vcmUgY29tcGFjdCBieSBjdXR0aW5nIGFsbCBjZWxsIGBwYWRkaW5nYCBpbiBoYWxmLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBzbWFsbD86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIC8qKlxuICAgKiBBZGQgemVicmEtc3RyaXBpbmcgdG8gYW55IHRhYmxlIHJvdyB3aXRoaW4gdGhlIHRhYmxlIGJvZHlgLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBzdHJpcGVkPzogYm9vbGVhbiB8IHN0cmluZztcbiAgYXR0cmlidXRlcz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRhYmxlRWxlbWVudFByb3BzIHtcbiAgLyoqXG4gICAqIFNldCB0aGUgdmVydGljYWwgYWxpZ25tZW50LlxuICAgQHR5cGUgJ2JvdHRvbScgfCAnbWlkZGxlJyB8ICd0b3AnXG4gICAqL1xuICBhbGlnbj86ICgnYm90dG9tJyB8ICdtaWRkbGUnIHwgJ3RvcCcpO1xuICAvKipcbiAgICogU2V0cyB0aGUgY29sb3IgY29udGV4dCBvZiB0aGUgY29tcG9uZW50IHRvIG9uZSBvZiBDb3JlVUnigJlzIHRoZW1lZCBjb2xvcnMuXG4gICAqIEB0eXBlIENvbG9yc1xuICAgKi9cbiAgY29sb3I/OiBDb2xvcnM7XG4gIF9hdHRyaWJ1dGVzPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVGFibGVSb3dDZWxsUHJvcHMgZXh0ZW5kcyBJVGFibGVFbGVtZW50UHJvcHMge1xuICAvKipcbiAgICogSGlnaGxpZ2h0IGEgdGFibGUgcm93IG9yIGNlbGxcbiAgIEB0eXBlIGJvb2xlYW5cbiAgICovXG4gIGFjdGl2ZT86IGJvb2xlYW47XG59XG4iXX0=
|
|
@@ -72,10 +72,10 @@ export class TabContentComponent {
|
|
|
72
72
|
tabPane.active = idx === index;
|
|
73
73
|
});
|
|
74
74
|
}
|
|
75
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
76
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.
|
|
75
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabContentComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.TabService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
76
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TabContentComponent, isStandalone: true, selector: "c-tab-content", inputs: { activeTabPaneIdx: "activeTabPaneIdx" }, outputs: { activeTabPaneIdxChange: "activeTabPaneIdxChange" }, host: { properties: { "class": "this.hostClasses" } }, queries: [{ propertyName: "panes", predicate: TabPaneComponent }], exportAs: ["cTabContent"], usesOnChanges: true, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
77
77
|
}
|
|
78
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabContentComponent, decorators: [{
|
|
79
79
|
type: Component,
|
|
80
80
|
args: [{ selector: 'c-tab-content', template: `<ng-content></ng-content>`, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cTabContent', standalone: true, styles: [":host{display:block}\n"] }]
|
|
81
81
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.TabService }]; }, propDecorators: { activeTabPaneIdx: [{
|
|
@@ -90,10 +90,10 @@ export class TabContentRefDirective {
|
|
|
90
90
|
this.tabServiceSubscription?.unsubscribe();
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
94
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.
|
|
93
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabContentRefDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.TabService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
94
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: TabContentRefDirective, isStandalone: true, selector: "[cTabContent]", inputs: { tabContentRef: ["cTabContent", "tabContentRef"], active: "active", disabled: "disabled", tabPaneIdx: "tabPaneIdx" }, host: { listeners: { "click": "toggleOpen($event)" }, properties: { "class": "this.hostClasses", "attr.aria-disabled": "this.isDisabled", "attr.disabled": "this.attrDisabled", "attr.tabindex": "this.getTabindex" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
95
95
|
}
|
|
96
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabContentRefDirective, decorators: [{
|
|
97
97
|
type: Directive,
|
|
98
98
|
args: [{
|
|
99
99
|
selector: '[cTabContent]',
|
|
@@ -42,11 +42,11 @@ export class TabPaneComponent {
|
|
|
42
42
|
this.tabServiceSubscription?.unsubscribe();
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
46
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.
|
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabPaneComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.TabService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TabPaneComponent, isStandalone: true, selector: "c-tab-pane", host: { properties: { "class": "this.hostClasses" } }, exportAs: ["cTabPane"], ngImport: i0, template: `
|
|
47
47
|
<ng-content></ng-content>`, isInline: true, styles: [":host{display:block}\n"] }); }
|
|
48
48
|
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabPaneComponent, decorators: [{
|
|
50
50
|
type: Component,
|
|
51
51
|
args: [{ selector: 'c-tab-pane', template: `
|
|
52
52
|
<ng-content></ng-content>`, exportAs: 'cTabPane', standalone: true, styles: [":host{display:block}\n"] }]
|
|
@@ -9,10 +9,10 @@ export class TabService {
|
|
|
9
9
|
setActiveTabIdx(tabContentState) {
|
|
10
10
|
this.activeTabPaneIdx.next(tabContentState);
|
|
11
11
|
}
|
|
12
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
13
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
13
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabService, providedIn: 'root' }); }
|
|
14
14
|
}
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabService, decorators: [{
|
|
16
16
|
type: Injectable,
|
|
17
17
|
args: [{
|
|
18
18
|
providedIn: 'root'
|
|
@@ -5,17 +5,17 @@ import { TabService } from './tab.service';
|
|
|
5
5
|
import { TabContentRefDirective } from './tab-content-ref.directive';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class TabsModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.9", ngImport: i0, type: TabsModule, imports: [TabContentComponent,
|
|
10
10
|
TabContentRefDirective,
|
|
11
11
|
TabPaneComponent], exports: [TabContentComponent,
|
|
12
12
|
TabPaneComponent,
|
|
13
13
|
TabContentRefDirective] }); }
|
|
14
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.
|
|
14
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabsModule, providers: [
|
|
15
15
|
TabService
|
|
16
16
|
] }); }
|
|
17
17
|
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabsModule, decorators: [{
|
|
19
19
|
type: NgModule,
|
|
20
20
|
args: [{
|
|
21
21
|
imports: [
|