@dereekb/dbx-web 9.23.27 → 9.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/calendar/esm2020/lib/calendar.base.component.mjs +1 -1
- package/calendar/fesm2015/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/calendar/fesm2020/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/calendar/lib/calendar.base.component.d.ts +1 -1
- package/calendar/package.json +2 -3
- package/esm2020/calendar/lib/calendar.base.component.mjs +1 -1
- package/esm2020/lib/button/icon/icon.button.module.mjs +1 -1
- package/esm2020/lib/extension/model/model.tracker.view.storage.mjs +1 -1
- package/esm2020/lib/interaction/filter/filter.partial.menu.component.mjs +1 -1
- package/esm2020/lib/interaction/filter/filter.partial.mjs +2 -2
- package/esm2020/lib/interaction/filter/filter.popover.button.component.mjs +1 -1
- package/esm2020/lib/interaction/filter/filter.popover.button.directive.mjs +1 -1
- package/esm2020/lib/interaction/filter/filter.popover.component.mjs +13 -8
- package/esm2020/lib/interaction/filter/filter.preset.menu.component.mjs +1 -1
- package/esm2020/lib/interaction/filter/filter.preset.mjs +1 -1
- package/esm2020/lib/interaction/filter/filter.wrapper.component.mjs +12 -8
- package/esm2020/lib/interaction/popover/popover.service.mjs +8 -5
- package/esm2020/lib/layout/layout.module.mjs +1 -1
- package/esm2020/lib/router/layout/anchorlist/anchorlist.component.mjs +7 -4
- package/esm2020/lib/router/layout/sidenav/sidenav.ifdisplaymode.directive.mjs +1 -1
- package/esm2020/mapbox/lib/mapbox.injection.component.mjs +1 -1
- package/esm2020/mapbox/lib/mapbox.injection.store.mjs +1 -1
- package/esm2020/mapbox/lib/mapbox.marker.component.mjs +1 -1
- package/fesm2015/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/fesm2015/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/fesm2015/dereekb-dbx-web.mjs +50 -37
- package/fesm2015/dereekb-dbx-web.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web.mjs +47 -34
- package/fesm2020/dereekb-dbx-web.mjs.map +1 -1
- package/lib/interaction/filter/filter.popover.component.d.ts +3 -3
- package/lib/interaction/filter/filter.wrapper.component.d.ts +2 -1
- package/lib/interaction/popover/popover.service.d.ts +5 -5
- package/lib/router/layout/anchorlist/anchorlist.component.d.ts +6 -2
- package/lib/router/layout/sidenav/_sidenav.scss +22 -4
- package/mapbox/esm2020/lib/mapbox.injection.component.mjs +1 -1
- package/mapbox/esm2020/lib/mapbox.injection.store.mjs +1 -1
- package/mapbox/esm2020/lib/mapbox.marker.component.mjs +1 -1
- package/mapbox/fesm2015/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/mapbox/fesm2020/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/mapbox/package.json +3 -3
- package/package.json +3 -3
- package/table/package.json +3 -3
|
@@ -4,11 +4,11 @@ import { NgPopoverRef } from 'ng-overlay-container';
|
|
|
4
4
|
import { Observable } from 'rxjs';
|
|
5
5
|
import { AbstractPopoverDirective } from '../popover/abstract.popover.directive';
|
|
6
6
|
import { DbxPopoverComponent } from '../popover/popover.component';
|
|
7
|
-
import { DbxPopoverService } from '../popover/popover.service';
|
|
7
|
+
import { DbxPopoverConfigSizing, DbxPopoverService } from '../popover/popover.service';
|
|
8
8
|
import { FilterSource, FilterSourceConnector, PresetFilterSource } from '@dereekb/rxjs';
|
|
9
9
|
import { DbxPopoverKey } from '../popover/popover';
|
|
10
10
|
import * as i0 from "@angular/core";
|
|
11
|
-
export interface DbxFilterComponentParams<F extends object = object, P extends string = string> {
|
|
11
|
+
export interface DbxFilterComponentParams<F extends object = object, P extends string = string> extends DbxPopoverConfigSizing {
|
|
12
12
|
/**
|
|
13
13
|
* Custom icon
|
|
14
14
|
*
|
|
@@ -60,7 +60,7 @@ export declare class DbxFilterPopoverComponent<F extends object> extends Abstrac
|
|
|
60
60
|
private _showPreset;
|
|
61
61
|
readonly showPreset$: Observable<boolean>;
|
|
62
62
|
readonly config$: Observable<DbxInjectionComponentConfig<FilterSource<F>>>;
|
|
63
|
-
static openPopover<F extends object>(popupService: DbxPopoverService, { origin, header, icon,
|
|
63
|
+
static openPopover<F extends object>(popupService: DbxPopoverService, { width, height, isResizable, origin, header, icon, customFilterComponentClass, presetFilterComponentClass, connector, initialFilterObs, closeOnFilterChange }: DbxFilterPopoverComponentParams<F>, popoverKey?: DbxPopoverKey): NgPopoverRef;
|
|
64
64
|
constructor(popover: DbxPopoverComponent<unknown, DbxFilterComponentParams<F>>);
|
|
65
65
|
get config(): DbxFilterComponentParams<F>;
|
|
66
66
|
get icon(): string;
|
|
@@ -7,6 +7,7 @@ import * as i0 from "@angular/core";
|
|
|
7
7
|
*/
|
|
8
8
|
export declare class DbxFilterWrapperComponent<F = unknown> extends AbstractDbxActionHandlerDirective<F> {
|
|
9
9
|
readonly filterSourceDirective: FilterSourceDirective<F>;
|
|
10
|
+
showButtons: boolean;
|
|
10
11
|
applyRaised: boolean;
|
|
11
12
|
applyIcon: string;
|
|
12
13
|
applyText: string;
|
|
@@ -14,5 +15,5 @@ export declare class DbxFilterWrapperComponent<F = unknown> extends AbstractDbxA
|
|
|
14
15
|
applyFilter(): void;
|
|
15
16
|
resetFilter(): void;
|
|
16
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxFilterWrapperComponent<any>, never>;
|
|
17
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFilterWrapperComponent<any>, "dbx-filter-wrapper", never, { "applyRaised": "applyRaised"; "applyIcon": "applyIcon"; "applyText": "applyText"; }, {}, never, ["*"], false>;
|
|
18
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DbxFilterWrapperComponent<any>, "dbx-filter-wrapper", never, { "showButtons": "showButtons"; "applyRaised": "applyRaised"; "applyIcon": "applyIcon"; "applyText": "applyText"; }, {}, never, ["*"], false>;
|
|
18
19
|
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { DbxPopoverComponentConfig } from './popover.component';
|
|
2
2
|
import { Injector } from '@angular/core';
|
|
3
|
-
import { NgPopoverRef } from 'ng-overlay-container';
|
|
3
|
+
import { NgOverlayContainerConfiguration, NgPopoverRef } from 'ng-overlay-container';
|
|
4
4
|
import { Overlay } from '@angular/cdk/overlay';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
export interface
|
|
6
|
+
export interface DbxPopoverConfigSizing extends Pick<NgOverlayContainerConfiguration, 'originX' | 'originY' | 'height' | 'width' | 'minHeight' | 'minWidth' | 'isResizable'> {
|
|
7
|
+
}
|
|
8
|
+
export interface DbxPopoverConfig<O, I, T> extends DbxPopoverComponentConfig<O, I, T>, DbxPopoverConfigSizing {
|
|
9
|
+
panelClass?: string;
|
|
7
10
|
injector?: Injector;
|
|
8
|
-
height?: string;
|
|
9
|
-
width?: string;
|
|
10
|
-
isResizable?: boolean;
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
13
|
* Used for displaying a popover.
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
import { OnDestroy } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { ClickableAnchorLinkTree, ExpandedClickableAnchorLinkTree } from '@dereekb/dbx-core';
|
|
3
4
|
import { Maybe } from '@dereekb/util';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
export interface DbxAnchorListExpandedAnchor extends ExpandedClickableAnchorLinkTree {
|
|
7
|
+
classes: string;
|
|
8
|
+
}
|
|
5
9
|
/**
|
|
6
10
|
* Component that displays a list of ClickableAnchorLink values within a MatNavList.
|
|
7
11
|
*/
|
|
8
12
|
export declare class DbxAnchorListComponent implements OnDestroy {
|
|
9
13
|
private _anchors;
|
|
10
|
-
readonly expandedAnchors$:
|
|
14
|
+
readonly expandedAnchors$: Observable<DbxAnchorListExpandedAnchor[]>;
|
|
11
15
|
set anchors(anchors: Maybe<ClickableAnchorLinkTree[]>);
|
|
12
16
|
ngOnDestroy(): void;
|
|
13
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxAnchorListComponent, never>;
|
|
@@ -10,6 +10,7 @@ $icon-only-width: 65px;
|
|
|
10
10
|
$mat-list-item-height: 48px;
|
|
11
11
|
$active-border-left-width: 2px;
|
|
12
12
|
$dbx-sidenav-nav-bottom-padding: 24px;
|
|
13
|
+
$active-background-transparent-color: 0.93;
|
|
13
14
|
|
|
14
15
|
// MARK: Mixin
|
|
15
16
|
@mixin core() {
|
|
@@ -109,7 +110,22 @@ $dbx-sidenav-nav-bottom-padding: 24px;
|
|
|
109
110
|
height: $mat-list-item-height;
|
|
110
111
|
}
|
|
111
112
|
|
|
112
|
-
.dbx-anchor-active
|
|
113
|
+
.dbx-anchor-active {
|
|
114
|
+
.mat-list-item {
|
|
115
|
+
.mat-list-icon {
|
|
116
|
+
color: $active-icon-color;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.dbx-anchor-list-root .dbx-anchor-active .mat-list-item {
|
|
122
|
+
// root list items glow when active
|
|
123
|
+
background: transparentize($color: $active-icon-color, $amount: $active-background-transparent-color);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
// directly active links have a side-
|
|
127
|
+
.dbx-anchor-active-eq,
|
|
128
|
+
.dbx-anchor-list-child .dbx-anchor-active {
|
|
113
129
|
.mat-list-item {
|
|
114
130
|
border-left: $active-border-left-width solid $active-icon-color;
|
|
115
131
|
|
|
@@ -120,10 +136,12 @@ $dbx-sidenav-nav-bottom-padding: 24px;
|
|
|
120
136
|
padding-left: anchorlist.$active-root-item-left-padding - $active-border-left-width;
|
|
121
137
|
}
|
|
122
138
|
}
|
|
139
|
+
}
|
|
123
140
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
141
|
+
.dbx-anchor-list-child .dbx-anchor-active .mat-list-item,
|
|
142
|
+
.dbx-anchor-list-child .dbx-anchor-active-eq .mat-list-item {
|
|
143
|
+
padding-left: anchorlist.$active-child-item-left-padding - $active-border-left-width;
|
|
144
|
+
background: transparentize($color: $active-icon-color, $amount: $active-background-transparent-color);
|
|
127
145
|
}
|
|
128
146
|
}
|
|
129
147
|
}
|
|
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
29
29
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
30
30
|
}]
|
|
31
31
|
}], ctorParameters: function () { return [{ type: i1.DbxMapboxInjectionStore }, { type: i0.Injector }]; } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94LmluamVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL21hcGJveC9zcmMvbGliL21hcGJveC5pbmplY3Rpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7O0FBRW5FOztHQUVHO0FBUUgsTUFBTSxPQUFPLDJCQUEyQjtJQUd0QyxZQUFxQiw2QkFBc0QsRUFBVyxRQUFrQjtRQUFuRixrQ0FBNkIsR0FBN0IsNkJBQTZCLENBQXlCO1FBQVcsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUYvRixhQUFRLEdBQXlDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFNUIsQ0FBQzs7eUhBSGpHLDJCQUEyQjs2R0FBM0IsMkJBQTJCLDREQUw1Qjs7R0FFVDs0RkFHVSwyQkFBMkI7a0JBUHZDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFOztHQUVUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQXJyYXlFbnRyeSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IERieE1hcGJveEluamVjdGlvblN0b3JlIH0gZnJvbSAnLi9tYXBib3guaW5qZWN0aW9uLnN0b3JlJztcblxuLyoqXG4gKiBJbmplY3RzIHRoZSBjb21wb25lbnRzIGNvbmZpZ3VyZWQgaW4gdGhlIERieE1hcGJveEluamVjdGlvblN0b3JlIGludG8gdGhlIHZpZXcuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1tYXBib3gtaW5qZWN0aW9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGJ4LWluamVjdGlvbi1hcnJheSBbZW50cmllc109XCJlbnRyaWVzJCB8IGFzeW5jXCI+PC9kYngtaW5qZWN0aW9uLWFycmF5PlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYnhNYXBib3hJbmplY3Rpb25Db21wb25lbnQge1xuICByZWFkb25seSBlbnRyaWVzJDogT2JzZXJ2YWJsZTxEYnhJbmplY3Rpb25BcnJheUVudHJ5W10+ID0gdGhpcy5kYnhNYXBib3hNYXBLZXlJbmplY3Rpb25TdG9yZS5hbGxJbmplY3Rpb25Db25maWdzJC5waXBlKHNoYXJlUmVwbGF5KDEpKTtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBkYnhNYXBib3hNYXBLZXlJbmplY3Rpb25TdG9yZTogRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUsIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3Rvcikge31cbn1cbiJdfQ==
|
|
@@ -36,4 +36,4 @@ export function updateDbxMapboxMapInjectionStoreStateWithRemovedKey(state, key)
|
|
|
36
36
|
}
|
|
37
37
|
return state;
|
|
38
38
|
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94LmluamVjdGlvbi5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvbWFwYm94L3NyYy9saWIvbWFwYm94LmluamVjdGlvbi5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFjLFdBQVcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQTJCLE1BQU0sZUFBZSxDQUFDOztBQThCMUY7O0dBRUc7QUFFSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsY0FBK0M7SUFDMUY7UUFDRSxLQUFLLENBQUM7WUFDSixHQUFHLEVBQUUsSUFBSSxHQUFHLEVBQW1EO1NBQ2hFLENBQUMsQ0FBQztRQUdJLFNBQUksR0FBcUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2hHLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUNqQixnQ0FBZ0MsRUFBRSxFQUNsQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLHlCQUFvQixHQUEyQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDcEYsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQ2xDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRUYsc0JBQXNCO1FBQ2IsdUJBQWtCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO1FBQzVGLGlDQUE0QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsbURBQW1ELENBQUMsQ0FBQztJQWYxRyxDQUFDOztxSEFMVSx1QkFBdUI7eUhBQXZCLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOztBQXdCWCxNQUFNLFVBQVUsd0RBQXdELENBQUMsS0FBc0MsRUFBRSxNQUFnQztJQUMvSSxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdkQsT0FBTyxFQUFFLEdBQUcsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDO0FBQzNCLENBQUM7QUFFRCxNQUFNLFVBQVUsbURBQW1ELENBQUMsS0FBc0MsRUFBRSxHQUEwQjtJQUNwSSw2REFBNkQ7SUFDN0QsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUN0QixNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoQixLQUFLLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQztLQUMzQjtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnV2l0aG91dEluamVjdG9yIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50U3RvcmUgfSBmcm9tICdAbmdyeC9jb21wb25lbnQtc3RvcmUnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbE1hcEhhc0RpZmZlcmVudEtleXMsIE9ic2VydmFibGVPclZhbHVlR2V0dGVyIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5cbmV4cG9ydCB0eXBlIERieE1hcGJveEluamVjdGlvbktleSA9IHN0cmluZztcblxuZXhwb3J0IGludGVyZmFjZSBEYnhNYXBib3hJbmplY3Rpb25Db25maWcge1xuICAvKipcbiAgICogVW5pcXVlIGtleSB0aGF0IGlkZW50aWZpZXMgdGhpcyBjb25maWcgc3BlY2lmaWNhbGx5LlxuICAgKlxuICAgKiBLZXlzIHNob3VsZCBhbGwgYmUgdW5pcXVlLiBUaGUgc3lzdGVtIGRvZXMgbm90IGV4cGVjdCBkdXBsaWNhdGUga2V5cy4gTW9kaWZpY2F0aW9ucyB0byBpbmplY3Rpb25Db25maWcgc2hvdWxkIG9jY3VyIHRocm91Z2ggdGhlIG9ic2VydmFibGUgdmFsdWUuXG4gICAqL1xuICByZWFkb25seSBrZXk6IERieE1hcGJveEluamVjdGlvbktleTtcbiAgLyoqXG4gICAqIEFyYml0cmFyeSBpbmplY3Rpb24gdHlwZS4gSXMgdXNlZCBmb3IgZmlsdGVyaW5nIG9uIGNvbmZpZ3VyYXRpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEluamVjdGlvbiBjb25maWd1cmF0aW9uLiBUaGUgaW5qZWN0b3IgaXMgZGlzYWxsb3dlZCwgYXMgdGhlIHBhcmVudCBpbmplY3RvciBtdXN0IGluY2x1ZGUgdGhlIG1hcGJveCBjb21wb25lbnQuXG4gICAqL1xuICByZWFkb25seSBpbmplY3Rpb25Db25maWc6IE9ic2VydmFibGVPclZhbHVlR2V0dGVyPERieEluamVjdGlvbkNvbXBvbmVudENvbmZpZ1dpdGhvdXRJbmplY3Rvcj47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4TWFwYm94TWFwSW5qZWN0aW9uU3RvcmVTdGF0ZSB7XG4gIC8qKlxuICAgKiBDdXJyZW50IG1hcCBvZiBpbmplY3Rpb24ga2V5cyBhbmQgY29uZmlndXJhdGlvbnMuXG4gICAqL1xuICByZWFkb25seSBtYXA6IE1hcDxEYnhNYXBib3hJbmplY3Rpb25LZXksIERieE1hcGJveEluamVjdGlvbkNvbmZpZz47XG5cbiAgLy8gVE9ETzogQWRkIGZpbHRlcnMgZm9yIHNob3dpbmcvaGlkaW5nIGVsZW1lbnRzIG9mIGRpZmZlcmVudCB0eXBlcy5cbn1cblxuLyoqXG4gKiBTdG9yZSB1c2VkIGZvciBzdG9yaW5nIGluamVjdGFibGUgY29udGVudCBpbnRvIHRoZSBtYXAuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEYnhNYXBib3hJbmplY3Rpb25TdG9yZSBleHRlbmRzIENvbXBvbmVudFN0b3JlPERieE1hcGJveE1hcEluamVjdGlvblN0b3JlU3RhdGU+IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoe1xuICAgICAgbWFwOiBuZXcgTWFwPERieE1hcGJveEluamVjdGlvbktleSwgRGJ4TWFwYm94SW5qZWN0aW9uQ29uZmlnPigpXG4gICAgfSk7XG4gIH1cblxuICByZWFkb25seSBtYXAkOiBPYnNlcnZhYmxlPE1hcDxEYnhNYXBib3hJbmplY3Rpb25LZXksIERieE1hcGJveEluamVjdGlvbkNvbmZpZz4+ID0gdGhpcy5zdGF0ZSQucGlwZShcbiAgICBtYXAoKHgpID0+IHgubWFwKSxcbiAgICBkaXN0aW5jdFVudGlsTWFwSGFzRGlmZmVyZW50S2V5cygpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgYWxsSW5qZWN0aW9uQ29uZmlncyQ6IE9ic2VydmFibGU8RGJ4TWFwYm94SW5qZWN0aW9uQ29uZmlnW10+ID0gdGhpcy5tYXAkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiBBcnJheS5mcm9tKHgudmFsdWVzKCkpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIC8vIE1BUks6IFN0YXRlIENoYW5nZXNcbiAgcmVhZG9ubHkgYWRkSW5qZWN0aW9uQ29uZmlnID0gdGhpcy51cGRhdGVyKHVwZGF0ZURieE1hcGJveE1hcEluamVjdGlvblN0b3JlU3RhdGVXaXRoSW5qZWN0aW9uQ29uZmlnKTtcbiAgcmVhZG9ubHkgcmVtb3ZlSW5qZWN0aW9uQ29uZmlnV2l0aEtleSA9IHRoaXMudXBkYXRlcih1cGRhdGVEYnhNYXBib3hNYXBJbmplY3Rpb25TdG9yZVN0YXRlV2l0aFJlbW92ZWRLZXkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlRGJ4TWFwYm94TWFwSW5qZWN0aW9uU3RvcmVTdGF0ZVdpdGhJbmplY3Rpb25Db25maWcoc3RhdGU6IERieE1hcGJveE1hcEluamVjdGlvblN0b3JlU3RhdGUsIGNvbmZpZzogRGJ4TWFwYm94SW5qZWN0aW9uQ29uZmlnKSB7XG4gIGNvbnN0IG1hcCA9IG5ldyBNYXAoc3RhdGUubWFwKS5zZXQoY29uZmlnLmtleSwgY29uZmlnKTtcbiAgcmV0dXJuIHsgLi4uc3RhdGUsIG1hcCB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlRGJ4TWFwYm94TWFwSW5qZWN0aW9uU3RvcmVTdGF0ZVdpdGhSZW1vdmVkS2V5KHN0YXRlOiBEYnhNYXBib3hNYXBJbmplY3Rpb25TdG9yZVN0YXRlLCBrZXk6IERieE1hcGJveEluamVjdGlvbktleSkge1xuICAvLyBvbmx5IGNyZWF0ZSBhIG5ldyBzdGF0ZSBpZiB0aGUga2V5IGlzIGdvaW5nIHRvIGdldCByZW1vdmVkXG4gIGlmIChzdGF0ZS5tYXAuaGFzKGtleSkpIHtcbiAgICBjb25zdCBtYXAgPSBuZXcgTWFwKHN0YXRlLm1hcCk7XG4gICAgbWFwLmRlbGV0ZShrZXkpO1xuICAgIHN0YXRlID0geyAuLi5zdGF0ZSwgbWFwIH07XG4gIH1cblxuICByZXR1cm4gc3RhdGU7XG59XG4iXX0=
|
|
@@ -136,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
136
136
|
}] }]; }, propDecorators: { marker: [{
|
|
137
137
|
type: Input
|
|
138
138
|
}] } });
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94Lm1hcmtlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL21hcGJveC9zcmMvbGliL21hcGJveC5tYXJrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7QUFvQmpFLE1BQU0sT0FBTyx3QkFBd0I7SUFLbkMsWUFBeUMsdUJBQWdEO1FBQWhELDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7SUFBRyxDQUFDO0lBRTdGLElBQ0ksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxNQUFNLENBQUMsTUFBOEI7UUFDdkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO1FBQ25DLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENB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QUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO3NIQUR2RCx3QkFBd0I7MEdBQXhCLHdCQUF3Qix1RkFmekI7Ozs7Ozs7Ozs7O0dBV1Q7NEZBSVUsd0JBQXdCO2tCQWpCcEMsU0FBUzsrQkFDRSxtQkFBbUIsWUFDbkI7Ozs7Ozs7Ozs7O0dBV1QsbUJBRWdCLHVCQUF1QixDQUFDLE1BQU07OzBCQU9sQyxRQUFROzRDQUdqQixNQUFNO3NCQURULEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0VmFsdWVGcm9tR2V0dGVyLCBsYXRMbmdQb2ludEZ1bmN0aW9uLCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgRGJ4TWFwYm94Q2hhbmdlU2VydmljZSB9IGZyb20gJy4vbWFwYm94LmNoYW5nZS5zZXJ2aWNlJztcbmltcG9ydCB7IERieE1hcGJveE1hcmtlciB9IGZyb20gJy4vbWFwYm94Lm1hcmtlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1tYXBib3gtbWFya2VyJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bWdsLW1hcmtlciAqbmdJZj1cIm1hcmtlclwiIFtsbmdMYXRdPVwibGF0TG5nXCI+XG4gICAgICA8ZGJ4LWFuY2hvciBbYW5jaG9yXT1cImFuY2hvclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGJ4LW1hcGJveC1tYXJrZXJcIiBbbmdDbGFzc109XCJwcmVzZW50YXRpb25DbGFzc2VzXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRieC1tYXBib3gtbWFya2VyLWljb24tY29udGVudFwiIFtuZ1N0eWxlXT1cInN0eWxlXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpY29uXCI+e3sgaWNvbiB9fTwvbWF0LWljb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRieC1tYXBib3gtbWFya2VyLWxhYmVsIGRieC1vdXRsaW5lZC10ZXh0XCIgKm5nSWY9XCJsYWJlbFwiPnt7IGxhYmVsIH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kYngtYW5jaG9yPlxuICAgIDwvbWdsLW1hcmtlcj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vbWFwYm94Lm1hcmtlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYnhNYXBib3hNYXJrZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHN0YXRpYyBfbGF0TG5nUG9pbnQgPSBsYXRMbmdQb2ludEZ1bmN0aW9uKHsgd3JhcDogdHJ1ZSB9KTtcblxuICBwcml2YXRlIF9tYXJrZXI6IE1heWJlPERieE1hcGJveE1hcmtlcj47XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHJpdmF0ZSByZWFkb25seSBfZGJ4TWFwYm94Q2hhbmdlU2VydmljZT86IERieE1hcGJveENoYW5nZVNlcnZpY2UpIHt9XG5cbiAgQElucHV0KClcbiAgZ2V0IG1hcmtlcigpIHtcbiAgICByZXR1cm4gdGhpcy5fbWFya2VyO1xuICB9XG5cbiAgc2V0IG1hcmtlcihtYXJrZXI6IE1heWJlPERieE1hcGJveE1hcmtlcj4pIHtcbiAgICB0aGlzLl9tYXJrZXIgPSBtYXJrZXI7XG4gIH1cblxuICBnZXQgbGF0TG5nKCkge1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5fbWFya2VyPy5sYXRMbmc7XG4gICAgcmV0dXJuIGlucHV0ID8gRGJ4TWFwYm94TWFya2VyQ29tcG9uZW50Ll9sYXRMbmdQb2ludChpbnB1dCkgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgYW5jaG9yKCkge1xuICAgIHJldHVybiB0aGlzLl9tYXJrZXI/LmFuY2hvcjtcbiAgfVxuXG4gIGdldCBsYWJlbCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbWFya2VyPy5sYWJlbDtcbiAgfVxuXG4gIGdldCBpY29uKCkge1xuICAgIHJldHVybiB0aGlzLl9tYXJrZXI/Lmljb247XG4gIH1cblxuICBnZXQgc3R5bGUoKSB7XG4gICAgbGV0IHdpZHRoID0gMDtcbiAgICBsZXQgaGVpZ2h0ID0gMDtcblxuICAgIGNvbnN0IHNpemUgPSB0aGlzLl9tYXJrZXI/LnNpemUgfHwgJ21lZGl1bSc7XG5cbiAgICBzd2l0Y2ggKHRoaXMucHJlc2VudGF0aW9uKSB7XG4gICAgICBjYXNlICdub3JtYWwnOlxuICAgICAgICBpZiAodHlwZW9mIHNpemUgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgd2lkdGggPSBzaXplO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHN3aXRjaCAoc2l6ZSkge1xuICAgICAgICAgICAgY2FzZSAnc21hbGwnOlxuICAgICAgICAgICAgICB3aWR0aCA9IDE4O1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ21lZGl1bSc6XG4gICAgICAgICAgICAgIHdpZHRoID0gMjQ7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnbGFyZ2UnOlxuICAgICAgICAgICAgICB3aWR0aCA9IDMyO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3RhbGwnOlxuICAgICAgICAgICAgICB3aWR0aCA9IDI0O1xuICAgICAgICAgICAgICBoZWlnaHQgPSAzMjtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGlmICghaGVpZ2h0KSB7XG4gICAgICBoZWlnaHQgPSB3aWR0aDtcbiAgICB9XG5cbiAgICBjb25zdCBpbWFnZUlucHV0ID0gdGhpcy5fbWFya2VyPy5pbWFnZTtcbiAgICBjb25zdCBpbWFnZSA9IGltYWdlSW5wdXQgPyAodHlwZW9mIGltYWdlSW5wdXQgPT09ICdzdHJpbmcnID8gaW1hZ2VJbnB1dCA6IGdldFZhbHVlRnJvbUdldHRlcihpbWFnZUlucHV0LCB3aWR0aCkpIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3Qgc3R5bGU6IGFueSA9IHtcbiAgICAgIC4uLnRoaXMuX21hcmtlcj8uc3R5bGUsXG4gICAgICAnYmFja2dyb3VuZC1pbWFnZSc6IGltYWdlXG4gICAgfTtcblxuICAgIGlmICh3aWR0aCAmJiBoZWlnaHQpIHtcbiAgICAgIHN0eWxlLndpZHRoID0gd2lkdGggKyAncHgnO1xuICAgICAgc3R5bGUuaGVpZ2h0ID0gaGVpZ2h0ICsgJ3B4JztcbiAgICAgIHN0eWxlWydmb250LXNpemUnXSA9IHdpZHRoICsgJ3B4JztcbiAgICB9XG5cbiAgICByZXR1cm4gc3R5bGU7XG4gIH1cblxuICBnZXQgcHJlc2VudGF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLl9tYXJrZXI/LnByZXNlbnRhdGlvbiA/PyAnbm9ybWFsJztcbiAgfVxuXG4gIGdldCBwcmVzZW50YXRpb25DbGFzc2VzKCkge1xuICAgIGNvbnN0IHByZXNlbnRhdGlvbiA9IHRoaXMucHJlc2VudGF0aW9uO1xuICAgIGNvbnN0IG1hcmtlckNsYXNzZXMgPSB0aGlzLl9tYXJrZXI/Lm1hcmtlckNsYXNzZXM7XG5cbiAgICBsZXQgY3NzQ2xhc3NlcyA9ICcnO1xuXG4gICAgc3dpdGNoIChwcmVzZW50YXRpb24pIHtcbiAgICAgIGNhc2UgJ2NoaXAnOlxuICAgICAgY2FzZSAnY2hpcC1zbWFsbCc6XG4gICAgICAgIGNzc0NsYXNzZXMgPSAnZGJ4LW1hcGJveC1tYXJrZXItY2hpcCBkYngtY2hpcCBtYXQtc3RhbmRhcmQtY2hpcCBkYngtYmcnO1xuXG4gICAgICAgIGlmIChwcmVzZW50YXRpb24gPT09ICdjaGlwLXNtYWxsJykge1xuICAgICAgICAgIGNzc0NsYXNzZXMgKz0gJyBkYngtY2hpcC1zbWFsbCc7XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuaWNvbikge1xuICAgICAgY3NzQ2xhc3NlcyArPSAnIGRieC1tYXBib3gtbWFya2VyLW5vLWljb24nO1xuICAgIH1cblxuICAgIGlmIChtYXJrZXJDbGFzc2VzKSB7XG4gICAgICBjc3NDbGFzc2VzICs9IGAgJHttYXJrZXJDbGFzc2VzfWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNzc0NsYXNzZXM7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kYnhNYXBib3hDaGFuZ2VTZXJ2aWNlPy5lbWl0TWFya2VyRGVzdHJveWVkKCk7XG4gIH1cbn1cbiJdfQ==
|