@skyux/data-manager 8.4.0 → 8.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.mjs +1 -1
- package/fesm2015/skyux-data-manager.mjs +1 -1
- package/fesm2015/skyux-data-manager.mjs.map +1 -1
- package/fesm2020/skyux-data-manager.mjs +1 -1
- package/fesm2020/skyux-data-manager.mjs.map +1 -1
- package/package.json +9 -9
@@ -154,7 +154,7 @@ _SkyDataManagerColumnPickerComponent_ngUnsubscribe = new WeakMap(), _SkyDataMana
|
|
154
154
|
return formattedColumnOptions;
|
155
155
|
};
|
156
156
|
SkyDataManagerColumnPickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDataManagerColumnPickerComponent, deps: [{ token: i1.SkyDataManagerColumnPickerContext }, { token: i2.SkyDataManagerService }, { token: i3.SkyModalInstance }], target: i0.ɵɵFactoryTarget.Component });
|
157
|
-
SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody", "ariaDescribedBy", "ariaLabelledBy"] }, { kind: "component", type: i3.λ2, selector: "sky-modal-content" }, { kind: "component", type: i3.λ3, selector: "sky-modal-footer" }, { kind: "component", type: i3.λ4, selector: "sky-modal-header" }, { kind: "component", type: i5.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { kind: "component", type: i5.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { kind: "component", type: i5.λ8, selector: "sky-repeater-item-content" }, { kind: "component", type: i5.λ12, selector: "sky-repeater-item-title" }, { kind: "component", type: i6.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }, { kind: "component", type: i7.SkyDataManagerComponent, selector: "sky-data-manager" }, { kind: "component", type: i8.SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { kind: "component", type: i9.SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId"] }, { kind: "pipe", type: i10.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
157
|
+
SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.λ5, selector: "sky-modal", inputs: ["formErrors", "ariaRole", "tiledBody", "ariaDescribedBy", "ariaLabelledBy"] }, { kind: "component", type: i3.λ2, selector: "sky-modal-content" }, { kind: "component", type: i3.λ3, selector: "sky-modal-footer" }, { kind: "component", type: i3.λ4, selector: "sky-modal-header" }, { kind: "component", type: i5.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { kind: "component", type: i5.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { kind: "component", type: i5.λ8, selector: "sky-repeater-item-content" }, { kind: "component", type: i5.λ12, selector: "sky-repeater-item-title" }, { kind: "component", type: i6.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }, { kind: "component", type: i7.SkyDataManagerComponent, selector: "sky-data-manager" }, { kind: "component", type: i8.SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { kind: "component", type: i9.SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId"] }, { kind: "pipe", type: i10.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
158
158
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDataManagerColumnPickerComponent, decorators: [{
|
159
159
|
type: Component,
|
160
160
|
args: [{ selector: 'sky-data-manager-column-picker', providers: [SkyDataManagerService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"] }]
|
@@ -959,7 +959,7 @@ _SkyDataManagerColumnPickerComponent_ngUnsubscribe = new WeakMap(), _SkyDataMana
|
|
959
959
|
return formattedColumnOptions;
|
960
960
|
};
|
961
961
|
SkyDataManagerColumnPickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDataManagerColumnPickerComponent, deps: [{ token: SkyDataManagerColumnPickerContext }, { token: SkyDataManagerService }, { token: i3.SkyModalInstance }], target: i0.ɵɵFactoryTarget.Component });
|
962
|
-
SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody", "ariaDescribedBy", "ariaLabelledBy"] }, { kind: "component", type: i3.λ2, selector: "sky-modal-content" }, { kind: "component", type: i3.λ3, selector: "sky-modal-footer" }, { kind: "component", type: i3.λ4, selector: "sky-modal-header" }, { kind: "component", type: i5$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { kind: "component", type: i5$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { kind: "component", type: i5$1.λ8, selector: "sky-repeater-item-content" }, { kind: "component", type: i5$1.λ12, selector: "sky-repeater-item-title" }, { kind: "component", type: i8.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }, { kind: "component", type: SkyDataManagerComponent, selector: "sky-data-manager" }, { kind: "component", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { kind: "component", type: SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId"] }, { kind: "pipe", type: i11.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
962
|
+
SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.λ5, selector: "sky-modal", inputs: ["formErrors", "ariaRole", "tiledBody", "ariaDescribedBy", "ariaLabelledBy"] }, { kind: "component", type: i3.λ2, selector: "sky-modal-content" }, { kind: "component", type: i3.λ3, selector: "sky-modal-footer" }, { kind: "component", type: i3.λ4, selector: "sky-modal-header" }, { kind: "component", type: i5$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { kind: "component", type: i5$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { kind: "component", type: i5$1.λ8, selector: "sky-repeater-item-content" }, { kind: "component", type: i5$1.λ12, selector: "sky-repeater-item-title" }, { kind: "component", type: i8.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }, { kind: "component", type: SkyDataManagerComponent, selector: "sky-data-manager" }, { kind: "component", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { kind: "component", type: SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId"] }, { kind: "pipe", type: i11.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
963
963
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDataManagerColumnPickerComponent, decorators: [{
|
964
964
|
type: Component,
|
965
965
|
args: [{ selector: 'sky-data-manager-column-picker', providers: [SkyDataManagerService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"] }]
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"skyux-data-manager.mjs","sources":["../../../../../libs/components/data-manager/src/lib/modules/shared/sky-data-manager-resources.module.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-view-state.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-state.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-state-change.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-column-picker-sort-strategy.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker-context.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-filter-context.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-view.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-view.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker-impl.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-left-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-left-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-primary-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-primary-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-right-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-right-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-section.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-section.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.module.ts","../../../../../libs/components/data-manager/src/skyux-data-manager.ts"],"sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-data-manager' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_data_manager_column_picker_title: {\n message: 'Choose columns to show in the list',\n },\n skyux_data_manager_apply_changes_button_title: { message: 'Apply changes' },\n skyux_data_manager_cancel_button_title: { message: 'Cancel' },\n skyux_data_manager_select_all_button_title: { message: 'Select all' },\n skyux_data_manager_clear_all_button_title: { message: 'Clear all' },\n skyux_data_manager_show_selected_option_title: {\n message: 'Show only selected items',\n },\n skyux_data_manager_columns_button_title: { message: 'Columns' },\n skyux_data_manager_select_column_status_indicator_title: {\n message: 'Select at least one column.',\n },\n },\n};\n\nexport class SkyDataManagerResourcesProvider\n implements SkyLibResourcesProvider\n{\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyDataManagerResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyDataManagerResourcesModule {}\n","import { SkyDataViewStateOptions } from './data-view-state-options';\n\n/**\n * Provides options for defining how data is displayed, such as which columns appear.\n */\nexport class SkyDataViewState {\n /**\n * The IDs of the columns able to be displayed for column-based views. This property is required when utilizing a grid-based view, a column picker, or both.\n */\n public columnIds: string[] = [];\n /**\n * The IDs of the columns displayed for column-based views.\n */\n public displayedColumnIds: string[] = [];\n /**\n * The ID of this view.\n */\n public viewId: string;\n /**\n * An untyped property that tracks any view-specific state information\n * that is relevant to a data manager but that existing properties do not cover.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public additionalData: any;\n\n constructor(data: SkyDataViewStateOptions) {\n this.viewId = data.viewId;\n this.columnIds = data.columnIds || [];\n this.displayedColumnIds = data.displayedColumnIds || [];\n this.additionalData = data.additionalData;\n }\n\n /**\n * Returns the `SkyDataViewStateOptions` for the current view.\n * @returns The `SkyDataViewStateOptions`.\n */\n public getViewStateOptions(): SkyDataViewStateOptions {\n return {\n viewId: this.viewId,\n columnIds: this.columnIds,\n displayedColumnIds: this.displayedColumnIds,\n additionalData: this.additionalData,\n };\n }\n}\n","import { SkyDataManagerFilterData } from './data-manager-filter-data';\nimport { SkyDataManagerSortOption } from './data-manager-sort-option';\nimport { SkyDataManagerStateOptions } from './data-manager-state-options';\nimport { SkyDataViewState } from './data-view-state';\nimport { SkyDataViewStateOptions } from './data-view-state-options';\n\n/**\n * Provides options that control which data to display.\n */\nexport class SkyDataManagerState {\n /**\n * The selected SkyDataManagerSortOption to apply.\n */\n public activeSortOption: SkyDataManagerSortOption | undefined;\n /**\n * An untyped property that tracks any state information that's relevant to a data\n * manager but that the existing properties do not cover.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public additionalData: any;\n /**\n * The state of the filters.\n */\n public filterData: SkyDataManagerFilterData | undefined;\n /**\n * Whether to display only the selected rows or objects. The multiselect toolbar\n * uses this property.\n */\n public onlyShowSelected: boolean | undefined;\n /**\n * The search text to apply.\n */\n public searchText: string | undefined;\n /**\n * The currently selected rows or objects.\n */\n public selectedIds: string[] | undefined;\n /**\n * The states of the individual views.\n */\n public views: SkyDataViewState[] = [];\n\n constructor(data: SkyDataManagerStateOptions) {\n const views =\n data.views && data.views.map((view) => new SkyDataViewState(view));\n\n this.activeSortOption = data.activeSortOption;\n this.additionalData = data.additionalData;\n this.filterData = data.filterData;\n this.onlyShowSelected = data.onlyShowSelected;\n this.selectedIds = data.selectedIds;\n this.searchText = data.searchText;\n this.views = views || [];\n }\n\n /**\n * Returns the `SkyDataManagerStateOptions` for the data manager.\n * @returns The `SkyDataManagerStateOptions` for the data manager.\n */\n public getStateOptions(): SkyDataManagerStateOptions {\n const viewStates: SkyDataViewStateOptions[] = this.views.map((view) => {\n return view.getViewStateOptions();\n });\n\n return {\n activeSortOption: this.activeSortOption,\n additionalData: this.additionalData,\n filterData: this.filterData,\n onlyShowSelected: this.onlyShowSelected,\n searchText: this.searchText,\n selectedIds: this.selectedIds,\n views: viewStates,\n };\n }\n\n /**\n * Returns the `SkyDataViewState` for the specified view.\n * @param viewId The ID for the view.\n * @returns The `SkyDataViewState` for the specified view.\n */\n public getViewStateById(viewId: string): SkyDataViewState | undefined {\n return this.views.find((view) => view.viewId === viewId);\n }\n\n /**\n * Adds a `SkyDataViewState` to a view or updates an existing view.\n * @param viewId The ID for the view.\n * @param view The `SkyDataViewState` option to add or update.\n * @returns The state of the data manager for the specified view.\n */\n public addOrUpdateView(\n viewId: string,\n view: SkyDataViewState\n ): SkyDataManagerState {\n const existingViewIndex = this.views.findIndex((v) => v.viewId === viewId);\n\n if (existingViewIndex !== -1) {\n this.views[existingViewIndex] = view;\n } else {\n this.views.push(view);\n }\n\n return new SkyDataManagerState({\n activeSortOption: this.activeSortOption,\n additionalData: this.additionalData,\n filterData: this.filterData,\n searchText: this.searchText,\n selectedIds: this.selectedIds,\n views: this.views,\n });\n }\n}\n","import { SkyDataManagerState } from './data-manager-state';\n\n/**\n * @internal\n */\nexport class SkyDataManagerStateChange {\n public dataState: SkyDataManagerState;\n public source: string;\n\n constructor(dataState: SkyDataManagerState, source: string) {\n this.dataState = new SkyDataManagerState(dataState.getStateOptions());\n this.source = source;\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { SkyUIConfigService } from '@skyux/core';\n\nimport { BehaviorSubject, Observable, ReplaySubject, Subject } from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\nimport { SkyDataManagerConfig } from './models/data-manager-config';\nimport { SkyDataManagerInitArgs } from './models/data-manager-init-args';\nimport { SkyDataManagerState } from './models/data-manager-state';\nimport { SkyDataManagerStateChange } from './models/data-manager-state-change';\nimport { SkyDataManagerStateOptions } from './models/data-manager-state-options';\nimport { SkyDataManagerStateUpdateFilterArgs } from './models/data-manager-state-update-filter-args';\nimport { SkyDataViewConfig } from './models/data-view-config';\nimport { SkyDataViewState } from './models/data-view-state';\n\n/**\n * The data manager service provides ways for data views, toolbar items, and more to stay up to date\n * with the active view ID, data manager config, registered views and their configs, and data state.\n * There are methods to get current values, update values, and get subscriptions to the changing values.<br/> <br/>\n * Provide this service at the component level for each instance of a data manager. Do not\n * provide it at the module level or in `app-extras`. This allows multiple data\n * managers to be used and self-contained.\n */\n@Injectable()\nexport class SkyDataManagerService implements OnDestroy {\n public viewkeeperClasses = new BehaviorSubject<Record<string, string[]>>({});\n\n readonly #activeViewId = new ReplaySubject<string>(1);\n readonly #dataManagerConfig = new BehaviorSubject<SkyDataManagerConfig>({});\n readonly #views = new BehaviorSubject<SkyDataViewConfig[]>([]);\n readonly #dataStateChange = new ReplaySubject<SkyDataManagerStateChange>(1);\n\n #isInitialized: boolean | undefined;\n #ngUnsubscribe = new Subject<void>();\n #initSource = 'dataManagerServiceInit';\n #uiConfigService: SkyUIConfigService;\n\n constructor(uiConfigService: SkyUIConfigService) {\n this.#uiConfigService = uiConfigService;\n }\n\n public ngOnDestroy(): void {\n this.#activeViewId.complete();\n this.#dataManagerConfig.complete();\n this.#views.complete();\n this.#dataStateChange.complete();\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n /**\n * Initializes the data manager with the given settings and sets `isInitialized` to `true`.\n * This must be called for the data manager to render.\n * @param args The initial active view ID, data manager config, and state to use for the data manager.\n * If a settings key is provided, it checks for a saved data state in the SKY UI config service before using the default data state\n * and saves any state changes to the service.\n */\n public initDataManager(args: SkyDataManagerInitArgs): void {\n if (this.#isInitialized) {\n console.warn('This data manager instance has already been initialized.');\n return;\n }\n\n this.#isInitialized = true;\n\n const defaultDataState = args.defaultDataState;\n const settingsKey = args.settingsKey;\n\n this.updateActiveViewId(args.activeViewId);\n this.updateDataManagerConfig(args.dataManagerConfig);\n\n if (settingsKey) {\n this.#uiConfigService\n .getConfig(settingsKey, defaultDataState.getStateOptions())\n .pipe(take(1))\n .subscribe((config: SkyDataManagerStateOptions) => {\n this.updateDataState(\n new SkyDataManagerState(config),\n this.#initSource\n );\n });\n } else {\n this.updateDataState(defaultDataState, this.#initSource);\n }\n\n if (settingsKey) {\n this.getDataStateUpdates(this.#initSource)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state: SkyDataManagerState) => {\n this.#uiConfigService\n .setConfig(settingsKey, state.getStateOptions())\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {},\n (err) => {\n console.warn('Could not save data manager settings.');\n console.warn(err);\n }\n );\n });\n }\n }\n\n /**\n * Initializes a view within the data manager. This must be called for each view for the views to appear within the data manager.\n * @param viewConfig The SkyDataViewConfig settings for the view being registered.\n */\n public initDataView(viewConfig: SkyDataViewConfig): void {\n const currentViews = this.#views.value;\n\n if (this.getViewById(viewConfig.id)) {\n console.warn(\n `A data manager view with the id ${viewConfig.id} has already been initialized.`\n );\n return;\n }\n\n currentViews.push(viewConfig);\n this.#views.next(currentViews);\n\n // When the initial activeViewId is set there are no views registered. We have to re-emit\n // the activeId so the newly registered view is notified that it is active.\n this.#activeViewId.pipe(take(1)).subscribe((id) => {\n this.#activeViewId.next(id);\n });\n\n this.#dataStateChange\n .pipe(take(1))\n .subscribe((change) => {\n const dataState = change.dataState;\n const currentViewState = dataState.getViewStateById(viewConfig.id);\n\n if (!currentViewState) {\n const newViewState = new SkyDataViewState({ viewId: viewConfig.id });\n\n // Ensure that the view state's available columns match with the view config. Also,\n // add columns to the `displayedColumnIds` as long as they are not `initialHide`\n if (viewConfig.columnOptions) {\n const columnIds = viewConfig.columnOptions.map((columnOptions) => {\n return columnOptions.id;\n });\n const displayedColumnIds = viewConfig.columnOptions\n .filter((columnOption) => {\n return !columnOption.initialHide;\n })\n .map((columnOption) => {\n return columnOption.id;\n });\n\n newViewState.columnIds = columnIds;\n newViewState.displayedColumnIds = displayedColumnIds;\n }\n const newDataState = dataState.addOrUpdateView(\n viewConfig.id,\n newViewState\n );\n\n this.updateDataState(newDataState, this.#initSource);\n } else {\n const currentAvailableColumnIds =\n viewConfig.columnOptions?.map((columnOptions) => {\n return columnOptions.id;\n }) || [];\n\n // Ensure that the view state's available columns match with the view config. Also,\n // add new columns to the `displayedColumnIds` as long as they are not `initialHide`.\n // We only add columns to `displayedColumnsIds` if we had previously tracked\n // `columnIds` to avoid breaking changes.\n if (currentViewState.columnIds.length > 0) {\n let newColumnIds = currentAvailableColumnIds?.filter(\n (id) => currentViewState.columnIds.indexOf(id) < 0\n );\n newColumnIds = newColumnIds?.filter((columnId) => {\n return viewConfig.columnOptions?.find(\n (columnOption) =>\n columnOption.id === columnId && !columnOption.initialHide\n );\n });\n\n // Add the column IDs that now exist to the data manager state both as available\n // and as shown.\n currentViewState.displayedColumnIds =\n currentViewState.displayedColumnIds.concat(newColumnIds);\n }\n // Add the column IDs that now exist to the data manager state both as available\n // and as shown.\n currentViewState.columnIds = currentAvailableColumnIds;\n\n const newDataState = dataState.addOrUpdateView(\n viewConfig.id,\n currentViewState\n );\n\n this.updateDataState(newDataState, this.#initSource);\n }\n })\n .unsubscribe();\n }\n\n /**\n * Returns an observable of data state changes that views and other data manager entities can subscribe to.\n * It excludes updates originating from the provided source. This allows subscribers to only respond to\n * changes they did not create and helps prevent infinite loops of updates and responses.\n * @param sourceId The ID of the entity subscribing to data state updates. This can be any value you choose\n * but should be unique within the data manager instance and should also be used when that entity updates the state.\n */\n public getDataStateUpdates(\n sourceId: string,\n updateFilter?: SkyDataManagerStateUpdateFilterArgs\n ): Observable<SkyDataManagerState> {\n // filter out events from the provided source and emit just the dataState\n if (updateFilter) {\n return this.#dataStateChange.pipe(\n filter((stateChange) => sourceId !== stateChange.source),\n map((stateChange) => stateChange.dataState),\n updateFilter.comparator\n ? distinctUntilChanged(updateFilter.comparator)\n : distinctUntilChanged(\n this.#getDefaultStateComparator(\n updateFilter.properties as (keyof SkyDataManagerStateOptions)[]\n )\n )\n );\n } else {\n return this.#dataStateChange.pipe(\n filter((stateChange) => sourceId !== stateChange.source),\n map((stateChange) => stateChange.dataState)\n );\n }\n }\n\n /**\n * Updates the data state and emits a new value to entities subscribed to data state changes.\n * @param state The new `SkyDataManagerState` value.\n * @param sourceId The ID of the entity updating the state. This can be any value you choose,\n * but should be unique within the data manager instance and should also be used when that entity\n * subscribes to state changes from `getDataStateUpdates`.\n */\n public updateDataState(state: SkyDataManagerState, sourceId: string): void {\n const newState = new SkyDataManagerState(state.getStateOptions());\n const newStateChange = new SkyDataManagerStateChange(newState, sourceId);\n\n this.#dataStateChange.next(newStateChange);\n }\n\n /**\n * Returns the current `SkyDataManagerConfig`.\n */\n public getCurrentDataManagerConfig(): SkyDataManagerConfig {\n return this.#dataManagerConfig.value;\n }\n\n /**\n * Returns an observable of data manager config changes that views and other data manager entities can subscribe to.\n */\n public getDataManagerConfigUpdates(): Observable<SkyDataManagerConfig> {\n return this.#dataManagerConfig;\n }\n\n /**\n * Updates the data manager config and emits a new value to entities subscribed to data config changes.\n * @param value The new `SkyDataManagerConfig` value.\n */\n public updateDataManagerConfig(value: SkyDataManagerConfig): void {\n this.#dataManagerConfig.next(value);\n }\n\n /**\n * Returns an observable of data view config changes that views and other data manager entities can subscribe to.\n */\n public getDataViewsUpdates(): Observable<SkyDataViewConfig[]> {\n return this.#views;\n }\n\n /**\n * Returns an observable of the active view ID that views and other data manager entities can subscribe to.\n */\n public getActiveViewIdUpdates(): Observable<string> {\n return this.#activeViewId;\n }\n\n /**\n * Updates the active view ID. The data manager changes the displayed view.\n * @param id The new active view ID.\n */\n public updateActiveViewId(id: string): void {\n this.#activeViewId.next(id);\n }\n\n /**\n * Returns the `SkyDataViewConfig` for the given view ID.\n * @param viewId The ID of the view config to get.\n */\n public getViewById(viewId: string): SkyDataViewConfig | undefined {\n const currentViews: SkyDataViewConfig[] = this.#views.value;\n const viewConfig: SkyDataViewConfig | undefined = currentViews.find(\n (view) => view.id === viewId\n );\n\n return viewConfig;\n }\n\n /**\n * Updates the given view config. The registered view with the same ID is updated to the\n * provided config, so include all properties regardless of whether they changed. If the\n * view was not initialized already, no update happens.\n * @param view The new `SkyDataViewConfig` containing all properties.\n */\n public updateViewConfig(view: SkyDataViewConfig): void {\n const currentViews: SkyDataViewConfig[] = this.#views.value;\n const existingViewIndex = currentViews.findIndex(\n (currentView) => currentView.id === view.id\n );\n\n if (existingViewIndex === -1) {\n console.error('A view with the id {id} does not exist.', view.id);\n } else {\n currentViews[existingViewIndex] = view;\n this.#views.next(currentViews);\n }\n }\n\n /**\n * @internal\n */\n public setViewkeeperClasses(viewId: string, classes: string[]): void {\n const viewkeeperClasses = this.viewkeeperClasses.value;\n viewkeeperClasses[viewId] = classes;\n\n this.viewkeeperClasses.next(viewkeeperClasses);\n }\n\n #filterDataStateProperties(\n state: SkyDataManagerState,\n properties: (keyof SkyDataManagerStateOptions)[] | undefined\n ): Record<string, unknown> {\n const stateProperties = state.getStateOptions();\n const filteredStateProperties: Record<string, unknown> = {};\n\n if (properties) {\n for (const property of properties) {\n if (property in stateProperties) {\n filteredStateProperties[property] = stateProperties[property];\n }\n }\n }\n\n return filteredStateProperties;\n }\n\n #getDefaultStateComparator(\n properties: (keyof SkyDataManagerStateOptions)[] | undefined\n ): (state1: SkyDataManagerState, state2: SkyDataManagerState) => boolean {\n return (\n state1: SkyDataManagerState,\n state2: SkyDataManagerState\n ): boolean => {\n const filteredState1 = this.#filterDataStateProperties(\n state1,\n properties\n );\n const filteredState2 = this.#filterDataStateProperties(\n state2,\n properties\n );\n return JSON.stringify(filteredState1) === JSON.stringify(filteredState2);\n };\n }\n}\n","/**\n * These options specify the sorting strategy applied to columns when `columnPickerEnabled` is enabled.\n */\nexport enum SkyDataManagerColumnPickerSortStrategy {\n /**\n * No sorting is applied to the columns.\n */\n None = 'none',\n /**\n * If `sortEnabled` is set to `true`, then the selected columns are displayed before the unselected columns. Unselected columns are sorted alphabetically.\n * If `sortEnabled` is set to `false`, then the columns are displayed in the order specified by `columnOptions`.\n */\n SelectedThenAlphabetical = 'selectedThenAlphabetical',\n}\n","import { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerColumnPickerSortStrategy } from '../models/data-manager-column-picker-sort-strategy';\n\nexport class SkyDataManagerColumnPickerContext {\n constructor(\n public columnOptions: SkyDataManagerColumnPickerOption[],\n public displayedColumnIds: string[],\n public columnPickerSortStrategy: SkyDataManagerColumnPickerSortStrategy = SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {}\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyBackToTopMessage, SkyBackToTopMessageType } from '@skyux/layout';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from './data-manager.service';\n\nconst VIEWKEEPER_CLASSES_DEFAULT = ['.sky-data-manager-toolbar'];\n\n/**\n * The top-level data manager component. Provide `SkyDataManagerService` at this level.\n */\n@Component({\n selector: 'sky-data-manager',\n templateUrl: './data-manager.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerComponent implements OnDestroy, OnInit {\n public get currentViewkeeperClasses(): string[] {\n return this.#_currentViewkeeperClasses;\n }\n\n public set currentViewkeeperClasses(value: string[] | undefined) {\n this.#_currentViewkeeperClasses = [\n ...VIEWKEEPER_CLASSES_DEFAULT,\n ...(value || []),\n ];\n this.#changeDetection.markForCheck();\n }\n\n public get isInitialized(): boolean {\n return this.#_isInitialized;\n }\n\n public set isInitialized(value: boolean) {\n this.#_isInitialized = value;\n this.#changeDetection.markForCheck();\n }\n\n public backToTopController = new Subject<SkyBackToTopMessage>();\n\n public backToTopOptions = {\n buttonHidden: true,\n };\n\n #activeViewId: string | undefined;\n #allViewkeeperClasses: Record<string, string[]> = {};\n #ngUnsubscribe = new Subject<void>();\n #sourceId = 'dataManagerComponent';\n #changeDetection: ChangeDetectorRef;\n #dataManagerService: SkyDataManagerService;\n\n #_isInitialized = false;\n #_currentViewkeeperClasses = VIEWKEEPER_CLASSES_DEFAULT;\n\n constructor(\n changeDetection: ChangeDetectorRef,\n dataManagerService: SkyDataManagerService\n ) {\n this.#changeDetection = changeDetection;\n this.#dataManagerService = dataManagerService;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getDataStateUpdates(this.#sourceId)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => (this.isInitialized = true));\n\n this.#dataManagerService.viewkeeperClasses\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((classes) => {\n this.#allViewkeeperClasses = classes;\n this.currentViewkeeperClasses = this.#activeViewId\n ? classes[this.#activeViewId]\n : undefined;\n });\n\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.#activeViewId = activeViewId;\n this.backToTopController.next({\n type: SkyBackToTopMessageType.BackToTop,\n });\n this.currentViewkeeperClasses =\n this.#allViewkeeperClasses[this.#activeViewId];\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<div\n *ngIf=\"isInitialized\"\n class=\"sky-data-manager\"\n [skyBackToTop]=\"backToTopOptions\"\n [skyBackToTopMessageStream]=\"backToTopController\"\n [skyViewkeeper]=\"currentViewkeeperClasses\"\n #dataManager\n>\n <ng-content></ng-content>\n</div>\n","import { SkyDataManagerFilterData } from './models/data-manager-filter-data';\n\n// TODO: In a future breaking change convert this to an interface\n/**\n * Sets the state of the filters.\n */\nexport class SkyDataManagerFilterModalContext {\n /**\n * Sets the state of the filters.\n */\n public filterData: SkyDataManagerFilterData | undefined;\n}\n","import { Injectable } from '@angular/core';\n\nimport type { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker.component';\n\n/**\n * Service that provides the column picker component type so it can be dynamically\n * created in the toolbar component. This avoids a circular reference between column\n * picker and toolbar.\n * https://angular.io/errors/NG3003\n */\n@Injectable()\nexport abstract class SkyDataManagerColumnPickerService {\n public abstract getComponentType(): typeof SkyDataManagerColumnPickerComponent;\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyCheckboxChange } from '@skyux/forms';\nimport {\n SkyModalCloseArgs,\n SkyModalConfigurationInterface,\n SkyModalService,\n} from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerColumnPickerContext } from '../data-manager-column-picker/data-manager-column-picker-context';\nimport { SkyDataManagerColumnPickerService } from '../data-manager-column-picker/data-manager-column-picker.service';\nimport { SkyDataManagerFilterModalContext } from '../data-manager-filter-context';\nimport { SkyDataManagerService } from '../data-manager.service';\nimport { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerConfig } from '../models/data-manager-config';\nimport { SkyDataManagerSortOption } from '../models/data-manager-sort-option';\nimport { SkyDataManagerState } from '../models/data-manager-state';\nimport { SkyDataViewConfig } from '../models/data-view-config';\n\n/**\n * Renders a `sky-toolbar` with the contents specified by the active view's `SkyDataViewConfig`\n * and the `SkyDataManagerToolbarLeftItemsComponent`, `SkyDataManagerToolbarRightItemsComponent`,\n * and `SkyDataManagerToolbarSectionComponent` wrappers.\n */\n@Component({\n selector: 'sky-data-manager-toolbar',\n templateUrl: './data-manager-toolbar.component.html',\n styleUrls: ['./data-manager-toolbar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerToolbarComponent implements OnDestroy, OnInit {\n public get activeView(): SkyDataViewConfig | undefined {\n return this.#_activeView;\n }\n\n public set activeView(value: SkyDataViewConfig | undefined) {\n this.#_activeView = value;\n this.#changeDetector.markForCheck();\n }\n\n public get dataManagerConfig(): SkyDataManagerConfig | undefined {\n return this.#_dataManagerConfig;\n }\n\n public set dataManagerConfig(value: SkyDataManagerConfig | undefined) {\n this.#_dataManagerConfig = value;\n this.#changeDetector.markForCheck();\n }\n\n public get dataState(): SkyDataManagerState | undefined {\n return this.#_dataState;\n }\n\n public set dataState(value: SkyDataManagerState | undefined) {\n this.#_dataState = value;\n if (value) {\n this.#dataManagerService.updateDataState(value, this.#_source);\n }\n }\n\n public get views(): SkyDataViewConfig[] {\n return this.#_views;\n }\n\n public set views(value: SkyDataViewConfig[]) {\n this.#_views = value;\n this.#changeDetector.markForCheck();\n }\n\n public onlyShowSelected: boolean | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n #changeDetector: ChangeDetectorRef;\n #dataManagerService: SkyDataManagerService;\n #modalService: SkyModalService;\n #columnPickerService: SkyDataManagerColumnPickerService;\n\n // the source to provide for data state changes\n #_source = 'toolbar';\n #_activeView: SkyDataViewConfig | undefined;\n #_dataManagerConfig: SkyDataManagerConfig | undefined;\n #_dataState: SkyDataManagerState | undefined;\n #_views: SkyDataViewConfig[] = [];\n\n constructor(\n changeDetector: ChangeDetectorRef,\n dataManagerService: SkyDataManagerService,\n modalService: SkyModalService,\n columnPickerService: SkyDataManagerColumnPickerService\n ) {\n this.#changeDetector = changeDetector;\n this.#dataManagerService = dataManagerService;\n this.#modalService = modalService;\n this.#columnPickerService = columnPickerService;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n /* istanbul ignore else */\n if (activeViewId) {\n this.activeView = this.#dataManagerService.getViewById(activeViewId);\n this.#changeDetector.markForCheck();\n }\n });\n\n this.#dataManagerService\n .getDataViewsUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((views) => {\n this.views = views;\n if (this.activeView) {\n this.activeView = this.#dataManagerService.getViewById(\n this.activeView.id\n );\n }\n this.#changeDetector.markForCheck();\n });\n\n this.#dataManagerService\n .getDataStateUpdates(this.#_source)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((dataState) => {\n this.#_dataState = dataState;\n this.onlyShowSelected = dataState.onlyShowSelected;\n this.#changeDetector.markForCheck();\n });\n\n this.#dataManagerService\n .getDataManagerConfigUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((config) => {\n this.dataManagerConfig = config;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public sortSelected(sortOption: SkyDataManagerSortOption): void {\n if (this.dataState) {\n this.dataState.activeSortOption = sortOption;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n\n public onViewChange(viewId: string): void {\n this.#dataManagerService.updateActiveViewId(viewId);\n }\n\n public searchApplied(text: string): void {\n if (this.dataState) {\n this.dataState.searchText = text;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n\n public filterButtonClicked(): void {\n const context = new SkyDataManagerFilterModalContext();\n const filterModal =\n this.dataManagerConfig && this.dataManagerConfig.filterModalComponent;\n\n context.filterData = this.dataState?.filterData;\n\n const options: SkyModalConfigurationInterface = {\n providers: [\n { provide: SkyDataManagerFilterModalContext, useValue: context },\n ],\n size: 'large',\n };\n\n if (filterModal) {\n const modalInstance = this.#modalService.open(filterModal, options);\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (this.dataState && result.reason === 'save') {\n this.dataState.filterData = result.data;\n this.#dataManagerService.updateDataState(\n this.dataState,\n this.#_source\n );\n }\n });\n }\n }\n\n public openColumnPicker(): void {\n if (this.dataState && this.activeView && this.activeView.columnOptions) {\n const viewState = this.dataState.getViewStateById(this.activeView.id);\n if (viewState) {\n const context = new SkyDataManagerColumnPickerContext(\n this.activeView.columnOptions,\n viewState.displayedColumnIds\n );\n\n if (this.activeView.columnPickerSortStrategy) {\n context.columnPickerSortStrategy =\n this.activeView.columnPickerSortStrategy;\n }\n\n const options: SkyModalConfigurationInterface = {\n providers: [\n { provide: SkyDataManagerColumnPickerContext, useValue: context },\n ],\n };\n\n const modalInstance = this.#modalService.open(\n this.#columnPickerService.getComponentType(),\n options\n );\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (result.reason === 'save') {\n const displayedColumnIds = result.data.map(\n (col: SkyDataManagerColumnPickerOption) => col.id\n );\n\n viewState.displayedColumnIds = displayedColumnIds;\n if (this.dataState && this.activeView) {\n this.dataState = this.dataState.addOrUpdateView(\n this.activeView.id,\n viewState\n );\n }\n }\n });\n }\n }\n }\n\n public selectAll(): void {\n /* istanbul ignore else */\n if (this.activeView?.onSelectAllClick) {\n this.activeView.onSelectAllClick();\n }\n }\n\n public clearAll(): void {\n /* istanbul ignore else */\n if (this.activeView?.onClearAllClick) {\n this.activeView.onClearAllClick();\n }\n }\n\n public onOnlyShowSelected(event: SkyCheckboxChange): void {\n if (this.dataState) {\n this.dataState.onlyShowSelected = !!event.checked;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n}\n","<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"!!(dataState?.activeSortOption?.id === item.id)\"\n (itemSelect)=\"sortSelected(item)\"\n >\n {{ item.label }}\n </sky-sort-item>\n </sky-sort>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.columnPickerEnabled\">\n <button\n class=\"sky-btn sky-btn-default sky-col-picker-btn\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n [attr.title]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n (click)=\"openColumnPicker()\"\n >\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_data_manager_columns_button_title' | skyLibResources }}\n </span>\n </button>\n </sky-toolbar-item>\n\n <ng-content select=\"sky-data-manager-toolbar-left-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.searchEnabled\">\n <sky-search\n [expandMode]=\"activeView?.searchExpandMode\"\n [placeholderText]=\"activeView?.searchPlaceholderText\"\n [searchText]=\"dataState?.searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n\n <sky-toolbar-view-actions>\n <ng-content select=\"sky-data-manager-toolbar-right-item\"></ng-content>\n <sky-radio-group\n *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n [(ngModel)]=\"activeView.id\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio\n *ngFor=\"let view of views\"\n [attr.aria-label]=\"view.name\"\n [icon]=\"view.icon\"\n [value]=\"view.id\"\n [label]=\"view.name\"\n (change)=\"onViewChange(view.id)\"\n >\n </sky-radio>\n </sky-radio-group>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-section\"></ng-content>\n </sky-toolbar>\n\n <sky-toolbar\n *ngIf=\"activeView?.multiselectToolbarEnabled\"\n class=\"sky-data-manager-multiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{ 'skyux_data_manager_select_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{ 'skyux_data_manager_clear_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [checked]=\"onlyShowSelected\"\n (change)=\"onOnlyShowSelected($event)\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_data_manager_show_selected_option_title' | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from './data-manager.service';\n\n/**\n * A data view is rendered within a data manager component.\n * It can subscribe to data state changes from `SkyDataManagerService` and apply the filters,\n * search text, and more to the data it displays.\n */\n@Component({\n selector: 'sky-data-view',\n templateUrl: './data-view.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataViewComponent implements OnDestroy, OnInit {\n /**\n * The configuration for the view. See the `SkyDataViewConfig` interface.\n * @required\n */\n @Input()\n public viewId: string | undefined;\n\n public get isActive(): boolean {\n return this.#_isActive;\n }\n\n public set isActive(value: boolean) {\n this.#_isActive = value;\n this.#changeDetector.markForCheck();\n }\n\n #_isActive = false;\n\n #ngUnsubscribe = new Subject<void>();\n #dataManagerService: SkyDataManagerService;\n #changeDetector: ChangeDetectorRef;\n\n constructor(\n dataManagerService: SkyDataManagerService,\n changeDetector: ChangeDetectorRef\n ) {\n this.#dataManagerService = dataManagerService;\n this.#changeDetector = changeDetector;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.isActive = this.viewId === activeViewId;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<ng-container *ngIf=\"isActive\">\n <ng-content></ng-content>\n</ng-container>\n","import {\n ChangeDetectionStrategy,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyModalInstance } from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from '../data-manager.service';\nimport { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerColumnPickerSortStrategy } from '../models/data-manager-column-picker-sort-strategy';\nimport { SkyDataManagerState } from '../models/data-manager-state';\nimport { SkyDataViewConfig } from '../models/data-view-config';\n\nimport { SkyDataManagerColumnPickerContext } from './data-manager-column-picker-context';\n\n/**\n * @internal\n */\ninterface Column extends SkyDataManagerColumnPickerOption {\n isSelected: boolean;\n}\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-data-manager-column-picker',\n templateUrl: './data-manager-column-picker.component.html',\n styleUrls: ['./data-manager-column-picker.component.scss'],\n providers: [SkyDataManagerService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerColumnPickerComponent implements OnDestroy, OnInit {\n public get dataState(): SkyDataManagerState {\n return this.#_dataState;\n }\n\n public set dataState(value: SkyDataManagerState) {\n this.#_dataState = value;\n this.updateData();\n }\n\n public columnData: Column[] = [];\n public displayedColumnData: Column[] = [];\n public viewConfig: SkyDataViewConfig = {\n id: 'columnPicker',\n name: 'Column Picker',\n searchEnabled: true,\n searchExpandMode: 'fit',\n multiselectToolbarEnabled: true,\n onSelectAllClick: this.selectAll.bind(this),\n onClearAllClick: this.clearAll.bind(this),\n };\n\n public isAnyDisplayedColumnSelected = false;\n\n #ngUnsubscribe = new Subject<void>();\n\n #_dataState = new SkyDataManagerState({});\n\n constructor(\n public context: SkyDataManagerColumnPickerContext,\n public dataManagerService: SkyDataManagerService,\n public instance: SkyModalInstance\n ) {}\n\n public ngOnInit(): void {\n this.dataManagerService.initDataManager({\n activeViewId: this.viewConfig.id,\n dataManagerConfig: {},\n defaultDataState: this.dataState,\n });\n this.dataManagerService.initDataView(this.viewConfig);\n\n this.columnData = this.#formatColumnOptions();\n\n this.dataManagerService\n .getDataStateUpdates('columnPicker')\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state) => {\n this.dataState = state;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public updateData(): void {\n this.displayedColumnData = this.searchColumns(\n this.columnData.filter((col) => !col.alwaysDisplayed)\n );\n\n if (this.dataState.onlyShowSelected) {\n this.displayedColumnData = this.displayedColumnData.filter(\n (col) => col.isSelected\n );\n }\n\n this.isAnyDisplayedColumnSelected = this.displayedColumnData.some(\n (col) => col.isSelected\n );\n }\n\n public searchColumns(columns: Column[]): Column[] {\n let searchedColumns = columns;\n const searchText =\n this.dataState && this.dataState.searchText?.toUpperCase();\n\n if (searchText) {\n searchedColumns = columns.filter((item) => {\n for (const property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n (property === 'label' || property === 'description')\n ) {\n const propertyText = item[property]?.toUpperCase();\n if (propertyText && propertyText.indexOf(searchText) > -1) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n return searchedColumns;\n }\n\n public selectAll(): void {\n this.displayedColumnData.forEach((column) => (column.isSelected = true));\n this.updateData();\n }\n\n public clearAll(): void {\n this.displayedColumnData.forEach((column) => (column.isSelected = false));\n this.updateData();\n }\n\n public onIsSelectedChange(): void {\n this.updateData();\n }\n\n public cancelChanges(): void {\n this.instance.cancel();\n }\n\n public isSelected(id: string): boolean {\n return (\n this.context.displayedColumnIds.findIndex((colId) => colId === id) !== -1\n );\n }\n\n public applyChanges(): void {\n this.instance.save(\n this.columnData.filter((col) => col.isSelected || col.alwaysDisplayed)\n );\n }\n\n #formatColumnOptions(): Column[] {\n const allColumnOptions = this.context.columnOptions;\n const visibleColumnIds = this.context.displayedColumnIds;\n let formattedColumnOptions: Column[] = [];\n const unselectedColumnOptions: Column[] = [];\n\n for (const columnOption of allColumnOptions) {\n // format the column with the properties the column picker needs\n const colIndex = visibleColumnIds.indexOf(columnOption.id);\n const formattedColumn: Column = {\n alwaysDisplayed: columnOption.alwaysDisplayed,\n id: columnOption.id,\n label: columnOption.label,\n description: columnOption.description,\n isSelected: colIndex !== -1,\n };\n\n // if column picker sorting is currently enabled sort columns by order displayed then alphabetical\n // else display column in order they were specified in the columnOptions\n if (\n this.context.columnPickerSortStrategy ===\n SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {\n if (formattedColumn.isSelected) {\n formattedColumnOptions[colIndex] = formattedColumn;\n } else {\n unselectedColumnOptions.push(formattedColumn);\n }\n } else {\n formattedColumnOptions.push(formattedColumn);\n }\n }\n\n // if column picker sorting is enabled, sort the columns that are not currently displayed\n // and add them after the currently displayed options\n if (\n this.context.columnPickerSortStrategy ===\n SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {\n unselectedColumnOptions.sort((col1, col2) =>\n col1.label.localeCompare(col2.label)\n );\n formattedColumnOptions = formattedColumnOptions.concat(\n unselectedColumnOptions\n );\n }\n\n return formattedColumnOptions;\n }\n}\n","<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { Injectable } from '@angular/core';\n\nimport { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker.component';\n\n@Injectable()\nexport class SkyDataManagerColumnPickerImplService {\n public getComponentType(): typeof SkyDataManagerColumnPickerComponent {\n return SkyDataManagerColumnPickerComponent;\n }\n}\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered after the standard toolbar actions and before the search box. Each item should be\n * wrapped in its own `sky-data-manager-toolbar-left-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-left-item',\n templateUrl: './data-manager-toolbar-left-item.component.html',\n})\nexport class SkyDataManagerToolbarLeftItemComponent {}\n","<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered as the first items in the toolbar and should be standard actions. Each item should be\n * wrapped in its own `sky-data-manager-toolbar-primary-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-primary-item',\n templateUrl: './data-manager-toolbar-primary-item.component.html',\n})\nexport class SkyDataManagerToolbarPrimaryItemComponent {}\n","<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered in `sky-toolbar-view-actions` on the right side of the toolbar and before the view\n * switcher icons (if present). Each item should be wrapped in its own\n * `sky-data-manager-toolbar-right-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-right-item',\n templateUrl: './data-manager-toolbar-right-item.component.html',\n})\nexport class SkyDataManagerToolbarRightItemComponent {}\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for items to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered in an additional toolbar row beneath the primary toolbar and above the multiselect\n * toolbar (if present).\n */\n@Component({\n selector: 'sky-data-manager-toolbar-section',\n templateUrl: './data-manager-toolbar-section.component.html',\n})\nexport class SkyDataManagerToolbarSectionComponent {}\n","<sky-toolbar-section>\n <ng-content></ng-content>\n</sky-toolbar-section>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyViewkeeperModule } from '@skyux/core';\nimport { SkyCheckboxModule, SkyRadioModule } from '@skyux/forms';\nimport { SkyIconModule, SkyStatusIndicatorModule } from '@skyux/indicators';\nimport { SkyBackToTopModule, SkyToolbarModule } from '@skyux/layout';\nimport {\n SkyFilterModule,\n SkyRepeaterModule,\n SkySortModule,\n} from '@skyux/lists';\nimport { SkySearchModule } from '@skyux/lookup';\nimport { SkyModalModule } from '@skyux/modals';\n\nimport { SkyDataManagerResourcesModule } from '../shared/sky-data-manager-resources.module';\n\nimport { SkyDataManagerColumnPickerImplService } from './data-manager-column-picker/data-manager-column-picker-impl.service';\nimport { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker/data-manager-column-picker.component';\nimport { SkyDataManagerColumnPickerService } from './data-manager-column-picker/data-manager-column-picker.service';\nimport { SkyDataManagerToolbarLeftItemComponent } from './data-manager-toolbar/data-manager-toolbar-left-item.component';\nimport { SkyDataManagerToolbarPrimaryItemComponent } from './data-manager-toolbar/data-manager-toolbar-primary-item.component';\nimport { SkyDataManagerToolbarRightItemComponent } from './data-manager-toolbar/data-manager-toolbar-right-item.component';\nimport { SkyDataManagerToolbarSectionComponent } from './data-manager-toolbar/data-manager-toolbar-section.component';\nimport { SkyDataManagerToolbarComponent } from './data-manager-toolbar/data-manager-toolbar.component';\nimport { SkyDataManagerComponent } from './data-manager.component';\nimport { SkyDataViewComponent } from './data-view.component';\n\n@NgModule({\n declarations: [\n SkyDataManagerColumnPickerComponent,\n SkyDataManagerComponent,\n SkyDataManagerToolbarLeftItemComponent,\n SkyDataManagerToolbarPrimaryItemComponent,\n SkyDataManagerToolbarRightItemComponent,\n SkyDataManagerToolbarSectionComponent,\n SkyDataManagerToolbarComponent,\n SkyDataViewComponent,\n ],\n imports: [\n CommonModule,\n FormsModule,\n SkyBackToTopModule,\n SkyCheckboxModule,\n SkyDataManagerResourcesModule,\n SkyFilterModule,\n SkyIconModule,\n SkyModalModule,\n SkyRadioModule,\n SkyRepeaterModule,\n SkySearchModule,\n SkyStatusIndicatorModule,\n SkySortModule,\n SkyToolbarModule,\n SkyViewkeeperModule,\n ],\n exports: [\n SkyDataManagerColumnPickerComponent,\n SkyDataManagerComponent,\n SkyDataManagerToolbarLeftItemComponent,\n SkyDataManagerToolbarPrimaryItemComponent,\n SkyDataManagerToolbarRightItemComponent,\n SkyDataManagerToolbarSectionComponent,\n SkyDataManagerToolbarComponent,\n SkyDataViewComponent,\n ],\n providers: [\n {\n provide: SkyDataManagerColumnPickerService,\n useClass: SkyDataManagerColumnPickerImplService,\n },\n ],\n})\nexport class SkyDataManagerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyDataManagerService","i2","i3","i4","i3.SkyDataManagerColumnPickerService","i7","i1.SkyDataManagerColumnPickerContext","i2.SkyDataManagerService","i5","i6","i7.SkyDataManagerComponent","i8.SkyDataManagerToolbarComponent","i9.SkyDataViewComponent","i10","i1"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;AAKG;AAWH,MAAM,SAAS,GAA0C;AACvD,IAAA,OAAO,EAAE;AACP,QAAA,sCAAsC,EAAE;AACtC,YAAA,OAAO,EAAE,oCAAoC;AAC9C,SAAA;AACD,QAAA,6CAA6C,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;AAC3E,QAAA,sCAAsC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;AAC7D,QAAA,0CAA0C,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE;AACrE,QAAA,yCAAyC,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;AACnE,QAAA,6CAA6C,EAAE;AAC7C,YAAA,OAAO,EAAE,0BAA0B;AACpC,SAAA;AACD,QAAA,uCAAuC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE;AAC/D,QAAA,uDAAuD,EAAE;AACvD,YAAA,OAAO,EAAE,6BAA6B;AACvC,SAAA;AACF,KAAA;CACF,CAAC;MAEW,+BAA+B,CAAA;IAGnC,SAAS,CACd,UAA4B,EAC5B,IAAY,EAAA;QAEZ,OAAO,qBAAqB,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;KAClE;AACF,CAAA;AAED;;AAEG;MAWU,6BAA6B,CAAA;;0HAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA7B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,YAT9B,aAAa,CAAA,EAAA,CAAA,CAAA;AASZ,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,EAR7B,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,2BAA2B;AACpC,YAAA,QAAQ,EAAE,+BAA+B;AACzC,YAAA,KAAK,EAAE,IAAI;AACZ,SAAA;AACF,KAAA,EAAA,OAAA,EAAA,CAPS,aAAa,CAAA,EAAA,CAAA,CAAA;2FASZ,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAVzC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;AACxB,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,2BAA2B;AACpC,4BAAA,QAAQ,EAAE,+BAA+B;AACzC,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA;iBACF,CAAA;;;ACxDD;;AAEG;MACU,gBAAgB,CAAA;AAoB3B,IAAA,WAAA,CAAY,IAA6B,EAAA;AAnBzC;;AAEG;AACI,QAAA,IAAS,CAAA,SAAA,GAAa,EAAE,CAAC;AAChC;;AAEG;AACI,QAAA,IAAkB,CAAA,kBAAA,GAAa,EAAE,CAAC;AAavC,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC;AACxD,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;KAC3C;AAED;;;AAGG;IACI,mBAAmB,GAAA;QACxB,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC;KACH;AACF;;ACtCD;;AAEG;MACU,mBAAmB,CAAA;AAiC9B,IAAA,WAAA,CAAY,IAAgC,EAAA;AAL5C;;AAEG;AACI,QAAA,IAAK,CAAA,KAAA,GAAuB,EAAE,CAAC;QAGpC,MAAM,KAAK,GACT,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;AAErE,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAC9C,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;AAC1C,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;AAClC,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAC9C,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;AACpC,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;AAClC,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;KAC1B;AAED;;;AAGG;IACI,eAAe,GAAA;QACpB,MAAM,UAAU,GAA8B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAI;AACpE,YAAA,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;AACpC,SAAC,CAAC,CAAC;QAEH,OAAO;YACL,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;AAC7B,YAAA,KAAK,EAAE,UAAU;SAClB,CAAC;KACH;AAED;;;;AAIG;AACI,IAAA,gBAAgB,CAAC,MAAc,EAAA;AACpC,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;KAC1D;AAED;;;;;AAKG;IACI,eAAe,CACpB,MAAc,EACd,IAAsB,EAAA;AAEtB,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;AAE3E,QAAA,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE;AAC5B,YAAA,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;AACtC,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvB,SAAA;QAED,OAAO,IAAI,mBAAmB,CAAC;YAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;AAClB,SAAA,CAAC,CAAC;KACJ;AACF;;AC7GD;;AAEG;MACU,yBAAyB,CAAA;IAIpC,WAAY,CAAA,SAA8B,EAAE,MAAc,EAAA;QACxD,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAmB,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC;AACtE,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;KACtB;AACF;;;ACQD;;;;;;;AAOG;MAEU,qBAAqB,CAAA;AAahC,IAAA,WAAA,CAAY,eAAmC,EAAA;;QAZxC,IAAA,CAAA,iBAAiB,GAAG,IAAI,eAAe,CAA2B,EAAE,CAAC,CAAC;QAE7E,mCAAA,CAAA,GAAA,CAAA,IAAA,EAAyB,IAAI,aAAa,CAAS,CAAC,CAAC,CAAC,CAAA;QACtD,wCAAA,CAAA,GAAA,CAAA,IAAA,EAA8B,IAAI,eAAe,CAAuB,EAAE,CAAC,CAAC,CAAA;QAC5E,4BAAA,CAAA,GAAA,CAAA,IAAA,EAAkB,IAAI,eAAe,CAAsB,EAAE,CAAC,CAAC,CAAA;QAC/D,sCAAA,CAAA,GAAA,CAAA,IAAA,EAA4B,IAAI,aAAa,CAA4B,CAAC,CAAC,CAAC,CAAA;QAE5E,oCAAoC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QACpC,oCAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;AACrC,QAAA,iCAAA,CAAA,GAAA,CAAA,IAAA,EAAc,wBAAwB,CAAC,CAAA;QACvC,sCAAqC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAGnC,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAoB,eAAe,EAAA,GAAA,CAAA,CAAC;KACzC;IAEM,WAAW,GAAA;QAChB,sBAAA,CAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAc,CAAC,QAAQ,EAAE,CAAC;QAC9B,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAA,GAAA,CAAmB,CAAC,QAAQ,EAAE,CAAC;QACnC,sBAAA,CAAA,IAAI,EAAA,4BAAA,EAAA,GAAA,CAAO,CAAC,QAAQ,EAAE,CAAC;QACvB,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAiB,CAAC,QAAQ,EAAE,CAAC;QACjC,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;QAC3B,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;AAED;;;;;;AAMG;AACI,IAAA,eAAe,CAAC,IAA4B,EAAA;QACjD,IAAI,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,EAAE;AACvB,YAAA,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;YACzE,OAAO;AACR,SAAA;QAED,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAkB,IAAI,EAAA,GAAA,CAAA,CAAC;AAE3B,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAC/C,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;AAErC,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAC3C,QAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;AAErD,QAAA,IAAI,WAAW,EAAE;AACf,YAAA,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA;AAClB,iBAAA,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;AAC1D,iBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,iBAAA,SAAS,CAAC,CAAC,MAAkC,KAAI;AAChD,gBAAA,IAAI,CAAC,eAAe,CAClB,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAC/B,sBAAA,CAAA,IAAI,EAAA,iCAAA,EAAA,GAAA,CAAY,CACjB,CAAC;AACJ,aAAC,CAAC,CAAC;AACN,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,sBAAA,CAAA,IAAI,EAAY,iCAAA,EAAA,GAAA,CAAA,CAAC,CAAC;AAC1D,SAAA;AAED,QAAA,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,mBAAmB,CAAC,sBAAA,CAAA,IAAI,yCAAY,CAAC;AACvC,iBAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,iBAAA,SAAS,CAAC,CAAC,KAA0B,KAAI;AACxC,gBAAA,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA;AAClB,qBAAA,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;AAC/C,qBAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;qBACpC,SAAS;;AAER,gBAAA,MAAO,GAAC,EACR,CAAC,GAAG,KAAI;AACN,oBAAA,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;AACtD,oBAAA,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpB,iBAAC,CACF,CAAC;AACN,aAAC,CAAC,CAAC;AACN,SAAA;KACF;AAED;;;AAGG;AACI,IAAA,YAAY,CAAC,UAA6B,EAAA;AAC/C,QAAA,MAAM,YAAY,GAAG,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,KAAK,CAAC;QAEvC,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;YACnC,OAAO,CAAC,IAAI,CACV,CAAA,gCAAA,EAAmC,UAAU,CAAC,EAAE,CAAgC,8BAAA,CAAA,CACjF,CAAC;YACF,OAAO;AACR,SAAA;AAED,QAAA,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAC9B,QAAA,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;;;QAI/B,sBAAA,CAAA,IAAI,EAAc,mCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,KAAI;AAChD,YAAA,sBAAA,CAAA,IAAI,EAAc,mCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9B,SAAC,CAAC,CAAC;AAEH,QAAA,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA;AAClB,aAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,aAAA,SAAS,CAAC,CAAC,MAAM,KAAI;;AACpB,YAAA,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YACnC,MAAM,gBAAgB,GAAG,SAAS,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAEnE,IAAI,CAAC,gBAAgB,EAAE;AACrB,gBAAA,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;;;gBAIrE,IAAI,UAAU,CAAC,aAAa,EAAE;oBAC5B,MAAM,SAAS,GAAG,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,aAAa,KAAI;wBAC/D,OAAO,aAAa,CAAC,EAAE,CAAC;AAC1B,qBAAC,CAAC,CAAC;AACH,oBAAA,MAAM,kBAAkB,GAAG,UAAU,CAAC,aAAa;AAChD,yBAAA,MAAM,CAAC,CAAC,YAAY,KAAI;AACvB,wBAAA,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC;AACnC,qBAAC,CAAC;AACD,yBAAA,GAAG,CAAC,CAAC,YAAY,KAAI;wBACpB,OAAO,YAAY,CAAC,EAAE,CAAC;AACzB,qBAAC,CAAC,CAAC;AAEL,oBAAA,YAAY,CAAC,SAAS,GAAG,SAAS,CAAC;AACnC,oBAAA,YAAY,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;AACtD,iBAAA;AACD,gBAAA,MAAM,YAAY,GAAG,SAAS,CAAC,eAAe,CAC5C,UAAU,CAAC,EAAE,EACb,YAAY,CACb,CAAC;AAEF,gBAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,sBAAA,CAAA,IAAI,EAAY,iCAAA,EAAA,GAAA,CAAA,CAAC,CAAC;AACtD,aAAA;AAAM,iBAAA;AACL,gBAAA,MAAM,yBAAyB,GAC7B,CAAA,CAAA,EAAA,GAAA,UAAU,CAAC,aAAa,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,GAAG,CAAC,CAAC,aAAa,KAAI;oBAC9C,OAAO,aAAa,CAAC,EAAE,CAAC;iBACzB,CAAC,KAAI,EAAE,CAAC;;;;;AAMX,gBAAA,IAAI,gBAAgB,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;oBACzC,IAAI,YAAY,GAAG,yBAAyB,KAAzB,IAAA,IAAA,yBAAyB,KAAzB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,yBAAyB,CAAE,MAAM,CAClD,CAAC,EAAE,KAAK,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CACnD,CAAC;AACF,oBAAA,YAAY,GAAG,YAAY,KAAZ,IAAA,IAAA,YAAY,KAAZ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,YAAY,CAAE,MAAM,CAAC,CAAC,QAAQ,KAAI;;wBAC/C,OAAO,CAAA,EAAA,GAAA,UAAU,CAAC,aAAa,0CAAE,IAAI,CACnC,CAAC,YAAY,KACX,YAAY,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,WAAW,CAC5D,CAAC;AACJ,qBAAC,CAAC,CAAC;;;AAIH,oBAAA,gBAAgB,CAAC,kBAAkB;AACjC,wBAAA,gBAAgB,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAC5D,iBAAA;;;AAGD,gBAAA,gBAAgB,CAAC,SAAS,GAAG,yBAAyB,CAAC;AAEvD,gBAAA,MAAM,YAAY,GAAG,SAAS,CAAC,eAAe,CAC5C,UAAU,CAAC,EAAE,EACb,gBAAgB,CACjB,CAAC;AAEF,gBAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,sBAAA,CAAA,IAAI,EAAY,iCAAA,EAAA,GAAA,CAAA,CAAC,CAAC;AACtD,aAAA;AACH,SAAC,CAAC;AACD,aAAA,WAAW,EAAE,CAAC;KAClB;AAED;;;;;;AAMG;IACI,mBAAmB,CACxB,QAAgB,EAChB,YAAkD,EAAA;;AAGlD,QAAA,IAAI,YAAY,EAAE;AAChB,YAAA,OAAO,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAC/B,MAAM,CAAC,CAAC,WAAW,KAAK,QAAQ,KAAK,WAAW,CAAC,MAAM,CAAC,EACxD,GAAG,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,CAAC,EAC3C,YAAY,CAAC,UAAU;AACrB,kBAAE,oBAAoB,CAAC,YAAY,CAAC,UAAU,CAAC;kBAC7C,oBAAoB,CAClB,sBAAA,CAAA,IAAI,EAA2B,gCAAA,EAAA,GAAA,EAAA,gDAAA,CAAA,CAAA,IAAA,CAA/B,IAAI,EACF,YAAY,CAAC,UAAkD,CAChE,CACF,CACN,CAAC;AACH,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAC/B,MAAM,CAAC,CAAC,WAAW,KAAK,QAAQ,KAAK,WAAW,CAAC,MAAM,CAAC,EACxD,GAAG,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,CAAC,CAC5C,CAAC;AACH,SAAA;KACF;AAED;;;;;;AAMG;IACI,eAAe,CAAC,KAA0B,EAAE,QAAgB,EAAA;QACjE,MAAM,QAAQ,GAAG,IAAI,mBAAmB,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC;QAClE,MAAM,cAAc,GAAG,IAAI,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAEzE,QAAA,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KAC5C;AAED;;AAEG;IACI,2BAA2B,GAAA;QAChC,OAAO,sBAAA,CAAA,IAAI,EAAmB,wCAAA,EAAA,GAAA,CAAA,CAAC,KAAK,CAAC;KACtC;AAED;;AAEG;IACI,2BAA2B,GAAA;QAChC,OAAO,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAA,GAAA,CAAmB,CAAC;KAChC;AAED;;;AAGG;AACI,IAAA,uBAAuB,CAAC,KAA2B,EAAA;AACxD,QAAA,sBAAA,CAAA,IAAI,EAAmB,wCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACrC;AAED;;AAEG;IACI,mBAAmB,GAAA;QACxB,OAAO,sBAAA,CAAA,IAAI,EAAA,4BAAA,EAAA,GAAA,CAAO,CAAC;KACpB;AAED;;AAEG;IACI,sBAAsB,GAAA;QAC3B,OAAO,sBAAA,CAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAc,CAAC;KAC3B;AAED;;;AAGG;AACI,IAAA,kBAAkB,CAAC,EAAU,EAAA;AAClC,QAAA,sBAAA,CAAA,IAAI,EAAc,mCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC7B;AAED;;;AAGG;AACI,IAAA,WAAW,CAAC,MAAc,EAAA;AAC/B,QAAA,MAAM,YAAY,GAAwB,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,KAAK,CAAC;AAC5D,QAAA,MAAM,UAAU,GAAkC,YAAY,CAAC,IAAI,CACjE,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,KAAK,MAAM,CAC7B,CAAC;AAEF,QAAA,OAAO,UAAU,CAAC;KACnB;AAED;;;;;AAKG;AACI,IAAA,gBAAgB,CAAC,IAAuB,EAAA;AAC7C,QAAA,MAAM,YAAY,GAAwB,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,KAAK,CAAC;AAC5D,QAAA,MAAM,iBAAiB,GAAG,YAAY,CAAC,SAAS,CAC9C,CAAC,WAAW,KAAK,WAAW,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAC5C,CAAC;AAEF,QAAA,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE;YAC5B,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;AACnE,SAAA;AAAM,aAAA;AACL,YAAA,YAAY,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;AACvC,YAAA,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAChC,SAAA;KACF;AAED;;AAEG;IACI,oBAAoB,CAAC,MAAc,EAAE,OAAiB,EAAA;AAC3D,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;AACvD,QAAA,iBAAiB,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;AAEpC,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;KAChD;;AAGC,mCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,wCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,4BAAA,GAAA,IAAA,OAAA,EAAA,EAAA,sCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,oCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,oCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,iCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,sCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,gCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,gDAAA,GAAA,SAAA,gDAAA,CAAA,KAA0B,EAC1B,UAA4D,EAAA;AAE5D,IAAA,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;IAChD,MAAM,uBAAuB,GAA4B,EAAE,CAAC;AAE5D,IAAA,IAAI,UAAU,EAAE;AACd,QAAA,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE;YACjC,IAAI,QAAQ,IAAI,eAAe,EAAE;gBAC/B,uBAAuB,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;AAC/D,aAAA;AACF,SAAA;AACF,KAAA;AAED,IAAA,OAAO,uBAAuB,CAAC;AACjC,CAAC,+GAGC,UAA4D,EAAA;AAE5D,IAAA,OAAO,CACL,MAA2B,EAC3B,MAA2B,KAChB;QACX,MAAM,cAAc,GAAG,sBAAA,CAAA,IAAI,EAA2B,gCAAA,EAAA,GAAA,EAAA,gDAAA,CAAA,CAAA,IAAA,CAA/B,IAAI,EACzB,MAAM,EACN,UAAU,CACX,CAAC;QACF,MAAM,cAAc,GAAG,sBAAA,CAAA,IAAI,EAA2B,gCAAA,EAAA,GAAA,EAAA,gDAAA,CAAA,CAAA,IAAA,CAA/B,IAAI,EACzB,MAAM,EACN,UAAU,CACX,CAAC;AACF,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;AAC3E,KAAC,CAAC;AACJ,CAAC,CAAA;kHAxVU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;sHAArB,qBAAqB,EAAA,CAAA,CAAA;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBADjC,UAAU;;;AC7BX;;AAEG;AACS,IAAA,uCAUX;AAVD,CAAA,UAAY,sCAAsC,EAAA;AAChD;;AAEG;AACH,IAAA,sCAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACb;;;AAGG;AACH,IAAA,sCAAA,CAAA,0BAAA,CAAA,GAAA,0BAAqD,CAAA;AACvD,CAAC,EAVW,sCAAsC,KAAtC,sCAAsC,GAUjD,EAAA,CAAA,CAAA;;MCVY,iCAAiC,CAAA;IAC5C,WACS,CAAA,aAAiD,EACjD,kBAA4B,EAC5B,wBAAmE,GAAA,sCAAsC,CAAC,wBAAwB,EAAA;AAFlI,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAoC;AACjD,QAAA,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAU;AAC5B,QAAA,IAAwB,CAAA,wBAAA,GAAxB,wBAAwB,CAA0G;KACvI;AACL;;;ACKD,MAAM,0BAA0B,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAEjE;;AAEG;MAMU,uBAAuB,CAAA;AAClC,IAAA,IAAW,wBAAwB,GAAA;QACjC,OAAO,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAA2B,CAAC;KACxC;IAED,IAAW,wBAAwB,CAAC,KAA2B,EAAA;AAC7D,QAAA,sBAAA,CAAA,IAAI,EAA8B,kDAAA,EAAA;AAChC,YAAA,GAAG,0BAA0B;AAC7B,YAAA,IAAI,KAAK,IAAI,EAAE,CAAC;SACjB,EAAA,GAAA,CAAA,CAAC;QACF,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAA,GAAA,CAAiB,CAAC,YAAY,EAAE,CAAC;KACtC;AAED,IAAA,IAAW,aAAa,GAAA;QACtB,OAAO,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAgB,CAAC;KAC7B;IAED,IAAW,aAAa,CAAC,KAAc,EAAA;QACrC,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAmB,KAAK,EAAA,GAAA,CAAA,CAAC;QAC7B,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAA,GAAA,CAAiB,CAAC,YAAY,EAAE,CAAC;KACtC;IAkBD,WACE,CAAA,eAAkC,EAClC,kBAAyC,EAAA;AAlBpC,QAAA,IAAA,CAAA,mBAAmB,GAAG,IAAI,OAAO,EAAuB,CAAC;QAEzD,IAAA,CAAA,gBAAgB,GAAG;AACxB,YAAA,YAAY,EAAE,IAAI;SACnB,CAAC;QAEF,qCAAkC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAClC,QAAA,6CAAA,CAAA,GAAA,CAAA,IAAA,EAAkD,EAAE,CAAC,CAAA;QACrD,sCAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;AACrC,QAAA,iCAAA,CAAA,GAAA,CAAA,IAAA,EAAY,sBAAsB,CAAC,CAAA;QACnC,wCAAoC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QACpC,2CAA2C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAE3C,QAAA,uCAAA,CAAA,GAAA,CAAA,IAAA,EAAkB,KAAK,CAAC,CAAA;AACxB,QAAA,kDAAA,CAAA,GAAA,CAAA,IAAA,EAA6B,0BAA0B,CAAC,CAAA;QAMtD,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAoB,eAAe,EAAA,GAAA,CAAA,CAAC;QACxC,sBAAA,CAAA,IAAI,EAAA,2CAAA,EAAuB,kBAAkB,EAAA,GAAA,CAAA,CAAC;KAC/C;IAEM,QAAQ,GAAA;AACb,QAAA,sBAAA,CAAA,IAAI,EAAoB,2CAAA,EAAA,GAAA,CAAA;aACrB,mBAAmB,CAAC,sBAAA,CAAA,IAAI,EAAA,iCAAA,EAAA,GAAA,CAAU,CAAC;AACnC,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,OAAO,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC;QAEhD,sBAAA,CAAA,IAAI,EAAoB,2CAAA,EAAA,GAAA,CAAA,CAAC,iBAAiB;AACvC,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,OAAO,KAAI;YACrB,sBAAA,CAAA,IAAI,EAAA,6CAAA,EAAyB,OAAO,EAAA,GAAA,CAAA,CAAC;YACrC,IAAI,CAAC,wBAAwB,GAAG,sBAAA,CAAA,IAAI,EAAc,qCAAA,EAAA,GAAA,CAAA;kBAC9C,OAAO,CAAC,sBAAA,CAAA,IAAI,6CAAc,CAAC;kBAC3B,SAAS,CAAC;AAChB,SAAC,CAAC,CAAC;AAEL,QAAA,sBAAA,CAAA,IAAI,EAAoB,2CAAA,EAAA,GAAA,CAAA;AACrB,aAAA,sBAAsB,EAAE;AACxB,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,YAAY,KAAI;YAC1B,sBAAA,CAAA,IAAI,EAAA,qCAAA,EAAiB,YAAY,EAAA,GAAA,CAAA,CAAC;AAClC,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAC5B,IAAI,EAAE,uBAAuB,CAAC,SAAS;AACxC,aAAA,CAAC,CAAC;AACH,YAAA,IAAI,CAAC,wBAAwB;AAC3B,gBAAA,sBAAA,CAAA,IAAI,EAAsB,6CAAA,EAAA,GAAA,CAAA,CAAC,uBAAA,IAAI,EAAA,qCAAA,EAAA,GAAA,CAAc,CAAC,CAAC;AACnD,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;QAChB,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;QAC3B,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;;;oHA7EU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,qBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,wDCxBpC,uQAUA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,GAAA,CAAA,EAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDca,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,kBAAkB,EAAA,eAAA,EAEX,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,uQAAA,EAAA,CAAA;;;AEpBjD;AACA;;AAEG;MACU,gCAAgC,CAAA;AAK5C;;ACPD;;;;;AAKG;MAEmB,iCAAiC,CAAA;;8HAAjC,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kIAAjC,iCAAiC,EAAA,CAAA,CAAA;2FAAjC,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBADtD,UAAU;;;;ACiBX;;;;AAIG;MAOU,8BAA8B,CAAA;AACzC,IAAA,IAAW,UAAU,GAAA;QACnB,OAAO,sBAAA,CAAA,IAAI,EAAA,2CAAA,EAAA,GAAA,CAAa,CAAC;KAC1B;IAED,IAAW,UAAU,CAAC,KAAoC,EAAA;QACxD,sBAAA,CAAA,IAAI,EAAA,2CAAA,EAAgB,KAAK,EAAA,GAAA,CAAA,CAAC;QAC1B,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;KACrC;AAED,IAAA,IAAW,iBAAiB,GAAA;QAC1B,OAAO,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC;KACjC;IAED,IAAW,iBAAiB,CAAC,KAAuC,EAAA;QAClE,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAuB,KAAK,EAAA,GAAA,CAAA,CAAC;QACjC,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;KACrC;AAED,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,sBAAA,CAAA,IAAI,EAAA,0CAAA,EAAA,GAAA,CAAY,CAAC;KACzB;IAED,IAAW,SAAS,CAAC,KAAsC,EAAA;QACzD,sBAAA,CAAA,IAAI,EAAA,0CAAA,EAAe,KAAK,EAAA,GAAA,CAAA,CAAC;AACzB,QAAA,IAAI,KAAK,EAAE;YACT,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA,CAAC,eAAe,CAAC,KAAK,EAAE,sBAAA,CAAA,IAAI,EAAS,uCAAA,EAAA,GAAA,CAAA,CAAC,CAAC;AAChE,SAAA;KACF;AAED,IAAA,IAAW,KAAK,GAAA;QACd,OAAO,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAQ,CAAC;KACrB;IAED,IAAW,KAAK,CAAC,KAA0B,EAAA;QACzC,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAW,KAAK,EAAA,GAAA,CAAA,CAAC;QACrB,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;KACrC;AAiBD,IAAA,WAAA,CACE,cAAiC,EACjC,kBAAyC,EACzC,YAA6B,EAC7B,mBAAsD,EAAA;QAjBxD,6CAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;QACrC,8CAAmC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QACnC,kDAA2C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAC3C,4CAA+B,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAC/B,mDAAwD,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;;AAGxD,QAAA,uCAAA,CAAA,GAAA,CAAA,IAAA,EAAW,SAAS,CAAC,CAAA;QACrB,2CAA4C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAC5C,kDAAsD,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QACtD,0CAA6C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAC7C,QAAA,sCAAA,CAAA,GAAA,CAAA,IAAA,EAA+B,EAAE,CAAC,CAAA;QAQhC,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAmB,cAAc,EAAA,GAAA,CAAA,CAAC;QACtC,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAuB,kBAAkB,EAAA,GAAA,CAAA,CAAC;QAC9C,sBAAA,CAAA,IAAI,EAAA,4CAAA,EAAiB,YAAY,EAAA,GAAA,CAAA,CAAC;QAClC,sBAAA,CAAA,IAAI,EAAA,mDAAA,EAAwB,mBAAmB,EAAA,GAAA,CAAA,CAAC;KACjD;IAEM,QAAQ,GAAA;AACb,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA;AACrB,aAAA,sBAAsB,EAAE;AACxB,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,YAAY,KAAI;;AAE1B,YAAA,IAAI,YAAY,EAAE;AAChB,gBAAA,IAAI,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;gBACrE,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;AACrC,aAAA;AACH,SAAC,CAAC,CAAC;AAEL,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA;AACrB,aAAA,mBAAmB,EAAE;AACrB,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,KAAK,KAAI;AACnB,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB,IAAI,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA,CAAC,WAAW,CACpD,IAAI,CAAC,UAAU,CAAC,EAAE,CACnB,CAAC;AACH,aAAA;YACD,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;AACtC,SAAC,CAAC,CAAC;AAEL,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA;aACrB,mBAAmB,CAAC,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CAAC;AAClC,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,SAAS,KAAI;YACvB,sBAAA,CAAA,IAAI,EAAA,0CAAA,EAAe,SAAS,EAAA,GAAA,CAAA,CAAC;AAC7B,YAAA,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,gBAAgB,CAAC;YACnD,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;AACtC,SAAC,CAAC,CAAC;AAEL,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA;AACrB,aAAA,2BAA2B,EAAE;AAC7B,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,MAAM,KAAI;AACpB,YAAA,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC;AAClC,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;QAChB,sBAAA,CAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;QAC3B,sBAAA,CAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;AAEM,IAAA,YAAY,CAAC,UAAoC,EAAA;QACtD,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,GAAG,UAAU,CAAC;YAC7C,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CAAC,CAAC;AACzE,SAAA;KACF;AAEM,IAAA,YAAY,CAAC,MAAc,EAAA;AAChC,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;KACrD;AAEM,IAAA,aAAa,CAAC,IAAY,EAAA;QAC/B,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC;YACjC,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CAAC,CAAC;AACzE,SAAA;KACF;IAEM,mBAAmB,GAAA;;AACxB,QAAA,MAAM,OAAO,GAAG,IAAI,gCAAgC,EAAE,CAAC;QACvD,MAAM,WAAW,GACf,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC;QAExE,OAAO,CAAC,UAAU,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,UAAU,CAAC;AAEhD,QAAA,MAAM,OAAO,GAAmC;AAC9C,YAAA,SAAS,EAAE;AACT,gBAAA,EAAE,OAAO,EAAE,gCAAgC,EAAE,QAAQ,EAAE,OAAO,EAAE;AACjE,aAAA;AACD,YAAA,IAAI,EAAE,OAAO;SACd,CAAC;AAEF,QAAA,IAAI,WAAW,EAAE;AACf,YAAA,MAAM,aAAa,GAAG,sBAAA,CAAA,IAAI,EAAc,4CAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAEpE,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAyB,KAAI;gBAC3D,IAAI,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE;oBAC9C,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;oBACxC,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC,eAAe,CACtC,IAAI,CAAC,SAAS,EACd,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CACd,CAAC;AACH,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAEM,gBAAgB,GAAA;AACrB,QAAA,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;AACtE,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AACtE,YAAA,IAAI,SAAS,EAAE;AACb,gBAAA,MAAM,OAAO,GAAG,IAAI,iCAAiC,CACnD,IAAI,CAAC,UAAU,CAAC,aAAa,EAC7B,SAAS,CAAC,kBAAkB,CAC7B,CAAC;AAEF,gBAAA,IAAI,IAAI,CAAC,UAAU,CAAC,wBAAwB,EAAE;AAC5C,oBAAA,OAAO,CAAC,wBAAwB;AAC9B,wBAAA,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;AAC5C,iBAAA;AAED,gBAAA,MAAM,OAAO,GAAmC;AAC9C,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,iCAAiC,EAAE,QAAQ,EAAE,OAAO,EAAE;AAClE,qBAAA;iBACF,CAAC;gBAEF,MAAM,aAAa,GAAG,sBAAA,CAAA,IAAI,EAAA,4CAAA,EAAA,GAAA,CAAc,CAAC,IAAI,CAC3C,sBAAA,CAAA,IAAI,2DAAqB,CAAC,gBAAgB,EAAE,EAC5C,OAAO,CACR,CAAC;gBAEF,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAyB,KAAI;AAC3D,oBAAA,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE;AAC5B,wBAAA,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CACxC,CAAC,GAAqC,KAAK,GAAG,CAAC,EAAE,CAClD,CAAC;AAEF,wBAAA,SAAS,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;AAClD,wBAAA,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;AACrC,4BAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAC7C,IAAI,CAAC,UAAU,CAAC,EAAE,EAClB,SAAS,CACV,CAAC;AACH,yBAAA;AACF,qBAAA;AACH,iBAAC,CAAC,CAAC;AACJ,aAAA;AACF,SAAA;KACF;IAEM,SAAS,GAAA;;;AAEd,QAAA,IAAI,MAAA,IAAI,CAAC,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,gBAAgB,EAAE;AACrC,YAAA,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;AACpC,SAAA;KACF;IAEM,QAAQ,GAAA;;;AAEb,QAAA,IAAI,MAAA,IAAI,CAAC,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,eAAe,EAAE;AACpC,YAAA,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;AACnC,SAAA;KACF;AAEM,IAAA,kBAAkB,CAAC,KAAwB,EAAA;QAChD,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,SAAS,CAAC,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;YAClD,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CAAC,CAAC;AACzE,SAAA;KACF;;;2HA/NU,8BAA8B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAH,qBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,eAAA,EAAA,EAAA,EAAA,KAAA,EAAAG,iCAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,8BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,gECtC3C,skIAqHA,EAAA,MAAA,EAAA,CAAA,w5BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,IAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,MAAA,EAAA,cAAA,EAAA,SAAA,EAAA,eAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,EAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,cAAA,EAAA,cAAA,EAAA,QAAA,EAAA,UAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,YAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,GAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,UAAA,EAAA,IAAA,EAAA,OAAA,EAAA,YAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,eAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,GAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,cAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,GAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FD/Ea,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAN1C,SAAS;+BACE,0BAA0B,EAAA,eAAA,EAGnB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,skIAAA,EAAA,MAAA,EAAA,CAAA,w5BAAA,CAAA,EAAA,CAAA;;;;AEtBjD;;;;AAIG;MAMU,oBAAoB,CAAA;AAQ/B,IAAA,IAAW,QAAQ,GAAA;QACjB,OAAO,sBAAA,CAAA,IAAI,EAAA,+BAAA,EAAA,GAAA,CAAW,CAAC;KACxB;IAED,IAAW,QAAQ,CAAC,KAAc,EAAA;QAChC,sBAAA,CAAA,IAAI,EAAA,+BAAA,EAAc,KAAK,EAAA,GAAA,CAAA,CAAC;QACxB,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;KACrC;IAQD,WACE,CAAA,kBAAyC,EACzC,cAAiC,EAAA;AARnC,QAAA,+BAAA,CAAA,GAAA,CAAA,IAAA,EAAa,KAAK,CAAC,CAAA;QAEnB,mCAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;QACrC,wCAA2C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAC3C,oCAAmC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAMjC,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAuB,kBAAkB,EAAA,GAAA,CAAA,CAAC;QAC9C,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAmB,cAAc,EAAA,GAAA,CAAA,CAAC;KACvC;IAEM,QAAQ,GAAA;AACb,QAAA,sBAAA,CAAA,IAAI,EAAoB,wCAAA,EAAA,GAAA,CAAA;AACrB,aAAA,sBAAsB,EAAE;AACxB,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,YAAY,KAAI;YAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,YAAY,CAAC;AAC/C,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;QAChB,sBAAA,CAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;QAC3B,sBAAA,CAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;;;iHA3CU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAL,qBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,mFCxBjC,mFAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDqBa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;+BACE,eAAe,EAAA,eAAA,EAER,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,mFAAA,EAAA,CAAA;yIAQxC,MAAM,EAAA,CAAA;sBADZ,KAAK;;;;AEHR;;AAEG;MAQU,mCAAmC,CAAA;AAC9C,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,sBAAA,CAAA,IAAI,EAAA,+CAAA,EAAA,GAAA,CAAY,CAAC;KACzB;IAED,IAAW,SAAS,CAAC,KAA0B,EAAA;QAC7C,sBAAA,CAAA,IAAI,EAAA,+CAAA,EAAe,KAAK,EAAA,GAAA,CAAA,CAAC;QACzB,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;AAoBD,IAAA,WAAA,CACS,OAA0C,EAC1C,kBAAyC,EACzC,QAA0B,EAAA;AAF1B,QAAA,IAAO,CAAA,OAAA,GAAP,OAAO,CAAmC;AAC1C,QAAA,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAuB;AACzC,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAkB;;AArB5B,QAAA,IAAU,CAAA,UAAA,GAAa,EAAE,CAAC;AAC1B,QAAA,IAAmB,CAAA,mBAAA,GAAa,EAAE,CAAC;QACnC,IAAA,CAAA,UAAU,GAAsB;AACrC,YAAA,EAAE,EAAE,cAAc;AAClB,YAAA,IAAI,EAAE,eAAe;AACrB,YAAA,aAAa,EAAE,IAAI;AACnB,YAAA,gBAAgB,EAAE,KAAK;AACvB,YAAA,yBAAyB,EAAE,IAAI;YAC/B,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3C,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;SAC1C,CAAC;AAEK,QAAA,IAA4B,CAAA,4BAAA,GAAG,KAAK,CAAC;QAE5C,kDAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;QAErC,+CAAA,CAAA,GAAA,CAAA,IAAA,EAAc,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAA;KAMtC;IAEG,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC;AACtC,YAAA,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;AAChC,YAAA,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,IAAI,CAAC,SAAS;AACjC,SAAA,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAEtD,QAAA,IAAI,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAqB,8CAAA,EAAA,GAAA,EAAA,wDAAA,CAAA,CAAA,IAAA,CAAzB,IAAI,CAAuB,CAAC;AAE9C,QAAA,IAAI,CAAC,kBAAkB;aACpB,mBAAmB,CAAC,cAAc,CAAC;AACnC,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,KAAK,KAAI;AACnB,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;AACzB,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;QAChB,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;QAC3B,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;IAEM,UAAU,GAAA;QACf,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAC3C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CACtD,CAAC;AAEF,QAAA,IAAI,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;AACnC,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CACxD,CAAC,GAAG,KAAK,GAAG,CAAC,UAAU,CACxB,CAAC;AACH,SAAA;AAED,QAAA,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAC/D,CAAC,GAAG,KAAK,GAAG,CAAC,UAAU,CACxB,CAAC;KACH;AAEM,IAAA,aAAa,CAAC,OAAiB,EAAA;;QACpC,IAAI,eAAe,GAAG,OAAO,CAAC;AAC9B,QAAA,MAAM,UAAU,GACd,IAAI,CAAC,SAAS,KAAI,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,CAAC,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,WAAW,EAAE,CAAA,CAAC;AAE7D,QAAA,IAAI,UAAU,EAAE;YACd,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,KAAI;;AACxC,gBAAA,KAAK,MAAM,QAAQ,IAAI,IAAI,EAAE;oBAC3B,IACE,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;yBACnD,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,aAAa,CAAC,EACpD;wBACA,MAAM,YAAY,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,WAAW,EAAE,CAAC;wBACnD,IAAI,YAAY,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE;AACzD,4BAAA,OAAO,IAAI,CAAC;AACb,yBAAA;AACF,qBAAA;AACF,iBAAA;AAED,gBAAA,OAAO,KAAK,CAAC;AACf,aAAC,CAAC,CAAC;AACJ,SAAA;AACD,QAAA,OAAO,eAAe,CAAC;KACxB;IAEM,SAAS,GAAA;AACd,QAAA,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,MAAM,MAAM,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEM,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,MAAM,MAAM,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEM,kBAAkB,GAAA;QACvB,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEM,aAAa,GAAA;AAClB,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;KACxB;AAEM,IAAA,UAAU,CAAC,EAAU,EAAA;QAC1B,QACE,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,KAAK,KAAK,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,EACzE;KACH;IAEM,YAAY,GAAA;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,eAAe,CAAC,CACvE,CAAC;KACH;;;AAGC,IAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;AACpD,IAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;IACzD,IAAI,sBAAsB,GAAa,EAAE,CAAC;IAC1C,MAAM,uBAAuB,GAAa,EAAE,CAAC;AAE7C,IAAA,KAAK,MAAM,YAAY,IAAI,gBAAgB,EAAE;;QAE3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAC3D,QAAA,MAAM,eAAe,GAAW;YAC9B,eAAe,EAAE,YAAY,CAAC,eAAe;YAC7C,EAAE,EAAE,YAAY,CAAC,EAAE;YACnB,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,WAAW,EAAE,YAAY,CAAC,WAAW;AACrC,YAAA,UAAU,EAAE,QAAQ,KAAK,CAAC,CAAC;SAC5B,CAAC;;;AAIF,QAAA,IACE,IAAI,CAAC,OAAO,CAAC,wBAAwB;YACrC,sCAAsC,CAAC,wBAAwB,EAC/D;YACA,IAAI,eAAe,CAAC,UAAU,EAAE;AAC9B,gBAAA,sBAAsB,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC;AACpD,aAAA;AAAM,iBAAA;AACL,gBAAA,uBAAuB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAC/C,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,sBAAsB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAC9C,SAAA;AACF,KAAA;;;AAID,IAAA,IACE,IAAI,CAAC,OAAO,CAAC,wBAAwB;QACrC,sCAAsC,CAAC,wBAAwB,EAC/D;QACA,uBAAuB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,KACtC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CACrC,CAAC;AACF,QAAA,sBAAsB,GAAG,sBAAsB,CAAC,MAAM,CACpD,uBAAuB,CACxB,CAAC;AACH,KAAA;AAED,IAAA,OAAO,sBAAsB,CAAC;AAChC,CAAC,CAAA;gIAhLU,mCAAmC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAK,iCAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,qBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnC,mCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mCAAmC,EAHnC,QAAA,EAAA,gCAAA,EAAA,SAAA,EAAA,CAAC,qBAAqB,CAAC,0BCjCpC,m4DAwDA,EAAA,MAAA,EAAA,CAAA,kKAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,EAAA,aAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,EAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,GAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,iBAAA,EAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,8BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,GAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDpBa,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAP/C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gCAAgC,aAG/B,CAAC,qBAAqB,CAAC,EACjB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,m4DAAA,EAAA,MAAA,EAAA,CAAA,kKAAA,CAAA,EAAA,CAAA;;;ME7BpC,qCAAqC,CAAA;IACzC,gBAAgB,GAAA;AACrB,QAAA,OAAO,mCAAmC,CAAC;KAC5C;;kIAHU,qCAAqC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;sIAArC,qCAAqC,EAAA,CAAA,CAAA;2FAArC,qCAAqC,EAAA,UAAA,EAAA,CAAA;kBADjD,UAAU;;;ACFX;;;;AAIG;MAKU,sCAAsC,CAAA;;mIAAtC,sCAAsC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtC,sCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sCAAsC,0ECXnD,wEAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDQa,sCAAsC,EAAA,UAAA,EAAA,CAAA;kBAJlD,SAAS;+BACE,oCAAoC,EAAA,QAAA,EAAA,wEAAA,EAAA,CAAA;;;AENhD;;;;AAIG;MAKU,yCAAyC,CAAA;;sIAAzC,yCAAyC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzC,yCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yCAAyC,6ECXtD,wEAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDQa,yCAAyC,EAAA,UAAA,EAAA,CAAA;kBAJrD,SAAS;+BACE,uCAAuC,EAAA,QAAA,EAAA,wEAAA,EAAA,CAAA;;;AENnD;;;;;AAKG;MAKU,uCAAuC,CAAA;;oIAAvC,uCAAuC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvC,uCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uCAAuC,2ECZpD,6BACA,EAAA,CAAA,CAAA;2FDWa,uCAAuC,EAAA,UAAA,EAAA,CAAA;kBAJnD,SAAS;+BACE,qCAAqC,EAAA,QAAA,EAAA,6BAAA,EAAA,CAAA;;;AEPjD;;;;AAIG;MAKU,qCAAqC,CAAA;;kIAArC,qCAAqC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArC,qCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qCAAqC,wECXlD,8EAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDQa,qCAAqC,EAAA,UAAA,EAAA,CAAA;kBAJjD,SAAS;+BACE,kCAAkC,EAAA,QAAA,EAAA,8EAAA,EAAA,CAAA;;;MEiEjC,oBAAoB,CAAA;;iHAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,iBA3C7B,mCAAmC;QACnC,uBAAuB;QACvB,sCAAsC;QACtC,yCAAyC;QACzC,uCAAuC;QACvC,qCAAqC;QACrC,8BAA8B;AAC9B,QAAA,oBAAoB,aAGpB,YAAY;QACZ,WAAW;QACX,kBAAkB;QAClB,iBAAiB;QACjB,6BAA6B;QAC7B,eAAe;QACf,aAAa;QACb,cAAc;QACd,cAAc;QACd,iBAAiB;QACjB,eAAe;QACf,wBAAwB;QACxB,aAAa;QACb,gBAAgB;AAChB,QAAA,mBAAmB,aAGnB,mCAAmC;QACnC,uBAAuB;QACvB,sCAAsC;QACtC,yCAAyC;QACzC,uCAAuC;QACvC,qCAAqC;QACrC,8BAA8B;QAC9B,oBAAoB,CAAA,EAAA,CAAA,CAAA;AASX,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EAPpB,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,iCAAiC;AAC1C,YAAA,QAAQ,EAAE,qCAAqC;AAChD,SAAA;KACF,EAAA,OAAA,EAAA,CA/BC,YAAY;QACZ,WAAW;QACX,kBAAkB;QAClB,iBAAiB;QACjB,6BAA6B;QAC7B,eAAe;QACf,aAAa;QACb,cAAc;QACd,cAAc;QACd,iBAAiB;QACjB,eAAe;QACf,wBAAwB;QACxB,aAAa;QACb,gBAAgB;QAChB,mBAAmB,CAAA,EAAA,CAAA,CAAA;2FAmBV,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBA7ChC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,mCAAmC;wBACnC,uBAAuB;wBACvB,sCAAsC;wBACtC,yCAAyC;wBACzC,uCAAuC;wBACvC,qCAAqC;wBACrC,8BAA8B;wBAC9B,oBAAoB;AACrB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,kBAAkB;wBAClB,iBAAiB;wBACjB,6BAA6B;wBAC7B,eAAe;wBACf,aAAa;wBACb,cAAc;wBACd,cAAc;wBACd,iBAAiB;wBACjB,eAAe;wBACf,wBAAwB;wBACxB,aAAa;wBACb,gBAAgB;wBAChB,mBAAmB;AACpB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,mCAAmC;wBACnC,uBAAuB;wBACvB,sCAAsC;wBACtC,yCAAyC;wBACzC,uCAAuC;wBACvC,qCAAqC;wBACrC,8BAA8B;wBAC9B,oBAAoB;AACrB,qBAAA;AACD,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iCAAiC;AAC1C,4BAAA,QAAQ,EAAE,qCAAqC;AAChD,yBAAA;AACF,qBAAA;iBACF,CAAA;;;ACxED;;AAEG;;;;"}
|
1
|
+
{"version":3,"file":"skyux-data-manager.mjs","sources":["../../../../../libs/components/data-manager/src/lib/modules/shared/sky-data-manager-resources.module.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-view-state.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-state.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-state-change.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-column-picker-sort-strategy.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker-context.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-filter-context.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-view.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-view.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker-impl.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-left-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-left-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-primary-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-primary-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-right-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-right-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-section.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-section.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.module.ts","../../../../../libs/components/data-manager/src/skyux-data-manager.ts"],"sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-data-manager' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_data_manager_column_picker_title: {\n message: 'Choose columns to show in the list',\n },\n skyux_data_manager_apply_changes_button_title: { message: 'Apply changes' },\n skyux_data_manager_cancel_button_title: { message: 'Cancel' },\n skyux_data_manager_select_all_button_title: { message: 'Select all' },\n skyux_data_manager_clear_all_button_title: { message: 'Clear all' },\n skyux_data_manager_show_selected_option_title: {\n message: 'Show only selected items',\n },\n skyux_data_manager_columns_button_title: { message: 'Columns' },\n skyux_data_manager_select_column_status_indicator_title: {\n message: 'Select at least one column.',\n },\n },\n};\n\nexport class SkyDataManagerResourcesProvider\n implements SkyLibResourcesProvider\n{\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyDataManagerResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyDataManagerResourcesModule {}\n","import { SkyDataViewStateOptions } from './data-view-state-options';\n\n/**\n * Provides options for defining how data is displayed, such as which columns appear.\n */\nexport class SkyDataViewState {\n /**\n * The IDs of the columns able to be displayed for column-based views. This property is required when utilizing a grid-based view, a column picker, or both.\n */\n public columnIds: string[] = [];\n /**\n * The IDs of the columns displayed for column-based views.\n */\n public displayedColumnIds: string[] = [];\n /**\n * The ID of this view.\n */\n public viewId: string;\n /**\n * An untyped property that tracks any view-specific state information\n * that is relevant to a data manager but that existing properties do not cover.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public additionalData: any;\n\n constructor(data: SkyDataViewStateOptions) {\n this.viewId = data.viewId;\n this.columnIds = data.columnIds || [];\n this.displayedColumnIds = data.displayedColumnIds || [];\n this.additionalData = data.additionalData;\n }\n\n /**\n * Returns the `SkyDataViewStateOptions` for the current view.\n * @returns The `SkyDataViewStateOptions`.\n */\n public getViewStateOptions(): SkyDataViewStateOptions {\n return {\n viewId: this.viewId,\n columnIds: this.columnIds,\n displayedColumnIds: this.displayedColumnIds,\n additionalData: this.additionalData,\n };\n }\n}\n","import { SkyDataManagerFilterData } from './data-manager-filter-data';\nimport { SkyDataManagerSortOption } from './data-manager-sort-option';\nimport { SkyDataManagerStateOptions } from './data-manager-state-options';\nimport { SkyDataViewState } from './data-view-state';\nimport { SkyDataViewStateOptions } from './data-view-state-options';\n\n/**\n * Provides options that control which data to display.\n */\nexport class SkyDataManagerState {\n /**\n * The selected SkyDataManagerSortOption to apply.\n */\n public activeSortOption: SkyDataManagerSortOption | undefined;\n /**\n * An untyped property that tracks any state information that's relevant to a data\n * manager but that the existing properties do not cover.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public additionalData: any;\n /**\n * The state of the filters.\n */\n public filterData: SkyDataManagerFilterData | undefined;\n /**\n * Whether to display only the selected rows or objects. The multiselect toolbar\n * uses this property.\n */\n public onlyShowSelected: boolean | undefined;\n /**\n * The search text to apply.\n */\n public searchText: string | undefined;\n /**\n * The currently selected rows or objects.\n */\n public selectedIds: string[] | undefined;\n /**\n * The states of the individual views.\n */\n public views: SkyDataViewState[] = [];\n\n constructor(data: SkyDataManagerStateOptions) {\n const views =\n data.views && data.views.map((view) => new SkyDataViewState(view));\n\n this.activeSortOption = data.activeSortOption;\n this.additionalData = data.additionalData;\n this.filterData = data.filterData;\n this.onlyShowSelected = data.onlyShowSelected;\n this.selectedIds = data.selectedIds;\n this.searchText = data.searchText;\n this.views = views || [];\n }\n\n /**\n * Returns the `SkyDataManagerStateOptions` for the data manager.\n * @returns The `SkyDataManagerStateOptions` for the data manager.\n */\n public getStateOptions(): SkyDataManagerStateOptions {\n const viewStates: SkyDataViewStateOptions[] = this.views.map((view) => {\n return view.getViewStateOptions();\n });\n\n return {\n activeSortOption: this.activeSortOption,\n additionalData: this.additionalData,\n filterData: this.filterData,\n onlyShowSelected: this.onlyShowSelected,\n searchText: this.searchText,\n selectedIds: this.selectedIds,\n views: viewStates,\n };\n }\n\n /**\n * Returns the `SkyDataViewState` for the specified view.\n * @param viewId The ID for the view.\n * @returns The `SkyDataViewState` for the specified view.\n */\n public getViewStateById(viewId: string): SkyDataViewState | undefined {\n return this.views.find((view) => view.viewId === viewId);\n }\n\n /**\n * Adds a `SkyDataViewState` to a view or updates an existing view.\n * @param viewId The ID for the view.\n * @param view The `SkyDataViewState` option to add or update.\n * @returns The state of the data manager for the specified view.\n */\n public addOrUpdateView(\n viewId: string,\n view: SkyDataViewState\n ): SkyDataManagerState {\n const existingViewIndex = this.views.findIndex((v) => v.viewId === viewId);\n\n if (existingViewIndex !== -1) {\n this.views[existingViewIndex] = view;\n } else {\n this.views.push(view);\n }\n\n return new SkyDataManagerState({\n activeSortOption: this.activeSortOption,\n additionalData: this.additionalData,\n filterData: this.filterData,\n searchText: this.searchText,\n selectedIds: this.selectedIds,\n views: this.views,\n });\n }\n}\n","import { SkyDataManagerState } from './data-manager-state';\n\n/**\n * @internal\n */\nexport class SkyDataManagerStateChange {\n public dataState: SkyDataManagerState;\n public source: string;\n\n constructor(dataState: SkyDataManagerState, source: string) {\n this.dataState = new SkyDataManagerState(dataState.getStateOptions());\n this.source = source;\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { SkyUIConfigService } from '@skyux/core';\n\nimport { BehaviorSubject, Observable, ReplaySubject, Subject } from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\nimport { SkyDataManagerConfig } from './models/data-manager-config';\nimport { SkyDataManagerInitArgs } from './models/data-manager-init-args';\nimport { SkyDataManagerState } from './models/data-manager-state';\nimport { SkyDataManagerStateChange } from './models/data-manager-state-change';\nimport { SkyDataManagerStateOptions } from './models/data-manager-state-options';\nimport { SkyDataManagerStateUpdateFilterArgs } from './models/data-manager-state-update-filter-args';\nimport { SkyDataViewConfig } from './models/data-view-config';\nimport { SkyDataViewState } from './models/data-view-state';\n\n/**\n * The data manager service provides ways for data views, toolbar items, and more to stay up to date\n * with the active view ID, data manager config, registered views and their configs, and data state.\n * There are methods to get current values, update values, and get subscriptions to the changing values.<br/> <br/>\n * Provide this service at the component level for each instance of a data manager. Do not\n * provide it at the module level or in `app-extras`. This allows multiple data\n * managers to be used and self-contained.\n */\n@Injectable()\nexport class SkyDataManagerService implements OnDestroy {\n public viewkeeperClasses = new BehaviorSubject<Record<string, string[]>>({});\n\n readonly #activeViewId = new ReplaySubject<string>(1);\n readonly #dataManagerConfig = new BehaviorSubject<SkyDataManagerConfig>({});\n readonly #views = new BehaviorSubject<SkyDataViewConfig[]>([]);\n readonly #dataStateChange = new ReplaySubject<SkyDataManagerStateChange>(1);\n\n #isInitialized: boolean | undefined;\n #ngUnsubscribe = new Subject<void>();\n #initSource = 'dataManagerServiceInit';\n #uiConfigService: SkyUIConfigService;\n\n constructor(uiConfigService: SkyUIConfigService) {\n this.#uiConfigService = uiConfigService;\n }\n\n public ngOnDestroy(): void {\n this.#activeViewId.complete();\n this.#dataManagerConfig.complete();\n this.#views.complete();\n this.#dataStateChange.complete();\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n /**\n * Initializes the data manager with the given settings and sets `isInitialized` to `true`.\n * This must be called for the data manager to render.\n * @param args The initial active view ID, data manager config, and state to use for the data manager.\n * If a settings key is provided, it checks for a saved data state in the SKY UI config service before using the default data state\n * and saves any state changes to the service.\n */\n public initDataManager(args: SkyDataManagerInitArgs): void {\n if (this.#isInitialized) {\n console.warn('This data manager instance has already been initialized.');\n return;\n }\n\n this.#isInitialized = true;\n\n const defaultDataState = args.defaultDataState;\n const settingsKey = args.settingsKey;\n\n this.updateActiveViewId(args.activeViewId);\n this.updateDataManagerConfig(args.dataManagerConfig);\n\n if (settingsKey) {\n this.#uiConfigService\n .getConfig(settingsKey, defaultDataState.getStateOptions())\n .pipe(take(1))\n .subscribe((config: SkyDataManagerStateOptions) => {\n this.updateDataState(\n new SkyDataManagerState(config),\n this.#initSource\n );\n });\n } else {\n this.updateDataState(defaultDataState, this.#initSource);\n }\n\n if (settingsKey) {\n this.getDataStateUpdates(this.#initSource)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state: SkyDataManagerState) => {\n this.#uiConfigService\n .setConfig(settingsKey, state.getStateOptions())\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {},\n (err) => {\n console.warn('Could not save data manager settings.');\n console.warn(err);\n }\n );\n });\n }\n }\n\n /**\n * Initializes a view within the data manager. This must be called for each view for the views to appear within the data manager.\n * @param viewConfig The SkyDataViewConfig settings for the view being registered.\n */\n public initDataView(viewConfig: SkyDataViewConfig): void {\n const currentViews = this.#views.value;\n\n if (this.getViewById(viewConfig.id)) {\n console.warn(\n `A data manager view with the id ${viewConfig.id} has already been initialized.`\n );\n return;\n }\n\n currentViews.push(viewConfig);\n this.#views.next(currentViews);\n\n // When the initial activeViewId is set there are no views registered. We have to re-emit\n // the activeId so the newly registered view is notified that it is active.\n this.#activeViewId.pipe(take(1)).subscribe((id) => {\n this.#activeViewId.next(id);\n });\n\n this.#dataStateChange\n .pipe(take(1))\n .subscribe((change) => {\n const dataState = change.dataState;\n const currentViewState = dataState.getViewStateById(viewConfig.id);\n\n if (!currentViewState) {\n const newViewState = new SkyDataViewState({ viewId: viewConfig.id });\n\n // Ensure that the view state's available columns match with the view config. Also,\n // add columns to the `displayedColumnIds` as long as they are not `initialHide`\n if (viewConfig.columnOptions) {\n const columnIds = viewConfig.columnOptions.map((columnOptions) => {\n return columnOptions.id;\n });\n const displayedColumnIds = viewConfig.columnOptions\n .filter((columnOption) => {\n return !columnOption.initialHide;\n })\n .map((columnOption) => {\n return columnOption.id;\n });\n\n newViewState.columnIds = columnIds;\n newViewState.displayedColumnIds = displayedColumnIds;\n }\n const newDataState = dataState.addOrUpdateView(\n viewConfig.id,\n newViewState\n );\n\n this.updateDataState(newDataState, this.#initSource);\n } else {\n const currentAvailableColumnIds =\n viewConfig.columnOptions?.map((columnOptions) => {\n return columnOptions.id;\n }) || [];\n\n // Ensure that the view state's available columns match with the view config. Also,\n // add new columns to the `displayedColumnIds` as long as they are not `initialHide`.\n // We only add columns to `displayedColumnsIds` if we had previously tracked\n // `columnIds` to avoid breaking changes.\n if (currentViewState.columnIds.length > 0) {\n let newColumnIds = currentAvailableColumnIds?.filter(\n (id) => currentViewState.columnIds.indexOf(id) < 0\n );\n newColumnIds = newColumnIds?.filter((columnId) => {\n return viewConfig.columnOptions?.find(\n (columnOption) =>\n columnOption.id === columnId && !columnOption.initialHide\n );\n });\n\n // Add the column IDs that now exist to the data manager state both as available\n // and as shown.\n currentViewState.displayedColumnIds =\n currentViewState.displayedColumnIds.concat(newColumnIds);\n }\n // Add the column IDs that now exist to the data manager state both as available\n // and as shown.\n currentViewState.columnIds = currentAvailableColumnIds;\n\n const newDataState = dataState.addOrUpdateView(\n viewConfig.id,\n currentViewState\n );\n\n this.updateDataState(newDataState, this.#initSource);\n }\n })\n .unsubscribe();\n }\n\n /**\n * Returns an observable of data state changes that views and other data manager entities can subscribe to.\n * It excludes updates originating from the provided source. This allows subscribers to only respond to\n * changes they did not create and helps prevent infinite loops of updates and responses.\n * @param sourceId The ID of the entity subscribing to data state updates. This can be any value you choose\n * but should be unique within the data manager instance and should also be used when that entity updates the state.\n */\n public getDataStateUpdates(\n sourceId: string,\n updateFilter?: SkyDataManagerStateUpdateFilterArgs\n ): Observable<SkyDataManagerState> {\n // filter out events from the provided source and emit just the dataState\n if (updateFilter) {\n return this.#dataStateChange.pipe(\n filter((stateChange) => sourceId !== stateChange.source),\n map((stateChange) => stateChange.dataState),\n updateFilter.comparator\n ? distinctUntilChanged(updateFilter.comparator)\n : distinctUntilChanged(\n this.#getDefaultStateComparator(\n updateFilter.properties as (keyof SkyDataManagerStateOptions)[]\n )\n )\n );\n } else {\n return this.#dataStateChange.pipe(\n filter((stateChange) => sourceId !== stateChange.source),\n map((stateChange) => stateChange.dataState)\n );\n }\n }\n\n /**\n * Updates the data state and emits a new value to entities subscribed to data state changes.\n * @param state The new `SkyDataManagerState` value.\n * @param sourceId The ID of the entity updating the state. This can be any value you choose,\n * but should be unique within the data manager instance and should also be used when that entity\n * subscribes to state changes from `getDataStateUpdates`.\n */\n public updateDataState(state: SkyDataManagerState, sourceId: string): void {\n const newState = new SkyDataManagerState(state.getStateOptions());\n const newStateChange = new SkyDataManagerStateChange(newState, sourceId);\n\n this.#dataStateChange.next(newStateChange);\n }\n\n /**\n * Returns the current `SkyDataManagerConfig`.\n */\n public getCurrentDataManagerConfig(): SkyDataManagerConfig {\n return this.#dataManagerConfig.value;\n }\n\n /**\n * Returns an observable of data manager config changes that views and other data manager entities can subscribe to.\n */\n public getDataManagerConfigUpdates(): Observable<SkyDataManagerConfig> {\n return this.#dataManagerConfig;\n }\n\n /**\n * Updates the data manager config and emits a new value to entities subscribed to data config changes.\n * @param value The new `SkyDataManagerConfig` value.\n */\n public updateDataManagerConfig(value: SkyDataManagerConfig): void {\n this.#dataManagerConfig.next(value);\n }\n\n /**\n * Returns an observable of data view config changes that views and other data manager entities can subscribe to.\n */\n public getDataViewsUpdates(): Observable<SkyDataViewConfig[]> {\n return this.#views;\n }\n\n /**\n * Returns an observable of the active view ID that views and other data manager entities can subscribe to.\n */\n public getActiveViewIdUpdates(): Observable<string> {\n return this.#activeViewId;\n }\n\n /**\n * Updates the active view ID. The data manager changes the displayed view.\n * @param id The new active view ID.\n */\n public updateActiveViewId(id: string): void {\n this.#activeViewId.next(id);\n }\n\n /**\n * Returns the `SkyDataViewConfig` for the given view ID.\n * @param viewId The ID of the view config to get.\n */\n public getViewById(viewId: string): SkyDataViewConfig | undefined {\n const currentViews: SkyDataViewConfig[] = this.#views.value;\n const viewConfig: SkyDataViewConfig | undefined = currentViews.find(\n (view) => view.id === viewId\n );\n\n return viewConfig;\n }\n\n /**\n * Updates the given view config. The registered view with the same ID is updated to the\n * provided config, so include all properties regardless of whether they changed. If the\n * view was not initialized already, no update happens.\n * @param view The new `SkyDataViewConfig` containing all properties.\n */\n public updateViewConfig(view: SkyDataViewConfig): void {\n const currentViews: SkyDataViewConfig[] = this.#views.value;\n const existingViewIndex = currentViews.findIndex(\n (currentView) => currentView.id === view.id\n );\n\n if (existingViewIndex === -1) {\n console.error('A view with the id {id} does not exist.', view.id);\n } else {\n currentViews[existingViewIndex] = view;\n this.#views.next(currentViews);\n }\n }\n\n /**\n * @internal\n */\n public setViewkeeperClasses(viewId: string, classes: string[]): void {\n const viewkeeperClasses = this.viewkeeperClasses.value;\n viewkeeperClasses[viewId] = classes;\n\n this.viewkeeperClasses.next(viewkeeperClasses);\n }\n\n #filterDataStateProperties(\n state: SkyDataManagerState,\n properties: (keyof SkyDataManagerStateOptions)[] | undefined\n ): Record<string, unknown> {\n const stateProperties = state.getStateOptions();\n const filteredStateProperties: Record<string, unknown> = {};\n\n if (properties) {\n for (const property of properties) {\n if (property in stateProperties) {\n filteredStateProperties[property] = stateProperties[property];\n }\n }\n }\n\n return filteredStateProperties;\n }\n\n #getDefaultStateComparator(\n properties: (keyof SkyDataManagerStateOptions)[] | undefined\n ): (state1: SkyDataManagerState, state2: SkyDataManagerState) => boolean {\n return (\n state1: SkyDataManagerState,\n state2: SkyDataManagerState\n ): boolean => {\n const filteredState1 = this.#filterDataStateProperties(\n state1,\n properties\n );\n const filteredState2 = this.#filterDataStateProperties(\n state2,\n properties\n );\n return JSON.stringify(filteredState1) === JSON.stringify(filteredState2);\n };\n }\n}\n","/**\n * These options specify the sorting strategy applied to columns when `columnPickerEnabled` is enabled.\n */\nexport enum SkyDataManagerColumnPickerSortStrategy {\n /**\n * No sorting is applied to the columns.\n */\n None = 'none',\n /**\n * If `sortEnabled` is set to `true`, then the selected columns are displayed before the unselected columns. Unselected columns are sorted alphabetically.\n * If `sortEnabled` is set to `false`, then the columns are displayed in the order specified by `columnOptions`.\n */\n SelectedThenAlphabetical = 'selectedThenAlphabetical',\n}\n","import { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerColumnPickerSortStrategy } from '../models/data-manager-column-picker-sort-strategy';\n\nexport class SkyDataManagerColumnPickerContext {\n constructor(\n public columnOptions: SkyDataManagerColumnPickerOption[],\n public displayedColumnIds: string[],\n public columnPickerSortStrategy: SkyDataManagerColumnPickerSortStrategy = SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {}\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyBackToTopMessage, SkyBackToTopMessageType } from '@skyux/layout';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from './data-manager.service';\n\nconst VIEWKEEPER_CLASSES_DEFAULT = ['.sky-data-manager-toolbar'];\n\n/**\n * The top-level data manager component. Provide `SkyDataManagerService` at this level.\n */\n@Component({\n selector: 'sky-data-manager',\n templateUrl: './data-manager.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerComponent implements OnDestroy, OnInit {\n public get currentViewkeeperClasses(): string[] {\n return this.#_currentViewkeeperClasses;\n }\n\n public set currentViewkeeperClasses(value: string[] | undefined) {\n this.#_currentViewkeeperClasses = [\n ...VIEWKEEPER_CLASSES_DEFAULT,\n ...(value || []),\n ];\n this.#changeDetection.markForCheck();\n }\n\n public get isInitialized(): boolean {\n return this.#_isInitialized;\n }\n\n public set isInitialized(value: boolean) {\n this.#_isInitialized = value;\n this.#changeDetection.markForCheck();\n }\n\n public backToTopController = new Subject<SkyBackToTopMessage>();\n\n public backToTopOptions = {\n buttonHidden: true,\n };\n\n #activeViewId: string | undefined;\n #allViewkeeperClasses: Record<string, string[]> = {};\n #ngUnsubscribe = new Subject<void>();\n #sourceId = 'dataManagerComponent';\n #changeDetection: ChangeDetectorRef;\n #dataManagerService: SkyDataManagerService;\n\n #_isInitialized = false;\n #_currentViewkeeperClasses = VIEWKEEPER_CLASSES_DEFAULT;\n\n constructor(\n changeDetection: ChangeDetectorRef,\n dataManagerService: SkyDataManagerService\n ) {\n this.#changeDetection = changeDetection;\n this.#dataManagerService = dataManagerService;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getDataStateUpdates(this.#sourceId)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => (this.isInitialized = true));\n\n this.#dataManagerService.viewkeeperClasses\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((classes) => {\n this.#allViewkeeperClasses = classes;\n this.currentViewkeeperClasses = this.#activeViewId\n ? classes[this.#activeViewId]\n : undefined;\n });\n\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.#activeViewId = activeViewId;\n this.backToTopController.next({\n type: SkyBackToTopMessageType.BackToTop,\n });\n this.currentViewkeeperClasses =\n this.#allViewkeeperClasses[this.#activeViewId];\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<div\n *ngIf=\"isInitialized\"\n class=\"sky-data-manager\"\n [skyBackToTop]=\"backToTopOptions\"\n [skyBackToTopMessageStream]=\"backToTopController\"\n [skyViewkeeper]=\"currentViewkeeperClasses\"\n #dataManager\n>\n <ng-content></ng-content>\n</div>\n","import { SkyDataManagerFilterData } from './models/data-manager-filter-data';\n\n// TODO: In a future breaking change convert this to an interface\n/**\n * Sets the state of the filters.\n */\nexport class SkyDataManagerFilterModalContext {\n /**\n * Sets the state of the filters.\n */\n public filterData: SkyDataManagerFilterData | undefined;\n}\n","import { Injectable } from '@angular/core';\n\nimport type { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker.component';\n\n/**\n * Service that provides the column picker component type so it can be dynamically\n * created in the toolbar component. This avoids a circular reference between column\n * picker and toolbar.\n * https://angular.io/errors/NG3003\n */\n@Injectable()\nexport abstract class SkyDataManagerColumnPickerService {\n public abstract getComponentType(): typeof SkyDataManagerColumnPickerComponent;\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyCheckboxChange } from '@skyux/forms';\nimport {\n SkyModalCloseArgs,\n SkyModalConfigurationInterface,\n SkyModalService,\n} from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerColumnPickerContext } from '../data-manager-column-picker/data-manager-column-picker-context';\nimport { SkyDataManagerColumnPickerService } from '../data-manager-column-picker/data-manager-column-picker.service';\nimport { SkyDataManagerFilterModalContext } from '../data-manager-filter-context';\nimport { SkyDataManagerService } from '../data-manager.service';\nimport { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerConfig } from '../models/data-manager-config';\nimport { SkyDataManagerSortOption } from '../models/data-manager-sort-option';\nimport { SkyDataManagerState } from '../models/data-manager-state';\nimport { SkyDataViewConfig } from '../models/data-view-config';\n\n/**\n * Renders a `sky-toolbar` with the contents specified by the active view's `SkyDataViewConfig`\n * and the `SkyDataManagerToolbarLeftItemsComponent`, `SkyDataManagerToolbarRightItemsComponent`,\n * and `SkyDataManagerToolbarSectionComponent` wrappers.\n */\n@Component({\n selector: 'sky-data-manager-toolbar',\n templateUrl: './data-manager-toolbar.component.html',\n styleUrls: ['./data-manager-toolbar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerToolbarComponent implements OnDestroy, OnInit {\n public get activeView(): SkyDataViewConfig | undefined {\n return this.#_activeView;\n }\n\n public set activeView(value: SkyDataViewConfig | undefined) {\n this.#_activeView = value;\n this.#changeDetector.markForCheck();\n }\n\n public get dataManagerConfig(): SkyDataManagerConfig | undefined {\n return this.#_dataManagerConfig;\n }\n\n public set dataManagerConfig(value: SkyDataManagerConfig | undefined) {\n this.#_dataManagerConfig = value;\n this.#changeDetector.markForCheck();\n }\n\n public get dataState(): SkyDataManagerState | undefined {\n return this.#_dataState;\n }\n\n public set dataState(value: SkyDataManagerState | undefined) {\n this.#_dataState = value;\n if (value) {\n this.#dataManagerService.updateDataState(value, this.#_source);\n }\n }\n\n public get views(): SkyDataViewConfig[] {\n return this.#_views;\n }\n\n public set views(value: SkyDataViewConfig[]) {\n this.#_views = value;\n this.#changeDetector.markForCheck();\n }\n\n public onlyShowSelected: boolean | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n #changeDetector: ChangeDetectorRef;\n #dataManagerService: SkyDataManagerService;\n #modalService: SkyModalService;\n #columnPickerService: SkyDataManagerColumnPickerService;\n\n // the source to provide for data state changes\n #_source = 'toolbar';\n #_activeView: SkyDataViewConfig | undefined;\n #_dataManagerConfig: SkyDataManagerConfig | undefined;\n #_dataState: SkyDataManagerState | undefined;\n #_views: SkyDataViewConfig[] = [];\n\n constructor(\n changeDetector: ChangeDetectorRef,\n dataManagerService: SkyDataManagerService,\n modalService: SkyModalService,\n columnPickerService: SkyDataManagerColumnPickerService\n ) {\n this.#changeDetector = changeDetector;\n this.#dataManagerService = dataManagerService;\n this.#modalService = modalService;\n this.#columnPickerService = columnPickerService;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n /* istanbul ignore else */\n if (activeViewId) {\n this.activeView = this.#dataManagerService.getViewById(activeViewId);\n this.#changeDetector.markForCheck();\n }\n });\n\n this.#dataManagerService\n .getDataViewsUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((views) => {\n this.views = views;\n if (this.activeView) {\n this.activeView = this.#dataManagerService.getViewById(\n this.activeView.id\n );\n }\n this.#changeDetector.markForCheck();\n });\n\n this.#dataManagerService\n .getDataStateUpdates(this.#_source)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((dataState) => {\n this.#_dataState = dataState;\n this.onlyShowSelected = dataState.onlyShowSelected;\n this.#changeDetector.markForCheck();\n });\n\n this.#dataManagerService\n .getDataManagerConfigUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((config) => {\n this.dataManagerConfig = config;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public sortSelected(sortOption: SkyDataManagerSortOption): void {\n if (this.dataState) {\n this.dataState.activeSortOption = sortOption;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n\n public onViewChange(viewId: string): void {\n this.#dataManagerService.updateActiveViewId(viewId);\n }\n\n public searchApplied(text: string): void {\n if (this.dataState) {\n this.dataState.searchText = text;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n\n public filterButtonClicked(): void {\n const context = new SkyDataManagerFilterModalContext();\n const filterModal =\n this.dataManagerConfig && this.dataManagerConfig.filterModalComponent;\n\n context.filterData = this.dataState?.filterData;\n\n const options: SkyModalConfigurationInterface = {\n providers: [\n { provide: SkyDataManagerFilterModalContext, useValue: context },\n ],\n size: 'large',\n };\n\n if (filterModal) {\n const modalInstance = this.#modalService.open(filterModal, options);\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (this.dataState && result.reason === 'save') {\n this.dataState.filterData = result.data;\n this.#dataManagerService.updateDataState(\n this.dataState,\n this.#_source\n );\n }\n });\n }\n }\n\n public openColumnPicker(): void {\n if (this.dataState && this.activeView && this.activeView.columnOptions) {\n const viewState = this.dataState.getViewStateById(this.activeView.id);\n if (viewState) {\n const context = new SkyDataManagerColumnPickerContext(\n this.activeView.columnOptions,\n viewState.displayedColumnIds\n );\n\n if (this.activeView.columnPickerSortStrategy) {\n context.columnPickerSortStrategy =\n this.activeView.columnPickerSortStrategy;\n }\n\n const options: SkyModalConfigurationInterface = {\n providers: [\n { provide: SkyDataManagerColumnPickerContext, useValue: context },\n ],\n };\n\n const modalInstance = this.#modalService.open(\n this.#columnPickerService.getComponentType(),\n options\n );\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (result.reason === 'save') {\n const displayedColumnIds = result.data.map(\n (col: SkyDataManagerColumnPickerOption) => col.id\n );\n\n viewState.displayedColumnIds = displayedColumnIds;\n if (this.dataState && this.activeView) {\n this.dataState = this.dataState.addOrUpdateView(\n this.activeView.id,\n viewState\n );\n }\n }\n });\n }\n }\n }\n\n public selectAll(): void {\n /* istanbul ignore else */\n if (this.activeView?.onSelectAllClick) {\n this.activeView.onSelectAllClick();\n }\n }\n\n public clearAll(): void {\n /* istanbul ignore else */\n if (this.activeView?.onClearAllClick) {\n this.activeView.onClearAllClick();\n }\n }\n\n public onOnlyShowSelected(event: SkyCheckboxChange): void {\n if (this.dataState) {\n this.dataState.onlyShowSelected = !!event.checked;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n}\n","<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"!!(dataState?.activeSortOption?.id === item.id)\"\n (itemSelect)=\"sortSelected(item)\"\n >\n {{ item.label }}\n </sky-sort-item>\n </sky-sort>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.columnPickerEnabled\">\n <button\n class=\"sky-btn sky-btn-default sky-col-picker-btn\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n [attr.title]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n (click)=\"openColumnPicker()\"\n >\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_data_manager_columns_button_title' | skyLibResources }}\n </span>\n </button>\n </sky-toolbar-item>\n\n <ng-content select=\"sky-data-manager-toolbar-left-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.searchEnabled\">\n <sky-search\n [expandMode]=\"activeView?.searchExpandMode\"\n [placeholderText]=\"activeView?.searchPlaceholderText\"\n [searchText]=\"dataState?.searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n\n <sky-toolbar-view-actions>\n <ng-content select=\"sky-data-manager-toolbar-right-item\"></ng-content>\n <sky-radio-group\n *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n [(ngModel)]=\"activeView.id\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio\n *ngFor=\"let view of views\"\n [attr.aria-label]=\"view.name\"\n [icon]=\"view.icon\"\n [value]=\"view.id\"\n [label]=\"view.name\"\n (change)=\"onViewChange(view.id)\"\n >\n </sky-radio>\n </sky-radio-group>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-section\"></ng-content>\n </sky-toolbar>\n\n <sky-toolbar\n *ngIf=\"activeView?.multiselectToolbarEnabled\"\n class=\"sky-data-manager-multiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{ 'skyux_data_manager_select_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{ 'skyux_data_manager_clear_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [checked]=\"onlyShowSelected\"\n (change)=\"onOnlyShowSelected($event)\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_data_manager_show_selected_option_title' | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from './data-manager.service';\n\n/**\n * A data view is rendered within a data manager component.\n * It can subscribe to data state changes from `SkyDataManagerService` and apply the filters,\n * search text, and more to the data it displays.\n */\n@Component({\n selector: 'sky-data-view',\n templateUrl: './data-view.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataViewComponent implements OnDestroy, OnInit {\n /**\n * The configuration for the view. See the `SkyDataViewConfig` interface.\n * @required\n */\n @Input()\n public viewId: string | undefined;\n\n public get isActive(): boolean {\n return this.#_isActive;\n }\n\n public set isActive(value: boolean) {\n this.#_isActive = value;\n this.#changeDetector.markForCheck();\n }\n\n #_isActive = false;\n\n #ngUnsubscribe = new Subject<void>();\n #dataManagerService: SkyDataManagerService;\n #changeDetector: ChangeDetectorRef;\n\n constructor(\n dataManagerService: SkyDataManagerService,\n changeDetector: ChangeDetectorRef\n ) {\n this.#dataManagerService = dataManagerService;\n this.#changeDetector = changeDetector;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.isActive = this.viewId === activeViewId;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<ng-container *ngIf=\"isActive\">\n <ng-content></ng-content>\n</ng-container>\n","import {\n ChangeDetectionStrategy,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyModalInstance } from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from '../data-manager.service';\nimport { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerColumnPickerSortStrategy } from '../models/data-manager-column-picker-sort-strategy';\nimport { SkyDataManagerState } from '../models/data-manager-state';\nimport { SkyDataViewConfig } from '../models/data-view-config';\n\nimport { SkyDataManagerColumnPickerContext } from './data-manager-column-picker-context';\n\n/**\n * @internal\n */\ninterface Column extends SkyDataManagerColumnPickerOption {\n isSelected: boolean;\n}\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-data-manager-column-picker',\n templateUrl: './data-manager-column-picker.component.html',\n styleUrls: ['./data-manager-column-picker.component.scss'],\n providers: [SkyDataManagerService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerColumnPickerComponent implements OnDestroy, OnInit {\n public get dataState(): SkyDataManagerState {\n return this.#_dataState;\n }\n\n public set dataState(value: SkyDataManagerState) {\n this.#_dataState = value;\n this.updateData();\n }\n\n public columnData: Column[] = [];\n public displayedColumnData: Column[] = [];\n public viewConfig: SkyDataViewConfig = {\n id: 'columnPicker',\n name: 'Column Picker',\n searchEnabled: true,\n searchExpandMode: 'fit',\n multiselectToolbarEnabled: true,\n onSelectAllClick: this.selectAll.bind(this),\n onClearAllClick: this.clearAll.bind(this),\n };\n\n public isAnyDisplayedColumnSelected = false;\n\n #ngUnsubscribe = new Subject<void>();\n\n #_dataState = new SkyDataManagerState({});\n\n constructor(\n public context: SkyDataManagerColumnPickerContext,\n public dataManagerService: SkyDataManagerService,\n public instance: SkyModalInstance\n ) {}\n\n public ngOnInit(): void {\n this.dataManagerService.initDataManager({\n activeViewId: this.viewConfig.id,\n dataManagerConfig: {},\n defaultDataState: this.dataState,\n });\n this.dataManagerService.initDataView(this.viewConfig);\n\n this.columnData = this.#formatColumnOptions();\n\n this.dataManagerService\n .getDataStateUpdates('columnPicker')\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state) => {\n this.dataState = state;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public updateData(): void {\n this.displayedColumnData = this.searchColumns(\n this.columnData.filter((col) => !col.alwaysDisplayed)\n );\n\n if (this.dataState.onlyShowSelected) {\n this.displayedColumnData = this.displayedColumnData.filter(\n (col) => col.isSelected\n );\n }\n\n this.isAnyDisplayedColumnSelected = this.displayedColumnData.some(\n (col) => col.isSelected\n );\n }\n\n public searchColumns(columns: Column[]): Column[] {\n let searchedColumns = columns;\n const searchText =\n this.dataState && this.dataState.searchText?.toUpperCase();\n\n if (searchText) {\n searchedColumns = columns.filter((item) => {\n for (const property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n (property === 'label' || property === 'description')\n ) {\n const propertyText = item[property]?.toUpperCase();\n if (propertyText && propertyText.indexOf(searchText) > -1) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n return searchedColumns;\n }\n\n public selectAll(): void {\n this.displayedColumnData.forEach((column) => (column.isSelected = true));\n this.updateData();\n }\n\n public clearAll(): void {\n this.displayedColumnData.forEach((column) => (column.isSelected = false));\n this.updateData();\n }\n\n public onIsSelectedChange(): void {\n this.updateData();\n }\n\n public cancelChanges(): void {\n this.instance.cancel();\n }\n\n public isSelected(id: string): boolean {\n return (\n this.context.displayedColumnIds.findIndex((colId) => colId === id) !== -1\n );\n }\n\n public applyChanges(): void {\n this.instance.save(\n this.columnData.filter((col) => col.isSelected || col.alwaysDisplayed)\n );\n }\n\n #formatColumnOptions(): Column[] {\n const allColumnOptions = this.context.columnOptions;\n const visibleColumnIds = this.context.displayedColumnIds;\n let formattedColumnOptions: Column[] = [];\n const unselectedColumnOptions: Column[] = [];\n\n for (const columnOption of allColumnOptions) {\n // format the column with the properties the column picker needs\n const colIndex = visibleColumnIds.indexOf(columnOption.id);\n const formattedColumn: Column = {\n alwaysDisplayed: columnOption.alwaysDisplayed,\n id: columnOption.id,\n label: columnOption.label,\n description: columnOption.description,\n isSelected: colIndex !== -1,\n };\n\n // if column picker sorting is currently enabled sort columns by order displayed then alphabetical\n // else display column in order they were specified in the columnOptions\n if (\n this.context.columnPickerSortStrategy ===\n SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {\n if (formattedColumn.isSelected) {\n formattedColumnOptions[colIndex] = formattedColumn;\n } else {\n unselectedColumnOptions.push(formattedColumn);\n }\n } else {\n formattedColumnOptions.push(formattedColumn);\n }\n }\n\n // if column picker sorting is enabled, sort the columns that are not currently displayed\n // and add them after the currently displayed options\n if (\n this.context.columnPickerSortStrategy ===\n SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {\n unselectedColumnOptions.sort((col1, col2) =>\n col1.label.localeCompare(col2.label)\n );\n formattedColumnOptions = formattedColumnOptions.concat(\n unselectedColumnOptions\n );\n }\n\n return formattedColumnOptions;\n }\n}\n","<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { Injectable } from '@angular/core';\n\nimport { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker.component';\n\n@Injectable()\nexport class SkyDataManagerColumnPickerImplService {\n public getComponentType(): typeof SkyDataManagerColumnPickerComponent {\n return SkyDataManagerColumnPickerComponent;\n }\n}\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered after the standard toolbar actions and before the search box. Each item should be\n * wrapped in its own `sky-data-manager-toolbar-left-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-left-item',\n templateUrl: './data-manager-toolbar-left-item.component.html',\n})\nexport class SkyDataManagerToolbarLeftItemComponent {}\n","<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered as the first items in the toolbar and should be standard actions. Each item should be\n * wrapped in its own `sky-data-manager-toolbar-primary-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-primary-item',\n templateUrl: './data-manager-toolbar-primary-item.component.html',\n})\nexport class SkyDataManagerToolbarPrimaryItemComponent {}\n","<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered in `sky-toolbar-view-actions` on the right side of the toolbar and before the view\n * switcher icons (if present). Each item should be wrapped in its own\n * `sky-data-manager-toolbar-right-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-right-item',\n templateUrl: './data-manager-toolbar-right-item.component.html',\n})\nexport class SkyDataManagerToolbarRightItemComponent {}\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for items to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered in an additional toolbar row beneath the primary toolbar and above the multiselect\n * toolbar (if present).\n */\n@Component({\n selector: 'sky-data-manager-toolbar-section',\n templateUrl: './data-manager-toolbar-section.component.html',\n})\nexport class SkyDataManagerToolbarSectionComponent {}\n","<sky-toolbar-section>\n <ng-content></ng-content>\n</sky-toolbar-section>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyViewkeeperModule } from '@skyux/core';\nimport { SkyCheckboxModule, SkyRadioModule } from '@skyux/forms';\nimport { SkyIconModule, SkyStatusIndicatorModule } from '@skyux/indicators';\nimport { SkyBackToTopModule, SkyToolbarModule } from '@skyux/layout';\nimport {\n SkyFilterModule,\n SkyRepeaterModule,\n SkySortModule,\n} from '@skyux/lists';\nimport { SkySearchModule } from '@skyux/lookup';\nimport { SkyModalModule } from '@skyux/modals';\n\nimport { SkyDataManagerResourcesModule } from '../shared/sky-data-manager-resources.module';\n\nimport { SkyDataManagerColumnPickerImplService } from './data-manager-column-picker/data-manager-column-picker-impl.service';\nimport { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker/data-manager-column-picker.component';\nimport { SkyDataManagerColumnPickerService } from './data-manager-column-picker/data-manager-column-picker.service';\nimport { SkyDataManagerToolbarLeftItemComponent } from './data-manager-toolbar/data-manager-toolbar-left-item.component';\nimport { SkyDataManagerToolbarPrimaryItemComponent } from './data-manager-toolbar/data-manager-toolbar-primary-item.component';\nimport { SkyDataManagerToolbarRightItemComponent } from './data-manager-toolbar/data-manager-toolbar-right-item.component';\nimport { SkyDataManagerToolbarSectionComponent } from './data-manager-toolbar/data-manager-toolbar-section.component';\nimport { SkyDataManagerToolbarComponent } from './data-manager-toolbar/data-manager-toolbar.component';\nimport { SkyDataManagerComponent } from './data-manager.component';\nimport { SkyDataViewComponent } from './data-view.component';\n\n@NgModule({\n declarations: [\n SkyDataManagerColumnPickerComponent,\n SkyDataManagerComponent,\n SkyDataManagerToolbarLeftItemComponent,\n SkyDataManagerToolbarPrimaryItemComponent,\n SkyDataManagerToolbarRightItemComponent,\n SkyDataManagerToolbarSectionComponent,\n SkyDataManagerToolbarComponent,\n SkyDataViewComponent,\n ],\n imports: [\n CommonModule,\n FormsModule,\n SkyBackToTopModule,\n SkyCheckboxModule,\n SkyDataManagerResourcesModule,\n SkyFilterModule,\n SkyIconModule,\n SkyModalModule,\n SkyRadioModule,\n SkyRepeaterModule,\n SkySearchModule,\n SkyStatusIndicatorModule,\n SkySortModule,\n SkyToolbarModule,\n SkyViewkeeperModule,\n ],\n exports: [\n SkyDataManagerColumnPickerComponent,\n SkyDataManagerComponent,\n SkyDataManagerToolbarLeftItemComponent,\n SkyDataManagerToolbarPrimaryItemComponent,\n SkyDataManagerToolbarRightItemComponent,\n SkyDataManagerToolbarSectionComponent,\n SkyDataManagerToolbarComponent,\n SkyDataViewComponent,\n ],\n providers: [\n {\n provide: SkyDataManagerColumnPickerService,\n useClass: SkyDataManagerColumnPickerImplService,\n },\n ],\n})\nexport class SkyDataManagerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyDataManagerService","i2","i3","i4","i3.SkyDataManagerColumnPickerService","i7","i1.SkyDataManagerColumnPickerContext","i2.SkyDataManagerService","i5","i6","i7.SkyDataManagerComponent","i8.SkyDataManagerToolbarComponent","i9.SkyDataViewComponent","i10","i1"],"mappings":"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"}
|
@@ -952,7 +952,7 @@ _SkyDataManagerColumnPickerComponent_ngUnsubscribe = new WeakMap(), _SkyDataMana
|
|
952
952
|
return formattedColumnOptions;
|
953
953
|
};
|
954
954
|
SkyDataManagerColumnPickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDataManagerColumnPickerComponent, deps: [{ token: SkyDataManagerColumnPickerContext }, { token: SkyDataManagerService }, { token: i3.SkyModalInstance }], target: i0.ɵɵFactoryTarget.Component });
|
955
|
-
SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody", "ariaDescribedBy", "ariaLabelledBy"] }, { kind: "component", type: i3.λ2, selector: "sky-modal-content" }, { kind: "component", type: i3.λ3, selector: "sky-modal-footer" }, { kind: "component", type: i3.λ4, selector: "sky-modal-header" }, { kind: "component", type: i5$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { kind: "component", type: i5$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { kind: "component", type: i5$1.λ8, selector: "sky-repeater-item-content" }, { kind: "component", type: i5$1.λ12, selector: "sky-repeater-item-title" }, { kind: "component", type: i8.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }, { kind: "component", type: SkyDataManagerComponent, selector: "sky-data-manager" }, { kind: "component", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { kind: "component", type: SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId"] }, { kind: "pipe", type: i11.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
955
|
+
SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.λ5, selector: "sky-modal", inputs: ["formErrors", "ariaRole", "tiledBody", "ariaDescribedBy", "ariaLabelledBy"] }, { kind: "component", type: i3.λ2, selector: "sky-modal-content" }, { kind: "component", type: i3.λ3, selector: "sky-modal-footer" }, { kind: "component", type: i3.λ4, selector: "sky-modal-header" }, { kind: "component", type: i5$1.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { kind: "component", type: i5$1.λ10, selector: "sky-repeater-item", inputs: ["disabled", "itemName", "inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { kind: "component", type: i5$1.λ8, selector: "sky-repeater-item-content" }, { kind: "component", type: i5$1.λ12, selector: "sky-repeater-item-title" }, { kind: "component", type: i8.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }, { kind: "component", type: SkyDataManagerComponent, selector: "sky-data-manager" }, { kind: "component", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { kind: "component", type: SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId"] }, { kind: "pipe", type: i11.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
956
956
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDataManagerColumnPickerComponent, decorators: [{
|
957
957
|
type: Component,
|
958
958
|
args: [{ selector: 'sky-data-manager-column-picker', providers: [SkyDataManagerService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}.sky-data-manager-column-picker-footer-stacked-indicator{margin:0 5px 10px 0}\n"] }]
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"skyux-data-manager.mjs","sources":["../../../../../libs/components/data-manager/src/lib/modules/shared/sky-data-manager-resources.module.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-view-state.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-state.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-state-change.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-column-picker-sort-strategy.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker-context.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-filter-context.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-view.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-view.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker-impl.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-left-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-left-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-primary-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-primary-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-right-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-right-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-section.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-section.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.module.ts","../../../../../libs/components/data-manager/src/skyux-data-manager.ts"],"sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-data-manager' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_data_manager_column_picker_title: {\n message: 'Choose columns to show in the list',\n },\n skyux_data_manager_apply_changes_button_title: { message: 'Apply changes' },\n skyux_data_manager_cancel_button_title: { message: 'Cancel' },\n skyux_data_manager_select_all_button_title: { message: 'Select all' },\n skyux_data_manager_clear_all_button_title: { message: 'Clear all' },\n skyux_data_manager_show_selected_option_title: {\n message: 'Show only selected items',\n },\n skyux_data_manager_columns_button_title: { message: 'Columns' },\n skyux_data_manager_select_column_status_indicator_title: {\n message: 'Select at least one column.',\n },\n },\n};\n\nexport class SkyDataManagerResourcesProvider\n implements SkyLibResourcesProvider\n{\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyDataManagerResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyDataManagerResourcesModule {}\n","import { SkyDataViewStateOptions } from './data-view-state-options';\n\n/**\n * Provides options for defining how data is displayed, such as which columns appear.\n */\nexport class SkyDataViewState {\n /**\n * The IDs of the columns able to be displayed for column-based views. This property is required when utilizing a grid-based view, a column picker, or both.\n */\n public columnIds: string[] = [];\n /**\n * The IDs of the columns displayed for column-based views.\n */\n public displayedColumnIds: string[] = [];\n /**\n * The ID of this view.\n */\n public viewId: string;\n /**\n * An untyped property that tracks any view-specific state information\n * that is relevant to a data manager but that existing properties do not cover.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public additionalData: any;\n\n constructor(data: SkyDataViewStateOptions) {\n this.viewId = data.viewId;\n this.columnIds = data.columnIds || [];\n this.displayedColumnIds = data.displayedColumnIds || [];\n this.additionalData = data.additionalData;\n }\n\n /**\n * Returns the `SkyDataViewStateOptions` for the current view.\n * @returns The `SkyDataViewStateOptions`.\n */\n public getViewStateOptions(): SkyDataViewStateOptions {\n return {\n viewId: this.viewId,\n columnIds: this.columnIds,\n displayedColumnIds: this.displayedColumnIds,\n additionalData: this.additionalData,\n };\n }\n}\n","import { SkyDataManagerFilterData } from './data-manager-filter-data';\nimport { SkyDataManagerSortOption } from './data-manager-sort-option';\nimport { SkyDataManagerStateOptions } from './data-manager-state-options';\nimport { SkyDataViewState } from './data-view-state';\nimport { SkyDataViewStateOptions } from './data-view-state-options';\n\n/**\n * Provides options that control which data to display.\n */\nexport class SkyDataManagerState {\n /**\n * The selected SkyDataManagerSortOption to apply.\n */\n public activeSortOption: SkyDataManagerSortOption | undefined;\n /**\n * An untyped property that tracks any state information that's relevant to a data\n * manager but that the existing properties do not cover.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public additionalData: any;\n /**\n * The state of the filters.\n */\n public filterData: SkyDataManagerFilterData | undefined;\n /**\n * Whether to display only the selected rows or objects. The multiselect toolbar\n * uses this property.\n */\n public onlyShowSelected: boolean | undefined;\n /**\n * The search text to apply.\n */\n public searchText: string | undefined;\n /**\n * The currently selected rows or objects.\n */\n public selectedIds: string[] | undefined;\n /**\n * The states of the individual views.\n */\n public views: SkyDataViewState[] = [];\n\n constructor(data: SkyDataManagerStateOptions) {\n const views =\n data.views && data.views.map((view) => new SkyDataViewState(view));\n\n this.activeSortOption = data.activeSortOption;\n this.additionalData = data.additionalData;\n this.filterData = data.filterData;\n this.onlyShowSelected = data.onlyShowSelected;\n this.selectedIds = data.selectedIds;\n this.searchText = data.searchText;\n this.views = views || [];\n }\n\n /**\n * Returns the `SkyDataManagerStateOptions` for the data manager.\n * @returns The `SkyDataManagerStateOptions` for the data manager.\n */\n public getStateOptions(): SkyDataManagerStateOptions {\n const viewStates: SkyDataViewStateOptions[] = this.views.map((view) => {\n return view.getViewStateOptions();\n });\n\n return {\n activeSortOption: this.activeSortOption,\n additionalData: this.additionalData,\n filterData: this.filterData,\n onlyShowSelected: this.onlyShowSelected,\n searchText: this.searchText,\n selectedIds: this.selectedIds,\n views: viewStates,\n };\n }\n\n /**\n * Returns the `SkyDataViewState` for the specified view.\n * @param viewId The ID for the view.\n * @returns The `SkyDataViewState` for the specified view.\n */\n public getViewStateById(viewId: string): SkyDataViewState | undefined {\n return this.views.find((view) => view.viewId === viewId);\n }\n\n /**\n * Adds a `SkyDataViewState` to a view or updates an existing view.\n * @param viewId The ID for the view.\n * @param view The `SkyDataViewState` option to add or update.\n * @returns The state of the data manager for the specified view.\n */\n public addOrUpdateView(\n viewId: string,\n view: SkyDataViewState\n ): SkyDataManagerState {\n const existingViewIndex = this.views.findIndex((v) => v.viewId === viewId);\n\n if (existingViewIndex !== -1) {\n this.views[existingViewIndex] = view;\n } else {\n this.views.push(view);\n }\n\n return new SkyDataManagerState({\n activeSortOption: this.activeSortOption,\n additionalData: this.additionalData,\n filterData: this.filterData,\n searchText: this.searchText,\n selectedIds: this.selectedIds,\n views: this.views,\n });\n }\n}\n","import { SkyDataManagerState } from './data-manager-state';\n\n/**\n * @internal\n */\nexport class SkyDataManagerStateChange {\n public dataState: SkyDataManagerState;\n public source: string;\n\n constructor(dataState: SkyDataManagerState, source: string) {\n this.dataState = new SkyDataManagerState(dataState.getStateOptions());\n this.source = source;\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { SkyUIConfigService } from '@skyux/core';\n\nimport { BehaviorSubject, Observable, ReplaySubject, Subject } from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\nimport { SkyDataManagerConfig } from './models/data-manager-config';\nimport { SkyDataManagerInitArgs } from './models/data-manager-init-args';\nimport { SkyDataManagerState } from './models/data-manager-state';\nimport { SkyDataManagerStateChange } from './models/data-manager-state-change';\nimport { SkyDataManagerStateOptions } from './models/data-manager-state-options';\nimport { SkyDataManagerStateUpdateFilterArgs } from './models/data-manager-state-update-filter-args';\nimport { SkyDataViewConfig } from './models/data-view-config';\nimport { SkyDataViewState } from './models/data-view-state';\n\n/**\n * The data manager service provides ways for data views, toolbar items, and more to stay up to date\n * with the active view ID, data manager config, registered views and their configs, and data state.\n * There are methods to get current values, update values, and get subscriptions to the changing values.<br/> <br/>\n * Provide this service at the component level for each instance of a data manager. Do not\n * provide it at the module level or in `app-extras`. This allows multiple data\n * managers to be used and self-contained.\n */\n@Injectable()\nexport class SkyDataManagerService implements OnDestroy {\n public viewkeeperClasses = new BehaviorSubject<Record<string, string[]>>({});\n\n readonly #activeViewId = new ReplaySubject<string>(1);\n readonly #dataManagerConfig = new BehaviorSubject<SkyDataManagerConfig>({});\n readonly #views = new BehaviorSubject<SkyDataViewConfig[]>([]);\n readonly #dataStateChange = new ReplaySubject<SkyDataManagerStateChange>(1);\n\n #isInitialized: boolean | undefined;\n #ngUnsubscribe = new Subject<void>();\n #initSource = 'dataManagerServiceInit';\n #uiConfigService: SkyUIConfigService;\n\n constructor(uiConfigService: SkyUIConfigService) {\n this.#uiConfigService = uiConfigService;\n }\n\n public ngOnDestroy(): void {\n this.#activeViewId.complete();\n this.#dataManagerConfig.complete();\n this.#views.complete();\n this.#dataStateChange.complete();\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n /**\n * Initializes the data manager with the given settings and sets `isInitialized` to `true`.\n * This must be called for the data manager to render.\n * @param args The initial active view ID, data manager config, and state to use for the data manager.\n * If a settings key is provided, it checks for a saved data state in the SKY UI config service before using the default data state\n * and saves any state changes to the service.\n */\n public initDataManager(args: SkyDataManagerInitArgs): void {\n if (this.#isInitialized) {\n console.warn('This data manager instance has already been initialized.');\n return;\n }\n\n this.#isInitialized = true;\n\n const defaultDataState = args.defaultDataState;\n const settingsKey = args.settingsKey;\n\n this.updateActiveViewId(args.activeViewId);\n this.updateDataManagerConfig(args.dataManagerConfig);\n\n if (settingsKey) {\n this.#uiConfigService\n .getConfig(settingsKey, defaultDataState.getStateOptions())\n .pipe(take(1))\n .subscribe((config: SkyDataManagerStateOptions) => {\n this.updateDataState(\n new SkyDataManagerState(config),\n this.#initSource\n );\n });\n } else {\n this.updateDataState(defaultDataState, this.#initSource);\n }\n\n if (settingsKey) {\n this.getDataStateUpdates(this.#initSource)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state: SkyDataManagerState) => {\n this.#uiConfigService\n .setConfig(settingsKey, state.getStateOptions())\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {},\n (err) => {\n console.warn('Could not save data manager settings.');\n console.warn(err);\n }\n );\n });\n }\n }\n\n /**\n * Initializes a view within the data manager. This must be called for each view for the views to appear within the data manager.\n * @param viewConfig The SkyDataViewConfig settings for the view being registered.\n */\n public initDataView(viewConfig: SkyDataViewConfig): void {\n const currentViews = this.#views.value;\n\n if (this.getViewById(viewConfig.id)) {\n console.warn(\n `A data manager view with the id ${viewConfig.id} has already been initialized.`\n );\n return;\n }\n\n currentViews.push(viewConfig);\n this.#views.next(currentViews);\n\n // When the initial activeViewId is set there are no views registered. We have to re-emit\n // the activeId so the newly registered view is notified that it is active.\n this.#activeViewId.pipe(take(1)).subscribe((id) => {\n this.#activeViewId.next(id);\n });\n\n this.#dataStateChange\n .pipe(take(1))\n .subscribe((change) => {\n const dataState = change.dataState;\n const currentViewState = dataState.getViewStateById(viewConfig.id);\n\n if (!currentViewState) {\n const newViewState = new SkyDataViewState({ viewId: viewConfig.id });\n\n // Ensure that the view state's available columns match with the view config. Also,\n // add columns to the `displayedColumnIds` as long as they are not `initialHide`\n if (viewConfig.columnOptions) {\n const columnIds = viewConfig.columnOptions.map((columnOptions) => {\n return columnOptions.id;\n });\n const displayedColumnIds = viewConfig.columnOptions\n .filter((columnOption) => {\n return !columnOption.initialHide;\n })\n .map((columnOption) => {\n return columnOption.id;\n });\n\n newViewState.columnIds = columnIds;\n newViewState.displayedColumnIds = displayedColumnIds;\n }\n const newDataState = dataState.addOrUpdateView(\n viewConfig.id,\n newViewState\n );\n\n this.updateDataState(newDataState, this.#initSource);\n } else {\n const currentAvailableColumnIds =\n viewConfig.columnOptions?.map((columnOptions) => {\n return columnOptions.id;\n }) || [];\n\n // Ensure that the view state's available columns match with the view config. Also,\n // add new columns to the `displayedColumnIds` as long as they are not `initialHide`.\n // We only add columns to `displayedColumnsIds` if we had previously tracked\n // `columnIds` to avoid breaking changes.\n if (currentViewState.columnIds.length > 0) {\n let newColumnIds = currentAvailableColumnIds?.filter(\n (id) => currentViewState.columnIds.indexOf(id) < 0\n );\n newColumnIds = newColumnIds?.filter((columnId) => {\n return viewConfig.columnOptions?.find(\n (columnOption) =>\n columnOption.id === columnId && !columnOption.initialHide\n );\n });\n\n // Add the column IDs that now exist to the data manager state both as available\n // and as shown.\n currentViewState.displayedColumnIds =\n currentViewState.displayedColumnIds.concat(newColumnIds);\n }\n // Add the column IDs that now exist to the data manager state both as available\n // and as shown.\n currentViewState.columnIds = currentAvailableColumnIds;\n\n const newDataState = dataState.addOrUpdateView(\n viewConfig.id,\n currentViewState\n );\n\n this.updateDataState(newDataState, this.#initSource);\n }\n })\n .unsubscribe();\n }\n\n /**\n * Returns an observable of data state changes that views and other data manager entities can subscribe to.\n * It excludes updates originating from the provided source. This allows subscribers to only respond to\n * changes they did not create and helps prevent infinite loops of updates and responses.\n * @param sourceId The ID of the entity subscribing to data state updates. This can be any value you choose\n * but should be unique within the data manager instance and should also be used when that entity updates the state.\n */\n public getDataStateUpdates(\n sourceId: string,\n updateFilter?: SkyDataManagerStateUpdateFilterArgs\n ): Observable<SkyDataManagerState> {\n // filter out events from the provided source and emit just the dataState\n if (updateFilter) {\n return this.#dataStateChange.pipe(\n filter((stateChange) => sourceId !== stateChange.source),\n map((stateChange) => stateChange.dataState),\n updateFilter.comparator\n ? distinctUntilChanged(updateFilter.comparator)\n : distinctUntilChanged(\n this.#getDefaultStateComparator(\n updateFilter.properties as (keyof SkyDataManagerStateOptions)[]\n )\n )\n );\n } else {\n return this.#dataStateChange.pipe(\n filter((stateChange) => sourceId !== stateChange.source),\n map((stateChange) => stateChange.dataState)\n );\n }\n }\n\n /**\n * Updates the data state and emits a new value to entities subscribed to data state changes.\n * @param state The new `SkyDataManagerState` value.\n * @param sourceId The ID of the entity updating the state. This can be any value you choose,\n * but should be unique within the data manager instance and should also be used when that entity\n * subscribes to state changes from `getDataStateUpdates`.\n */\n public updateDataState(state: SkyDataManagerState, sourceId: string): void {\n const newState = new SkyDataManagerState(state.getStateOptions());\n const newStateChange = new SkyDataManagerStateChange(newState, sourceId);\n\n this.#dataStateChange.next(newStateChange);\n }\n\n /**\n * Returns the current `SkyDataManagerConfig`.\n */\n public getCurrentDataManagerConfig(): SkyDataManagerConfig {\n return this.#dataManagerConfig.value;\n }\n\n /**\n * Returns an observable of data manager config changes that views and other data manager entities can subscribe to.\n */\n public getDataManagerConfigUpdates(): Observable<SkyDataManagerConfig> {\n return this.#dataManagerConfig;\n }\n\n /**\n * Updates the data manager config and emits a new value to entities subscribed to data config changes.\n * @param value The new `SkyDataManagerConfig` value.\n */\n public updateDataManagerConfig(value: SkyDataManagerConfig): void {\n this.#dataManagerConfig.next(value);\n }\n\n /**\n * Returns an observable of data view config changes that views and other data manager entities can subscribe to.\n */\n public getDataViewsUpdates(): Observable<SkyDataViewConfig[]> {\n return this.#views;\n }\n\n /**\n * Returns an observable of the active view ID that views and other data manager entities can subscribe to.\n */\n public getActiveViewIdUpdates(): Observable<string> {\n return this.#activeViewId;\n }\n\n /**\n * Updates the active view ID. The data manager changes the displayed view.\n * @param id The new active view ID.\n */\n public updateActiveViewId(id: string): void {\n this.#activeViewId.next(id);\n }\n\n /**\n * Returns the `SkyDataViewConfig` for the given view ID.\n * @param viewId The ID of the view config to get.\n */\n public getViewById(viewId: string): SkyDataViewConfig | undefined {\n const currentViews: SkyDataViewConfig[] = this.#views.value;\n const viewConfig: SkyDataViewConfig | undefined = currentViews.find(\n (view) => view.id === viewId\n );\n\n return viewConfig;\n }\n\n /**\n * Updates the given view config. The registered view with the same ID is updated to the\n * provided config, so include all properties regardless of whether they changed. If the\n * view was not initialized already, no update happens.\n * @param view The new `SkyDataViewConfig` containing all properties.\n */\n public updateViewConfig(view: SkyDataViewConfig): void {\n const currentViews: SkyDataViewConfig[] = this.#views.value;\n const existingViewIndex = currentViews.findIndex(\n (currentView) => currentView.id === view.id\n );\n\n if (existingViewIndex === -1) {\n console.error('A view with the id {id} does not exist.', view.id);\n } else {\n currentViews[existingViewIndex] = view;\n this.#views.next(currentViews);\n }\n }\n\n /**\n * @internal\n */\n public setViewkeeperClasses(viewId: string, classes: string[]): void {\n const viewkeeperClasses = this.viewkeeperClasses.value;\n viewkeeperClasses[viewId] = classes;\n\n this.viewkeeperClasses.next(viewkeeperClasses);\n }\n\n #filterDataStateProperties(\n state: SkyDataManagerState,\n properties: (keyof SkyDataManagerStateOptions)[] | undefined\n ): Record<string, unknown> {\n const stateProperties = state.getStateOptions();\n const filteredStateProperties: Record<string, unknown> = {};\n\n if (properties) {\n for (const property of properties) {\n if (property in stateProperties) {\n filteredStateProperties[property] = stateProperties[property];\n }\n }\n }\n\n return filteredStateProperties;\n }\n\n #getDefaultStateComparator(\n properties: (keyof SkyDataManagerStateOptions)[] | undefined\n ): (state1: SkyDataManagerState, state2: SkyDataManagerState) => boolean {\n return (\n state1: SkyDataManagerState,\n state2: SkyDataManagerState\n ): boolean => {\n const filteredState1 = this.#filterDataStateProperties(\n state1,\n properties\n );\n const filteredState2 = this.#filterDataStateProperties(\n state2,\n properties\n );\n return JSON.stringify(filteredState1) === JSON.stringify(filteredState2);\n };\n }\n}\n","/**\n * These options specify the sorting strategy applied to columns when `columnPickerEnabled` is enabled.\n */\nexport enum SkyDataManagerColumnPickerSortStrategy {\n /**\n * No sorting is applied to the columns.\n */\n None = 'none',\n /**\n * If `sortEnabled` is set to `true`, then the selected columns are displayed before the unselected columns. Unselected columns are sorted alphabetically.\n * If `sortEnabled` is set to `false`, then the columns are displayed in the order specified by `columnOptions`.\n */\n SelectedThenAlphabetical = 'selectedThenAlphabetical',\n}\n","import { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerColumnPickerSortStrategy } from '../models/data-manager-column-picker-sort-strategy';\n\nexport class SkyDataManagerColumnPickerContext {\n constructor(\n public columnOptions: SkyDataManagerColumnPickerOption[],\n public displayedColumnIds: string[],\n public columnPickerSortStrategy: SkyDataManagerColumnPickerSortStrategy = SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {}\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyBackToTopMessage, SkyBackToTopMessageType } from '@skyux/layout';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from './data-manager.service';\n\nconst VIEWKEEPER_CLASSES_DEFAULT = ['.sky-data-manager-toolbar'];\n\n/**\n * The top-level data manager component. Provide `SkyDataManagerService` at this level.\n */\n@Component({\n selector: 'sky-data-manager',\n templateUrl: './data-manager.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerComponent implements OnDestroy, OnInit {\n public get currentViewkeeperClasses(): string[] {\n return this.#_currentViewkeeperClasses;\n }\n\n public set currentViewkeeperClasses(value: string[] | undefined) {\n this.#_currentViewkeeperClasses = [\n ...VIEWKEEPER_CLASSES_DEFAULT,\n ...(value || []),\n ];\n this.#changeDetection.markForCheck();\n }\n\n public get isInitialized(): boolean {\n return this.#_isInitialized;\n }\n\n public set isInitialized(value: boolean) {\n this.#_isInitialized = value;\n this.#changeDetection.markForCheck();\n }\n\n public backToTopController = new Subject<SkyBackToTopMessage>();\n\n public backToTopOptions = {\n buttonHidden: true,\n };\n\n #activeViewId: string | undefined;\n #allViewkeeperClasses: Record<string, string[]> = {};\n #ngUnsubscribe = new Subject<void>();\n #sourceId = 'dataManagerComponent';\n #changeDetection: ChangeDetectorRef;\n #dataManagerService: SkyDataManagerService;\n\n #_isInitialized = false;\n #_currentViewkeeperClasses = VIEWKEEPER_CLASSES_DEFAULT;\n\n constructor(\n changeDetection: ChangeDetectorRef,\n dataManagerService: SkyDataManagerService\n ) {\n this.#changeDetection = changeDetection;\n this.#dataManagerService = dataManagerService;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getDataStateUpdates(this.#sourceId)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => (this.isInitialized = true));\n\n this.#dataManagerService.viewkeeperClasses\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((classes) => {\n this.#allViewkeeperClasses = classes;\n this.currentViewkeeperClasses = this.#activeViewId\n ? classes[this.#activeViewId]\n : undefined;\n });\n\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.#activeViewId = activeViewId;\n this.backToTopController.next({\n type: SkyBackToTopMessageType.BackToTop,\n });\n this.currentViewkeeperClasses =\n this.#allViewkeeperClasses[this.#activeViewId];\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<div\n *ngIf=\"isInitialized\"\n class=\"sky-data-manager\"\n [skyBackToTop]=\"backToTopOptions\"\n [skyBackToTopMessageStream]=\"backToTopController\"\n [skyViewkeeper]=\"currentViewkeeperClasses\"\n #dataManager\n>\n <ng-content></ng-content>\n</div>\n","import { SkyDataManagerFilterData } from './models/data-manager-filter-data';\n\n// TODO: In a future breaking change convert this to an interface\n/**\n * Sets the state of the filters.\n */\nexport class SkyDataManagerFilterModalContext {\n /**\n * Sets the state of the filters.\n */\n public filterData: SkyDataManagerFilterData | undefined;\n}\n","import { Injectable } from '@angular/core';\n\nimport type { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker.component';\n\n/**\n * Service that provides the column picker component type so it can be dynamically\n * created in the toolbar component. This avoids a circular reference between column\n * picker and toolbar.\n * https://angular.io/errors/NG3003\n */\n@Injectable()\nexport abstract class SkyDataManagerColumnPickerService {\n public abstract getComponentType(): typeof SkyDataManagerColumnPickerComponent;\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyCheckboxChange } from '@skyux/forms';\nimport {\n SkyModalCloseArgs,\n SkyModalConfigurationInterface,\n SkyModalService,\n} from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerColumnPickerContext } from '../data-manager-column-picker/data-manager-column-picker-context';\nimport { SkyDataManagerColumnPickerService } from '../data-manager-column-picker/data-manager-column-picker.service';\nimport { SkyDataManagerFilterModalContext } from '../data-manager-filter-context';\nimport { SkyDataManagerService } from '../data-manager.service';\nimport { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerConfig } from '../models/data-manager-config';\nimport { SkyDataManagerSortOption } from '../models/data-manager-sort-option';\nimport { SkyDataManagerState } from '../models/data-manager-state';\nimport { SkyDataViewConfig } from '../models/data-view-config';\n\n/**\n * Renders a `sky-toolbar` with the contents specified by the active view's `SkyDataViewConfig`\n * and the `SkyDataManagerToolbarLeftItemsComponent`, `SkyDataManagerToolbarRightItemsComponent`,\n * and `SkyDataManagerToolbarSectionComponent` wrappers.\n */\n@Component({\n selector: 'sky-data-manager-toolbar',\n templateUrl: './data-manager-toolbar.component.html',\n styleUrls: ['./data-manager-toolbar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerToolbarComponent implements OnDestroy, OnInit {\n public get activeView(): SkyDataViewConfig | undefined {\n return this.#_activeView;\n }\n\n public set activeView(value: SkyDataViewConfig | undefined) {\n this.#_activeView = value;\n this.#changeDetector.markForCheck();\n }\n\n public get dataManagerConfig(): SkyDataManagerConfig | undefined {\n return this.#_dataManagerConfig;\n }\n\n public set dataManagerConfig(value: SkyDataManagerConfig | undefined) {\n this.#_dataManagerConfig = value;\n this.#changeDetector.markForCheck();\n }\n\n public get dataState(): SkyDataManagerState | undefined {\n return this.#_dataState;\n }\n\n public set dataState(value: SkyDataManagerState | undefined) {\n this.#_dataState = value;\n if (value) {\n this.#dataManagerService.updateDataState(value, this.#_source);\n }\n }\n\n public get views(): SkyDataViewConfig[] {\n return this.#_views;\n }\n\n public set views(value: SkyDataViewConfig[]) {\n this.#_views = value;\n this.#changeDetector.markForCheck();\n }\n\n public onlyShowSelected: boolean | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n #changeDetector: ChangeDetectorRef;\n #dataManagerService: SkyDataManagerService;\n #modalService: SkyModalService;\n #columnPickerService: SkyDataManagerColumnPickerService;\n\n // the source to provide for data state changes\n #_source = 'toolbar';\n #_activeView: SkyDataViewConfig | undefined;\n #_dataManagerConfig: SkyDataManagerConfig | undefined;\n #_dataState: SkyDataManagerState | undefined;\n #_views: SkyDataViewConfig[] = [];\n\n constructor(\n changeDetector: ChangeDetectorRef,\n dataManagerService: SkyDataManagerService,\n modalService: SkyModalService,\n columnPickerService: SkyDataManagerColumnPickerService\n ) {\n this.#changeDetector = changeDetector;\n this.#dataManagerService = dataManagerService;\n this.#modalService = modalService;\n this.#columnPickerService = columnPickerService;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n /* istanbul ignore else */\n if (activeViewId) {\n this.activeView = this.#dataManagerService.getViewById(activeViewId);\n this.#changeDetector.markForCheck();\n }\n });\n\n this.#dataManagerService\n .getDataViewsUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((views) => {\n this.views = views;\n if (this.activeView) {\n this.activeView = this.#dataManagerService.getViewById(\n this.activeView.id\n );\n }\n this.#changeDetector.markForCheck();\n });\n\n this.#dataManagerService\n .getDataStateUpdates(this.#_source)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((dataState) => {\n this.#_dataState = dataState;\n this.onlyShowSelected = dataState.onlyShowSelected;\n this.#changeDetector.markForCheck();\n });\n\n this.#dataManagerService\n .getDataManagerConfigUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((config) => {\n this.dataManagerConfig = config;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public sortSelected(sortOption: SkyDataManagerSortOption): void {\n if (this.dataState) {\n this.dataState.activeSortOption = sortOption;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n\n public onViewChange(viewId: string): void {\n this.#dataManagerService.updateActiveViewId(viewId);\n }\n\n public searchApplied(text: string): void {\n if (this.dataState) {\n this.dataState.searchText = text;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n\n public filterButtonClicked(): void {\n const context = new SkyDataManagerFilterModalContext();\n const filterModal =\n this.dataManagerConfig && this.dataManagerConfig.filterModalComponent;\n\n context.filterData = this.dataState?.filterData;\n\n const options: SkyModalConfigurationInterface = {\n providers: [\n { provide: SkyDataManagerFilterModalContext, useValue: context },\n ],\n size: 'large',\n };\n\n if (filterModal) {\n const modalInstance = this.#modalService.open(filterModal, options);\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (this.dataState && result.reason === 'save') {\n this.dataState.filterData = result.data;\n this.#dataManagerService.updateDataState(\n this.dataState,\n this.#_source\n );\n }\n });\n }\n }\n\n public openColumnPicker(): void {\n if (this.dataState && this.activeView && this.activeView.columnOptions) {\n const viewState = this.dataState.getViewStateById(this.activeView.id);\n if (viewState) {\n const context = new SkyDataManagerColumnPickerContext(\n this.activeView.columnOptions,\n viewState.displayedColumnIds\n );\n\n if (this.activeView.columnPickerSortStrategy) {\n context.columnPickerSortStrategy =\n this.activeView.columnPickerSortStrategy;\n }\n\n const options: SkyModalConfigurationInterface = {\n providers: [\n { provide: SkyDataManagerColumnPickerContext, useValue: context },\n ],\n };\n\n const modalInstance = this.#modalService.open(\n this.#columnPickerService.getComponentType(),\n options\n );\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (result.reason === 'save') {\n const displayedColumnIds = result.data.map(\n (col: SkyDataManagerColumnPickerOption) => col.id\n );\n\n viewState.displayedColumnIds = displayedColumnIds;\n if (this.dataState && this.activeView) {\n this.dataState = this.dataState.addOrUpdateView(\n this.activeView.id,\n viewState\n );\n }\n }\n });\n }\n }\n }\n\n public selectAll(): void {\n /* istanbul ignore else */\n if (this.activeView?.onSelectAllClick) {\n this.activeView.onSelectAllClick();\n }\n }\n\n public clearAll(): void {\n /* istanbul ignore else */\n if (this.activeView?.onClearAllClick) {\n this.activeView.onClearAllClick();\n }\n }\n\n public onOnlyShowSelected(event: SkyCheckboxChange): void {\n if (this.dataState) {\n this.dataState.onlyShowSelected = !!event.checked;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n}\n","<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"!!(dataState?.activeSortOption?.id === item.id)\"\n (itemSelect)=\"sortSelected(item)\"\n >\n {{ item.label }}\n </sky-sort-item>\n </sky-sort>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.columnPickerEnabled\">\n <button\n class=\"sky-btn sky-btn-default sky-col-picker-btn\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n [attr.title]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n (click)=\"openColumnPicker()\"\n >\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_data_manager_columns_button_title' | skyLibResources }}\n </span>\n </button>\n </sky-toolbar-item>\n\n <ng-content select=\"sky-data-manager-toolbar-left-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.searchEnabled\">\n <sky-search\n [expandMode]=\"activeView?.searchExpandMode\"\n [placeholderText]=\"activeView?.searchPlaceholderText\"\n [searchText]=\"dataState?.searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n\n <sky-toolbar-view-actions>\n <ng-content select=\"sky-data-manager-toolbar-right-item\"></ng-content>\n <sky-radio-group\n *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n [(ngModel)]=\"activeView.id\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio\n *ngFor=\"let view of views\"\n [attr.aria-label]=\"view.name\"\n [icon]=\"view.icon\"\n [value]=\"view.id\"\n [label]=\"view.name\"\n (change)=\"onViewChange(view.id)\"\n >\n </sky-radio>\n </sky-radio-group>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-section\"></ng-content>\n </sky-toolbar>\n\n <sky-toolbar\n *ngIf=\"activeView?.multiselectToolbarEnabled\"\n class=\"sky-data-manager-multiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{ 'skyux_data_manager_select_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{ 'skyux_data_manager_clear_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [checked]=\"onlyShowSelected\"\n (change)=\"onOnlyShowSelected($event)\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_data_manager_show_selected_option_title' | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from './data-manager.service';\n\n/**\n * A data view is rendered within a data manager component.\n * It can subscribe to data state changes from `SkyDataManagerService` and apply the filters,\n * search text, and more to the data it displays.\n */\n@Component({\n selector: 'sky-data-view',\n templateUrl: './data-view.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataViewComponent implements OnDestroy, OnInit {\n /**\n * The configuration for the view. See the `SkyDataViewConfig` interface.\n * @required\n */\n @Input()\n public viewId: string | undefined;\n\n public get isActive(): boolean {\n return this.#_isActive;\n }\n\n public set isActive(value: boolean) {\n this.#_isActive = value;\n this.#changeDetector.markForCheck();\n }\n\n #_isActive = false;\n\n #ngUnsubscribe = new Subject<void>();\n #dataManagerService: SkyDataManagerService;\n #changeDetector: ChangeDetectorRef;\n\n constructor(\n dataManagerService: SkyDataManagerService,\n changeDetector: ChangeDetectorRef\n ) {\n this.#dataManagerService = dataManagerService;\n this.#changeDetector = changeDetector;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.isActive = this.viewId === activeViewId;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<ng-container *ngIf=\"isActive\">\n <ng-content></ng-content>\n</ng-container>\n","import {\n ChangeDetectionStrategy,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyModalInstance } from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from '../data-manager.service';\nimport { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerColumnPickerSortStrategy } from '../models/data-manager-column-picker-sort-strategy';\nimport { SkyDataManagerState } from '../models/data-manager-state';\nimport { SkyDataViewConfig } from '../models/data-view-config';\n\nimport { SkyDataManagerColumnPickerContext } from './data-manager-column-picker-context';\n\n/**\n * @internal\n */\ninterface Column extends SkyDataManagerColumnPickerOption {\n isSelected: boolean;\n}\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-data-manager-column-picker',\n templateUrl: './data-manager-column-picker.component.html',\n styleUrls: ['./data-manager-column-picker.component.scss'],\n providers: [SkyDataManagerService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerColumnPickerComponent implements OnDestroy, OnInit {\n public get dataState(): SkyDataManagerState {\n return this.#_dataState;\n }\n\n public set dataState(value: SkyDataManagerState) {\n this.#_dataState = value;\n this.updateData();\n }\n\n public columnData: Column[] = [];\n public displayedColumnData: Column[] = [];\n public viewConfig: SkyDataViewConfig = {\n id: 'columnPicker',\n name: 'Column Picker',\n searchEnabled: true,\n searchExpandMode: 'fit',\n multiselectToolbarEnabled: true,\n onSelectAllClick: this.selectAll.bind(this),\n onClearAllClick: this.clearAll.bind(this),\n };\n\n public isAnyDisplayedColumnSelected = false;\n\n #ngUnsubscribe = new Subject<void>();\n\n #_dataState = new SkyDataManagerState({});\n\n constructor(\n public context: SkyDataManagerColumnPickerContext,\n public dataManagerService: SkyDataManagerService,\n public instance: SkyModalInstance\n ) {}\n\n public ngOnInit(): void {\n this.dataManagerService.initDataManager({\n activeViewId: this.viewConfig.id,\n dataManagerConfig: {},\n defaultDataState: this.dataState,\n });\n this.dataManagerService.initDataView(this.viewConfig);\n\n this.columnData = this.#formatColumnOptions();\n\n this.dataManagerService\n .getDataStateUpdates('columnPicker')\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state) => {\n this.dataState = state;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public updateData(): void {\n this.displayedColumnData = this.searchColumns(\n this.columnData.filter((col) => !col.alwaysDisplayed)\n );\n\n if (this.dataState.onlyShowSelected) {\n this.displayedColumnData = this.displayedColumnData.filter(\n (col) => col.isSelected\n );\n }\n\n this.isAnyDisplayedColumnSelected = this.displayedColumnData.some(\n (col) => col.isSelected\n );\n }\n\n public searchColumns(columns: Column[]): Column[] {\n let searchedColumns = columns;\n const searchText =\n this.dataState && this.dataState.searchText?.toUpperCase();\n\n if (searchText) {\n searchedColumns = columns.filter((item) => {\n for (const property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n (property === 'label' || property === 'description')\n ) {\n const propertyText = item[property]?.toUpperCase();\n if (propertyText && propertyText.indexOf(searchText) > -1) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n return searchedColumns;\n }\n\n public selectAll(): void {\n this.displayedColumnData.forEach((column) => (column.isSelected = true));\n this.updateData();\n }\n\n public clearAll(): void {\n this.displayedColumnData.forEach((column) => (column.isSelected = false));\n this.updateData();\n }\n\n public onIsSelectedChange(): void {\n this.updateData();\n }\n\n public cancelChanges(): void {\n this.instance.cancel();\n }\n\n public isSelected(id: string): boolean {\n return (\n this.context.displayedColumnIds.findIndex((colId) => colId === id) !== -1\n );\n }\n\n public applyChanges(): void {\n this.instance.save(\n this.columnData.filter((col) => col.isSelected || col.alwaysDisplayed)\n );\n }\n\n #formatColumnOptions(): Column[] {\n const allColumnOptions = this.context.columnOptions;\n const visibleColumnIds = this.context.displayedColumnIds;\n let formattedColumnOptions: Column[] = [];\n const unselectedColumnOptions: Column[] = [];\n\n for (const columnOption of allColumnOptions) {\n // format the column with the properties the column picker needs\n const colIndex = visibleColumnIds.indexOf(columnOption.id);\n const formattedColumn: Column = {\n alwaysDisplayed: columnOption.alwaysDisplayed,\n id: columnOption.id,\n label: columnOption.label,\n description: columnOption.description,\n isSelected: colIndex !== -1,\n };\n\n // if column picker sorting is currently enabled sort columns by order displayed then alphabetical\n // else display column in order they were specified in the columnOptions\n if (\n this.context.columnPickerSortStrategy ===\n SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {\n if (formattedColumn.isSelected) {\n formattedColumnOptions[colIndex] = formattedColumn;\n } else {\n unselectedColumnOptions.push(formattedColumn);\n }\n } else {\n formattedColumnOptions.push(formattedColumn);\n }\n }\n\n // if column picker sorting is enabled, sort the columns that are not currently displayed\n // and add them after the currently displayed options\n if (\n this.context.columnPickerSortStrategy ===\n SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {\n unselectedColumnOptions.sort((col1, col2) =>\n col1.label.localeCompare(col2.label)\n );\n formattedColumnOptions = formattedColumnOptions.concat(\n unselectedColumnOptions\n );\n }\n\n return formattedColumnOptions;\n }\n}\n","<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { Injectable } from '@angular/core';\n\nimport { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker.component';\n\n@Injectable()\nexport class SkyDataManagerColumnPickerImplService {\n public getComponentType(): typeof SkyDataManagerColumnPickerComponent {\n return SkyDataManagerColumnPickerComponent;\n }\n}\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered after the standard toolbar actions and before the search box. Each item should be\n * wrapped in its own `sky-data-manager-toolbar-left-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-left-item',\n templateUrl: './data-manager-toolbar-left-item.component.html',\n})\nexport class SkyDataManagerToolbarLeftItemComponent {}\n","<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered as the first items in the toolbar and should be standard actions. Each item should be\n * wrapped in its own `sky-data-manager-toolbar-primary-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-primary-item',\n templateUrl: './data-manager-toolbar-primary-item.component.html',\n})\nexport class SkyDataManagerToolbarPrimaryItemComponent {}\n","<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered in `sky-toolbar-view-actions` on the right side of the toolbar and before the view\n * switcher icons (if present). Each item should be wrapped in its own\n * `sky-data-manager-toolbar-right-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-right-item',\n templateUrl: './data-manager-toolbar-right-item.component.html',\n})\nexport class SkyDataManagerToolbarRightItemComponent {}\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for items to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered in an additional toolbar row beneath the primary toolbar and above the multiselect\n * toolbar (if present).\n */\n@Component({\n selector: 'sky-data-manager-toolbar-section',\n templateUrl: './data-manager-toolbar-section.component.html',\n})\nexport class SkyDataManagerToolbarSectionComponent {}\n","<sky-toolbar-section>\n <ng-content></ng-content>\n</sky-toolbar-section>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyViewkeeperModule } from '@skyux/core';\nimport { SkyCheckboxModule, SkyRadioModule } from '@skyux/forms';\nimport { SkyIconModule, SkyStatusIndicatorModule } from '@skyux/indicators';\nimport { SkyBackToTopModule, SkyToolbarModule } from '@skyux/layout';\nimport {\n SkyFilterModule,\n SkyRepeaterModule,\n SkySortModule,\n} from '@skyux/lists';\nimport { SkySearchModule } from '@skyux/lookup';\nimport { SkyModalModule } from '@skyux/modals';\n\nimport { SkyDataManagerResourcesModule } from '../shared/sky-data-manager-resources.module';\n\nimport { SkyDataManagerColumnPickerImplService } from './data-manager-column-picker/data-manager-column-picker-impl.service';\nimport { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker/data-manager-column-picker.component';\nimport { SkyDataManagerColumnPickerService } from './data-manager-column-picker/data-manager-column-picker.service';\nimport { SkyDataManagerToolbarLeftItemComponent } from './data-manager-toolbar/data-manager-toolbar-left-item.component';\nimport { SkyDataManagerToolbarPrimaryItemComponent } from './data-manager-toolbar/data-manager-toolbar-primary-item.component';\nimport { SkyDataManagerToolbarRightItemComponent } from './data-manager-toolbar/data-manager-toolbar-right-item.component';\nimport { SkyDataManagerToolbarSectionComponent } from './data-manager-toolbar/data-manager-toolbar-section.component';\nimport { SkyDataManagerToolbarComponent } from './data-manager-toolbar/data-manager-toolbar.component';\nimport { SkyDataManagerComponent } from './data-manager.component';\nimport { SkyDataViewComponent } from './data-view.component';\n\n@NgModule({\n declarations: [\n SkyDataManagerColumnPickerComponent,\n SkyDataManagerComponent,\n SkyDataManagerToolbarLeftItemComponent,\n SkyDataManagerToolbarPrimaryItemComponent,\n SkyDataManagerToolbarRightItemComponent,\n SkyDataManagerToolbarSectionComponent,\n SkyDataManagerToolbarComponent,\n SkyDataViewComponent,\n ],\n imports: [\n CommonModule,\n FormsModule,\n SkyBackToTopModule,\n SkyCheckboxModule,\n SkyDataManagerResourcesModule,\n SkyFilterModule,\n SkyIconModule,\n SkyModalModule,\n SkyRadioModule,\n SkyRepeaterModule,\n SkySearchModule,\n SkyStatusIndicatorModule,\n SkySortModule,\n SkyToolbarModule,\n SkyViewkeeperModule,\n ],\n exports: [\n SkyDataManagerColumnPickerComponent,\n SkyDataManagerComponent,\n SkyDataManagerToolbarLeftItemComponent,\n SkyDataManagerToolbarPrimaryItemComponent,\n SkyDataManagerToolbarRightItemComponent,\n SkyDataManagerToolbarSectionComponent,\n SkyDataManagerToolbarComponent,\n SkyDataViewComponent,\n ],\n providers: [\n {\n provide: SkyDataManagerColumnPickerService,\n useClass: SkyDataManagerColumnPickerImplService,\n },\n ],\n})\nexport class SkyDataManagerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyDataManagerService","i2","i3","i4","i3.SkyDataManagerColumnPickerService","i7","i1.SkyDataManagerColumnPickerContext","i2.SkyDataManagerService","i5","i6","i7.SkyDataManagerComponent","i8.SkyDataManagerToolbarComponent","i9.SkyDataViewComponent","i10","i1"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"skyux-data-manager.mjs","sources":["../../../../../libs/components/data-manager/src/lib/modules/shared/sky-data-manager-resources.module.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-view-state.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-state.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-state-change.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/models/data-manager-column-picker-sort-strategy.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker-context.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-filter-context.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-view.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-view.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-column-picker/data-manager-column-picker-impl.service.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-left-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-left-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-primary-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-primary-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-right-item.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-right-item.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-section.component.ts","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager-toolbar/data-manager-toolbar-section.component.html","../../../../../libs/components/data-manager/src/lib/modules/data-manager/data-manager.module.ts","../../../../../libs/components/data-manager/src/skyux-data-manager.ts"],"sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-data-manager' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_data_manager_column_picker_title: {\n message: 'Choose columns to show in the list',\n },\n skyux_data_manager_apply_changes_button_title: { message: 'Apply changes' },\n skyux_data_manager_cancel_button_title: { message: 'Cancel' },\n skyux_data_manager_select_all_button_title: { message: 'Select all' },\n skyux_data_manager_clear_all_button_title: { message: 'Clear all' },\n skyux_data_manager_show_selected_option_title: {\n message: 'Show only selected items',\n },\n skyux_data_manager_columns_button_title: { message: 'Columns' },\n skyux_data_manager_select_column_status_indicator_title: {\n message: 'Select at least one column.',\n },\n },\n};\n\nexport class SkyDataManagerResourcesProvider\n implements SkyLibResourcesProvider\n{\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyDataManagerResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyDataManagerResourcesModule {}\n","import { SkyDataViewStateOptions } from './data-view-state-options';\n\n/**\n * Provides options for defining how data is displayed, such as which columns appear.\n */\nexport class SkyDataViewState {\n /**\n * The IDs of the columns able to be displayed for column-based views. This property is required when utilizing a grid-based view, a column picker, or both.\n */\n public columnIds: string[] = [];\n /**\n * The IDs of the columns displayed for column-based views.\n */\n public displayedColumnIds: string[] = [];\n /**\n * The ID of this view.\n */\n public viewId: string;\n /**\n * An untyped property that tracks any view-specific state information\n * that is relevant to a data manager but that existing properties do not cover.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public additionalData: any;\n\n constructor(data: SkyDataViewStateOptions) {\n this.viewId = data.viewId;\n this.columnIds = data.columnIds || [];\n this.displayedColumnIds = data.displayedColumnIds || [];\n this.additionalData = data.additionalData;\n }\n\n /**\n * Returns the `SkyDataViewStateOptions` for the current view.\n * @returns The `SkyDataViewStateOptions`.\n */\n public getViewStateOptions(): SkyDataViewStateOptions {\n return {\n viewId: this.viewId,\n columnIds: this.columnIds,\n displayedColumnIds: this.displayedColumnIds,\n additionalData: this.additionalData,\n };\n }\n}\n","import { SkyDataManagerFilterData } from './data-manager-filter-data';\nimport { SkyDataManagerSortOption } from './data-manager-sort-option';\nimport { SkyDataManagerStateOptions } from './data-manager-state-options';\nimport { SkyDataViewState } from './data-view-state';\nimport { SkyDataViewStateOptions } from './data-view-state-options';\n\n/**\n * Provides options that control which data to display.\n */\nexport class SkyDataManagerState {\n /**\n * The selected SkyDataManagerSortOption to apply.\n */\n public activeSortOption: SkyDataManagerSortOption | undefined;\n /**\n * An untyped property that tracks any state information that's relevant to a data\n * manager but that the existing properties do not cover.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public additionalData: any;\n /**\n * The state of the filters.\n */\n public filterData: SkyDataManagerFilterData | undefined;\n /**\n * Whether to display only the selected rows or objects. The multiselect toolbar\n * uses this property.\n */\n public onlyShowSelected: boolean | undefined;\n /**\n * The search text to apply.\n */\n public searchText: string | undefined;\n /**\n * The currently selected rows or objects.\n */\n public selectedIds: string[] | undefined;\n /**\n * The states of the individual views.\n */\n public views: SkyDataViewState[] = [];\n\n constructor(data: SkyDataManagerStateOptions) {\n const views =\n data.views && data.views.map((view) => new SkyDataViewState(view));\n\n this.activeSortOption = data.activeSortOption;\n this.additionalData = data.additionalData;\n this.filterData = data.filterData;\n this.onlyShowSelected = data.onlyShowSelected;\n this.selectedIds = data.selectedIds;\n this.searchText = data.searchText;\n this.views = views || [];\n }\n\n /**\n * Returns the `SkyDataManagerStateOptions` for the data manager.\n * @returns The `SkyDataManagerStateOptions` for the data manager.\n */\n public getStateOptions(): SkyDataManagerStateOptions {\n const viewStates: SkyDataViewStateOptions[] = this.views.map((view) => {\n return view.getViewStateOptions();\n });\n\n return {\n activeSortOption: this.activeSortOption,\n additionalData: this.additionalData,\n filterData: this.filterData,\n onlyShowSelected: this.onlyShowSelected,\n searchText: this.searchText,\n selectedIds: this.selectedIds,\n views: viewStates,\n };\n }\n\n /**\n * Returns the `SkyDataViewState` for the specified view.\n * @param viewId The ID for the view.\n * @returns The `SkyDataViewState` for the specified view.\n */\n public getViewStateById(viewId: string): SkyDataViewState | undefined {\n return this.views.find((view) => view.viewId === viewId);\n }\n\n /**\n * Adds a `SkyDataViewState` to a view or updates an existing view.\n * @param viewId The ID for the view.\n * @param view The `SkyDataViewState` option to add or update.\n * @returns The state of the data manager for the specified view.\n */\n public addOrUpdateView(\n viewId: string,\n view: SkyDataViewState\n ): SkyDataManagerState {\n const existingViewIndex = this.views.findIndex((v) => v.viewId === viewId);\n\n if (existingViewIndex !== -1) {\n this.views[existingViewIndex] = view;\n } else {\n this.views.push(view);\n }\n\n return new SkyDataManagerState({\n activeSortOption: this.activeSortOption,\n additionalData: this.additionalData,\n filterData: this.filterData,\n searchText: this.searchText,\n selectedIds: this.selectedIds,\n views: this.views,\n });\n }\n}\n","import { SkyDataManagerState } from './data-manager-state';\n\n/**\n * @internal\n */\nexport class SkyDataManagerStateChange {\n public dataState: SkyDataManagerState;\n public source: string;\n\n constructor(dataState: SkyDataManagerState, source: string) {\n this.dataState = new SkyDataManagerState(dataState.getStateOptions());\n this.source = source;\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { SkyUIConfigService } from '@skyux/core';\n\nimport { BehaviorSubject, Observable, ReplaySubject, Subject } from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n take,\n takeUntil,\n} from 'rxjs/operators';\n\nimport { SkyDataManagerConfig } from './models/data-manager-config';\nimport { SkyDataManagerInitArgs } from './models/data-manager-init-args';\nimport { SkyDataManagerState } from './models/data-manager-state';\nimport { SkyDataManagerStateChange } from './models/data-manager-state-change';\nimport { SkyDataManagerStateOptions } from './models/data-manager-state-options';\nimport { SkyDataManagerStateUpdateFilterArgs } from './models/data-manager-state-update-filter-args';\nimport { SkyDataViewConfig } from './models/data-view-config';\nimport { SkyDataViewState } from './models/data-view-state';\n\n/**\n * The data manager service provides ways for data views, toolbar items, and more to stay up to date\n * with the active view ID, data manager config, registered views and their configs, and data state.\n * There are methods to get current values, update values, and get subscriptions to the changing values.<br/> <br/>\n * Provide this service at the component level for each instance of a data manager. Do not\n * provide it at the module level or in `app-extras`. This allows multiple data\n * managers to be used and self-contained.\n */\n@Injectable()\nexport class SkyDataManagerService implements OnDestroy {\n public viewkeeperClasses = new BehaviorSubject<Record<string, string[]>>({});\n\n readonly #activeViewId = new ReplaySubject<string>(1);\n readonly #dataManagerConfig = new BehaviorSubject<SkyDataManagerConfig>({});\n readonly #views = new BehaviorSubject<SkyDataViewConfig[]>([]);\n readonly #dataStateChange = new ReplaySubject<SkyDataManagerStateChange>(1);\n\n #isInitialized: boolean | undefined;\n #ngUnsubscribe = new Subject<void>();\n #initSource = 'dataManagerServiceInit';\n #uiConfigService: SkyUIConfigService;\n\n constructor(uiConfigService: SkyUIConfigService) {\n this.#uiConfigService = uiConfigService;\n }\n\n public ngOnDestroy(): void {\n this.#activeViewId.complete();\n this.#dataManagerConfig.complete();\n this.#views.complete();\n this.#dataStateChange.complete();\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n /**\n * Initializes the data manager with the given settings and sets `isInitialized` to `true`.\n * This must be called for the data manager to render.\n * @param args The initial active view ID, data manager config, and state to use for the data manager.\n * If a settings key is provided, it checks for a saved data state in the SKY UI config service before using the default data state\n * and saves any state changes to the service.\n */\n public initDataManager(args: SkyDataManagerInitArgs): void {\n if (this.#isInitialized) {\n console.warn('This data manager instance has already been initialized.');\n return;\n }\n\n this.#isInitialized = true;\n\n const defaultDataState = args.defaultDataState;\n const settingsKey = args.settingsKey;\n\n this.updateActiveViewId(args.activeViewId);\n this.updateDataManagerConfig(args.dataManagerConfig);\n\n if (settingsKey) {\n this.#uiConfigService\n .getConfig(settingsKey, defaultDataState.getStateOptions())\n .pipe(take(1))\n .subscribe((config: SkyDataManagerStateOptions) => {\n this.updateDataState(\n new SkyDataManagerState(config),\n this.#initSource\n );\n });\n } else {\n this.updateDataState(defaultDataState, this.#initSource);\n }\n\n if (settingsKey) {\n this.getDataStateUpdates(this.#initSource)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state: SkyDataManagerState) => {\n this.#uiConfigService\n .setConfig(settingsKey, state.getStateOptions())\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {},\n (err) => {\n console.warn('Could not save data manager settings.');\n console.warn(err);\n }\n );\n });\n }\n }\n\n /**\n * Initializes a view within the data manager. This must be called for each view for the views to appear within the data manager.\n * @param viewConfig The SkyDataViewConfig settings for the view being registered.\n */\n public initDataView(viewConfig: SkyDataViewConfig): void {\n const currentViews = this.#views.value;\n\n if (this.getViewById(viewConfig.id)) {\n console.warn(\n `A data manager view with the id ${viewConfig.id} has already been initialized.`\n );\n return;\n }\n\n currentViews.push(viewConfig);\n this.#views.next(currentViews);\n\n // When the initial activeViewId is set there are no views registered. We have to re-emit\n // the activeId so the newly registered view is notified that it is active.\n this.#activeViewId.pipe(take(1)).subscribe((id) => {\n this.#activeViewId.next(id);\n });\n\n this.#dataStateChange\n .pipe(take(1))\n .subscribe((change) => {\n const dataState = change.dataState;\n const currentViewState = dataState.getViewStateById(viewConfig.id);\n\n if (!currentViewState) {\n const newViewState = new SkyDataViewState({ viewId: viewConfig.id });\n\n // Ensure that the view state's available columns match with the view config. Also,\n // add columns to the `displayedColumnIds` as long as they are not `initialHide`\n if (viewConfig.columnOptions) {\n const columnIds = viewConfig.columnOptions.map((columnOptions) => {\n return columnOptions.id;\n });\n const displayedColumnIds = viewConfig.columnOptions\n .filter((columnOption) => {\n return !columnOption.initialHide;\n })\n .map((columnOption) => {\n return columnOption.id;\n });\n\n newViewState.columnIds = columnIds;\n newViewState.displayedColumnIds = displayedColumnIds;\n }\n const newDataState = dataState.addOrUpdateView(\n viewConfig.id,\n newViewState\n );\n\n this.updateDataState(newDataState, this.#initSource);\n } else {\n const currentAvailableColumnIds =\n viewConfig.columnOptions?.map((columnOptions) => {\n return columnOptions.id;\n }) || [];\n\n // Ensure that the view state's available columns match with the view config. Also,\n // add new columns to the `displayedColumnIds` as long as they are not `initialHide`.\n // We only add columns to `displayedColumnsIds` if we had previously tracked\n // `columnIds` to avoid breaking changes.\n if (currentViewState.columnIds.length > 0) {\n let newColumnIds = currentAvailableColumnIds?.filter(\n (id) => currentViewState.columnIds.indexOf(id) < 0\n );\n newColumnIds = newColumnIds?.filter((columnId) => {\n return viewConfig.columnOptions?.find(\n (columnOption) =>\n columnOption.id === columnId && !columnOption.initialHide\n );\n });\n\n // Add the column IDs that now exist to the data manager state both as available\n // and as shown.\n currentViewState.displayedColumnIds =\n currentViewState.displayedColumnIds.concat(newColumnIds);\n }\n // Add the column IDs that now exist to the data manager state both as available\n // and as shown.\n currentViewState.columnIds = currentAvailableColumnIds;\n\n const newDataState = dataState.addOrUpdateView(\n viewConfig.id,\n currentViewState\n );\n\n this.updateDataState(newDataState, this.#initSource);\n }\n })\n .unsubscribe();\n }\n\n /**\n * Returns an observable of data state changes that views and other data manager entities can subscribe to.\n * It excludes updates originating from the provided source. This allows subscribers to only respond to\n * changes they did not create and helps prevent infinite loops of updates and responses.\n * @param sourceId The ID of the entity subscribing to data state updates. This can be any value you choose\n * but should be unique within the data manager instance and should also be used when that entity updates the state.\n */\n public getDataStateUpdates(\n sourceId: string,\n updateFilter?: SkyDataManagerStateUpdateFilterArgs\n ): Observable<SkyDataManagerState> {\n // filter out events from the provided source and emit just the dataState\n if (updateFilter) {\n return this.#dataStateChange.pipe(\n filter((stateChange) => sourceId !== stateChange.source),\n map((stateChange) => stateChange.dataState),\n updateFilter.comparator\n ? distinctUntilChanged(updateFilter.comparator)\n : distinctUntilChanged(\n this.#getDefaultStateComparator(\n updateFilter.properties as (keyof SkyDataManagerStateOptions)[]\n )\n )\n );\n } else {\n return this.#dataStateChange.pipe(\n filter((stateChange) => sourceId !== stateChange.source),\n map((stateChange) => stateChange.dataState)\n );\n }\n }\n\n /**\n * Updates the data state and emits a new value to entities subscribed to data state changes.\n * @param state The new `SkyDataManagerState` value.\n * @param sourceId The ID of the entity updating the state. This can be any value you choose,\n * but should be unique within the data manager instance and should also be used when that entity\n * subscribes to state changes from `getDataStateUpdates`.\n */\n public updateDataState(state: SkyDataManagerState, sourceId: string): void {\n const newState = new SkyDataManagerState(state.getStateOptions());\n const newStateChange = new SkyDataManagerStateChange(newState, sourceId);\n\n this.#dataStateChange.next(newStateChange);\n }\n\n /**\n * Returns the current `SkyDataManagerConfig`.\n */\n public getCurrentDataManagerConfig(): SkyDataManagerConfig {\n return this.#dataManagerConfig.value;\n }\n\n /**\n * Returns an observable of data manager config changes that views and other data manager entities can subscribe to.\n */\n public getDataManagerConfigUpdates(): Observable<SkyDataManagerConfig> {\n return this.#dataManagerConfig;\n }\n\n /**\n * Updates the data manager config and emits a new value to entities subscribed to data config changes.\n * @param value The new `SkyDataManagerConfig` value.\n */\n public updateDataManagerConfig(value: SkyDataManagerConfig): void {\n this.#dataManagerConfig.next(value);\n }\n\n /**\n * Returns an observable of data view config changes that views and other data manager entities can subscribe to.\n */\n public getDataViewsUpdates(): Observable<SkyDataViewConfig[]> {\n return this.#views;\n }\n\n /**\n * Returns an observable of the active view ID that views and other data manager entities can subscribe to.\n */\n public getActiveViewIdUpdates(): Observable<string> {\n return this.#activeViewId;\n }\n\n /**\n * Updates the active view ID. The data manager changes the displayed view.\n * @param id The new active view ID.\n */\n public updateActiveViewId(id: string): void {\n this.#activeViewId.next(id);\n }\n\n /**\n * Returns the `SkyDataViewConfig` for the given view ID.\n * @param viewId The ID of the view config to get.\n */\n public getViewById(viewId: string): SkyDataViewConfig | undefined {\n const currentViews: SkyDataViewConfig[] = this.#views.value;\n const viewConfig: SkyDataViewConfig | undefined = currentViews.find(\n (view) => view.id === viewId\n );\n\n return viewConfig;\n }\n\n /**\n * Updates the given view config. The registered view with the same ID is updated to the\n * provided config, so include all properties regardless of whether they changed. If the\n * view was not initialized already, no update happens.\n * @param view The new `SkyDataViewConfig` containing all properties.\n */\n public updateViewConfig(view: SkyDataViewConfig): void {\n const currentViews: SkyDataViewConfig[] = this.#views.value;\n const existingViewIndex = currentViews.findIndex(\n (currentView) => currentView.id === view.id\n );\n\n if (existingViewIndex === -1) {\n console.error('A view with the id {id} does not exist.', view.id);\n } else {\n currentViews[existingViewIndex] = view;\n this.#views.next(currentViews);\n }\n }\n\n /**\n * @internal\n */\n public setViewkeeperClasses(viewId: string, classes: string[]): void {\n const viewkeeperClasses = this.viewkeeperClasses.value;\n viewkeeperClasses[viewId] = classes;\n\n this.viewkeeperClasses.next(viewkeeperClasses);\n }\n\n #filterDataStateProperties(\n state: SkyDataManagerState,\n properties: (keyof SkyDataManagerStateOptions)[] | undefined\n ): Record<string, unknown> {\n const stateProperties = state.getStateOptions();\n const filteredStateProperties: Record<string, unknown> = {};\n\n if (properties) {\n for (const property of properties) {\n if (property in stateProperties) {\n filteredStateProperties[property] = stateProperties[property];\n }\n }\n }\n\n return filteredStateProperties;\n }\n\n #getDefaultStateComparator(\n properties: (keyof SkyDataManagerStateOptions)[] | undefined\n ): (state1: SkyDataManagerState, state2: SkyDataManagerState) => boolean {\n return (\n state1: SkyDataManagerState,\n state2: SkyDataManagerState\n ): boolean => {\n const filteredState1 = this.#filterDataStateProperties(\n state1,\n properties\n );\n const filteredState2 = this.#filterDataStateProperties(\n state2,\n properties\n );\n return JSON.stringify(filteredState1) === JSON.stringify(filteredState2);\n };\n }\n}\n","/**\n * These options specify the sorting strategy applied to columns when `columnPickerEnabled` is enabled.\n */\nexport enum SkyDataManagerColumnPickerSortStrategy {\n /**\n * No sorting is applied to the columns.\n */\n None = 'none',\n /**\n * If `sortEnabled` is set to `true`, then the selected columns are displayed before the unselected columns. Unselected columns are sorted alphabetically.\n * If `sortEnabled` is set to `false`, then the columns are displayed in the order specified by `columnOptions`.\n */\n SelectedThenAlphabetical = 'selectedThenAlphabetical',\n}\n","import { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerColumnPickerSortStrategy } from '../models/data-manager-column-picker-sort-strategy';\n\nexport class SkyDataManagerColumnPickerContext {\n constructor(\n public columnOptions: SkyDataManagerColumnPickerOption[],\n public displayedColumnIds: string[],\n public columnPickerSortStrategy: SkyDataManagerColumnPickerSortStrategy = SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {}\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyBackToTopMessage, SkyBackToTopMessageType } from '@skyux/layout';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from './data-manager.service';\n\nconst VIEWKEEPER_CLASSES_DEFAULT = ['.sky-data-manager-toolbar'];\n\n/**\n * The top-level data manager component. Provide `SkyDataManagerService` at this level.\n */\n@Component({\n selector: 'sky-data-manager',\n templateUrl: './data-manager.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerComponent implements OnDestroy, OnInit {\n public get currentViewkeeperClasses(): string[] {\n return this.#_currentViewkeeperClasses;\n }\n\n public set currentViewkeeperClasses(value: string[] | undefined) {\n this.#_currentViewkeeperClasses = [\n ...VIEWKEEPER_CLASSES_DEFAULT,\n ...(value || []),\n ];\n this.#changeDetection.markForCheck();\n }\n\n public get isInitialized(): boolean {\n return this.#_isInitialized;\n }\n\n public set isInitialized(value: boolean) {\n this.#_isInitialized = value;\n this.#changeDetection.markForCheck();\n }\n\n public backToTopController = new Subject<SkyBackToTopMessage>();\n\n public backToTopOptions = {\n buttonHidden: true,\n };\n\n #activeViewId: string | undefined;\n #allViewkeeperClasses: Record<string, string[]> = {};\n #ngUnsubscribe = new Subject<void>();\n #sourceId = 'dataManagerComponent';\n #changeDetection: ChangeDetectorRef;\n #dataManagerService: SkyDataManagerService;\n\n #_isInitialized = false;\n #_currentViewkeeperClasses = VIEWKEEPER_CLASSES_DEFAULT;\n\n constructor(\n changeDetection: ChangeDetectorRef,\n dataManagerService: SkyDataManagerService\n ) {\n this.#changeDetection = changeDetection;\n this.#dataManagerService = dataManagerService;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getDataStateUpdates(this.#sourceId)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => (this.isInitialized = true));\n\n this.#dataManagerService.viewkeeperClasses\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((classes) => {\n this.#allViewkeeperClasses = classes;\n this.currentViewkeeperClasses = this.#activeViewId\n ? classes[this.#activeViewId]\n : undefined;\n });\n\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.#activeViewId = activeViewId;\n this.backToTopController.next({\n type: SkyBackToTopMessageType.BackToTop,\n });\n this.currentViewkeeperClasses =\n this.#allViewkeeperClasses[this.#activeViewId];\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<div\n *ngIf=\"isInitialized\"\n class=\"sky-data-manager\"\n [skyBackToTop]=\"backToTopOptions\"\n [skyBackToTopMessageStream]=\"backToTopController\"\n [skyViewkeeper]=\"currentViewkeeperClasses\"\n #dataManager\n>\n <ng-content></ng-content>\n</div>\n","import { SkyDataManagerFilterData } from './models/data-manager-filter-data';\n\n// TODO: In a future breaking change convert this to an interface\n/**\n * Sets the state of the filters.\n */\nexport class SkyDataManagerFilterModalContext {\n /**\n * Sets the state of the filters.\n */\n public filterData: SkyDataManagerFilterData | undefined;\n}\n","import { Injectable } from '@angular/core';\n\nimport type { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker.component';\n\n/**\n * Service that provides the column picker component type so it can be dynamically\n * created in the toolbar component. This avoids a circular reference between column\n * picker and toolbar.\n * https://angular.io/errors/NG3003\n */\n@Injectable()\nexport abstract class SkyDataManagerColumnPickerService {\n public abstract getComponentType(): typeof SkyDataManagerColumnPickerComponent;\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyCheckboxChange } from '@skyux/forms';\nimport {\n SkyModalCloseArgs,\n SkyModalConfigurationInterface,\n SkyModalService,\n} from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerColumnPickerContext } from '../data-manager-column-picker/data-manager-column-picker-context';\nimport { SkyDataManagerColumnPickerService } from '../data-manager-column-picker/data-manager-column-picker.service';\nimport { SkyDataManagerFilterModalContext } from '../data-manager-filter-context';\nimport { SkyDataManagerService } from '../data-manager.service';\nimport { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerConfig } from '../models/data-manager-config';\nimport { SkyDataManagerSortOption } from '../models/data-manager-sort-option';\nimport { SkyDataManagerState } from '../models/data-manager-state';\nimport { SkyDataViewConfig } from '../models/data-view-config';\n\n/**\n * Renders a `sky-toolbar` with the contents specified by the active view's `SkyDataViewConfig`\n * and the `SkyDataManagerToolbarLeftItemsComponent`, `SkyDataManagerToolbarRightItemsComponent`,\n * and `SkyDataManagerToolbarSectionComponent` wrappers.\n */\n@Component({\n selector: 'sky-data-manager-toolbar',\n templateUrl: './data-manager-toolbar.component.html',\n styleUrls: ['./data-manager-toolbar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerToolbarComponent implements OnDestroy, OnInit {\n public get activeView(): SkyDataViewConfig | undefined {\n return this.#_activeView;\n }\n\n public set activeView(value: SkyDataViewConfig | undefined) {\n this.#_activeView = value;\n this.#changeDetector.markForCheck();\n }\n\n public get dataManagerConfig(): SkyDataManagerConfig | undefined {\n return this.#_dataManagerConfig;\n }\n\n public set dataManagerConfig(value: SkyDataManagerConfig | undefined) {\n this.#_dataManagerConfig = value;\n this.#changeDetector.markForCheck();\n }\n\n public get dataState(): SkyDataManagerState | undefined {\n return this.#_dataState;\n }\n\n public set dataState(value: SkyDataManagerState | undefined) {\n this.#_dataState = value;\n if (value) {\n this.#dataManagerService.updateDataState(value, this.#_source);\n }\n }\n\n public get views(): SkyDataViewConfig[] {\n return this.#_views;\n }\n\n public set views(value: SkyDataViewConfig[]) {\n this.#_views = value;\n this.#changeDetector.markForCheck();\n }\n\n public onlyShowSelected: boolean | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n #changeDetector: ChangeDetectorRef;\n #dataManagerService: SkyDataManagerService;\n #modalService: SkyModalService;\n #columnPickerService: SkyDataManagerColumnPickerService;\n\n // the source to provide for data state changes\n #_source = 'toolbar';\n #_activeView: SkyDataViewConfig | undefined;\n #_dataManagerConfig: SkyDataManagerConfig | undefined;\n #_dataState: SkyDataManagerState | undefined;\n #_views: SkyDataViewConfig[] = [];\n\n constructor(\n changeDetector: ChangeDetectorRef,\n dataManagerService: SkyDataManagerService,\n modalService: SkyModalService,\n columnPickerService: SkyDataManagerColumnPickerService\n ) {\n this.#changeDetector = changeDetector;\n this.#dataManagerService = dataManagerService;\n this.#modalService = modalService;\n this.#columnPickerService = columnPickerService;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n /* istanbul ignore else */\n if (activeViewId) {\n this.activeView = this.#dataManagerService.getViewById(activeViewId);\n this.#changeDetector.markForCheck();\n }\n });\n\n this.#dataManagerService\n .getDataViewsUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((views) => {\n this.views = views;\n if (this.activeView) {\n this.activeView = this.#dataManagerService.getViewById(\n this.activeView.id\n );\n }\n this.#changeDetector.markForCheck();\n });\n\n this.#dataManagerService\n .getDataStateUpdates(this.#_source)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((dataState) => {\n this.#_dataState = dataState;\n this.onlyShowSelected = dataState.onlyShowSelected;\n this.#changeDetector.markForCheck();\n });\n\n this.#dataManagerService\n .getDataManagerConfigUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((config) => {\n this.dataManagerConfig = config;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public sortSelected(sortOption: SkyDataManagerSortOption): void {\n if (this.dataState) {\n this.dataState.activeSortOption = sortOption;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n\n public onViewChange(viewId: string): void {\n this.#dataManagerService.updateActiveViewId(viewId);\n }\n\n public searchApplied(text: string): void {\n if (this.dataState) {\n this.dataState.searchText = text;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n\n public filterButtonClicked(): void {\n const context = new SkyDataManagerFilterModalContext();\n const filterModal =\n this.dataManagerConfig && this.dataManagerConfig.filterModalComponent;\n\n context.filterData = this.dataState?.filterData;\n\n const options: SkyModalConfigurationInterface = {\n providers: [\n { provide: SkyDataManagerFilterModalContext, useValue: context },\n ],\n size: 'large',\n };\n\n if (filterModal) {\n const modalInstance = this.#modalService.open(filterModal, options);\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (this.dataState && result.reason === 'save') {\n this.dataState.filterData = result.data;\n this.#dataManagerService.updateDataState(\n this.dataState,\n this.#_source\n );\n }\n });\n }\n }\n\n public openColumnPicker(): void {\n if (this.dataState && this.activeView && this.activeView.columnOptions) {\n const viewState = this.dataState.getViewStateById(this.activeView.id);\n if (viewState) {\n const context = new SkyDataManagerColumnPickerContext(\n this.activeView.columnOptions,\n viewState.displayedColumnIds\n );\n\n if (this.activeView.columnPickerSortStrategy) {\n context.columnPickerSortStrategy =\n this.activeView.columnPickerSortStrategy;\n }\n\n const options: SkyModalConfigurationInterface = {\n providers: [\n { provide: SkyDataManagerColumnPickerContext, useValue: context },\n ],\n };\n\n const modalInstance = this.#modalService.open(\n this.#columnPickerService.getComponentType(),\n options\n );\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (result.reason === 'save') {\n const displayedColumnIds = result.data.map(\n (col: SkyDataManagerColumnPickerOption) => col.id\n );\n\n viewState.displayedColumnIds = displayedColumnIds;\n if (this.dataState && this.activeView) {\n this.dataState = this.dataState.addOrUpdateView(\n this.activeView.id,\n viewState\n );\n }\n }\n });\n }\n }\n }\n\n public selectAll(): void {\n /* istanbul ignore else */\n if (this.activeView?.onSelectAllClick) {\n this.activeView.onSelectAllClick();\n }\n }\n\n public clearAll(): void {\n /* istanbul ignore else */\n if (this.activeView?.onClearAllClick) {\n this.activeView.onClearAllClick();\n }\n }\n\n public onOnlyShowSelected(event: SkyCheckboxChange): void {\n if (this.dataState) {\n this.dataState.onlyShowSelected = !!event.checked;\n this.#dataManagerService.updateDataState(this.dataState, this.#_source);\n }\n }\n}\n","<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"!!(dataState?.activeSortOption?.id === item.id)\"\n (itemSelect)=\"sortSelected(item)\"\n >\n {{ item.label }}\n </sky-sort-item>\n </sky-sort>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.columnPickerEnabled\">\n <button\n class=\"sky-btn sky-btn-default sky-col-picker-btn\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n [attr.title]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n (click)=\"openColumnPicker()\"\n >\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_data_manager_columns_button_title' | skyLibResources }}\n </span>\n </button>\n </sky-toolbar-item>\n\n <ng-content select=\"sky-data-manager-toolbar-left-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.searchEnabled\">\n <sky-search\n [expandMode]=\"activeView?.searchExpandMode\"\n [placeholderText]=\"activeView?.searchPlaceholderText\"\n [searchText]=\"dataState?.searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n\n <sky-toolbar-view-actions>\n <ng-content select=\"sky-data-manager-toolbar-right-item\"></ng-content>\n <sky-radio-group\n *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n [(ngModel)]=\"activeView.id\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio\n *ngFor=\"let view of views\"\n [attr.aria-label]=\"view.name\"\n [icon]=\"view.icon\"\n [value]=\"view.id\"\n [label]=\"view.name\"\n (change)=\"onViewChange(view.id)\"\n >\n </sky-radio>\n </sky-radio-group>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-section\"></ng-content>\n </sky-toolbar>\n\n <sky-toolbar\n *ngIf=\"activeView?.multiselectToolbarEnabled\"\n class=\"sky-data-manager-multiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{ 'skyux_data_manager_select_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{ 'skyux_data_manager_clear_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [checked]=\"onlyShowSelected\"\n (change)=\"onOnlyShowSelected($event)\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_data_manager_show_selected_option_title' | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from './data-manager.service';\n\n/**\n * A data view is rendered within a data manager component.\n * It can subscribe to data state changes from `SkyDataManagerService` and apply the filters,\n * search text, and more to the data it displays.\n */\n@Component({\n selector: 'sky-data-view',\n templateUrl: './data-view.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataViewComponent implements OnDestroy, OnInit {\n /**\n * The configuration for the view. See the `SkyDataViewConfig` interface.\n * @required\n */\n @Input()\n public viewId: string | undefined;\n\n public get isActive(): boolean {\n return this.#_isActive;\n }\n\n public set isActive(value: boolean) {\n this.#_isActive = value;\n this.#changeDetector.markForCheck();\n }\n\n #_isActive = false;\n\n #ngUnsubscribe = new Subject<void>();\n #dataManagerService: SkyDataManagerService;\n #changeDetector: ChangeDetectorRef;\n\n constructor(\n dataManagerService: SkyDataManagerService,\n changeDetector: ChangeDetectorRef\n ) {\n this.#dataManagerService = dataManagerService;\n this.#changeDetector = changeDetector;\n }\n\n public ngOnInit(): void {\n this.#dataManagerService\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.isActive = this.viewId === activeViewId;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<ng-container *ngIf=\"isActive\">\n <ng-content></ng-content>\n</ng-container>\n","import {\n ChangeDetectionStrategy,\n Component,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SkyModalInstance } from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDataManagerService } from '../data-manager.service';\nimport { SkyDataManagerColumnPickerOption } from '../models/data-manager-column-picker-option';\nimport { SkyDataManagerColumnPickerSortStrategy } from '../models/data-manager-column-picker-sort-strategy';\nimport { SkyDataManagerState } from '../models/data-manager-state';\nimport { SkyDataViewConfig } from '../models/data-view-config';\n\nimport { SkyDataManagerColumnPickerContext } from './data-manager-column-picker-context';\n\n/**\n * @internal\n */\ninterface Column extends SkyDataManagerColumnPickerOption {\n isSelected: boolean;\n}\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-data-manager-column-picker',\n templateUrl: './data-manager-column-picker.component.html',\n styleUrls: ['./data-manager-column-picker.component.scss'],\n providers: [SkyDataManagerService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDataManagerColumnPickerComponent implements OnDestroy, OnInit {\n public get dataState(): SkyDataManagerState {\n return this.#_dataState;\n }\n\n public set dataState(value: SkyDataManagerState) {\n this.#_dataState = value;\n this.updateData();\n }\n\n public columnData: Column[] = [];\n public displayedColumnData: Column[] = [];\n public viewConfig: SkyDataViewConfig = {\n id: 'columnPicker',\n name: 'Column Picker',\n searchEnabled: true,\n searchExpandMode: 'fit',\n multiselectToolbarEnabled: true,\n onSelectAllClick: this.selectAll.bind(this),\n onClearAllClick: this.clearAll.bind(this),\n };\n\n public isAnyDisplayedColumnSelected = false;\n\n #ngUnsubscribe = new Subject<void>();\n\n #_dataState = new SkyDataManagerState({});\n\n constructor(\n public context: SkyDataManagerColumnPickerContext,\n public dataManagerService: SkyDataManagerService,\n public instance: SkyModalInstance\n ) {}\n\n public ngOnInit(): void {\n this.dataManagerService.initDataManager({\n activeViewId: this.viewConfig.id,\n dataManagerConfig: {},\n defaultDataState: this.dataState,\n });\n this.dataManagerService.initDataView(this.viewConfig);\n\n this.columnData = this.#formatColumnOptions();\n\n this.dataManagerService\n .getDataStateUpdates('columnPicker')\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state) => {\n this.dataState = state;\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public updateData(): void {\n this.displayedColumnData = this.searchColumns(\n this.columnData.filter((col) => !col.alwaysDisplayed)\n );\n\n if (this.dataState.onlyShowSelected) {\n this.displayedColumnData = this.displayedColumnData.filter(\n (col) => col.isSelected\n );\n }\n\n this.isAnyDisplayedColumnSelected = this.displayedColumnData.some(\n (col) => col.isSelected\n );\n }\n\n public searchColumns(columns: Column[]): Column[] {\n let searchedColumns = columns;\n const searchText =\n this.dataState && this.dataState.searchText?.toUpperCase();\n\n if (searchText) {\n searchedColumns = columns.filter((item) => {\n for (const property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n (property === 'label' || property === 'description')\n ) {\n const propertyText = item[property]?.toUpperCase();\n if (propertyText && propertyText.indexOf(searchText) > -1) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n return searchedColumns;\n }\n\n public selectAll(): void {\n this.displayedColumnData.forEach((column) => (column.isSelected = true));\n this.updateData();\n }\n\n public clearAll(): void {\n this.displayedColumnData.forEach((column) => (column.isSelected = false));\n this.updateData();\n }\n\n public onIsSelectedChange(): void {\n this.updateData();\n }\n\n public cancelChanges(): void {\n this.instance.cancel();\n }\n\n public isSelected(id: string): boolean {\n return (\n this.context.displayedColumnIds.findIndex((colId) => colId === id) !== -1\n );\n }\n\n public applyChanges(): void {\n this.instance.save(\n this.columnData.filter((col) => col.isSelected || col.alwaysDisplayed)\n );\n }\n\n #formatColumnOptions(): Column[] {\n const allColumnOptions = this.context.columnOptions;\n const visibleColumnIds = this.context.displayedColumnIds;\n let formattedColumnOptions: Column[] = [];\n const unselectedColumnOptions: Column[] = [];\n\n for (const columnOption of allColumnOptions) {\n // format the column with the properties the column picker needs\n const colIndex = visibleColumnIds.indexOf(columnOption.id);\n const formattedColumn: Column = {\n alwaysDisplayed: columnOption.alwaysDisplayed,\n id: columnOption.id,\n label: columnOption.label,\n description: columnOption.description,\n isSelected: colIndex !== -1,\n };\n\n // if column picker sorting is currently enabled sort columns by order displayed then alphabetical\n // else display column in order they were specified in the columnOptions\n if (\n this.context.columnPickerSortStrategy ===\n SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {\n if (formattedColumn.isSelected) {\n formattedColumnOptions[colIndex] = formattedColumn;\n } else {\n unselectedColumnOptions.push(formattedColumn);\n }\n } else {\n formattedColumnOptions.push(formattedColumn);\n }\n }\n\n // if column picker sorting is enabled, sort the columns that are not currently displayed\n // and add them after the currently displayed options\n if (\n this.context.columnPickerSortStrategy ===\n SkyDataManagerColumnPickerSortStrategy.SelectedThenAlphabetical\n ) {\n unselectedColumnOptions.sort((col1, col2) =>\n col1.label.localeCompare(col2.label)\n );\n formattedColumnOptions = formattedColumnOptions.concat(\n unselectedColumnOptions\n );\n }\n\n return formattedColumnOptions;\n }\n}\n","<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n (isSelectedChange)=\"onIsSelectedChange()\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <div\n class=\"sky-data-manager-column-picker-footer-stacked-indicator\"\n *ngIf=\"!isAnyDisplayedColumnSelected\"\n >\n <sky-status-indicator descriptionType=\"error\" indicatorType=\"danger\">\n {{\n 'skyux_data_manager_select_column_status_indicator_title'\n | skyLibResources\n }}\n </sky-status-indicator>\n </div>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n [disabled]=\"!isAnyDisplayedColumnSelected\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { Injectable } from '@angular/core';\n\nimport { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker.component';\n\n@Injectable()\nexport class SkyDataManagerColumnPickerImplService {\n public getComponentType(): typeof SkyDataManagerColumnPickerComponent {\n return SkyDataManagerColumnPickerComponent;\n }\n}\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered after the standard toolbar actions and before the search box. Each item should be\n * wrapped in its own `sky-data-manager-toolbar-left-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-left-item',\n templateUrl: './data-manager-toolbar-left-item.component.html',\n})\nexport class SkyDataManagerToolbarLeftItemComponent {}\n","<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered as the first items in the toolbar and should be standard actions. Each item should be\n * wrapped in its own `sky-data-manager-toolbar-primary-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-primary-item',\n templateUrl: './data-manager-toolbar-primary-item.component.html',\n})\nexport class SkyDataManagerToolbarPrimaryItemComponent {}\n","<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for an item to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered in `sky-toolbar-view-actions` on the right side of the toolbar and before the view\n * switcher icons (if present). Each item should be wrapped in its own\n * `sky-data-manager-toolbar-right-item`. The items render in the order they are in in the template.\n */\n@Component({\n selector: 'sky-data-manager-toolbar-right-item',\n templateUrl: './data-manager-toolbar-right-item.component.html',\n})\nexport class SkyDataManagerToolbarRightItemComponent {}\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * A wrapper for items to be rendered in `SkyDataManagerToolbarComponent`. The contents are\n * rendered in an additional toolbar row beneath the primary toolbar and above the multiselect\n * toolbar (if present).\n */\n@Component({\n selector: 'sky-data-manager-toolbar-section',\n templateUrl: './data-manager-toolbar-section.component.html',\n})\nexport class SkyDataManagerToolbarSectionComponent {}\n","<sky-toolbar-section>\n <ng-content></ng-content>\n</sky-toolbar-section>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyViewkeeperModule } from '@skyux/core';\nimport { SkyCheckboxModule, SkyRadioModule } from '@skyux/forms';\nimport { SkyIconModule, SkyStatusIndicatorModule } from '@skyux/indicators';\nimport { SkyBackToTopModule, SkyToolbarModule } from '@skyux/layout';\nimport {\n SkyFilterModule,\n SkyRepeaterModule,\n SkySortModule,\n} from '@skyux/lists';\nimport { SkySearchModule } from '@skyux/lookup';\nimport { SkyModalModule } from '@skyux/modals';\n\nimport { SkyDataManagerResourcesModule } from '../shared/sky-data-manager-resources.module';\n\nimport { SkyDataManagerColumnPickerImplService } from './data-manager-column-picker/data-manager-column-picker-impl.service';\nimport { SkyDataManagerColumnPickerComponent } from './data-manager-column-picker/data-manager-column-picker.component';\nimport { SkyDataManagerColumnPickerService } from './data-manager-column-picker/data-manager-column-picker.service';\nimport { SkyDataManagerToolbarLeftItemComponent } from './data-manager-toolbar/data-manager-toolbar-left-item.component';\nimport { SkyDataManagerToolbarPrimaryItemComponent } from './data-manager-toolbar/data-manager-toolbar-primary-item.component';\nimport { SkyDataManagerToolbarRightItemComponent } from './data-manager-toolbar/data-manager-toolbar-right-item.component';\nimport { SkyDataManagerToolbarSectionComponent } from './data-manager-toolbar/data-manager-toolbar-section.component';\nimport { SkyDataManagerToolbarComponent } from './data-manager-toolbar/data-manager-toolbar.component';\nimport { SkyDataManagerComponent } from './data-manager.component';\nimport { SkyDataViewComponent } from './data-view.component';\n\n@NgModule({\n declarations: [\n SkyDataManagerColumnPickerComponent,\n SkyDataManagerComponent,\n SkyDataManagerToolbarLeftItemComponent,\n SkyDataManagerToolbarPrimaryItemComponent,\n SkyDataManagerToolbarRightItemComponent,\n SkyDataManagerToolbarSectionComponent,\n SkyDataManagerToolbarComponent,\n SkyDataViewComponent,\n ],\n imports: [\n CommonModule,\n FormsModule,\n SkyBackToTopModule,\n SkyCheckboxModule,\n SkyDataManagerResourcesModule,\n SkyFilterModule,\n SkyIconModule,\n SkyModalModule,\n SkyRadioModule,\n SkyRepeaterModule,\n SkySearchModule,\n SkyStatusIndicatorModule,\n SkySortModule,\n SkyToolbarModule,\n SkyViewkeeperModule,\n ],\n exports: [\n SkyDataManagerColumnPickerComponent,\n SkyDataManagerComponent,\n SkyDataManagerToolbarLeftItemComponent,\n SkyDataManagerToolbarPrimaryItemComponent,\n SkyDataManagerToolbarRightItemComponent,\n SkyDataManagerToolbarSectionComponent,\n SkyDataManagerToolbarComponent,\n SkyDataViewComponent,\n ],\n providers: [\n {\n provide: SkyDataManagerColumnPickerService,\n useClass: SkyDataManagerColumnPickerImplService,\n },\n ],\n})\nexport class SkyDataManagerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyDataManagerService","i2","i3","i4","i3.SkyDataManagerColumnPickerService","i7","i1.SkyDataManagerColumnPickerContext","i2.SkyDataManagerService","i5","i6","i7.SkyDataManagerComponent","i8.SkyDataManagerToolbarComponent","i9.SkyDataViewComponent","i10","i1"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;AAKG;AAWH,MAAM,SAAS,GAA0C;AACvD,IAAA,OAAO,EAAE;AACP,QAAA,sCAAsC,EAAE;AACtC,YAAA,OAAO,EAAE,oCAAoC;AAC9C,SAAA;AACD,QAAA,6CAA6C,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;AAC3E,QAAA,sCAAsC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;AAC7D,QAAA,0CAA0C,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE;AACrE,QAAA,yCAAyC,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;AACnE,QAAA,6CAA6C,EAAE;AAC7C,YAAA,OAAO,EAAE,0BAA0B;AACpC,SAAA;AACD,QAAA,uCAAuC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE;AAC/D,QAAA,uDAAuD,EAAE;AACvD,YAAA,OAAO,EAAE,6BAA6B;AACvC,SAAA;AACF,KAAA;CACF,CAAC;MAEW,+BAA+B,CAAA;IAGnC,SAAS,CACd,UAA4B,EAC5B,IAAY,EAAA;QAEZ,OAAO,qBAAqB,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;KAClE;AACF,CAAA;AAED;;AAEG;MAWU,6BAA6B,CAAA;;0HAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA7B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,YAT9B,aAAa,CAAA,EAAA,CAAA,CAAA;AASZ,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,EAR7B,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,2BAA2B;AACpC,YAAA,QAAQ,EAAE,+BAA+B;AACzC,YAAA,KAAK,EAAE,IAAI;AACZ,SAAA;AACF,KAAA,EAAA,OAAA,EAAA,CAPS,aAAa,CAAA,EAAA,CAAA,CAAA;2FASZ,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAVzC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;AACxB,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,2BAA2B;AACpC,4BAAA,QAAQ,EAAE,+BAA+B;AACzC,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;ACxDD;;AAEG;MACU,gBAAgB,CAAA;AAoB3B,IAAA,WAAA,CAAY,IAA6B,EAAA;AAnBzC;;AAEG;QACI,IAAS,CAAA,SAAA,GAAa,EAAE,CAAC;AAChC;;AAEG;QACI,IAAkB,CAAA,kBAAA,GAAa,EAAE,CAAC;AAavC,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC;AACxD,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;KAC3C;AAED;;;AAGG;IACI,mBAAmB,GAAA;QACxB,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC;KACH;AACF;;ACtCD;;AAEG;MACU,mBAAmB,CAAA;AAiC9B,IAAA,WAAA,CAAY,IAAgC,EAAA;AAL5C;;AAEG;QACI,IAAK,CAAA,KAAA,GAAuB,EAAE,CAAC;QAGpC,MAAM,KAAK,GACT,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;AAErE,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAC9C,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;AAC1C,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;AAClC,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAC9C,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;AACpC,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;AAClC,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;KAC1B;AAED;;;AAGG;IACI,eAAe,GAAA;QACpB,MAAM,UAAU,GAA8B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAI;AACpE,YAAA,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;AACpC,SAAC,CAAC,CAAC;QAEH,OAAO;YACL,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;AAC7B,YAAA,KAAK,EAAE,UAAU;SAClB,CAAC;KACH;AAED;;;;AAIG;AACI,IAAA,gBAAgB,CAAC,MAAc,EAAA;AACpC,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;KAC1D;AAED;;;;;AAKG;IACI,eAAe,CACpB,MAAc,EACd,IAAsB,EAAA;AAEtB,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;AAE3E,QAAA,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE;AAC5B,YAAA,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;AACtC,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvB,SAAA;QAED,OAAO,IAAI,mBAAmB,CAAC;YAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;AAClB,SAAA,CAAC,CAAC;KACJ;AACF;;AC7GD;;AAEG;MACU,yBAAyB,CAAA;IAIpC,WAAY,CAAA,SAA8B,EAAE,MAAc,EAAA;QACxD,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAmB,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC;AACtE,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;KACtB;AACF;;;ACQD;;;;;;;AAOG;MAEU,qBAAqB,CAAA;AAahC,IAAA,WAAA,CAAY,eAAmC,EAAA;;AAZxC,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,eAAe,CAA2B,EAAE,CAAC,CAAC;AAE7E,QAAA,mCAAA,CAAA,GAAA,CAAA,IAAA,EAAyB,IAAI,aAAa,CAAS,CAAC,CAAC,CAAC,CAAA;AACtD,QAAA,wCAAA,CAAA,GAAA,CAAA,IAAA,EAA8B,IAAI,eAAe,CAAuB,EAAE,CAAC,CAAC,CAAA;AAC5E,QAAA,4BAAA,CAAA,GAAA,CAAA,IAAA,EAAkB,IAAI,eAAe,CAAsB,EAAE,CAAC,CAAC,CAAA;AAC/D,QAAA,sCAAA,CAAA,GAAA,CAAA,IAAA,EAA4B,IAAI,aAAa,CAA4B,CAAC,CAAC,CAAC,CAAA;QAE5E,oCAAoC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QACpC,oCAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;AACrC,QAAA,iCAAA,CAAA,GAAA,CAAA,IAAA,EAAc,wBAAwB,CAAC,CAAA;QACvC,sCAAqC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAGnC,QAAA,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAoB,eAAe,EAAA,GAAA,CAAA,CAAC;KACzC;IAEM,WAAW,GAAA;AAChB,QAAA,sBAAA,CAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAc,CAAC,QAAQ,EAAE,CAAC;AAC9B,QAAA,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAA,GAAA,CAAmB,CAAC,QAAQ,EAAE,CAAC;AACnC,QAAA,sBAAA,CAAA,IAAI,EAAA,4BAAA,EAAA,GAAA,CAAO,CAAC,QAAQ,EAAE,CAAC;AACvB,QAAA,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAiB,CAAC,QAAQ,EAAE,CAAC;AACjC,QAAA,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;AAED;;;;;;AAMG;AACI,IAAA,eAAe,CAAC,IAA4B,EAAA;QACjD,IAAI,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,EAAE;AACvB,YAAA,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;YACzE,OAAO;AACR,SAAA;AAED,QAAA,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAkB,IAAI,EAAA,GAAA,CAAA,CAAC;AAE3B,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAC/C,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;AAErC,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAC3C,QAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;AAErD,QAAA,IAAI,WAAW,EAAE;AACf,YAAA,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA;AAClB,iBAAA,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAAC,eAAe,EAAE,CAAC;AAC1D,iBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,iBAAA,SAAS,CAAC,CAAC,MAAkC,KAAI;AAChD,gBAAA,IAAI,CAAC,eAAe,CAClB,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAC/B,sBAAA,CAAA,IAAI,EAAA,iCAAA,EAAA,GAAA,CAAY,CACjB,CAAC;AACJ,aAAC,CAAC,CAAC;AACN,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,sBAAA,CAAA,IAAI,EAAY,iCAAA,EAAA,GAAA,CAAA,CAAC,CAAC;AAC1D,SAAA;AAED,QAAA,IAAI,WAAW,EAAE;AACf,YAAA,IAAI,CAAC,mBAAmB,CAAC,sBAAA,CAAA,IAAI,yCAAY,CAAC;AACvC,iBAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,iBAAA,SAAS,CAAC,CAAC,KAA0B,KAAI;AACxC,gBAAA,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA;AAClB,qBAAA,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;AAC/C,qBAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;qBACpC,SAAS;;AAER,gBAAA,MAAO,GAAC,EACR,CAAC,GAAG,KAAI;AACN,oBAAA,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;AACtD,oBAAA,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpB,iBAAC,CACF,CAAC;AACN,aAAC,CAAC,CAAC;AACN,SAAA;KACF;AAED;;;AAGG;AACI,IAAA,YAAY,CAAC,UAA6B,EAAA;AAC/C,QAAA,MAAM,YAAY,GAAG,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,KAAK,CAAC;QAEvC,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;YACnC,OAAO,CAAC,IAAI,CACV,CAAA,gCAAA,EAAmC,UAAU,CAAC,EAAE,CAAgC,8BAAA,CAAA,CACjF,CAAC;YACF,OAAO;AACR,SAAA;AAED,QAAA,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAC9B,QAAA,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;;;AAI/B,QAAA,sBAAA,CAAA,IAAI,EAAc,mCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,KAAI;AAChD,YAAA,sBAAA,CAAA,IAAI,EAAc,mCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9B,SAAC,CAAC,CAAC;AAEH,QAAA,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA;AAClB,aAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,aAAA,SAAS,CAAC,CAAC,MAAM,KAAI;AACpB,YAAA,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YACnC,MAAM,gBAAgB,GAAG,SAAS,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAEnE,IAAI,CAAC,gBAAgB,EAAE;AACrB,gBAAA,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;;;gBAIrE,IAAI,UAAU,CAAC,aAAa,EAAE;oBAC5B,MAAM,SAAS,GAAG,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,aAAa,KAAI;wBAC/D,OAAO,aAAa,CAAC,EAAE,CAAC;AAC1B,qBAAC,CAAC,CAAC;AACH,oBAAA,MAAM,kBAAkB,GAAG,UAAU,CAAC,aAAa;AAChD,yBAAA,MAAM,CAAC,CAAC,YAAY,KAAI;AACvB,wBAAA,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC;AACnC,qBAAC,CAAC;AACD,yBAAA,GAAG,CAAC,CAAC,YAAY,KAAI;wBACpB,OAAO,YAAY,CAAC,EAAE,CAAC;AACzB,qBAAC,CAAC,CAAC;AAEL,oBAAA,YAAY,CAAC,SAAS,GAAG,SAAS,CAAC;AACnC,oBAAA,YAAY,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;AACtD,iBAAA;AACD,gBAAA,MAAM,YAAY,GAAG,SAAS,CAAC,eAAe,CAC5C,UAAU,CAAC,EAAE,EACb,YAAY,CACb,CAAC;gBAEF,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,sBAAA,CAAA,IAAI,EAAY,iCAAA,EAAA,GAAA,CAAA,CAAC,CAAC;AACtD,aAAA;AAAM,iBAAA;gBACL,MAAM,yBAAyB,GAC7B,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa,KAAI;oBAC9C,OAAO,aAAa,CAAC,EAAE,CAAC;iBACzB,CAAC,IAAI,EAAE,CAAC;;;;;AAMX,gBAAA,IAAI,gBAAgB,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;oBACzC,IAAI,YAAY,GAAG,yBAAyB,EAAE,MAAM,CAClD,CAAC,EAAE,KAAK,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CACnD,CAAC;oBACF,YAAY,GAAG,YAAY,EAAE,MAAM,CAAC,CAAC,QAAQ,KAAI;wBAC/C,OAAO,UAAU,CAAC,aAAa,EAAE,IAAI,CACnC,CAAC,YAAY,KACX,YAAY,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,WAAW,CAC5D,CAAC;AACJ,qBAAC,CAAC,CAAC;;;AAIH,oBAAA,gBAAgB,CAAC,kBAAkB;AACjC,wBAAA,gBAAgB,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAC5D,iBAAA;;;AAGD,gBAAA,gBAAgB,CAAC,SAAS,GAAG,yBAAyB,CAAC;AAEvD,gBAAA,MAAM,YAAY,GAAG,SAAS,CAAC,eAAe,CAC5C,UAAU,CAAC,EAAE,EACb,gBAAgB,CACjB,CAAC;gBAEF,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,sBAAA,CAAA,IAAI,EAAY,iCAAA,EAAA,GAAA,CAAA,CAAC,CAAC;AACtD,aAAA;AACH,SAAC,CAAC;AACD,aAAA,WAAW,EAAE,CAAC;KAClB;AAED;;;;;;AAMG;IACI,mBAAmB,CACxB,QAAgB,EAChB,YAAkD,EAAA;;AAGlD,QAAA,IAAI,YAAY,EAAE;AAChB,YAAA,OAAO,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAC/B,MAAM,CAAC,CAAC,WAAW,KAAK,QAAQ,KAAK,WAAW,CAAC,MAAM,CAAC,EACxD,GAAG,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,CAAC,EAC3C,YAAY,CAAC,UAAU;AACrB,kBAAE,oBAAoB,CAAC,YAAY,CAAC,UAAU,CAAC;AAC/C,kBAAE,oBAAoB,CAClB,sBAAA,CAAA,IAAI,EAA2B,gCAAA,EAAA,GAAA,EAAA,gDAAA,CAAA,CAAA,IAAA,CAA/B,IAAI,EACF,YAAY,CAAC,UAAkD,CAChE,CACF,CACN,CAAC;AACH,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAC/B,MAAM,CAAC,CAAC,WAAW,KAAK,QAAQ,KAAK,WAAW,CAAC,MAAM,CAAC,EACxD,GAAG,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC,SAAS,CAAC,CAC5C,CAAC;AACH,SAAA;KACF;AAED;;;;;;AAMG;IACI,eAAe,CAAC,KAA0B,EAAE,QAAgB,EAAA;QACjE,MAAM,QAAQ,GAAG,IAAI,mBAAmB,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC;QAClE,MAAM,cAAc,GAAG,IAAI,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAEzE,QAAA,sBAAA,CAAA,IAAI,EAAiB,sCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KAC5C;AAED;;AAEG;IACI,2BAA2B,GAAA;AAChC,QAAA,OAAO,sBAAA,CAAA,IAAI,EAAmB,wCAAA,EAAA,GAAA,CAAA,CAAC,KAAK,CAAC;KACtC;AAED;;AAEG;IACI,2BAA2B,GAAA;QAChC,OAAO,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAA,GAAA,CAAmB,CAAC;KAChC;AAED;;;AAGG;AACI,IAAA,uBAAuB,CAAC,KAA2B,EAAA;AACxD,QAAA,sBAAA,CAAA,IAAI,EAAmB,wCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACrC;AAED;;AAEG;IACI,mBAAmB,GAAA;QACxB,OAAO,sBAAA,CAAA,IAAI,EAAA,4BAAA,EAAA,GAAA,CAAO,CAAC;KACpB;AAED;;AAEG;IACI,sBAAsB,GAAA;QAC3B,OAAO,sBAAA,CAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAc,CAAC;KAC3B;AAED;;;AAGG;AACI,IAAA,kBAAkB,CAAC,EAAU,EAAA;AAClC,QAAA,sBAAA,CAAA,IAAI,EAAc,mCAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC7B;AAED;;;AAGG;AACI,IAAA,WAAW,CAAC,MAAc,EAAA;AAC/B,QAAA,MAAM,YAAY,GAAwB,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,KAAK,CAAC;AAC5D,QAAA,MAAM,UAAU,GAAkC,YAAY,CAAC,IAAI,CACjE,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,KAAK,MAAM,CAC7B,CAAC;AAEF,QAAA,OAAO,UAAU,CAAC;KACnB;AAED;;;;;AAKG;AACI,IAAA,gBAAgB,CAAC,IAAuB,EAAA;AAC7C,QAAA,MAAM,YAAY,GAAwB,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,KAAK,CAAC;AAC5D,QAAA,MAAM,iBAAiB,GAAG,YAAY,CAAC,SAAS,CAC9C,CAAC,WAAW,KAAK,WAAW,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAC5C,CAAC;AAEF,QAAA,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE;YAC5B,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;AACnE,SAAA;AAAM,aAAA;AACL,YAAA,YAAY,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;AACvC,YAAA,sBAAA,CAAA,IAAI,EAAO,4BAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAChC,SAAA;KACF;AAED;;AAEG;IACI,oBAAoB,CAAC,MAAc,EAAE,OAAiB,EAAA;AAC3D,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;AACvD,QAAA,iBAAiB,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;AAEpC,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;KAChD;;AAGC,mCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,wCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,4BAAA,GAAA,IAAA,OAAA,EAAA,EAAA,sCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,oCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,oCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,iCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,sCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,gCAAA,GAAA,IAAA,OAAA,EAAA,EAAA,gDAAA,GAAA,SAAA,gDAAA,CAAA,KAA0B,EAC1B,UAA4D,EAAA;AAE5D,IAAA,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;IAChD,MAAM,uBAAuB,GAA4B,EAAE,CAAC;AAE5D,IAAA,IAAI,UAAU,EAAE;AACd,QAAA,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE;YACjC,IAAI,QAAQ,IAAI,eAAe,EAAE;gBAC/B,uBAAuB,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;AAC/D,aAAA;AACF,SAAA;AACF,KAAA;AAED,IAAA,OAAO,uBAAuB,CAAC;AACjC,CAAC,+GAGC,UAA4D,EAAA;AAE5D,IAAA,OAAO,CACL,MAA2B,EAC3B,MAA2B,KAChB;AACX,QAAA,MAAM,cAAc,GAAG,sBAAA,CAAA,IAAI,EAA2B,gCAAA,EAAA,GAAA,EAAA,gDAAA,CAAA,CAAA,IAAA,CAA/B,IAAI,EACzB,MAAM,EACN,UAAU,CACX,CAAC;AACF,QAAA,MAAM,cAAc,GAAG,sBAAA,CAAA,IAAI,EAA2B,gCAAA,EAAA,GAAA,EAAA,gDAAA,CAAA,CAAA,IAAA,CAA/B,IAAI,EACzB,MAAM,EACN,UAAU,CACX,CAAC;AACF,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;AAC3E,KAAC,CAAC;AACJ,CAAC,CAAA;kHAxVU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;sHAArB,qBAAqB,EAAA,CAAA,CAAA;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBADjC,UAAU;;;AC7BX;;AAEG;IACS,uCAUX;AAVD,CAAA,UAAY,sCAAsC,EAAA;AAChD;;AAEG;AACH,IAAA,sCAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACb;;;AAGG;AACH,IAAA,sCAAA,CAAA,0BAAA,CAAA,GAAA,0BAAqD,CAAA;AACvD,CAAC,EAVW,sCAAsC,KAAtC,sCAAsC,GAUjD,EAAA,CAAA,CAAA;;MCVY,iCAAiC,CAAA;AAC5C,IAAA,WAAA,CACS,aAAiD,EACjD,kBAA4B,EAC5B,wBAAmE,GAAA,sCAAsC,CAAC,wBAAwB,EAAA;QAFlI,IAAa,CAAA,aAAA,GAAb,aAAa,CAAoC;QACjD,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAU;QAC5B,IAAwB,CAAA,wBAAA,GAAxB,wBAAwB,CAA0G;KACvI;AACL;;;ACKD,MAAM,0BAA0B,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAEjE;;AAEG;MAMU,uBAAuB,CAAA;AAClC,IAAA,IAAW,wBAAwB,GAAA;QACjC,OAAO,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAA2B,CAAC;KACxC;IAED,IAAW,wBAAwB,CAAC,KAA2B,EAAA;AAC7D,QAAA,sBAAA,CAAA,IAAI,EAA8B,kDAAA,EAAA;AAChC,YAAA,GAAG,0BAA0B;AAC7B,YAAA,IAAI,KAAK,IAAI,EAAE,CAAC;AACjB,SAAA,EAAA,GAAA,CAAA,CAAC;AACF,QAAA,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAA,GAAA,CAAiB,CAAC,YAAY,EAAE,CAAC;KACtC;AAED,IAAA,IAAW,aAAa,GAAA;QACtB,OAAO,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAgB,CAAC;KAC7B;IAED,IAAW,aAAa,CAAC,KAAc,EAAA;AACrC,QAAA,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAmB,KAAK,EAAA,GAAA,CAAA,CAAC;AAC7B,QAAA,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAA,GAAA,CAAiB,CAAC,YAAY,EAAE,CAAC;KACtC;IAkBD,WACE,CAAA,eAAkC,EAClC,kBAAyC,EAAA;AAlBpC,QAAA,IAAA,CAAA,mBAAmB,GAAG,IAAI,OAAO,EAAuB,CAAC;AAEzD,QAAA,IAAA,CAAA,gBAAgB,GAAG;AACxB,YAAA,YAAY,EAAE,IAAI;SACnB,CAAC;QAEF,qCAAkC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAClC,QAAA,6CAAA,CAAA,GAAA,CAAA,IAAA,EAAkD,EAAE,CAAC,CAAA;QACrD,sCAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;AACrC,QAAA,iCAAA,CAAA,GAAA,CAAA,IAAA,EAAY,sBAAsB,CAAC,CAAA;QACnC,wCAAoC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QACpC,2CAA2C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAE3C,QAAA,uCAAA,CAAA,GAAA,CAAA,IAAA,EAAkB,KAAK,CAAC,CAAA;AACxB,QAAA,kDAAA,CAAA,GAAA,CAAA,IAAA,EAA6B,0BAA0B,CAAC,CAAA;AAMtD,QAAA,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAoB,eAAe,EAAA,GAAA,CAAA,CAAC;AACxC,QAAA,sBAAA,CAAA,IAAI,EAAA,2CAAA,EAAuB,kBAAkB,EAAA,GAAA,CAAA,CAAC;KAC/C;IAEM,QAAQ,GAAA;AACb,QAAA,sBAAA,CAAA,IAAI,EAAoB,2CAAA,EAAA,GAAA,CAAA;AACrB,aAAA,mBAAmB,CAAC,sBAAA,CAAA,IAAI,EAAA,iCAAA,EAAA,GAAA,CAAU,CAAC;AACnC,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,OAAO,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC;QAEhD,sBAAA,CAAA,IAAI,EAAoB,2CAAA,EAAA,GAAA,CAAA,CAAC,iBAAiB;AACvC,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,OAAO,KAAI;AACrB,YAAA,sBAAA,CAAA,IAAI,EAAA,6CAAA,EAAyB,OAAO,EAAA,GAAA,CAAA,CAAC;AACrC,YAAA,IAAI,CAAC,wBAAwB,GAAG,sBAAA,CAAA,IAAI,EAAc,qCAAA,EAAA,GAAA,CAAA;AAChD,kBAAE,OAAO,CAAC,sBAAA,CAAA,IAAI,6CAAc,CAAC;kBAC3B,SAAS,CAAC;AAChB,SAAC,CAAC,CAAC;AAEL,QAAA,sBAAA,CAAA,IAAI,EAAoB,2CAAA,EAAA,GAAA,CAAA;AACrB,aAAA,sBAAsB,EAAE;AACxB,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,YAAY,KAAI;AAC1B,YAAA,sBAAA,CAAA,IAAI,EAAA,qCAAA,EAAiB,YAAY,EAAA,GAAA,CAAA,CAAC;AAClC,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAC5B,IAAI,EAAE,uBAAuB,CAAC,SAAS;AACxC,aAAA,CAAC,CAAC;AACH,YAAA,IAAI,CAAC,wBAAwB;AAC3B,gBAAA,sBAAA,CAAA,IAAI,EAAsB,6CAAA,EAAA,GAAA,CAAA,CAAC,uBAAA,IAAI,EAAA,qCAAA,EAAA,GAAA,CAAc,CAAC,CAAC;AACnD,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;AAChB,QAAA,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;;;oHA7EU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,qBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,wDCxBpC,uQAUA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,GAAA,CAAA,EAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDca,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,kBAAkB,EAAA,eAAA,EAEX,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,uQAAA,EAAA,CAAA;;;AEpBjD;AACA;;AAEG;MACU,gCAAgC,CAAA;AAK5C;;ACPD;;;;;AAKG;MAEmB,iCAAiC,CAAA;;8HAAjC,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kIAAjC,iCAAiC,EAAA,CAAA,CAAA;2FAAjC,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBADtD,UAAU;;;;ACiBX;;;;AAIG;MAOU,8BAA8B,CAAA;AACzC,IAAA,IAAW,UAAU,GAAA;QACnB,OAAO,sBAAA,CAAA,IAAI,EAAA,2CAAA,EAAA,GAAA,CAAa,CAAC;KAC1B;IAED,IAAW,UAAU,CAAC,KAAoC,EAAA;AACxD,QAAA,sBAAA,CAAA,IAAI,EAAA,2CAAA,EAAgB,KAAK,EAAA,GAAA,CAAA,CAAC;AAC1B,QAAA,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;KACrC;AAED,IAAA,IAAW,iBAAiB,GAAA;QAC1B,OAAO,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC;KACjC;IAED,IAAW,iBAAiB,CAAC,KAAuC,EAAA;AAClE,QAAA,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAuB,KAAK,EAAA,GAAA,CAAA,CAAC;AACjC,QAAA,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;KACrC;AAED,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,sBAAA,CAAA,IAAI,EAAA,0CAAA,EAAA,GAAA,CAAY,CAAC;KACzB;IAED,IAAW,SAAS,CAAC,KAAsC,EAAA;AACzD,QAAA,sBAAA,CAAA,IAAI,EAAA,0CAAA,EAAe,KAAK,EAAA,GAAA,CAAA,CAAC;AACzB,QAAA,IAAI,KAAK,EAAE;YACT,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA,CAAC,eAAe,CAAC,KAAK,EAAE,sBAAA,CAAA,IAAI,EAAS,uCAAA,EAAA,GAAA,CAAA,CAAC,CAAC;AAChE,SAAA;KACF;AAED,IAAA,IAAW,KAAK,GAAA;QACd,OAAO,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAA,GAAA,CAAQ,CAAC;KACrB;IAED,IAAW,KAAK,CAAC,KAA0B,EAAA;AACzC,QAAA,sBAAA,CAAA,IAAI,EAAA,sCAAA,EAAW,KAAK,EAAA,GAAA,CAAA,CAAC;AACrB,QAAA,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;KACrC;AAiBD,IAAA,WAAA,CACE,cAAiC,EACjC,kBAAyC,EACzC,YAA6B,EAC7B,mBAAsD,EAAA;QAjBxD,6CAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;QACrC,8CAAmC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QACnC,kDAA2C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAC3C,4CAA+B,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAC/B,mDAAwD,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;;AAGxD,QAAA,uCAAA,CAAA,GAAA,CAAA,IAAA,EAAW,SAAS,CAAC,CAAA;QACrB,2CAA4C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAC5C,kDAAsD,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QACtD,0CAA6C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAC7C,QAAA,sCAAA,CAAA,GAAA,CAAA,IAAA,EAA+B,EAAE,CAAC,CAAA;AAQhC,QAAA,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAmB,cAAc,EAAA,GAAA,CAAA,CAAC;AACtC,QAAA,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAuB,kBAAkB,EAAA,GAAA,CAAA,CAAC;AAC9C,QAAA,sBAAA,CAAA,IAAI,EAAA,4CAAA,EAAiB,YAAY,EAAA,GAAA,CAAA,CAAC;AAClC,QAAA,sBAAA,CAAA,IAAI,EAAA,mDAAA,EAAwB,mBAAmB,EAAA,GAAA,CAAA,CAAC;KACjD;IAEM,QAAQ,GAAA;AACb,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA;AACrB,aAAA,sBAAsB,EAAE;AACxB,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,YAAY,KAAI;;AAE1B,YAAA,IAAI,YAAY,EAAE;gBAChB,IAAI,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;AACrE,gBAAA,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;AACrC,aAAA;AACH,SAAC,CAAC,CAAC;AAEL,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA;AACrB,aAAA,mBAAmB,EAAE;AACrB,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,KAAK,KAAI;AACnB,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,gBAAA,IAAI,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA,CAAC,WAAW,CACpD,IAAI,CAAC,UAAU,CAAC,EAAE,CACnB,CAAC;AACH,aAAA;AACD,YAAA,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;AACtC,SAAC,CAAC,CAAC;AAEL,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA;AACrB,aAAA,mBAAmB,CAAC,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CAAC;AAClC,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,SAAS,KAAI;AACvB,YAAA,sBAAA,CAAA,IAAI,EAAA,0CAAA,EAAe,SAAS,EAAA,GAAA,CAAA,CAAC;AAC7B,YAAA,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,gBAAgB,CAAC;AACnD,YAAA,sBAAA,CAAA,IAAI,EAAA,8CAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;AACtC,SAAC,CAAC,CAAC;AAEL,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA;AACrB,aAAA,2BAA2B,EAAE;AAC7B,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,MAAM,KAAI;AACpB,YAAA,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC;AAClC,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;AAChB,QAAA,sBAAA,CAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,sBAAA,CAAA,IAAI,EAAA,6CAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;AAEM,IAAA,YAAY,CAAC,UAAoC,EAAA;QACtD,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,CAAC,gBAAgB,GAAG,UAAU,CAAC;AAC7C,YAAA,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CAAC,CAAC;AACzE,SAAA;KACF;AAEM,IAAA,YAAY,CAAC,MAAc,EAAA;AAChC,QAAA,sBAAA,CAAA,IAAI,EAAoB,kDAAA,EAAA,GAAA,CAAA,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;KACrD;AAEM,IAAA,aAAa,CAAC,IAAY,EAAA;QAC/B,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC;AACjC,YAAA,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CAAC,CAAC;AACzE,SAAA;KACF;IAEM,mBAAmB,GAAA;AACxB,QAAA,MAAM,OAAO,GAAG,IAAI,gCAAgC,EAAE,CAAC;QACvD,MAAM,WAAW,GACf,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC;QAExE,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;AAEhD,QAAA,MAAM,OAAO,GAAmC;AAC9C,YAAA,SAAS,EAAE;AACT,gBAAA,EAAE,OAAO,EAAE,gCAAgC,EAAE,QAAQ,EAAE,OAAO,EAAE;AACjE,aAAA;AACD,YAAA,IAAI,EAAE,OAAO;SACd,CAAC;AAEF,QAAA,IAAI,WAAW,EAAE;AACf,YAAA,MAAM,aAAa,GAAG,sBAAA,CAAA,IAAI,EAAc,4CAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAEpE,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAyB,KAAI;gBAC3D,IAAI,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE;oBAC9C,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;AACxC,oBAAA,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC,eAAe,CACtC,IAAI,CAAC,SAAS,EACd,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CACd,CAAC;AACH,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAEM,gBAAgB,GAAA;AACrB,QAAA,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;AACtE,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AACtE,YAAA,IAAI,SAAS,EAAE;AACb,gBAAA,MAAM,OAAO,GAAG,IAAI,iCAAiC,CACnD,IAAI,CAAC,UAAU,CAAC,aAAa,EAC7B,SAAS,CAAC,kBAAkB,CAC7B,CAAC;AAEF,gBAAA,IAAI,IAAI,CAAC,UAAU,CAAC,wBAAwB,EAAE;AAC5C,oBAAA,OAAO,CAAC,wBAAwB;AAC9B,wBAAA,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;AAC5C,iBAAA;AAED,gBAAA,MAAM,OAAO,GAAmC;AAC9C,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,iCAAiC,EAAE,QAAQ,EAAE,OAAO,EAAE;AAClE,qBAAA;iBACF,CAAC;AAEF,gBAAA,MAAM,aAAa,GAAG,sBAAA,CAAA,IAAI,EAAA,4CAAA,EAAA,GAAA,CAAc,CAAC,IAAI,CAC3C,sBAAA,CAAA,IAAI,2DAAqB,CAAC,gBAAgB,EAAE,EAC5C,OAAO,CACR,CAAC;gBAEF,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAyB,KAAI;AAC3D,oBAAA,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE;AAC5B,wBAAA,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CACxC,CAAC,GAAqC,KAAK,GAAG,CAAC,EAAE,CAClD,CAAC;AAEF,wBAAA,SAAS,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;AAClD,wBAAA,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;AACrC,4BAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAC7C,IAAI,CAAC,UAAU,CAAC,EAAE,EAClB,SAAS,CACV,CAAC;AACH,yBAAA;AACF,qBAAA;AACH,iBAAC,CAAC,CAAC;AACJ,aAAA;AACF,SAAA;KACF;IAEM,SAAS,GAAA;;AAEd,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,gBAAgB,EAAE;AACrC,YAAA,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;AACpC,SAAA;KACF;IAEM,QAAQ,GAAA;;AAEb,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,eAAe,EAAE;AACpC,YAAA,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;AACnC,SAAA;KACF;AAEM,IAAA,kBAAkB,CAAC,KAAwB,EAAA;QAChD,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,SAAS,CAAC,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;AAClD,YAAA,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAA,CAAA,IAAI,EAAA,uCAAA,EAAA,GAAA,CAAS,CAAC,CAAC;AACzE,SAAA;KACF;;;2HA/NU,8BAA8B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAH,qBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,eAAA,EAAA,EAAA,EAAA,KAAA,EAAAG,iCAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,8BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,gECtC3C,skIAqHA,EAAA,MAAA,EAAA,CAAA,w5BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,IAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,MAAA,EAAA,cAAA,EAAA,SAAA,EAAA,eAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,EAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,cAAA,EAAA,cAAA,EAAA,QAAA,EAAA,UAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,YAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,GAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,UAAA,EAAA,IAAA,EAAA,OAAA,EAAA,YAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,eAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,GAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,cAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,GAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FD/Ea,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAN1C,SAAS;+BACE,0BAA0B,EAAA,eAAA,EAGnB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,skIAAA,EAAA,MAAA,EAAA,CAAA,w5BAAA,CAAA,EAAA,CAAA;;;;AEtBjD;;;;AAIG;MAMU,oBAAoB,CAAA;AAQ/B,IAAA,IAAW,QAAQ,GAAA;QACjB,OAAO,sBAAA,CAAA,IAAI,EAAA,+BAAA,EAAA,GAAA,CAAW,CAAC;KACxB;IAED,IAAW,QAAQ,CAAC,KAAc,EAAA;AAChC,QAAA,sBAAA,CAAA,IAAI,EAAA,+BAAA,EAAc,KAAK,EAAA,GAAA,CAAA,CAAC;AACxB,QAAA,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAA,GAAA,CAAgB,CAAC,YAAY,EAAE,CAAC;KACrC;IAQD,WACE,CAAA,kBAAyC,EACzC,cAAiC,EAAA;AARnC,QAAA,+BAAA,CAAA,GAAA,CAAA,IAAA,EAAa,KAAK,CAAC,CAAA;QAEnB,mCAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;QACrC,wCAA2C,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;QAC3C,oCAAmC,CAAA,GAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAMjC,QAAA,sBAAA,CAAA,IAAI,EAAA,wCAAA,EAAuB,kBAAkB,EAAA,GAAA,CAAA,CAAC;AAC9C,QAAA,sBAAA,CAAA,IAAI,EAAA,oCAAA,EAAmB,cAAc,EAAA,GAAA,CAAA,CAAC;KACvC;IAEM,QAAQ,GAAA;AACb,QAAA,sBAAA,CAAA,IAAI,EAAoB,wCAAA,EAAA,GAAA,CAAA;AACrB,aAAA,sBAAsB,EAAE;AACxB,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,YAAY,KAAI;YAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,YAAY,CAAC;AAC/C,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;AAChB,QAAA,sBAAA,CAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,sBAAA,CAAA,IAAI,EAAA,mCAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;;;iHA3CU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAL,qBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,mFCxBjC,mFAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDqBa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;+BACE,eAAe,EAAA,eAAA,EAER,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,mFAAA,EAAA,CAAA;yIAQxC,MAAM,EAAA,CAAA;sBADZ,KAAK;;;;AEHR;;AAEG;MAQU,mCAAmC,CAAA;AAC9C,IAAA,IAAW,SAAS,GAAA;QAClB,OAAO,sBAAA,CAAA,IAAI,EAAA,+CAAA,EAAA,GAAA,CAAY,CAAC;KACzB;IAED,IAAW,SAAS,CAAC,KAA0B,EAAA;AAC7C,QAAA,sBAAA,CAAA,IAAI,EAAA,+CAAA,EAAe,KAAK,EAAA,GAAA,CAAA,CAAC;QACzB,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;AAoBD,IAAA,WAAA,CACS,OAA0C,EAC1C,kBAAyC,EACzC,QAA0B,EAAA;QAF1B,IAAO,CAAA,OAAA,GAAP,OAAO,CAAmC;QAC1C,IAAkB,CAAA,kBAAA,GAAlB,kBAAkB,CAAuB;QACzC,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAkB;;QArB5B,IAAU,CAAA,UAAA,GAAa,EAAE,CAAC;QAC1B,IAAmB,CAAA,mBAAA,GAAa,EAAE,CAAC;AACnC,QAAA,IAAA,CAAA,UAAU,GAAsB;AACrC,YAAA,EAAE,EAAE,cAAc;AAClB,YAAA,IAAI,EAAE,eAAe;AACrB,YAAA,aAAa,EAAE,IAAI;AACnB,YAAA,gBAAgB,EAAE,KAAK;AACvB,YAAA,yBAAyB,EAAE,IAAI;YAC/B,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3C,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;SAC1C,CAAC;QAEK,IAA4B,CAAA,4BAAA,GAAG,KAAK,CAAC;QAE5C,kDAAiB,CAAA,GAAA,CAAA,IAAA,EAAA,IAAI,OAAO,EAAQ,CAAC,CAAA;AAErC,QAAA,+CAAA,CAAA,GAAA,CAAA,IAAA,EAAc,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAA;KAMtC;IAEG,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC;AACtC,YAAA,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;AAChC,YAAA,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,IAAI,CAAC,SAAS;AACjC,SAAA,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtD,IAAI,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAqB,8CAAA,EAAA,GAAA,EAAA,wDAAA,CAAA,CAAA,IAAA,CAAzB,IAAI,CAAuB,CAAC;AAE9C,QAAA,IAAI,CAAC,kBAAkB;aACpB,mBAAmB,CAAC,cAAc,CAAC;AACnC,aAAA,IAAI,CAAC,SAAS,CAAC,uBAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAe,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,KAAK,KAAI;AACnB,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;AACzB,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;AAChB,QAAA,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAe,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,sBAAA,CAAA,IAAI,EAAA,kDAAA,EAAA,GAAA,CAAe,CAAC,QAAQ,EAAE,CAAC;KAChC;IAEM,UAAU,GAAA;QACf,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAC3C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CACtD,CAAC;AAEF,QAAA,IAAI,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;AACnC,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CACxD,CAAC,GAAG,KAAK,GAAG,CAAC,UAAU,CACxB,CAAC;AACH,SAAA;AAED,QAAA,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAC/D,CAAC,GAAG,KAAK,GAAG,CAAC,UAAU,CACxB,CAAC;KACH;AAEM,IAAA,aAAa,CAAC,OAAiB,EAAA;QACpC,IAAI,eAAe,GAAG,OAAO,CAAC;AAC9B,QAAA,MAAM,UAAU,GACd,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC;AAE7D,QAAA,IAAI,UAAU,EAAE;YACd,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,KAAI;AACxC,gBAAA,KAAK,MAAM,QAAQ,IAAI,IAAI,EAAE;oBAC3B,IACE,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;yBACnD,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,aAAa,CAAC,EACpD;wBACA,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;wBACnD,IAAI,YAAY,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE;AACzD,4BAAA,OAAO,IAAI,CAAC;AACb,yBAAA;AACF,qBAAA;AACF,iBAAA;AAED,gBAAA,OAAO,KAAK,CAAC;AACf,aAAC,CAAC,CAAC;AACJ,SAAA;AACD,QAAA,OAAO,eAAe,CAAC;KACxB;IAEM,SAAS,GAAA;AACd,QAAA,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,MAAM,MAAM,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEM,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,MAAM,MAAM,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEM,kBAAkB,GAAA;QACvB,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEM,aAAa,GAAA;AAClB,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;KACxB;AAEM,IAAA,UAAU,CAAC,EAAU,EAAA;QAC1B,QACE,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,KAAK,KAAK,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,EACzE;KACH;IAEM,YAAY,GAAA;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,eAAe,CAAC,CACvE,CAAC;KACH;;;AAGC,IAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;AACpD,IAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;IACzD,IAAI,sBAAsB,GAAa,EAAE,CAAC;IAC1C,MAAM,uBAAuB,GAAa,EAAE,CAAC;AAE7C,IAAA,KAAK,MAAM,YAAY,IAAI,gBAAgB,EAAE;;QAE3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAC3D,QAAA,MAAM,eAAe,GAAW;YAC9B,eAAe,EAAE,YAAY,CAAC,eAAe;YAC7C,EAAE,EAAE,YAAY,CAAC,EAAE;YACnB,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,WAAW,EAAE,YAAY,CAAC,WAAW;AACrC,YAAA,UAAU,EAAE,QAAQ,KAAK,CAAC,CAAC;SAC5B,CAAC;;;AAIF,QAAA,IACE,IAAI,CAAC,OAAO,CAAC,wBAAwB;YACrC,sCAAsC,CAAC,wBAAwB,EAC/D;YACA,IAAI,eAAe,CAAC,UAAU,EAAE;AAC9B,gBAAA,sBAAsB,CAAC,QAAQ,CAAC,GAAG,eAAe,CAAC;AACpD,aAAA;AAAM,iBAAA;AACL,gBAAA,uBAAuB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAC/C,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,sBAAsB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAC9C,SAAA;AACF,KAAA;;;AAID,IAAA,IACE,IAAI,CAAC,OAAO,CAAC,wBAAwB;QACrC,sCAAsC,CAAC,wBAAwB,EAC/D;QACA,uBAAuB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,KACtC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CACrC,CAAC;AACF,QAAA,sBAAsB,GAAG,sBAAsB,CAAC,MAAM,CACpD,uBAAuB,CACxB,CAAC;AACH,KAAA;AAED,IAAA,OAAO,sBAAsB,CAAC;AAChC,CAAC,CAAA;gIAhLU,mCAAmC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAK,iCAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,qBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnC,mCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mCAAmC,EAHnC,QAAA,EAAA,gCAAA,EAAA,SAAA,EAAA,CAAC,qBAAqB,CAAC,0BCjCpC,m4DAwDA,EAAA,MAAA,EAAA,CAAA,kKAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,UAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,EAAA,aAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,EAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,GAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,iBAAA,EAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,8BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,GAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FDpBa,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAP/C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gCAAgC,aAG/B,CAAC,qBAAqB,CAAC,EACjB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,m4DAAA,EAAA,MAAA,EAAA,CAAA,kKAAA,CAAA,EAAA,CAAA;;;ME7BpC,qCAAqC,CAAA;IACzC,gBAAgB,GAAA;AACrB,QAAA,OAAO,mCAAmC,CAAC;KAC5C;;kIAHU,qCAAqC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;sIAArC,qCAAqC,EAAA,CAAA,CAAA;2FAArC,qCAAqC,EAAA,UAAA,EAAA,CAAA;kBADjD,UAAU;;;ACFX;;;;AAIG;MAKU,sCAAsC,CAAA;;mIAAtC,sCAAsC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtC,sCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sCAAsC,0ECXnD,wEAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDQa,sCAAsC,EAAA,UAAA,EAAA,CAAA;kBAJlD,SAAS;+BACE,oCAAoC,EAAA,QAAA,EAAA,wEAAA,EAAA,CAAA;;;AENhD;;;;AAIG;MAKU,yCAAyC,CAAA;;sIAAzC,yCAAyC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzC,yCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yCAAyC,6ECXtD,wEAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDQa,yCAAyC,EAAA,UAAA,EAAA,CAAA;kBAJrD,SAAS;+BACE,uCAAuC,EAAA,QAAA,EAAA,wEAAA,EAAA,CAAA;;;AENnD;;;;;AAKG;MAKU,uCAAuC,CAAA;;oIAAvC,uCAAuC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvC,uCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uCAAuC,2ECZpD,6BACA,EAAA,CAAA,CAAA;2FDWa,uCAAuC,EAAA,UAAA,EAAA,CAAA;kBAJnD,SAAS;+BACE,qCAAqC,EAAA,QAAA,EAAA,6BAAA,EAAA,CAAA;;;AEPjD;;;;AAIG;MAKU,qCAAqC,CAAA;;kIAArC,qCAAqC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArC,qCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qCAAqC,wECXlD,8EAGA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,GAAA,CAAA,GAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDQa,qCAAqC,EAAA,UAAA,EAAA,CAAA;kBAJjD,SAAS;+BACE,kCAAkC,EAAA,QAAA,EAAA,8EAAA,EAAA,CAAA;;;MEiEjC,oBAAoB,CAAA;;iHAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAApB,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,iBA3C7B,mCAAmC;QACnC,uBAAuB;QACvB,sCAAsC;QACtC,yCAAyC;QACzC,uCAAuC;QACvC,qCAAqC;QACrC,8BAA8B;AAC9B,QAAA,oBAAoB,aAGpB,YAAY;QACZ,WAAW;QACX,kBAAkB;QAClB,iBAAiB;QACjB,6BAA6B;QAC7B,eAAe;QACf,aAAa;QACb,cAAc;QACd,cAAc;QACd,iBAAiB;QACjB,eAAe;QACf,wBAAwB;QACxB,aAAa;QACb,gBAAgB;AAChB,QAAA,mBAAmB,aAGnB,mCAAmC;QACnC,uBAAuB;QACvB,sCAAsC;QACtC,yCAAyC;QACzC,uCAAuC;QACvC,qCAAqC;QACrC,8BAA8B;QAC9B,oBAAoB,CAAA,EAAA,CAAA,CAAA;AASX,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EAPpB,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,iCAAiC;AAC1C,YAAA,QAAQ,EAAE,qCAAqC;AAChD,SAAA;AACF,KAAA,EAAA,OAAA,EAAA,CA/BC,YAAY;QACZ,WAAW;QACX,kBAAkB;QAClB,iBAAiB;QACjB,6BAA6B;QAC7B,eAAe;QACf,aAAa;QACb,cAAc;QACd,cAAc;QACd,iBAAiB;QACjB,eAAe;QACf,wBAAwB;QACxB,aAAa;QACb,gBAAgB;QAChB,mBAAmB,CAAA,EAAA,CAAA,CAAA;2FAmBV,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBA7ChC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,mCAAmC;wBACnC,uBAAuB;wBACvB,sCAAsC;wBACtC,yCAAyC;wBACzC,uCAAuC;wBACvC,qCAAqC;wBACrC,8BAA8B;wBAC9B,oBAAoB;AACrB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,kBAAkB;wBAClB,iBAAiB;wBACjB,6BAA6B;wBAC7B,eAAe;wBACf,aAAa;wBACb,cAAc;wBACd,cAAc;wBACd,iBAAiB;wBACjB,eAAe;wBACf,wBAAwB;wBACxB,aAAa;wBACb,gBAAgB;wBAChB,mBAAmB;AACpB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,mCAAmC;wBACnC,uBAAuB;wBACvB,sCAAsC;wBACtC,yCAAyC;wBACzC,uCAAuC;wBACvC,qCAAqC;wBACrC,8BAA8B;wBAC9B,oBAAoB;AACrB,qBAAA;AACD,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iCAAiC;AAC1C,4BAAA,QAAQ,EAAE,qCAAqC;AAChD,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;ACxED;;AAEG;;;;"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@skyux/data-manager",
|
3
|
-
"version": "8.
|
3
|
+
"version": "8.5.0",
|
4
4
|
"author": "Blackbaud, Inc.",
|
5
5
|
"keywords": [
|
6
6
|
"blackbaud",
|
@@ -35,14 +35,14 @@
|
|
35
35
|
"@angular/common": "^15.2.9",
|
36
36
|
"@angular/core": "^15.2.9",
|
37
37
|
"@angular/forms": "^15.2.9",
|
38
|
-
"@skyux/core": "8.
|
39
|
-
"@skyux/forms": "8.
|
40
|
-
"@skyux/i18n": "8.
|
41
|
-
"@skyux/indicators": "8.
|
42
|
-
"@skyux/layout": "8.
|
43
|
-
"@skyux/lists": "8.
|
44
|
-
"@skyux/lookup": "8.
|
45
|
-
"@skyux/modals": "8.
|
38
|
+
"@skyux/core": "8.5.0",
|
39
|
+
"@skyux/forms": "8.5.0",
|
40
|
+
"@skyux/i18n": "8.5.0",
|
41
|
+
"@skyux/indicators": "8.5.0",
|
42
|
+
"@skyux/layout": "8.5.0",
|
43
|
+
"@skyux/lists": "8.5.0",
|
44
|
+
"@skyux/lookup": "8.5.0",
|
45
|
+
"@skyux/modals": "8.5.0"
|
46
46
|
},
|
47
47
|
"dependencies": {
|
48
48
|
"tslib": "^2.5.0"
|