@bravobit/bb-foundation 0.42.0 → 0.42.2
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/auth/lib/auth.interceptor.d.ts +3 -6
- package/auth/lib/auth.service.d.ts +11 -16
- package/dialog/lib/dialog-confirm/dialog-confirm.component.d.ts +2 -5
- package/dialog/lib/dialog-container/dialog-container.component.d.ts +4 -6
- package/dialog/lib/dialog-overlay/dialog-overlay.component.d.ts +5 -7
- package/esm2022/auth/lib/auth.interceptor.mjs +36 -42
- package/esm2022/auth/lib/auth.module.mjs +4 -4
- package/esm2022/auth/lib/auth.service.mjs +25 -41
- package/esm2022/auth/lib/auth.session.mjs +26 -22
- package/esm2022/auth/lib/directives/authenticated.directive.mjs +16 -12
- package/esm2022/auth/lib/helpers/jwt.helper.mjs +29 -31
- package/esm2022/auth/lib/providers/email.provider.mjs +4 -1
- package/esm2022/auth/lib/providers/verify.provider.mjs +4 -1
- package/esm2022/collections/lib/collection.mjs +17 -7
- package/esm2022/collections/lib/collections.module.mjs +6 -6
- package/esm2022/collections/lib/components/collections-actions/collections-actions.component.mjs +7 -9
- package/esm2022/collections/lib/components/collections-grid/collections-grid.component.mjs +11 -11
- package/esm2022/collections/lib/components/collections-pager/collections-pager.component.mjs +10 -10
- package/esm2022/collections/lib/components/collections-table/collections-table.component.mjs +16 -16
- package/esm2022/collections/lib/components/collections-table-label/collections-table-label.component.mjs +9 -11
- package/esm2022/collections/lib/components/collections-table-sorting/collections-table-sorting.component.mjs +12 -9
- package/esm2022/collections/lib/components/collections-viewer/collections-viewer.component.mjs +10 -7
- package/esm2022/collections/lib/directives/collections-data-row.directive.mjs +6 -3
- package/esm2022/collections/lib/directives/collections-data.directive.mjs +6 -3
- package/esm2022/collections/lib/directives/collections-empty.directive.mjs +6 -3
- package/esm2022/collections/lib/directives/collections-error.directive.mjs +6 -3
- package/esm2022/collections/lib/directives/collections-initial.directive.mjs +4 -3
- package/esm2022/collections/lib/directives/collections-item.directive.mjs +6 -3
- package/esm2022/collections/lib/providers/api-collection.provider.mjs +6 -4
- package/esm2022/collections/lib/providers/local-collection.provider.mjs +2 -2
- package/esm2022/combobox/combobox/combobox-container.directive.mjs +12 -7
- package/esm2022/combobox/combobox/combobox.component.mjs +23 -20
- package/esm2022/combobox/combobox-label.directive.mjs +3 -3
- package/esm2022/combobox/combobox-option.directive.mjs +3 -3
- package/esm2022/combobox/combobox-panel/combobox-panel.component.mjs +10 -6
- package/esm2022/dashboard/lib/dashboard/dashboard.component.mjs +13 -13
- package/esm2022/dashboard/lib/dashboard-header/dashboard-header.component.mjs +5 -7
- package/esm2022/dashboard/lib/dashboard-menu/dashboard-menu.component.mjs +8 -10
- package/esm2022/dashboard/lib/dashboard-menu-item/dashboard-menu-item.component.mjs +5 -7
- package/esm2022/dashboard/lib/dashboard-sidebar/dashboard-sidebar.component.mjs +12 -13
- package/esm2022/dashboard/lib/dashboard-sidebar-group/dashboard-sidebar-group.component.mjs +13 -12
- package/esm2022/dashboard/lib/dashboard-sidebar-item/dashboard-sidebar-item.component.mjs +7 -5
- package/esm2022/dashboard/lib/dashboard.module.mjs +5 -5
- package/esm2022/dialog/lib/dialog-actions/dialog-actions.component.mjs +3 -3
- package/esm2022/dialog/lib/dialog-confirm/dialog-confirm.component.mjs +21 -20
- package/esm2022/dialog/lib/dialog-container/dialog-container.component.mjs +19 -24
- package/esm2022/dialog/lib/dialog-header/dialog-header.component.mjs +5 -7
- package/esm2022/dialog/lib/dialog-link/dialog-link.component.mjs +3 -3
- package/esm2022/dialog/lib/dialog-modal/dialog-modal.component.mjs +9 -6
- package/esm2022/dialog/lib/dialog-overlay/dialog-overlay.component.mjs +19 -26
- package/esm2022/dialog/lib/dialog.insertion.mjs +4 -3
- package/esm2022/dialog/lib/dialog.interfaces.mjs +4 -1
- package/esm2022/dialog/lib/dialog.module.mjs +6 -6
- package/esm2022/dialog/lib/dialog.ref.mjs +4 -6
- package/esm2022/dialog/lib/dialog.service.mjs +5 -3
- package/esm2022/dialog/lib/directives/confirm.directive.mjs +12 -14
- package/esm2022/elements/lib/avatar/avatar.component.mjs +75 -77
- package/esm2022/elements/lib/button/button.component.mjs +12 -10
- package/esm2022/elements/lib/checkbox/checkbox.component.mjs +21 -17
- package/esm2022/elements/lib/checkbox-group/checkbox-group.component.mjs +8 -10
- package/esm2022/elements/lib/date-picker/date-picker.component.mjs +82 -76
- package/esm2022/elements/lib/directives/addon.directive.mjs +5 -5
- package/esm2022/elements/lib/directives/extra-error-controls.directive.mjs +7 -9
- package/esm2022/elements/lib/directives/form-submit.directive.mjs +6 -3
- package/esm2022/elements/lib/directives/form-submitter.directive.mjs +5 -7
- package/esm2022/elements/lib/directives/image-upload.directive.mjs +14 -11
- package/esm2022/elements/lib/directives/input.directive.mjs +6 -4
- package/esm2022/elements/lib/elements.module.mjs +6 -6
- package/esm2022/elements/lib/file-picker/file-picker.component.mjs +52 -51
- package/esm2022/elements/lib/form-control/form-control.component.mjs +14 -14
- package/esm2022/elements/lib/form-error/form-error.component.mjs +16 -8
- package/esm2022/elements/lib/form-group/form-group.component.mjs +5 -7
- package/esm2022/elements/lib/icon/icon.component.mjs +14 -13
- package/esm2022/elements/lib/image-picker/image-picker.component.mjs +20 -17
- package/esm2022/elements/lib/multi-file-control/multi-file-control.component.mjs +28 -24
- package/esm2022/elements/lib/pipes/date.pipe.mjs +6 -8
- package/esm2022/elements/lib/pipes/file-image.pipe.mjs +6 -3
- package/esm2022/elements/lib/pipes/file-size.pipe.mjs +13 -15
- package/esm2022/elements/lib/pipes/relative-time.pipe.mjs +37 -35
- package/esm2022/elements/lib/radio-button/radio-button.component.mjs +8 -7
- package/esm2022/elements/lib/radio-group/radio-group.component.mjs +21 -20
- package/esm2022/elements/lib/spinner/spinner.component.mjs +7 -9
- package/esm2022/http/lib/classes/http.config.mjs +19 -15
- package/esm2022/http/lib/http.interfaces.mjs +1 -1
- package/esm2022/http/lib/http.module.mjs +5 -4
- package/esm2022/http/lib/interceptors/base-url.interceptor.mjs +12 -20
- package/esm2022/http/lib/interceptors/error.interceptor.mjs +9 -14
- package/esm2022/lib/core/services/exif.service.mjs +102 -100
- package/esm2022/lib/core/services/file-loader.service.mjs +15 -17
- package/esm2022/lib/core/services/files.service.mjs +9 -17
- package/esm2022/lib/core/services/image-converter.service.mjs +33 -30
- package/esm2022/lib/core/services/languages.service.mjs +25 -24
- package/esm2022/lib/core/services/network.service.mjs +8 -5
- package/esm2022/lib/core/services/patch.service.mjs +9 -6
- package/esm2022/localize/lib/dictionary/dictionary.class.mjs +7 -1
- package/esm2022/localize/lib/dictionary/dictionary.context.mjs +2 -4
- package/esm2022/localize/lib/dictionary/dictionary.data.mjs +2 -1
- package/esm2022/localize/lib/handlers/missing.handler.mjs +2 -4
- package/esm2022/localize/lib/localize.module.mjs +5 -5
- package/esm2022/localize/lib/localize.pipe.mjs +4 -3
- package/esm2022/localize/lib/localize.service.mjs +36 -62
- package/esm2022/localize/lib/transforms/interpolate.transform.mjs +12 -22
- package/esm2022/localize/lib/transforms/plural.transform.mjs +9 -18
- package/esm2022/localize/lib/transforms/reference.transform.mjs +7 -15
- package/esm2022/localize/lib/views/localize-string/localize-string.component.mjs +14 -11
- package/esm2022/localize/lib/views/localize-template.directive.mjs +6 -5
- package/esm2022/masking/lib/directives/currency-mask.directive.mjs +11 -6
- package/esm2022/masking/lib/directives/date-mask.directive.mjs +11 -6
- package/esm2022/masking/lib/directives/input-mask.directive.mjs +21 -14
- package/esm2022/masking/lib/masking.module.mjs +5 -5
- package/esm2022/masking/lib/masking.service.mjs +4 -3
- package/esm2022/notifications/lib/notifications-item/notifications-item.component.mjs +50 -36
- package/esm2022/notifications/lib/notifications-list/notifications-list.component.mjs +8 -7
- package/esm2022/notifications/lib/notifications.interfaces.mjs +10 -1
- package/esm2022/notifications/lib/notifications.module.mjs +4 -4
- package/esm2022/notifications/lib/notifications.service.mjs +24 -10
- package/esm2022/permissions/lib/directives/permission.directive.mjs +20 -14
- package/esm2022/permissions/lib/handlers/local.handler.mjs +3 -1
- package/esm2022/permissions/lib/permissions.interface.mjs +4 -1
- package/esm2022/permissions/lib/permissions.module.mjs +4 -4
- package/esm2022/permissions/lib/permissions.service.mjs +8 -7
- package/esm2022/recaptcha/lib/recaptcha/recaptcha.component.mjs +35 -28
- package/esm2022/recaptcha/lib/recaptcha-loader.service.mjs +15 -15
- package/esm2022/recaptcha/lib/recaptcha.module.mjs +4 -4
- package/esm2022/select/lib/select/select.component.mjs +52 -47
- package/esm2022/select/lib/select-label.directive.mjs +4 -3
- package/esm2022/select/lib/select-multi-label.directive.mjs +4 -3
- package/esm2022/select/lib/select-option-group.directive.mjs +4 -3
- package/esm2022/select/lib/select-option.directive.mjs +4 -3
- package/esm2022/select/lib/select.module.mjs +5 -5
- package/esm2022/storage/lib/storage.service.mjs +25 -21
- package/esm2022/storage/lib/strategies/cookie-storage.strategy.mjs +66 -64
- package/esm2022/storage/lib/strategies/memory-storage.strategy.mjs +16 -18
- package/esm2022/storage/lib/strategies/polyfill-storage.strategy.mjs +31 -30
- package/esm2022/table/lib/components/table/table.component.mjs +30 -20
- package/esm2022/table/lib/components/table-cell/table-cell.component.mjs +3 -3
- package/esm2022/table/lib/components/table-header-cell/table-header-cell.component.mjs +15 -11
- package/esm2022/table/lib/components/table-pager/table-pager.component.mjs +18 -16
- package/esm2022/table/lib/data/datasource.data.mjs +4 -6
- package/esm2022/table/lib/data/generic.data.mjs +38 -36
- package/esm2022/table/lib/table.module.mjs +6 -6
- package/esm2022/tooltip/lib/tooltip-container/tooltip-container.component.mjs +5 -7
- package/esm2022/tooltip/lib/tooltip.directive.mjs +15 -15
- package/esm2022/tooltip/lib/tooltip.module.mjs +4 -4
- package/esm2022/utils/lib/directives/autosize.directive.mjs +9 -7
- package/esm2022/utils/lib/directives/focus-trap.directive.mjs +24 -22
- package/esm2022/utils/lib/directives/focus.directive.mjs +8 -5
- package/esm2022/utils/lib/directives/template.directive.mjs +7 -3
- package/esm2022/utils/lib/utils.module.mjs +5 -5
- package/fesm2022/bravobit-bb-foundation-auth.mjs +134 -144
- package/fesm2022/bravobit-bb-foundation-auth.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-collections.mjs +123 -93
- package/fesm2022/bravobit-bb-foundation-collections.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-combobox.mjs +46 -34
- package/fesm2022/bravobit-bb-foundation-combobox.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-dashboard.mjs +60 -64
- package/fesm2022/bravobit-bb-foundation-dashboard.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-dialog.mjs +97 -103
- package/fesm2022/bravobit-bb-foundation-dialog.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-elements.mjs +468 -440
- package/fesm2022/bravobit-bb-foundation-elements.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-http.mjs +40 -46
- package/fesm2022/bravobit-bb-foundation-http.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-localize.mjs +91 -130
- package/fesm2022/bravobit-bb-foundation-localize.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-masking.mjs +47 -29
- package/fesm2022/bravobit-bb-foundation-masking.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-notifications.mjs +91 -53
- package/fesm2022/bravobit-bb-foundation-notifications.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-permissions.mjs +34 -22
- package/fesm2022/bravobit-bb-foundation-permissions.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-recaptcha.mjs +51 -44
- package/fesm2022/bravobit-bb-foundation-recaptcha.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-select.mjs +67 -58
- package/fesm2022/bravobit-bb-foundation-select.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-storage.mjs +134 -129
- package/fesm2022/bravobit-bb-foundation-storage.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-table.mjs +107 -91
- package/fesm2022/bravobit-bb-foundation-table.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-tooltip.mjs +21 -23
- package/fesm2022/bravobit-bb-foundation-tooltip.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation-utils.mjs +48 -37
- package/fesm2022/bravobit-bb-foundation-utils.mjs.map +1 -1
- package/fesm2022/bravobit-bb-foundation.mjs +194 -191
- package/fesm2022/bravobit-bb-foundation.mjs.map +1 -1
- package/http/lib/http.interfaces.d.ts +2 -1
- package/http/lib/interceptors/base-url.interceptor.d.ts +2 -4
- package/http/lib/interceptors/error.interceptor.d.ts +1 -3
- package/lib/core/services/files.service.d.ts +3 -7
- package/localize/lib/localize.service.d.ts +10 -14
- package/localize/lib/transforms/interpolate.transform.d.ts +4 -5
- package/localize/lib/transforms/plural.transform.d.ts +5 -6
- package/localize/lib/transforms/reference.transform.d.ts +2 -3
- package/package.json +39 -39
|
@@ -1,25 +1,23 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, HostListener,
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, inject, Output, ViewEncapsulation } from '@angular/core';
|
|
2
2
|
import { fromEvent, lastValueFrom, race, Subject, Subscription } from 'rxjs';
|
|
3
3
|
import { bbDialogOverlayAnimation } from './dialog-overlay.animations';
|
|
4
4
|
import { DIALOG_CONFIG } from '../dialog.interfaces';
|
|
5
5
|
import { switchMap, take } from 'rxjs/operators';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../dialog.interfaces";
|
|
8
7
|
export class BbDialogOverlay {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
8
|
+
// Dependencies.
|
|
9
|
+
_config = inject(DIALOG_CONFIG, { optional: true });
|
|
10
|
+
_elementRef = inject(ElementRef);
|
|
11
|
+
_changeDetectorRef = inject(ChangeDetectorRef);
|
|
12
|
+
// Readonly data.
|
|
13
|
+
disableOverlayAnimations = this._config?.disableOverlayAnimations ?? false;
|
|
14
|
+
// Outputs.
|
|
15
|
+
closeRequested = new EventEmitter();
|
|
16
|
+
// State.
|
|
17
|
+
state = 'open';
|
|
18
|
+
_closed$ = new Subject();
|
|
19
|
+
// Subscriptions.
|
|
20
|
+
_subscription = new Subscription();
|
|
23
21
|
ngOnInit() {
|
|
24
22
|
this.listenForClicks();
|
|
25
23
|
}
|
|
@@ -43,7 +41,7 @@ export class BbDialogOverlay {
|
|
|
43
41
|
// We need change detection to run
|
|
44
42
|
// here else it won't close in all scenario's.
|
|
45
43
|
this.state = 'close';
|
|
46
|
-
this.
|
|
44
|
+
this._changeDetectorRef.markForCheck();
|
|
47
45
|
// Listen for the closed trigger.
|
|
48
46
|
const observable$ = this._closed$.pipe(take(1));
|
|
49
47
|
return lastValueFrom(observable$);
|
|
@@ -63,8 +61,8 @@ export class BbDialogOverlay {
|
|
|
63
61
|
const subscription = clicks$.subscribe(() => this.closeRequested.next());
|
|
64
62
|
this._subscription.add(subscription);
|
|
65
63
|
}
|
|
66
|
-
static
|
|
67
|
-
static
|
|
64
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbDialogOverlay, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
65
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BbDialogOverlay, isStandalone: true, selector: "bb-dialog-overlay", outputs: { closeRequested: "closeRequested" }, host: { listeners: { "window:keyup": "onKeyEvent($event)", "@bbDialogOverlayAnimation.done": "onAnimationDone($event)" }, properties: { "@bbDialogOverlayAnimation": "state", "@.disabled": "disableOverlayAnimations" }, classAttribute: "bb-dialog-overlay" }, ngImport: i0, template: "<div class=\"bb-dialog-overlay-backdrop\"></div>\n\n<ng-content select=\"[bb-dialog-modal]\"></ng-content>\n", styles: [".bb-dialog-overlay,.bb-dialog-overlay-backdrop{inset:0;display:flex;z-index:1000;position:fixed;flex-direction:column}.bb-dialog-overlay{padding:1.5rem}.bb-dialog-overlay-backdrop{will-change:opacity;background-color:#1119}.bb-dialog-overlay-component{z-index:1001;display:block;position:relative}\n"], animations: [bbDialogOverlayAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
68
66
|
}
|
|
69
67
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbDialogOverlay, decorators: [{
|
|
70
68
|
type: Component,
|
|
@@ -73,12 +71,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
|
|
|
73
71
|
'[@bbDialogOverlayAnimation]': 'state',
|
|
74
72
|
'[@.disabled]': 'disableOverlayAnimations'
|
|
75
73
|
}, preserveWhitespaces: false, animations: [bbDialogOverlayAnimation], standalone: true, template: "<div class=\"bb-dialog-overlay-backdrop\"></div>\n\n<ng-content select=\"[bb-dialog-modal]\"></ng-content>\n", styles: [".bb-dialog-overlay,.bb-dialog-overlay-backdrop{inset:0;display:flex;z-index:1000;position:fixed;flex-direction:column}.bb-dialog-overlay{padding:1.5rem}.bb-dialog-overlay-backdrop{will-change:opacity;background-color:#1119}.bb-dialog-overlay-component{z-index:1001;display:block;position:relative}\n"] }]
|
|
76
|
-
}],
|
|
77
|
-
type: Optional
|
|
78
|
-
}, {
|
|
79
|
-
type: Inject,
|
|
80
|
-
args: [DIALOG_CONFIG]
|
|
81
|
-
}] }], propDecorators: { closeRequested: [{
|
|
74
|
+
}], propDecorators: { closeRequested: [{
|
|
82
75
|
type: Output
|
|
83
76
|
}], onKeyEvent: [{
|
|
84
77
|
type: HostListener,
|
|
@@ -87,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
|
|
|
87
80
|
type: HostListener,
|
|
88
81
|
args: ['@bbDialogOverlayAnimation.done', ['$event']]
|
|
89
82
|
}] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLW92ZXJsYXkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9kaWFsb2cvc3JjL2xpYi9kaWFsb2ctb3ZlcmxheS9kaWFsb2ctb3ZlcmxheS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2RpYWxvZy9zcmMvbGliL2RpYWxvZy1vdmVybGF5L2RpYWxvZy1vdmVybGF5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFxQixNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEwsT0FBTyxFQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDM0UsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFDLGFBQWEsRUFBZSxNQUFNLHNCQUFzQixDQUFDO0FBRWpFLE9BQU8sRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBaUIvQyxNQUFNLE9BQU8sZUFBZTtJQUV4QixnQkFBZ0I7SUFDQyxPQUFPLEdBQWtCLE1BQU0sQ0FBQyxhQUFhLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztJQUNqRSxXQUFXLEdBQWUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLGtCQUFrQixHQUFzQixNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUVuRixpQkFBaUI7SUFDUix3QkFBd0IsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLHdC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QW1CO3dCQUM1Qiw2QkFBNkIsRUFBRSxPQUFPO3dCQUN0QyxjQUFjLEVBQUUsMEJBQTBCO3FCQUM3Qyx1QkFDb0IsS0FBSyxjQUNkLENBQUMsd0JBQXdCLENBQUMsY0FDMUIsSUFBSTs4QkFhTixjQUFjO3NCQUF2QixNQUFNO2dCQWtCUCxVQUFVO3NCQURULFlBQVk7dUJBQUMsY0FBYyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVF4QyxlQUFlO3NCQURkLFlBQVk7dUJBQUMsZ0NBQWdDLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2Zyb21FdmVudCwgbGFzdFZhbHVlRnJvbSwgcmFjZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7YmJEaWFsb2dPdmVybGF5QW5pbWF0aW9ufSBmcm9tICcuL2RpYWxvZy1vdmVybGF5LmFuaW1hdGlvbnMnO1xuaW1wb3J0IHtESUFMT0dfQ09ORklHLCBEaWFsb2dDb25maWd9IGZyb20gJy4uL2RpYWxvZy5pbnRlcmZhY2VzJztcbmltcG9ydCB7QW5pbWF0aW9uRXZlbnR9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtzd2l0Y2hNYXAsIHRha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdiYi1kaWFsb2ctb3ZlcmxheScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RpYWxvZy1vdmVybGF5LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kaWFsb2ctb3ZlcmxheS5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaG9zdDoge1xuICAgICAgICAnY2xhc3MnOiAnYmItZGlhbG9nLW92ZXJsYXknLFxuICAgICAgICAnW0BiYkRpYWxvZ092ZXJsYXlBbmltYXRpb25dJzogJ3N0YXRlJyxcbiAgICAgICAgJ1tALmRpc2FibGVkXSc6ICdkaXNhYmxlT3ZlcmxheUFuaW1hdGlvbnMnXG4gICAgfSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBhbmltYXRpb25zOiBbYmJEaWFsb2dPdmVybGF5QW5pbWF0aW9uXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJiRGlhbG9nT3ZlcmxheSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIC8vIERlcGVuZGVuY2llcy5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWc/OiBEaWFsb2dDb25maWcgPSBpbmplY3QoRElBTE9HX0NPTkZJRywge29wdGlvbmFsOiB0cnVlfSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgLy8gUmVhZG9ubHkgZGF0YS5cbiAgICByZWFkb25seSBkaXNhYmxlT3ZlcmxheUFuaW1hdGlvbnMgPSB0aGlzLl9jb25maWc/LmRpc2FibGVPdmVybGF5QW5pbWF0aW9ucyA/PyBmYWxzZTtcblxuICAgIC8vIE91dHB1dHMuXG4gICAgQE91dHB1dCgpIGNsb3NlUmVxdWVzdGVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgLy8gU3RhdGUuXG4gICAgc3RhdGU6ICdvcGVuJyB8ICdjbG9zZScgPSAnb3Blbic7XG4gICAgcHJpdmF0ZSBfY2xvc2VkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvLyBTdWJzY3JpcHRpb25zLlxuICAgIHByaXZhdGUgX3N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmxpc3RlbkZvckNsaWNrcygpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleXVwJywgWyckZXZlbnQnXSlcbiAgICBvbktleUV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudD8ua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgICAgICAgdGhpcy5jbG9zZVJlcXVlc3RlZC5lbWl0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdAYmJEaWFsb2dPdmVybGF5QW5pbWF0aW9uLmRvbmUnLCBbJyRldmVudCddKVxuICAgIG9uQW5pbWF0aW9uRG9uZShldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcbiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGRpYWxvZyBpcyBiZWluZyBkZXN0cm95ZWQuXG4gICAgICAgIGlmICghWydjbG9zZSddLmluY2x1ZGVzKGV2ZW50Py50b1N0YXRlKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fY2xvc2VkJC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX2Nsb3NlZCQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBjbG9zZSgpIHtcbiAgICAgICAgLy8gV2UgbmVlZCBjaGFuZ2UgZGV0ZWN0aW9uIHRvIHJ1blxuICAgICAgICAvLyBoZXJlIGVsc2UgaXQgd29uJ3QgY2xvc2UgaW4gYWxsIHNjZW5hcmlvJ3MuXG4gICAgICAgIHRoaXMuc3RhdGUgPSAnY2xvc2UnO1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgICAvLyBMaXN0ZW4gZm9yIHRoZSBjbG9zZWQgdHJpZ2dlci5cbiAgICAgICAgY29uc3Qgb2JzZXJ2YWJsZSQgPSB0aGlzLl9jbG9zZWQkLnBpcGUodGFrZSgxKSk7XG4gICAgICAgIHJldHVybiBsYXN0VmFsdWVGcm9tKG9ic2VydmFibGUkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGxpc3RlbkZvckNsaWNrcygpIHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQgPz8gbnVsbDtcbiAgICAgICAgaWYgKCFlbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtb3VzZURvd24kID0gZnJvbUV2ZW50KGVsZW1lbnQsICdtb3VzZWRvd24nKTtcbiAgICAgICAgY29uc3QgdG91Y2hTdGFydCQgPSBmcm9tRXZlbnQoZWxlbWVudCwgJ3RvdWNoc3RhcnQnKTtcbiAgICAgICAgY29uc3Qgc3RhcnQkID0gcmFjZShbbW91c2VEb3duJCwgdG91Y2hTdGFydCRdKTtcblxuICAgICAgICBjb25zdCBtb3VzZVVwJCA9IGZyb21FdmVudChlbGVtZW50LCAnbW91c2V1cCcpO1xuICAgICAgICBjb25zdCB0b3VjaEVuZCQgPSBmcm9tRXZlbnQoZWxlbWVudCwgJ3RvdWNoZW5kJyk7XG4gICAgICAgIGNvbnN0IGVuZCQgPSByYWNlKFttb3VzZVVwJCwgdG91Y2hFbmQkXSk7XG5cbiAgICAgICAgY29uc3QgY2xpY2tzJCA9IHN0YXJ0JC5waXBlKHN3aXRjaE1hcCgoKSA9PiBlbmQkKSk7XG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IGNsaWNrcyQuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2xvc2VSZXF1ZXN0ZWQubmV4dCgpKTtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLmFkZChzdWJzY3JpcHRpb24pO1xuICAgIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImJiLWRpYWxvZy1vdmVybGF5LWJhY2tkcm9wXCI+PC9kaXY+XG5cbjxuZy1jb250ZW50IHNlbGVjdD1cIltiYi1kaWFsb2ctbW9kYWxdXCI+PC9uZy1jb250ZW50PlxuIl19
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Directive } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class BbDialogInsertion {
|
|
4
|
+
viewContainerRef;
|
|
4
5
|
constructor(viewContainerRef) {
|
|
5
6
|
this.viewContainerRef = viewContainerRef;
|
|
6
7
|
}
|
|
7
|
-
static
|
|
8
|
-
static
|
|
8
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbDialogInsertion, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
9
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.0", type: BbDialogInsertion, isStandalone: true, selector: "[bbDialogInsertion]", ngImport: i0 });
|
|
9
10
|
}
|
|
10
11
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbDialogInsertion, decorators: [{
|
|
11
12
|
type: Directive,
|
|
@@ -14,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
|
|
|
14
15
|
standalone: true
|
|
15
16
|
}]
|
|
16
17
|
}], ctorParameters: () => [{ type: i0.ViewContainerRef }] });
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmluc2VydGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vZGlhbG9nL3NyYy9saWIvZGlhbG9nLmluc2VydGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFtQixNQUFNLGVBQWUsQ0FBQzs7QUFNMUQsTUFBTSxPQUFPLGlCQUFpQjtJQUVQO0lBQW5CLFlBQW1CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQ3JELENBQUM7dUdBSFEsaUJBQWlCOzJGQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBSjdCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIFZpZXdDb250YWluZXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tiYkRpYWxvZ0luc2VydGlvbl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQmJEaWFsb2dJbnNlcnRpb24ge1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
2
|
export class BbDialogConfig {
|
|
3
|
+
data;
|
|
3
4
|
}
|
|
4
5
|
export class DialogConfig {
|
|
6
|
+
disableContainerAnimations;
|
|
7
|
+
disableOverlayAnimations;
|
|
5
8
|
}
|
|
6
9
|
export const DIALOG_CONFIG = new InjectionToken('dialog config');
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmludGVyZmFjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2RpYWxvZy9zcmMvbGliL2RpYWxvZy5pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0MsTUFBTSxPQUFPLGNBQWM7SUFDdkIsSUFBSSxDQUFLO0NBQ1o7QUFVRCxNQUFNLE9BQU8sWUFBWTtJQUNyQiwwQkFBMEIsQ0FBVztJQUNyQyx3QkFBd0IsQ0FBVztDQUN0QztBQUVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBaUMsSUFBSSxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNsYXNzIEJiRGlhbG9nQ29uZmlnPFQgPSBhbnk+IHtcbiAgICBkYXRhPzogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaWFsb2dDb25maXJtT3B0aW9ucyB7XG4gICAgY2FuY2VsQnV0dG9uQ2xhc3M6IHN0cmluZztcbiAgICBjYW5jZWxCdXR0b25UZXh0OiBzdHJpbmc7XG4gICAgY29uZmlybUJ1dHRvblRleHQ6IHN0cmluZztcbiAgICBjb25maXJtQnV0dG9uQ2xhc3M6IHN0cmluZztcbiAgICB3aWR0aDogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgRGlhbG9nQ29uZmlnIHtcbiAgICBkaXNhYmxlQ29udGFpbmVyQW5pbWF0aW9ucz86IGJvb2xlYW47XG4gICAgZGlzYWJsZU92ZXJsYXlBbmltYXRpb25zPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IERJQUxPR19DT05GSUc6IEluamVjdGlvblRva2VuPERpYWxvZ0NvbmZpZz4gPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ2RpYWxvZyBjb25maWcnKTtcbiJdfQ==
|
|
@@ -19,8 +19,8 @@ export class DialogModule {
|
|
|
19
19
|
]
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
-
static
|
|
23
|
-
static
|
|
22
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
23
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: DialogModule, imports: [BbDialogContainer,
|
|
24
24
|
BbDialogOverlay,
|
|
25
25
|
BbDialogModal,
|
|
26
26
|
BbDialogHeader,
|
|
@@ -33,9 +33,9 @@ export class DialogModule {
|
|
|
33
33
|
BbDialogHeader,
|
|
34
34
|
BbDialogLink,
|
|
35
35
|
BbDialogActions,
|
|
36
|
-
BbConfirm] });
|
|
37
|
-
static
|
|
38
|
-
BbDialogConfirm] });
|
|
36
|
+
BbConfirm] });
|
|
37
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: DialogModule, imports: [BbDialogActions,
|
|
38
|
+
BbDialogConfirm] });
|
|
39
39
|
}
|
|
40
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: DialogModule, decorators: [{
|
|
41
41
|
type: NgModule,
|
|
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
|
|
|
61
61
|
]
|
|
62
62
|
}]
|
|
63
63
|
}] });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vZGlhbG9nL3NyYy9saWIvZGlhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUNoRixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDMUUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzFFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDdkUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNqRSxPQUFPLEVBQXNCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBd0JwRCxNQUFNLE9BQU8sWUFBWTtJQUVyQixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQXFCO1FBQ2hDLE9BQU87WUFDSCxRQUFRLEVBQUUsWUFBWTtZQUN0QixTQUFTLEVBQUU7Z0JBQ1AsbUJBQW1CLENBQUMsTUFBTSxDQUFDO2FBQzlCO1NBQ0osQ0FBQztJQUNOLENBQUM7dUdBVFEsWUFBWTt3R0FBWixZQUFZLFlBbkJqQixpQkFBaUI7WUFDakIsZUFBZTtZQUNmLGFBQWE7WUFDYixjQUFjO1lBQ2QsWUFBWTtZQUNaLGVBQWU7WUFDZixlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLFNBQVMsYUFHVCxlQUFlO1lBQ2YsYUFBYTtZQUNiLGNBQWM7WUFDZCxZQUFZO1lBQ1osZUFBZTtZQUNmLFNBQVM7d0dBR0osWUFBWSxZQWRqQixlQUFlO1lBQ2YsZUFBZTs7MkZBYVYsWUFBWTtrQkFyQnhCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixTQUFTO3FCQUNaO29CQUNELE9BQU8sRUFBRTt3QkFDTCxlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsU0FBUztxQkFDWjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QmJEaWFsb2dDb250YWluZXJ9IGZyb20gJy4vZGlhbG9nLWNvbnRhaW5lci9kaWFsb2ctY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQge0JiRGlhbG9nQ29uZmlybX0gZnJvbSAnLi9kaWFsb2ctY29uZmlybS9kaWFsb2ctY29uZmlybS5jb21wb25lbnQnO1xuaW1wb3J0IHtCYkRpYWxvZ0FjdGlvbnN9IGZyb20gJy4vZGlhbG9nLWFjdGlvbnMvZGlhbG9nLWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7QmJEaWFsb2dPdmVybGF5fSBmcm9tICcuL2RpYWxvZy1vdmVybGF5L2RpYWxvZy1vdmVybGF5LmNvbXBvbmVudCc7XG5pbXBvcnQge0JiRGlhbG9nSGVhZGVyfSBmcm9tICcuL2RpYWxvZy1oZWFkZXIvZGlhbG9nLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHtCYkRpYWxvZ01vZGFsfSBmcm9tICcuL2RpYWxvZy1tb2RhbC9kaWFsb2ctbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7QmJEaWFsb2dMaW5rfSBmcm9tICcuL2RpYWxvZy1saW5rL2RpYWxvZy1saW5rLmNvbXBvbmVudCc7XG5pbXBvcnQge01vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmJDb25maXJtfSBmcm9tICcuL2RpcmVjdGl2ZXMvY29uZmlybS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtCYkRpYWxvZ0luc2VydGlvbn0gZnJvbSAnLi9kaWFsb2cuaW5zZXJ0aW9uJztcbmltcG9ydCB7cHJvdmlkZURpYWxvZ0NvbmZpZ30gZnJvbSAnLi9kaWFsb2cuY29uZmlnJztcbmltcG9ydCB7RGlhbG9nQ29uZmlnfSBmcm9tICcuL2RpYWxvZy5pbnRlcmZhY2VzJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEJiRGlhbG9nQ29udGFpbmVyLFxuICAgICAgICBCYkRpYWxvZ092ZXJsYXksXG4gICAgICAgIEJiRGlhbG9nTW9kYWwsXG4gICAgICAgIEJiRGlhbG9nSGVhZGVyLFxuICAgICAgICBCYkRpYWxvZ0xpbmssXG4gICAgICAgIEJiRGlhbG9nQWN0aW9ucyxcbiAgICAgICAgQmJEaWFsb2dDb25maXJtLFxuICAgICAgICBCYkRpYWxvZ0luc2VydGlvbixcbiAgICAgICAgQmJDb25maXJtXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEJiRGlhbG9nT3ZlcmxheSxcbiAgICAgICAgQmJEaWFsb2dNb2RhbCxcbiAgICAgICAgQmJEaWFsb2dIZWFkZXIsXG4gICAgICAgIEJiRGlhbG9nTGluayxcbiAgICAgICAgQmJEaWFsb2dBY3Rpb25zLFxuICAgICAgICBCYkNvbmZpcm1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIERpYWxvZ01vZHVsZSB7XG5cbiAgICBzdGF0aWMgZm9yUm9vdChjb25maWc/OiBEaWFsb2dDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPERpYWxvZ01vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IERpYWxvZ01vZHVsZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIHByb3ZpZGVEaWFsb2dDb25maWcoY29uZmlnKVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cblxufVxuIl19
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { take } from 'rxjs/operators';
|
|
2
2
|
import { Subject } from 'rxjs';
|
|
3
3
|
export class BbDialogRef {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
this._overlayClicked$ = new Subject();
|
|
8
|
-
}
|
|
4
|
+
// Data.
|
|
5
|
+
_afterClosed$ = new Subject();
|
|
6
|
+
_overlayClicked$ = new Subject();
|
|
9
7
|
get afterClosed() {
|
|
10
8
|
return this._afterClosed$.pipe(take(1));
|
|
11
9
|
}
|
|
@@ -19,4 +17,4 @@ export class BbDialogRef {
|
|
|
19
17
|
this._afterClosed$.next(result);
|
|
20
18
|
}
|
|
21
19
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vZGlhbG9nL3NyYy9saWIvZGlhbG9nLnJlZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU3QixNQUFNLE9BQU8sV0FBVztJQUVwQixRQUFRO0lBQ1MsYUFBYSxHQUFHLElBQUksT0FBTyxFQUFLLENBQUM7SUFDakMsZ0JBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUV4RCxJQUFJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ1YsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDZCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQzdCLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDVixDQUFDO0lBQ04sQ0FBQztJQUVELGdCQUFnQjtRQUNaLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQVU7UUFDWixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO0NBRUoiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3Rha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7U3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBCYkRpYWxvZ1JlZjxUID0gYW55PiB7XG5cbiAgICAvLyBEYXRhLlxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2FmdGVyQ2xvc2VkJCA9IG5ldyBTdWJqZWN0PFQ+KCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfb3ZlcmxheUNsaWNrZWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIGdldCBhZnRlckNsb3NlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FmdGVyQ2xvc2VkJC5waXBlKFxuICAgICAgICAgICAgdGFrZSgxKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBvdmVybGF5Q2xpY2tlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX292ZXJsYXlDbGlja2VkJC5waXBlKFxuICAgICAgICAgICAgdGFrZSgxKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIG9uT3ZlcmxheUNsaWNrZWQoKSB7XG4gICAgICAgIHRoaXMuX292ZXJsYXlDbGlja2VkJC5uZXh0KCk7XG4gICAgfVxuXG4gICAgY2xvc2UocmVzdWx0PzogVCkge1xuICAgICAgICB0aGlzLl9hZnRlckNsb3NlZCQubmV4dChyZXN1bHQpO1xuICAgIH1cblxufVxuIl19
|
|
@@ -6,6 +6,8 @@ import { BbDialogRef } from './dialog.ref';
|
|
|
6
6
|
import { firstValueFrom } from 'rxjs';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
export class Dialog {
|
|
9
|
+
_applicationRef;
|
|
10
|
+
_environmentInjector;
|
|
9
11
|
constructor(_applicationRef, _environmentInjector) {
|
|
10
12
|
this._applicationRef = _applicationRef;
|
|
11
13
|
this._environmentInjector = _environmentInjector;
|
|
@@ -58,8 +60,8 @@ export class Dialog {
|
|
|
58
60
|
dialogComponentRef.destroy();
|
|
59
61
|
dialogComponentRef = null;
|
|
60
62
|
}
|
|
61
|
-
static
|
|
62
|
-
static
|
|
63
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: Dialog, deps: [{ token: i0.ApplicationRef }, { token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
64
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: Dialog, providedIn: 'root' });
|
|
63
65
|
}
|
|
64
66
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: Dialog, decorators: [{
|
|
65
67
|
type: Injectable,
|
|
@@ -67,4 +69,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
|
|
|
67
69
|
providedIn: 'root'
|
|
68
70
|
}]
|
|
69
71
|
}], ctorParameters: () => [{ type: i0.ApplicationRef }, { type: i0.EnvironmentInjector }] });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2RpYWxvZy9zcmMvbGliL2RpYWxvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBK0IsZUFBZSxFQUFFLHlCQUF5QixFQUF1QixVQUFVLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQzNKLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLCtDQUErQyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRSxPQUFPLEVBQUMsY0FBYyxFQUF1QixNQUFNLHFCQUFxQixDQUFDO0FBQ3pFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLE1BQU0sQ0FBQzs7QUFLcEMsTUFBTSxPQUFPLE1BQU07SUFFSztJQUNBO0lBRHBCLFlBQW9CLGVBQStCLEVBQy9CLG9CQUF5QztRQUR6QyxvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUFDL0IseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFxQjtJQUM3RCxDQUFDO0lBRUQsSUFBSSxDQUFVLGFBQXdCLEVBQUUsTUFBdUI7UUFDM0QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFJLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFnQyxFQUFFLFdBQXNDLEVBQUUsT0FBdUM7UUFDM0gsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBVSxlQUFlLEVBQUU7WUFDbEQsSUFBSSxFQUFFLEVBQUMsS0FBSyxFQUFFLFdBQVcsRUFBRSxHQUFHLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxFQUFDO1NBQ2pELENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxjQUFjLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTyxZQUFZLENBQVUsYUFBd0IsRUFBRSxNQUF1QjtRQUMzRSxzQkFBc0I7UUFDdEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxXQUFXLEVBQUssQ0FBQztRQUN2QyxNQUFNLG1CQUFtQixHQUFHLHlCQUF5QixDQUFDO1lBQ2xELEVBQUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxJQUFJLEVBQUUsRUFBQztZQUNqRCxFQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQztTQUM5QyxFQUFFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzlCLE1BQU0sa0JBQWtCLEdBQUcsZUFBZSxDQUFDLGlCQUFpQixFQUFFLEVBQUMsbUJBQW1CLEVBQUMsQ0FBQyxDQUFDO1FBRXJGLDJDQUEyQztRQUMzQyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU3RCxJQUFJLENBQUM7WUFDRCw0QkFBNEI7WUFDNUIsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLGFBQTRCLENBQUM7WUFDNUQsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1lBRXJCLGlDQUFpQztZQUNqQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDekUsQ0FBQztRQUFDLE1BQU0sQ0FBQztZQUNMLGdEQUFnRDtRQUNwRCxDQUFDO1FBRUQsaURBQWlEO1FBQ2pELGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsR0FBRyxhQUFhLENBQUM7UUFDL0Qsa0JBQWtCLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO1FBRTNGLDJCQUEyQjtRQUMzQixTQUFTLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQztRQUU3RSx3QkFBd0I7UUFDeEIsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztJQUVPLFlBQVksQ0FBQyxrQkFBbUQ7UUFDcEUsb0RBQW9EO1FBQ3BELElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQ3RCLE9BQU87UUFDWCxDQUFDO1FBRUQscUJBQXFCO1FBQ3JCLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTdELHNCQUFzQjtRQUN0QixrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM3QixrQkFBa0IsR0FBRyxJQUFJLENBQUM7SUFDOUIsQ0FBQzt1R0EvRFEsTUFBTTsyR0FBTixNQUFNLGNBRkgsTUFBTTs7MkZBRVQsTUFBTTtrQkFIbEIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FwcGxpY2F0aW9uUmVmLCBDb21wb25lbnRSZWYsIGNyZWF0ZUNvbXBvbmVudCwgY3JlYXRlRW52aXJvbm1lbnRJbmplY3RvciwgRW52aXJvbm1lbnRJbmplY3RvciwgSW5qZWN0YWJsZSwgVGVtcGxhdGVSZWYsIFR5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCYkRpYWxvZ0NvbnRhaW5lcn0gZnJvbSAnLi9kaWFsb2ctY29udGFpbmVyL2RpYWxvZy1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7QmJEaWFsb2dDb25maXJtfSBmcm9tICcuL2RpYWxvZy1jb25maXJtL2RpYWxvZy1jb25maXJtLmNvbXBvbmVudCc7XG5pbXBvcnQge0JiRGlhbG9nQ29uZmlnLCBEaWFsb2dDb25maXJtT3B0aW9uc30gZnJvbSAnLi9kaWFsb2cuaW50ZXJmYWNlcyc7XG5pbXBvcnQge0JiRGlhbG9nUmVmfSBmcm9tICcuL2RpYWxvZy5yZWYnO1xuaW1wb3J0IHtmaXJzdFZhbHVlRnJvbX0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGlhbG9nIHtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2FwcGxpY2F0aW9uUmVmOiBBcHBsaWNhdGlvblJlZixcbiAgICAgICAgICAgICAgICBwcml2YXRlIF9lbnZpcm9ubWVudEluamVjdG9yOiBFbnZpcm9ubWVudEluamVjdG9yKSB7XG4gICAgfVxuXG4gICAgb3BlbjxUID0gYW55Pihjb21wb25lbnRUeXBlOiBUeXBlPGFueT4sIGNvbmZpZz86IEJiRGlhbG9nQ29uZmlnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZURpYWxvZzxUPihjb21wb25lbnRUeXBlLCBjb25maWcpO1xuICAgIH1cblxuICAgIGFzeW5jIGNvbmZpcm0odGl0bGU6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4sIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+LCBvcHRpb25zPzogUGFydGlhbDxEaWFsb2dDb25maXJtT3B0aW9ucz4pIHtcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5vcGVuPGJvb2xlYW4+KEJiRGlhbG9nQ29uZmlybSwge1xuICAgICAgICAgICAgZGF0YToge3RpdGxlLCBkZXNjcmlwdGlvbiwgLi4uKG9wdGlvbnMgPz8ge30pfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGF3YWl0IGZpcnN0VmFsdWVGcm9tKGRpYWxvZ1JlZi5hZnRlckNsb3NlZCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVEaWFsb2c8VCA9IGFueT4oY29tcG9uZW50VHlwZTogVHlwZTxhbnk+LCBjb25maWc/OiBCYkRpYWxvZ0NvbmZpZykge1xuICAgICAgICAvLyBDcmVhdGUgYSByZWZlcmVuY2UuXG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IG5ldyBCYkRpYWxvZ1JlZjxUPigpO1xuICAgICAgICBjb25zdCBlbnZpcm9ubWVudEluamVjdG9yID0gY3JlYXRlRW52aXJvbm1lbnRJbmplY3RvcihbXG4gICAgICAgICAgICB7cHJvdmlkZTogQmJEaWFsb2dDb25maWcsIHVzZVZhbHVlOiBjb25maWcgPz8ge319LFxuICAgICAgICAgICAge3Byb3ZpZGU6IEJiRGlhbG9nUmVmLCB1c2VWYWx1ZTogZGlhbG9nUmVmfVxuICAgICAgICBdLCB0aGlzLl9lbnZpcm9ubWVudEluamVjdG9yKTtcbiAgICAgICAgY29uc3QgZGlhbG9nQ29tcG9uZW50UmVmID0gY3JlYXRlQ29tcG9uZW50KEJiRGlhbG9nQ29udGFpbmVyLCB7ZW52aXJvbm1lbnRJbmplY3Rvcn0pO1xuXG4gICAgICAgIC8vIEF0dGFjaCB0aGUgaG9zdCB2aWV3IHRvIHRoZSBhcHBsaWNhdGlvbi5cbiAgICAgICAgdGhpcy5fYXBwbGljYXRpb25SZWYuYXR0YWNoVmlldyhkaWFsb2dDb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBSZW1vdmUgdGhlIGN1cnJlbnQgZm9jdXMuXG4gICAgICAgICAgICBjb25zdCBhY3RpdmVFbGVtZW50ID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICAgIGFjdGl2ZUVsZW1lbnQuYmx1cigpO1xuXG4gICAgICAgICAgICAvLyBBcHBlbmQgdGhlIGVsZW1lbnQgdG8gdGhlIERPTS5cbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZGlhbG9nQ29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgIC8vIERvbid0IGRvIGFueXRoaW5nLCBiZWNhdXNlIGl0IG11c3QndmUgZmFpbGVkLlxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2V0IHRoZSBjaGlsZCBjb21wb25lbnQgdHlwZSBvbiB0aGUgY29tcG9uZW50LlxuICAgICAgICBkaWFsb2dDb21wb25lbnRSZWYuaW5zdGFuY2UuY2hpbGRDb21wb25lbnRUeXBlID0gY29tcG9uZW50VHlwZTtcbiAgICAgICAgZGlhbG9nQ29tcG9uZW50UmVmLmluc3RhbmNlLm9uT3ZlcmxheUNsaWNrZWQuc3Vic2NyaWJlKCgpID0+IGRpYWxvZ1JlZi5vbk92ZXJsYXlDbGlja2VkKCkpO1xuXG4gICAgICAgIC8vIExpc3RlbiBmb3IgY2xvc2UgZXZlbnRzLlxuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQuc3Vic2NyaWJlKCgpID0+IHRoaXMuZGVsZXRlRGlhbG9nKGRpYWxvZ0NvbXBvbmVudFJlZikpO1xuXG4gICAgICAgIC8vIFJldHVybiB0aGUgcmVmZXJlbmNlLlxuICAgICAgICByZXR1cm4gZGlhbG9nUmVmO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVsZXRlRGlhbG9nKGRpYWxvZ0NvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPEJiRGlhbG9nQ29udGFpbmVyPikge1xuICAgICAgICAvLyBPbmx5IGNvbnRpbnVlIGlmIHRoZSBkaWFsb2cgY29tcG9uZW50IHJlZiBleGlzdHMuXG4gICAgICAgIGlmICghZGlhbG9nQ29tcG9uZW50UmVmKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEZXRhY2ggdGhlIGRpYWxvZy5cbiAgICAgICAgdGhpcy5fYXBwbGljYXRpb25SZWYuZGV0YWNoVmlldyhkaWFsb2dDb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuXG4gICAgICAgIC8vIERlc3Ryb3kgdGhlIGRpYWxvZy5cbiAgICAgICAgZGlhbG9nQ29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICAgICAgZGlhbG9nQ29tcG9uZW50UmVmID0gbnVsbDtcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -2,17 +2,15 @@ import { Directive, EventEmitter, HostListener, inject, Input, Output } from '@a
|
|
|
2
2
|
import { Dialog } from '../dialog.service';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class BbConfirm {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
this.confirm = new EventEmitter();
|
|
15
|
-
}
|
|
5
|
+
// Dependencies.
|
|
6
|
+
_dialog = inject(Dialog);
|
|
7
|
+
// Inputs.
|
|
8
|
+
bbConfirmTitle = 'dialog.default_title';
|
|
9
|
+
bbConfirmDescription = 'dialog.default_description';
|
|
10
|
+
bbConfirmButtonText = null;
|
|
11
|
+
bbCancelButtonText = null;
|
|
12
|
+
// Outputs.
|
|
13
|
+
confirm = new EventEmitter();
|
|
16
14
|
async onClick(event) {
|
|
17
15
|
const confirmed = await this._dialog.confirm(this.bbConfirmTitle, this.bbConfirmDescription, {
|
|
18
16
|
confirmButtonText: this.bbConfirmButtonText,
|
|
@@ -23,8 +21,8 @@ export class BbConfirm {
|
|
|
23
21
|
}
|
|
24
22
|
this.confirm.emit(event);
|
|
25
23
|
}
|
|
26
|
-
static
|
|
27
|
-
static
|
|
24
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbConfirm, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.0", type: BbConfirm, isStandalone: true, selector: "[bbConfirm]", inputs: { bbConfirmTitle: "bbConfirmTitle", bbConfirmDescription: "bbConfirmDescription", bbConfirmButtonText: "bbConfirmButtonText", bbCancelButtonText: "bbCancelButtonText" }, outputs: { confirm: "bbConfirm" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 });
|
|
28
26
|
}
|
|
29
27
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbConfirm, decorators: [{
|
|
30
28
|
type: Directive,
|
|
@@ -47,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
|
|
|
47
45
|
type: HostListener,
|
|
48
46
|
args: ['click', ['$event']]
|
|
49
47
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2RpYWxvZy9zcmMvbGliL2RpcmVjdGl2ZXMvY29uZmlybS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQzs7QUFNekMsTUFBTSxPQUFPLFNBQVM7SUFFbEIsZ0JBQWdCO0lBQ1IsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUVqQyxVQUFVO0lBQ0QsY0FBYyxHQUFXLHNCQUFzQixDQUFDO0lBQ2hELG9CQUFvQixHQUFXLDRCQUE0QixDQUFDO0lBQzVELG1CQUFtQixHQUFrQixJQUFJLENBQUM7SUFDMUMsa0JBQWtCLEdBQWtCLElBQUksQ0FBQztJQUVsRCxXQUFXO0lBQ1UsT0FBTyxHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7SUFHOUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFpQjtRQUMzQixNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQ3pGLGlCQUFpQixFQUFFLElBQUksQ0FBQyxtQkFBbUI7WUFDM0MsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQjtTQUM1QyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDYixPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7dUdBekJRLFNBQVM7MkZBQVQsU0FBUzs7MkZBQVQsU0FBUztrQkFKckIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsVUFBVSxFQUFFLElBQUk7aUJBQ25COzhCQU9ZLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBR2UsT0FBTztzQkFBM0IsTUFBTTt1QkFBQyxXQUFXO2dCQUdiLE9BQU87c0JBRFosWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RpYWxvZ30gZnJvbSAnLi4vZGlhbG9nLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tiYkNvbmZpcm1dJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJiQ29uZmlybSB7XG5cbiAgICAvLyBEZXBlbmRlbmNpZXMuXG4gICAgcHJpdmF0ZSBfZGlhbG9nID0gaW5qZWN0KERpYWxvZyk7XG5cbiAgICAvLyBJbnB1dHMuXG4gICAgQElucHV0KCkgYmJDb25maXJtVGl0bGU6IHN0cmluZyA9ICdkaWFsb2cuZGVmYXVsdF90aXRsZSc7XG4gICAgQElucHV0KCkgYmJDb25maXJtRGVzY3JpcHRpb246IHN0cmluZyA9ICdkaWFsb2cuZGVmYXVsdF9kZXNjcmlwdGlvbic7XG4gICAgQElucHV0KCkgYmJDb25maXJtQnV0dG9uVGV4dDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gICAgQElucHV0KCkgYmJDYW5jZWxCdXR0b25UZXh0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIC8vIE91dHB1dHMuXG4gICAgQE91dHB1dCgnYmJDb25maXJtJykgY29uZmlybSA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgICBhc3luYyBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGNvbnN0IGNvbmZpcm1lZCA9IGF3YWl0IHRoaXMuX2RpYWxvZy5jb25maXJtKHRoaXMuYmJDb25maXJtVGl0bGUsIHRoaXMuYmJDb25maXJtRGVzY3JpcHRpb24sIHtcbiAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiB0aGlzLmJiQ29uZmlybUJ1dHRvblRleHQsXG4gICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiB0aGlzLmJiQ2FuY2VsQnV0dG9uVGV4dFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKCFjb25maXJtZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY29uZmlybS5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -3,80 +3,16 @@ import { AsyncPipe } from '@angular/common';
|
|
|
3
3
|
import { BehaviorSubject } from 'rxjs';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export class BbAvatar {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
this._backgroundColor = 'rgb(66, 66, 66)';
|
|
17
|
-
this.toRgb = (value) => {
|
|
18
|
-
const baseRed = 128;
|
|
19
|
-
const baseGreen = 128;
|
|
20
|
-
const baseBlue = 128;
|
|
21
|
-
let seed = value.charCodeAt(0) ^ value.charCodeAt(1);
|
|
22
|
-
const rand_1 = Math.abs((Math.sin(seed++) * 10000)) % 256;
|
|
23
|
-
const rand_2 = Math.abs((Math.sin(seed++) * 10000)) % 256;
|
|
24
|
-
const rand_3 = Math.abs((Math.sin(seed++) * 10000)) % 256;
|
|
25
|
-
const r = Math.round((rand_1 + baseRed) / 2);
|
|
26
|
-
const g = Math.round((rand_2 + baseGreen) / 2);
|
|
27
|
-
const b = Math.round((rand_3 + baseBlue) / 2);
|
|
28
|
-
return { r, g, b };
|
|
29
|
-
};
|
|
30
|
-
this.getInitials = (name) => {
|
|
31
|
-
// Get all the initials.
|
|
32
|
-
const names = (name ?? '').split(' ');
|
|
33
|
-
const initials = names
|
|
34
|
-
.map(name => name.charAt(0).toUpperCase())
|
|
35
|
-
.filter(name => /^[a-zA-Z]+$/.test(name));
|
|
36
|
-
// Check if there are any initials.
|
|
37
|
-
if (initials?.length <= 0) {
|
|
38
|
-
return null;
|
|
39
|
-
}
|
|
40
|
-
// Get the first and last initials.
|
|
41
|
-
if (initials?.length > 1) {
|
|
42
|
-
return `${initials?.[0]}${initials?.[initials?.length - 1]}`;
|
|
43
|
-
}
|
|
44
|
-
// Get only the first initial.
|
|
45
|
-
return initials?.[0];
|
|
46
|
-
};
|
|
47
|
-
this.parseColorFormat = (value) => {
|
|
48
|
-
if (!value) {
|
|
49
|
-
return null;
|
|
50
|
-
}
|
|
51
|
-
// Hex 3 values.
|
|
52
|
-
let match = value.match(/^#([0-9a-f]{3})$/i);
|
|
53
|
-
if (match && match[1]) {
|
|
54
|
-
const r = parseInt(match[1].charAt(0), 16) * 0x11;
|
|
55
|
-
const g = parseInt(match[1].charAt(1), 16) * 0x11;
|
|
56
|
-
const b = parseInt(match[1].charAt(2), 16) * 0x11;
|
|
57
|
-
return { r, g, b };
|
|
58
|
-
}
|
|
59
|
-
// Hex 6 values.
|
|
60
|
-
match = value.match(/^#([0-9a-f]{6})$/i);
|
|
61
|
-
if (match && match[1]) {
|
|
62
|
-
const r = parseInt(match[1].substring(0, 2), 16);
|
|
63
|
-
const g = parseInt(match[1].substring(2, 4), 16);
|
|
64
|
-
const b = parseInt(match[1].substring(4, 6), 16);
|
|
65
|
-
return { r, g, b };
|
|
66
|
-
}
|
|
67
|
-
// Rgb values.
|
|
68
|
-
match = value.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);
|
|
69
|
-
if (match) {
|
|
70
|
-
const r = parseInt(match[1], 10);
|
|
71
|
-
const g = parseInt(match[2], 10);
|
|
72
|
-
const b = parseInt(match[3], 10);
|
|
73
|
-
return { r, g, b };
|
|
74
|
-
}
|
|
75
|
-
// Not a supported color format.
|
|
76
|
-
console?.warn?.(`BbAvatar: Unsupported tintColor "${value}" was used.`);
|
|
77
|
-
return null;
|
|
78
|
-
};
|
|
79
|
-
}
|
|
6
|
+
// Inputs.
|
|
7
|
+
size = 2.5;
|
|
8
|
+
// State.
|
|
9
|
+
state$ = new BehaviorSubject('initials');
|
|
10
|
+
// Data.
|
|
11
|
+
_src = null;
|
|
12
|
+
_title = null;
|
|
13
|
+
_initials = '!';
|
|
14
|
+
_color = 'rgb(255, 255, 255)';
|
|
15
|
+
_backgroundColor = 'rgb(66, 66, 66)';
|
|
80
16
|
set src(value) {
|
|
81
17
|
this._src = value;
|
|
82
18
|
if (this._src) {
|
|
@@ -118,8 +54,70 @@ export class BbAvatar {
|
|
|
118
54
|
this._color = `rgb(${red},${green},${blue})`;
|
|
119
55
|
this._backgroundColor = `rgba(${red},${green},${blue}, 0.25)`;
|
|
120
56
|
}
|
|
121
|
-
|
|
122
|
-
|
|
57
|
+
toRgb = (value) => {
|
|
58
|
+
const baseRed = 128;
|
|
59
|
+
const baseGreen = 128;
|
|
60
|
+
const baseBlue = 128;
|
|
61
|
+
let seed = value.charCodeAt(0) ^ value.charCodeAt(1);
|
|
62
|
+
const rand_1 = Math.abs((Math.sin(seed++) * 10000)) % 256;
|
|
63
|
+
const rand_2 = Math.abs((Math.sin(seed++) * 10000)) % 256;
|
|
64
|
+
const rand_3 = Math.abs((Math.sin(seed++) * 10000)) % 256;
|
|
65
|
+
const r = Math.round((rand_1 + baseRed) / 2);
|
|
66
|
+
const g = Math.round((rand_2 + baseGreen) / 2);
|
|
67
|
+
const b = Math.round((rand_3 + baseBlue) / 2);
|
|
68
|
+
return { r, g, b };
|
|
69
|
+
};
|
|
70
|
+
getInitials = (name) => {
|
|
71
|
+
// Get all the initials.
|
|
72
|
+
const names = (name ?? '').split(' ');
|
|
73
|
+
const initials = names
|
|
74
|
+
.map(name => name.charAt(0).toUpperCase())
|
|
75
|
+
.filter(name => /^[a-zA-Z]+$/.test(name));
|
|
76
|
+
// Check if there are any initials.
|
|
77
|
+
if (initials?.length <= 0) {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
// Get the first and last initials.
|
|
81
|
+
if (initials?.length > 1) {
|
|
82
|
+
return `${initials?.[0]}${initials?.[initials?.length - 1]}`;
|
|
83
|
+
}
|
|
84
|
+
// Get only the first initial.
|
|
85
|
+
return initials?.[0];
|
|
86
|
+
};
|
|
87
|
+
parseColorFormat = (value) => {
|
|
88
|
+
if (!value) {
|
|
89
|
+
return null;
|
|
90
|
+
}
|
|
91
|
+
// Hex 3 values.
|
|
92
|
+
let match = value.match(/^#([0-9a-f]{3})$/i);
|
|
93
|
+
if (match && match[1]) {
|
|
94
|
+
const r = parseInt(match[1].charAt(0), 16) * 0x11;
|
|
95
|
+
const g = parseInt(match[1].charAt(1), 16) * 0x11;
|
|
96
|
+
const b = parseInt(match[1].charAt(2), 16) * 0x11;
|
|
97
|
+
return { r, g, b };
|
|
98
|
+
}
|
|
99
|
+
// Hex 6 values.
|
|
100
|
+
match = value.match(/^#([0-9a-f]{6})$/i);
|
|
101
|
+
if (match && match[1]) {
|
|
102
|
+
const r = parseInt(match[1].substring(0, 2), 16);
|
|
103
|
+
const g = parseInt(match[1].substring(2, 4), 16);
|
|
104
|
+
const b = parseInt(match[1].substring(4, 6), 16);
|
|
105
|
+
return { r, g, b };
|
|
106
|
+
}
|
|
107
|
+
// Rgb values.
|
|
108
|
+
match = value.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);
|
|
109
|
+
if (match) {
|
|
110
|
+
const r = parseInt(match[1], 10);
|
|
111
|
+
const g = parseInt(match[2], 10);
|
|
112
|
+
const b = parseInt(match[3], 10);
|
|
113
|
+
return { r, g, b };
|
|
114
|
+
}
|
|
115
|
+
// Not a supported color format.
|
|
116
|
+
console?.warn?.(`BbAvatar: Unsupported tintColor "${value}" was used.`);
|
|
117
|
+
return null;
|
|
118
|
+
};
|
|
119
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbAvatar, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
120
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BbAvatar, isStandalone: true, selector: "bb-avatar", inputs: { size: ["size", "size", numberAttribute], src: "src", title: "title", tintColor: "tintColor" }, host: { attributes: { "role": "img" }, properties: { "style.width.rem": "size", "style.min-width.rem": "size", "style.height.rem": "size", "style.min-height.rem": "size", "style.font-size.rem": "size * 0.42", "style.color": "color", "style.background-color": "backgroundColor", "attr.title": "this.title" }, classAttribute: "bb-avatar" }, ngImport: i0, template: "@switch (state$ | async) {\n @case ('image') {\n <img [src]=\"src\"\n [alt]=\"initials\"\n (error)=\"state$?.next('initials')\"\n class=\"bb-avatar-image\">\n }\n @default {\n {{ initials }}\n }\n}\n", styles: [".bb-avatar{line-height:1;overflow:hidden;font-weight:500;-webkit-user-select:none;user-select:none;position:relative;border-radius:50%;align-items:center;display:inline-flex;justify-content:center}.bb-avatar.rounded{border-radius:4px}.bb-avatar.square{border-radius:0}.bb-avatar-image{width:100%;height:100%;object-fit:cover;position:absolute}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
123
121
|
}
|
|
124
122
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbAvatar, decorators: [{
|
|
125
123
|
type: Component,
|
|
@@ -147,4 +145,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
|
|
|
147
145
|
}], tintColor: [{
|
|
148
146
|
type: Input
|
|
149
147
|
}] } });
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vZWxlbWVudHMvc3JjL2xpYi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vZWxlbWVudHMvc3JjL2xpYi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekgsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7O0FBdUJyQyxNQUFNLE9BQU8sUUFBUTtJQXJCckI7UUF1QkksVUFBVTtRQUMyQixTQUFJLEdBQVcsR0FBRyxDQUFDO1FBRXhELFNBQVM7UUFDVCxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQVMsVUFBVSxDQUFDLENBQUM7UUFFakQsUUFBUTtRQUNBLFNBQUksR0FBa0IsSUFBSSxDQUFDO1FBQzNCLFdBQU0sR0FBa0IsSUFBSSxDQUFDO1FBQzdCLGNBQVMsR0FBVyxHQUFHLENBQUM7UUFDeEIsV0FBTSxHQUFXLG9CQUFvQixDQUFDO1FBQ3RDLHFCQUFnQixHQUFXLGlCQUFpQixDQUFDO1FBMkQ3QyxVQUFLLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRTtZQUM5QixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUM7WUFDcEIsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDO1lBQ3RCLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQztZQUVyQixJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxH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YTt3QkFDdEMsZUFBZSxFQUFFLE9BQU87d0JBQ3hCLDBCQUEwQixFQUFFLGlCQUFpQjtxQkFDaEQsY0FDVyxJQUFJLFdBQ1AsQ0FBQyxTQUFTLENBQUM7OEJBS2lCLElBQUk7c0JBQXhDLEtBQUs7dUJBQUMsRUFBQyxTQUFTLEVBQUUsZUFBZSxFQUFDO2dCQWEvQixHQUFHO3NCQUROLEtBQUs7Z0JBV0YsS0FBSztzQkFGUixLQUFLOztzQkFDTCxXQUFXO3VCQUFDLFlBQVk7Z0JBWXJCLFNBQVM7c0JBRFosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBudW1iZXJBdHRyaWJ1dGUsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QXN5bmNQaXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JiLWF2YXRhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2F2YXRhci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYXZhdGFyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBob3N0OiB7XG4gICAgICAgICdjbGFzcyc6ICdiYi1hdmF0YXInLFxuICAgICAgICAncm9sZSc6ICdpbWcnLFxuICAgICAgICAnW3N0eWxlLndpZHRoLnJlbV0nOiAnc2l6ZScsXG4gICAgICAgICdbc3R5bGUubWluLXdpZHRoLnJlbV0nOiAnc2l6ZScsXG4gICAgICAgICdbc3R5bGUuaGVpZ2h0LnJlbV0nOiAnc2l6ZScsXG4gICAgICAgICdbc3R5bGUubWluLWhlaWdodC5yZW1dJzogJ3NpemUnLFxuICAgICAgICAnW3N0eWxlLmZvbnQtc2l6ZS5yZW1dJzogJ3NpemUgKiAwLjQyJyxcbiAgICAgICAgJ1tzdHlsZS5jb2xvcl0nOiAnY29sb3InLFxuICAgICAgICAnW3N0eWxlLmJhY2tncm91bmQtY29sb3JdJzogJ2JhY2tncm91bmRDb2xvcidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0FzeW5jUGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgQmJBdmF0YXIge1xuXG4gICAgLy8gSW5wdXRzLlxuICAgIEBJbnB1dCh7dHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGV9KSBzaXplOiBudW1iZXIgPSAyLjU7XG5cbiAgICAvLyBTdGF0ZS5cbiAgICBzdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJ2luaXRpYWxzJyk7XG5cbiAgICAvLyBEYXRhLlxuICAgIHByaXZhdGUgX3NyYzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gICAgcHJpdmF0ZSBfdGl0bGU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIHByaXZhdGUgX2luaXRpYWxzOiBzdHJpbmcgPSAnISc7XG4gICAgcHJpdmF0ZSBfY29sb3I6IHN0cmluZyA9ICdyZ2IoMjU1LCAyNTUsIDI1NSknO1xuICAgIHByaXZhdGUgX2JhY2tncm91bmRDb2xvcjogc3RyaW5nID0gJ3JnYig2NiwgNjYsIDY2KSc7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBzcmModmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9zcmMgPSB2YWx1ZTtcblxuICAgICAgICBpZiAodGhpcy5fc3JjKSB7XG4gICAgICAgICAgICB0aGlzLnN0YXRlJC5uZXh0KCdpbWFnZScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIudGl0bGUnKVxuICAgIHNldCB0aXRsZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIC8vIFNldCB0aGUgdGl0bGUgYW5kIHRoZSBpbml0aWFscy5cbiAgICAgICAgdGhpcy5fdGl0bGUgPSB2YWx1ZSA/PyAnISc7XG4gICAgICAgIHRoaXMuX2luaXRpYWxzID0gdGhpcy5nZXRJbml0aWFscyh0aGlzLl90aXRsZSk7XG5cbiAgICAgICAgLy8gR2VuZXJhdGUgdGhlIGNvbG9ycyBiYXNlZCBvbiB0aGUgbmFtZS5cbiAgICAgICAgY29uc3Qge3IsIGcsIGJ9ID0gdGhpcy50b1JnYih0aGlzLl90aXRsZSk7XG4gICAgICAgIHRoaXMuc2V0Q29sb3JzKHIsIGcsIGIpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHRpbnRDb2xvcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMucGFyc2VDb2xvckZvcm1hdCh2YWx1ZSk7XG4gICAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7ciwgZywgYn0gPSByZXN1bHQ7XG4gICAgICAgIHRoaXMuc2V0Q29sb3JzKHIsIGcsIGIpO1xuICAgIH1cblxuICAgIGdldCBzcmMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zcmM7XG4gICAgfVxuXG4gICAgZ2V0IGNvbG9yKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29sb3I7XG4gICAgfVxuXG4gICAgZ2V0IGJhY2tncm91bmRDb2xvcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JhY2tncm91bmRDb2xvcjtcbiAgICB9XG5cbiAgICBnZXQgdGl0bGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl90aXRsZTtcbiAgICB9XG5cbiAgICBnZXQgaW5pdGlhbHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbml0aWFscztcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENvbG9ycyhyZWQ6IG51bWJlciwgZ3JlZW46IG51bWJlciwgYmx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX2NvbG9yID0gYHJnYigke3JlZH0sJHtncmVlbn0sJHtibHVlfSlgO1xuICAgICAgICB0aGlzLl9iYWNrZ3JvdW5kQ29sb3IgPSBgcmdiYSgke3JlZH0sJHtncmVlbn0sJHtibHVlfSwgMC4yNSlgO1xuICAgIH1cblxuICAgIHByaXZhdGUgdG9SZ2IgPSAodmFsdWU6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCBiYXNlUmVkID0gMTI4O1xuICAgICAgICBjb25zdCBiYXNlR3JlZW4gPSAxMjg7XG4gICAgICAgIGNvbnN0IGJhc2VCbHVlID0gMTI4O1xuXG4gICAgICAgIGxldCBzZWVkID0gdmFsdWUuY2hhckNvZGVBdCgwKSBeIHZhbHVlLmNoYXJDb2RlQXQoMSk7XG4gICAgICAgIGNvbnN0IHJhbmRfMSA9IE1hdGguYWJzKChNYXRoLnNpbihzZWVkKyspICogMTAwMDApKSAlIDI1NjtcbiAgICAgICAgY29uc3QgcmFuZF8yID0gTWF0aC5hYnMoKE1hdGguc2luKHNlZWQrKykgKiAxMDAwMCkpICUgMjU2O1xuICAgICAgICBjb25zdCByYW5kXzMgPSBNYXRoLmFicygoTWF0aC5zaW4oc2VlZCsrKSAqIDEwMDAwKSkgJSAyNTY7XG5cbiAgICAgICAgY29uc3QgciA9IE1hdGgucm91bmQoKHJhbmRfMSArIGJhc2VSZWQpIC8gMik7XG4gICAgICAgIGNvbnN0IGcgPSBNYXRoLnJvdW5kKChyYW5kXzIgKyBiYXNlR3JlZW4pIC8gMik7XG4gICAgICAgIGNvbnN0IGIgPSBNYXRoLnJvdW5kKChyYW5kXzMgKyBiYXNlQmx1ZSkgLyAyKTtcblxuICAgICAgICByZXR1cm4ge3IsIGcsIGJ9O1xuICAgIH07XG5cbiAgICBwcml2YXRlIGdldEluaXRpYWxzID0gKG5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICAvLyBHZXQgYWxsIHRoZSBpbml0aWFscy5cbiAgICAgICAgY29uc3QgbmFtZXMgPSAobmFtZSA/PyAnJykuc3BsaXQoJyAnKTtcbiAgICAgICAgY29uc3QgaW5pdGlhbHMgPSBuYW1lc1xuICAgICAgICAgICAgLm1hcChuYW1lID0+IG5hbWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkpXG4gICAgICAgICAgICAuZmlsdGVyKG5hbWUgPT4gL15bYS16QS1aXSskLy50ZXN0KG5hbWUpKTtcblxuICAgICAgICAvLyBDaGVjayBpZiB0aGVyZSBhcmUgYW55IGluaXRpYWxzLlxuICAgICAgICBpZiAoaW5pdGlhbHM/Lmxlbmd0aCA8PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEdldCB0aGUgZmlyc3QgYW5kIGxhc3QgaW5pdGlhbHMuXG4gICAgICAgIGlmIChpbml0aWFscz8ubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgcmV0dXJuIGAke2luaXRpYWxzPy5bMF19JHtpbml0aWFscz8uW2luaXRpYWxzPy5sZW5ndGggLSAxXX1gO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gR2V0IG9ubHkgdGhlIGZpcnN0IGluaXRpYWwuXG4gICAgICAgIHJldHVybiBpbml0aWFscz8uWzBdO1xuICAgIH07XG5cbiAgICBwcml2YXRlIHBhcnNlQ29sb3JGb3JtYXQgPSAodmFsdWU6IHN0cmluZykgPT4ge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhleCAzIHZhbHVlcy5cbiAgICAgICAgbGV0IG1hdGNoID0gdmFsdWUubWF0Y2goL14jKFswLTlhLWZdezN9KSQvaSk7XG4gICAgICAgIGlmIChtYXRjaCAmJiBtYXRjaFsxXSkge1xuICAgICAgICAgICAgY29uc3QgciA9IHBhcnNlSW50KG1hdGNoWzFdLmNoYXJBdCgwKSwgMTYpICogMHgxMTtcbiAgICAgICAgICAgIGNvbnN0IGcgPSBwYXJzZUludChtYXRjaFsxXS5jaGFyQXQoMSksIDE2KSAqIDB4MTE7XG4gICAgICAgICAgICBjb25zdCBiID0gcGFyc2VJbnQobWF0Y2hbMV0uY2hhckF0KDIpLCAxNikgKiAweDExO1xuXG4gICAgICAgICAgICByZXR1cm4ge3IsIGcsIGJ9O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSGV4IDYgdmFsdWVzLlxuICAgICAgICBtYXRjaCA9IHZhbHVlLm1hdGNoKC9eIyhbMC05YS1mXXs2fSkkL2kpO1xuICAgICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMV0pIHtcbiAgICAgICAgICAgIGNvbnN0IHIgPSBwYXJzZUludChtYXRjaFsxXS5zdWJzdHJpbmcoMCwgMiksIDE2KTtcbiAgICAgICAgICAgIGNvbnN0IGcgPSBwYXJzZUludChtYXRjaFsxXS5zdWJzdHJpbmcoMiwgNCksIDE2KTtcbiAgICAgICAgICAgIGNvbnN0IGIgPSBwYXJzZUludChtYXRjaFsxXS5zdWJzdHJpbmcoNCwgNiksIDE2KTtcblxuICAgICAgICAgICAgcmV0dXJuIHtyLCBnLCBifTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJnYiB2YWx1ZXMuXG4gICAgICAgIG1hdGNoID0gdmFsdWUubWF0Y2goL15yZ2JcXHMqXFwoXFxzKihcXGQrKVxccyosXFxzKihcXGQrKVxccyosXFxzKihcXGQrKVxccypcXCkkL2kpO1xuICAgICAgICBpZiAobWF0Y2gpIHtcbiAgICAgICAgICAgIGNvbnN0IHIgPSBwYXJzZUludChtYXRjaFsxXSwgMTApO1xuICAgICAgICAgICAgY29uc3QgZyA9IHBhcnNlSW50KG1hdGNoWzJdLCAxMCk7XG4gICAgICAgICAgICBjb25zdCBiID0gcGFyc2VJbnQobWF0Y2hbM10sIDEwKTtcblxuICAgICAgICAgICAgcmV0dXJuIHtyLCBnLCBifTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE5vdCBhIHN1cHBvcnRlZCBjb2xvciBmb3JtYXQuXG4gICAgICAgIGNvbnNvbGU/Lndhcm4/LihgQmJBdmF0YXI6IFVuc3VwcG9ydGVkIHRpbnRDb2xvciBcIiR7dmFsdWV9XCIgd2FzIHVzZWQuYCk7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG5cbn1cbiIsIkBzd2l0Y2ggKHN0YXRlJCB8IGFzeW5jKSB7XG4gICAgQGNhc2UgKCdpbWFnZScpIHtcbiAgICAgICAgPGltZyBbc3JjXT1cInNyY1wiXG4gICAgICAgICAgICAgW2FsdF09XCJpbml0aWFsc1wiXG4gICAgICAgICAgICAgKGVycm9yKT1cInN0YXRlJD8ubmV4dCgnaW5pdGlhbHMnKVwiXG4gICAgICAgICAgICAgY2xhc3M9XCJiYi1hdmF0YXItaW1hZ2VcIj5cbiAgICB9XG4gICAgQGRlZmF1bHQge1xuICAgICAgICB7eyBpbml0aWFscyB9fVxuICAgIH1cbn1cbiJdfQ==
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vZWxlbWVudHMvc3JjL2xpYi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vZWxlbWVudHMvc3JjL2xpYi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekgsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7O0FBdUJyQyxNQUFNLE9BQU8sUUFBUTtJQUVqQixVQUFVO0lBQzJCLElBQUksR0FBVyxHQUFHLENBQUM7SUFFeEQsU0FBUztJQUNULE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBUyxVQUFVLENBQUMsQ0FBQztJQUVqRCxRQUFRO0lBQ0EsSUFBSSxHQUFrQixJQUFJLENBQUM7SUFDM0IsTUFBTSxHQUFrQixJQUFJLENBQUM7SUFDN0IsU0FBUyxHQUFXLEdBQUcsQ0FBQztJQUN4QixNQUFNLEdBQVcsb0JBQW9CLENBQUM7SUFDdEMsZ0JBQWdCLEdBQVcsaUJBQWlCLENBQUM7SUFFckQsSUFDSSxHQUFHLENBQUMsS0FBYTtRQUNqQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUVsQixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFFSSxLQUFLLENBQUMs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QkFBMEIsRUFBRSxpQkFBaUI7cUJBQ2hELGNBQ1csSUFBSSxXQUNQLENBQUMsU0FBUyxDQUFDOzhCQUtpQixJQUFJO3NCQUF4QyxLQUFLO3VCQUFDLEVBQUMsU0FBUyxFQUFFLGVBQWUsRUFBQztnQkFhL0IsR0FBRztzQkFETixLQUFLO2dCQVdGLEtBQUs7c0JBRlIsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxZQUFZO2dCQVlyQixTQUFTO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgbnVtYmVyQXR0cmlidXRlLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FzeW5jUGlwZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdiYi1hdmF0YXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hdmF0YXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2F2YXRhci5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gICAgaG9zdDoge1xuICAgICAgICAnY2xhc3MnOiAnYmItYXZhdGFyJyxcbiAgICAgICAgJ3JvbGUnOiAnaW1nJyxcbiAgICAgICAgJ1tzdHlsZS53aWR0aC5yZW1dJzogJ3NpemUnLFxuICAgICAgICAnW3N0eWxlLm1pbi13aWR0aC5yZW1dJzogJ3NpemUnLFxuICAgICAgICAnW3N0eWxlLmhlaWdodC5yZW1dJzogJ3NpemUnLFxuICAgICAgICAnW3N0eWxlLm1pbi1oZWlnaHQucmVtXSc6ICdzaXplJyxcbiAgICAgICAgJ1tzdHlsZS5mb250LXNpemUucmVtXSc6ICdzaXplICogMC40MicsXG4gICAgICAgICdbc3R5bGUuY29sb3JdJzogJ2NvbG9yJyxcbiAgICAgICAgJ1tzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXSc6ICdiYWNrZ3JvdW5kQ29sb3InXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtBc3luY1BpcGVdXG59KVxuZXhwb3J0IGNsYXNzIEJiQXZhdGFyIHtcblxuICAgIC8vIElucHV0cy5cbiAgICBASW5wdXQoe3RyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlfSkgc2l6ZTogbnVtYmVyID0gMi41O1xuXG4gICAgLy8gU3RhdGUuXG4gICAgc3RhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCdpbml0aWFscycpO1xuXG4gICAgLy8gRGF0YS5cbiAgICBwcml2YXRlIF9zcmM6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIHByaXZhdGUgX3RpdGxlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgICBwcml2YXRlIF9pbml0aWFsczogc3RyaW5nID0gJyEnO1xuICAgIHByaXZhdGUgX2NvbG9yOiBzdHJpbmcgPSAncmdiKDI1NSwgMjU1LCAyNTUpJztcbiAgICBwcml2YXRlIF9iYWNrZ3JvdW5kQ29sb3I6IHN0cmluZyA9ICdyZ2IoNjYsIDY2LCA2NiknO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgc3JjKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fc3JjID0gdmFsdWU7XG5cbiAgICAgICAgaWYgKHRoaXMuX3NyYykge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZSQubmV4dCgnaW1hZ2UnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLnRpdGxlJylcbiAgICBzZXQgdGl0bGUodmFsdWU6IHN0cmluZykge1xuICAgICAgICAvLyBTZXQgdGhlIHRpdGxlIGFuZCB0aGUgaW5pdGlhbHMuXG4gICAgICAgIHRoaXMuX3RpdGxlID0gdmFsdWUgPz8gJyEnO1xuICAgICAgICB0aGlzLl9pbml0aWFscyA9IHRoaXMuZ2V0SW5pdGlhbHModGhpcy5fdGl0bGUpO1xuXG4gICAgICAgIC8vIEdlbmVyYXRlIHRoZSBjb2xvcnMgYmFzZWQgb24gdGhlIG5hbWUuXG4gICAgICAgIGNvbnN0IHtyLCBnLCBifSA9IHRoaXMudG9SZ2IodGhpcy5fdGl0bGUpO1xuICAgICAgICB0aGlzLnNldENvbG9ycyhyLCBnLCBiKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aW50Q29sb3IodmFsdWU6IHN0cmluZykge1xuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLnBhcnNlQ29sb3JGb3JtYXQodmFsdWUpO1xuICAgICAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge3IsIGcsIGJ9ID0gcmVzdWx0O1xuICAgICAgICB0aGlzLnNldENvbG9ycyhyLCBnLCBiKTtcbiAgICB9XG5cbiAgICBnZXQgc3JjKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fc3JjO1xuICAgIH1cblxuICAgIGdldCBjb2xvcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbG9yO1xuICAgIH1cblxuICAgIGdldCBiYWNrZ3JvdW5kQ29sb3IoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9iYWNrZ3JvdW5kQ29sb3I7XG4gICAgfVxuXG4gICAgZ2V0IHRpdGxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGl0bGU7XG4gICAgfVxuXG4gICAgZ2V0IGluaXRpYWxzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5pdGlhbHM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRDb2xvcnMocmVkOiBudW1iZXIsIGdyZWVuOiBudW1iZXIsIGJsdWU6IG51bWJlcikge1xuICAgICAgICB0aGlzLl9jb2xvciA9IGByZ2IoJHtyZWR9LCR7Z3JlZW59LCR7Ymx1ZX0pYDtcbiAgICAgICAgdGhpcy5fYmFja2dyb3VuZENvbG9yID0gYHJnYmEoJHtyZWR9LCR7Z3JlZW59LCR7Ymx1ZX0sIDAuMjUpYDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHRvUmdiID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgYmFzZVJlZCA9IDEyODtcbiAgICAgICAgY29uc3QgYmFzZUdyZWVuID0gMTI4O1xuICAgICAgICBjb25zdCBiYXNlQmx1ZSA9IDEyODtcblxuICAgICAgICBsZXQgc2VlZCA9IHZhbHVlLmNoYXJDb2RlQXQoMCkgXiB2YWx1ZS5jaGFyQ29kZUF0KDEpO1xuICAgICAgICBjb25zdCByYW5kXzEgPSBNYXRoLmFicygoTWF0aC5zaW4oc2VlZCsrKSAqIDEwMDAwKSkgJSAyNTY7XG4gICAgICAgIGNvbnN0IHJhbmRfMiA9IE1hdGguYWJzKChNYXRoLnNpbihzZWVkKyspICogMTAwMDApKSAlIDI1NjtcbiAgICAgICAgY29uc3QgcmFuZF8zID0gTWF0aC5hYnMoKE1hdGguc2luKHNlZWQrKykgKiAxMDAwMCkpICUgMjU2O1xuXG4gICAgICAgIGNvbnN0IHIgPSBNYXRoLnJvdW5kKChyYW5kXzEgKyBiYXNlUmVkKSAvIDIpO1xuICAgICAgICBjb25zdCBnID0gTWF0aC5yb3VuZCgocmFuZF8yICsgYmFzZUdyZWVuKSAvIDIpO1xuICAgICAgICBjb25zdCBiID0gTWF0aC5yb3VuZCgocmFuZF8zICsgYmFzZUJsdWUpIC8gMik7XG5cbiAgICAgICAgcmV0dXJuIHtyLCBnLCBifTtcbiAgICB9O1xuXG4gICAgcHJpdmF0ZSBnZXRJbml0aWFscyA9IChuYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgICAgLy8gR2V0IGFsbCB0aGUgaW5pdGlhbHMuXG4gICAgICAgIGNvbnN0IG5hbWVzID0gKG5hbWUgPz8gJycpLnNwbGl0KCcgJyk7XG4gICAgICAgIGNvbnN0IGluaXRpYWxzID0gbmFtZXNcbiAgICAgICAgICAgIC5tYXAobmFtZSA9PiBuYW1lLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpKVxuICAgICAgICAgICAgLmZpbHRlcihuYW1lID0+IC9eW2EtekEtWl0rJC8udGVzdChuYW1lKSk7XG5cbiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlcmUgYXJlIGFueSBpbml0aWFscy5cbiAgICAgICAgaWYgKGluaXRpYWxzPy5sZW5ndGggPD0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBHZXQgdGhlIGZpcnN0IGFuZCBsYXN0IGluaXRpYWxzLlxuICAgICAgICBpZiAoaW5pdGlhbHM/Lmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIHJldHVybiBgJHtpbml0aWFscz8uWzBdfSR7aW5pdGlhbHM/Lltpbml0aWFscz8ubGVuZ3RoIC0gMV19YDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEdldCBvbmx5IHRoZSBmaXJzdCBpbml0aWFsLlxuICAgICAgICByZXR1cm4gaW5pdGlhbHM/LlswXTtcbiAgICB9O1xuXG4gICAgcHJpdmF0ZSBwYXJzZUNvbG9yRm9ybWF0ID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIZXggMyB2YWx1ZXMuXG4gICAgICAgIGxldCBtYXRjaCA9IHZhbHVlLm1hdGNoKC9eIyhbMC05YS1mXXszfSkkL2kpO1xuICAgICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMV0pIHtcbiAgICAgICAgICAgIGNvbnN0IHIgPSBwYXJzZUludChtYXRjaFsxXS5jaGFyQXQoMCksIDE2KSAqIDB4MTE7XG4gICAgICAgICAgICBjb25zdCBnID0gcGFyc2VJbnQobWF0Y2hbMV0uY2hhckF0KDEpLCAxNikgKiAweDExO1xuICAgICAgICAgICAgY29uc3QgYiA9IHBhcnNlSW50KG1hdGNoWzFdLmNoYXJBdCgyKSwgMTYpICogMHgxMTtcblxuICAgICAgICAgICAgcmV0dXJuIHtyLCBnLCBifTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEhleCA2IHZhbHVlcy5cbiAgICAgICAgbWF0Y2ggPSB2YWx1ZS5tYXRjaCgvXiMoWzAtOWEtZl17Nn0pJC9pKTtcbiAgICAgICAgaWYgKG1hdGNoICYmIG1hdGNoWzFdKSB7XG4gICAgICAgICAgICBjb25zdCByID0gcGFyc2VJbnQobWF0Y2hbMV0uc3Vic3RyaW5nKDAsIDIpLCAxNik7XG4gICAgICAgICAgICBjb25zdCBnID0gcGFyc2VJbnQobWF0Y2hbMV0uc3Vic3RyaW5nKDIsIDQpLCAxNik7XG4gICAgICAgICAgICBjb25zdCBiID0gcGFyc2VJbnQobWF0Y2hbMV0uc3Vic3RyaW5nKDQsIDYpLCAxNik7XG5cbiAgICAgICAgICAgIHJldHVybiB7ciwgZywgYn07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZ2IgdmFsdWVzLlxuICAgICAgICBtYXRjaCA9IHZhbHVlLm1hdGNoKC9ecmdiXFxzKlxcKFxccyooXFxkKylcXHMqLFxccyooXFxkKylcXHMqLFxccyooXFxkKylcXHMqXFwpJC9pKTtcbiAgICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgICAgICBjb25zdCByID0gcGFyc2VJbnQobWF0Y2hbMV0sIDEwKTtcbiAgICAgICAgICAgIGNvbnN0IGcgPSBwYXJzZUludChtYXRjaFsyXSwgMTApO1xuICAgICAgICAgICAgY29uc3QgYiA9IHBhcnNlSW50KG1hdGNoWzNdLCAxMCk7XG5cbiAgICAgICAgICAgIHJldHVybiB7ciwgZywgYn07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBOb3QgYSBzdXBwb3J0ZWQgY29sb3IgZm9ybWF0LlxuICAgICAgICBjb25zb2xlPy53YXJuPy4oYEJiQXZhdGFyOiBVbnN1cHBvcnRlZCB0aW50Q29sb3IgXCIke3ZhbHVlfVwiIHdhcyB1c2VkLmApO1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xuXG59XG4iLCJAc3dpdGNoIChzdGF0ZSQgfCBhc3luYykge1xuICAgIEBjYXNlICgnaW1hZ2UnKSB7XG4gICAgICAgIDxpbWcgW3NyY109XCJzcmNcIlxuICAgICAgICAgICAgIFthbHRdPVwiaW5pdGlhbHNcIlxuICAgICAgICAgICAgIChlcnJvcik9XCJzdGF0ZSQ/Lm5leHQoJ2luaXRpYWxzJylcIlxuICAgICAgICAgICAgIGNsYXNzPVwiYmItYXZhdGFyLWltYWdlXCI+XG4gICAgfVxuICAgIEBkZWZhdWx0IHtcbiAgICAgICAge3sgaW5pdGlhbHMgfX1cbiAgICB9XG59XG4iXX0=
|