@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.
Files changed (145) hide show
  1. package/README.md +7 -6
  2. package/core/descriptors/model.descriptor.d.ts +1 -1
  3. package/core/error/error-helpers.d.ts +18 -1
  4. package/core/helpers/coercion.d.ts +1 -0
  5. package/core/i18n/i18n-type.d.ts +0 -9
  6. package/core/index.d.ts +0 -1
  7. package/core/services/commons-configuration.service.d.ts +12 -0
  8. package/esm2022/core/components/notification/notification-wrapper.component.mjs +5 -6
  9. package/esm2022/core/components/pages/error/error.page.component.mjs +4 -4
  10. package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +4 -4
  11. package/esm2022/core/descriptors/model.descriptor.mjs +1 -1
  12. package/esm2022/core/directives/component.directive.mjs +3 -3
  13. package/esm2022/core/directives/template.directive.mjs +3 -3
  14. package/esm2022/core/error/error-helpers.mjs +20 -1
  15. package/esm2022/core/helpers/coercion.mjs +4 -1
  16. package/esm2022/core/i18n/i18n-type.mjs +1 -34
  17. package/esm2022/core/index.mjs +1 -2
  18. package/esm2022/core/pipes/boolean.pipe.mjs +3 -3
  19. package/esm2022/core/pipes/class-map.pipe.mjs +3 -3
  20. package/esm2022/core/pipes/enum.pipe.mjs +5 -5
  21. package/esm2022/core/pipes/enumerate-async.pipe.mjs +3 -3
  22. package/esm2022/core/pipes/enumerate.pipe.mjs +3 -3
  23. package/esm2022/core/pipes/getter.pipe.mjs +3 -3
  24. package/esm2022/core/pipes/i18n-property.pipe.mjs +3 -3
  25. package/esm2022/core/pipes/json-path.pipe.mjs +3 -3
  26. package/esm2022/core/pipes/parametrize.pipe.mjs +3 -3
  27. package/esm2022/core/pipes/template.pipe.mjs +3 -3
  28. package/esm2022/core/security/permission.service.mjs +3 -3
  29. package/esm2022/core/services/commons-configuration.service.mjs +16 -1
  30. package/esm2022/core/services/commons-init.service.mjs +3 -3
  31. package/esm2022/core/services/commons-router.service.mjs +3 -3
  32. package/esm2022/core/services/commons.service.mjs +3 -3
  33. package/esm2022/core/services/local-storage-config.service.mjs +3 -3
  34. package/esm2022/form/components/autocomplete/autocomplete.component.mjs +4 -4
  35. package/esm2022/form/components/date-range/date-range.component.mjs +4 -4
  36. package/esm2022/form/components/dropdown/dropdown.component.mjs +4 -4
  37. package/esm2022/form/directives/input-trim.directive.mjs +14 -19
  38. package/esm2022/model/descriptors/model.descriptor.mjs +1 -1
  39. package/esm2022/model/helpers/i18n.mjs +7 -10
  40. package/esm2022/table/api/descriptors/table.descriptor.mjs +2 -2
  41. package/esm2022/table/api/models/table.model.mjs +1 -1
  42. package/esm2022/table/components/column-filter-full/column-filter-full.component.mjs +4 -4
  43. package/esm2022/table/components/column-value/column-value.component.mjs +43 -53
  44. package/esm2022/table/components/table/table.component.mjs +300 -365
  45. package/esm2022/table/pipes/locale-default-row-class.pipe.mjs +3 -3
  46. package/esm2022/table/pipes/table-column-filter-class.pipe.mjs +3 -3
  47. package/esm2022/table/services/data-list.service.mjs +3 -3
  48. package/esm2022/tableview/action/components/action/action.component.mjs +5 -5
  49. package/esm2022/tableview/action/components/editor/action-editor.component.mjs +6 -7
  50. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +5 -4
  51. package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +3 -3
  52. package/esm2022/tableview/action/components/route/action-route.component.mjs +3 -3
  53. package/esm2022/tableview/action/components/table/action-table.component.mjs +43 -92
  54. package/esm2022/tableview/action/services/component-action-executor.service.mjs +3 -3
  55. package/esm2022/tableview/action/services/data-provider-executor.service.mjs +3 -3
  56. package/esm2022/tableview/action/services/navigation.service.mjs +3 -3
  57. package/esm2022/tableview/action/services/root-action-executor.service.mjs +3 -3
  58. package/esm2022/tableview/action/services/view-container.service.mjs +3 -3
  59. package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +1 -1
  60. package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +1 -1
  61. package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +4 -1
  62. package/esm2022/tableview/api/editor/descriptors/field.descriptor.mjs +6 -14
  63. package/esm2022/tableview/api/editor/models/field-action-context.model.mjs +1 -1
  64. package/esm2022/tableview/api/editor/models/form-editor.interface.mjs +1 -1
  65. package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +5 -5
  66. package/esm2022/tableview/api/editor/models/formly-field.model.mjs +1 -1
  67. package/esm2022/tableview/api/editor/models/formly-options.model.mjs +2 -0
  68. package/esm2022/tableview/api/index.mjs +2 -2
  69. package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +25 -20
  70. package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +7 -8
  71. package/esm2022/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +10 -12
  72. package/esm2022/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.mjs +7 -7
  73. package/esm2022/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.mjs +51 -10
  74. package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +10 -11
  75. package/esm2022/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +8 -8
  76. package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +8 -7
  77. package/esm2022/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.mjs +7 -8
  78. package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +19 -33
  79. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +16 -18
  80. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +21 -26
  81. package/esm2022/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +7 -6
  82. package/esm2022/tableview/editor/components/formly/fields/formly-field-type.abstract.component.mjs +23 -0
  83. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +3 -3
  84. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +3 -3
  85. package/esm2022/tableview/editor/helpers/editor-formly.mjs +14 -2
  86. package/esm2022/tableview/editor/helpers/editor-validators.mjs +25 -0
  87. package/esm2022/tableview/editor/helpers/formly-config.mjs +7 -5
  88. package/esm2022/tableview/editor/services/form-editor.service.mjs +3 -3
  89. package/esm2022/tableview/index.mjs +2 -1
  90. package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +3 -3
  91. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +4 -4
  92. package/fesm2022/mediusinc-mng-commons-core.mjs +164 -205
  93. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
  94. package/fesm2022/mediusinc-mng-commons-form.mjs +23 -27
  95. package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
  96. package/fesm2022/mediusinc-mng-commons-model.mjs +7 -10
  97. package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
  98. package/fesm2022/mediusinc-mng-commons-table-api.mjs +1 -1
  99. package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
  100. package/fesm2022/mediusinc-mng-commons-table.mjs +357 -431
  101. package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
  102. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +13 -39
  103. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
  104. package/fesm2022/mediusinc-mng-commons-tableview.mjs +305 -280
  105. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
  106. package/form/directives/input-trim.directive.d.ts +5 -8
  107. package/model/descriptors/model.descriptor.d.ts +3 -3
  108. package/model/helpers/i18n.d.ts +1 -3
  109. package/package.json +15 -15
  110. package/table/api/models/table.model.d.ts +1 -1
  111. package/table/components/column-value/column-value.component.d.ts +11 -17
  112. package/table/components/table/table.component.d.ts +43 -47
  113. package/tableview/action/components/editor/action-editor.component.d.ts +1 -2
  114. package/tableview/action/components/table/action-table.component.d.ts +26 -29
  115. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +3 -3
  116. package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +3 -3
  117. package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +2 -1
  118. package/tableview/api/editor/descriptors/field.descriptor.d.ts +13 -9
  119. package/tableview/api/editor/models/field-action-context.model.d.ts +4 -4
  120. package/tableview/api/editor/models/form-editor.interface.d.ts +24 -14
  121. package/tableview/api/editor/models/formly-custom-field.model.d.ts +22 -19
  122. package/tableview/api/editor/models/formly-field.model.d.ts +20 -0
  123. package/tableview/api/editor/models/formly-options.model.d.ts +15 -0
  124. package/tableview/api/index.d.ts +1 -1
  125. package/tableview/editor/components/editor/form-editor.component.d.ts +9 -17
  126. package/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.d.ts +3 -4
  127. package/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +3 -7
  128. package/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.d.ts +3 -4
  129. package/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.d.ts +6 -4
  130. package/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +3 -6
  131. package/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +3 -4
  132. package/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.d.ts +4 -6
  133. package/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.d.ts +5 -6
  134. package/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +6 -10
  135. package/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +4 -7
  136. package/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +7 -12
  137. package/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +2 -3
  138. package/tableview/editor/components/formly/fields/formly-field-type.abstract.component.d.ts +12 -0
  139. package/tableview/editor/helpers/editor-validators.d.ts +7 -0
  140. package/tableview/index.d.ts +1 -0
  141. package/version-info.json +5 -5
  142. package/core/directives/dialog-keydown-handler.directive.d.ts +0 -12
  143. package/esm2022/core/directives/dialog-keydown-handler.directive.mjs +0 -49
  144. package/esm2022/tableview/api/editor/helpers/field-validators.mjs +0 -23
  145. 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 | PrimeNG | Ngx-translate | Ngx-formly | Node |
28
- |---------|---------|---------|---------------|------------|--------------------------------------|
29
- | 5.x.x | 17.x.x | 17.x.x | 14.x.x | 6.x.x | ^18.13.0 \|\| ^20.9.0 |
30
- | 4.x.x | 17.x.x | 17.x.x | 14.x.x | 6.x.x | ^18.13.0 \|\| ^20.9.0 |
31
- | 3.x.x | 16.x.x | 16.x.x | 14.x.x | 6.x.x | ^16.14.0 \|\| ^18.10.0 |
32
- | 2.x.x | 15.x.x | 15.x.x | 14.x.x | 6.x.x | ^14.20.0 \|\| ^16.13.0 \|\| ^18.10.0 |
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
 
@@ -4,5 +4,5 @@ export interface IModelDescriptor<Model, ModelClass = ClassOptType<Model>> {
4
4
  typeName?: string;
5
5
  i18nBaseKey: string;
6
6
  idProperty?: string;
7
- titleProperty?: string;
7
+ titleProperty?: string | ((item: Model) => string);
8
8
  }
@@ -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;
@@ -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: "17.3.4", ngImport: i0, type: NotificationWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", 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"] }, { kind: "directive", type: DialogKeydownHandlerDirective, selector: "[mngDialogKeydownHandler]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
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: "17.3.4", ngImport: i0, type: NotificationWrapperComponent, decorators: [{
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, DialogKeydownHandlerDirective], 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" }]
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRW5GLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUVwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxtREFBbUQsQ0FBQzs7Ozs7OztBQVNoRyxNQUFNLE9BQU8sNEJBQTRCO0lBUHpDO1FBUW9CLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUNqQyxnQ0FBMkIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEtBQUssSUFBSSxDQUFDLENBQUM7UUFDakYsdUJBQWtCLEdBQUcsTUFBTSxDQUFpQixJQUFJLENBQUMsQ0FBQztLQTRCNUQ7SUExQlUsd0JBQXdCLENBQUMsT0FBdUI7UUFDbkQsSUFBSSxPQUFPLEVBQUUsSUFBSTtZQUFFLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQztRQUV2QyxRQUFRLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQztZQUN4QixLQUFLLE1BQU07Z0JBQ1AsT0FBTyxnQkFBZ0IsQ0FBQztZQUM1QixLQUFLLFNBQVM7Z0JBQ1YsT0FBTyx5QkFBeUIsQ0FBQztZQUNyQyxLQUFLLE9BQU87Z0JBQ1IsT0FBTyxpQkFBaUIsQ0FBQztZQUM3QixLQUFLLFNBQVM7Z0JBQ1YsT0FBTyxVQUFVLENBQUM7WUFDdEI7Z0JBQ0ksT0FBTyxFQUFFLENBQUM7UUFDbEIsQ0FBQztJQUNMLENBQUM7SUFFTSwwQkFBMEIsQ0FBQyxPQUFnQjtRQUM5QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTSxvQ0FBb0MsQ0FBQyxPQUFnQjtRQUN4RCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDTCxDQUFDOzhHQTlCUSw0QkFBNEI7a0dBQTVCLDRCQUE0QixvRkNqQnpDLHFzREFrQ0EsMkNEcEJjLFdBQVcsOGNBQUUsbUJBQW1CLG9tQkFBRSxlQUFlLDJGQUFFLFlBQVksd3VCQUFFLDZCQUE2Qjs7MkZBRy9GLDRCQUE0QjtrQkFQeEMsU0FBUzsrQkFDSSwwQkFBMEIsY0FDeEIsSUFBSSxXQUVQLENBQUMsV0FBVyxFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsNkJBQTZCLENBQUMsbUJBQ3hGLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge01lc3NhZ2V9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7Q29uZmlybURpYWxvZ01vZHVsZX0gZnJvbSAncHJpbWVuZy9jb25maXJtZGlhbG9nJztcbmltcG9ydCB7RGlhbG9nTW9kdWxlfSBmcm9tICdwcmltZW5nL2RpYWxvZyc7XG5pbXBvcnQge1RvYXN0TW9kdWxlfSBmcm9tICdwcmltZW5nL3RvYXN0JztcblxuaW1wb3J0IHtEaWFsb2dLZXlkb3duSGFuZGxlckRpcmVjdGl2ZX0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9kaWFsb2cta2V5ZG93bi1oYW5kbGVyLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbW5nLW5vdGlmaWNhdGlvbi13cmFwcGVyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnbm90aWZpY2F0aW9uLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIGltcG9ydHM6IFtUb2FzdE1vZHVsZSwgQ29uZmlybURpYWxvZ01vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBEaWFsb2dNb2R1bGUsIERpYWxvZ0tleWRvd25IYW5kbGVyRGlyZWN0aXZlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25XcmFwcGVyQ29tcG9uZW50IHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgbm90aWZpY2F0aW9uQ3V0b2ZmID0gNzA7XG4gICAgcHVibGljIGlzRGlhbG9nTm90aWZpY2F0aW9uVmlzaWJsZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZGlhbG9nTm90aWZpY2F0aW9uKCkgIT09IG51bGwpO1xuICAgIHB1YmxpYyBkaWFsb2dOb3RpZmljYXRpb24gPSBzaWduYWw8TWVzc2FnZSB8IG51bGw+KG51bGwpO1xuXG4gICAgcHVibGljIGdldE5vdGlmaWNhdGlvbkljb25DbGFzcyhtZXNzYWdlOiBNZXNzYWdlIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgICAgIGlmIChtZXNzYWdlPy5pY29uKSByZXR1cm4gbWVzc2FnZS5pY29uO1xuXG4gICAgICAgIHN3aXRjaCAobWVzc2FnZT8uc2V2ZXJpdHkpIHtcbiAgICAgICAgICAgIGNhc2UgJ2luZm8nOlxuICAgICAgICAgICAgICAgIHJldHVybiAncGktaW5mby1jaXJjbGUnO1xuICAgICAgICAgICAgY2FzZSAnd2FybmluZyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdwaS1leGNsYW1hdGlvbi10cmlhbmdsZSc7XG4gICAgICAgICAgICBjYXNlICdlcnJvcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdwaS10aW1lcy1jaXJjbGUnO1xuICAgICAgICAgICAgY2FzZSAnc3VjY2Vzcyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdwaS1jaGVjayc7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblNob3dOb3RpZmljYXRpb25JbkRpYWxvZyhtZXNzYWdlOiBNZXNzYWdlKSB7XG4gICAgICAgIHRoaXMuZGlhbG9nTm90aWZpY2F0aW9uLnNldChtZXNzYWdlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25EaWFsb2dOb3RpZmljYXRpb25WaXNpYmlsaXR5Q2hhbmdlKHZpc2libGU6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKCF2aXNpYmxlKSB7XG4gICAgICAgICAgICB0aGlzLmRpYWxvZ05vdGlmaWNhdGlvbi5zZXQobnVsbCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48cC1jb25maXJtRGlhbG9nIGFwcGVuZFRvPVwiYm9keVwiIFtiYXNlWkluZGV4XT1cIjUwXCI+PC9wLWNvbmZpcm1EaWFsb2c+XG5cbjxwLXRvYXN0IFtiYXNlWkluZGV4XT1cIjUwXCI+XG4gICAgPG5nLXRlbXBsYXRlIGxldC1tZXNzYWdlIHBUZW1wbGF0ZT1cIm1lc3NhZ2VcIj5cbiAgICAgICAgPHNwYW4gW2NsYXNzXT1cIidwLXRvYXN0LW1lc3NhZ2UtaWNvbiBwaSAnICsgZ2V0Tm90aWZpY2F0aW9uSWNvbkNsYXNzKG1lc3NhZ2UpXCI+PC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicC10b2FzdC1tZXNzYWdlLXRleHRcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLXRvYXN0LXN1bW1hcnlcIj57eyBtZXNzYWdlLnN1bW1hcnkgfX08L2Rpdj5cbiAgICAgICAgICAgIEBpZiAobWVzc2FnZS5kZXRhaWwpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC10b2FzdC1kZXRhaWxcIj57eyBtZXNzYWdlLmRldGFpbC5zbGljZSgwLCBub3RpZmljYXRpb25DdXRvZmYpICsgKG1lc3NhZ2UuZGV0YWlsLmxlbmd0aCA+IG5vdGlmaWNhdGlvbkN1dG9mZiA/ICcuLi4nIDogJycpIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgQGlmIChtZXNzYWdlLmRldGFpbC5sZW5ndGggPiBub3RpZmljYXRpb25DdXRvZmYpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwib25TaG93Tm90aWZpY2F0aW9uSW5EaWFsb2cobWVzc2FnZSlcIiBjbGFzcz1cInAtbGluayBmb250LXNlbWlib2xkIHRleHQtc20gbXQtMiBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1jaGV2cm9uLWRvd24gbXItMVwiPjwvaT57eyAnbm90aWZpY2F0aW9uLmRldGFpbHMnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvcC10b2FzdD5cblxuPHAtZGlhbG9nXG4gICAgW3Zpc2libGVdPVwiaXNEaWFsb2dOb3RpZmljYXRpb25WaXNpYmxlKClcIlxuICAgICh2aXNpYmxlQ2hhbmdlKT1cIm9uRGlhbG9nTm90aWZpY2F0aW9uVmlzaWJpbGl0eUNoYW5nZSgkZXZlbnQpXCJcbiAgICBbc3R5bGVDbGFzc109XCIncC1mbHVpZCBtbmctZGlhbG9nIG1uZy1kaWFsb2cteHMgJyArICdtbmctbWVzc2FnZS1kZXRhaWwtZGlhbG9nIG1uZy1tZXNzYWdlLWRldGFpbC1kaWFsb2ctJyArIChkaWFsb2dOb3RpZmljYXRpb24oKT8uc2V2ZXJpdHkgPz8gJycpXCI+XG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiIG1uZ0RpYWxvZ0tleWRvd25IYW5kbGVyPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInAtZGlhbG9nLXRpdGxlIGZvbnQtYm9sZCBtbmctZGlhbG9nLXN1Y2Nlc3NcIj5cbiAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCInbXItMiBwaSAnICsgZ2V0Tm90aWZpY2F0aW9uSWNvbkNsYXNzKGRpYWxvZ05vdGlmaWNhdGlvbigpKVwiPjwvc3Bhbj5cbiAgICAgICAgICAgIHt7IGRpYWxvZ05vdGlmaWNhdGlvbigpPy5zdW1tYXJ5ID8/ICcnIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxkaXY+XG4gICAgICAgIHt7IGRpYWxvZ05vdGlmaWNhdGlvbigpPy5kZXRhaWwgPz8gJycgfX1cbiAgICA8L2Rpdj5cbjwvcC1kaWFsb2c+XG4iXX0=
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: "17.3.4", ngImport: i0, type: ErrorPageComponent, deps: [{ token: i1.CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", 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"] }, { 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 }); }
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.3.4", ngImport: i0, type: ErrorPageComponent, decorators: [{
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IucGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9jb3JlL3NyYy9jb21wb25lbnRzL3BhZ2VzL2Vycm9yL2Vycm9yLnBhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9wYWdlcy9lcnJvci9lcnJvci5wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRTNDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1DQUFtQyxDQUFDOzs7OztBQVVqRSxNQUFNLE9BQU8sa0JBQWtCO0lBQzNCLFlBQW1CLE9BQXVCO1FBQXZCLFlBQU8sR0FBUCxPQUFPLENBQWdCO0lBQUcsQ0FBQzs4R0FEckMsa0JBQWtCO2tHQUFsQixrQkFBa0IsMEVDaEIvQixpK0JBYUEseTdCREZjLFlBQVksc0tBQUUsZUFBZSw0RkFBRSxVQUFVOzsyRkFLMUMsa0JBQWtCO2tCQVI5QixTQUFTO2lDQUNNLElBQUksWUFDTixnQkFBZ0IsV0FDakIsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLFVBQVUsQ0FBQyxtQkFHbkMsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1JvdXRlckxpbmt9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7QnV0dG9uTW9kdWxlfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XG5cbmltcG9ydCB7Q29tbW9uc1NlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2NvbW1vbnMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdtbmctZXJyb3ItcGFnZScsXG4gICAgaW1wb3J0czogW0J1dHRvbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBSb3V0ZXJMaW5rXSxcbiAgICBzdHlsZVVybHM6IFsnZXJyb3IucGFnZS5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lcnJvci5wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFcnJvclBhZ2VDb21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBjb21tb25zOiBDb21tb25zU2VydmljZSkge31cbn1cbiIsIjxkaXYgW2NsYXNzXT1cIidleGNlcHRpb24tYm9keSBtaW4taC1zY3JlZW4gJyArIChjb21tb25zLmNvbG9yU2NoZW1lSXNMaWdodCgpID8gJ2xheW91dC1saWdodCcgOiAnbGF5b3V0LWRhcmsnKVwiPlxuICAgIDxkaXYgY2xhc3M9XCJleGNlcHRpb24tY29udGFpbmVyIG1pbi1oLXNjcmVlbiBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGZsZXgtY29sdW1uIGJnLWF1dG8gbWQ6YmctY29udGFpbiBiZy1uby1yZXBlYXRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImV4Y2VwdGlvbi1wYW5lbCB0ZXh0LWNlbnRlciBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgICA8aDEgY2xhc3M9XCJ0ZXh0LXJlZC00MDAgbWItMFwiPnt7ICdwYWdlcy5ub3RGb3VuZC50aXRsZScgfCB0cmFuc2xhdGUgfX08L2gxPlxuICAgICAgICAgICAgPGgzIGNsYXNzPVwidGV4dC1yZWQtMzAwXCI+e3sgJ3BhZ2VzLm5vdEZvdW5kLnN1YnRpdGxlJyB8IHRyYW5zbGF0ZSB9fTwvaDM+XG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBwQnV0dG9uIFtsYWJlbF09XCInZ2VuZXJhbC5yZXR1cm5Ib21lJyB8IHRyYW5zbGF0ZVwiIFtyb3V0ZXJMaW5rXT1cIlsnLyddXCI+PC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXhjZXB0aW9uLWZvb3RlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleFwiPlxuICAgICAgICAgICAgPGltZyBbc3JjXT1cImNvbW1vbnMuYXBwTG9nbygpXCIgY2xhc3M9XCJleGNlcHRpb24tbG9nb1wiIGFsdD1cIkFwcCBsb2dvXCIgLz5cbiAgICAgICAgICAgIDxpbWcgW3NyY109XCJjb21tb25zLmFwcExvZ29OYW1lKClcIiBjbGFzcz1cImV4Y2VwdGlvbi1hcHBuYW1lIG1sLTNcIiBhbHQ9XCJBcHAgbmFtZVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
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: "17.3.4", ngImport: i0, type: NotFoundPageComponent, deps: [{ token: i1.CommonsService }], target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", 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"] }, { 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 }); }
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.3.4", ngImport: i0, type: NotFoundPageComponent, decorators: [{
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90LWZvdW5kLnBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9wYWdlcy9ub3QtZm91bmQvbm90LWZvdW5kLnBhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vY29yZS9zcmMvY29tcG9uZW50cy9wYWdlcy9ub3QtZm91bmQvbm90LWZvdW5kLnBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFM0MsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7Ozs7O0FBVWpFLE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsWUFBbUIsT0FBdUI7UUFBdkIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7SUFBRyxDQUFDOzhHQURyQyxxQkFBcUI7a0dBQXJCLHFCQUFxQiw4RUNoQmxDLGdpQ0FjQSxnaUNESGMsWUFBWSx1S0FBRSxVQUFVLG1PQUFFLGVBQWU7OzJGQUsxQyxxQkFBcUI7a0JBUmpDLFNBQVM7aUNBQ00sSUFBSSxZQUNOLG9CQUFvQixXQUNyQixDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsZUFBZSxDQUFDLG1CQUduQyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Um91dGVyTGlua30gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtCdXR0b25Nb2R1bGV9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcblxuaW1wb3J0IHtDb21tb25zU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY29tbW9ucy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ21uZy1ub3QtZm91bmQtcGFnZScsXG4gICAgaW1wb3J0czogW0J1dHRvbk1vZHVsZSwgUm91dGVyTGluaywgVHJhbnNsYXRlTW9kdWxlXSxcbiAgICBzdHlsZVVybHM6IFsnbm90LWZvdW5kLnBhZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbm90LWZvdW5kLnBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIE5vdEZvdW5kUGFnZUNvbXBvbmVudCB7XG4gICAgY29uc3RydWN0b3IocHVibGljIGNvbW1vbnM6IENvbW1vbnNTZXJ2aWNlKSB7fVxufVxuIiwiPGRpdiBbY2xhc3NdPVwiJ2V4Y2VwdGlvbi1ib2R5IG1pbi1oLXNjcmVlbiAnICsgKGNvbW1vbnMuY29sb3JTY2hlbWVJc0xpZ2h0KCkgPyAnbGF5b3V0LWxpZ2h0JyA6ICdsYXlvdXQtZGFyaycpXCI+XG4gICAgPGRpdiBjbGFzcz1cImV4Y2VwdGlvbi1jb250YWluZXIgbWluLWgtc2NyZWVuIGZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgZmxleC1jb2x1bW4gYmctYXV0byBtZDpiZy1jb250YWluIGJnLW5vLXJlcGVhdFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXhjZXB0aW9uLXBhbmVsIHRleHQtY2VudGVyIGZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgZmxleC1jb2x1bW5cIj5cbiAgICAgICAgICAgIDxoMSBjbGFzcz1cInRleHQtcmVkLTQwMCBtYi0wXCI+e3sgJ3BhZ2VzLm5vdEZvdW5kLnRpdGxlJyB8IHRyYW5zbGF0ZSB9fTwvaDE+XG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJ0ZXh0LXJlZC0zMDBcIj57eyAncGFnZXMubm90Rm91bmQuc3VidGl0bGUnIHwgdHJhbnNsYXRlIH19PC9oMz5cbiAgICAgICAgICAgIDxwPnt7ICdwYWdlcy5ub3RGb3VuZC5tZXNzYWdlJyB8IHRyYW5zbGF0ZSB9fTwvcD5cbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIHBCdXR0b24gW2xhYmVsXT1cIidnZW5lcmFsLnJldHVybkhvbWUnIHwgdHJhbnNsYXRlXCIgW3JvdXRlckxpbmtdPVwiWycvJ11cIj48L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJleGNlcHRpb24tZm9vdGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4XCI+XG4gICAgICAgICAgICA8aW1nIFtzcmNdPVwiY29tbW9ucy5hcHBMb2dvKClcIiBjbGFzcz1cImV4Y2VwdGlvbi1sb2dvXCIgYWx0PVwiQXBwIGxvZ29cIiAvPlxuICAgICAgICAgICAgPGltZyBbc3JjXT1cImNvbW1vbnMuYXBwTG9nb05hbWUoKVwiIGNsYXNzPVwiZXhjZXB0aW9uLWFwcG5hbWUgbWwtM1wiIGFsdD1cIkFwcCBuYW1lXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
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+IHtcbiAgICB0eXBlOiBNb2RlbENsYXNzO1xuICAgIHR5cGVOYW1lPzogc3RyaW5nO1xuICAgIGkxOG5CYXNlS2V5OiBzdHJpbmc7XG4gICAgaWRQcm9wZXJ0eT86IHN0cmluZztcbiAgICB0aXRsZVByb3BlcnR5Pzogc3RyaW5nO1xufVxuIl19
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: "17.3.4", ngImport: i0, type: ComponentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
51
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: ComponentDirective, isStandalone: true, selector: "[mngComponent]", inputs: { component: ["mngComponent", "component"], componentIt: ["injectionToken", "componentIt"], inputs: "inputs", attachToHost: "attachToHost", parentInjector: "parentInjector" }, outputs: { componentInstanceEventEmitter: "instanceCreated" }, ngImport: i0 }); }
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: "17.3.4", ngImport: i0, type: ComponentDirective, decorators: [{
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: "17.3.4", ngImport: i0, type: TemplateDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
15
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: TemplateDirective, isStandalone: true, selector: "[mngTemplate]", inputs: { type: "type", name: ["mngTemplate", "name"] }, ngImport: i0 }); }
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.3.4", ngImport: i0, type: TemplateDirective, decorators: [{
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb3JlL3NyYy9oZWxwZXJzL2NvZXJjaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUFhLFlBQVksRUFBRSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFbEQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFHMUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEtBQWM7SUFDNUMsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFFLEtBQTZCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQzlGLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsS0FBYztJQUMzQyxPQUFPLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUUsS0FBNEIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQzVGLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBSSxLQUF3QixFQUFpQixFQUFFO0lBQ3ZFLE9BQU8sWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBRSxLQUF1QixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDdEUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBYyxFQUFVLEVBQUU7SUFDckQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM1QixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO1NBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUNuQyxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDZCxPQUFPLEdBQUcsQ0FBQztRQUNmLENBQUM7UUFDRCxNQUFNLElBQUksb0JBQW9CLENBQUMsK0RBQStELEtBQUssRUFBRSxDQUFDLENBQUM7SUFDM0csQ0FBQztTQUFNLENBQUM7UUFDSixNQUFNLElBQUksb0JBQW9CLENBQUMsMkJBQTJCLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDdkUsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQWMsRUFBVSxFQUFFO0lBQ3JELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDNUIsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztTQUFNLENBQUM7UUFDSixNQUFNLElBQUksb0JBQW9CLENBQUMsMkJBQTJCLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDdkUsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUFDLEtBQWMsRUFBVSxFQUFFO0lBQ3RELElBQUksT0FBTyxLQUFLLEtBQUssV0FBVyxFQUFFLENBQUM7UUFDL0IsTUFBTSxJQUFJLG9CQUFvQixDQUFDLDBCQUEwQixLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFJLEtBQWtCLEVBQUssRUFBRTtJQUN2RCxJQUFJLE9BQU8sS0FBSyxLQUFLLFdBQVcsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDakQsTUFBTSxJQUFJLG9CQUFvQixDQUFDLGlDQUFpQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Ym9vbGVhbkF0dHJpYnV0ZSwgbnVtYmVyQXR0cmlidXRlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtPYnNlcnZhYmxlLCBpc09ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtDb21tb25zSW50ZXJuYWxFcnJvcn0gZnJvbSAnLi4vZXJyb3IvZXJyb3IubW9kZWwnO1xuaW1wb3J0IHtJZFR5cGUsIE51bGxhYmxlfSBmcm9tICcuL3R5cGUtaGVscGVycyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBib29sZWFuJEF0dHJpYnV0ZSh2YWx1ZTogdW5rbm93bik6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBpc09ic2VydmFibGUodmFsdWUpID8gKHZhbHVlIGFzIE9ic2VydmFibGU8Ym9vbGVhbj4pIDogb2YoYm9vbGVhbkF0dHJpYnV0ZSh2YWx1ZSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyJEF0dHJpYnV0ZSh2YWx1ZTogdW5rbm93bik6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIGlzT2JzZXJ2YWJsZSh2YWx1ZSkgPyAodmFsdWUgYXMgT2JzZXJ2YWJsZTxudW1iZXI+KSA6IG9mKG51bWJlckF0dHJpYnV0ZSh2YWx1ZSkpO1xufVxuXG5leHBvcnQgY29uc3QgdG9PYnNlcnZhYmxlID0gPFQ+KHZhbHVlOiBUIHwgT2JzZXJ2YWJsZTxUPik6IE9ic2VydmFibGU8VD4gPT4ge1xuICAgIHJldHVybiBpc09ic2VydmFibGUodmFsdWUpID8gKHZhbHVlIGFzIE9ic2VydmFibGU8VD4pIDogb2YodmFsdWUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGl0ZW1JZFRvTnVtYmVyID0gKHZhbHVlPzogSWRUeXBlKTogbnVtYmVyID0+IHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IG51bSA9ICt2YWx1ZTtcbiAgICAgICAgaWYgKCFpc05hTihudW0pKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVtO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcihgSXRlbUlkIGlzIGEgc3RyaW5nLCBidXQgY291bGQgbm90IGJlIHRyYW5zZm9ybWVkIHRvIG51bWJlcjogJHt2YWx1ZX1gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYEl0ZW1JZCBpcyBub3QgYSBudW1iZXI6ICR7dmFsdWV9YCk7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGl0ZW1JZFRvU3RyaW5nID0gKHZhbHVlPzogSWRUeXBlKTogc3RyaW5nID0+IHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGBJdGVtSWQgaXMgbm90IGEgc3RyaW5nOiAke3ZhbHVlfWApO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBpdGVtSWRUb0RlZmluZWQgPSAodmFsdWU/OiBJZFR5cGUpOiBJZFR5cGUgPT4ge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcihgSXRlbUlkIGlzIG5vdCBkZWZpbmVkOiAke3ZhbHVlfWApO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgdmFsdWVUb0RlZmluZWQgPSA8VD4odmFsdWU6IE51bGxhYmxlPFQ+KTogVCA9PiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3VuZGVmaW5lZCcgfHwgdmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGBWYWx1ZSBpcyBudWxsIG9yIG5vdCBkZWZpbmVkOiAke3ZhbHVlfWApO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG59O1xuIl19
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb3JlL3NyYy9oZWxwZXJzL2NvZXJjaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUFhLFlBQVksRUFBRSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFbEQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFHMUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEtBQWM7SUFDNUMsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFFLEtBQTZCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQzlGLENBQUM7QUFFRCxNQUFNLFVBQVUsMkJBQTJCLENBQUMsS0FBYztJQUN0RCxPQUFPLE9BQU8sS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxPQUFPLENBQUM7QUFDOUYsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxLQUFjO0lBQzNDLE9BQU8sWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBRSxLQUE0QixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDNUYsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFJLEtBQXdCLEVBQWlCLEVBQUU7SUFDdkUsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFFLEtBQXVCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN0RSxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxLQUFjLEVBQVUsRUFBRTtJQUNyRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzVCLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7U0FBTSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ25DLE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNkLE9BQU8sR0FBRyxDQUFDO1FBQ2YsQ0FBQztRQUNELE1BQU0sSUFBSSxvQkFBb0IsQ0FBQywrREFBK0QsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUMzRyxDQUFDO1NBQU0sQ0FBQztRQUNKLE1BQU0sSUFBSSxvQkFBb0IsQ0FBQywyQkFBMkIsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBYyxFQUFVLEVBQUU7SUFDckQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM1QixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO1NBQU0sQ0FBQztRQUNKLE1BQU0sSUFBSSxvQkFBb0IsQ0FBQywyQkFBMkIsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQUMsS0FBYyxFQUFVLEVBQUU7SUFDdEQsSUFBSSxPQUFPLEtBQUssS0FBSyxXQUFXLEVBQUUsQ0FBQztRQUMvQixNQUFNLElBQUksb0JBQW9CLENBQUMsMEJBQTBCLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUksS0FBa0IsRUFBSyxFQUFFO0lBQ3ZELElBQUksT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUNqRCxNQUFNLElBQUksb0JBQW9CLENBQUMsaUNBQWlDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDN0UsQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0FBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtib29sZWFuQXR0cmlidXRlLCBudW1iZXJBdHRyaWJ1dGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge09ic2VydmFibGUsIGlzT2JzZXJ2YWJsZSwgb2Z9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0NvbW1vbnNJbnRlcm5hbEVycm9yfSBmcm9tICcuLi9lcnJvci9lcnJvci5tb2RlbCc7XG5pbXBvcnQge0lkVHlwZSwgTnVsbGFibGV9IGZyb20gJy4vdHlwZS1oZWxwZXJzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGJvb2xlYW4kQXR0cmlidXRlKHZhbHVlOiB1bmtub3duKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGlzT2JzZXJ2YWJsZSh2YWx1ZSkgPyAodmFsdWUgYXMgT2JzZXJ2YWJsZTxib29sZWFuPikgOiBvZihib29sZWFuQXR0cmlidXRlKHZhbHVlKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBib29sZWFuT3JVbmRlZmluZWRBdHRyaWJ1dGUodmFsdWU6IHVua25vd24pOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicgPyB2YWx1ZSA6IHZhbHVlID09IG51bGwgPyB1bmRlZmluZWQgOiB2YWx1ZSAhPT0gJ2ZhbHNlJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlciRBdHRyaWJ1dGUodmFsdWU6IHVua25vd24pOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiBpc09ic2VydmFibGUodmFsdWUpID8gKHZhbHVlIGFzIE9ic2VydmFibGU8bnVtYmVyPikgOiBvZihudW1iZXJBdHRyaWJ1dGUodmFsdWUpKTtcbn1cblxuZXhwb3J0IGNvbnN0IHRvT2JzZXJ2YWJsZSA9IDxUPih2YWx1ZTogVCB8IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+ID0+IHtcbiAgICByZXR1cm4gaXNPYnNlcnZhYmxlKHZhbHVlKSA/ICh2YWx1ZSBhcyBPYnNlcnZhYmxlPFQ+KSA6IG9mKHZhbHVlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBpdGVtSWRUb051bWJlciA9ICh2YWx1ZT86IElkVHlwZSk6IG51bWJlciA9PiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb25zdCBudW0gPSArdmFsdWU7XG4gICAgICAgIGlmICghaXNOYU4obnVtKSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bTtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYEl0ZW1JZCBpcyBhIHN0cmluZywgYnV0IGNvdWxkIG5vdCBiZSB0cmFuc2Zvcm1lZCB0byBudW1iZXI6ICR7dmFsdWV9YCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGBJdGVtSWQgaXMgbm90IGEgbnVtYmVyOiAke3ZhbHVlfWApO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBpdGVtSWRUb1N0cmluZyA9ICh2YWx1ZT86IElkVHlwZSk6IHN0cmluZyA9PiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcihgSXRlbUlkIGlzIG5vdCBhIHN0cmluZzogJHt2YWx1ZX1gKTtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgaXRlbUlkVG9EZWZpbmVkID0gKHZhbHVlPzogSWRUeXBlKTogSWRUeXBlID0+IHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYEl0ZW1JZCBpcyBub3QgZGVmaW5lZDogJHt2YWx1ZX1gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHZhbHVlVG9EZWZpbmVkID0gPFQ+KHZhbHVlOiBOdWxsYWJsZTxUPik6IFQgPT4ge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIHRocm93IG5ldyBDb21tb25zSW50ZXJuYWxFcnJvcihgVmFsdWUgaXMgbnVsbCBvciBub3QgZGVmaW5lZDogJHt2YWx1ZX1gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxufTtcbiJdfQ==