@leanix/components 0.4.531 → 0.4.533

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 (157) hide show
  1. package/fesm2022/leanix-components.mjs +365 -365
  2. package/fesm2022/leanix-components.mjs.map +1 -1
  3. package/lib/core-ui/tooltip/tooltip.directive.d.ts +1 -1
  4. package/lib/forms-ui/components/keyboard-select.directive.d.ts +1 -1
  5. package/lib/forms-ui/models/base-select.directive.d.ts +1 -1
  6. package/lib/tab-ui/components/tab-group/tab-group.component.d.ts +1 -1
  7. package/package.json +10 -14
  8. package/esm2022/index.mjs +0 -145
  9. package/esm2022/leanix-components.mjs +0 -5
  10. package/esm2022/lib/core-ui/components/avatar/avatar.component.mjs +0 -40
  11. package/esm2022/lib/core-ui/components/avatar/avatar.helpers.mjs +0 -49
  12. package/esm2022/lib/core-ui/components/avatar/avatar.model.mjs +0 -33
  13. package/esm2022/lib/core-ui/components/avatar-group/avatar-group.component.mjs +0 -75
  14. package/esm2022/lib/core-ui/components/badge/badge.component.mjs +0 -58
  15. package/esm2022/lib/core-ui/components/banner/banner.component.mjs +0 -68
  16. package/esm2022/lib/core-ui/components/banner/banner.models.mjs +0 -12
  17. package/esm2022/lib/core-ui/components/button/button.component.mjs +0 -179
  18. package/esm2022/lib/core-ui/components/button-group/button-group.component.mjs +0 -28
  19. package/esm2022/lib/core-ui/components/card/card.component.mjs +0 -26
  20. package/esm2022/lib/core-ui/components/collapsible/collapsible.component.mjs +0 -52
  21. package/esm2022/lib/core-ui/components/counter/counter.component.mjs +0 -30
  22. package/esm2022/lib/core-ui/components/ellipsis/ellipsis.component.mjs +0 -143
  23. package/esm2022/lib/core-ui/components/empty-state/empty-state.component.mjs +0 -41
  24. package/esm2022/lib/core-ui/components/icon-scale/icon-scale.component.mjs +0 -36
  25. package/esm2022/lib/core-ui/components/skeleton/skeleton.component.mjs +0 -44
  26. package/esm2022/lib/core-ui/components/spinner/spinner.component.mjs +0 -26
  27. package/esm2022/lib/core-ui/components/stepper/stepper.component.mjs +0 -70
  28. package/esm2022/lib/core-ui/components/table/table-header/table-header.component.mjs +0 -128
  29. package/esm2022/lib/core-ui/components/table/table.component.mjs +0 -77
  30. package/esm2022/lib/core-ui/components/tiny-spinner/tiny-spinner.component.mjs +0 -14
  31. package/esm2022/lib/core-ui/components/tokenizer/token/token.component.mjs +0 -20
  32. package/esm2022/lib/core-ui/components/tokenizer/tokenizer-overflow-popover/tokenizer-overflow-popover.component.mjs +0 -44
  33. package/esm2022/lib/core-ui/components/tokenizer/tokenizer.component.mjs +0 -149
  34. package/esm2022/lib/core-ui/core-ui.constants.mjs +0 -240
  35. package/esm2022/lib/core-ui/core-ui.module.mjs +0 -206
  36. package/esm2022/lib/core-ui/directives/after-view-init.directive.mjs +0 -33
  37. package/esm2022/lib/core-ui/directives/autoclose-group.service.mjs +0 -39
  38. package/esm2022/lib/core-ui/directives/autoclose.directive.mjs +0 -43
  39. package/esm2022/lib/core-ui/directives/autofocus.directive.mjs +0 -36
  40. package/esm2022/lib/core-ui/functions/core-css.helpers.mjs +0 -52
  41. package/esm2022/lib/core-ui/functions/highlight-text.function.mjs +0 -80
  42. package/esm2022/lib/core-ui/linkify/linkify.pipe.mjs +0 -146
  43. package/esm2022/lib/core-ui/linkify/unlinkify.pipe.mjs +0 -51
  44. package/esm2022/lib/core-ui/pipes/br.pipe.mjs +0 -24
  45. package/esm2022/lib/core-ui/pipes/contrast-color.pipe.mjs +0 -21
  46. package/esm2022/lib/core-ui/pipes/custom-date.pipe.mjs +0 -28
  47. package/esm2022/lib/core-ui/pipes/display-avatars.pipe.mjs +0 -37
  48. package/esm2022/lib/core-ui/pipes/highlight-range.pipe.mjs +0 -29
  49. package/esm2022/lib/core-ui/pipes/highlight-term.pipe.mjs +0 -57
  50. package/esm2022/lib/core-ui/pipes/lx-is-uuid.pipe.mjs +0 -22
  51. package/esm2022/lib/core-ui/pipes/lx-time-ago.pipe.mjs +0 -29
  52. package/esm2022/lib/core-ui/pipes/lx-translate.pipe.mjs +0 -50
  53. package/esm2022/lib/core-ui/pipes/markdown.pipe.mjs +0 -32
  54. package/esm2022/lib/core-ui/pipes/nbsp.pipe.mjs +0 -17
  55. package/esm2022/lib/core-ui/pipes/sort.pipe.mjs +0 -55
  56. package/esm2022/lib/core-ui/pipes/translation-after.pipe.mjs +0 -29
  57. package/esm2022/lib/core-ui/pipes/translation-before.pipe.mjs +0 -54
  58. package/esm2022/lib/core-ui/pipes/translation-between.pipe.mjs +0 -68
  59. package/esm2022/lib/core-ui/pipes/unescape-curly-braces.pipe.mjs +0 -17
  60. package/esm2022/lib/core-ui/services/resize-observer.service.mjs +0 -112
  61. package/esm2022/lib/core-ui/tooltip/to-cdk-position.function.mjs +0 -74
  62. package/esm2022/lib/core-ui/tooltip/tooltip-position.interface.mjs +0 -7
  63. package/esm2022/lib/core-ui/tooltip/tooltip.component.mjs +0 -26
  64. package/esm2022/lib/core-ui/tooltip/tooltip.directive.mjs +0 -117
  65. package/esm2022/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.mjs +0 -139
  66. package/esm2022/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.mjs +0 -38
  67. package/esm2022/lib/forms-ui/components/breadcrumb/breadcrumb.component.mjs +0 -55
  68. package/esm2022/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.mjs +0 -215
  69. package/esm2022/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.mjs +0 -135
  70. package/esm2022/lib/forms-ui/components/currency/currency-input.component.mjs +0 -159
  71. package/esm2022/lib/forms-ui/components/currency/currency-symbol-map.constant.mjs +0 -105
  72. package/esm2022/lib/forms-ui/components/currency/currency-symbol.component.mjs +0 -24
  73. package/esm2022/lib/forms-ui/components/date-input/date-input.component.mjs +0 -347
  74. package/esm2022/lib/forms-ui/components/date-picker-ui/date-formatter.mjs +0 -8
  75. package/esm2022/lib/forms-ui/components/date-picker-ui/datepicker-inner.component.mjs +0 -312
  76. package/esm2022/lib/forms-ui/components/date-picker-ui/datepicker-ui.module.mjs +0 -20
  77. package/esm2022/lib/forms-ui/components/date-picker-ui/datepicker.component.mjs +0 -206
  78. package/esm2022/lib/forms-ui/components/date-picker-ui/datepicker.config.mjs +0 -29
  79. package/esm2022/lib/forms-ui/components/date-picker-ui/daypicker.component.mjs +0 -319
  80. package/esm2022/lib/forms-ui/components/date-picker-ui/isBs3.mjs +0 -2
  81. package/esm2022/lib/forms-ui/components/date-picker-ui/monthpicker.component.mjs +0 -149
  82. package/esm2022/lib/forms-ui/components/date-picker-ui/yearpicker.component.mjs +0 -151
  83. package/esm2022/lib/forms-ui/components/drag-and-drop-list/constants.mjs +0 -5
  84. package/esm2022/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.mjs +0 -49
  85. package/esm2022/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.mjs +0 -120
  86. package/esm2022/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.mjs +0 -39
  87. package/esm2022/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.mjs +0 -137
  88. package/esm2022/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.mjs +0 -38
  89. package/esm2022/lib/forms-ui/components/error-message/error-message.component.mjs +0 -16
  90. package/esm2022/lib/forms-ui/components/expanded-dropdown/expanded-dropdown.component.mjs +0 -26
  91. package/esm2022/lib/forms-ui/components/form-error/form-error.component.mjs +0 -44
  92. package/esm2022/lib/forms-ui/components/icon/icon.component.mjs +0 -45
  93. package/esm2022/lib/forms-ui/components/input/input.component.mjs +0 -48
  94. package/esm2022/lib/forms-ui/components/keyboard-select.directive.mjs +0 -126
  95. package/esm2022/lib/forms-ui/components/multi-select/multi-select-selection/multi-select-selection.component.mjs +0 -28
  96. package/esm2022/lib/forms-ui/components/multi-select/multi-select.component.mjs +0 -318
  97. package/esm2022/lib/forms-ui/components/option/option.component.mjs +0 -99
  98. package/esm2022/lib/forms-ui/components/option-group/option-group.component.mjs +0 -29
  99. package/esm2022/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.mjs +0 -123
  100. package/esm2022/lib/forms-ui/components/options-dropdown/options-dropdown.component.mjs +0 -297
  101. package/esm2022/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.mjs +0 -94
  102. package/esm2022/lib/forms-ui/components/picker/picker-trigger.directive.mjs +0 -47
  103. package/esm2022/lib/forms-ui/components/picker/picker.component.mjs +0 -218
  104. package/esm2022/lib/forms-ui/components/picker-option/picker-option.component.mjs +0 -118
  105. package/esm2022/lib/forms-ui/components/pill-item/pill-item.component.mjs +0 -33
  106. package/esm2022/lib/forms-ui/components/pill-list/pill-list.component.mjs +0 -58
  107. package/esm2022/lib/forms-ui/components/responsive-input/responsive-input.component.mjs +0 -101
  108. package/esm2022/lib/forms-ui/components/select-list/select-list.component.mjs +0 -178
  109. package/esm2022/lib/forms-ui/components/single-select/single-select.component.mjs +0 -290
  110. package/esm2022/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.mjs +0 -71
  111. package/esm2022/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.mjs +0 -21
  112. package/esm2022/lib/forms-ui/components/switch/switch.component.mjs +0 -51
  113. package/esm2022/lib/forms-ui/directives/contenteditable.directive.mjs +0 -130
  114. package/esm2022/lib/forms-ui/directives/form-error.directive.mjs +0 -121
  115. package/esm2022/lib/forms-ui/directives/form-submit.directive.mjs +0 -29
  116. package/esm2022/lib/forms-ui/directives/keyboard-action-source.directive.mjs +0 -63
  117. package/esm2022/lib/forms-ui/directives/mark-invalid.directive.mjs +0 -39
  118. package/esm2022/lib/forms-ui/directives/max-length-counter.directive.mjs +0 -131
  119. package/esm2022/lib/forms-ui/directives/select-dropdown.directive.mjs +0 -32
  120. package/esm2022/lib/forms-ui/directives/selectable-item.directive.mjs +0 -34
  121. package/esm2022/lib/forms-ui/directives/selected-option.directive.mjs +0 -27
  122. package/esm2022/lib/forms-ui/forms-ui.module.mjs +0 -270
  123. package/esm2022/lib/forms-ui/helpers/key-codes.constants.mjs +0 -13
  124. package/esm2022/lib/forms-ui/helpers/keyboard-navigation.helpers.mjs +0 -38
  125. package/esm2022/lib/forms-ui/models/base-select.directive.mjs +0 -183
  126. package/esm2022/lib/forms-ui/models/dropdown-item.interface.mjs +0 -2
  127. package/esm2022/lib/forms-ui/models/single-select-padding.interface.mjs +0 -2
  128. package/esm2022/lib/forms-ui/models/sorting.interface.mjs +0 -7
  129. package/esm2022/lib/forms-ui/pipes/filter-selection.pipe.mjs +0 -33
  130. package/esm2022/lib/forms-ui/pipes/filter-term.pipe.mjs +0 -29
  131. package/esm2022/lib/forms-ui/pipes/format-number.pipe.mjs +0 -66
  132. package/esm2022/lib/forms-ui/validators/date-in-foreseeable-future.validator.mjs +0 -26
  133. package/esm2022/lib/forms-ui/validators/string-not-in-array.validator.mjs +0 -30
  134. package/esm2022/lib/modal-ui/components/modal/modal.component.mjs +0 -264
  135. package/esm2022/lib/modal-ui/components/modal-footer/modal-footer.component.mjs +0 -16
  136. package/esm2022/lib/modal-ui/components/modal-header/modal-header.component.mjs +0 -19
  137. package/esm2022/lib/modal-ui/directives/modal-content.directive.mjs +0 -14
  138. package/esm2022/lib/modal-ui/modal.constants.mjs +0 -18
  139. package/esm2022/lib/modal-ui/modal.module.mjs +0 -47
  140. package/esm2022/lib/popover-ui/components/popover/popover.component.mjs +0 -228
  141. package/esm2022/lib/popover-ui/directives/popover-click.directive.mjs +0 -52
  142. package/esm2022/lib/popover-ui/directives/popover-content.directive.mjs +0 -17
  143. package/esm2022/lib/popover-ui/directives/popover-hover.directive.mjs +0 -88
  144. package/esm2022/lib/popover-ui/popover-ui.module.mjs +0 -21
  145. package/esm2022/lib/shared/date-helpers.mjs +0 -35
  146. package/esm2022/lib/shared/html-helpers.function.mjs +0 -34
  147. package/esm2022/lib/shared/misc-helpers.mjs +0 -24
  148. package/esm2022/lib/shared/observe.mjs +0 -40
  149. package/esm2022/lib/tab-ui/components/tab/tab.component.mjs +0 -118
  150. package/esm2022/lib/tab-ui/components/tab-group/tab-group-key-codes.enum.mjs +0 -12
  151. package/esm2022/lib/tab-ui/components/tab-group/tab-group.component.mjs +0 -150
  152. package/esm2022/lib/tab-ui/tab-ui.module.mjs +0 -20
  153. package/esm2022/ui5/icons/lx-icons.json +0 -177
  154. package/esm2022/ui5/icons/register-icons.mjs +0 -14
  155. package/esm2022/ui5/index.mjs +0 -8
  156. package/esm2022/ui5/leanix-components-ui5.mjs +0 -5
  157. package/esm2022/ui5/ui5.provider.mjs +0 -29
@@ -1,264 +0,0 @@
1
- import { animate, style, transition, trigger } from '@angular/animations';
2
- import { CdkPortal, PortalModule } from '@angular/cdk/portal';
3
- import { CommonModule, NgTemplateOutlet } from '@angular/common';
4
- import { Component, ContentChild, EventEmitter, HostListener, Inject, Input, Optional, Output, TemplateRef, ViewChild } from '@angular/core';
5
- import { TranslateModule } from '@ngx-translate/core';
6
- import { Subject, timer } from 'rxjs';
7
- import { takeUntil } from 'rxjs/operators';
8
- import { ModalContentDirective } from '../../directives/modal-content.directive';
9
- import { MODAL_CLOSE, ModalCloseClickLocation } from '../../modal.constants';
10
- import { ModalFooterComponent } from '../modal-footer/modal-footer.component';
11
- import { ModalHeaderComponent } from '../modal-header/modal-header.component';
12
- import * as i0 from "@angular/core";
13
- import * as i1 from "@angular/cdk/overlay";
14
- import * as i2 from "@angular/cdk/a11y";
15
- import * as i3 from "@angular/cdk/portal";
16
- import * as i4 from "@ngx-translate/core";
17
- import * as i5 from "rxjs";
18
- /**
19
- * This documentation provides details on the usage and configuration of the Modal.
20
- *
21
- * ## Usage
22
- *
23
- * 1. Import `LxModalModule` and `LxCoreUiModule` modules from `@leanix/components` in your module where you want to use the component.
24
- *
25
- * ```ts
26
- * import { LxModalModule, LxCoreUiModule } from '@leanix/components';
27
- * ```
28
- *
29
- * 2. Use the **lx-modal** component in your template with the parameters described below.
30
- *
31
- * - **`open`**: Whether the modal is open or closed.
32
- * - **`size`**: 'dialog' | 'dialog-large'.
33
- * - **`verticalScroll`**: Whether the modal is scrollable or not.
34
- * - **`showHeader`**: Whether the modal has a header or not.
35
- * - **`showFooter`**: Whether the modal has a footer or not.
36
- * - **`showCloseButton`**: Whether to show the close button.
37
- * - **`showBackButton`**: Whether to show the back button.
38
- *
39
- * 3. Use optional **lx-modal-header** component in your template with the parameters described below.
40
- *
41
- * - **`title`**: Title of the modal.
42
- * - **`subtitle`**: Subtitle of the modal.
43
- * - **`bottomBorder`**: Whether to show a bottom border.
44
- *
45
- * 4. Use optional **lx-modal-footer** component in your template with the parameters described below.
46
- *
47
- * - **`border`**: Whether to show the footer at the bottom of the modal.
48
- *
49
- * **GLOBAL PROVIDERS** required for this component:
50
- * - `provideAnimations()`
51
- *
52
- * **ATTENTION - SCROLLABLE DIALOG**:
53
- * The <lx-modal> component when used as "dialog" is not designed to work with a
54
- * scrollable body (via `overflow: auto | scroll`) in combination with dropdowns.
55
- * The overflow on the body will also clip the dropdowns, which is expected.
56
- *
57
- * Reasoning:
58
- * The contents within the dialog should be just a few elements which fit and
59
- * justify the usage of a dialog. If the content is larger than the dialog, and thus
60
- * requires scrolling, we should discuss whether to put it into a dialog at all
61
- * and rather think about putting the content on a separate route or
62
- * using the fullscreen version of the modal.
63
- */
64
- export class ModalComponent {
65
- get content() {
66
- return this.explicitContent || this.implicitContent;
67
- }
68
- /** @internal */
69
- onEscape() {
70
- if (this.open && this.showCloseButton) {
71
- this.closeModal(ModalCloseClickLocation.Escape);
72
- }
73
- }
74
- constructor(overlay, renderer, closeModal$, focusTrap) {
75
- this.overlay = overlay;
76
- this.renderer = renderer;
77
- this.closeModal$ = closeModal$;
78
- this.focusTrap = focusTrap;
79
- /** @internal */
80
- this.NAME = 'ModalComponent';
81
- /** Whether the modal is open or closed. */
82
- this.open = false;
83
- /** Whether to show the close button. */
84
- this.showCloseButton = true;
85
- /** Whether to show the back button. */
86
- this.showBackButton = false;
87
- /*
88
- * If true, then the content area scrolls vertically instead of expanding its height.
89
- * This can be a problem if the content has dropdowns or date inputs, but can be good if the content has a huge amount of text.
90
- */
91
- this.verticalScroll = false;
92
- /** The size of the modal. */
93
- this.size = 'fullscreen';
94
- /**
95
- * Minimum width of the modal.
96
- *
97
- * _NB: Some modal implementations rely on this minWidth being 600px_
98
- */
99
- this.minWidth = '600px';
100
- /** Whether the modal is a focus trap. */
101
- this.isFocusTrap = false;
102
- /** Event emitted when the modal is closed. */
103
- this.close = new EventEmitter();
104
- /** Event emitted when the back button is clicked. */
105
- this.back = new EventEmitter();
106
- /** @internal */
107
- this.closeLocation = ModalCloseClickLocation;
108
- /** @internal */
109
- this.destroyed$ = new Subject();
110
- }
111
- ngOnInit() {
112
- this.closeModal$
113
- ?.pipe(takeUntil(this.destroyed$))
114
- .subscribe((closeLocation) => this.closeModal(closeLocation));
115
- if (this.size === 'fullscreen') {
116
- this.overlayRef = this.overlay.create({
117
- panelClass: this.size,
118
- width: '100%',
119
- height: '100vh'
120
- });
121
- }
122
- else if (this.size === 'dialog-large') {
123
- const positionStrategy = this.overlay.position().global().top('4vh').centerHorizontally();
124
- this.overlayRef = this.overlay.create({
125
- panelClass: this.size,
126
- positionStrategy,
127
- hasBackdrop: true,
128
- width: '90%',
129
- height: '90vh'
130
- });
131
- }
132
- else {
133
- // size 'dialog'
134
- const positionStrategy = this.overlay.position().global().top('8vh').centerHorizontally();
135
- this.overlayRef = this.overlay.create({
136
- panelClass: this.size,
137
- minWidth: this.minWidth,
138
- positionStrategy,
139
- hasBackdrop: true,
140
- scrollStrategy: this.overlay.scrollStrategies.block()
141
- });
142
- }
143
- if (this.size !== 'fullscreen') {
144
- this.overlayRef
145
- .backdropClick()
146
- .pipe(takeUntil(this.destroyed$))
147
- .subscribe(() => this.closeModal(ModalCloseClickLocation.OutsideClick));
148
- }
149
- }
150
- ngOnChanges() {
151
- if (this.open && this.overlayRef && !this.overlayRef.hasAttached()) {
152
- this.openModal();
153
- }
154
- if (!this.open && this.overlayRef && this.overlayRef.hasAttached()) {
155
- this.closeModal(ModalCloseClickLocation.Other);
156
- }
157
- if (this.open && this.overlayRef && this.overlayRef.hasAttached() && this.isFocusTrap) {
158
- this.trapFocusInModal(this.overlayRef.hostElement);
159
- }
160
- }
161
- ngAfterViewInit() {
162
- if (this.open) {
163
- timer(0)
164
- .pipe(takeUntil(this.destroyed$))
165
- .subscribe(() => this.openModal());
166
- }
167
- }
168
- /** @internal */
169
- openModal() {
170
- this.oldOverflow = document.documentElement.style.overflowY;
171
- if (this.size === 'fullscreen') {
172
- this.renderer.setStyle(document.documentElement, 'overflowY', 'hidden');
173
- }
174
- this.overlayRef.attach(this.cdkPortal);
175
- this.trapFocusInModal(this.overlayRef.hostElement);
176
- }
177
- /** @internal */
178
- emitBack() {
179
- this.back.emit();
180
- }
181
- ngOnDestroy() {
182
- this.destroyed$.next();
183
- if (this.size === 'fullscreen') {
184
- this.renderer.setStyle(document.documentElement, 'overflowY', this.oldOverflow);
185
- }
186
- if (this.overlayRef) {
187
- this.overlayRef.dispose();
188
- }
189
- }
190
- /** @internal */
191
- async closeModal(closeLocation) {
192
- if (!this.canModalBeClosed || (await this.canModalBeClosed(closeLocation))) {
193
- this.open = false;
194
- this.overlayRef.detach();
195
- if (this.size === 'fullscreen') {
196
- this.renderer.setStyle(document.documentElement, 'overflowY', this.oldOverflow);
197
- }
198
- this.close.emit(typeof closeLocation === 'boolean' ? ModalCloseClickLocation.Other : closeLocation);
199
- }
200
- }
201
- trapFocusInModal(hostElement) {
202
- this.focusTrap.create(hostElement);
203
- }
204
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModalComponent, deps: [{ token: i1.Overlay }, { token: i0.Renderer2 }, { token: MODAL_CLOSE, optional: true }, { token: i2.ConfigurableFocusTrapFactory }], target: i0.ɵɵFactoryTarget.Component }); }
205
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: ModalComponent, isStandalone: true, selector: "lx-modal", inputs: { open: "open", showCloseButton: "showCloseButton", showBackButton: "showBackButton", verticalScroll: "verticalScroll", size: "size", minWidth: "minWidth", isFocusTrap: "isFocusTrap", canModalBeClosed: "canModalBeClosed" }, outputs: { close: "close", back: "back" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, queries: [{ propertyName: "header", first: true, predicate: ModalHeaderComponent, descendants: true }, { propertyName: "footer", first: true, predicate: ModalFooterComponent, descendants: true }, { propertyName: "explicitContent", first: true, predicate: ModalContentDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "cdkPortal", first: true, predicate: CdkPortal, descendants: true, static: true }, { propertyName: "implicitContent", first: true, predicate: ["implicitContent"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template cdkPortal>\n @if (open) {\n <div\n role=\"dialog\"\n class=\"lxmodal\"\n [class.lxmodal--fullscreen]=\"size === 'fullscreen'\"\n [class.lxmodal--dialog]=\"size === 'dialog'\"\n [class.lxmodal--dialog-large]=\"size === 'dialog-large'\"\n [class.lxmodal--withFooter]=\"!!footer\"\n [class.lxmodal--verticalScroll]=\"verticalScroll\"\n @modal\n >\n @if (size === 'fullscreen' && showBackButton) {\n <div (click)=\"emitBack()\" (keyup.enter)=\"emitBack()\" tabindex=\"0\" role=\"button\" class=\"fal fa-long-arrow-left\"></div>\n }\n @if (showCloseButton) {\n <!-- TODO lx-button doesn't comply with modal close button style yet -->\n <!-- eslint-disable-next-line @nx/workspace-no-icon-in-button-content -->\n <button\n (click)=\"closeModal(closeLocation.CloseButton)\"\n [attr.aria-label]=\"NAME + '.close' | translate\"\n class=\"fal fa-times closeButton\"\n ></button>\n }\n @if (header) {\n <ng-content select=\"lx-modal-header\" />\n }\n <div class=\"modalContentContainer\" [class.lxThinScrollbar]=\"verticalScroll\">\n <ng-container *ngTemplateOutlet=\"content\" />\n </div>\n @if (footer) {\n <ng-content select=\"lx-modal-footer\" />\n }\n </div>\n }\n</ng-template>\n<ng-template #implicitContent>\n <ng-content />\n</ng-template>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.lxmodal{background:#fff;width:100%}.lxmodal--withFooter.lxmodal--fullscreen.lxmodal--verticalScroll .modalContentContainer{overflow-y:auto;padding:16px}.lxmodal--withFooter.lxmodal--fullscreen:not(.lxmodal--verticalScroll) .modalContentContainer{bottom:70px;overflow:hidden}.lxmodal--verticalScroll .modalContentContainer{overflow-y:auto;padding:16px}.lxmodal--fullscreen{height:100%;display:flex;flex-direction:column}.lxmodal--fullscreen .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:color,background-color .18s;transition-delay:.1s;transition-timing-function:ease;border-radius:50%;color:#61779d;font-size:26px;width:48px;height:48px;line-height:48px;right:36px;top:12px;z-index:1}.lxmodal--fullscreen .closeButton:before{cursor:pointer}.lxmodal--fullscreen .closeButton:hover,.lxmodal--fullscreen .closeButton:focus{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .closeButton:focus{outline:0}.lxmodal--fullscreen .fa-long-arrow-left{border:0;background:transparent;position:absolute;text-align:center;transition:color,background-color .18s;transition-delay:.1s;transition-timing-function:ease;border-radius:50%;color:#61779d;font-size:26px;width:48px;height:48px;line-height:48px;left:36px;top:16px}.lxmodal--fullscreen .fa-long-arrow-left:before{cursor:pointer}.lxmodal--fullscreen .fa-long-arrow-left:hover,.lxmodal--fullscreen .fa-long-arrow-left:focus{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .fa-long-arrow-left:focus{outline:0}.lxmodal--dialog,.lxmodal--dialog-large{display:block;position:relative;border-radius:6px;box-shadow:0 8px 20px #0000003d}.lxmodal--dialog .modalContentContainer,.lxmodal--dialog-large .modalContentContainer{position:relative}.lxmodal--dialog .closeButton,.lxmodal--dialog-large .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:color,background-color .18s;transition-delay:.1s;transition-timing-function:ease;border-radius:50%;color:#61779d;font-size:26px;height:32px;width:32px;z-index:999;right:10px;top:20px}.lxmodal--dialog .closeButton:before,.lxmodal--dialog-large .closeButton:before{cursor:pointer}.lxmodal--dialog .closeButton:hover,.lxmodal--dialog .closeButton:focus,.lxmodal--dialog-large .closeButton:hover,.lxmodal--dialog-large .closeButton:focus{color:#526179;background-color:#eaedf1}.lxmodal--dialog .closeButton:focus,.lxmodal--dialog-large .closeButton:focus{outline:0}.lxmodal--dialog .modalContentContainer{padding:16px 16px 0}.lxmodal--dialog.lxmodal--verticalScroll .modalContentContainer{padding:16px;max-height:calc(84vh - 136px)}.lxmodal--dialog-large .modalContentContainer{padding:16px;height:calc(100% - 136px)}.modalContentContainer{flex:1}\n"], dependencies: [{ kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i3.CdkPortal, selector: "[cdkPortal]", exportAs: ["cdkPortal"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }], animations: [
206
- trigger('modal', [
207
- transition(':enter', [style({ opacity: 0 }), animate('0.15s', style({ opacity: 1 }))]),
208
- transition(':leave', animate('0.15s', style({ opacity: 0 })))
209
- ])
210
- ] }); }
211
- }
212
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModalComponent, decorators: [{
213
- type: Component,
214
- args: [{ selector: 'lx-modal', animations: [
215
- trigger('modal', [
216
- transition(':enter', [style({ opacity: 0 }), animate('0.15s', style({ opacity: 1 }))]),
217
- transition(':leave', animate('0.15s', style({ opacity: 0 })))
218
- ])
219
- ], standalone: true, imports: [PortalModule, NgTemplateOutlet, TranslateModule, CommonModule], template: "<ng-template cdkPortal>\n @if (open) {\n <div\n role=\"dialog\"\n class=\"lxmodal\"\n [class.lxmodal--fullscreen]=\"size === 'fullscreen'\"\n [class.lxmodal--dialog]=\"size === 'dialog'\"\n [class.lxmodal--dialog-large]=\"size === 'dialog-large'\"\n [class.lxmodal--withFooter]=\"!!footer\"\n [class.lxmodal--verticalScroll]=\"verticalScroll\"\n @modal\n >\n @if (size === 'fullscreen' && showBackButton) {\n <div (click)=\"emitBack()\" (keyup.enter)=\"emitBack()\" tabindex=\"0\" role=\"button\" class=\"fal fa-long-arrow-left\"></div>\n }\n @if (showCloseButton) {\n <!-- TODO lx-button doesn't comply with modal close button style yet -->\n <!-- eslint-disable-next-line @nx/workspace-no-icon-in-button-content -->\n <button\n (click)=\"closeModal(closeLocation.CloseButton)\"\n [attr.aria-label]=\"NAME + '.close' | translate\"\n class=\"fal fa-times closeButton\"\n ></button>\n }\n @if (header) {\n <ng-content select=\"lx-modal-header\" />\n }\n <div class=\"modalContentContainer\" [class.lxThinScrollbar]=\"verticalScroll\">\n <ng-container *ngTemplateOutlet=\"content\" />\n </div>\n @if (footer) {\n <ng-content select=\"lx-modal-footer\" />\n }\n </div>\n }\n</ng-template>\n<ng-template #implicitContent>\n <ng-content />\n</ng-template>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.lxmodal{background:#fff;width:100%}.lxmodal--withFooter.lxmodal--fullscreen.lxmodal--verticalScroll .modalContentContainer{overflow-y:auto;padding:16px}.lxmodal--withFooter.lxmodal--fullscreen:not(.lxmodal--verticalScroll) .modalContentContainer{bottom:70px;overflow:hidden}.lxmodal--verticalScroll .modalContentContainer{overflow-y:auto;padding:16px}.lxmodal--fullscreen{height:100%;display:flex;flex-direction:column}.lxmodal--fullscreen .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:color,background-color .18s;transition-delay:.1s;transition-timing-function:ease;border-radius:50%;color:#61779d;font-size:26px;width:48px;height:48px;line-height:48px;right:36px;top:12px;z-index:1}.lxmodal--fullscreen .closeButton:before{cursor:pointer}.lxmodal--fullscreen .closeButton:hover,.lxmodal--fullscreen .closeButton:focus{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .closeButton:focus{outline:0}.lxmodal--fullscreen .fa-long-arrow-left{border:0;background:transparent;position:absolute;text-align:center;transition:color,background-color .18s;transition-delay:.1s;transition-timing-function:ease;border-radius:50%;color:#61779d;font-size:26px;width:48px;height:48px;line-height:48px;left:36px;top:16px}.lxmodal--fullscreen .fa-long-arrow-left:before{cursor:pointer}.lxmodal--fullscreen .fa-long-arrow-left:hover,.lxmodal--fullscreen .fa-long-arrow-left:focus{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .fa-long-arrow-left:focus{outline:0}.lxmodal--dialog,.lxmodal--dialog-large{display:block;position:relative;border-radius:6px;box-shadow:0 8px 20px #0000003d}.lxmodal--dialog .modalContentContainer,.lxmodal--dialog-large .modalContentContainer{position:relative}.lxmodal--dialog .closeButton,.lxmodal--dialog-large .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:color,background-color .18s;transition-delay:.1s;transition-timing-function:ease;border-radius:50%;color:#61779d;font-size:26px;height:32px;width:32px;z-index:999;right:10px;top:20px}.lxmodal--dialog .closeButton:before,.lxmodal--dialog-large .closeButton:before{cursor:pointer}.lxmodal--dialog .closeButton:hover,.lxmodal--dialog .closeButton:focus,.lxmodal--dialog-large .closeButton:hover,.lxmodal--dialog-large .closeButton:focus{color:#526179;background-color:#eaedf1}.lxmodal--dialog .closeButton:focus,.lxmodal--dialog-large .closeButton:focus{outline:0}.lxmodal--dialog .modalContentContainer{padding:16px 16px 0}.lxmodal--dialog.lxmodal--verticalScroll .modalContentContainer{padding:16px;max-height:calc(84vh - 136px)}.lxmodal--dialog-large .modalContentContainer{padding:16px;height:calc(100% - 136px)}.modalContentContainer{flex:1}\n"] }]
220
- }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.Renderer2 }, { type: i5.Observable, decorators: [{
221
- type: Optional
222
- }, {
223
- type: Inject,
224
- args: [MODAL_CLOSE]
225
- }] }, { type: i2.ConfigurableFocusTrapFactory }], propDecorators: { open: [{
226
- type: Input
227
- }], showCloseButton: [{
228
- type: Input
229
- }], showBackButton: [{
230
- type: Input
231
- }], verticalScroll: [{
232
- type: Input
233
- }], size: [{
234
- type: Input
235
- }], minWidth: [{
236
- type: Input
237
- }], isFocusTrap: [{
238
- type: Input
239
- }], canModalBeClosed: [{
240
- type: Input
241
- }], close: [{
242
- type: Output
243
- }], back: [{
244
- type: Output
245
- }], header: [{
246
- type: ContentChild,
247
- args: [ModalHeaderComponent]
248
- }], footer: [{
249
- type: ContentChild,
250
- args: [ModalFooterComponent]
251
- }], cdkPortal: [{
252
- type: ViewChild,
253
- args: [CdkPortal, { static: true }]
254
- }], implicitContent: [{
255
- type: ViewChild,
256
- args: ['implicitContent', { static: true }]
257
- }], explicitContent: [{
258
- type: ContentChild,
259
- args: [ModalContentDirective, { read: TemplateRef, static: true }]
260
- }], onEscape: [{
261
- type: HostListener,
262
- args: ['document:keydown.escape']
263
- }] } });
264
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvbW9kYWwtdWkvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC11aS9jb21wb25lbnRzL21vZGFsL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUcxRSxPQUFPLEVBQUUsU0FBUyxFQUFVLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRSxPQUFPLEVBRUwsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBSUwsUUFBUSxFQUNSLE1BQU0sRUFFTixXQUFXLEVBQ1gsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQWMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxvQkFBb0Is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O2dCQUVHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVJLEtBQUs7c0JBQWQsTUFBTTtnQkFFRyxJQUFJO3NCQUFiLE1BQU07Z0JBRzZCLE1BQU07c0JBQXpDLFlBQVk7dUJBQUMsb0JBQW9CO2dCQUVFLE1BQU07c0JBQXpDLFlBQVk7dUJBQUMsb0JBQW9CO2dCQUVNLFNBQVM7c0JBQWhELFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFVVSxlQUFlO3NCQUE5RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFHNEIsZUFBZTtzQkFBeEYsWUFBWTt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFPL0IsUUFBUTtzQkFBaEQsWUFBWTt1QkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29uZmlndXJhYmxlRm9jdXNUcmFwRmFjdG9yeSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDZGtQb3J0YWwsIFBvcnRhbCwgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNb2RhbENvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL21vZGFsLWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IE1PREFMX0NMT1NFLCBNb2RhbENsb3NlQ2xpY2tMb2NhdGlvbiB9IGZyb20gJy4uLy4uL21vZGFsLmNvbnN0YW50cyc7XG5pbXBvcnQgeyBNb2RhbEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4uL21vZGFsLWZvb3Rlci9tb2RhbC1mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vbW9kYWwtaGVhZGVyL21vZGFsLWhlYWRlci5jb21wb25lbnQnO1xuXG4vKipcbiAqIFRoaXMgZG9jdW1lbnRhdGlvbiBwcm92aWRlcyBkZXRhaWxzIG9uIHRoZSB1c2FnZSBhbmQgY29uZmlndXJhdGlvbiBvZiB0aGUgTW9kYWwuXG4gKlxuICogIyMgVXNhZ2VcbiAqXG4gKiAxLiBJbXBvcnQgYEx4TW9kYWxNb2R1bGVgIGFuZCBgTHhDb3JlVWlNb2R1bGVgIG1vZHVsZXMgZnJvbSBgQGxlYW5peC9jb21wb25lbnRzYCBpbiB5b3VyIG1vZHVsZSB3aGVyZSB5b3Ugd2FudCB0byB1c2UgdGhlIGNvbXBvbmVudC5cbiAqXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgTHhNb2RhbE1vZHVsZSwgTHhDb3JlVWlNb2R1bGUgfSBmcm9tICdAbGVhbml4L2NvbXBvbmVudHMnO1xuICogYGBgXG4gKlxuICogMi4gVXNlIHRoZSAqKmx4LW1vZGFsKiogY29tcG9uZW50IGluIHlvdXIgdGVtcGxhdGUgd2l0aCB0aGUgcGFyYW1ldGVycyBkZXNjcmliZWQgYmVsb3cuXG4gKlxuICogLSAqKmBvcGVuYCoqOiBXaGV0aGVyIHRoZSBtb2RhbCBpcyBvcGVuIG9yIGNsb3NlZC5cbiAqIC0gKipgc2l6ZWAqKjogJ2RpYWxvZycgfCAnZGlhbG9nLWxhcmdlJy5cbiAqIC0gKipgdmVydGljYWxTY3JvbGxgKio6IFdoZXRoZXIgdGhlIG1vZGFsIGlzIHNjcm9sbGFibGUgb3Igbm90LlxuICogLSAqKmBzaG93SGVhZGVyYCoqOiBXaGV0aGVyIHRoZSBtb2RhbCBoYXMgYSBoZWFkZXIgb3Igbm90LlxuICogLSAqKmBzaG93Rm9vdGVyYCoqOiBXaGV0aGVyIHRoZSBtb2RhbCBoYXMgYSBmb290ZXIgb3Igbm90LlxuICogLSAqKmBzaG93Q2xvc2VCdXR0b25gKio6IFdoZXRoZXIgdG8gc2hvdyB0aGUgY2xvc2UgYnV0dG9uLlxuICogLSAqKmBzaG93QmFja0J1dHRvbmAqKjogV2hldGhlciB0byBzaG93IHRoZSBiYWNrIGJ1dHRvbi5cbiAqXG4gKiAzLiBVc2Ugb3B0aW9uYWwgKipseC1tb2RhbC1oZWFkZXIqKiBjb21wb25lbnQgaW4geW91ciB0ZW1wbGF0ZSB3aXRoIHRoZSBwYXJhbWV0ZXJzIGRlc2NyaWJlZCBiZWxvdy5cbiAqXG4gKiAtICoqYHRpdGxlYCoqOiBUaXRsZSBvZiB0aGUgbW9kYWwuXG4gKiAtICoqYHN1YnRpdGxlYCoqOiBTdWJ0aXRsZSBvZiB0aGUgbW9kYWwuXG4gKiAtICoqYGJvdHRvbUJvcmRlcmAqKjogV2hldGhlciB0byBzaG93IGEgYm90dG9tIGJvcmRlci5cbiAqXG4gKiA0LiBVc2Ugb3B0aW9uYWwgKipseC1tb2RhbC1mb290ZXIqKiBjb21wb25lbnQgaW4geW91ciB0ZW1wbGF0ZSB3aXRoIHRoZSBwYXJhbWV0ZXJzIGRlc2NyaWJlZCBiZWxvdy5cbiAqXG4gKiAtICoqYGJvcmRlcmAqKjogV2hldGhlciB0byBzaG93IHRoZSBmb290ZXIgYXQgdGhlIGJvdHRvbSBvZiB0aGUgbW9kYWwuXG4gKlxuICogKipHTE9CQUwgUFJPVklERVJTKiogcmVxdWlyZWQgZm9yIHRoaXMgY29tcG9uZW50OlxuICogLSBgcHJvdmlkZUFuaW1hdGlvbnMoKWBcbiAqXG4gKiAqKkFUVEVOVElPTiAtIFNDUk9MTEFCTEUgRElBTE9HKio6XG4gKiBUaGUgPGx4LW1vZGFsPiBjb21wb25lbnQgd2hlbiB1c2VkIGFzIFwiZGlhbG9nXCIgaXMgbm90IGRlc2lnbmVkIHRvIHdvcmsgd2l0aCBhXG4gKiBzY3JvbGxhYmxlIGJvZHkgKHZpYSBgb3ZlcmZsb3c6IGF1dG8gfCBzY3JvbGxgKSBpbiBjb21iaW5hdGlvbiB3aXRoIGRyb3Bkb3ducy5cbiAqIFRoZSBvdmVyZmxvdyBvbiB0aGUgYm9keSB3aWxsIGFsc28gY2xpcCB0aGUgZHJvcGRvd25zLCB3aGljaCBpcyBleHBlY3RlZC5cbiAqXG4gKiBSZWFzb25pbmc6XG4gKiBUaGUgY29udGVudHMgd2l0aGluIHRoZSBkaWFsb2cgc2hvdWxkIGJlIGp1c3QgYSBmZXcgZWxlbWVudHMgd2hpY2ggZml0IGFuZFxuICoganVzdGlmeSB0aGUgdXNhZ2Ugb2YgYSBkaWFsb2cuIElmIHRoZSBjb250ZW50IGlzIGxhcmdlciB0aGFuIHRoZSBkaWFsb2csIGFuZCB0aHVzXG4gKiByZXF1aXJlcyBzY3JvbGxpbmcsIHdlIHNob3VsZCBkaXNjdXNzIHdoZXRoZXIgdG8gcHV0IGl0IGludG8gYSBkaWFsb2cgYXQgYWxsXG4gKiBhbmQgcmF0aGVyIHRoaW5rIGFib3V0IHB1dHRpbmcgdGhlIGNvbnRlbnQgb24gYSBzZXBhcmF0ZSByb3V0ZSBvclxuICogdXNpbmcgdGhlIGZ1bGxzY3JlZW4gdmVyc2lvbiBvZiB0aGUgbW9kYWwuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2x4LW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICdtb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydtb2RhbC5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignbW9kYWwnLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbc3R5bGUoeyBvcGFjaXR5OiAwIH0pLCBhbmltYXRlKCcwLjE1cycsIHN0eWxlKHsgb3BhY2l0eTogMSB9KSldKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIGFuaW1hdGUoJzAuMTVzJywgc3R5bGUoeyBvcGFjaXR5OiAwIH0pKSlcbiAgICBdKVxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbUG9ydGFsTW9kdWxlLCBOZ1RlbXBsYXRlT3V0bGV0LCBUcmFuc2xhdGVNb2R1bGUsIENvbW1vbk1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcbiAgLyoqIEBpbnRlcm5hbCAqL1xuICByZWFkb25seSBOQU1FID0gJ01vZGFsQ29tcG9uZW50JztcbiAgLyoqIFdoZXRoZXIgdGhlIG1vZGFsIGlzIG9wZW4gb3IgY2xvc2VkLiAqL1xuICBASW5wdXQoKSBvcGVuOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBXaGV0aGVyIHRvIHNob3cgdGhlIGNsb3NlIGJ1dHRvbi4gKi9cbiAgQElucHV0KCkgc2hvd0Nsb3NlQnV0dG9uID0gdHJ1ZTtcbiAgLyoqIFdoZXRoZXIgdG8gc2hvdyB0aGUgYmFjayBidXR0b24uICovXG4gIEBJbnB1dCgpIHNob3dCYWNrQnV0dG9uID0gZmFsc2U7XG4gIC8qXG4gICAqIElmIHRydWUsIHRoZW4gdGhlIGNvbnRlbnQgYXJlYSBzY3JvbGxzIHZlcnRpY2FsbHkgaW5zdGVhZCBvZiBleHBhbmRpbmcgaXRzIGhlaWdodC5cbiAgICogVGhpcyBjYW4gYmUgYSBwcm9ibGVtIGlmIHRoZSBjb250ZW50IGhhcyBkcm9wZG93bnMgb3IgZGF0ZSBpbnB1dHMsIGJ1dCBjYW4gYmUgZ29vZCBpZiB0aGUgY29udGVudCBoYXMgYSBodWdlIGFtb3VudCBvZiB0ZXh0LlxuICAgKi9cbiAgQElucHV0KCkgdmVydGljYWxTY3JvbGwgPSBmYWxzZTtcbiAgLyoqIFRoZSBzaXplIG9mIHRoZSBtb2RhbC4gKi9cbiAgQElucHV0KCkgc2l6ZTogJ2Z1bGxzY3JlZW4nIHwgJ2RpYWxvZy1sYXJnZScgfCAnZGlhbG9nJyA9ICdmdWxsc2NyZWVuJztcbiAgLyoqXG4gICAqIE1pbmltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuICAgKlxuICAgKiBfTkI6IFNvbWUgbW9kYWwgaW1wbGVtZW50YXRpb25zIHJlbHkgb24gdGhpcyBtaW5XaWR0aCBiZWluZyA2MDBweF9cbiAgICovXG4gIEBJbnB1dCgpIG1pbldpZHRoOiBzdHJpbmcgPSAnNjAwcHgnO1xuICAvKiogV2hldGhlciB0aGUgbW9kYWwgaXMgYSBmb2N1cyB0cmFwLiAqL1xuICBASW5wdXQoKSBpc0ZvY3VzVHJhcDogYm9vbGVhbiA9IGZhbHNlO1xuICAvKiogRnVuY3Rpb24gdG8gY2hlY2sgaWYgdGhlIG1vZGFsIGNhbiBiZSBjbG9zZWQuICovXG4gIEBJbnB1dCgpIGNhbk1vZGFsQmVDbG9zZWQ/OiAoY2xvc2VMb2NhdGlvbjogTW9kYWxDbG9zZUNsaWNrTG9jYXRpb24gfCBib29sZWFuKSA9PiBQcm9taXNlPGJvb2xlYW4+O1xuICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBtb2RhbCBpcyBjbG9zZWQuICovXG4gIEBPdXRwdXQoKSBjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8TW9kYWxDbG9zZUNsaWNrTG9jYXRpb24+KCk7XG4gIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGJhY2sgYnV0dG9uIGlzIGNsaWNrZWQuICovXG4gIEBPdXRwdXQoKSBiYWNrID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgQENvbnRlbnRDaGlsZChNb2RhbEhlYWRlckNvbXBvbmVudCkgaGVhZGVyPzogTW9kYWxIZWFkZXJDb21wb25lbnQ7XG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgQENvbnRlbnRDaGlsZChNb2RhbEZvb3RlckNvbXBvbmVudCkgZm9vdGVyPzogTW9kYWxGb290ZXJDb21wb25lbnQ7XG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgQFZpZXdDaGlsZChDZGtQb3J0YWwsIHsgc3RhdGljOiB0cnVlIH0pIGNka1BvcnRhbCE6IFBvcnRhbDxDZGtQb3J0YWw+O1xuICBwcml2YXRlIG92ZXJsYXlSZWYhOiBPdmVybGF5UmVmO1xuICBwcml2YXRlIG9sZE92ZXJmbG93Pzogc3RyaW5nO1xuICAvKiogQGludGVybmFsICovXG4gIGNsb3NlTG9jYXRpb24gPSBNb2RhbENsb3NlQ2xpY2tMb2NhdGlvbjtcblxuICAvKiogQGludGVybmFsICovXG4gIHJlYWRvbmx5IGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgQFZpZXdDaGlsZCgnaW1wbGljaXRDb250ZW50JywgeyBzdGF0aWM6IHRydWUgfSkgaW1wbGljaXRDb250ZW50ITogVGVtcGxhdGVSZWY8YW55PjtcblxuICAvKiogQGludGVybmFsICovXG4gIEBDb250ZW50Q2hpbGQoTW9kYWxDb250ZW50RGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWUgfSkgZXhwbGljaXRDb250ZW50PzogVGVtcGxhdGVSZWY8YW55PjtcblxuICBnZXQgY29udGVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5leHBsaWNpdENvbnRlbnQgfHwgdGhpcy5pbXBsaWNpdENvbnRlbnQ7XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZXNjYXBlJykgb25Fc2NhcGUoKSB7XG4gICAgaWYgKHRoaXMub3BlbiAmJiB0aGlzLnNob3dDbG9zZUJ1dHRvbikge1xuICAgICAgdGhpcy5jbG9zZU1vZGFsKE1vZGFsQ2xvc2VDbGlja0xvY2F0aW9uLkVzY2FwZSk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1PREFMX0NMT1NFKSBwcml2YXRlIGNsb3NlTW9kYWwkOiBPYnNlcnZhYmxlPE1vZGFsQ2xvc2VDbGlja0xvY2F0aW9uIHwgYm9vbGVhbj4sXG4gICAgcHJpdmF0ZSBmb2N1c1RyYXA6IENvbmZpZ3VyYWJsZUZvY3VzVHJhcEZhY3RvcnlcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY2xvc2VNb2RhbCRcbiAgICAgID8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGNsb3NlTG9jYXRpb246IE1vZGFsQ2xvc2VDbGlja0xvY2F0aW9uIHwgYm9vbGVhbikgPT4gdGhpcy5jbG9zZU1vZGFsKGNsb3NlTG9jYXRpb24pKTtcblxuICAgIGlmICh0aGlzLnNpemUgPT09ICdmdWxsc2NyZWVuJykge1xuICAgICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZSh7XG4gICAgICAgIHBhbmVsQ2xhc3M6IHRoaXMuc2l6ZSxcbiAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgaGVpZ2h0OiAnMTAwdmgnXG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2l6ZSA9PT0gJ2RpYWxvZy1sYXJnZScpIHtcbiAgICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKS50b3AoJzR2aCcpLmNlbnRlckhvcml6b250YWxseSgpO1xuICAgICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZSh7XG4gICAgICAgIHBhbmVsQ2xhc3M6IHRoaXMuc2l6ZSxcbiAgICAgICAgcG9zaXRpb25TdHJhdGVneSxcbiAgICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICAgIHdpZHRoOiAnOTAlJyxcbiAgICAgICAgaGVpZ2h0OiAnOTB2aCdcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBzaXplICdkaWFsb2cnXG4gICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKCkudG9wKCc4dmgnKS5jZW50ZXJIb3Jpem9udGFsbHkoKTtcbiAgICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoe1xuICAgICAgICBwYW5lbENsYXNzOiB0aGlzLnNpemUsXG4gICAgICAgIG1pbldpZHRoOiB0aGlzLm1pbldpZHRoLFxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKClcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNpemUgIT09ICdmdWxsc2NyZWVuJykge1xuICAgICAgdGhpcy5vdmVybGF5UmVmXG4gICAgICAgIC5iYWNrZHJvcENsaWNrKClcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZU1vZGFsKE1vZGFsQ2xvc2VDbGlja0xvY2F0aW9uLk91dHNpZGVDbGljaykpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLm9wZW4gJiYgdGhpcy5vdmVybGF5UmVmICYmICF0aGlzLm92ZXJsYXlSZWYuaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLm9wZW4gJiYgdGhpcy5vdmVybGF5UmVmICYmIHRoaXMub3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpKSB7XG4gICAgICB0aGlzLmNsb3NlTW9kYWwoTW9kYWxDbG9zZUNsaWNrTG9jYXRpb24uT3RoZXIpO1xuICAgIH1cbiAgICBpZiAodGhpcy5vcGVuICYmIHRoaXMub3ZlcmxheVJlZiAmJiB0aGlzLm92ZXJsYXlSZWYuaGFzQXR0YWNoZWQoKSAmJiB0aGlzLmlzRm9jdXNUcmFwKSB7XG4gICAgICB0aGlzLnRyYXBGb2N1c0luTW9kYWwodGhpcy5vdmVybGF5UmVmLmhvc3RFbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMub3Blbikge1xuICAgICAgdGltZXIoMClcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vcGVuTW9kYWwoKSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBvcGVuTW9kYWwoKSB7XG4gICAgdGhpcy5vbGRPdmVyZmxvdyA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5vdmVyZmxvd1k7XG4gICAgaWYgKHRoaXMuc2l6ZSA9PT0gJ2Z1bGxzY3JlZW4nKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCwgJ292ZXJmbG93WScsICdoaWRkZW4nKTtcbiAgICB9XG5cbiAgICB0aGlzLm92ZXJsYXlSZWYuYXR0YWNoKHRoaXMuY2RrUG9ydGFsKTtcbiAgICB0aGlzLnRyYXBGb2N1c0luTW9kYWwodGhpcy5vdmVybGF5UmVmLmhvc3RFbGVtZW50KTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgZW1pdEJhY2soKSB7XG4gICAgdGhpcy5iYWNrLmVtaXQoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KCk7XG5cbiAgICBpZiAodGhpcy5zaXplID09PSAnZnVsbHNjcmVlbicpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LCAnb3ZlcmZsb3dZJywgdGhpcy5vbGRPdmVyZmxvdyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMub3ZlcmxheVJlZikge1xuICAgICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIGFzeW5jIGNsb3NlTW9kYWwoY2xvc2VMb2NhdGlvbjogTW9kYWxDbG9zZUNsaWNrTG9jYXRpb24gfCBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmNhbk1vZGFsQmVDbG9zZWQgfHwgKGF3YWl0IHRoaXMuY2FuTW9kYWxCZUNsb3NlZChjbG9zZUxvY2F0aW9uKSkpIHtcbiAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgICAgdGhpcy5vdmVybGF5UmVmLmRldGFjaCgpO1xuXG4gICAgICBpZiAodGhpcy5zaXplID09PSAnZnVsbHNjcmVlbicpIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsICdvdmVyZmxvd1knLCB0aGlzLm9sZE92ZXJmbG93KTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jbG9zZS5lbWl0KHR5cGVvZiBjbG9zZUxvY2F0aW9uID09PSAnYm9vbGVhbicgPyBNb2RhbENsb3NlQ2xpY2tMb2NhdGlvbi5PdGhlciA6IGNsb3NlTG9jYXRpb24pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdHJhcEZvY3VzSW5Nb2RhbChob3N0RWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLmZvY3VzVHJhcC5jcmVhdGUoaG9zdEVsZW1lbnQpO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgY2RrUG9ydGFsPlxuICBAaWYgKG9wZW4pIHtcbiAgICA8ZGl2XG4gICAgICByb2xlPVwiZGlhbG9nXCJcbiAgICAgIGNsYXNzPVwibHhtb2RhbFwiXG4gICAgICBbY2xhc3MubHhtb2RhbC0tZnVsbHNjcmVlbl09XCJzaXplID09PSAnZnVsbHNjcmVlbidcIlxuICAgICAgW2NsYXNzLmx4bW9kYWwtLWRpYWxvZ109XCJzaXplID09PSAnZGlhbG9nJ1wiXG4gICAgICBbY2xhc3MubHhtb2RhbC0tZGlhbG9nLWxhcmdlXT1cInNpemUgPT09ICdkaWFsb2ctbGFyZ2UnXCJcbiAgICAgIFtjbGFzcy5seG1vZGFsLS13aXRoRm9vdGVyXT1cIiEhZm9vdGVyXCJcbiAgICAgIFtjbGFzcy5seG1vZGFsLS12ZXJ0aWNhbFNjcm9sbF09XCJ2ZXJ0aWNhbFNjcm9sbFwiXG4gICAgICBAbW9kYWxcbiAgICA+XG4gICAgICBAaWYgKHNpemUgPT09ICdmdWxsc2NyZWVuJyAmJiBzaG93QmFja0J1dHRvbikge1xuICAgICAgICA8ZGl2IChjbGljayk9XCJlbWl0QmFjaygpXCIgKGtleXVwLmVudGVyKT1cImVtaXRCYWNrKClcIiB0YWJpbmRleD1cIjBcIiByb2xlPVwiYnV0dG9uXCIgY2xhc3M9XCJmYWwgZmEtbG9uZy1hcnJvdy1sZWZ0XCI+PC9kaXY+XG4gICAgICB9XG4gICAgICBAaWYgKHNob3dDbG9zZUJ1dHRvbikge1xuICAgICAgICA8IS0tIFRPRE8gbHgtYnV0dG9uIGRvZXNuJ3QgY29tcGx5IHdpdGggbW9kYWwgY2xvc2UgYnV0dG9uIHN0eWxlIHlldCAtLT5cbiAgICAgICAgPCEtLSBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQG54L3dvcmtzcGFjZS1uby1pY29uLWluLWJ1dHRvbi1jb250ZW50IC0tPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImNsb3NlTW9kYWwoY2xvc2VMb2NhdGlvbi5DbG9zZUJ1dHRvbilcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiTkFNRSArICcuY2xvc2UnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICBjbGFzcz1cImZhbCBmYS10aW1lcyBjbG9zZUJ1dHRvblwiXG4gICAgICAgID48L2J1dHRvbj5cbiAgICAgIH1cbiAgICAgIEBpZiAoaGVhZGVyKSB7XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImx4LW1vZGFsLWhlYWRlclwiIC8+XG4gICAgICB9XG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWxDb250ZW50Q29udGFpbmVyXCIgW2NsYXNzLmx4VGhpblNjcm9sbGJhcl09XCJ2ZXJ0aWNhbFNjcm9sbFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIEBpZiAoZm9vdGVyKSB7XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImx4LW1vZGFsLWZvb3RlclwiIC8+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH1cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2ltcGxpY2l0Q29udGVudD5cbiAgPG5nLWNvbnRlbnQgLz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,16 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ModalFooterComponent {
4
- constructor() {
5
- this.border = false;
6
- }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModalFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: ModalFooterComponent, isStandalone: true, selector: "lx-modal-footer", inputs: { border: "border" }, ngImport: i0, template: "<div class=\"footerContainer\" [class.border]=\"border\">\n <ng-content />\n</div>\n", styles: [":host{display:block;text-align:right;--modal-footer-padding-left: 90px;--modal-footer-padding-right: 0;--modal-footer-display: block}:host-context(.fullscreen) .footerContainer{padding-left:var(--modal-footer-padding-left);padding-right:var(--modal-footer-padding-right);height:70px}:host-context(.dialog) .footerContainer,:host-context(.dialog-large) .footerContainer{padding:16px;height:64px;border-radius:0 0 6px 6px;display:var(--modal-footer-display)}.footerContainer.border{border-top:1px solid #cfd5df}\n"] }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModalFooterComponent, decorators: [{
11
- type: Component,
12
- args: [{ selector: 'lx-modal-footer', standalone: true, template: "<div class=\"footerContainer\" [class.border]=\"border\">\n <ng-content />\n</div>\n", styles: [":host{display:block;text-align:right;--modal-footer-padding-left: 90px;--modal-footer-padding-right: 0;--modal-footer-display: block}:host-context(.fullscreen) .footerContainer{padding-left:var(--modal-footer-padding-left);padding-right:var(--modal-footer-padding-right);height:70px}:host-context(.dialog) .footerContainer,:host-context(.dialog-large) .footerContainer{padding:16px;height:64px;border-radius:0 0 6px 6px;display:var(--modal-footer-display)}.footerContainer.border{border-top:1px solid #cfd5df}\n"] }]
13
- }], propDecorators: { border: [{
14
- type: Input
15
- }] } });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL21vZGFsLXVpL2NvbXBvbmVudHMvbW9kYWwtZm9vdGVyL21vZGFsLWZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC11aS9jb21wb25lbnRzL21vZGFsLWZvb3Rlci9tb2RhbC1mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUWpELE1BQU0sT0FBTyxvQkFBb0I7SUFOakM7UUFPVyxXQUFNLEdBQVksS0FBSyxDQUFDO0tBQ2xDOzhHQUZZLG9CQUFvQjtrR0FBcEIsb0JBQW9CLHlHQ1JqQyx1RkFHQTs7MkZES2Esb0JBQW9CO2tCQU5oQyxTQUFTOytCQUNFLGlCQUFpQixjQUdmLElBQUk7OEJBR1AsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdseC1tb2RhbC1mb290ZXInLFxuICB0ZW1wbGF0ZVVybDogJ21vZGFsLWZvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydtb2RhbC1mb290ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBNb2RhbEZvb3RlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGJvcmRlcjogYm9vbGVhbiA9IGZhbHNlO1xufVxuIiwiPGRpdiBjbGFzcz1cImZvb3RlckNvbnRhaW5lclwiIFtjbGFzcy5ib3JkZXJdPVwiYm9yZGVyXCI+XG4gIDxuZy1jb250ZW50IC8+XG48L2Rpdj5cbiJdfQ==
@@ -1,19 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ModalHeaderComponent {
4
- constructor() {
5
- this.title = '';
6
- this.bottomBorder = true;
7
- }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModalHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: ModalHeaderComponent, isStandalone: true, selector: "lx-modal-header", inputs: { title: "title", bottomBorder: "bottomBorder" }, ngImport: i0, template: "<div class=\"headerContainer\" [class.bottomBorder]=\"bottomBorder\">\n <ng-content />\n @if (title.length > 0) {\n <h1 class=\"lx-heading-2\">{{ title }}</h1>\n }\n</div>\n", styles: [":host{display:block}:host.lxModalHeaderOneLine h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:var(--lx-modal-header-max-width)}:host-context(.fullscreen) .headerContainer{padding:24px 90px;border-bottom:none}:host-context(.fullscreen) .headerContainer.bottomBorder{border-bottom:1px solid #cfd5df}:host-context(.dialog) .headerContainer,:host-context(.dialog-large) .headerContainer{padding:24px 16px;border-radius:6px 6px 0 0}:host-context(.dialog) .headerContainer h1,:host-context(.dialog-large) .headerContainer h1{word-break:break-word}h1{margin:0 auto;padding:0;color:#2a303d;text-align:center}.headerContainer{display:flex}.headerContainer.bottomBorder{border-bottom:1px solid #cfd5df}\n"] }); }
10
- }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModalHeaderComponent, decorators: [{
12
- type: Component,
13
- args: [{ selector: 'lx-modal-header', standalone: true, template: "<div class=\"headerContainer\" [class.bottomBorder]=\"bottomBorder\">\n <ng-content />\n @if (title.length > 0) {\n <h1 class=\"lx-heading-2\">{{ title }}</h1>\n }\n</div>\n", styles: [":host{display:block}:host.lxModalHeaderOneLine h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:var(--lx-modal-header-max-width)}:host-context(.fullscreen) .headerContainer{padding:24px 90px;border-bottom:none}:host-context(.fullscreen) .headerContainer.bottomBorder{border-bottom:1px solid #cfd5df}:host-context(.dialog) .headerContainer,:host-context(.dialog-large) .headerContainer{padding:24px 16px;border-radius:6px 6px 0 0}:host-context(.dialog) .headerContainer h1,:host-context(.dialog-large) .headerContainer h1{word-break:break-word}h1{margin:0 auto;padding:0;color:#2a303d;text-align:center}.headerContainer{display:flex}.headerContainer.bottomBorder{border-bottom:1px solid #cfd5df}\n"] }]
14
- }], propDecorators: { title: [{
15
- type: Input
16
- }], bottomBorder: [{
17
- type: Input
18
- }] } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL21vZGFsLXVpL2NvbXBvbmVudHMvbW9kYWwtaGVhZGVyL21vZGFsLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC11aS9jb21wb25lbnRzL21vZGFsLWhlYWRlci9tb2RhbC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUWpELE1BQU0sT0FBTyxvQkFBb0I7SUFOakM7UUFPa0IsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixpQkFBWSxHQUFZLElBQUksQ0FBQztLQUM5Qzs4R0FIWSxvQkFBb0I7a0dBQXBCLG9CQUFvQixxSUNSakMscUxBTUE7OzJGREVhLG9CQUFvQjtrQkFOaEMsU0FBUzsrQkFDRSxpQkFBaUIsY0FHZixJQUFJOzhCQUdBLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbHgtbW9kYWwtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICdtb2RhbC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnbW9kYWwtaGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxIZWFkZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgdGl0bGU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgYm90dG9tQm9yZGVyOiBib29sZWFuID0gdHJ1ZTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJoZWFkZXJDb250YWluZXJcIiBbY2xhc3MuYm90dG9tQm9yZGVyXT1cImJvdHRvbUJvcmRlclwiPlxuICA8bmctY29udGVudCAvPlxuICBAaWYgKHRpdGxlLmxlbmd0aCA+IDApIHtcbiAgICA8aDEgY2xhc3M9XCJseC1oZWFkaW5nLTJcIj57eyB0aXRsZSB9fTwvaDE+XG4gIH1cbjwvZGl2PlxuIl19
@@ -1,14 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ModalContentDirective {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModalContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: ModalContentDirective, isStandalone: true, selector: "[lxModalContent]", ngImport: i0 }); }
6
- }
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: ModalContentDirective, decorators: [{
8
- type: Directive,
9
- args: [{
10
- selector: '[lxModalContent]',
11
- standalone: true
12
- }]
13
- }] });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY29udGVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC11aS9kaXJlY3RpdmVzL21vZGFsLWNvbnRlbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTFDLE1BQU0sT0FBTyxxQkFBcUI7OEdBQXJCLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbHhNb2RhbENvbnRlbnRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBNb2RhbENvbnRlbnREaXJlY3RpdmUge31cbiJdfQ==
@@ -1,18 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- export const MODAL_CLOSE = new InjectionToken('MODAL_CLOSE');
3
- /**
4
- * An enum to track how the modal was closed
5
- * Escape - Esc key press
6
- * CloseButton - top right close button (x)
7
- * OutsideClick - click outside the modal
8
- * Other - modal close with the trigger through closeModal$ subject
9
- */
10
- export var ModalCloseClickLocation;
11
- (function (ModalCloseClickLocation) {
12
- ModalCloseClickLocation["Escape"] = "escape";
13
- ModalCloseClickLocation["CloseButton"] = "closeButton";
14
- ModalCloseClickLocation["OutsideClick"] = "outsideClick";
15
- ModalCloseClickLocation["CancelButton"] = "cancelButton";
16
- ModalCloseClickLocation["Other"] = "other";
17
- })(ModalCloseClickLocation || (ModalCloseClickLocation = {}));
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvbW9kYWwtdWkvbW9kYWwuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFnRCxhQUFhLENBQUMsQ0FBQztBQUU1Rzs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQU4sSUFBWSx1QkFNWDtBQU5ELFdBQVksdUJBQXVCO0lBQ2pDLDRDQUFpQixDQUFBO0lBQ2pCLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0lBQzdCLHdEQUE2QixDQUFBO0lBQzdCLDBDQUFlLENBQUE7QUFDakIsQ0FBQyxFQU5XLHVCQUF1QixLQUF2Qix1QkFBdUIsUUFNbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY29uc3QgTU9EQUxfQ0xPU0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48T2JzZXJ2YWJsZTxNb2RhbENsb3NlQ2xpY2tMb2NhdGlvbiB8IGJvb2xlYW4+PignTU9EQUxfQ0xPU0UnKTtcblxuLyoqXG4gKiBBbiBlbnVtIHRvIHRyYWNrIGhvdyB0aGUgbW9kYWwgd2FzIGNsb3NlZFxuICogRXNjYXBlIC0gRXNjIGtleSBwcmVzc1xuICogQ2xvc2VCdXR0b24gLSB0b3AgcmlnaHQgY2xvc2UgYnV0dG9uICh4KVxuICogT3V0c2lkZUNsaWNrIC0gY2xpY2sgb3V0c2lkZSB0aGUgbW9kYWxcbiAqIE90aGVyIC0gbW9kYWwgY2xvc2Ugd2l0aCB0aGUgdHJpZ2dlciB0aHJvdWdoIGNsb3NlTW9kYWwkIHN1YmplY3RcbiAqL1xuZXhwb3J0IGVudW0gTW9kYWxDbG9zZUNsaWNrTG9jYXRpb24ge1xuICBFc2NhcGUgPSAnZXNjYXBlJyxcbiAgQ2xvc2VCdXR0b24gPSAnY2xvc2VCdXR0b24nLFxuICBPdXRzaWRlQ2xpY2sgPSAnb3V0c2lkZUNsaWNrJyxcbiAgQ2FuY2VsQnV0dG9uID0gJ2NhbmNlbEJ1dHRvbicsXG4gIE90aGVyID0gJ290aGVyJ1xufVxuIl19
@@ -1,47 +0,0 @@
1
- import { A11yModule } from '@angular/cdk/a11y';
2
- import { OverlayModule } from '@angular/cdk/overlay';
3
- import { PortalModule } from '@angular/cdk/portal';
4
- import { CommonModule } from '@angular/common';
5
- import { NgModule } from '@angular/core';
6
- import { TranslateModule } from '@ngx-translate/core';
7
- import { ModalFooterComponent } from './components/modal-footer/modal-footer.component';
8
- import { ModalHeaderComponent } from './components/modal-header/modal-header.component';
9
- import { ModalComponent } from './components/modal/modal.component';
10
- import { ModalContentDirective } from './directives/modal-content.directive';
11
- import * as i0 from "@angular/core";
12
- import * as i1 from "@ngx-translate/core";
13
- export const MODAL_MODULE_EXPORTS = [ModalComponent, ModalHeaderComponent, ModalFooterComponent, ModalContentDirective];
14
- export class LxModalModule {
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LxModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: LxModalModule, imports: [CommonModule,
17
- PortalModule,
18
- OverlayModule,
19
- A11yModule, i1.TranslateModule, ModalComponent,
20
- ModalHeaderComponent,
21
- ModalFooterComponent,
22
- ModalContentDirective], exports: [ModalComponent, ModalHeaderComponent, ModalFooterComponent, ModalContentDirective] }); }
23
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LxModalModule, imports: [CommonModule,
24
- PortalModule,
25
- OverlayModule,
26
- A11yModule,
27
- TranslateModule.forChild(),
28
- ModalComponent] }); }
29
- }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LxModalModule, decorators: [{
31
- type: NgModule,
32
- args: [{
33
- imports: [
34
- CommonModule,
35
- PortalModule,
36
- OverlayModule,
37
- A11yModule,
38
- TranslateModule.forChild(),
39
- ModalComponent,
40
- ModalHeaderComponent,
41
- ModalFooterComponent,
42
- ModalContentDirective
43
- ],
44
- exports: MODAL_MODULE_EXPORTS
45
- }]
46
- }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvbW9kYWwtdWkvbW9kYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7OztBQUU3RSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLGNBQWMsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0FBZ0J4SCxNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsWUFadEIsWUFBWTtZQUNaLFlBQVk7WUFDWixhQUFhO1lBQ2IsVUFBVSxzQkFFVixjQUFjO1lBQ2Qsb0JBQW9CO1lBQ3BCLG9CQUFvQjtZQUNwQixxQkFBcUIsYUFaWSxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCOytHQWdCekcsYUFBYSxZQVp0QixZQUFZO1lBQ1osWUFBWTtZQUNaLGFBQWE7WUFDYixVQUFVO1lBQ1YsZUFBZSxDQUFDLFFBQVEsRUFBRTtZQUMxQixjQUFjOzsyRkFPTCxhQUFhO2tCQWR6QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixVQUFVO3dCQUNWLGVBQWUsQ0FBQyxRQUFRLEVBQUU7d0JBQzFCLGNBQWM7d0JBQ2Qsb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLHFCQUFxQjtxQkFDdEI7b0JBQ0QsT0FBTyxFQUFFLG9CQUFvQjtpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1vZGFsRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsLWZvb3Rlci9tb2RhbC1mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsLWhlYWRlci9tb2RhbC1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsL21vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNb2RhbENvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbW9kYWwtY29udGVudC5kaXJlY3RpdmUnO1xuXG5leHBvcnQgY29uc3QgTU9EQUxfTU9EVUxFX0VYUE9SVFMgPSBbTW9kYWxDb21wb25lbnQsIE1vZGFsSGVhZGVyQ29tcG9uZW50LCBNb2RhbEZvb3RlckNvbXBvbmVudCwgTW9kYWxDb250ZW50RGlyZWN0aXZlXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBQb3J0YWxNb2R1bGUsXG4gICAgT3ZlcmxheU1vZHVsZSxcbiAgICBBMTF5TW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpLFxuICAgIE1vZGFsQ29tcG9uZW50LFxuICAgIE1vZGFsSGVhZGVyQ29tcG9uZW50LFxuICAgIE1vZGFsRm9vdGVyQ29tcG9uZW50LFxuICAgIE1vZGFsQ29udGVudERpcmVjdGl2ZVxuICBdLFxuICBleHBvcnRzOiBNT0RBTF9NT0RVTEVfRVhQT1JUU1xufSlcbmV4cG9ydCBjbGFzcyBMeE1vZGFsTW9kdWxlIHt9XG4iXX0=