@morozeckiy/dd-lib 0.2.71 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/assets/images/svg/file.svg +12 -0
  2. package/assets/images/svg/reload.svg +11 -0
  3. package/assets/scss/common.scss +21 -0
  4. package/assets/scss/grid.scss +158 -0
  5. package/assets/scss/keyframes.scss +9 -0
  6. package/assets/scss/reset.scss +4 -0
  7. package/assets/scss/titles.scss +24 -10
  8. package/assets/styles.scss +2 -0
  9. package/esm2022/lib/common/lib-common-input-text.mjs +30 -25
  10. package/esm2022/lib/components/data-empty/data-empty.component.mjs +8 -3
  11. package/esm2022/lib/core/dialog/modal-base/modal-base.component.mjs +5 -5
  12. package/esm2022/lib/core/directives/click-outside.directive.mjs +2 -2
  13. package/esm2022/lib/core/services/destroy.service.mjs +1 -1
  14. package/esm2022/lib/core/services/fetcher.service.mjs +1 -1
  15. package/esm2022/lib/core/services/validators.service.mjs +33 -1
  16. package/esm2022/lib/core/toast/toast-config.mjs +11 -2
  17. package/esm2022/lib/core/toast/toast.service.mjs +18 -1
  18. package/esm2022/lib/lib-button/lib-button.component.mjs +3 -3
  19. package/esm2022/lib/lib-card/lib-card.component.mjs +3 -3
  20. package/esm2022/lib/lib-checkbox/lib-checkbox.component.mjs +11 -6
  21. package/esm2022/lib/lib-date-range/lib-date-range.component.mjs +3 -3
  22. package/esm2022/lib/lib-file-loader/lib-file-loader.component.mjs +6 -4
  23. package/esm2022/lib/lib-file-upload/lib-file-upload.component.mjs +8 -20
  24. package/esm2022/lib/lib-filter-button/lib-filter-button.component.mjs +3 -3
  25. package/esm2022/lib/lib-image-loader/lib-image-loader.component.mjs +3 -3
  26. package/esm2022/lib/lib-input/lib-input.component.mjs +42 -11
  27. package/esm2022/lib/lib-search-input/lib-search-input.component.mjs +3 -3
  28. package/esm2022/lib/lib-select/lib-select.component.mjs +51 -13
  29. package/esm2022/lib/lib-tabs-fragment/lib-tabs-fragment.component.mjs +5 -2
  30. package/esm2022/lib/lib-textarea/lib-textarea.component.mjs +3 -3
  31. package/esm2022/lib/svg-icons/svg-icon.model.mjs +11 -1
  32. package/fesm2022/morozeckiy-dd-lib.mjs +238 -99
  33. package/fesm2022/morozeckiy-dd-lib.mjs.map +1 -1
  34. package/lib/common/lib-common-input-text.d.ts +11 -4
  35. package/lib/components/data-empty/data-empty.component.d.ts +2 -1
  36. package/lib/core/dialog/modal-base/modal-base.component.d.ts +2 -2
  37. package/lib/core/services/fetcher.service.d.ts +4 -1
  38. package/lib/core/services/validators.service.d.ts +3 -2
  39. package/lib/core/toast/toast-config.d.ts +5 -2
  40. package/lib/core/toast/toast.service.d.ts +5 -1
  41. package/lib/lib-checkbox/lib-checkbox.component.d.ts +3 -1
  42. package/lib/lib-file-loader/lib-file-loader.component.d.ts +3 -2
  43. package/lib/lib-file-upload/lib-file-upload.component.d.ts +5 -8
  44. package/lib/lib-input/lib-input.component.d.ts +12 -4
  45. package/lib/lib-select/lib-select.component.d.ts +13 -4
  46. package/lib/lib-tabs-fragment/lib-tabs-fragment.component.d.ts +3 -2
  47. package/lib/svg-icons/svg-icon.model.d.ts +15 -1
  48. package/morozeckiy-dd-lib-0.3.0.tgz +0 -0
  49. package/package.json +1 -1
  50. package/morozeckiy-dd-lib-0.2.71.tgz +0 -0
@@ -0,0 +1,12 @@
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_3584_65805)">
3
+ <path d="M12 2L12.117 2.007C12.3402 2.03332 12.5481 2.13408 12.707 2.29301C12.8659 2.45194 12.9667 2.65978 12.993 2.883L13 3V7L13.005 7.15C13.0408 7.62617 13.2458 8.07383 13.5829 8.41203C13.92 8.75023 14.3669 8.95666 14.843 8.994L15 9H19L19.117 9.007C19.3402 9.03332 19.5481 9.13408 19.707 9.29301C19.8659 9.45194 19.9667 9.65978 19.993 9.883L20 10V19C20 19.7652 19.7077 20.5015 19.1827 21.0583C18.6578 21.615 17.9399 21.9501 17.176 21.995L17 22H7C6.23479 22 5.49849 21.7077 4.94174 21.1827C4.38499 20.6578 4.04989 19.9399 4.005 19.176L4 19V5C3.99996 4.23479 4.29233 3.49849 4.81728 2.94174C5.34224 2.38499 6.06011 2.04989 6.824 2.005L7 2H12Z" fill="#BDBDBD"/>
4
+ <path d="M19 7.00002H15L14.999 2.99902L19 7.00002Z" fill="#BDBDBD"/>
5
+ </g>
6
+ <defs>
7
+ <clipPath id="clip0_3584_65805">
8
+ <rect width="24" height="24" fill="white"/>
9
+ </clipPath>
10
+ </defs>
11
+ </svg>
12
+
@@ -0,0 +1,11 @@
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_3584_73648)">
3
+ <path d="M19.9329 13.041C19.7441 14.481 19.1669 15.8424 18.2631 16.9792C17.3594 18.116 16.1632 18.9854 14.8029 19.4941C13.4426 20.0027 11.9695 20.1315 10.5416 19.8666C9.11368 19.6017 7.7848 18.9531 6.69749 17.9904C5.61018 17.0276 4.80545 15.787 4.36961 14.4017C3.93377 13.0164 3.88326 11.5385 4.22349 10.1266C4.56373 8.71476 5.28188 7.42214 6.30091 6.3874C7.31995 5.35266 8.60144 4.61483 10.0079 4.25304C13.9069 3.25304 17.9429 5.26004 19.4329 9.00004" stroke="#069700" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
4
+ <path d="M20 4V9H15" stroke="#069700" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
5
+ </g>
6
+ <defs>
7
+ <clipPath id="clip0_3584_73648">
8
+ <rect width="24" height="24" fill="white"/>
9
+ </clipPath>
10
+ </defs>
11
+ </svg>
@@ -1,6 +1,7 @@
1
1
  @import '../scss/mixins';
2
2
  @import '../scss/fonts';
3
3
  @import '../scss/vars';
4
+ @import '../scss/grid';
4
5
 
5
6
  html {
6
7
  font-family: 'ALS_Sirius', Roboto, Helvetica, Arial, san-serif, serif; /* 1 */
@@ -168,6 +169,10 @@ html {
168
169
  align-items: center;
169
170
  }
170
171
 
172
+ .align-start {
173
+ align-items: flex-start;
174
+ }
175
+
171
176
  .align-end {
172
177
  align-items: flex-end;
173
178
  }
@@ -176,6 +181,14 @@ html {
176
181
  justify-content: space-between;
177
182
  }
178
183
 
184
+ .justify-end {
185
+ justify-content: flex-end;
186
+ }
187
+
188
+ .justify-start {
189
+ justify-content: flex-start;
190
+ }
191
+
179
192
  .justify-around {
180
193
  justify-content: space-around;
181
194
  }
@@ -282,6 +295,13 @@ html {
282
295
  }
283
296
  }
284
297
 
298
+ .column-mobile {
299
+ @include below($mobile) {
300
+ flex-direction: column;
301
+ align-items: baseline;
302
+ }
303
+ }
304
+
285
305
  .show-mobile {
286
306
  display: none !important;
287
307
 
@@ -359,6 +379,7 @@ html {
359
379
  }
360
380
 
361
381
  @include offsets('');
382
+ @include grid('', $col-count);
362
383
 
363
384
  @include below($tablet) {
364
385
  @include offsets('t-');
@@ -0,0 +1,158 @@
1
+
2
+ /* autoprefixer grid: autoplace */
3
+ $col-count: 3;
4
+ $col-md-count: 6;
5
+ $col-lg-count: 12;
6
+
7
+ @mixin grid($prefix, $col-count) {
8
+ @for $i from 1 through $col-count {
9
+ .col#{$prefix}-#{$i} {
10
+ /* autoprefixer grid: ignore next */
11
+ grid-column-end: span $i;
12
+ -ms-grid-column-span: $i * 2 - 1 ;
13
+ min-width: 0; // fix for overflow hidden in ff
14
+ }
15
+ }
16
+
17
+ @for $i from 1 through $col-count - 1 {
18
+ .push#{$prefix}-#{$i} {
19
+ /* autoprefixer grid: ignore next */
20
+ grid-column-start: $i + 1;
21
+ -ms-grid-column: $i * 2;
22
+ }
23
+ }
24
+ }
25
+
26
+
27
+ .container {
28
+ box-sizing: border-box;
29
+ padding: 0 16px;
30
+ margin: 0 auto;
31
+ }
32
+
33
+ .grid-row {
34
+ display: grid;
35
+ grid-template-columns: repeat($col-count, 1fr);
36
+ grid-template-rows: auto;
37
+ grid-gap: 32px;
38
+
39
+ @include grid('', $col-count);
40
+ }
41
+
42
+ .grid-none {
43
+ display: block;
44
+ }
45
+
46
+ .masonry {
47
+ display: grid;
48
+ @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
49
+ display: -ms-grid;
50
+ }
51
+ column-gap: 32px;
52
+ row-gap: 16px;
53
+ }
54
+
55
+
56
+ @media all and (min-width: 768px) {
57
+ .container {
58
+ padding: 0 64px;
59
+ }
60
+
61
+ .grid-row,
62
+ .grid-row-md {
63
+ display: grid;
64
+ grid-template-columns: repeat($col-md-count, 1fr);
65
+ grid-template-rows: auto;
66
+ grid-gap: 32px;
67
+
68
+ @include grid('-md', $col-md-count);
69
+ }
70
+
71
+ .grid-none-md {
72
+ display: block;
73
+ }
74
+
75
+ .masonry {
76
+ grid-template-columns: repeat(1, minmax(566px,1fr));
77
+ -ms-grid-columns: minmax(400px, 1fr) minmax(400px, 1fr);
78
+
79
+ &.masonry-ie {
80
+ content: '';
81
+ display: table;
82
+ clear: both;
83
+ .masonry-brick {
84
+ float: left;
85
+ width: 46%;
86
+ margin: 0 2% 32px 2%;
87
+ }
88
+ }
89
+ }
90
+ }
91
+
92
+ @media all and (min-width: 1140px) {
93
+ .container, .container-lg {
94
+ max-width: 1366px;
95
+ padding: 0 72px;
96
+ margin: 0 auto;
97
+ }
98
+
99
+ .grid-row,
100
+ .grid-row-lg {
101
+ display: grid;
102
+ grid-template-columns: repeat($col-lg-count, 1fr);
103
+ grid-template-rows: auto;
104
+ grid-gap: 32px;
105
+
106
+ &.base-9 {
107
+ display: grid;
108
+ grid-template-columns: repeat(9, 1fr);
109
+ grid-template-rows: auto;
110
+ }
111
+
112
+ @include grid('-lg', $col-lg-count);
113
+ }
114
+
115
+ .grid-none-lg {
116
+ display: block;
117
+ }
118
+
119
+ .masonry {
120
+ grid-template-columns: repeat(2, minmax(300px,1fr));
121
+ }
122
+ }
123
+
124
+ @media print {
125
+ @mixin grid($prefix, $col-count) {
126
+ @for $i from 1 through $col-count {
127
+ .col#{$prefix}-#{$i} {
128
+ /* autoprefixer grid: ignore next */
129
+ grid-column-end: span $i;
130
+ -ms-grid-column-span: $i * 2 - 1 ;
131
+ }
132
+ }
133
+
134
+ @for $i from 1 through $col-count - 1 {
135
+ .push#{$prefix}-#{$i} {
136
+ /* autoprefixer grid: ignore next */
137
+ grid-column-start: $i + 1;
138
+ -ms-grid-column: $i * 2;
139
+ }
140
+ }
141
+ }
142
+
143
+
144
+ .container {
145
+ box-sizing: border-box;
146
+ padding: 0 16px;
147
+ margin: 0;
148
+ }
149
+
150
+ .grid-row {
151
+ display: grid;
152
+ grid-template-columns: repeat($col-count, 1fr);
153
+ grid-template-rows: auto;
154
+ grid-gap: 32px;
155
+
156
+ @include grid('', $col-count);
157
+ }
158
+ }
@@ -15,3 +15,12 @@
15
15
  transform: translateY(0);
16
16
  }
17
17
  }
18
+
19
+ @keyframes rotation {
20
+ 0% {
21
+ transform: rotate(0deg);
22
+ }
23
+ 100% {
24
+ transform: rotate(360deg);
25
+ }
26
+ }
@@ -148,3 +148,7 @@ button,
148
148
  textarea {
149
149
  font-family: inherit;
150
150
  }
151
+
152
+ textarea {
153
+ outline: none;
154
+ }
@@ -31,6 +31,12 @@
31
31
  font-size: 24px;
32
32
  line-height: 32px;
33
33
  color: var(--light-black-color);
34
+
35
+ @include below($mobile) {
36
+ font-weight: 500;
37
+ font-size: 18px;
38
+ line-height: 28px;
39
+ }
34
40
  }
35
41
 
36
42
  .g-h4-title {
@@ -133,6 +139,15 @@
133
139
  color: var(--light-black-color);
134
140
  }
135
141
 
142
+ .b2-title {
143
+ font-size: 16px;
144
+ font-weight: 500;
145
+ line-height: 24px;
146
+ letter-spacing: 0;
147
+ cursor: default;
148
+ color: var(--font-light-black-color);
149
+ }
150
+
136
151
  .b3-title {
137
152
  font-size: 16px;
138
153
  font-weight: 400;
@@ -195,6 +210,10 @@
195
210
  font-weight: 700;
196
211
  }
197
212
 
213
+ .uppercase {
214
+ text-transform: uppercase;
215
+ }
216
+
198
217
  .no-wrap-text {
199
218
  white-space: nowrap;
200
219
  }
@@ -239,24 +258,19 @@
239
258
  color: var(--red-error-color);
240
259
  }
241
260
 
261
+ .blue {
262
+ color: var(--blue-color);
263
+ }
264
+
242
265
  .green-hover {
243
266
  &:hover {
244
267
  color: var(--primary-green-color);
245
268
  }
246
269
  }
247
270
 
248
- .plain-link {
249
- cursor: pointer;
250
- font-size: 14px;
251
- font-weight: 400;
252
- line-height: 24px;
253
- color: var(--primary-green-color);
271
+ .underline-link {
254
272
  text-decoration: underline;
255
273
 
256
- &.blue {
257
- color: var(--blue-color);
258
- }
259
-
260
274
  &:hover {
261
275
  text-decoration: none;
262
276
  }
@@ -7,5 +7,7 @@
7
7
  @import './scss/keyframes';
8
8
  @import './scss/titles';
9
9
  @import './scss/theme';
10
+ @import './scss/grid';
11
+
10
12
  @import '@angular/cdk/overlay-prebuilt.css';
11
13
  @import './scss/common';
@@ -6,18 +6,20 @@ export class LibCommonInputTextComponent {
6
6
  return this._ID;
7
7
  }
8
8
  constructor(changeDetection) {
9
- this.maxlength = 700;
10
9
  this.required = false;
11
10
  this.disabled = false;
12
11
  this.commitOnInput = true; // коммитить по input или по change
13
12
  this.clearable = false;
13
+ this.showSelfError = true;
14
14
  this.uppercase = false;
15
15
  this.invalid = false;
16
+ this.errorTexts = [];
16
17
  this.side = 'bottom';
17
18
  this.cleared = new EventEmitter();
18
19
  this.fetchEvent = new EventEmitter();
19
20
  this.focus = new EventEmitter();
20
21
  this.blur = new EventEmitter();
22
+ this.fullBlur = new EventEmitter();
21
23
  this.focused = false;
22
24
  this.touched = false;
23
25
  this.value = '';
@@ -25,6 +27,16 @@ export class LibCommonInputTextComponent {
25
27
  this._ID = '';
26
28
  this.changeDetection = changeDetection;
27
29
  }
30
+ get invalidState() {
31
+ return this.invalid || this.control ? this.control.invalid : false;
32
+ }
33
+ get showError() {
34
+ if (!this.control) {
35
+ return this.invalid;
36
+ }
37
+ const { dirty, touched } = this.control;
38
+ return this.invalidState ? ((dirty || touched) && !this.focused) : false;
39
+ }
28
40
  handleInput(_e) {
29
41
  if (this.commitOnInput) {
30
42
  this.commit(this.value);
@@ -33,21 +45,6 @@ export class LibCommonInputTextComponent {
33
45
  notifyFocusEvent(e) {
34
46
  // this.focusManager.notifyFocusMayChanged(this, e.type === 'focus');
35
47
  }
36
- // public writeValue(value: string | number | null): void {
37
- // this.value = value === null || value === undefined ? '' : '' + value;
38
- // if (!this.destroyed) {
39
- // this.changeDetection.detectChanges();
40
- // }
41
- // }
42
- // public clearValue(e: Event): void {
43
- // if (!this.disabled) {
44
- // this.writeValue(null);
45
- // this.commit(null);
46
- // this.cleared.emit();
47
- // this.returnFocus(e);
48
- // }
49
- // e.stopPropagation();
50
- // }
51
48
  handleBlur() {
52
49
  this.focused = false;
53
50
  if (this.onTouchedCallback) {
@@ -85,12 +82,10 @@ export class LibCommonInputTextComponent {
85
82
  registerOnTouched(fn) {
86
83
  this.onTouchedCallback = fn;
87
84
  }
88
- setDisabledState(isDisabled) {
89
- this.disabled = isDisabled;
90
- if (!this.destroyed) {
91
- this.changeDetection.detectChanges();
92
- }
93
- }
85
+ // public setDisabledState(isDisabled: boolean): void {
86
+ // console.log(isDisabled)
87
+ // this.disabled = isDisabled;
88
+ // }
94
89
  handleChange() {
95
90
  if (!this.commitOnInput) {
96
91
  this.commit(this.value);
@@ -98,7 +93,7 @@ export class LibCommonInputTextComponent {
98
93
  }
99
94
  commit(_value) { }
100
95
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: LibCommonInputTextComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
101
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: LibCommonInputTextComponent, selector: "dd-lib-common-input", inputs: { name: "name", label: "label", formControlName: "formControlName", type: "type", contextClass: "contextClass", minlength: "minlength", maxlength: "maxlength", placeholder: "placeholder", autocomplete: "autocomplete", tabIndex: "tabIndex", readOnly: "readOnly", fetchMode: "fetchMode", required: "required", disabled: "disabled", commitOnInput: "commitOnInput", clearable: "clearable", uppercase: "uppercase", invalid: "invalid", errorText: "errorText", side: "side" }, outputs: { cleared: "cleared", fetchEvent: "fetchEvent", focus: "focus", blur: "blur" }, providers: [
96
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: LibCommonInputTextComponent, selector: "dd-lib-common-input", inputs: { name: "name", label: "label", formControlName: "formControlName", type: "type", contextClass: "contextClass", minlength: "minlength", min: "min", maxlength: "maxlength", max: "max", placeholder: "placeholder", autocomplete: "autocomplete", tabIndex: "tabIndex", readOnly: "readOnly", autofocus: "autofocus", fetchMode: "fetchMode", required: "required", disabled: "disabled", commitOnInput: "commitOnInput", clearable: "clearable", showSelfError: "showSelfError", uppercase: "uppercase", invalid: "invalid", errorTexts: "errorTexts", side: "side" }, outputs: { cleared: "cleared", fetchEvent: "fetchEvent", focus: "focus", blur: "blur", fullBlur: "fullBlur" }, providers: [
102
97
  {
103
98
  provide: NG_VALUE_ACCESSOR,
104
99
  useExisting: forwardRef(() => LibCommonInputTextComponent),
@@ -140,8 +135,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
140
135
  type: Input
141
136
  }], minlength: [{
142
137
  type: Input
138
+ }], min: [{
139
+ type: Input
143
140
  }], maxlength: [{
144
141
  type: Input
142
+ }], max: [{
143
+ type: Input
145
144
  }], placeholder: [{
146
145
  type: Input
147
146
  }], autocomplete: [{
@@ -150,6 +149,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
150
149
  type: Input
151
150
  }], readOnly: [{
152
151
  type: Input
152
+ }], autofocus: [{
153
+ type: Input
153
154
  }], fetchMode: [{
154
155
  type: Input
155
156
  }], required: [{
@@ -160,11 +161,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
160
161
  type: Input
161
162
  }], clearable: [{
162
163
  type: Input
164
+ }], showSelfError: [{
165
+ type: Input
163
166
  }], uppercase: [{
164
167
  type: Input
165
168
  }], invalid: [{
166
169
  type: Input
167
- }], errorText: [{
170
+ }], errorTexts: [{
168
171
  type: Input
169
172
  }], side: [{
170
173
  type: Input
@@ -176,5 +179,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
176
179
  type: Output
177
180
  }], blur: [{
178
181
  type: Output
182
+ }], fullBlur: [{
183
+ type: Output
179
184
  }] } });
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWNvbW1vbi1pbnB1dC10ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29tbW9uL2xpYi1jb21tb24taW5wdXQtdGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQWFwRSxNQUFNLE9BQWdCLDJCQUEyQjtJQTRCL0MsSUFBVyxFQUFFO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFXRCxZQUFzQixlQUFrQztRQS9CeEMsY0FBUyxHQUFHLEdBQUcsQ0FBQztRQU1oQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsa0JBQWEsR0FBRyxJQUFJLENBQUMsQ0FBQyxtQ0FBbUM7UUFDekQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFakIsU0FBSSxHQUFxQixRQUFRLENBQUM7UUFDaEMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDbkMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDckMsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDaEMsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFJekMsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRWhCLFVBQUssR0FBdUIsRUFBRSxDQUFDO1FBRzVCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFcEIsUUFBRyxHQUFHLEVBQUUs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QkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGQtbGliLWNvbW1vbi1pbnB1dCcsXHJcbiAgdGVtcGxhdGU6ICcnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTGliQ29tbW9uSW5wdXRUZXh0Q29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBMaWJDb21tb25JbnB1dFRleHRDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaElucHV0JykgcHJvdGVjdGVkIGlucHV0U2VhcmNoRWxlbWVudDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB8IHVuZGVmaW5lZDtcclxuICBAVmlld0NoaWxkKCdpbnB1dCcpIHByb3RlY3RlZCBpbnB1dEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4gfCB1bmRlZmluZWQ7XHJcbiAgQFZpZXdDaGlsZCgndGV4dGFyZWEnKSBwcm90ZWN0ZWQgdGV4dEFyZWFFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQ+IHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBuYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIGZvcm1Db250cm9sTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB0eXBlOiAncGFzc3dvcmQnIHwgJ2VtYWlsJyB8ICdudW1iZXInIHwgJ3RleHQnIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjb250ZXh0Q2xhc3M6IHN0cmluZyB8IHVuZGVmaW5lZDsgLy8g0LrQu9Cw0YHRgSDRgNCw0LfQvNC10YLQutC4INC00LvRjyBkZWVwINGB0YLQuNC70LXQuVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBtaW5sZW5ndGg6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBwdWJsaWMgbWF4bGVuZ3RoID0gNzAwO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBASW5wdXQoKSBwdWJsaWMgYXV0b2NvbXBsZXRlPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB0YWJJbmRleD86IHN0cmluZyB8IG51bWJlcjtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZE9ubHk/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBmZXRjaE1vZGU/OiBib29sZWFuOyAvLyDRgNCw0LHQvtGC0LDQtdGCIGZldGNoRXZlbnQg0L/RgNC4INC60LvQuNC60LVcclxuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgY29tbWl0T25JbnB1dCA9IHRydWU7IC8vINC60L7QvNC80LjRgtC40YLRjCDQv9C+IGlucHV0INC40LvQuCDQv9C+IGNoYW5nZVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBjbGVhcmFibGUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgdXBwZXJjYXNlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JUZXh0OiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KClwdWJsaWMgc2lkZTogJ3RvcCcgfCAnYm90dG9tJyA9ICdib3R0b20nO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2xlYXJlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIGZldGNoRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIGZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBibHVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgcHVibGljIGdldCBpZCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9JRDtcclxuICB9XHJcbiAgcHVibGljIGZvY3VzZWQgPSBmYWxzZTtcclxuICBwdWJsaWMgdG91Y2hlZCA9IGZhbHNlO1xyXG4gIHB1YmxpYyBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCB1bmRlZmluZWQgfCBudWxsO1xyXG4gIHB1YmxpYyB2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gJyc7XHJcbiAgcHVibGljIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0b3JSZWY7XHJcblxyXG4gIHByb3RlY3RlZCBkZXN0cm95ZWQgPSBmYWxzZTtcclxuICBwcm90ZWN0ZWQgb25Ub3VjaGVkQ2FsbGJhY2s6ICgoKSA9PiB2b2lkKSB8IHVuZGVmaW5lZDtcclxuICBwcml2YXRlIF9JRCA9ICcnO1xyXG5cclxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24gPSBjaGFuZ2VEZXRlY3Rpb247XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlSW5wdXQoX2U6IEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5jb21taXRPbklucHV0KSB7XHJcbiAgICAgIHRoaXMuY29tbWl0KHRoaXMudmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG5vdGlmeUZvY3VzRXZlbnQoZTogRXZlbnQpOiB2b2lkIHtcclxuICAgIC8vIHRoaXMuZm9jdXNNYW5hZ2VyLm5vdGlmeUZvY3VzTWF5Q2hhbmdlZCh0aGlzLCBlLnR5cGUgPT09ICdmb2N1cycpO1xyXG4gIH1cclxuXHJcbiAgLy8gcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IG51bGwpOiB2b2lkIHtcclxuICAvLyAgIHRoaXMudmFsdWUgPSB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkID8gJycgOiAnJyArIHZhbHVlO1xyXG4gIC8vICAgaWYgKCF0aGlzLmRlc3Ryb3llZCkge1xyXG4gIC8vICAgICB0aGlzLmNoYW5nZURldGVjdGlvbi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG5cclxuICAvLyBwdWJsaWMgY2xlYXJWYWx1ZShlOiBFdmVudCk6IHZvaWQge1xyXG4gIC8vICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XHJcbiAgLy8gICAgIHRoaXMud3JpdGVWYWx1ZShudWxsKTtcclxuICAvLyAgICAgdGhpcy5jb21taXQobnVsbCk7XHJcbiAgLy8gICAgIHRoaXMuY2xlYXJlZC5lbWl0KCk7XHJcbiAgLy8gICAgIHRoaXMucmV0dXJuRm9jdXMoZSk7XHJcbiAgLy8gICB9XHJcbiAgLy8gICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIC8vIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUJsdXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLmZvY3VzZWQgPSBmYWxzZTtcclxuICAgIGlmICh0aGlzLm9uVG91Y2hlZENhbGxiYWNrKSB7XHJcbiAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmJsdXIuZW1pdCgpO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24uZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUZvY3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5mb2N1c2VkID0gdGhpcy50b3VjaGVkID0gdHJ1ZTtcclxuICAgIGlmICh0aGlzLm9uVG91Y2hlZENhbGxiYWNrKSB7XHJcbiAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKTtcclxuICAgIH1cclxuICAgIHRoaXMuZm9jdXMuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJldHVybkZvY3VzKGU/OiBFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmlucHV0RWxlbWVudCAmJlxyXG4gICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50ICYmXHJcbiAgICAgICghZSB8fCBlLnRhcmdldCAhPT0gdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudClcclxuICAgICkge1xyXG4gICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgIC8vIEhlbHBlclNlcnZpY2UucmVzZXRTZWxlY3Rpb24odGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9zZUZvY3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbnB1dEVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQuYmx1cigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGZvcmNlQ2hhbmdlKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaW5wdXRFbGVtZW50KSB7XHJcbiAgICAgIC8vIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChIZWxwZXJTZXJ2aWNlLmNyZWF0ZUV2ZW50KCdjaGFuZ2UnLCB0cnVlLCBmYWxzZSkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5jb21taXQgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICAgIGlmICghdGhpcy5kZXN0cm95ZWQpIHtcclxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24uZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNoYW5nZSgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5jb21taXRPbklucHV0KSB7XHJcbiAgICAgIHRoaXMuY29tbWl0KHRoaXMudmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbW1pdChfdmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHt9XHJcbn1cclxuIl19
185
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWNvbW1vbi1pbnB1dC10ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29tbW9uL2xpYi1jb21tb24taW5wdXQtdGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFrQixpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDOztBQWFsRSxNQUFNLE9BQWdCLDJCQUEyQjtJQWlDL0MsSUFBVyxFQUFFO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFZRCxZQUFzQixlQUFrQztRQTVCeEMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGtCQUFhLEdBQUcsSUFBSSxDQUFDLENBQUMsbUNBQW1DO1FBQ3pELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFDckIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLGVBQVUsR0FBYSxFQUFFLENBQUM7UUFDM0IsU0FBSSxHQUFxQixRQUFRLENBQUM7UUFDaEMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDbkMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDckMsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDaEMsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDL0IsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7UUFNL0MsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRWhCLFVBQUss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QUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLGFBQWE7c0JBQTVCLEtBQUs7Z0JBQ1UsU0FBUztzQkFBeEIsS0FBSztnQkFDVSxhQUFhO3NCQUE1QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUNTLElBQUk7c0JBQWxCLEtBQUs7Z0JBQ1csT0FBTztzQkFBdkIsTUFBTTtnQkFDVSxVQUFVO3NCQUExQixNQUFNO2dCQUNVLEtBQUs7c0JBQXJCLE1BQU07Z0JBQ1UsSUFBSTtzQkFBcEIsTUFBTTtnQkFDVSxRQUFRO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGQtbGliLWNvbW1vbi1pbnB1dCcsXHJcbiAgdGVtcGxhdGU6ICcnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTGliQ29tbW9uSW5wdXRUZXh0Q29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBMaWJDb21tb25JbnB1dFRleHRDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaElucHV0JykgcHJvdGVjdGVkIGlucHV0U2VhcmNoRWxlbWVudDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB8IHVuZGVmaW5lZDtcclxuICBAVmlld0NoaWxkKCdpbnB1dCcpIHByb3RlY3RlZCBpbnB1dEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4gfCB1bmRlZmluZWQ7XHJcbiAgQFZpZXdDaGlsZCgndGV4dGFyZWEnKSBwcm90ZWN0ZWQgdGV4dEFyZWFFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxUZXh0QXJlYUVsZW1lbnQ+IHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBuYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIGZvcm1Db250cm9sTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB0eXBlOiAncGFzc3dvcmQnIHwgJ2VtYWlsJyB8ICdudW1iZXInIHwgJ3RleHQnIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjb250ZXh0Q2xhc3M6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBwdWJsaWMgbWlubGVuZ3RoOiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIG1pbjogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhsZW5ndGg6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBwdWJsaWMgbWF4OiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBhdXRvY29tcGxldGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIHRhYkluZGV4Pzogc3RyaW5nIHwgbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkT25seT86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgcHVibGljIGF1dG9mb2N1cz86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgcHVibGljIGZldGNoTW9kZT86IGJvb2xlYW47IC8vINGA0LDQsdC+0YLQsNC10YIgZmV0Y2hFdmVudCDQv9GA0Lgg0LrQu9C40LrQtVxyXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjb21taXRPbklucHV0ID0gdHJ1ZTsgLy8g0LrQvtC80LzQuNGC0LjRgtGMINC/0L4gaW5wdXQg0LjQu9C4INC/0L4gY2hhbmdlXHJcbiAgQElucHV0KCkgcHVibGljIGNsZWFyYWJsZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93U2VsZkVycm9yID0gdHJ1ZTtcclxuICBASW5wdXQoKSBwdWJsaWMgdXBwZXJjYXNlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JUZXh0czogc3RyaW5nW10gPSBbXTtcclxuICBASW5wdXQoKXB1YmxpYyBzaWRlOiAndG9wJyB8ICdib3R0b20nID0gJ2JvdHRvbSc7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBjbGVhcmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgZmV0Y2hFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgZm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIGZ1bGxCbHVyID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcclxuICBwdWJsaWMgZ2V0IGlkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX0lEO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGVycm9yVGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIHB1YmxpYyBmb2N1c2VkID0gZmFsc2U7XHJcbiAgcHVibGljIHRvdWNoZWQgPSBmYWxzZTtcclxuICBwdWJsaWMgY29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgdW5kZWZpbmVkIHwgbnVsbDtcclxuICBwdWJsaWMgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCA9ICcnO1xyXG4gIHB1YmxpYyBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdG9yUmVmO1xyXG4gIHByb3RlY3RlZCBkZXN0cm95ZWQgPSBmYWxzZTtcclxuICBwcm90ZWN0ZWQgb25Ub3VjaGVkQ2FsbGJhY2s6ICgoKSA9PiB2b2lkKSB8IHVuZGVmaW5lZDtcclxuICBwcml2YXRlIF9JRCA9ICcnO1xyXG5cclxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24gPSBjaGFuZ2VEZXRlY3Rpb247XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGludmFsaWRTdGF0ZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmludmFsaWQgfHwgdGhpcy5jb250cm9sID8gdGhpcy5jb250cm9sIS5pbnZhbGlkIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHNob3dFcnJvcigpOiBib29sZWFuIHtcclxuICAgIGlmICghdGhpcy5jb250cm9sKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmludmFsaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgeyBkaXJ0eSwgdG91Y2hlZCB9ID0gdGhpcy5jb250cm9sO1xyXG4gICAgcmV0dXJuIHRoaXMuaW52YWxpZFN0YXRlID8gKChkaXJ0eSB8fCB0b3VjaGVkKSAmJiAhdGhpcy5mb2N1c2VkKSA6IGZhbHNlO1xyXG4gIH1cclxuICBwdWJsaWMgaGFuZGxlSW5wdXQoX2U6IEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5jb21taXRPbklucHV0KSB7XHJcbiAgICAgIHRoaXMuY29tbWl0KHRoaXMudmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyBub3RpZnlGb2N1c0V2ZW50KGU6IEV2ZW50KTogdm9pZCB7XHJcbiAgICAvLyB0aGlzLmZvY3VzTWFuYWdlci5ub3RpZnlGb2N1c01heUNoYW5nZWQodGhpcywgZS50eXBlID09PSAnZm9jdXMnKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVCbHVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5mb2N1c2VkID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5vblRvdWNoZWRDYWxsYmFjaykge1xyXG4gICAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5ibHVyLmVtaXQoKTtcclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVGb2N1cygpOiB2b2lkIHtcclxuICAgIHRoaXMuZm9jdXNlZCA9IHRoaXMudG91Y2hlZCA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5vblRvdWNoZWRDYWxsYmFjaykge1xyXG4gICAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmZvY3VzLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZXR1cm5Gb2N1cyhlPzogRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmIChcclxuICAgICAgdGhpcy5pbnB1dEVsZW1lbnQgJiZcclxuICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudCAmJlxyXG4gICAgICAoIWUgfHwgZS50YXJnZXQgIT09IHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQpXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gICAgICAvLyBIZWxwZXJTZXJ2aWNlLnJlc2V0U2VsZWN0aW9uKHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvc2VGb2N1cygpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5wdXRFbGVtZW50Py5uYXRpdmVFbGVtZW50LmJsdXIoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBmb3JjZUNoYW5nZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmlucHV0RWxlbWVudCkge1xyXG4gICAgICAvLyB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQoSGVscGVyU2VydmljZS5jcmVhdGVFdmVudCgnY2hhbmdlJywgdHJ1ZSwgZmFsc2UpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuY29tbWl0ID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuO1xyXG4gIH1cclxuXHJcbiAgLy8gcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gIC8vICAgY29uc29sZS5sb2coaXNEaXNhYmxlZClcclxuICAvLyAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIC8vIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNoYW5nZSgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5jb21taXRPbklucHV0KSB7XHJcbiAgICAgIHRoaXMuY29tbWl0KHRoaXMudmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbW1pdChfdmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHt9XHJcbn1cclxuIl19
@@ -3,13 +3,18 @@ import { NgOptimizedImage } from '@angular/common';
3
3
  import { LibSvgIconComponent } from "../../lib-svg-icon/lib-svg-icon.component";
4
4
  import * as i0 from "@angular/core";
5
5
  export class DataEmptyComponent {
6
+ constructor() {
7
+ this.text = 'По Вашему запросу ничего не найдено';
8
+ }
6
9
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: DataEmptyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: DataEmptyComponent, isStandalone: true, selector: "dd-data-empty", inputs: { abs: "abs" }, ngImport: i0, template: "<div [class.abs]=\"abs\" class=\"data-empty\">\r\n <div class=\"data-empty__img not-found-bg\"></div>\r\n <div class=\"g-h5-title font-regular mt-12\">\u041F\u043E \u0412\u0430\u0448\u0435\u043C\u0443 \u0437\u0430\u043F\u0440\u043E\u0441\u0443 \u043D\u0438\u0447\u0435\u0433\u043E \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E</div>\r\n</div>\r\n", styles: [".data-empty{background:var(--main-bgc);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:calc(60vh - var(--header-height));width:100%;text-align:center}.data-empty.abs{width:100vw;position:absolute}.data-empty__img{width:150px;height:150px;background-size:cover}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.2", type: DataEmptyComponent, isStandalone: true, selector: "dd-data-empty", inputs: { abs: "abs", text: "text" }, ngImport: i0, template: "<div [class.abs]=\"abs\" class=\"data-empty\">\r\n <div class=\"data-empty__img not-found-bg\"></div>\r\n <div class=\"g-h5-title font-regular mt-12\" [innerHTML]=\"text\"></div>\r\n</div>\r\n", styles: [".data-empty{background:var(--main-bgc);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:calc(60vh - var(--header-height));width:100%;text-align:center}.data-empty.abs{width:100vw;position:absolute}.data-empty__img{width:150px;height:150px;background-size:cover}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8
11
  }
9
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: DataEmptyComponent, decorators: [{
10
13
  type: Component,
11
- args: [{ selector: 'dd-data-empty', standalone: true, imports: [NgOptimizedImage, LibSvgIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class.abs]=\"abs\" class=\"data-empty\">\r\n <div class=\"data-empty__img not-found-bg\"></div>\r\n <div class=\"g-h5-title font-regular mt-12\">\u041F\u043E \u0412\u0430\u0448\u0435\u043C\u0443 \u0437\u0430\u043F\u0440\u043E\u0441\u0443 \u043D\u0438\u0447\u0435\u0433\u043E \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E</div>\r\n</div>\r\n", styles: [".data-empty{background:var(--main-bgc);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:calc(60vh - var(--header-height));width:100%;text-align:center}.data-empty.abs{width:100vw;position:absolute}.data-empty__img{width:150px;height:150px;background-size:cover}\n"] }]
14
+ args: [{ selector: 'dd-data-empty', standalone: true, imports: [NgOptimizedImage, LibSvgIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class.abs]=\"abs\" class=\"data-empty\">\r\n <div class=\"data-empty__img not-found-bg\"></div>\r\n <div class=\"g-h5-title font-regular mt-12\" [innerHTML]=\"text\"></div>\r\n</div>\r\n", styles: [".data-empty{background:var(--main-bgc);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:calc(60vh - var(--header-height));width:100%;text-align:center}.data-empty.abs{width:100vw;position:absolute}.data-empty__img{width:150px;height:150px;background-size:cover}\n"] }]
12
15
  }], propDecorators: { abs: [{
13
16
  type: Input
17
+ }], text: [{
18
+ type: Input
14
19
  }] } });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1lbXB0eS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtZW1wdHkvZGF0YS1lbXB0eS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtZW1wdHkvZGF0YS1lbXB0eS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFVOUUsTUFBTSxPQUFPLGtCQUFrQjs4R0FBbEIsa0JBQWtCO2tHQUFsQixrQkFBa0IsaUdDWi9CLHdXQUlBOzsyRkRRYSxrQkFBa0I7a0JBUjlCLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLG1CQUFtQixDQUFDLG1CQUcvQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUcvQixHQUFHO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nT3B0aW1pemVkSW1hZ2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtMaWJTdmdJY29uQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vbGliLXN2Zy1pY29uL2xpYi1zdmctaWNvbi5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGQtZGF0YS1lbXB0eScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ09wdGltaXplZEltYWdlLCBMaWJTdmdJY29uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtZW1wdHkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZGF0YS1lbXB0eS5jb21wb25lbnQuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEYXRhRW1wdHlDb21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgYWJzOiBib29sZWFuIHwgdW5kZWZpbmVkO1xufVxuIiwiPGRpdiBbY2xhc3MuYWJzXT1cImFic1wiIGNsYXNzPVwiZGF0YS1lbXB0eVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJkYXRhLWVtcHR5X19pbWcgbm90LWZvdW5kLWJnXCI+PC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImctaDUtdGl0bGUgZm9udC1yZWd1bGFyIG10LTEyXCI+0J/QviDQktCw0YjQtdC80YMg0LfQsNC/0YDQvtGB0YMg0L3QuNGH0LXQs9C+INC90LUg0L3QsNC50LTQtdC90L48L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1lbXB0eS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtZW1wdHkvZGF0YS1lbXB0eS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtZW1wdHkvZGF0YS1lbXB0eS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFVOUUsTUFBTSxPQUFPLGtCQUFrQjtJQVIvQjtRQVVrQixTQUFJLEdBQUcscUNBQXFDLENBQUM7S0FDOUQ7OEdBSFksa0JBQWtCO2tHQUFsQixrQkFBa0IsK0dDWi9CLG9NQUlBOzsyRkRRYSxrQkFBa0I7a0JBUjlCLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLG1CQUFtQixDQUFDLG1CQUcvQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUcvQixHQUFHO3NCQUFsQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdPcHRpbWl6ZWRJbWFnZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0xpYlN2Z0ljb25Db21wb25lbnR9IGZyb20gXCIuLi8uLi9saWItc3ZnLWljb24vbGliLXN2Zy1pY29uLmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkZC1kYXRhLWVtcHR5JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nT3B0aW1pemVkSW1hZ2UsIExpYlN2Z0ljb25Db21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1lbXB0eS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9kYXRhLWVtcHR5LmNvbXBvbmVudC5zY3NzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIERhdGFFbXB0eUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBhYnM6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0ZXh0ID0gJ9Cf0L4g0JLQsNGI0LXQvNGDINC30LDQv9GA0L7RgdGDINC90LjRh9C10LPQviDQvdC1INC90LDQudC00LXQvdC+Jztcbn1cbiIsIjxkaXYgW2NsYXNzLmFic109XCJhYnNcIiBjbGFzcz1cImRhdGEtZW1wdHlcIj5cclxuICA8ZGl2IGNsYXNzPVwiZGF0YS1lbXB0eV9faW1nIG5vdC1mb3VuZC1iZ1wiPjwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJnLWg1LXRpdGxlIGZvbnQtcmVndWxhciBtdC0xMlwiIFtpbm5lckhUTUxdPVwidGV4dFwiPjwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -9,7 +9,7 @@ export class ModalBaseComponent {
9
9
  this.router = router;
10
10
  this.dialog = dialog;
11
11
  this.clearFragment = true;
12
- this.padding = '40';
12
+ this.borderMobile = false;
13
13
  this.afterDestroy = () => {
14
14
  if (this.clearFragment) {
15
15
  this.router.navigate([], { fragment: undefined, preserveFragment: false, relativeTo: this.route });
@@ -25,21 +25,21 @@ export class ModalBaseComponent {
25
25
  this.dialog.close();
26
26
  }
27
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ModalBaseComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }, { token: i2.DDDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: ModalBaseComponent, isStandalone: true, selector: "dd-modal-base", inputs: { content: "content", component: "component", clearFragment: "clearFragment", padding: "padding" }, host: { listeners: { "document:keydown": "onKeydownComponent($event)" } }, ngImport: i0, template: "<div class=\"popup\">\r\n <div (click)=\"close()\" class=\"popup__close\"></div>\r\n @if (content) {\r\n <div class=\"popup__content\">\r\n <ng-template [ngTemplateOutletContext]=\"{ data }\" [ngTemplateOutlet]=\"content\"></ng-template>\r\n </div>\r\n } @if (component) {\r\n <div class=\"popup__content\">\r\n <ng-template [ngComponentOutlet]=\"component\"></ng-template>\r\n </div>\r\n } @else {\r\n <ng-content></ng-content>\r\n }\r\n</div>\r\n", styles: [".popup{position:relative;max-width:var(--main-body-width);border-radius:24px;background:var(--white-color)}@media screen and (max-width: 1320px){.popup{max-width:100%}}@media screen and (max-width: 480px){.popup{border-radius:0}}.popup__close{position:absolute;top:24px;right:24px;width:20px;height:20px;background:url('data:image/svg+xml,<svg fill=\"none\" height=\"20\" viewBox=\"0 0 20 20\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <g clip-path=\"url(%23clip0_355_22081)\">%0D%0A <path d=\"M15 5L5 15\" stroke=\"%23A79BAD\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"/>%0D%0A <path d=\"M5 5L15 15\" stroke=\"%23A79BAD\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"/>%0D%0A </g>%0D%0A <defs>%0D%0A <clipPath id=\"clip0_355_22081\">%0D%0A <rect fill=\"white\" height=\"20\" width=\"20\"/>%0D%0A </clipPath>%0D%0A </defs>%0D%0A</svg>%0D%0A') no-repeat center;cursor:pointer}@media screen and (max-width: 480px){.popup__close{top:16px;right:16px}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }] }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.2", type: ModalBaseComponent, isStandalone: true, selector: "dd-modal-base", inputs: { content: "content", component: "component", clearFragment: "clearFragment", borderMobile: "borderMobile" }, host: { listeners: { "document:keydown": "onKeydownComponent($event)" } }, ngImport: i0, template: "<div class=\"popup\" [class.border-mobile]=\"borderMobile\">\r\n <div (click)=\"close()\" class=\"popup__close\"></div>\r\n @if (content) {\r\n <div class=\"popup__content\">\r\n <ng-template [ngTemplateOutletContext]=\"{ data }\" [ngTemplateOutlet]=\"content\"></ng-template>\r\n </div>\r\n } @if (component) {\r\n <div class=\"popup__content\">\r\n <ng-template [ngComponentOutlet]=\"component\"></ng-template>\r\n </div>\r\n } @else {\r\n <ng-content></ng-content>\r\n }\r\n</div>\r\n", styles: [".popup{position:relative;max-width:var(--main-body-width);border-radius:24px;background:var(--white-color)}@media screen and (max-width: 1320px){.popup{max-width:100%}}@media screen and (max-width: 480px){.popup{border-radius:0}}@media screen and (max-width: 480px){.popup.border-mobile{border-radius:24px}}.popup__close{position:absolute;top:24px;right:24px;width:20px;height:20px;background:url('data:image/svg+xml,<svg fill=\"none\" height=\"20\" viewBox=\"0 0 20 20\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <g clip-path=\"url(%23clip0_355_22081)\">%0D%0A <path d=\"M15 5L5 15\" stroke=\"%23A79BAD\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"/>%0D%0A <path d=\"M5 5L15 15\" stroke=\"%23A79BAD\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"/>%0D%0A </g>%0D%0A <defs>%0D%0A <clipPath id=\"clip0_355_22081\">%0D%0A <rect fill=\"white\" height=\"20\" width=\"20\"/>%0D%0A </clipPath>%0D%0A </defs>%0D%0A</svg>%0D%0A') no-repeat center;cursor:pointer}@media screen and (max-width: 480px){.popup__close{top:16px;right:16px}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }] }); }
29
29
  }
30
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImport: i0, type: ModalBaseComponent, decorators: [{
31
31
  type: Component,
32
- args: [{ selector: 'dd-modal-base', standalone: true, imports: [NgTemplateOutlet, NgComponentOutlet], template: "<div class=\"popup\">\r\n <div (click)=\"close()\" class=\"popup__close\"></div>\r\n @if (content) {\r\n <div class=\"popup__content\">\r\n <ng-template [ngTemplateOutletContext]=\"{ data }\" [ngTemplateOutlet]=\"content\"></ng-template>\r\n </div>\r\n } @if (component) {\r\n <div class=\"popup__content\">\r\n <ng-template [ngComponentOutlet]=\"component\"></ng-template>\r\n </div>\r\n } @else {\r\n <ng-content></ng-content>\r\n }\r\n</div>\r\n", styles: [".popup{position:relative;max-width:var(--main-body-width);border-radius:24px;background:var(--white-color)}@media screen and (max-width: 1320px){.popup{max-width:100%}}@media screen and (max-width: 480px){.popup{border-radius:0}}.popup__close{position:absolute;top:24px;right:24px;width:20px;height:20px;background:url('data:image/svg+xml,<svg fill=\"none\" height=\"20\" viewBox=\"0 0 20 20\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <g clip-path=\"url(%23clip0_355_22081)\">%0D%0A <path d=\"M15 5L5 15\" stroke=\"%23A79BAD\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"/>%0D%0A <path d=\"M5 5L15 15\" stroke=\"%23A79BAD\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"/>%0D%0A </g>%0D%0A <defs>%0D%0A <clipPath id=\"clip0_355_22081\">%0D%0A <rect fill=\"white\" height=\"20\" width=\"20\"/>%0D%0A </clipPath>%0D%0A </defs>%0D%0A</svg>%0D%0A') no-repeat center;cursor:pointer}@media screen and (max-width: 480px){.popup__close{top:16px;right:16px}}\n"] }]
32
+ args: [{ selector: 'dd-modal-base', standalone: true, imports: [NgTemplateOutlet, NgComponentOutlet], template: "<div class=\"popup\" [class.border-mobile]=\"borderMobile\">\r\n <div (click)=\"close()\" class=\"popup__close\"></div>\r\n @if (content) {\r\n <div class=\"popup__content\">\r\n <ng-template [ngTemplateOutletContext]=\"{ data }\" [ngTemplateOutlet]=\"content\"></ng-template>\r\n </div>\r\n } @if (component) {\r\n <div class=\"popup__content\">\r\n <ng-template [ngComponentOutlet]=\"component\"></ng-template>\r\n </div>\r\n } @else {\r\n <ng-content></ng-content>\r\n }\r\n</div>\r\n", styles: [".popup{position:relative;max-width:var(--main-body-width);border-radius:24px;background:var(--white-color)}@media screen and (max-width: 1320px){.popup{max-width:100%}}@media screen and (max-width: 480px){.popup{border-radius:0}}@media screen and (max-width: 480px){.popup.border-mobile{border-radius:24px}}.popup__close{position:absolute;top:24px;right:24px;width:20px;height:20px;background:url('data:image/svg+xml,<svg fill=\"none\" height=\"20\" viewBox=\"0 0 20 20\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <g clip-path=\"url(%23clip0_355_22081)\">%0D%0A <path d=\"M15 5L5 15\" stroke=\"%23A79BAD\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"/>%0D%0A <path d=\"M5 5L15 15\" stroke=\"%23A79BAD\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"/>%0D%0A </g>%0D%0A <defs>%0D%0A <clipPath id=\"clip0_355_22081\">%0D%0A <rect fill=\"white\" height=\"20\" width=\"20\"/>%0D%0A </clipPath>%0D%0A </defs>%0D%0A</svg>%0D%0A') no-repeat center;cursor:pointer}@media screen and (max-width: 480px){.popup__close{top:16px;right:16px}}\n"] }]
33
33
  }], ctorParameters: () => [{ type: i1.ActivatedRoute }, { type: i1.Router }, { type: i2.DDDialogRef }], propDecorators: { content: [{
34
34
  type: Input
35
35
  }], component: [{
36
36
  type: Input
37
37
  }], clearFragment: [{
38
38
  type: Input
39
- }], padding: [{
39
+ }], borderMobile: [{
40
40
  type: Input
41
41
  }], onKeydownComponent: [{
42
42
  type: HostListener,
43
43
  args: ['document:keydown', ['$event']]
44
44
  }] } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL2RpYWxvZy9tb2RhbC1iYXNlL21vZGFsLWJhc2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29yZS9kaWFsb2cvbW9kYWwtYmFzZS9tb2RhbC1iYXNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFDLGlCQUFpQixFQUFFLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFXcEUsTUFBTSxPQUFPLGtCQUFrQjtJQVM3QixZQUNVLEtBQXFCLEVBQ3JCLE1BQWMsRUFDZCxNQUF1QztRQUZ2QyxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsV0FBTSxHQUFOLE1BQU0sQ0FBaUM7UUFUakMsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFDckIsWUFBTyxHQUFHLElBQUksQ0FBQztRQWtCeEIsaUJBQVksR0FBRyxHQUFHLEVBQUU7WUFDekIsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNyRyxDQUFDO1FBQ0gsQ0FBQyxDQUFDO0lBYkMsQ0FBQztJQUdHLGtCQUFrQixDQUFDLEtBQW9CO1FBQzVDLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxRQUFRLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUNsRCxJQUFJLENBQUMsT0FBUSxFQUFFLENBQUM7UUFDbEIsQ0FBQztJQUNILENBQUM7SUFRTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDOzhHQTlCVSxrQkFBa0I7a0dBQWxCLGtCQUFrQixnUUNaL0Isa2RBY0EsMGtDRE5ZLGdCQUFnQixvSkFBRSxpQkFBaUI7OzJGQUlsQyxrQkFBa0I7a0JBUDlCLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLGlCQUFpQixDQUFDO2tJQUs5QixPQUFPO3NCQUF0QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFDVSxPQUFPO3NCQUF0QixLQUFLO2dCQVlDLGtCQUFrQjtzQkFEeEIsWUFBWTt1QkFBQyxrQkFBa0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIElucHV0LCBUZW1wbGF0ZVJlZiwgVHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7TmdDb21wb25lbnRPdXRsZXQsIE5nVGVtcGxhdGVPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHtERERpYWxvZ1JlZn0gZnJvbSBcIi4uL2RpYWxvZy1yZWZcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGQtbW9kYWwtYmFzZScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbTmdUZW1wbGF0ZU91dGxldCwgTmdDb21wb25lbnRPdXRsZXRdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC1iYXNlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tb2RhbC1iYXNlLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb2RhbEJhc2VDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjb21wb25lbnQ6IFR5cGU8YW55PiB8IG51bGwgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIGNsZWFyRnJhZ21lbnQgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBwYWRkaW5nID0gJzQwJztcclxuICBwdWJsaWMgZGF0YTogYW55O1xyXG5cclxuICBwdWJsaWMgZGVzdHJveTogKCgpID0+IHt9KSB8IHVuZGVmaW5lZDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGRpYWxvZzogREREaWFsb2dSZWY8TW9kYWxCYXNlQ29tcG9uZW50PixcclxuICApIHt9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBvbktleWRvd25Db21wb25lbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnIHx8IGV2ZW50LmtleSA9PT0gJ0VzYycpIHtcclxuICAgICAgdGhpcy5kZXN0cm95ISgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFmdGVyRGVzdHJveSA9ICgpID0+IHtcclxuICAgIGlmICh0aGlzLmNsZWFyRnJhZ21lbnQpIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHsgZnJhZ21lbnQ6IHVuZGVmaW5lZCwgcHJlc2VydmVGcmFnbWVudDogZmFsc2UsIHJlbGF0aXZlVG86IHRoaXMucm91dGUgfSk7XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kaWFsb2cuY2xvc2UoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInBvcHVwXCI+XHJcbiAgPGRpdiAoY2xpY2spPVwiY2xvc2UoKVwiIGNsYXNzPVwicG9wdXBfX2Nsb3NlXCI+PC9kaXY+XHJcbiAgQGlmIChjb250ZW50KSB7XHJcbiAgPGRpdiBjbGFzcz1cInBvcHVwX19jb250ZW50XCI+XHJcbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgZGF0YSB9XCIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29udGVudFwiPjwvbmctdGVtcGxhdGU+XHJcbiAgPC9kaXY+XHJcbiAgfSBAaWYgKGNvbXBvbmVudCkge1xyXG4gIDxkaXYgY2xhc3M9XCJwb3B1cF9fY29udGVudFwiPlxyXG4gICAgPG5nLXRlbXBsYXRlIFtuZ0NvbXBvbmVudE91dGxldF09XCJjb21wb25lbnRcIj48L25nLXRlbXBsYXRlPlxyXG4gIDwvZGl2PlxyXG4gIH0gQGVsc2Uge1xyXG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICB9XHJcbjwvZGl2PlxyXG4iXX0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL2RpYWxvZy9tb2RhbC1iYXNlL21vZGFsLWJhc2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29yZS9kaWFsb2cvbW9kYWwtYmFzZS9tb2RhbC1iYXNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFDLGlCQUFpQixFQUFFLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFXcEUsTUFBTSxPQUFPLGtCQUFrQjtJQVU3QixZQUNVLEtBQXFCLEVBQ3JCLE1BQWMsRUFDZCxNQUF1QztRQUZ2QyxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsV0FBTSxHQUFOLE1BQU0sQ0FBaUM7UUFWakMsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFDckIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFtQjlCLGlCQUFZLEdBQUcsR0FBRyxFQUFFO1lBQ3pCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDckcsQ0FBQztRQUNILENBQUMsQ0FBQztJQWJDLENBQUM7SUFHRyxrQkFBa0IsQ0FBQyxLQUFvQjtRQUM1QyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDbEQsSUFBSSxDQUFDLE9BQVEsRUFBRSxDQUFDO1FBQ2xCLENBQUM7SUFDSCxDQUFDO0lBUU0sS0FBSztRQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs4R0EvQlUsa0JBQWtCO2tHQUFsQixrQkFBa0IsMFFDWi9CLHlmQWNBLHdwQ0ROWSxnQkFBZ0Isb0pBQUUsaUJBQWlCOzsyRkFJbEMsa0JBQWtCO2tCQVA5QixTQUFTOytCQUNFLGVBQWUsY0FDYixJQUFJLFdBQ1AsQ0FBQyxnQkFBZ0IsRUFBRSxpQkFBaUIsQ0FBQztrSUFLOUIsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLGFBQWE7c0JBQTVCLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFhQyxrQkFBa0I7c0JBRHhCLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgVGVtcGxhdGVSZWYsIFR5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge05nQ29tcG9uZW50T3V0bGV0LCBOZ1RlbXBsYXRlT3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlLCBSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7REREaWFsb2dSZWZ9IGZyb20gXCIuLi9kaWFsb2ctcmVmXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2RkLW1vZGFsLWJhc2UnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW05nVGVtcGxhdGVPdXRsZXQsIE5nQ29tcG9uZW50T3V0bGV0XSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbW9kYWwtYmFzZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbW9kYWwtYmFzZS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTW9kYWxCYXNlQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBwdWJsaWMgY29udGVudDogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBwdWJsaWMgY29tcG9uZW50OiBUeXBlPGFueT4gfCBudWxsIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjbGVhckZyYWdtZW50ID0gdHJ1ZTtcclxuICBASW5wdXQoKSBwdWJsaWMgYm9yZGVyTW9iaWxlID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBkYXRhOiBhbnk7XHJcblxyXG4gIHB1YmxpYyBkZXN0cm95OiAoKCkgPT4ge30pIHwgdW5kZWZpbmVkO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgZGlhbG9nOiBERERpYWxvZ1JlZjxNb2RhbEJhc2VDb21wb25lbnQ+LFxyXG4gICkge31cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgcHVibGljIG9uS2V5ZG93bkNvbXBvbmVudChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScgfHwgZXZlbnQua2V5ID09PSAnRXNjJykge1xyXG4gICAgICB0aGlzLmRlc3Ryb3khKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWZ0ZXJEZXN0cm95ID0gKCkgPT4ge1xyXG4gICAgaWYgKHRoaXMuY2xlYXJGcmFnbWVudCkge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXSwgeyBmcmFnbWVudDogdW5kZWZpbmVkLCBwcmVzZXJ2ZUZyYWdtZW50OiBmYWxzZSwgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpYWxvZy5jbG9zZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicG9wdXBcIiBbY2xhc3MuYm9yZGVyLW1vYmlsZV09XCJib3JkZXJNb2JpbGVcIj5cclxuICA8ZGl2IChjbGljayk9XCJjbG9zZSgpXCIgY2xhc3M9XCJwb3B1cF9fY2xvc2VcIj48L2Rpdj5cclxuICBAaWYgKGNvbnRlbnQpIHtcclxuICA8ZGl2IGNsYXNzPVwicG9wdXBfX2NvbnRlbnRcIj5cclxuICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBkYXRhIH1cIiBbbmdUZW1wbGF0ZU91dGxldF09XCJjb250ZW50XCI+PC9uZy10ZW1wbGF0ZT5cclxuICA8L2Rpdj5cclxuICB9IEBpZiAoY29tcG9uZW50KSB7XHJcbiAgPGRpdiBjbGFzcz1cInBvcHVwX19jb250ZW50XCI+XHJcbiAgICA8bmctdGVtcGxhdGUgW25nQ29tcG9uZW50T3V0bGV0XT1cImNvbXBvbmVudFwiPjwvbmctdGVtcGxhdGU+XHJcbiAgPC9kaXY+XHJcbiAgfSBAZWxzZSB7XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==