@mediusinc/mng-commons 5.0.1 → 5.1.0-rc.1
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/README.md +7 -6
- package/core/descriptors/model.descriptor.d.ts +1 -1
- package/core/error/error-helpers.d.ts +18 -1
- package/core/helpers/coercion.d.ts +1 -0
- package/core/i18n/i18n-type.d.ts +0 -9
- package/core/index.d.ts +0 -1
- package/core/services/commons-configuration.service.d.ts +12 -0
- package/esm2022/core/components/notification/notification-wrapper.component.mjs +5 -6
- package/esm2022/core/components/pages/error/error.page.component.mjs +4 -4
- package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +4 -4
- package/esm2022/core/descriptors/model.descriptor.mjs +1 -1
- package/esm2022/core/directives/component.directive.mjs +3 -3
- package/esm2022/core/directives/template.directive.mjs +3 -3
- package/esm2022/core/error/error-helpers.mjs +20 -1
- package/esm2022/core/helpers/coercion.mjs +4 -1
- package/esm2022/core/i18n/i18n-type.mjs +1 -34
- package/esm2022/core/index.mjs +1 -2
- package/esm2022/core/pipes/boolean.pipe.mjs +3 -3
- package/esm2022/core/pipes/class-map.pipe.mjs +3 -3
- package/esm2022/core/pipes/enum.pipe.mjs +5 -5
- package/esm2022/core/pipes/enumerate-async.pipe.mjs +3 -3
- package/esm2022/core/pipes/enumerate.pipe.mjs +3 -3
- package/esm2022/core/pipes/getter.pipe.mjs +3 -3
- package/esm2022/core/pipes/i18n-property.pipe.mjs +3 -3
- package/esm2022/core/pipes/json-path.pipe.mjs +3 -3
- package/esm2022/core/pipes/parametrize.pipe.mjs +3 -3
- package/esm2022/core/pipes/template.pipe.mjs +3 -3
- package/esm2022/core/security/permission.service.mjs +3 -3
- package/esm2022/core/services/commons-configuration.service.mjs +16 -1
- package/esm2022/core/services/commons-init.service.mjs +3 -3
- package/esm2022/core/services/commons-router.service.mjs +3 -3
- package/esm2022/core/services/commons.service.mjs +3 -3
- package/esm2022/core/services/local-storage-config.service.mjs +3 -3
- package/esm2022/form/components/autocomplete/autocomplete.component.mjs +4 -4
- package/esm2022/form/components/date-range/date-range.component.mjs +4 -4
- package/esm2022/form/components/dropdown/dropdown.component.mjs +4 -4
- package/esm2022/form/directives/input-trim.directive.mjs +14 -19
- package/esm2022/model/descriptors/model.descriptor.mjs +1 -1
- package/esm2022/model/helpers/i18n.mjs +7 -10
- package/esm2022/table/api/descriptors/table.descriptor.mjs +2 -2
- package/esm2022/table/api/models/table.model.mjs +1 -1
- package/esm2022/table/components/column-filter-full/column-filter-full.component.mjs +4 -4
- package/esm2022/table/components/column-value/column-value.component.mjs +43 -53
- package/esm2022/table/components/table/table.component.mjs +300 -365
- package/esm2022/table/pipes/locale-default-row-class.pipe.mjs +3 -3
- package/esm2022/table/pipes/table-column-filter-class.pipe.mjs +3 -3
- package/esm2022/table/services/data-list.service.mjs +3 -3
- package/esm2022/tableview/action/components/action/action.component.mjs +5 -5
- package/esm2022/tableview/action/components/editor/action-editor.component.mjs +6 -7
- package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +5 -4
- package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +3 -3
- package/esm2022/tableview/action/components/route/action-route.component.mjs +3 -3
- package/esm2022/tableview/action/components/table/action-table.component.mjs +43 -92
- package/esm2022/tableview/action/services/component-action-executor.service.mjs +3 -3
- package/esm2022/tableview/action/services/data-provider-executor.service.mjs +3 -3
- package/esm2022/tableview/action/services/navigation.service.mjs +3 -3
- package/esm2022/tableview/action/services/root-action-executor.service.mjs +3 -3
- package/esm2022/tableview/action/services/view-container.service.mjs +3 -3
- package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +1 -1
- package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +1 -1
- package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +4 -1
- package/esm2022/tableview/api/editor/descriptors/field.descriptor.mjs +6 -14
- package/esm2022/tableview/api/editor/models/field-action-context.model.mjs +1 -1
- package/esm2022/tableview/api/editor/models/form-editor.interface.mjs +1 -1
- package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +5 -5
- package/esm2022/tableview/api/editor/models/formly-field.model.mjs +1 -1
- package/esm2022/tableview/api/editor/models/formly-options.model.mjs +2 -0
- package/esm2022/tableview/api/index.mjs +2 -2
- package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +25 -20
- package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +7 -8
- package/esm2022/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +10 -12
- package/esm2022/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.mjs +7 -7
- package/esm2022/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.mjs +51 -10
- package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +10 -11
- package/esm2022/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +8 -8
- package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +8 -7
- package/esm2022/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.mjs +7 -8
- package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +19 -33
- package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +16 -18
- package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +21 -26
- package/esm2022/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +7 -6
- package/esm2022/tableview/editor/components/formly/fields/formly-field-type.abstract.component.mjs +23 -0
- package/esm2022/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +3 -3
- package/esm2022/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +3 -3
- package/esm2022/tableview/editor/helpers/editor-formly.mjs +14 -2
- package/esm2022/tableview/editor/helpers/editor-validators.mjs +25 -0
- package/esm2022/tableview/editor/helpers/formly-config.mjs +7 -5
- package/esm2022/tableview/editor/services/form-editor.service.mjs +3 -3
- package/esm2022/tableview/index.mjs +2 -1
- package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +3 -3
- package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +4 -4
- package/fesm2022/mediusinc-mng-commons-core.mjs +164 -205
- package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-form.mjs +23 -27
- package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-model.mjs +7 -10
- package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table-api.mjs +1 -1
- package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table.mjs +357 -431
- package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +13 -39
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview.mjs +305 -280
- package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
- package/form/directives/input-trim.directive.d.ts +5 -8
- package/model/descriptors/model.descriptor.d.ts +3 -3
- package/model/helpers/i18n.d.ts +1 -3
- package/package.json +15 -15
- package/table/api/models/table.model.d.ts +1 -1
- package/table/components/column-value/column-value.component.d.ts +11 -17
- package/table/components/table/table.component.d.ts +43 -47
- package/tableview/action/components/editor/action-editor.component.d.ts +1 -2
- package/tableview/action/components/table/action-table.component.d.ts +26 -29
- package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +3 -3
- package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +3 -3
- package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +2 -1
- package/tableview/api/editor/descriptors/field.descriptor.d.ts +13 -9
- package/tableview/api/editor/models/field-action-context.model.d.ts +4 -4
- package/tableview/api/editor/models/form-editor.interface.d.ts +24 -14
- package/tableview/api/editor/models/formly-custom-field.model.d.ts +22 -19
- package/tableview/api/editor/models/formly-field.model.d.ts +20 -0
- package/tableview/api/editor/models/formly-options.model.d.ts +15 -0
- package/tableview/api/index.d.ts +1 -1
- package/tableview/editor/components/editor/form-editor.component.d.ts +9 -17
- package/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.d.ts +3 -4
- package/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +3 -7
- package/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.d.ts +3 -4
- package/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.d.ts +6 -4
- package/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +3 -6
- package/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +3 -4
- package/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.d.ts +4 -6
- package/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.d.ts +5 -6
- package/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +6 -10
- package/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +4 -7
- package/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +7 -12
- package/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +2 -3
- package/tableview/editor/components/formly/fields/formly-field-type.abstract.component.d.ts +12 -0
- package/tableview/editor/helpers/editor-validators.d.ts +7 -0
- package/tableview/index.d.ts +1 -0
- package/version-info.json +5 -5
- package/core/directives/dialog-keydown-handler.directive.d.ts +0 -12
- package/esm2022/core/directives/dialog-keydown-handler.directive.mjs +0 -49
- package/esm2022/tableview/api/editor/helpers/field-validators.mjs +0 -23
- package/tableview/api/editor/helpers/field-validators.d.ts +0 -7
package/README.md
CHANGED
|
@@ -24,12 +24,13 @@ pnpm i @mediusinc/mng-commons
|
|
|
24
24
|
|
|
25
25
|
V tabeli so navedene kompatibilne verzije za commons knjižnico in povezane odvisnosti.
|
|
26
26
|
|
|
27
|
-
| Commons | Angular
|
|
28
|
-
|
|
29
|
-
| 5.
|
|
30
|
-
|
|
|
31
|
-
|
|
|
32
|
-
|
|
|
27
|
+
| Commons | Angular | PrimeNG | Ngx-translate | Ngx-formly | Node |
|
|
28
|
+
|---------|----------------|---------|---------------|------------|--------------------------------------|
|
|
29
|
+
| 5.1.x | 17.3.x, 18.x.x | 17.18.x | 14.x.x | 6.x.x | ^18.13.0 \|\| ^20.9.0 |
|
|
30
|
+
| 5.x.x | 17.x.x | 17.x.x | 14.x.x | 6.x.x | ^18.13.0 \|\| ^20.9.0 |
|
|
31
|
+
| 4.x.x | 17.x.x | 17.x.x | 14.x.x | 6.x.x | ^18.13.0 \|\| ^20.9.0 |
|
|
32
|
+
| 3.x.x | 16.x.x | 16.x.x | 14.x.x | 6.x.x | ^16.14.0 \|\| ^18.10.0 |
|
|
33
|
+
| 2.x.x | 15.x.x | 15.x.x | 14.x.x | 6.x.x | ^14.20.0 \|\| ^16.13.0 \|\| ^18.10.0 |
|
|
33
34
|
|
|
34
35
|
## Lokalizacija (i18n)
|
|
35
36
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { HttpErrorResponse } from '@angular/common/http';
|
|
2
2
|
import { LogLevelEnum } from '../log/log.model';
|
|
3
|
-
import { ACommonsErrorBase, ICommonsActionError } from './error.model';
|
|
3
|
+
import { ACommonsErrorBase, CommonsErrorBaseOptions, ICommonsActionError } from './error.model';
|
|
4
4
|
/**
|
|
5
5
|
* Converts RxJS subscription error to CommonsError.
|
|
6
6
|
* @param error Error.
|
|
@@ -88,6 +88,23 @@ export declare function commonsActionErrorContextToString(error: ICommonsActionE
|
|
|
88
88
|
* - causeAsJson Print error cause as a JSON (by default, if error only message and name will be printed).
|
|
89
89
|
*/
|
|
90
90
|
export declare function errorCauseToString(error: Error, opts?: ErrorCauseToStringOptionsType): string;
|
|
91
|
+
/**
|
|
92
|
+
* Throws an error with the provided error message.
|
|
93
|
+
* The intended usage is for in-line throwing of an error with TS type narrowing.
|
|
94
|
+
* <br>
|
|
95
|
+
* <i>Example</i>:
|
|
96
|
+
* <pre>
|
|
97
|
+
* const value: string | null = getValue("");
|
|
98
|
+
* const nonNullValue: string = getValue("") ?? throwError("value missing");
|
|
99
|
+
* </pre>
|
|
100
|
+
*
|
|
101
|
+
* @param {string} errorMessage - The error message to be thrown.
|
|
102
|
+
* @param {CommonsErrorBaseOptions} [options] - Additional options for the thrown error.
|
|
103
|
+
* @throws {Error} - The error object with the provided error message.
|
|
104
|
+
* @returns {never} - This function does not return a value.
|
|
105
|
+
* @see CommonsErrorBaseOptions
|
|
106
|
+
*/
|
|
107
|
+
export declare function throwError(errorMessage: string, options?: CommonsErrorBaseOptions): never;
|
|
91
108
|
export type ErrorToStringOptionsType = ErrorToStringOptionsBaseType & HttpErrorResponseToStringOptionsType & ActionErrorContextToStringOptionsType & ErrorCauseToStringOptionsType & {
|
|
92
109
|
hideDetails?: boolean;
|
|
93
110
|
hideLocation?: boolean;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { IdType, Nullable } from './type-helpers';
|
|
3
3
|
export declare function boolean$Attribute(value: unknown): Observable<boolean>;
|
|
4
|
+
export declare function booleanOrUndefinedAttribute(value: unknown): boolean | undefined;
|
|
4
5
|
export declare function number$Attribute(value: unknown): Observable<number>;
|
|
5
6
|
export declare const toObservable: <T>(value: T | Observable<T>) => Observable<T>;
|
|
6
7
|
export declare const itemIdToNumber: (value?: IdType) => number;
|
package/core/i18n/i18n-type.d.ts
CHANGED
|
@@ -1,20 +1,11 @@
|
|
|
1
1
|
import { TranslateService } from '@ngx-translate/core';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
|
-
import { ClassType } from '../models/class-service.model';
|
|
4
|
-
export declare function getI18nClassNameAsync(translate: TranslateService, classType: ClassType<any>, singular?: boolean): Observable<string | null>;
|
|
5
|
-
export declare function getI18nClassName(translate: TranslateService, classType: ClassType<any>, singular?: boolean): string | null;
|
|
6
3
|
export declare function getI18nTypeNameAsync(translate: TranslateService, typeName: string, singular?: boolean): Observable<string | null>;
|
|
7
4
|
export declare function getI18nTypeName(translate: TranslateService, typeName: string, singular?: boolean): string | null;
|
|
8
|
-
export declare function getI18nClassTabKey(classType: ClassType<any>, tab: string): string;
|
|
9
5
|
export declare function getI18nTypeTabKey(typeName: string, tab: string): string;
|
|
10
|
-
export declare function getI18nClassGroupKey(classType: ClassType<any>, group: string): string;
|
|
11
6
|
export declare function getI18nTypeGroupKey(typeName: string, group: string): string;
|
|
12
|
-
export declare function getI18nClassPropertyKey(classType: ClassType<any>, property: string): string;
|
|
13
7
|
export declare function getI18nTypePropertyKey(typeName: string, property: string): string;
|
|
14
|
-
export declare function getI18nClassKeyBasePath(classType: ClassType<any>, ...path: Array<string>): string;
|
|
15
8
|
export declare function getI18nTypeKeyBasePath(typeName: string, ...path: Array<string>): string;
|
|
16
|
-
export declare function getI18nClassParams(translate: TranslateService, classType: ClassType<any>, item: any, params?: any): any;
|
|
17
9
|
export declare function getI18nTypeParams(translate: TranslateService, typeName?: string, item?: any, params?: any): any;
|
|
18
|
-
export declare function getI18nClassParamsAsync(translate: TranslateService, classType: ClassType<any>, item?: any, params?: any): Observable<any>;
|
|
19
10
|
export declare function getI18nTypeParamsAsync(translate: TranslateService, typeName?: string, item?: any, params?: any): Observable<any>;
|
|
20
11
|
export declare function populateI18nTypeParams(i18nTypeName?: string, item?: any, params?: any): any;
|
package/core/index.d.ts
CHANGED
|
@@ -19,7 +19,6 @@ export * from './descriptors/model.descriptor';
|
|
|
19
19
|
export * from './descriptors/table.descriptor';
|
|
20
20
|
export * from './descriptors/tableview.descriptor';
|
|
21
21
|
export * from './directives/component.directive';
|
|
22
|
-
export * from './directives/dialog-keydown-handler.directive';
|
|
23
22
|
export * from './directives/template.directive';
|
|
24
23
|
export * from './enum/enum.model';
|
|
25
24
|
export * from './enum/enum-helpers';
|
|
@@ -57,6 +57,18 @@ export declare class CommonsConfigurationService {
|
|
|
57
57
|
* @param key Configuration key.
|
|
58
58
|
*/
|
|
59
59
|
getConfigValue<T = any>(key: string): T | null;
|
|
60
|
+
/**
|
|
61
|
+
* Gets the configuration value for the given key. If the value is not found,
|
|
62
|
+
* it throws an error with a custom error message.
|
|
63
|
+
*
|
|
64
|
+
* @param {string} key - The configuration key.
|
|
65
|
+
* @param {string} [errorMessage] - Custom error message to be thrown if the value is not found.
|
|
66
|
+
*
|
|
67
|
+
* @returns {T} - The configuration value.
|
|
68
|
+
*
|
|
69
|
+
* @throws {CommonsInternalError} - If the value is not found or a custom error message is provided.
|
|
70
|
+
*/
|
|
71
|
+
getConfigValueOrThrow<T = any>(key: string, errorMessage?: string): T;
|
|
60
72
|
/**
|
|
61
73
|
* Has configuration for key.
|
|
62
74
|
* @param key Configuration key.
|
|
@@ -3,7 +3,6 @@ import { TranslateModule } from '@ngx-translate/core';
|
|
|
3
3
|
import { ConfirmDialogModule } from 'primeng/confirmdialog';
|
|
4
4
|
import { DialogModule } from 'primeng/dialog';
|
|
5
5
|
import { ToastModule } from 'primeng/toast';
|
|
6
|
-
import { DialogKeydownHandlerDirective } from '../../directives/dialog-keydown-handler.directive';
|
|
7
6
|
import * as i0 from "@angular/core";
|
|
8
7
|
import * as i1 from "primeng/toast";
|
|
9
8
|
import * as i2 from "primeng/api";
|
|
@@ -40,11 +39,11 @@ export class NotificationWrapperComponent {
|
|
|
40
39
|
this.dialogNotification.set(null);
|
|
41
40
|
}
|
|
42
41
|
}
|
|
43
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
44
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
42
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: NotificationWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.5", type: NotificationWrapperComponent, isStandalone: true, selector: "mng-notification-wrapper", ngImport: i0, template: "<ng-content></ng-content>\n<p-confirmDialog appendTo=\"body\" [baseZIndex]=\"50\"></p-confirmDialog>\n\n<p-toast [baseZIndex]=\"50\">\n <ng-template let-message pTemplate=\"message\">\n <span [class]=\"'p-toast-message-icon pi ' + getNotificationIconClass(message)\"></span>\n <div class=\"p-toast-message-text\">\n <div class=\"p-toast-summary\">{{ message.summary }}</div>\n @if (message.detail) {\n <div class=\"p-toast-detail\">{{ message.detail.slice(0, notificationCutoff) + (message.detail.length > notificationCutoff ? '...' : '') }}</div>\n @if (message.detail.length > notificationCutoff) {\n <div (click)=\"onShowNotificationInDialog(message)\" class=\"p-link font-semibold text-sm mt-2 flex align-items-center\">\n <i class=\"pi pi-chevron-down mr-1\"></i>{{ 'notification.details' | translate }}\n </div>\n }\n }\n </div>\n </ng-template>\n</p-toast>\n\n<p-dialog\n [visible]=\"isDialogNotificationVisible()\"\n (visibleChange)=\"onDialogNotificationVisibilityChange($event)\"\n [styleClass]=\"'p-fluid mng-dialog mng-dialog-xs ' + 'mng-message-detail-dialog mng-message-detail-dialog-' + (dialogNotification()?.severity ?? '')\">\n <ng-template pTemplate=\"header\" mngDialogKeydownHandler>\n <span class=\"p-dialog-title font-bold mng-dialog-success\">\n <span [class]=\"'mr-2 pi ' + getNotificationIconClass(dialogNotification())\"></span>\n {{ dialogNotification()?.summary ?? '' }}\n </span>\n </ng-template>\n <div>\n {{ dialogNotification()?.detail ?? '' }}\n </div>\n</p-dialog>\n", dependencies: [{ kind: "ngmodule", type: ToastModule }, { kind: "component", type: i1.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "life", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ConfirmDialogModule }, { kind: "component", type: i3.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i5.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
45
44
|
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: NotificationWrapperComponent, decorators: [{
|
|
47
46
|
type: Component,
|
|
48
|
-
args: [{ selector: 'mng-notification-wrapper', standalone: true, imports: [ToastModule, ConfirmDialogModule, TranslateModule, DialogModule
|
|
47
|
+
args: [{ selector: 'mng-notification-wrapper', standalone: true, imports: [ToastModule, ConfirmDialogModule, TranslateModule, DialogModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n<p-confirmDialog appendTo=\"body\" [baseZIndex]=\"50\"></p-confirmDialog>\n\n<p-toast [baseZIndex]=\"50\">\n <ng-template let-message pTemplate=\"message\">\n <span [class]=\"'p-toast-message-icon pi ' + getNotificationIconClass(message)\"></span>\n <div class=\"p-toast-message-text\">\n <div class=\"p-toast-summary\">{{ message.summary }}</div>\n @if (message.detail) {\n <div class=\"p-toast-detail\">{{ message.detail.slice(0, notificationCutoff) + (message.detail.length > notificationCutoff ? '...' : '') }}</div>\n @if (message.detail.length > notificationCutoff) {\n <div (click)=\"onShowNotificationInDialog(message)\" class=\"p-link font-semibold text-sm mt-2 flex align-items-center\">\n <i class=\"pi pi-chevron-down mr-1\"></i>{{ 'notification.details' | translate }}\n </div>\n }\n }\n </div>\n </ng-template>\n</p-toast>\n\n<p-dialog\n [visible]=\"isDialogNotificationVisible()\"\n (visibleChange)=\"onDialogNotificationVisibilityChange($event)\"\n [styleClass]=\"'p-fluid mng-dialog mng-dialog-xs ' + 'mng-message-detail-dialog mng-message-detail-dialog-' + (dialogNotification()?.severity ?? '')\">\n <ng-template pTemplate=\"header\" mngDialogKeydownHandler>\n <span class=\"p-dialog-title font-bold mng-dialog-success\">\n <span [class]=\"'mr-2 pi ' + getNotificationIconClass(dialogNotification())\"></span>\n {{ dialogNotification()?.summary ?? '' }}\n </span>\n </ng-template>\n <div>\n {{ dialogNotification()?.detail ?? '' }}\n </div>\n</p-dialog>\n" }]
|
|
49
48
|
}] });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRW5GLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUVwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVMxQyxNQUFNLE9BQU8sNEJBQTRCO0lBUHpDO1FBUW9CLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUNqQyxnQ0FBMkIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEtBQUssSUFBSSxDQUFDLENBQUM7UUFDakYsdUJBQWtCLEdBQUcsTUFBTSxDQUFpQixJQUFJLENBQUMsQ0FBQztLQTRCNUQ7SUExQlUsd0JBQXdCLENBQUMsT0FBdUI7UUFDbkQsSUFBSSxPQUFPLEVBQUUsSUFBSTtZQUFFLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQztRQUV2QyxRQUFRLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQztZQUN4QixLQUFLLE1BQU07Z0JBQ1AsT0FBTyxnQkFBZ0IsQ0FBQztZQUM1QixLQUFLLFNBQVM7Z0JBQ1YsT0FBTyx5QkFBeUIsQ0FBQztZQUNyQyxLQUFLLE9BQU87Z0JBQ1IsT0FBTyxpQkFBaUIsQ0FBQztZQUM3QixLQUFLLFNBQVM7Z0JBQ1YsT0FBTyxVQUFVLENBQUM7WUFDdEI7Z0JBQ0ksT0FBTyxFQUFFLENBQUM7UUFDbEIsQ0FBQztJQUNMLENBQUM7SUFFTSwwQkFBMEIsQ0FBQyxPQUFnQjtRQUM5QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTSxvQ0FBb0MsQ0FBQyxPQUFnQjtRQUN4RCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDTCxDQUFDOzhHQTlCUSw0QkFBNEI7a0dBQTVCLDRCQUE0QixvRkNmekMscXNEQWtDQSwyQ0R0QmMsV0FBVyw4Y0FBRSxtQkFBbUIsb21CQUFFLGVBQWUsMkZBQUUsWUFBWTs7MkZBR2hFLDRCQUE0QjtrQkFQeEMsU0FBUzsrQkFDSSwwQkFBMEIsY0FDeEIsSUFBSSxXQUVQLENBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSxZQUFZLENBQUMsbUJBQ3pELHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge01lc3NhZ2V9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7Q29uZmlybURpYWxvZ01vZHVsZX0gZnJvbSAncHJpbWVuZy9jb25maXJtZGlhbG9nJztcbmltcG9ydCB7RGlhbG9nTW9kdWxlfSBmcm9tICdwcmltZW5nL2RpYWxvZyc7XG5pbXBvcnQge1RvYXN0TW9kdWxlfSBmcm9tICdwcmltZW5nL3RvYXN0JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdtbmctbm90aWZpY2F0aW9uLXdyYXBwZXInLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGVVcmw6ICdub3RpZmljYXRpb24td3JhcHBlci5jb21wb25lbnQuaHRtbCcsXG4gICAgaW1wb3J0czogW1RvYXN0TW9kdWxlLCBDb25maXJtRGlhbG9nTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIERpYWxvZ01vZHVsZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uV3JhcHBlckNvbXBvbmVudCB7XG4gICAgcHVibGljIHJlYWRvbmx5IG5vdGlmaWNhdGlvbkN1dG9mZiA9IDcwO1xuICAgIHB1YmxpYyBpc0RpYWxvZ05vdGlmaWNhdGlvblZpc2libGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmRpYWxvZ05vdGlmaWNhdGlvbigpICE9PSBudWxsKTtcbiAgICBwdWJsaWMgZGlhbG9nTm90aWZpY2F0aW9uID0gc2lnbmFsPE1lc3NhZ2UgfCBudWxsPihudWxsKTtcblxuICAgIHB1YmxpYyBnZXROb3RpZmljYXRpb25JY29uQ2xhc3MobWVzc2FnZTogTWVzc2FnZSB8IG51bGwpOiBzdHJpbmcge1xuICAgICAgICBpZiAobWVzc2FnZT8uaWNvbikgcmV0dXJuIG1lc3NhZ2UuaWNvbjtcblxuICAgICAgICBzd2l0Y2ggKG1lc3NhZ2U/LnNldmVyaXR5KSB7XG4gICAgICAgICAgICBjYXNlICdpbmZvJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3BpLWluZm8tY2lyY2xlJztcbiAgICAgICAgICAgIGNhc2UgJ3dhcm5pbmcnOlxuICAgICAgICAgICAgICAgIHJldHVybiAncGktZXhjbGFtYXRpb24tdHJpYW5nbGUnO1xuICAgICAgICAgICAgY2FzZSAnZXJyb3InOlxuICAgICAgICAgICAgICAgIHJldHVybiAncGktdGltZXMtY2lyY2xlJztcbiAgICAgICAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxuICAgICAgICAgICAgICAgIHJldHVybiAncGktY2hlY2snO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25TaG93Tm90aWZpY2F0aW9uSW5EaWFsb2cobWVzc2FnZTogTWVzc2FnZSkge1xuICAgICAgICB0aGlzLmRpYWxvZ05vdGlmaWNhdGlvbi5zZXQobWVzc2FnZSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uRGlhbG9nTm90aWZpY2F0aW9uVmlzaWJpbGl0eUNoYW5nZSh2aXNpYmxlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICghdmlzaWJsZSkge1xuICAgICAgICAgICAgdGhpcy5kaWFsb2dOb3RpZmljYXRpb24uc2V0KG51bGwpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPHAtY29uZmlybURpYWxvZyBhcHBlbmRUbz1cImJvZHlcIiBbYmFzZVpJbmRleF09XCI1MFwiPjwvcC1jb25maXJtRGlhbG9nPlxuXG48cC10b2FzdCBbYmFzZVpJbmRleF09XCI1MFwiPlxuICAgIDxuZy10ZW1wbGF0ZSBsZXQtbWVzc2FnZSBwVGVtcGxhdGU9XCJtZXNzYWdlXCI+XG4gICAgICAgIDxzcGFuIFtjbGFzc109XCIncC10b2FzdC1tZXNzYWdlLWljb24gcGkgJyArIGdldE5vdGlmaWNhdGlvbkljb25DbGFzcyhtZXNzYWdlKVwiPjwvc3Bhbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInAtdG9hc3QtbWVzc2FnZS10ZXh0XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC10b2FzdC1zdW1tYXJ5XCI+e3sgbWVzc2FnZS5zdW1tYXJ5IH19PC9kaXY+XG4gICAgICAgICAgICBAaWYgKG1lc3NhZ2UuZGV0YWlsKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtdG9hc3QtZGV0YWlsXCI+e3sgbWVzc2FnZS5kZXRhaWwuc2xpY2UoMCwgbm90aWZpY2F0aW9uQ3V0b2ZmKSArIChtZXNzYWdlLmRldGFpbC5sZW5ndGggPiBub3RpZmljYXRpb25DdXRvZmYgPyAnLi4uJyA6ICcnKSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIEBpZiAobWVzc2FnZS5kZXRhaWwubGVuZ3RoID4gbm90aWZpY2F0aW9uQ3V0b2ZmKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKGNsaWNrKT1cIm9uU2hvd05vdGlmaWNhdGlvbkluRGlhbG9nKG1lc3NhZ2UpXCIgY2xhc3M9XCJwLWxpbmsgZm9udC1zZW1pYm9sZCB0ZXh0LXNtIG10LTIgZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwicGkgcGktY2hldnJvbi1kb3duIG1yLTFcIj48L2k+e3sgJ25vdGlmaWNhdGlvbi5kZXRhaWxzJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG48L3AtdG9hc3Q+XG5cbjxwLWRpYWxvZ1xuICAgIFt2aXNpYmxlXT1cImlzRGlhbG9nTm90aWZpY2F0aW9uVmlzaWJsZSgpXCJcbiAgICAodmlzaWJsZUNoYW5nZSk9XCJvbkRpYWxvZ05vdGlmaWNhdGlvblZpc2liaWxpdHlDaGFuZ2UoJGV2ZW50KVwiXG4gICAgW3N0eWxlQ2xhc3NdPVwiJ3AtZmx1aWQgbW5nLWRpYWxvZyBtbmctZGlhbG9nLXhzICcgKyAnbW5nLW1lc3NhZ2UtZGV0YWlsLWRpYWxvZyBtbmctbWVzc2FnZS1kZXRhaWwtZGlhbG9nLScgKyAoZGlhbG9nTm90aWZpY2F0aW9uKCk/LnNldmVyaXR5ID8/ICcnKVwiPlxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIiBtbmdEaWFsb2dLZXlkb3duSGFuZGxlcj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJwLWRpYWxvZy10aXRsZSBmb250LWJvbGQgbW5nLWRpYWxvZy1zdWNjZXNzXCI+XG4gICAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiJ21yLTIgcGkgJyArIGdldE5vdGlmaWNhdGlvbkljb25DbGFzcyhkaWFsb2dOb3RpZmljYXRpb24oKSlcIj48L3NwYW4+XG4gICAgICAgICAgICB7eyBkaWFsb2dOb3RpZmljYXRpb24oKT8uc3VtbWFyeSA/PyAnJyB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8ZGl2PlxuICAgICAgICB7eyBkaWFsb2dOb3RpZmljYXRpb24oKT8uZGV0YWlsID8/ICcnIH19XG4gICAgPC9kaXY+XG48L3AtZGlhbG9nPlxuIl19
|
|
@@ -11,11 +11,11 @@ export class ErrorPageComponent {
|
|
|
11
11
|
constructor(commons) {
|
|
12
12
|
this.commons = commons;
|
|
13
13
|
}
|
|
14
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ErrorPageComponent, deps: [{ token: i1.CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.5", type: ErrorPageComponent, isStandalone: true, selector: "mng-error-page", ngImport: i0, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight() ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
16
16
|
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ErrorPageComponent, decorators: [{
|
|
18
18
|
type: Component,
|
|
19
19
|
args: [{ standalone: true, selector: 'mng-error-page', imports: [ButtonModule, TranslateModule, RouterLink], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight() ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"] }]
|
|
20
20
|
}], ctorParameters: () => [{ type: i1.CommonsService }] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IucGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9jb3JlL3NyYy9jb21wb25lbnRzL3BhZ2VzL2Vycm9yL2Vycm9yLnBhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9wYWdlcy9lcnJvci9lcnJvci5wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRTNDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1DQUFtQyxDQUFDOzs7OztBQVVqRSxNQUFNLE9BQU8sa0JBQWtCO0lBQzNCLFlBQW1CLE9BQXVCO1FBQXZCLFlBQU8sR0FBUCxPQUFPLENBQWdCO0lBQUcsQ0FBQzs4R0FEckMsa0JBQWtCO2tHQUFsQixrQkFBa0IsMEVDaEIvQixpK0JBYUEseTdCREZjLFlBQVksNE9BQUUsZUFBZSw0RkFBRSxVQUFVOzsyRkFLMUMsa0JBQWtCO2tCQVI5QixTQUFTO2lDQUNNLElBQUksWUFDTixnQkFBZ0IsV0FDakIsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLFVBQVUsQ0FBQyxtQkFHbkMsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1JvdXRlckxpbmt9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7QnV0dG9uTW9kdWxlfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XG5cbmltcG9ydCB7Q29tbW9uc1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2NvbW1vbnMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdtbmctZXJyb3ItcGFnZScsXG4gICAgaW1wb3J0czogW0J1dHRvbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBSb3V0ZXJMaW5rXSxcbiAgICBzdHlsZVVybHM6IFsnZXJyb3IucGFnZS5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lcnJvci5wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFcnJvclBhZ2VDb21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBjb21tb25zOiBDb21tb25zU2VydmljZSkge31cbn1cbiIsIjxkaXYgW2NsYXNzXT1cIidleGNlcHRpb24tYm9keSBtaW4taC1zY3JlZW4gJyArIChjb21tb25zLmNvbG9yU2NoZW1lSXNMaWdodCgpID8gJ2xheW91dC1saWdodCcgOiAnbGF5b3V0LWRhcmsnKVwiPlxuICAgIDxkaXYgY2xhc3M9XCJleGNlcHRpb24tY29udGFpbmVyIG1pbi1oLXNjcmVlbiBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGZsZXgtY29sdW1uIGJnLWF1dG8gbWQ6YmctY29udGFpbiBiZy1uby1yZXBlYXRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImV4Y2VwdGlvbi1wYW5lbCB0ZXh0LWNlbnRlciBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgICA8aDEgY2xhc3M9XCJ0ZXh0LXJlZC00MDAgbWItMFwiPnt7ICdwYWdlcy5ub3RGb3VuZC50aXRsZScgfCB0cmFuc2xhdGUgfX08L2gxPlxuICAgICAgICAgICAgPGgzIGNsYXNzPVwidGV4dC1yZWQtMzAwXCI+e3sgJ3BhZ2VzLm5vdEZvdW5kLnN1YnRpdGxlJyB8IHRyYW5zbGF0ZSB9fTwvaDM+XG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBwQnV0dG9uIFtsYWJlbF09XCInZ2VuZXJhbC5yZXR1cm5Ib21lJyB8IHRyYW5zbGF0ZVwiIFtyb3V0ZXJMaW5rXT1cIlsnLyddXCI+PC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXhjZXB0aW9uLWZvb3RlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleFwiPlxuICAgICAgICAgICAgPGltZyBbc3JjXT1cImNvbW1vbnMuYXBwTG9nbygpXCIgY2xhc3M9XCJleGNlcHRpb24tbG9nb1wiIGFsdD1cIkFwcCBsb2dvXCIgLz5cbiAgICAgICAgICAgIDxpbWcgW3NyY109XCJjb21tb25zLmFwcExvZ29OYW1lKClcIiBjbGFzcz1cImV4Y2VwdGlvbi1hcHBuYW1lIG1sLTNcIiBhbHQ9XCJBcHAgbmFtZVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -11,11 +11,11 @@ export class NotFoundPageComponent {
|
|
|
11
11
|
constructor(commons) {
|
|
12
12
|
this.commons = commons;
|
|
13
13
|
}
|
|
14
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: NotFoundPageComponent, deps: [{ token: i1.CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.5", type: NotFoundPageComponent, isStandalone: true, selector: "mng-not-found-page", ngImport: i0, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight() ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <p>{{ 'pages.notFound.message' | translate }}</p>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel p{font-size:24px;font-weight:400;max-width:320px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "directive", type: i2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
16
16
|
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: NotFoundPageComponent, decorators: [{
|
|
18
18
|
type: Component,
|
|
19
19
|
args: [{ standalone: true, selector: 'mng-not-found-page', imports: [ButtonModule, RouterLink, TranslateModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"'exception-body min-h-screen ' + (commons.colorSchemeIsLight() ? 'layout-light' : 'layout-dark')\">\n <div class=\"exception-container min-h-screen flex align-items-center justify-content-center flex-column bg-auto md:bg-contain bg-no-repeat\">\n <div class=\"exception-panel text-center flex align-items-center justify-content-center flex-column\">\n <h1 class=\"text-red-400 mb-0\">{{ 'pages.notFound.title' | translate }}</h1>\n <h3 class=\"text-red-300\">{{ 'pages.notFound.subtitle' | translate }}</h3>\n <p>{{ 'pages.notFound.message' | translate }}</p>\n <button type=\"button\" pButton [label]=\"'general.returnHome' | translate\" [routerLink]=\"['/']\"></button>\n </div>\n <div class=\"exception-footer align-items-center flex\">\n <img [src]=\"commons.appLogo()\" class=\"exception-logo\" alt=\"App logo\" />\n <img [src]=\"commons.appLogoName()\" class=\"exception-appname ml-3\" alt=\"App name\" />\n </div>\n </div>\n</div>\n", styles: [".exception-body{background:var(--surface-ground)}.exception-body .exception-container{background:var(--exception-pages-image);background-repeat:no-repeat;background-size:contain;box-sizing:border-box}.exception-body .exception-container .exception-panel{box-sizing:border-box;flex-grow:1;margin-top:3rem;margin-bottom:3rem}.exception-body .exception-container .exception-panel h1{font-size:140px;font-weight:900;text-shadow:0 0 50px rgba(252,97,97,.2)}.exception-body .exception-container .exception-panel h3{font-size:80px;font-weight:900;margin-top:-90px;margin-bottom:50px}.exception-body .exception-container .exception-panel p{font-size:24px;font-weight:400;max-width:320px}.exception-body .exception-container .exception-panel button{margin-top:50px}.exception-body .exception-container .exception-footer{margin-bottom:2rem}.exception-body .exception-container .exception-footer .exception-logo{width:34px}.exception-body .exception-container .exception-footer .exception-appname{width:72px}\n"] }]
|
|
20
20
|
}], ctorParameters: () => [{ type: i1.CommonsService }] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90LWZvdW5kLnBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9wYWdlcy9ub3QtZm91bmQvbm90LWZvdW5kLnBhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9wYWdlcy9ub3QtZm91bmQvbm90LWZvdW5kLnBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFM0MsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7Ozs7O0FBVWpFLE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsWUFBbUIsT0FBdUI7UUFBdkIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7SUFBRyxDQUFDOzhHQURyQyxxQkFBcUI7a0dBQXJCLHFCQUFxQiw4RUNoQmxDLGdpQ0FjQSxnaUNESGMsWUFBWSw2T0FBRSxVQUFVLG1PQUFFLGVBQWU7OzJGQUsxQyxxQkFBcUI7a0JBUmpDLFNBQVM7aUNBQ00sSUFBSSxZQUNOLG9CQUFvQixXQUNyQixDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsZUFBZSxDQUFDLG1CQUduQyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Um91dGVyTGlua30gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtCdXR0b25Nb2R1bGV9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcblxuaW1wb3J0IHtDb21tb25zU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY29tbW9ucy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ21uZy1ub3QtZm91bmQtcGFnZScsXG4gICAgaW1wb3J0czogW0J1dHRvbk1vZHVsZSwgUm91dGVyTGluaywgVHJhbnNsYXRlTW9kdWxlXSxcbiAgICBzdHlsZVVybHM6IFsnbm90LWZvdW5kLnBhZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbm90LWZvdW5kLnBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIE5vdEZvdW5kUGFnZUNvbXBvbmVudCB7XG4gICAgY29uc3RydWN0b3IocHVibGljIGNvbW1vbnM6IENvbW1vbnNTZXJ2aWNlKSB7fVxufVxuIiwiPGRpdiBbY2xhc3NdPVwiJ2V4Y2VwdGlvbi1ib2R5IG1pbi1oLXNjcmVlbiAnICsgKGNvbW1vbnMuY29sb3JTY2hlbWVJc0xpZ2h0KCkgPyAnbGF5b3V0LWxpZ2h0JyA6ICdsYXlvdXQtZGFyaycpXCI+XG4gICAgPGRpdiBjbGFzcz1cImV4Y2VwdGlvbi1jb250YWluZXIgbWluLWgtc2NyZWVuIGZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgZmxleC1jb2x1bW4gYmctYXV0byBtZDpiZy1jb250YWluIGJnLW5vLXJlcGVhdFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXhjZXB0aW9uLXBhbmVsIHRleHQtY2VudGVyIGZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgZmxleC1jb2x1bW5cIj5cbiAgICAgICAgICAgIDxoMSBjbGFzcz1cInRleHQtcmVkLTQwMCBtYi0wXCI+e3sgJ3BhZ2VzLm5vdEZvdW5kLnRpdGxlJyB8IHRyYW5zbGF0ZSB9fTwvaDE+XG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJ0ZXh0LXJlZC0zMDBcIj57eyAncGFnZXMubm90Rm91bmQuc3VidGl0bGUnIHwgdHJhbnNsYXRlIH19PC9oMz5cbiAgICAgICAgICAgIDxwPnt7ICdwYWdlcy5ub3RGb3VuZC5tZXNzYWdlJyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIHBCdXR0b24gW2xhYmVsXT1cIidnZW5lcmFsLnJldHVybkhvbWUnIHwgdHJhbnNsYXRlXCIgW3JvdXRlckxpbmtdPVwiWycvJ11cIj48L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJleGNlcHRpb24tZm9vdGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4XCI+XG4gICAgICAgICAgICA8aW1nIFtzcmNdPVwiY29tbW9ucy5hcHBMb2dvKClcIiBjbGFzcz1cImV4Y2VwdGlvbi1sb2dvXCIgYWx0PVwiQXBwIGxvZ29cIiAvPlxuICAgICAgICAgICAgPGltZyBbc3JjXT1cImNvbW1vbnMuYXBwTG9nb05hbWUoKVwiIGNsYXNzPVwiZXhjZXB0aW9uLWFwcG5hbWUgbWwtM1wiIGFsdD1cIkFwcCBuYW1lXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvc3JjL2Rlc2NyaXB0b3JzL21vZGVsLmRlc2NyaXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NPcHRUeXBlfSBmcm9tICcuLi9tb2RlbHMvY2xhc3Mtc2VydmljZS5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1vZGVsRGVzY3JpcHRvcjxNb2RlbCwgTW9kZWxDbGFzcyA9IENsYXNzT3B0VHlwZTxNb2RlbD4+
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvc3JjL2Rlc2NyaXB0b3JzL21vZGVsLmRlc2NyaXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NPcHRUeXBlfSBmcm9tICcuLi9tb2RlbHMvY2xhc3Mtc2VydmljZS5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1vZGVsRGVzY3JpcHRvcjxNb2RlbCwgTW9kZWxDbGFzcyA9IENsYXNzT3B0VHlwZTxNb2RlbD4+IHtcbiAgICB0eXBlOiBNb2RlbENsYXNzO1xuICAgIHR5cGVOYW1lPzogc3RyaW5nO1xuICAgIGkxOG5CYXNlS2V5OiBzdHJpbmc7XG4gICAgaWRQcm9wZXJ0eT86IHN0cmluZztcbiAgICB0aXRsZVByb3BlcnR5Pzogc3RyaW5nIHwgKChpdGVtOiBNb2RlbCkgPT4gc3RyaW5nKTtcbn1cbiJdfQ==
|
|
@@ -47,10 +47,10 @@ export class ComponentDirective {
|
|
|
47
47
|
}
|
|
48
48
|
this.componentInstanceEventEmitter.next(this.componentRef.instance);
|
|
49
49
|
}
|
|
50
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
51
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ComponentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
51
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.5", type: ComponentDirective, isStandalone: true, selector: "[mngComponent]", inputs: { component: ["mngComponent", "component"], componentIt: ["injectionToken", "componentIt"], inputs: "inputs", attachToHost: "attachToHost", parentInjector: "parentInjector" }, outputs: { componentInstanceEventEmitter: "instanceCreated" }, ngImport: i0 }); }
|
|
52
52
|
}
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ComponentDirective, decorators: [{
|
|
54
54
|
type: Directive,
|
|
55
55
|
args: [{
|
|
56
56
|
standalone: true,
|
|
@@ -11,10 +11,10 @@ export class TemplateDirective {
|
|
|
11
11
|
getViewContainerRef() {
|
|
12
12
|
return this.viewContainerRef;
|
|
13
13
|
}
|
|
14
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
15
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
14
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: TemplateDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
15
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.5", type: TemplateDirective, isStandalone: true, selector: "[mngTemplate]", inputs: { type: "type", name: ["mngTemplate", "name"] }, ngImport: i0 }); }
|
|
16
16
|
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: TemplateDirective, decorators: [{
|
|
18
18
|
type: Directive,
|
|
19
19
|
args: [{
|
|
20
20
|
standalone: true,
|
|
@@ -244,4 +244,23 @@ export function errorCauseToString(error, opts) {
|
|
|
244
244
|
}
|
|
245
245
|
return '';
|
|
246
246
|
}
|
|
247
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvc3JjL2Vycm9yL2Vycm9yLWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFdkQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsaUJBQWlCLEVBQTJCLGdCQUFnQixFQUFFLG9CQUFvQixFQUFzQixNQUFNLGVBQWUsQ0FBQztBQUV0STs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxLQUFVLEVBQUUsSUFBYSxFQUFFLE9BQWE7SUFDdkUsTUFBTSxJQUFJLEdBQTRCO1FBQ2xDLElBQUk7UUFDSixPQUFPO1FBQ1AsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSTtLQUNuQyxDQUFDO0lBRUYsSUFBSSxLQUFLLFlBQVksaUJBQWlCLEVBQUUsQ0FBQztRQUNyQyxPQUFPLElBQUksZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckYsQ0FBQztTQUFNLENBQUM7UUFDSixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixPQUFPLElBQUksb0JBQW9CLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSx5QkFBeUIsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN0RixDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxLQUFVO0lBQzFDLE9BQU8sS0FBSyxZQUFZLGlCQUFpQixJQUFJLEtBQUssWUFBWSxnQkFBZ0IsSUFBSyxLQUF5QyxFQUFFLFNBQVMsWUFBWSxpQkFBaUIsQ0FB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QztRQUM1RSxJQUFJLENBQUMsSUFBSSxFQUFFLGdCQUFnQixJQUFJLEtBQUssQ0FBQyxLQUFLLFlBQVksS0FBSyxFQUFFLENBQUM7WUFDMUQsT0FBTyxDQUNILGFBQWE7Z0JBQ2IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUksS0FBSyxDQUFDLEtBQWUsQ0FBQyxPQUFPLEdBQUksS0FBSyxDQUFDLEtBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQU0sS0FBSyxDQUFDLEtBQWUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDM0osQ0FBQztRQUNOLENBQUM7SUFDTCxDQUFDO0lBQ0QsT0FBTyxFQUFFLENBQUM7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtIdHRwRXJyb3JSZXNwb25zZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQge3N0cmluZ2lmeX0gZnJvbSAnLi4vaGVscGVycy9zdHJpbmcnO1xuaW1wb3J0IHtMb2dMZXZlbEVudW19IGZyb20gJy4uL2xvZy9sb2cubW9kZWwnO1xuaW1wb3J0IHtBQ29tbW9uc0Vycm9yQmFzZSwgQ29tbW9uc0Vycm9yQmFzZU9wdGlvbnMsIENvbW1vbnNIdHRwRXJyb3IsIENvbW1vbnNJbnRlcm5hbEVycm9yLCBJQ29tbW9uc0FjdGlvbkVycm9yfSBmcm9tICcuL2Vycm9yLm1vZGVsJztcblxuLyoqXG4gKiBDb252ZXJ0cyBSeEpTIHN1YnNjcmlwdGlvbiBlcnJvciB0byBDb21tb25zRXJyb3IuXG4gKiBAcGFyYW0gZXJyb3IgRXJyb3IuXG4gKiBAcGFyYW0gbmFtZSBPcHRpb25hbCBuYW1lIHRvIHdyaXRlIGluIGNvbW1vbnMgZXJyb3IuXG4gKiBAcGFyYW0gZGV0YWlscyBPcHRpb25hbCBkZXRhaWxzIG9mIGVycm9yLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZnJvbVN1YnNjcmliZUVycm9yKGVycm9yOiBhbnksIG5hbWU/OiBzdHJpbmcsIGRldGFpbHM/OiBhbnkpOiBBQ29tbW9uc0Vycm9yQmFzZSB7XG4gICAgY29uc3Qgb3B0czogQ29tbW9uc0Vycm9yQmFzZU9wdGlvbnMgPSB7XG4gICAgICAgIG5hbWUsXG4gICAgICAgIGRldGFpbHMsXG4gICAgICAgIGxvY2F0aW9uOiB3aW5kb3c/LmxvY2F0aW9uPy5ocmVmXG4gICAgfTtcblxuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgIHJldHVybiBuZXcgQ29tbW9uc0h0dHBFcnJvcihlcnJvci5tZXNzYWdlID8/ICdIdHRwIEVycm9yIG9jY3VycmVkJywgZXJyb3IsIG9wdHMpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIG9wdHMuY2F1c2UgPSBlcnJvcjtcbiAgICAgICAgcmV0dXJuIG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcihlcnJvci5tZXNzYWdlID8/ICdJbnRlcm5hbCBFcnJvciBvY2N1cnJlZCcsIG9wdHMpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgZXJyb3IgaXMgSHR0cCBlcnJvciAoQW5ndWxhciBvciBDb21tb25zKS5cbiAqIEBwYXJhbSBlcnJvclxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNIdHRwRXJyb3JSZXNwb25zZShlcnJvcjogYW55KSB7XG4gICAgcmV0dXJuIGVycm9yIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UgfHwgZXJyb3IgaW5zdGFuY2VvZiBDb21tb25zSHR0cEVycm9yIHx8IChlcnJvciBhcyBJQ29tbW9uc0FjdGlvbkVycm9yIHwgdW5kZWZpbmVkKT8uaHR0cEVycm9yIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2U7XG59XG5cbi8qKlxuICogR2V0cyBIdHRwRXJyb3JSZXNwb25zZSBmcm9tIGVycm9yIChBbmd1bGFyIG9yIENvbW1vbnMpLlxuICogQHBhcmFtIGVycm9yIEVycm9yLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0SHR0cEVycm9yUmVzcG9uc2UoZXJyb3I6IGFueSk6IEh0dHBFcnJvclJlc3BvbnNlIHwgbnVsbCB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UpIHtcbiAgICAgICAgcmV0dXJuIGVycm9yO1xuICAgIH0gZWxzZSBpZiAoZXJyb3IgaW5zdGFuY2VvZiBDb21tb25zSHR0cEVycm9yKSB7XG4gICAgICAgIHJldHVybiBlcnJvci5odHRwRXJyb3I7XG4gICAgfSBlbHNlIGlmICgoZXJyb3IgYXMgSUNvbW1vbnNBY3Rpb25FcnJvciB8IHVuZGVmaW5lZCk/Lmh0dHBFcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgIHJldHVybiBlcnJvci5odHRwRXJyb3I7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxufVxuXG4vKipcbiAqIEdldHMgSHR0cEVycm9yUmVzcG9uc2Ugc3RhdHVzIGZyb20gZXJyb3IgKEFuZ3VsYXIgb3IgQ29tbW9ucykuXG4gKiBAcGFyYW0gZXJyb3IgRXJyb3IuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRIdHRwRXJyb3JSZXNwb25zZVN0YXR1cyhlcnJvcjogYW55KTogbnVtYmVyIHwgbnVsbCB7XG4gICAgcmV0dXJuIGdldEh0dHBFcnJvclJlc3BvbnNlKGVycm9yKT8uc3RhdHVzID8/IG51bGw7XG59XG5cbi8qKlxuICogR2V0IGVycm9yIGxvZyBsZXZlbC4gQWxsIGlzIGVycm9yLCBleGNlcHQgaWYgZXJyb3IgaXMgaHR0cCBlcnJvciB3aXRoIHN0YXR1cyA+PTQwMCBhbmQgPDUwMC5cbiAqIEBwYXJhbSBlcnJvciBFcnJvci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVycm9yTG9nTGV2ZWwoZXJyb3I6IGFueSk6IExvZ0xldmVsRW51bSB7XG4gICAgaWYgKGlzSHR0cEVycm9yUmVzcG9uc2UoZXJyb3IpKSB7XG4gICAgICAgIGNvbnN0IHN0YXR1cyA9IGdldEh0dHBFcnJvclJlc3BvbnNlU3RhdHVzKGVycm9yKTtcbiAgICAgICAgaWYgKHN0YXR1cyAmJiBzdGF0dXMgPj0gNDAwICYmIHN0YXR1cyA8IDUwMCkge1xuICAgICAgICAgICAgcmV0dXJuIExvZ0xldmVsRW51bS5XYXJuaW5nO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBMb2dMZXZlbEVudW0uRXJyb3I7XG59XG5cbi8qKlxuICogR2V0IGVycm9yIG5hbWUgKHByb3RvdHlwZSBuYW1lIG9yIHR5cGUgZnJvbSBjb21tb25zIGVycm9yIGlmIG5hbWUgaXMgbm90IHByb3ZpZGVkKS5cbiAqIEBwYXJhbSBlcnJvciBFcnJvci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVycm9yTmFtZShlcnJvcjogYW55KTogc3RyaW5nIHtcbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBBQ29tbW9uc0Vycm9yQmFzZSkge1xuICAgICAgICByZXR1cm4gZXJyb3IubmFtZSA/PyBlcnJvci50eXBlO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBlcnJvci5uYW1lO1xuICAgIH1cbn1cblxuLyoqXG4gKiBXcml0ZXMgaHR0cCBlcnJvciB0byBzdHJpbmcgd2l0aCBhbGwgaGVhZGVycyBhbmQgYm9keS5cbiAqIEBwYXJhbSBlcnJvciBIdHRwIHJlc3BvbnNlIGVycm9yLlxuICogQHBhcmFtIG9wdHMgT3B0aW9ucyBmb3IgaGlkaW5nIHBhcnRzIG9mIGVycm9yOlxuICogIC0gaGlkZU1lc3NhZ2UgSGlkZXMgbWVzc2FnZSBvZiBlcnJvciAobWVzc2FnZSBpbmNsdWRlIHVybCwgc3RhdHVzIGFuZCBzdGF0dXMgdGV4dCEpLlxuICogIC0gaGlkZUhlYWRlcnMgSGlkZXMgaGVhZGVycy5cbiAqICAtIGhpZGVCb2R5IEhpZGVzIEpTT04gcmVwcmVzZW50YXRpb24gb2YgYm9keS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmcoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlLCBvcHRzPzogSHR0cEVycm9yUmVzcG9uc2VUb1N0cmluZ09wdGlvbnNUeXBlKTogc3RyaW5nIHtcbiAgICBsZXQgc3RyID0gb3B0cz8uaGlkZU1lc3NhZ2UgPyAnJyA6IGAke2Vycm9yLm1lc3NhZ2V9XFxuYDsgLy8gbWVzc2FnZSBzaG91bGQgYWxyZWFkeSBpbmNsdWRlIHVybCwgc3RhdHVzLCBldGMuXG4gICAgaWYgKCFvcHRzPy5oaWRlSGVhZGVycykge1xuICAgICAgICBzdHIgKz0gYEh0dHAgUmVzcG9uc2UgSGVhZGVyczogJHtlcnJvci5oZWFkZXJzLmtleXMoKS5yZWR1Y2UoKGFjYywga2V5KSA9PiBgJHthY2N9WyR7a2V5fTogJHtlcnJvci5oZWFkZXJzLmdldChrZXkpfV1gLCAnJyl9YDtcbiAgICB9XG4gICAgaWYgKCFvcHRzPy5oaWRlQm9keSkge1xuICAgICAgICBzdHIgKz0gYFxcbkh0dHAgUmVzcG9uc2UgQm9keTogJHtzdHJpbmdpZnkoZXJyb3IuZXJyb3IpfWA7XG4gICAgfVxuICAgIHJldHVybiBzdHI7XG59XG5cbi8qKlxuICogRXJyb3IgdG8gc3RyaW5nLlxuICogQHBhcmFtIGVycm9yIEVycm9yLlxuICogQHBhcmFtIG9wdHMgT3B0aW9ucyBmb3IgaGlkaW5nIHBhcnRzIG9mIGVycm9yOlxuICogLSBoaWRlTWVzc2FnZSBIaWRlcyBtZXNzYWdlIG9mIGVycm9yLlxuICogLSBoaWRlTmFtZSBIaWRlcyBlcnJvciBuYW1lLlxuICogLSBoaWRlQ2F1c2UgSGlkZXMgY2F1c2Ugb2YgYW4gZXJyb3IgKGlmIHByZXNlbnQsIHNlZSBAbGluayhlcnJvckNhdXNlVG9TdHJpbmcpIGZvciBvdGhlciBvcHRpb25zKS5cbiAqIC0gaGlkZVN0YWNrIEhpZGVzIHN0YWNrIG9mIGFuIGVycm9yIChpZiBwcmVzZW50KS5cbiAqIC0gaGlkZURldGFpbHMgSGlkZXMgSlNPTiBkZXRhaWwncyByZXByZXNlbnRhdGlvbiBvZiBlcnJvciAoaWYgcHJlc2VudCkuXG4gKiAtIGhpZGVMb2NhdGlvbiBIaWRlcyBsb2NhdGlvbiAoVVJMKSB3aGVyZSBlcnJvciB3YXMgdGhyb3duLlxuICogLSBoaWRlSHR0cCBIaWRlcyBodHRwIGVycm9yIHBvcnRpb24gb2YgZXJyb3IgaWYgaHR0cCBlcnJvciByZXNwb25zZSAoc2VlIEBsaW5rKGh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmcpIGZvciBvdGhlciBvcHRpb25zKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVycm9yVG9TdHJpbmcoZXJyb3I6IEVycm9yLCBvcHRzPzogRXJyb3JUb1N0cmluZ09wdGlvbnNUeXBlKTogc3RyaW5nIHtcbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBBQ29tbW9uc0Vycm9yQmFzZSkge1xuICAgICAgICByZXR1cm4gY29tbW9uc0Vycm9yVG9TdHJpbmcoZXJyb3IsIG9wdHMpO1xuICAgIH0gZWxzZSBpZiAoZXJyb3IgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgICAgICByZXR1cm4gaHR0cEVycm9yUmVzcG9uc2VUb1N0cmluZyhlcnJvciwgb3B0cyk7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RyQmxvY2tzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmICghb3B0cz8uaGlkZU1lc3NhZ2UpIHtcbiAgICAgICAgc3RyQmxvY2tzLnB1c2goZXJyb3IubWVzc2FnZSk7XG4gICAgfVxuICAgIGlmIChlcnJvci5uYW1lKSB7XG4gICAgICAgIHN0ckJsb2Nrcy5wdXNoKGBFcnJvciBuYW1lOiAke2Vycm9yLm5hbWV9YCk7XG4gICAgfVxuICAgIGlmICghb3B0cz8uaGlkZUNhdXNlKSB7XG4gICAgICAgIHN0ckJsb2Nrcy5wdXNoKGVycm9yQ2F1c2VUb1N0cmluZyhlcnJvciwgb3B0cykpO1xuICAgIH1cbiAgICBpZiAoIW9wdHM/LmhpZGVTdGFjayAmJiBlcnJvci5zdGFjaykge1xuICAgICAgICBzdHJCbG9ja3MucHVzaChgU3RhY2sgdHJhY2U6XFxuJHtlcnJvci5zdGFja31gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RyQmxvY2tzLmZpbHRlcihzID0+IHMudHJpbSgpLmxlbmd0aCA+IDApLmpvaW4oJ1xcbicpO1xufVxuXG4vKipcbiAqIENvbW1vbnMgZXJyb3IgdG8gc3RyaW5nLlxuICogQHBhcmFtIGVycm9yIENvbW1vbnMgZXJyb3IuXG4gKiBAcGFyYW0gb3B0cyBPcHRpb25zIGZvciBoaWRpbmcgcGFydHMgb2YgZXJyb3I6XG4gKiAtIGhpZGVNZXNzYWdlIEhpZGVzIG1lc3NhZ2Ugb2YgZXJyb3IuXG4gKiAtIGhpZGVOYW1lIEhpZGVzIGVycm9yIG5hbWUuXG4gKiAtIGhpZGVDYXVzZSBIaWRlcyBjYXVzZSBvZiBhbiBlcnJvciAoaWYgcHJlc2VudCwgc2VlIEBsaW5rKGVycm9yQ2F1c2VUb1N0cmluZykgZm9yIG90aGVyIG9wdGlvbnMpLlxuICogLSBoaWRlU3RhY2sgSGlkZXMgc3RhY2sgb2YgYW4gZXJyb3IgKGlmIHByZXNlbnQpLlxuICogLSBoaWRlRGV0YWlscyBIaWRlcyBKU09OIGRldGFpbCdzIHJlcHJlc2VudGF0aW9uIG9mIGVycm9yIChpZiBwcmVzZW50KS5cbiAqIC0gaGlkZUxvY2F0aW9uIEhpZGVzIGxvY2F0aW9uIChVUkwpIHdoZXJlIGVycm9yIHdhcyB0aHJvd24uXG4gKiAtIGhpZGVIdHRwIEhpZGVzIGh0dHAgZXJyb3IgcG9ydGlvbiBvZiBlcnJvciBpZiBodHRwIGVycm9yIHJlc3BvbnNlIChzZWUgQGxpbmsoaHR0cEVycm9yUmVzcG9uc2VUb1N0cmluZykgZm9yIG90aGVyIG9wdGlvbnMpLlxuICogLSBoaWRlSXRlbXMgSGlkZXMgYWxsIGl0ZW0gaW5mb3JtYXRpb24gKGh0dHAgYm9keSwgYWN0aW9uIGNvbnRleHQgZGF0YSkuXG4gKiAtIGhpZGVBY3Rpb25EYXRhIFNlZSBAbGluayhjb21tb25zQWN0aW9uRXJyb3JDb250ZXh0VG9TdHJpbmcpIGZvciBhZGRpdGlvbmFsIGluZm8uXG4gKiAtIGhpZGVRdWVyeVBhcmFtcyBTZWUgQGxpbmsoY29tbW9uc0FjdGlvbkVycm9yQ29udGV4dFRvU3RyaW5nKSBmb3IgYWRkaXRpb25hbCBpbmZvLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29tbW9uc0Vycm9yVG9TdHJpbmcoZXJyb3I6IEFDb21tb25zRXJyb3JCYXNlLCBvcHRzPzogRXJyb3JUb1N0cmluZ09wdGlvbnNUeXBlKTogc3RyaW5nIHtcbiAgICBjb25zdCBzdHJCbG9ja3M6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKCFvcHRzPy5oaWRlTWVzc2FnZSkge1xuICAgICAgICBzdHJCbG9ja3MucHVzaChgJHtlcnJvci5tZXNzYWdlfSR7ZXJyb3IubWVzc2FnZUNvZGUgPyBgIChjb2RlOiAke2Vycm9yLm1lc3NhZ2VDb2RlfSlgIDogJyd9YCk7XG4gICAgfVxuICAgIGlmICghb3B0cz8uaGlkZU5hbWUpIHtcbiAgICAgICAgc3RyQmxvY2tzLnB1c2goYEVycm9yIG5hbWU6ICR7ZXJyb3IubmFtZSA/PyBlcnJvci50eXBlfSAke2Vycm9yLm5hbWUgPyBgKCR7ZXJyb3IudHlwZX0pYCA6ICcnfWApO1xuICAgIH1cbiAgICBpZiAoIW9wdHM/LmhpZGVMb2NhdGlvbiAmJiBlcnJvci5sb2NhdGlvbikge1xuICAgICAgICBzdHJCbG9ja3MucHVzaChgTG9jYXRpb246ICR7ZXJyb3IubG9jYXRpb259YCk7XG4gICAgfVxuXG4gICAgbGV0IGlzSHR0cCA9IGZhbHNlO1xuICAgIGlmICghb3B0cz8uaGlkZUh0dHAgJiYgZXJyb3IgaW5zdGFuY2VvZiBDb21tb25zSHR0cEVycm9yKSB7XG4gICAgICAgIHN0ckJsb2Nrcy5wdXNoKFxuICAgICAgICAgICAgaHR0cEVycm9yUmVzcG9uc2VUb1N0cmluZyhlcnJvci5odHRwRXJyb3IsIHtcbiAgICAgICAgICAgICAgICBoaWRlQm9keTogb3B0cz8uaGlkZUl0ZW1zIHx8IG9wdHM/LmhpZGVCb2R5LFxuICAgICAgICAgICAgICAgIGhpZGVIZWFkZXJzOiBvcHRzPy5oaWRlSGVhZGVycyxcbiAgICAgICAgICAgICAgICBoaWRlTWVzc2FnZTogZXJyb3IubWVzc2FnZS5pbmRleE9mKGVycm9yLmh0dHBFcnJvci5tZXNzYWdlKSA+PSAwXG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICBpc0h0dHAgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAoZXJyb3IudHlwZSA9PT0gJ0NvbW1vbnNBY3Rpb25FcnJvcicpIHtcbiAgICAgICAgY29uc3QgYWN0aW9uRXJyb3IgPSBlcnJvciBhcyB1bmtub3duIGFzIElDb21tb25zQWN0aW9uRXJyb3I7XG4gICAgICAgIGlmIChhY3Rpb25FcnJvci5hY3Rpb25Db250ZXh0KSB7XG4gICAgICAgICAgICBzdHJCbG9ja3MucHVzaChjb21tb25zQWN0aW9uRXJyb3JDb250ZXh0VG9TdHJpbmcoYWN0aW9uRXJyb3IsIG9wdHMpKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW9wdHM/LmhpZGVIdHRwICYmIGFjdGlvbkVycm9yLmh0dHBFcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgICAgICBzdHJCbG9ja3MucHVzaChcbiAgICAgICAgICAgICAgICBodHRwRXJyb3JSZXNwb25zZVRvU3RyaW5nKGFjdGlvbkVycm9yLmh0dHBFcnJvciwge1xuICAgICAgICAgICAgICAgICAgICBoaWRlQm9keTogb3B0cz8uaGlkZUl0ZW1zIHx8IG9wdHM/LmhpZGVCb2R5LFxuICAgICAgICAgICAgICAgICAgICBoaWRlSGVhZGVyczogb3B0cz8uaGlkZUhlYWRlcnMsXG4gICAgICAgICAgICAgICAgICAgIGhpZGVNZXNzYWdlOiBlcnJvci5tZXNzYWdlLmluZGV4T2YoYWN0aW9uRXJyb3IuaHR0cEVycm9yLm1lc3NhZ2UpID49IDBcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGlzSHR0cCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIW9wdHM/LmhpZGVEZXRhaWxzICYmIGVycm9yLmRldGFpbHMpIHtcbiAgICAgICAgc3RyQmxvY2tzLnB1c2goYERldGFpbHM6ICR7c3RyaW5naWZ5KGVycm9yLmRldGFpbHMpfWApO1xuICAgIH1cbiAgICBpZiAoIW9wdHM/LmhpZGVDYXVzZSAmJiAoIWlzSHR0cCB8fCAhKGVycm9yLmNhdXNlIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UpKSkge1xuICAgICAgICBzdHJCbG9ja3MucHVzaChlcnJvckNhdXNlVG9TdHJpbmcoZXJyb3IsIG9wdHMpKTtcbiAgICB9XG4gICAgaWYgKCFvcHRzPy5oaWRlU3RhY2sgJiYgZXJyb3Iuc3RhY2spIHtcbiAgICAgICAgc3RyQmxvY2tzLnB1c2goYFN0YWNrIHRyYWNlOlxcbiR7ZXJyb3Iuc3RhY2t9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0ckJsb2Nrcy5maWx0ZXIocyA9PiBzLnRyaW0oKS5sZW5ndGggPiAwKS5qb2luKCdcXG4nKTtcbn1cblxuLyoqXG4gKiBXcml0ZXMgY29tbW9ucyBhY3Rpb24gZXJyb3IgaW5mbyBmcm9tIGNvbnRleHQgYXMgc3RyaW5nLlxuICogQHBhcmFtIGVycm9yIENvbW1vbnMgYWN0aW9uIGVycm9yLlxuICogQHBhcmFtIG9wdHMgT3B0aW9ucyBmb3IgaGlkaW5nIHBhcnRzIG9mIGVycm9yOlxuICogLSBoaWRlSXRlbXMgSGlkZXMgYWxsIGl0ZW0gcmVsYXRlZCBpbmZvcm1hdGlvbiAoaXRlbSwgZm9ybSBpdGVtLCBzdWJtaXQgaXRlbSwgLi4uKS5cbiAqIC0gaGlkZUFjdGlvbkRhdGEgSGlkZXMgYWN0aW9uIGRhdGEuXG4gKiAtIGhpZGVRdWVyeVBhcmFtcyBIaWRlcyBxdWVyeSBwYXJhbXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb21tb25zQWN0aW9uRXJyb3JDb250ZXh0VG9TdHJpbmcoZXJyb3I6IElDb21tb25zQWN0aW9uRXJyb3IsIG9wdHM/OiBBY3Rpb25FcnJvckNvbnRleHRUb1N0cmluZ09wdGlvbnNUeXBlKTogc3RyaW5nIHtcbiAgICBsZXQgcGFyYW1zTWVzc2FnZSA9ICcnO1xuICAgIGlmIChlcnJvci5hY3Rpb25Db250ZXh0Py5wYXJhbWV0ZXJzKSB7XG4gICAgICAgIGlmIChlcnJvci5hY3Rpb25Db250ZXh0Py5wYXJhbWV0ZXJzLml0ZW1JZCkge1xuICAgICAgICAgICAgcGFyYW1zTWVzc2FnZSArPSBgW2l0ZW1JZDogJHtlcnJvci5hY3Rpb25Db250ZXh0LnBhcmFtZXRlcnMuaXRlbUlkfV1gO1xuICAgICAgICB9XG4gICAgICAgIGlmICghb3B0cz8uaGlkZUl0ZW1zICYmIGVycm9yLmFjdGlvbkNvbnRleHQ/LnBhcmFtZXRlcnMuaXRlbSkge1xuICAgICAgICAgICAgcGFyYW1zTWVzc2FnZSArPSBgW2l0ZW06ICR7c3RyaW5naWZ5KGVycm9yLmFjdGlvbkNvbnRleHQucGFyYW1ldGVycy5pdGVtKX1dYDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW9wdHM/LmhpZGVBY3Rpb25EYXRhICYmIGVycm9yLmFjdGlvbkNvbnRleHQ/LnBhcmFtZXRlcnMuYWN0aW9uRGF0YSkge1xuICAgICAgICAgICAgcGFyYW1zTWVzc2FnZSArPSBPYmplY3QuZW50cmllcyhlcnJvci5hY3Rpb25Db250ZXh0Py5wYXJhbWV0ZXJzLmFjdGlvbkRhdGEpLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+IGAke2FjY31bYWN0aW9uRGF0YSAke2tleX06ICR7c3RyaW5naWZ5KHZhbHVlKX1dYCwgJycpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghb3B0cz8uaGlkZVF1ZXJ5UGFyYW1zICYmIGVycm9yLmFjdGlvbkNvbnRleHQ/LnBhcmFtZXRlcnMuZGF0YUxpc3RQYXJhbXMpIHtcbiAgICAgICAgICAgIHBhcmFtc01lc3NhZ2UgKz0gYFtkYXRhTGlzdFBhcmFtczogJHtzdHJpbmdpZnkoZXJyb3IuYWN0aW9uQ29udGV4dC5wYXJhbWV0ZXJzLmRhdGFMaXN0UGFyYW1zKX1dYDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW9wdHM/LmhpZGVJdGVtcyAmJiBlcnJvci5hY3Rpb25Db250ZXh0Py5wYXJhbWV0ZXJzLmZvcm1JdGVtKSB7XG4gICAgICAgICAgICBwYXJhbXNNZXNzYWdlICs9IGBbZm9ybUl0ZW06ICR7c3RyaW5naWZ5KGVycm9yLmFjdGlvbkNvbnRleHQucGFyYW1ldGVycy5mb3JtSXRlbSl9XWA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFvcHRzPy5oaWRlSXRlbXMgJiYgZXJyb3IuYWN0aW9uQ29udGV4dD8ucGFyYW1ldGVycy5zdWJtaXRSZXN1bHQpIHtcbiAgICAgICAgICAgIHBhcmFtc01lc3NhZ2UgKz0gYFtmb3JtSXRlbTogJHtzdHJpbmdpZnkoZXJyb3IuYWN0aW9uQ29udGV4dC5wYXJhbWV0ZXJzLnN1Ym1pdFJlc3VsdCl9XWA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVycm9yLmFjdGlvbkNvbnRleHQ/LnBhcmFtZXRlcnMubG9jYWxlKSB7XG4gICAgICAgICAgICBwYXJhbXNNZXNzYWdlICs9IGBbbG9jYWxlOiAke3N0cmluZ2lmeShlcnJvci5hY3Rpb25Db250ZXh0LnBhcmFtZXRlcnMubG9jYWxlKX1dYDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBwYXJhbXNNZXNzYWdlO1xufVxuXG4vKipcbiAqIFdyaXRlcyBjYXVzZSBvZiBhbiBlcnJvciBhcyBzdHJpbmcuXG4gKiBAcGFyYW0gZXJyb3IgRXJyb3IuXG4gKiBAcGFyYW0gb3B0cyBPcHRpb25zIGZvciBoaWRpbmcgcGFydHMgb2YgZXJyb3I6XG4gKiAtIGNhdXNlT25FcnJvck9ubHkgUHJpbnRzIG9ubHkgaWYgY2F1c2UgaXMgaW5zdGFuY2Ugb2YgZXJyb3IuXG4gKiAtIGNhdXNlQXNKc29uIFByaW50IGVycm9yIGNhdXNlIGFzIGEgSlNPTiAoYnkgZGVmYXVsdCwgaWYgZXJyb3Igb25seSBtZXNzYWdlIGFuZCBuYW1lIHdpbGwgYmUgcHJpbnRlZCkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlcnJvckNhdXNlVG9TdHJpbmcoZXJyb3I6IEVycm9yLCBvcHRzPzogRXJyb3JDYXVzZVRvU3RyaW5nT3B0aW9uc1R5cGUpOiBzdHJpbmcge1xuICAgIC8vIGlmIGFscmVhZHkgbG9nZ2VkIGFzIGh0dHAgZXJyb3IsIGNoZWNrIHRoYXQgY2F1c2UgaXMgbm90IGFsc28gaHR0cCBlcnJvciAoY2F1c2UgaXQgaXMgdXN1YWxseSBkdXBsaWNhdGVkKVxuICAgIGlmIChlcnJvci5jYXVzZSAmJiAoIW9wdHM/LmNhdXNlT25FcnJvck9ubHkgfHwgZXJyb3IuY2F1c2UgaW5zdGFuY2VvZiBFcnJvcikpIHtcbiAgICAgICAgY29uc3QgbmVlZHNTdHJpbmdpZnkgPSBvcHRzPy5jYXVzZUFzSnNvbiB8fCAhKGVycm9yLmNhdXNlIGluc3RhbmNlb2YgRXJyb3IpO1xuICAgICAgICBpZiAoIW9wdHM/LmNhdXNlT25FcnJvck9ubHkgfHwgZXJyb3IuY2F1c2UgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAnQ2F1c2VkIGJ5OiAnICtcbiAgICAgICAgICAgICAgICAobmVlZHNTdHJpbmdpZnkgPyBzdHJpbmdpZnkoZXJyb3IuY2F1c2UpIDogYCR7KGVycm9yLmNhdXNlIGFzIEVycm9yKS5tZXNzYWdlfSR7KGVycm9yLmNhdXNlIGFzIEVycm9yKS5uYW1lID8gYCAoJHsoZXJyb3IuY2F1c2UgYXMgRXJyb3IpLm5hbWV9KWAgOiAnJ31gKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gJyc7XG59XG5cbmV4cG9ydCB0eXBlIEVycm9yVG9TdHJpbmdPcHRpb25zVHlwZSA9IEVycm9yVG9TdHJpbmdPcHRpb25zQmFzZVR5cGUgJlxuICAgIEh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmdPcHRpb25zVHlwZSAmXG4gICAgQWN0aW9uRXJyb3JDb250ZXh0VG9TdHJpbmdPcHRpb25zVHlwZSAmXG4gICAgRXJyb3JDYXVzZVRvU3RyaW5nT3B0aW9uc1R5cGUgJiB7XG4gICAgICAgIGhpZGVEZXRhaWxzPzogYm9vbGVhbjtcbiAgICAgICAgaGlkZUxvY2F0aW9uPzogYm9vbGVhbjtcbiAgICB9O1xuXG5leHBvcnQgaW50ZXJmYWNlIEVycm9yVG9TdHJpbmdPcHRpb25zQmFzZVR5cGUge1xuICAgIGhpZGVOYW1lPzogYm9vbGVhbjtcbiAgICBoaWRlU3RhY2s/OiBib29sZWFuO1xuICAgIGhpZGVDYXVzZT86IGJvb2xlYW47XG4gICAgaGlkZUh0dHA/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmdPcHRpb25zVHlwZSB7XG4gICAgaGlkZU1lc3NhZ2U/OiBib29sZWFuO1xuICAgIGhpZGVIZWFkZXJzPzogYm9vbGVhbjtcbiAgICBoaWRlQm9keT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uRXJyb3JDb250ZXh0VG9TdHJpbmdPcHRpb25zVHlwZSB7XG4gICAgaGlkZUl0ZW1zPzogYm9vbGVhbjtcbiAgICBoaWRlQWN0aW9uRGF0YT86IGJvb2xlYW47XG4gICAgaGlkZVF1ZXJ5UGFyYW1zPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFcnJvckNhdXNlVG9TdHJpbmdPcHRpb25zVHlwZSB7XG4gICAgY2F1c2VPbkVycm9yT25seT86IGJvb2xlYW47XG4gICAgY2F1c2VBc0pzb24/OiBib29sZWFuO1xufVxuIl19
|
|
247
|
+
/**
|
|
248
|
+
* Throws an error with the provided error message.
|
|
249
|
+
* The intended usage is for in-line throwing of an error with TS type narrowing.
|
|
250
|
+
* <br>
|
|
251
|
+
* <i>Example</i>:
|
|
252
|
+
* <pre>
|
|
253
|
+
* const value: string | null = getValue("");
|
|
254
|
+
* const nonNullValue: string = getValue("") ?? throwError("value missing");
|
|
255
|
+
* </pre>
|
|
256
|
+
*
|
|
257
|
+
* @param {string} errorMessage - The error message to be thrown.
|
|
258
|
+
* @param {CommonsErrorBaseOptions} [options] - Additional options for the thrown error.
|
|
259
|
+
* @throws {Error} - The error object with the provided error message.
|
|
260
|
+
* @returns {never} - This function does not return a value.
|
|
261
|
+
* @see CommonsErrorBaseOptions
|
|
262
|
+
*/
|
|
263
|
+
export function throwError(errorMessage, options) {
|
|
264
|
+
throw new CommonsInternalError(errorMessage, options);
|
|
265
|
+
}
|
|
266
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvc3JjL2Vycm9yL2Vycm9yLWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFdkQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsaUJBQWlCLEVBQTJCLGdCQUFnQixFQUFFLG9CQUFvQixFQUFzQixNQUFNLGVBQWUsQ0FBQztBQUV0STs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxLQUFVLEVBQUUsSUFBYSxFQUFFLE9BQWE7SUFDdkUsTUFBTSxJQUFJLEdBQTRCO1FBQ2xDLElBQUk7UUFDSixPQUFPO1FBQ1AsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSTtLQUNuQyxDQUFDO0lBRUYsSUFBSSxLQUFLLFlBQVksaUJBQWlCLEVBQUUsQ0FBQztRQUNyQyxPQUFPLElBQUksZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckYsQ0FBQztTQUFNLENBQUM7UUFDSixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixPQUFPLElBQUksb0JBQW9CLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSx5QkFBeUIsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN0RixDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxLQUFVO0lBQzFDLE9BQU8sS0FBSyxZQUFZLGlCQUFpQixJQUFJLEtBQUssWUFBWSxnQkFBZ0IsSUFBSyxLQUF5QyxFQUFFLFNBQVMsWUFBWSxpQkFBaUIsQ0FB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QztRQUM1RSxJQUFJLENBQUMsSUFBSSxFQUFFLGdCQUFnQixJQUFJLEtBQUssQ0FBQyxLQUFLLFlBQVksS0FBSyxFQUFFLENBQUM7WUFDMUQsT0FBTyxDQUNILGFBQWE7Z0JBQ2IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUksS0FBSyxDQUFDLEtBQWUsQ0FBQyxPQUFPLEdBQUksS0FBSyxDQUFDLEtBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQU0sS0FBSyxDQUFDLEtBQWUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDM0osQ0FBQztRQUNOLENBQUM7SUFDTCxDQUFDO0lBQ0QsT0FBTyxFQUFFLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsTUFBTSxVQUFVLFVBQVUsQ0FBQyxZQUFvQixFQUFFLE9BQWlDO0lBQzlFLE1BQU0sSUFBSSxvQkFBb0IsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDMUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SHR0cEVycm9yUmVzcG9uc2V9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHtzdHJpbmdpZnl9IGZyb20gJy4uL2hlbHBlcnMvc3RyaW5nJztcbmltcG9ydCB7TG9nTGV2ZWxFbnVtfSBmcm9tICcuLi9sb2cvbG9nLm1vZGVsJztcbmltcG9ydCB7QUNvbW1vbnNFcnJvckJhc2UsIENvbW1vbnNFcnJvckJhc2VPcHRpb25zLCBDb21tb25zSHR0cEVycm9yLCBDb21tb25zSW50ZXJuYWxFcnJvciwgSUNvbW1vbnNBY3Rpb25FcnJvcn0gZnJvbSAnLi9lcnJvci5tb2RlbCc7XG5cbi8qKlxuICogQ29udmVydHMgUnhKUyBzdWJzY3JpcHRpb24gZXJyb3IgdG8gQ29tbW9uc0Vycm9yLlxuICogQHBhcmFtIGVycm9yIEVycm9yLlxuICogQHBhcmFtIG5hbWUgT3B0aW9uYWwgbmFtZSB0byB3cml0ZSBpbiBjb21tb25zIGVycm9yLlxuICogQHBhcmFtIGRldGFpbHMgT3B0aW9uYWwgZGV0YWlscyBvZiBlcnJvci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21TdWJzY3JpYmVFcnJvcihlcnJvcjogYW55LCBuYW1lPzogc3RyaW5nLCBkZXRhaWxzPzogYW55KTogQUNvbW1vbnNFcnJvckJhc2Uge1xuICAgIGNvbnN0IG9wdHM6IENvbW1vbnNFcnJvckJhc2VPcHRpb25zID0ge1xuICAgICAgICBuYW1lLFxuICAgICAgICBkZXRhaWxzLFxuICAgICAgICBsb2NhdGlvbjogd2luZG93Py5sb2NhdGlvbj8uaHJlZlxuICAgIH07XG5cbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgICAgICByZXR1cm4gbmV3IENvbW1vbnNIdHRwRXJyb3IoZXJyb3IubWVzc2FnZSA/PyAnSHR0cCBFcnJvciBvY2N1cnJlZCcsIGVycm9yLCBvcHRzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBvcHRzLmNhdXNlID0gZXJyb3I7XG4gICAgICAgIHJldHVybiBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoZXJyb3IubWVzc2FnZSA/PyAnSW50ZXJuYWwgRXJyb3Igb2NjdXJyZWQnLCBvcHRzKTtcbiAgICB9XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIGVycm9yIGlzIEh0dHAgZXJyb3IgKEFuZ3VsYXIgb3IgQ29tbW9ucykuXG4gKiBAcGFyYW0gZXJyb3JcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzSHR0cEVycm9yUmVzcG9uc2UoZXJyb3I6IGFueSkge1xuICAgIHJldHVybiBlcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlIHx8IGVycm9yIGluc3RhbmNlb2YgQ29tbW9uc0h0dHBFcnJvciB8fCAoZXJyb3IgYXMgSUNvbW1vbnNBY3Rpb25FcnJvciB8IHVuZGVmaW5lZCk/Lmh0dHBFcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlO1xufVxuXG4vKipcbiAqIEdldHMgSHR0cEVycm9yUmVzcG9uc2UgZnJvbSBlcnJvciAoQW5ndWxhciBvciBDb21tb25zKS5cbiAqIEBwYXJhbSBlcnJvciBFcnJvci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEh0dHBFcnJvclJlc3BvbnNlKGVycm9yOiBhbnkpOiBIdHRwRXJyb3JSZXNwb25zZSB8IG51bGwge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgIHJldHVybiBlcnJvcjtcbiAgICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgQ29tbW9uc0h0dHBFcnJvcikge1xuICAgICAgICByZXR1cm4gZXJyb3IuaHR0cEVycm9yO1xuICAgIH0gZWxzZSBpZiAoKGVycm9yIGFzIElDb21tb25zQWN0aW9uRXJyb3IgfCB1bmRlZmluZWQpPy5odHRwRXJyb3IgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgICAgICByZXR1cm4gZXJyb3IuaHR0cEVycm9yO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbn1cblxuLyoqXG4gKiBHZXRzIEh0dHBFcnJvclJlc3BvbnNlIHN0YXR1cyBmcm9tIGVycm9yIChBbmd1bGFyIG9yIENvbW1vbnMpLlxuICogQHBhcmFtIGVycm9yIEVycm9yLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0SHR0cEVycm9yUmVzcG9uc2VTdGF0dXMoZXJyb3I6IGFueSk6IG51bWJlciB8IG51bGwge1xuICAgIHJldHVybiBnZXRIdHRwRXJyb3JSZXNwb25zZShlcnJvcik/LnN0YXR1cyA/PyBudWxsO1xufVxuXG4vKipcbiAqIEdldCBlcnJvciBsb2cgbGV2ZWwuIEFsbCBpcyBlcnJvciwgZXhjZXB0IGlmIGVycm9yIGlzIGh0dHAgZXJyb3Igd2l0aCBzdGF0dXMgPj00MDAgYW5kIDw1MDAuXG4gKiBAcGFyYW0gZXJyb3IgRXJyb3IuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFcnJvckxvZ0xldmVsKGVycm9yOiBhbnkpOiBMb2dMZXZlbEVudW0ge1xuICAgIGlmIChpc0h0dHBFcnJvclJlc3BvbnNlKGVycm9yKSkge1xuICAgICAgICBjb25zdCBzdGF0dXMgPSBnZXRIdHRwRXJyb3JSZXNwb25zZVN0YXR1cyhlcnJvcik7XG4gICAgICAgIGlmIChzdGF0dXMgJiYgc3RhdHVzID49IDQwMCAmJiBzdGF0dXMgPCA1MDApIHtcbiAgICAgICAgICAgIHJldHVybiBMb2dMZXZlbEVudW0uV2FybmluZztcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gTG9nTGV2ZWxFbnVtLkVycm9yO1xufVxuXG4vKipcbiAqIEdldCBlcnJvciBuYW1lIChwcm90b3R5cGUgbmFtZSBvciB0eXBlIGZyb20gY29tbW9ucyBlcnJvciBpZiBuYW1lIGlzIG5vdCBwcm92aWRlZCkuXG4gKiBAcGFyYW0gZXJyb3IgRXJyb3IuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFcnJvck5hbWUoZXJyb3I6IGFueSk6IHN0cmluZyB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgQUNvbW1vbnNFcnJvckJhc2UpIHtcbiAgICAgICAgcmV0dXJuIGVycm9yLm5hbWUgPz8gZXJyb3IudHlwZTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZXJyb3IubmFtZTtcbiAgICB9XG59XG5cbi8qKlxuICogV3JpdGVzIGh0dHAgZXJyb3IgdG8gc3RyaW5nIHdpdGggYWxsIGhlYWRlcnMgYW5kIGJvZHkuXG4gKiBAcGFyYW0gZXJyb3IgSHR0cCByZXNwb25zZSBlcnJvci5cbiAqIEBwYXJhbSBvcHRzIE9wdGlvbnMgZm9yIGhpZGluZyBwYXJ0cyBvZiBlcnJvcjpcbiAqICAtIGhpZGVNZXNzYWdlIEhpZGVzIG1lc3NhZ2Ugb2YgZXJyb3IgKG1lc3NhZ2UgaW5jbHVkZSB1cmwsIHN0YXR1cyBhbmQgc3RhdHVzIHRleHQhKS5cbiAqICAtIGhpZGVIZWFkZXJzIEhpZGVzIGhlYWRlcnMuXG4gKiAgLSBoaWRlQm9keSBIaWRlcyBKU09OIHJlcHJlc2VudGF0aW9uIG9mIGJvZHkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBodHRwRXJyb3JSZXNwb25zZVRvU3RyaW5nKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSwgb3B0cz86IEh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmdPcHRpb25zVHlwZSk6IHN0cmluZyB7XG4gICAgbGV0IHN0ciA9IG9wdHM/LmhpZGVNZXNzYWdlID8gJycgOiBgJHtlcnJvci5tZXNzYWdlfVxcbmA7IC8vIG1lc3NhZ2Ugc2hvdWxkIGFscmVhZHkgaW5jbHVkZSB1cmwsIHN0YXR1cywgZXRjLlxuICAgIGlmICghb3B0cz8uaGlkZUhlYWRlcnMpIHtcbiAgICAgICAgc3RyICs9IGBIdHRwIFJlc3BvbnNlIEhlYWRlcnM6ICR7ZXJyb3IuaGVhZGVycy5rZXlzKCkucmVkdWNlKChhY2MsIGtleSkgPT4gYCR7YWNjfVske2tleX06ICR7ZXJyb3IuaGVhZGVycy5nZXQoa2V5KX1dYCwgJycpfWA7XG4gICAgfVxuICAgIGlmICghb3B0cz8uaGlkZUJvZHkpIHtcbiAgICAgICAgc3RyICs9IGBcXG5IdHRwIFJlc3BvbnNlIEJvZHk6ICR7c3RyaW5naWZ5KGVycm9yLmVycm9yKX1gO1xuICAgIH1cbiAgICByZXR1cm4gc3RyO1xufVxuXG4vKipcbiAqIEVycm9yIHRvIHN0cmluZy5cbiAqIEBwYXJhbSBlcnJvciBFcnJvci5cbiAqIEBwYXJhbSBvcHRzIE9wdGlvbnMgZm9yIGhpZGluZyBwYXJ0cyBvZiBlcnJvcjpcbiAqIC0gaGlkZU1lc3NhZ2UgSGlkZXMgbWVzc2FnZSBvZiBlcnJvci5cbiAqIC0gaGlkZU5hbWUgSGlkZXMgZXJyb3IgbmFtZS5cbiAqIC0gaGlkZUNhdXNlIEhpZGVzIGNhdXNlIG9mIGFuIGVycm9yIChpZiBwcmVzZW50LCBzZWUgQGxpbmsoZXJyb3JDYXVzZVRvU3RyaW5nKSBmb3Igb3RoZXIgb3B0aW9ucykuXG4gKiAtIGhpZGVTdGFjayBIaWRlcyBzdGFjayBvZiBhbiBlcnJvciAoaWYgcHJlc2VudCkuXG4gKiAtIGhpZGVEZXRhaWxzIEhpZGVzIEpTT04gZGV0YWlsJ3MgcmVwcmVzZW50YXRpb24gb2YgZXJyb3IgKGlmIHByZXNlbnQpLlxuICogLSBoaWRlTG9jYXRpb24gSGlkZXMgbG9jYXRpb24gKFVSTCkgd2hlcmUgZXJyb3Igd2FzIHRocm93bi5cbiAqIC0gaGlkZUh0dHAgSGlkZXMgaHR0cCBlcnJvciBwb3J0aW9uIG9mIGVycm9yIGlmIGh0dHAgZXJyb3IgcmVzcG9uc2UgKHNlZSBAbGluayhodHRwRXJyb3JSZXNwb25zZVRvU3RyaW5nKSBmb3Igb3RoZXIgb3B0aW9ucykuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlcnJvclRvU3RyaW5nKGVycm9yOiBFcnJvciwgb3B0cz86IEVycm9yVG9TdHJpbmdPcHRpb25zVHlwZSk6IHN0cmluZyB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgQUNvbW1vbnNFcnJvckJhc2UpIHtcbiAgICAgICAgcmV0dXJuIGNvbW1vbnNFcnJvclRvU3RyaW5nKGVycm9yLCBvcHRzKTtcbiAgICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UpIHtcbiAgICAgICAgcmV0dXJuIGh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmcoZXJyb3IsIG9wdHMpO1xuICAgIH1cblxuICAgIGNvbnN0IHN0ckJsb2Nrczogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAoIW9wdHM/LmhpZGVNZXNzYWdlKSB7XG4gICAgICAgIHN0ckJsb2Nrcy5wdXNoKGVycm9yLm1lc3NhZ2UpO1xuICAgIH1cbiAgICBpZiAoZXJyb3IubmFtZSkge1xuICAgICAgICBzdHJCbG9ja3MucHVzaChgRXJyb3IgbmFtZTogJHtlcnJvci5uYW1lfWApO1xuICAgIH1cbiAgICBpZiAoIW9wdHM/LmhpZGVDYXVzZSkge1xuICAgICAgICBzdHJCbG9ja3MucHVzaChlcnJvckNhdXNlVG9TdHJpbmcoZXJyb3IsIG9wdHMpKTtcbiAgICB9XG4gICAgaWYgKCFvcHRzPy5oaWRlU3RhY2sgJiYgZXJyb3Iuc3RhY2spIHtcbiAgICAgICAgc3RyQmxvY2tzLnB1c2goYFN0YWNrIHRyYWNlOlxcbiR7ZXJyb3Iuc3RhY2t9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0ckJsb2Nrcy5maWx0ZXIocyA9PiBzLnRyaW0oKS5sZW5ndGggPiAwKS5qb2luKCdcXG4nKTtcbn1cblxuLyoqXG4gKiBDb21tb25zIGVycm9yIHRvIHN0cmluZy5cbiAqIEBwYXJhbSBlcnJvciBDb21tb25zIGVycm9yLlxuICogQHBhcmFtIG9wdHMgT3B0aW9ucyBmb3IgaGlkaW5nIHBhcnRzIG9mIGVycm9yOlxuICogLSBoaWRlTWVzc2FnZSBIaWRlcyBtZXNzYWdlIG9mIGVycm9yLlxuICogLSBoaWRlTmFtZSBIaWRlcyBlcnJvciBuYW1lLlxuICogLSBoaWRlQ2F1c2UgSGlkZXMgY2F1c2Ugb2YgYW4gZXJyb3IgKGlmIHByZXNlbnQsIHNlZSBAbGluayhlcnJvckNhdXNlVG9TdHJpbmcpIGZvciBvdGhlciBvcHRpb25zKS5cbiAqIC0gaGlkZVN0YWNrIEhpZGVzIHN0YWNrIG9mIGFuIGVycm9yIChpZiBwcmVzZW50KS5cbiAqIC0gaGlkZURldGFpbHMgSGlkZXMgSlNPTiBkZXRhaWwncyByZXByZXNlbnRhdGlvbiBvZiBlcnJvciAoaWYgcHJlc2VudCkuXG4gKiAtIGhpZGVMb2NhdGlvbiBIaWRlcyBsb2NhdGlvbiAoVVJMKSB3aGVyZSBlcnJvciB3YXMgdGhyb3duLlxuICogLSBoaWRlSHR0cCBIaWRlcyBodHRwIGVycm9yIHBvcnRpb24gb2YgZXJyb3IgaWYgaHR0cCBlcnJvciByZXNwb25zZSAoc2VlIEBsaW5rKGh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmcpIGZvciBvdGhlciBvcHRpb25zKS5cbiAqIC0gaGlkZUl0ZW1zIEhpZGVzIGFsbCBpdGVtIGluZm9ybWF0aW9uIChodHRwIGJvZHksIGFjdGlvbiBjb250ZXh0IGRhdGEpLlxuICogLSBoaWRlQWN0aW9uRGF0YSBTZWUgQGxpbmsoY29tbW9uc0FjdGlvbkVycm9yQ29udGV4dFRvU3RyaW5nKSBmb3IgYWRkaXRpb25hbCBpbmZvLlxuICogLSBoaWRlUXVlcnlQYXJhbXMgU2VlIEBsaW5rKGNvbW1vbnNBY3Rpb25FcnJvckNvbnRleHRUb1N0cmluZykgZm9yIGFkZGl0aW9uYWwgaW5mby5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbW1vbnNFcnJvclRvU3RyaW5nKGVycm9yOiBBQ29tbW9uc0Vycm9yQmFzZSwgb3B0cz86IEVycm9yVG9TdHJpbmdPcHRpb25zVHlwZSk6IHN0cmluZyB7XG4gICAgY29uc3Qgc3RyQmxvY2tzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmICghb3B0cz8uaGlkZU1lc3NhZ2UpIHtcbiAgICAgICAgc3RyQmxvY2tzLnB1c2goYCR7ZXJyb3IubWVzc2FnZX0ke2Vycm9yLm1lc3NhZ2VDb2RlID8gYCAoY29kZTogJHtlcnJvci5tZXNzYWdlQ29kZX0pYCA6ICcnfWApO1xuICAgIH1cbiAgICBpZiAoIW9wdHM/LmhpZGVOYW1lKSB7XG4gICAgICAgIHN0ckJsb2Nrcy5wdXNoKGBFcnJvciBuYW1lOiAke2Vycm9yLm5hbWUgPz8gZXJyb3IudHlwZX0gJHtlcnJvci5uYW1lID8gYCgke2Vycm9yLnR5cGV9KWAgOiAnJ31gKTtcbiAgICB9XG4gICAgaWYgKCFvcHRzPy5oaWRlTG9jYXRpb24gJiYgZXJyb3IubG9jYXRpb24pIHtcbiAgICAgICAgc3RyQmxvY2tzLnB1c2goYExvY2F0aW9uOiAke2Vycm9yLmxvY2F0aW9ufWApO1xuICAgIH1cblxuICAgIGxldCBpc0h0dHAgPSBmYWxzZTtcbiAgICBpZiAoIW9wdHM/LmhpZGVIdHRwICYmIGVycm9yIGluc3RhbmNlb2YgQ29tbW9uc0h0dHBFcnJvcikge1xuICAgICAgICBzdHJCbG9ja3MucHVzaChcbiAgICAgICAgICAgIGh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmcoZXJyb3IuaHR0cEVycm9yLCB7XG4gICAgICAgICAgICAgICAgaGlkZUJvZHk6IG9wdHM/LmhpZGVJdGVtcyB8fCBvcHRzPy5oaWRlQm9keSxcbiAgICAgICAgICAgICAgICBoaWRlSGVhZGVyczogb3B0cz8uaGlkZUhlYWRlcnMsXG4gICAgICAgICAgICAgICAgaGlkZU1lc3NhZ2U6IGVycm9yLm1lc3NhZ2UuaW5kZXhPZihlcnJvci5odHRwRXJyb3IubWVzc2FnZSkgPj0gMFxuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgaXNIdHRwID0gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKGVycm9yLnR5cGUgPT09ICdDb21tb25zQWN0aW9uRXJyb3InKSB7XG4gICAgICAgIGNvbnN0IGFjdGlvbkVycm9yID0gZXJyb3IgYXMgdW5rbm93biBhcyBJQ29tbW9uc0FjdGlvbkVycm9yO1xuICAgICAgICBpZiAoYWN0aW9uRXJyb3IuYWN0aW9uQ29udGV4dCkge1xuICAgICAgICAgICAgc3RyQmxvY2tzLnB1c2goY29tbW9uc0FjdGlvbkVycm9yQ29udGV4dFRvU3RyaW5nKGFjdGlvbkVycm9yLCBvcHRzKSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFvcHRzPy5oaWRlSHR0cCAmJiBhY3Rpb25FcnJvci5odHRwRXJyb3IgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgICAgICAgICAgc3RyQmxvY2tzLnB1c2goXG4gICAgICAgICAgICAgICAgaHR0cEVycm9yUmVzcG9uc2VUb1N0cmluZyhhY3Rpb25FcnJvci5odHRwRXJyb3IsIHtcbiAgICAgICAgICAgICAgICAgICAgaGlkZUJvZHk6IG9wdHM/LmhpZGVJdGVtcyB8fCBvcHRzPy5oaWRlQm9keSxcbiAgICAgICAgICAgICAgICAgICAgaGlkZUhlYWRlcnM6IG9wdHM/LmhpZGVIZWFkZXJzLFxuICAgICAgICAgICAgICAgICAgICBoaWRlTWVzc2FnZTogZXJyb3IubWVzc2FnZS5pbmRleE9mKGFjdGlvbkVycm9yLmh0dHBFcnJvci5tZXNzYWdlKSA+PSAwXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpc0h0dHAgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFvcHRzPy5oaWRlRGV0YWlscyAmJiBlcnJvci5kZXRhaWxzKSB7XG4gICAgICAgIHN0ckJsb2Nrcy5wdXNoKGBEZXRhaWxzOiAke3N0cmluZ2lmeShlcnJvci5kZXRhaWxzKX1gKTtcbiAgICB9XG4gICAgaWYgKCFvcHRzPy5oaWRlQ2F1c2UgJiYgKCFpc0h0dHAgfHwgIShlcnJvci5jYXVzZSBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSkpIHtcbiAgICAgICAgc3RyQmxvY2tzLnB1c2goZXJyb3JDYXVzZVRvU3RyaW5nKGVycm9yLCBvcHRzKSk7XG4gICAgfVxuICAgIGlmICghb3B0cz8uaGlkZVN0YWNrICYmIGVycm9yLnN0YWNrKSB7XG4gICAgICAgIHN0ckJsb2Nrcy5wdXNoKGBTdGFjayB0cmFjZTpcXG4ke2Vycm9yLnN0YWNrfWApO1xuICAgIH1cblxuICAgIHJldHVybiBzdHJCbG9ja3MuZmlsdGVyKHMgPT4gcy50cmltKCkubGVuZ3RoID4gMCkuam9pbignXFxuJyk7XG59XG5cbi8qKlxuICogV3JpdGVzIGNvbW1vbnMgYWN0aW9uIGVycm9yIGluZm8gZnJvbSBjb250ZXh0IGFzIHN0cmluZy5cbiAqIEBwYXJhbSBlcnJvciBDb21tb25zIGFjdGlvbiBlcnJvci5cbiAqIEBwYXJhbSBvcHRzIE9wdGlvbnMgZm9yIGhpZGluZyBwYXJ0cyBvZiBlcnJvcjpcbiAqIC0gaGlkZUl0ZW1zIEhpZGVzIGFsbCBpdGVtIHJlbGF0ZWQgaW5mb3JtYXRpb24gKGl0ZW0sIGZvcm0gaXRlbSwgc3VibWl0IGl0ZW0sIC4uLikuXG4gKiAtIGhpZGVBY3Rpb25EYXRhIEhpZGVzIGFjdGlvbiBkYXRhLlxuICogLSBoaWRlUXVlcnlQYXJhbXMgSGlkZXMgcXVlcnkgcGFyYW1zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29tbW9uc0FjdGlvbkVycm9yQ29udGV4dFRvU3RyaW5nKGVycm9yOiBJQ29tbW9uc0FjdGlvbkVycm9yLCBvcHRzPzogQWN0aW9uRXJyb3JDb250ZXh0VG9TdHJpbmdPcHRpb25zVHlwZSk6IHN0cmluZyB7XG4gICAgbGV0IHBhcmFtc01lc3NhZ2UgPSAnJztcbiAgICBpZiAoZXJyb3IuYWN0aW9uQ29udGV4dD8ucGFyYW1ldGVycykge1xuICAgICAgICBpZiAoZXJyb3IuYWN0aW9uQ29udGV4dD8ucGFyYW1ldGVycy5pdGVtSWQpIHtcbiAgICAgICAgICAgIHBhcmFtc01lc3NhZ2UgKz0gYFtpdGVtSWQ6ICR7ZXJyb3IuYWN0aW9uQ29udGV4dC5wYXJhbWV0ZXJzLml0ZW1JZH1dYDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW9wdHM/LmhpZGVJdGVtcyAmJiBlcnJvci5hY3Rpb25Db250ZXh0Py5wYXJhbWV0ZXJzLml0ZW0pIHtcbiAgICAgICAgICAgIHBhcmFtc01lc3NhZ2UgKz0gYFtpdGVtOiAke3N0cmluZ2lmeShlcnJvci5hY3Rpb25Db250ZXh0LnBhcmFtZXRlcnMuaXRlbSl9XWA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFvcHRzPy5oaWRlQWN0aW9uRGF0YSAmJiBlcnJvci5hY3Rpb25Db250ZXh0Py5wYXJhbWV0ZXJzLmFjdGlvbkRhdGEpIHtcbiAgICAgICAgICAgIHBhcmFtc01lc3NhZ2UgKz0gT2JqZWN0LmVudHJpZXMoZXJyb3IuYWN0aW9uQ29udGV4dD8ucGFyYW1ldGVycy5hY3Rpb25EYXRhKS5yZWR1Y2UoKGFjYywgW2tleSwgdmFsdWVdKSA9PiBgJHthY2N9W2FjdGlvbkRhdGEgJHtrZXl9OiAke3N0cmluZ2lmeSh2YWx1ZSl9XWAsICcnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW9wdHM/LmhpZGVRdWVyeVBhcmFtcyAmJiBlcnJvci5hY3Rpb25Db250ZXh0Py5wYXJhbWV0ZXJzLmRhdGFMaXN0UGFyYW1zKSB7XG4gICAgICAgICAgICBwYXJhbXNNZXNzYWdlICs9IGBbZGF0YUxpc3RQYXJhbXM6ICR7c3RyaW5naWZ5KGVycm9yLmFjdGlvbkNvbnRleHQucGFyYW1ldGVycy5kYXRhTGlzdFBhcmFtcyl9XWA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFvcHRzPy5oaWRlSXRlbXMgJiYgZXJyb3IuYWN0aW9uQ29udGV4dD8ucGFyYW1ldGVycy5mb3JtSXRlbSkge1xuICAgICAgICAgICAgcGFyYW1zTWVzc2FnZSArPSBgW2Zvcm1JdGVtOiAke3N0cmluZ2lmeShlcnJvci5hY3Rpb25Db250ZXh0LnBhcmFtZXRlcnMuZm9ybUl0ZW0pfV1gO1xuICAgICAgICB9XG4gICAgICAgIGlmICghb3B0cz8uaGlkZUl0ZW1zICYmIGVycm9yLmFjdGlvbkNvbnRleHQ/LnBhcmFtZXRlcnMuc3VibWl0UmVzdWx0KSB7XG4gICAgICAgICAgICBwYXJhbXNNZXNzYWdlICs9IGBbZm9ybUl0ZW06ICR7c3RyaW5naWZ5KGVycm9yLmFjdGlvbkNvbnRleHQucGFyYW1ldGVycy5zdWJtaXRSZXN1bHQpfV1gO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlcnJvci5hY3Rpb25Db250ZXh0Py5wYXJhbWV0ZXJzLmxvY2FsZSkge1xuICAgICAgICAgICAgcGFyYW1zTWVzc2FnZSArPSBgW2xvY2FsZTogJHtzdHJpbmdpZnkoZXJyb3IuYWN0aW9uQ29udGV4dC5wYXJhbWV0ZXJzLmxvY2FsZSl9XWA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcGFyYW1zTWVzc2FnZTtcbn1cblxuLyoqXG4gKiBXcml0ZXMgY2F1c2Ugb2YgYW4gZXJyb3IgYXMgc3RyaW5nLlxuICogQHBhcmFtIGVycm9yIEVycm9yLlxuICogQHBhcmFtIG9wdHMgT3B0aW9ucyBmb3IgaGlkaW5nIHBhcnRzIG9mIGVycm9yOlxuICogLSBjYXVzZU9uRXJyb3JPbmx5IFByaW50cyBvbmx5IGlmIGNhdXNlIGlzIGluc3RhbmNlIG9mIGVycm9yLlxuICogLSBjYXVzZUFzSnNvbiBQcmludCBlcnJvciBjYXVzZSBhcyBhIEpTT04gKGJ5IGRlZmF1bHQsIGlmIGVycm9yIG9ubHkgbWVzc2FnZSBhbmQgbmFtZSB3aWxsIGJlIHByaW50ZWQpLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXJyb3JDYXVzZVRvU3RyaW5nKGVycm9yOiBFcnJvciwgb3B0cz86IEVycm9yQ2F1c2VUb1N0cmluZ09wdGlvbnNUeXBlKTogc3RyaW5nIHtcbiAgICAvLyBpZiBhbHJlYWR5IGxvZ2dlZCBhcyBodHRwIGVycm9yLCBjaGVjayB0aGF0IGNhdXNlIGlzIG5vdCBhbHNvIGh0dHAgZXJyb3IgKGNhdXNlIGl0IGlzIHVzdWFsbHkgZHVwbGljYXRlZClcbiAgICBpZiAoZXJyb3IuY2F1c2UgJiYgKCFvcHRzPy5jYXVzZU9uRXJyb3JPbmx5IHx8IGVycm9yLmNhdXNlIGluc3RhbmNlb2YgRXJyb3IpKSB7XG4gICAgICAgIGNvbnN0IG5lZWRzU3RyaW5naWZ5ID0gb3B0cz8uY2F1c2VBc0pzb24gfHwgIShlcnJvci5jYXVzZSBpbnN0YW5jZW9mIEVycm9yKTtcbiAgICAgICAgaWYgKCFvcHRzPy5jYXVzZU9uRXJyb3JPbmx5IHx8IGVycm9yLmNhdXNlIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgJ0NhdXNlZCBieTogJyArXG4gICAgICAgICAgICAgICAgKG5lZWRzU3RyaW5naWZ5ID8gc3RyaW5naWZ5KGVycm9yLmNhdXNlKSA6IGAkeyhlcnJvci5jYXVzZSBhcyBFcnJvcikubWVzc2FnZX0keyhlcnJvci5jYXVzZSBhcyBFcnJvcikubmFtZSA/IGAgKCR7KGVycm9yLmNhdXNlIGFzIEVycm9yKS5uYW1lfSlgIDogJyd9YClcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuICcnO1xufVxuXG4vKipcbiAqIFRocm93cyBhbiBlcnJvciB3aXRoIHRoZSBwcm92aWRlZCBlcnJvciBtZXNzYWdlLlxuICogVGhlIGludGVuZGVkIHVzYWdlIGlzIGZvciBpbi1saW5lIHRocm93aW5nIG9mIGFuIGVycm9yIHdpdGggVFMgdHlwZSBuYXJyb3dpbmcuXG4gKiA8YnI+XG4gKiA8aT5FeGFtcGxlPC9pPjpcbiAqIDxwcmU+XG4gKiAgIGNvbnN0IHZhbHVlOiBzdHJpbmcgfCBudWxsID0gZ2V0VmFsdWUoXCJcIik7XG4gKiAgIGNvbnN0IG5vbk51bGxWYWx1ZTogc3RyaW5nID0gZ2V0VmFsdWUoXCJcIikgPz8gdGhyb3dFcnJvcihcInZhbHVlIG1pc3NpbmdcIik7XG4gKiA8L3ByZT5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gZXJyb3JNZXNzYWdlIC0gVGhlIGVycm9yIG1lc3NhZ2UgdG8gYmUgdGhyb3duLlxuICogQHBhcmFtIHtDb21tb25zRXJyb3JCYXNlT3B0aW9uc30gW29wdGlvbnNdIC0gQWRkaXRpb25hbCBvcHRpb25zIGZvciB0aGUgdGhyb3duIGVycm9yLlxuICogQHRocm93cyB7RXJyb3J9IC0gVGhlIGVycm9yIG9iamVjdCB3aXRoIHRoZSBwcm92aWRlZCBlcnJvciBtZXNzYWdlLlxuICogQHJldHVybnMge25ldmVyfSAtIFRoaXMgZnVuY3Rpb24gZG9lcyBub3QgcmV0dXJuIGEgdmFsdWUuXG4gKiBAc2VlIENvbW1vbnNFcnJvckJhc2VPcHRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0aHJvd0Vycm9yKGVycm9yTWVzc2FnZTogc3RyaW5nLCBvcHRpb25zPzogQ29tbW9uc0Vycm9yQmFzZU9wdGlvbnMpOiBuZXZlciB7XG4gICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGVycm9yTWVzc2FnZSwgb3B0aW9ucyk7XG59XG5cbmV4cG9ydCB0eXBlIEVycm9yVG9TdHJpbmdPcHRpb25zVHlwZSA9IEVycm9yVG9TdHJpbmdPcHRpb25zQmFzZVR5cGUgJlxuICAgIEh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmdPcHRpb25zVHlwZSAmXG4gICAgQWN0aW9uRXJyb3JDb250ZXh0VG9TdHJpbmdPcHRpb25zVHlwZSAmXG4gICAgRXJyb3JDYXVzZVRvU3RyaW5nT3B0aW9uc1R5cGUgJiB7XG4gICAgICAgIGhpZGVEZXRhaWxzPzogYm9vbGVhbjtcbiAgICAgICAgaGlkZUxvY2F0aW9uPzogYm9vbGVhbjtcbiAgICB9O1xuXG5leHBvcnQgaW50ZXJmYWNlIEVycm9yVG9TdHJpbmdPcHRpb25zQmFzZVR5cGUge1xuICAgIGhpZGVOYW1lPzogYm9vbGVhbjtcbiAgICBoaWRlU3RhY2s/OiBib29sZWFuO1xuICAgIGhpZGVDYXVzZT86IGJvb2xlYW47XG4gICAgaGlkZUh0dHA/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBFcnJvclJlc3BvbnNlVG9TdHJpbmdPcHRpb25zVHlwZSB7XG4gICAgaGlkZU1lc3NhZ2U/OiBib29sZWFuO1xuICAgIGhpZGVIZWFkZXJzPzogYm9vbGVhbjtcbiAgICBoaWRlQm9keT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uRXJyb3JDb250ZXh0VG9TdHJpbmdPcHRpb25zVHlwZSB7XG4gICAgaGlkZUl0ZW1zPzogYm9vbGVhbjtcbiAgICBoaWRlQWN0aW9uRGF0YT86IGJvb2xlYW47XG4gICAgaGlkZVF1ZXJ5UGFyYW1zPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFcnJvckNhdXNlVG9TdHJpbmdPcHRpb25zVHlwZSB7XG4gICAgY2F1c2VPbkVycm9yT25seT86IGJvb2xlYW47XG4gICAgY2F1c2VBc0pzb24/OiBib29sZWFuO1xufVxuIl19
|
|
@@ -4,6 +4,9 @@ import { CommonsInternalError } from '../error/error.model';
|
|
|
4
4
|
export function boolean$Attribute(value) {
|
|
5
5
|
return isObservable(value) ? value : of(booleanAttribute(value));
|
|
6
6
|
}
|
|
7
|
+
export function booleanOrUndefinedAttribute(value) {
|
|
8
|
+
return typeof value === 'boolean' ? value : value == null ? undefined : value !== 'false';
|
|
9
|
+
}
|
|
7
10
|
export function number$Attribute(value) {
|
|
8
11
|
return isObservable(value) ? value : of(numberAttribute(value));
|
|
9
12
|
}
|
|
@@ -49,4 +52,4 @@ export const valueToDefined = (value) => {
|
|
|
49
52
|
return value;
|
|
50
53
|
}
|
|
51
54
|
};
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb3JlL3NyYy9oZWxwZXJzL2NvZXJjaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUFhLFlBQVksRUFBRSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFbEQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFHMUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEtBQWM7SUFDNUMsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFFLEtBQTZCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQzlGLENBQUM7QUFFRCxNQUFNLFVBQVUsMkJBQTJCLENBQUMsS0FBYztJQUN0RCxPQUFPLE9BQU8sS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxPQUFPLENBQUM7QUFDOUYsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxLQUFjO0lBQzNDLE9BQU8sWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBRSxLQUE0QixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDNUYsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFJLEtBQXdCLEVBQWlCLEVBQUU7SUFDdkUsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFFLEtBQXVCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN0RSxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxLQUFjLEVBQVUsRUFBRTtJQUNyRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzVCLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7U0FBTSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ25DLE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNkLE9BQU8sR0FBRyxDQUFDO1FBQ2YsQ0FBQztRQUNELE1BQU0sSUFBSSxvQkFBb0IsQ0FBQywrREFBK0QsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUMzRyxDQUFDO1NBQU0sQ0FBQztRQUNKLE1BQU0sSUFBSSxvQkFBb0IsQ0FBQywyQkFBMkIsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBYyxFQUFVLEVBQUU7SUFDckQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM1QixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO1NBQU0sQ0FBQztRQUNKLE1BQU0sSUFBSSxvQkFBb0IsQ0FBQywyQkFBMkIsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQUMsS0FBYyxFQUFVLEVBQUU7SUFDdEQsSUFBSSxPQUFPLEtBQUssS0FBSyxXQUFXLEVBQUUsQ0FBQztRQUMvQixNQUFNLElBQUksb0JBQW9CLENBQUMsMEJBQTBCLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUksS0FBa0IsRUFBSyxFQUFFO0lBQ3ZELElBQUksT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUNqRCxNQUFNLElBQUksb0JBQW9CLENBQUMsaUNBQWlDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDN0UsQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0FBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtib29sZWFuQXR0cmlidXRlLCBudW1iZXJBdHRyaWJ1dGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge09ic2VydmFibGUsIGlzT2JzZXJ2YWJsZSwgb2Z9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0NvbW1vbnNJbnRlcm5hbEVycm9yfSBmcm9tICcuLi9lcnJvci9lcnJvci5tb2RlbCc7XG5pbXBvcnQge0lkVHlwZSwgTnVsbGFibGV9IGZyb20gJy4vdHlwZS1oZWxwZXJzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGJvb2xlYW4kQXR0cmlidXRlKHZhbHVlOiB1bmtub3duKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGlzT2JzZXJ2YWJsZSh2YWx1ZSkgPyAodmFsdWUgYXMgT2JzZXJ2YWJsZTxib29sZWFuPikgOiBvZihib29sZWFuQXR0cmlidXRlKHZhbHVlKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBib29sZWFuT3JVbmRlZmluZWRBdHRyaWJ1dGUodmFsdWU6IHVua25vd24pOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicgPyB2YWx1ZSA6IHZhbHVlID09IG51bGwgPyB1bmRlZmluZWQgOiB2YWx1ZSAhPT0gJ2ZhbHNlJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlciRBdHRyaWJ1dGUodmFsdWU6IHVua25vd24pOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiBpc09ic2VydmFibGUodmFsdWUpID8gKHZhbHVlIGFzIE9ic2VydmFibGU8bnVtYmVyPikgOiBvZihudW1iZXJBdHRyaWJ1dGUodmFsdWUpKTtcbn1cblxuZXhwb3J0IGNvbnN0IHRvT2JzZXJ2YWJsZSA9IDxUPih2YWx1ZTogVCB8IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+ID0+IHtcbiAgICByZXR1cm4gaXNPYnNlcnZhYmxlKHZhbHVlKSA/ICh2YWx1ZSBhcyBPYnNlcnZhYmxlPFQ+KSA6IG9mKHZhbHVlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBpdGVtSWRUb051bWJlciA9ICh2YWx1ZT86IElkVHlwZSk6IG51bWJlciA9PiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb25zdCBudW0gPSArdmFsdWU7XG4gICAgICAgIGlmICghaXNOYU4obnVtKSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bTtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYEl0ZW1JZCBpcyBhIHN0cmluZywgYnV0IGNvdWxkIG5vdCBiZSB0cmFuc2Zvcm1lZCB0byBudW1iZXI6ICR7dmFsdWV9YCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGBJdGVtSWQgaXMgbm90IGEgbnVtYmVyOiAke3ZhbHVlfWApO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBpdGVtSWRUb1N0cmluZyA9ICh2YWx1ZT86IElkVHlwZSk6IHN0cmluZyA9PiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcihgSXRlbUlkIGlzIG5vdCBhIHN0cmluZzogJHt2YWx1ZX1gKTtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgaXRlbUlkVG9EZWZpbmVkID0gKHZhbHVlPzogSWRUeXBlKTogSWRUeXBlID0+IHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYEl0ZW1JZCBpcyBub3QgZGVmaW5lZDogJHt2YWx1ZX1gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHZhbHVlVG9EZWZpbmVkID0gPFQ+KHZhbHVlOiBOdWxsYWJsZTxUPik6IFQgPT4ge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcihgVmFsdWUgaXMgbnVsbCBvciBub3QgZGVmaW5lZDogJHt2YWx1ZX1gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxufTtcbiJdfQ==
|