@acorex/components 18.14.1-next.5 → 18.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. package/comment/lib/comment-container/comment-container.component.d.ts +1 -0
  2. package/common/lib/components/value-component.class.d.ts +1 -0
  3. package/common/lib/directives/auto-focus.directive.d.ts +1 -0
  4. package/common/lib/directives/ripple.directive.d.ts +1 -0
  5. package/data-table/lib/columns/data-table-column-resizable.directive.d.ts +1 -0
  6. package/data-table/lib/data-table/data-table.component.d.ts +61 -60
  7. package/data-table/lib/infinite-scroll-data-table/infinite-scroll-data-table.component.d.ts +7 -6
  8. package/drawer/lib/drawer/drawer-item/drawer.component.d.ts +2 -0
  9. package/esm2022/audio-wave/lib/audio-wave.component.mjs +79 -14
  10. package/esm2022/avatar/lib/avatar.component.mjs +2 -2
  11. package/esm2022/button/lib/button.component.mjs +2 -2
  12. package/esm2022/calendar/lib/calendar-range.component.mjs +2 -2
  13. package/esm2022/calendar/lib/calendar.component.mjs +3 -3
  14. package/esm2022/comment/lib/comment-container/comment-container.component.mjs +7 -3
  15. package/esm2022/common/lib/components/value-component.class.mjs +4 -2
  16. package/esm2022/common/lib/directives/auto-focus.directive.mjs +5 -3
  17. package/esm2022/common/lib/directives/inverted-color.directive.mjs +1 -1
  18. package/esm2022/common/lib/directives/ripple.directive.mjs +5 -3
  19. package/esm2022/conversation/lib/conversation-message/conversation-message.component.mjs +2 -2
  20. package/esm2022/conversation/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.mjs +2 -2
  21. package/esm2022/cron-job/lib/cron-job-container/cron-job-container.component.mjs +3 -3
  22. package/esm2022/cron-job/lib/day/day.component.mjs +3 -3
  23. package/esm2022/cron-job/lib/hours/hours.component.mjs +3 -3
  24. package/esm2022/cron-job/lib/minutes/minutes.component.mjs +3 -3
  25. package/esm2022/cron-job/lib/month/month.component.mjs +3 -3
  26. package/esm2022/cron-job/lib/seconds/seconds.component.mjs +3 -3
  27. package/esm2022/cron-job/lib/year/year.component.mjs +3 -3
  28. package/esm2022/data-table/lib/columns/data-table-column-resizable.directive.mjs +9 -7
  29. package/esm2022/data-table/lib/data-table/data-table.component.mjs +71 -67
  30. package/esm2022/data-table/lib/infinite-scroll-data-table/infinite-scroll-data-table.component.mjs +16 -11
  31. package/esm2022/drawer/lib/drawer/drawer-item/drawer.component.mjs +5 -2
  32. package/esm2022/list/lib/list.component.mjs +17 -5
  33. package/esm2022/loading/lib/loading-spinner.component.mjs +2 -2
  34. package/esm2022/loading-dialog/lib/loading-dialog.component.mjs +2 -2
  35. package/esm2022/menu/lib/context-menu.component.mjs +28 -21
  36. package/esm2022/password-box/lib/password-box.component.mjs +13 -5
  37. package/esm2022/password-box/lib/password-box.module.mjs +19 -3
  38. package/esm2022/password-box/lib/password-strength-validation/password-strength-validation.component.mjs +36 -14
  39. package/esm2022/popover/lib/popover.component.mjs +5 -3
  40. package/esm2022/popup/lib/popup.component.mjs +2 -2
  41. package/esm2022/uploader/lib/uploader-zone.directive.mjs +7 -5
  42. package/fesm2022/acorex-components-audio-wave.mjs +78 -13
  43. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  44. package/fesm2022/acorex-components-avatar.mjs +2 -2
  45. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  46. package/fesm2022/acorex-components-button.mjs +2 -2
  47. package/fesm2022/acorex-components-calendar.mjs +4 -4
  48. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  49. package/fesm2022/acorex-components-comment.mjs +7 -4
  50. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  51. package/fesm2022/acorex-components-common.mjs +6 -3
  52. package/fesm2022/acorex-components-common.mjs.map +1 -1
  53. package/fesm2022/acorex-components-conversation.mjs +2 -2
  54. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  55. package/fesm2022/acorex-components-cron-job.mjs +14 -14
  56. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  57. package/fesm2022/acorex-components-data-table.mjs +89 -81
  58. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  59. package/fesm2022/acorex-components-drawer.mjs +4 -2
  60. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  61. package/fesm2022/acorex-components-list.mjs +16 -4
  62. package/fesm2022/acorex-components-list.mjs.map +1 -1
  63. package/fesm2022/acorex-components-loading-dialog.mjs +2 -2
  64. package/fesm2022/acorex-components-loading.mjs +2 -2
  65. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  66. package/fesm2022/acorex-components-menu.mjs +24 -18
  67. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  68. package/fesm2022/acorex-components-password-box.mjs +65 -19
  69. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  70. package/fesm2022/acorex-components-popover.mjs +4 -3
  71. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  72. package/fesm2022/acorex-components-popup.mjs +2 -2
  73. package/fesm2022/acorex-components-uploader.mjs +7 -6
  74. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  75. package/menu/lib/context-menu.component.d.ts +2 -1
  76. package/package.json +1 -1
  77. package/password-box/lib/password-box.component.d.ts +9 -1
  78. package/password-box/lib/password-box.module.d.ts +3 -1
  79. package/password-box/lib/password-strength-validation/password-strength-validation.component.d.ts +23 -1
  80. package/popover/lib/popover.component.d.ts +1 -0
  81. package/uploader/lib/uploader-zone.directive.d.ts +1 -0
@@ -5,6 +5,7 @@ import * as i0 from "@angular/core";
5
5
  * @category Components
6
6
  */
7
7
  export declare class AXCommentContainerComponent {
8
+ private document;
8
9
  scrollToRelpy(id: string): void;
9
10
  static ɵfac: i0.ɵɵFactoryDeclaration<AXCommentContainerComponent, never>;
10
11
  static ɵcmp: i0.ɵɵComponentDeclaration<AXCommentContainerComponent, "ax-comment-container", never, {}, {}, never, ["*"], false, never>;
@@ -49,6 +49,7 @@ export declare class MXValueComponent<T = any> extends MXInteractiveComponent im
49
49
  protected ngOnInit(): void;
50
50
  protected ngOnDestroy(): void;
51
51
  protected registerValidation(): void;
52
+ protected document: Document;
52
53
  private validationService;
53
54
  validationRulesChange: EventEmitter<AXFormValidationRule[]>;
54
55
  private validationRules;
@@ -7,6 +7,7 @@ export declare class AXAutoFocusDirective implements AfterViewInit {
7
7
  _host: AXFocusableComponent;
8
8
  autoFocus?: boolean;
9
9
  time: number;
10
+ private document;
10
11
  constructor(renderer: Renderer2, el: ElementRef<HTMLElement>, _host: AXFocusableComponent);
11
12
  ngAfterViewInit(): void;
12
13
  protected doFocus(): void;
@@ -6,6 +6,7 @@ export declare class AXRippleDirective implements OnDestroy {
6
6
  enabled?: boolean;
7
7
  axRippleColor: string;
8
8
  ripple: HTMLSpanElement | null;
9
+ private document;
9
10
  constructor(el: ElementRef<HTMLElement>, cdr: ChangeDetectorRef);
10
11
  ngOnInit(): void;
11
12
  ngOnDestroy(): void;
@@ -6,6 +6,7 @@ export declare class AXDataTableColumnResizableDirective {
6
6
  private renderer;
7
7
  private ngZone;
8
8
  private cdr;
9
+ private document;
9
10
  column: AXDataTableColumnComponent;
10
11
  private resize$;
11
12
  private startX;
@@ -12,6 +12,7 @@ import * as i0 from "@angular/core";
12
12
  export declare class AXDataTableComponent extends AXBaseDataTable implements OnInit, AfterViewInit {
13
13
  private _unsubscriber;
14
14
  private _zone;
15
+ private document;
15
16
  /**
16
17
  * @ignore
17
18
  */
@@ -109,46 +110,46 @@ export declare class AXDataTableComponent extends AXBaseDataTable implements OnI
109
110
  */
110
111
  fixedHeader: boolean;
111
112
  /**
112
- * Indicates if the table footer should be displayed.
113
- *
114
- * @defaultValue `false`
115
- */
113
+ * Indicates if the table footer should be displayed.
114
+ *
115
+ * @defaultValue `false`
116
+ */
116
117
  showFooter: boolean;
117
118
  /**
118
- * Indicates if the table footer should be fixed.
119
- *
120
- * @defaultValue `true`
121
- */
119
+ * Indicates if the table footer should be fixed.
120
+ *
121
+ * @defaultValue `true`
122
+ */
122
123
  fixedFooter: boolean;
123
124
  /**
124
- * Specifies the height of each item in the table.
125
- *
126
- * @defaultValue `40`
127
- */
125
+ * Specifies the height of each item in the table.
126
+ *
127
+ * @defaultValue `40`
128
+ */
128
129
  itemHeight: number | 'auto';
129
130
  /**
130
- * Enables or disables row reordering.
131
- *
132
- * @defaultValue `false`
133
- */
131
+ * Enables or disables row reordering.
132
+ *
133
+ * @defaultValue `false`
134
+ */
134
135
  allowReordering: boolean;
135
136
  /**
136
- * Enables or disables paging.
137
- *
138
- * @defaultValue `true`
139
- */
137
+ * Enables or disables paging.
138
+ *
139
+ * @defaultValue `true`
140
+ */
140
141
  paging: boolean;
141
142
  /**
142
- * Specifies how data should be fetched.
143
- *
144
- * @defaultValue `'auto'`
145
- */
143
+ * Specifies how data should be fetched.
144
+ *
145
+ * @defaultValue `'auto'`
146
+ */
146
147
  fetchDataMode: 'auto' | 'manual';
147
148
  /**
148
- * Configuration for loading state.
149
- *
150
- * @defaultValue `{ enabled: true, animation: true }`
151
- */
149
+ * Configuration for loading state.
150
+ *
151
+ * @defaultValue `{ enabled: true, animation: true }`
152
+ */
152
153
  loading: {
153
154
  enabled: boolean;
154
155
  animation: boolean;
@@ -159,38 +160,38 @@ export declare class AXDataTableComponent extends AXBaseDataTable implements OnI
159
160
  */
160
161
  private _focusedRow;
161
162
  /**
162
- * Gets the currently focused row.
163
- */
163
+ * Gets the currently focused row.
164
+ */
164
165
  get focusedRow(): unknown;
165
166
  /**
166
- * Sets the currently focused row and emits the change event.
167
- *
168
- * @param v - The row to be focused.
169
- */
167
+ * Sets the currently focused row and emits the change event.
168
+ *
169
+ * @param v - The row to be focused.
170
+ */
170
171
  set focusedRow(v: unknown);
171
172
  /**
172
- * Emits when the focused row changes.
173
- *
174
- * @event
175
- */
173
+ * Emits when the focused row changes.
174
+ *
175
+ * @event
176
+ */
176
177
  focusedRowChange: EventEmitter<unknown>;
177
178
  /**
178
- * Emits when a row is clicked.
179
- *
180
- * @event onRowClick
181
- */
179
+ * Emits when a row is clicked.
180
+ *
181
+ * @event onRowClick
182
+ */
182
183
  onRowClick: EventEmitter<AXDataTableRowClick>;
183
184
  /**
184
- * Emits when a row is double-clicked.
185
- *
186
- * @event onRowDbClick
187
- */
185
+ * Emits when a row is double-clicked.
186
+ *
187
+ * @event onRowDbClick
188
+ */
188
189
  onRowDbClick: EventEmitter<AXDataTableRowDbClick>;
189
190
  /**
190
- * Emits when the order of columns changes.
191
- *
192
- * @event onColumnsOrderChanged
193
- */
191
+ * Emits when the order of columns changes.
192
+ *
193
+ * @event onColumnsOrderChanged
194
+ */
194
195
  onColumnsOrderChanged: EventEmitter<AXColumnsOrderChangedEvent>;
195
196
  /**
196
197
  * @ignore
@@ -229,22 +230,22 @@ export declare class AXDataTableComponent extends AXBaseDataTable implements OnI
229
230
  */
230
231
  protected handleRowDoubleClick(e: MouseEvent, item: unknown): void;
231
232
  /**
232
- * Handles the click event on a column header.
233
- * Toggles the sorting direction or removes the sort if already sorted.
234
- *
235
- * @param e - The mouse event triggered by the click.
236
- * @param column - The column that was clicked.
237
- * @ignore
238
- */
233
+ * Handles the click event on a column header.
234
+ * Toggles the sorting direction or removes the sort if already sorted.
235
+ *
236
+ * @param e - The mouse event triggered by the click.
237
+ * @param column - The column that was clicked.
238
+ * @ignore
239
+ */
239
240
  handleColumnClick(e: MouseEvent, column: AXDataTableColumnComponent): void;
240
241
  /**
241
242
  * @ignore
242
243
  */
243
244
  protected getSort(column: AXDataTableColumnComponent): string | undefined;
244
245
  /**
245
- * Refreshes the data in the data source and resets the data pager to the first page.
246
- * @ignore
247
- */
246
+ * Refreshes the data in the data source and resets the data pager to the first page.
247
+ * @ignore
248
+ */
248
249
  refresh(): void;
249
250
  /**
250
251
  * @ignore
@@ -9,6 +9,7 @@ import * as i0 from "@angular/core";
9
9
  * @category Components
10
10
  */
11
11
  export declare class AXInfiniteScrollDataTableComponent extends AXBaseDataTable implements OnInit, DoCheck {
12
+ private document;
12
13
  private ngZone;
13
14
  /**
14
15
  * @ignore
@@ -231,12 +232,12 @@ export declare class AXInfiniteScrollDataTableComponent extends AXBaseDataTable
231
232
  */
232
233
  protected handleRowDoubleClick(e: MouseEvent, item: unknown): void;
233
234
  /**
234
- * Handles column header clicks to toggle sorting on the column.
235
- *
236
- * @param e - The mouse event triggered by the click.
237
- * @param column - The column that was clicked.
238
- * @ignore
239
- */
235
+ * Handles column header clicks to toggle sorting on the column.
236
+ *
237
+ * @param e - The mouse event triggered by the click.
238
+ * @param column - The column that was clicked.
239
+ * @ignore
240
+ */
240
241
  handleColumnClick(e: MouseEvent, column: AXDataTableColumnComponent): void;
241
242
  /**
242
243
  * @ignore
@@ -18,7 +18,9 @@ export declare class AXDrawerComponent extends MXBaseComponent implements AfterC
18
18
  protected loaded: import("@angular/core").WritableSignal<boolean>;
19
19
  private service;
20
20
  private _zone;
21
+ private document;
21
22
  /**
23
+ *
22
24
  * @ignore
23
25
  */
24
26
  ngAfterContentInit(): void;
@@ -125,7 +125,12 @@ export class AXAudioWaveComponent {
125
125
  handleLoad() {
126
126
  this.audio?.on('load', (url) => {
127
127
  this.ngZone.run(() => {
128
- this.onStatusChanged.emit({ component: this, data: { url: url }, status: 'load', isUserInteraction: false });
128
+ this.onStatusChanged.emit({
129
+ component: this,
130
+ data: { url: url },
131
+ status: 'load',
132
+ isUserInteraction: false,
133
+ });
129
134
  });
130
135
  });
131
136
  }
@@ -133,7 +138,12 @@ export class AXAudioWaveComponent {
133
138
  handleLoading() {
134
139
  this.audio?.on('loading', (percent) => {
135
140
  this.ngZone.run(() => {
136
- this.onStatusChanged.emit({ component: this, data: { percent: percent }, status: 'loading', isUserInteraction: false });
141
+ this.onStatusChanged.emit({
142
+ component: this,
143
+ data: { percent: percent },
144
+ status: 'loading',
145
+ isUserInteraction: false,
146
+ });
137
147
  });
138
148
  });
139
149
  }
@@ -141,7 +151,12 @@ export class AXAudioWaveComponent {
141
151
  handleDecode() {
142
152
  this.audio?.on('decode', (duration) => {
143
153
  this.ngZone.run(() => {
144
- this.onStatusChanged.emit({ component: this, data: { duration: duration }, status: 'decode', isUserInteraction: false });
154
+ this.onStatusChanged.emit({
155
+ component: this,
156
+ data: { duration: duration },
157
+ status: 'decode',
158
+ isUserInteraction: false,
159
+ });
145
160
  });
146
161
  });
147
162
  }
@@ -149,7 +164,12 @@ export class AXAudioWaveComponent {
149
164
  handleReady() {
150
165
  this.audio?.on('ready', (duration) => {
151
166
  this.ngZone.run(() => {
152
- this.onStatusChanged.emit({ component: this, data: { duration: duration }, status: 'ready', isUserInteraction: false });
167
+ this.onStatusChanged.emit({
168
+ component: this,
169
+ data: { duration: duration },
170
+ status: 'ready',
171
+ isUserInteraction: false,
172
+ });
153
173
  });
154
174
  });
155
175
  }
@@ -157,7 +177,12 @@ export class AXAudioWaveComponent {
157
177
  handleRedRawComplete() {
158
178
  this.audio?.on('redrawcomplete', () => {
159
179
  this.ngZone.run(() => {
160
- this.onStatusChanged.emit({ component: this, data: null, status: 'redrawcomplete', isUserInteraction: false });
180
+ this.onStatusChanged.emit({
181
+ component: this,
182
+ data: null,
183
+ status: 'redrawcomplete',
184
+ isUserInteraction: false,
185
+ });
161
186
  });
162
187
  });
163
188
  }
@@ -181,7 +206,12 @@ export class AXAudioWaveComponent {
181
206
  handleFinish() {
182
207
  this.audio?.on('finish', () => {
183
208
  this.ngZone.run(() => {
184
- this.onStatusChanged.emit({ component: this, data: null, status: 'finish', isUserInteraction: false });
209
+ this.onStatusChanged.emit({
210
+ component: this,
211
+ data: null,
212
+ status: 'finish',
213
+ isUserInteraction: false,
214
+ });
185
215
  });
186
216
  });
187
217
  }
@@ -189,7 +219,12 @@ export class AXAudioWaveComponent {
189
219
  handleTimeUpdate() {
190
220
  this.audio?.on('timeupdate', (currentTime) => {
191
221
  this.ngZone.run(() => {
192
- this.onStatusChanged.emit({ component: this, data: { currentTime: currentTime }, status: 'timeupdate', isUserInteraction: false });
222
+ this.onStatusChanged.emit({
223
+ component: this,
224
+ data: { currentTime: currentTime },
225
+ status: 'timeupdate',
226
+ isUserInteraction: false,
227
+ });
193
228
  });
194
229
  });
195
230
  }
@@ -197,7 +232,12 @@ export class AXAudioWaveComponent {
197
232
  handleSeeking() {
198
233
  this.audio?.on('seeking', (currentTime) => {
199
234
  this.ngZone.run(() => {
200
- this.onStatusChanged.emit({ component: this, data: { currentTime: currentTime }, status: 'seeking', isUserInteraction: false });
235
+ this.onStatusChanged.emit({
236
+ component: this,
237
+ data: { currentTime: currentTime },
238
+ status: 'seeking',
239
+ isUserInteraction: false,
240
+ });
201
241
  });
202
242
  });
203
243
  }
@@ -205,7 +245,12 @@ export class AXAudioWaveComponent {
205
245
  handleInteraction() {
206
246
  this.audio?.on('interaction', (newTime) => {
207
247
  this.ngZone.run(() => {
208
- this.onStatusChanged.emit({ component: this, data: { newTime: newTime }, status: 'interaction', isUserInteraction: false });
248
+ this.onStatusChanged.emit({
249
+ component: this,
250
+ data: { newTime: newTime },
251
+ status: 'interaction',
252
+ isUserInteraction: false,
253
+ });
209
254
  });
210
255
  });
211
256
  }
@@ -213,7 +258,12 @@ export class AXAudioWaveComponent {
213
258
  handleClick() {
214
259
  this.audio?.on('click', (relativeX) => {
215
260
  this.ngZone.run(() => {
216
- this.onStatusChanged.emit({ component: this, data: { relativeX: relativeX }, status: 'click', isUserInteraction: false });
261
+ this.onStatusChanged.emit({
262
+ component: this,
263
+ data: { relativeX: relativeX },
264
+ status: 'click',
265
+ isUserInteraction: false,
266
+ });
217
267
  });
218
268
  });
219
269
  }
@@ -221,7 +271,12 @@ export class AXAudioWaveComponent {
221
271
  handleDrag() {
222
272
  this.audio?.on('drag', (relativeX) => {
223
273
  this.ngZone.run(() => {
224
- this.onStatusChanged.emit({ component: this, data: { relativeX: relativeX }, status: 'drag', isUserInteraction: false });
274
+ this.onStatusChanged.emit({
275
+ component: this,
276
+ data: { relativeX: relativeX },
277
+ status: 'drag',
278
+ isUserInteraction: false,
279
+ });
225
280
  });
226
281
  });
227
282
  }
@@ -242,7 +297,12 @@ export class AXAudioWaveComponent {
242
297
  handleZoom() {
243
298
  this.audio?.on('zoom', (minPxPerSec) => {
244
299
  this.ngZone.run(() => {
245
- this.onStatusChanged.emit({ component: this, data: { minPxPerSec: minPxPerSec }, status: 'zoom', isUserInteraction: false });
300
+ this.onStatusChanged.emit({
301
+ component: this,
302
+ data: { minPxPerSec: minPxPerSec },
303
+ status: 'zoom',
304
+ isUserInteraction: false,
305
+ });
246
306
  });
247
307
  });
248
308
  }
@@ -250,7 +310,12 @@ export class AXAudioWaveComponent {
250
310
  handleDestroy() {
251
311
  this.audio?.on('destroy', () => {
252
312
  this.ngZone.run(() => {
253
- this.onStatusChanged.emit({ component: this, data: null, status: 'destroy', isUserInteraction: false });
313
+ this.onStatusChanged.emit({
314
+ component: this,
315
+ data: null,
316
+ status: 'destroy',
317
+ isUserInteraction: false,
318
+ });
254
319
  });
255
320
  });
256
321
  }
@@ -272,4 +337,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
272
337
  type: ViewChild,
273
338
  args: ['d', { static: false }]
274
339
  }] } });
275
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaW8td2F2ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYXVkaW8td2F2ZS9zcmMvbGliL2F1ZGlvLXdhdmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2F1ZGlvLXdhdmUvc3JjL2xpYi9hdWRpby13YXZlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUVWLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxVQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBSXZDOzs7O0dBSUc7QUFPSCxNQUFNLE9BQU8sb0JBQW9CO0lBZ0MvQjs7T0FFRztJQUNIO1FBN0JBOztXQUVHO1FBQ0gsV0FBTSxHQUE4QixLQUFLLEVBQWdCLENBQUM7UUFFMUQ7Ozs7V0FJRztRQUNILG9CQUFlLEdBQUcsTUFBTSxFQUEwQixDQUFDO1FBRW5ELGVBQVUsR0FBRyxNQUFNLENBQXVELFFBQVEsQ0FBQyxDQUFDO1FBRXBGLGlCQUFZLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBTzFCOztXQUVHO1FBQ0ssV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQU05QixlQUFlLENBQUMsR0FBRyxFQUFFO1lBQ25CLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQzlGLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBd0IsQ0FBQyxD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QTRFO0lBQ2xFLGFBQWE7UUFDckIsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRTtZQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUMxRyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELDRFQUE0RTtJQUNsRSxXQUFXO1FBQ25CLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ3JHLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQW5TVSxvQkFBb0I7a0dBQXBCLG9CQUFvQix1VUM1QmpDLG9XQVdDOzsyRkRpQlksb0JBQW9CO2tCQU5oQyxTQUFTOytCQUNFLGVBQWUsaUJBR1YsaUJBQWlCLENBQUMsSUFBSTt3REFNUSxHQUFHO3NCQUEvQyxTQUFTO3VCQUFDLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0U2lnbmFsLFxuICBOZ1pvbmUsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGFmdGVyTmV4dFJlbmRlcixcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgb3V0cHV0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IFdhdmVTdXJmZXIgZnJvbSAnd2F2ZXN1cmZlci5qcyc7XG5pbXBvcnQgeyBBWEF1ZGlvV2F2ZUNoYW5nZUV2ZW50LCBBWFdhdmVDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMvYXVkaW8td2F2ZS5pbnRlcmZhY2UnO1xuXG5cbi8qKlxuICogRGlzcGxheXMgYW5kIGludGVyYWN0cyB3aXRoIGF1ZGlvIHdhdmVmb3JtIHZpc3VhbGl6YXRpb24uXG4gKiBcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWF1ZGlvLXdhdmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXVkaW8td2F2ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F1ZGlvLXdhdmUuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhBdWRpb1dhdmVDb21wb25lbnQge1xuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIEBWaWV3Q2hpbGQoJ2QnLCB7IHN0YXRpYzogZmFsc2UgfSkgcHJvdGVjdGVkIGRpdjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gc2V0dGluZ3MgZm9yIHRoZSBhdWRpbyB3YXZlLlxuICAgKi9cbiAgY29uZmlnOiBJbnB1dFNpZ25hbDxBWFdhdmVDb25maWc+ID0gaW5wdXQ8QVhXYXZlQ29uZmlnPigpO1xuXG4gIC8qKlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSBzdGF0dXMgb2YgdGhlIGF1ZGlvIHdhdmUgY2hhbmdlcy5cbiAgICpcbiAgICogQGV2ZW50XG4gICAqL1xuICBvblN0YXR1c0NoYW5nZWQgPSBvdXRwdXQ8QVhBdWRpb1dhdmVDaGFuZ2VFdmVudD4oKTtcblxuICBhdWRpb1N0YXRlID0gc2lnbmFsPCdwbGF5aW5nJyB8ICdwYXVzZWQnIHwgJ2xvYWRpbmcnIHwgJ3JlYWR5JyB8ICdlcnJvcic+KCdwYXVzZWQnKTtcblxuICBlcnJvck1lc3NhZ2UgPSBzaWduYWwoJycpO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIGF1ZGlvOiBXYXZlU3VyZmVyO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBuZ1pvbmUgPSBpbmplY3QoTmdab25lKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgICBjb25zdCBwcmltYXJ5MjAwID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5ib2R5KS5nZXRQcm9wZXJ0eVZhbHVlKCctLWF4LWNvbG9yLXByaW1hcnktMjAwJyk7XG4gICAgICBjb25zdCBwcmltYXJ5NzAwID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5ib2R5KS5nZXRQcm9wZXJ0eVZhbHVlKCctLWF4LWNvbG9yLXByaW1hcnktNzAwJyk7XG5cbiAgICAgIHRoaXMuYXVkaW8gPSBXYXZlU3VyZmVyLmNyZWF0ZSh7XG4gICAgICAgIGNvbnRhaW5lcjogdGhpcy5kaXYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgd2F2ZUNvbG9yOiB0aGlzLmNvbmZpZygpPy53YXZlQ29sb3IgfHwgYHJnYmEoJHtwcmltYXJ5MjAwfSlgLFxuICAgICAgICBwcm9ncmVzc0NvbG9yOiB0aGlzLmNvbmZpZygpPy5wcm9ncmVzc0NvbG9yIHx8IGByZ2JhKCR7cHJpbWFyeTcwMH0pYCxcbiAgICAgICAgdXJsOiB0aGlzLmNvbmZpZygpPy51cmwgfHwgJycsXG4gICAgICAgIGJhcldpZHRoOiB0aGlzLmNvbmZpZygpPy5iYXJXaWR0aCB8fCAyLFxuICAgICAgICBiYXJSYWRpdXM6IHRoaXMuY29uZmlnKCk/LmJhclJhZGl1cyB8fCAyLFxuICAgICAgICBiYXJHYXA6IHRoaXMuY29uZmlnKCk/LmJhckdhcCB8fCAyLFxuICAgICAgICBoZWlnaHQ6IHRoaXMuY29uZmlnKCk/LmhlaWdodCB8fCAzNixcbiAgICAgIH0pO1xuICAgICAgdGhpcy5sb2FkKCk7XG4gICAgICB0aGlzLmF1ZGlvPy5vbignbG9hZGluZycsICgpID0+IHtcbiAgICAgICAgdGhpcy5hdWRpb1N0YXRlLnNldCgnbG9hZGluZycpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmF1ZGlvPy5vbigncmVhZHknLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuYXVkaW9TdGF0ZS5zZXQoJ3JlYWR5Jyk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuYXVkaW8/Lm9uKCdlcnJvcicsIChlKSA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlLnNldChlPy5tZXNzYWdlKTtcbiAgICAgICAgdGhpcy5hdWRpb1N0YXRlLnNldCgnZXJyb3InKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5iaW5kRXZlbnRzKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTG9hZHMgdGhlIGF1ZGlvIGZyb20gdGhlIHNwZWNpZmllZCBVUkwuXG4gICAqXG4gICAqIEBwYXJhbSB1cmwgLSBUaGUgVVJMIG9mIHRoZSBhdWRpbyB0byBsb2FkLiBEZWZhdWx0cyB0byB0aGUgVVJMIGZyb20gdGhlIGNvbmZpZy5cbiAgICovXG4gIGxvYWQodXJsID0gdGhpcy5jb25maWcoKS51cmwpIHtcbiAgICB0aGlzLmF1ZGlvLmxvYWQodXJsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQbGF5cyB0aGUgYXVkaW8uXG4gICAqXG4gICAqL1xuICBwbGF5KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuYXVkaW8/LnBsYXkoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXVzZXMgdGhlIGF1ZGlvLlxuICAgKi9cbiAgcGF1c2UoKTogdm9pZCB7XG4gICAgdGhpcy5hdWRpbz8ucGF1c2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIGR1cmF0aW9uIG9mIHRoZSBhdWRpby5cbiAgICpcbiAgICovXG4gIGdldER1cmF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmF1ZGlvPy5nZXREdXJhdGlvbigpID8/IDA7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIHRoZSBtZWRpYSBlbGVtZW50IG9mIHRoZSBhdWRpby5cbiAgICpcbiAgICovXG4gIGdldE1lZGlhRWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5hdWRpbz8uZ2V0TWVkaWFFbGVtZW50KCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxheWJhY2sgcmF0ZSBvZiB0aGUgYXVkaW8uXG4gICAqXG4gICAqIEBwYXJhbSByYXRlIC0gVGhlIHBsYXliYWNrIHJhdGUgdG8gc2V0LlxuICAgKi9cbiAgc2V0UmF0ZShyYXRlOiBudW1iZXIpIHtcbiAgICB0aGlzLmF1ZGlvLnNldFBsYXliYWNrUmF0ZShyYXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIGJpbmRFdmVudHMoKSB7XG4gICAgdGhpcy5oYW5kbGVMb2FkKCk7XG4gICAgdGhpcy5oYW5kbGVMb2FkaW5nKCk7XG4gICAgdGhpcy5oYW5kbGVEZWNvZGUoKTtcbiAgICB0aGlzLmhhbmRsZVJlYWR5KCk7XG4gICAgdGhpcy5oYW5kbGVSZWRSYXdDb21wbGV0ZSgpO1xuICAgIHRoaXMuaGFuZGxlUGxheSgpO1xuICAgIHRoaXMuaGFuZGxlUGF1c2UoKTtcbiAgICB0aGlzLmhhbmRsZUZpbmlzaCgpO1xuICAgIHRoaXMuaGFuZGxlVGltZVVwZGF0ZSgpO1xuICAgIHRoaXMuaGFuZGxlU2Vla2luZygpO1xuICAgIHRoaXMuaGFuZGxlSW50ZXJhY3Rpb24oKTtcbiAgICB0aGlzLmhhbmRsZUNsaWNrKCk7XG4gICAgdGhpcy5oYW5kbGVEcmFnKCk7XG4gICAgdGhpcy5oYW5kbGVTY3JvbGwoKTtcbiAgICB0aGlzLmhhbmRsZVpvb20oKTtcbiAgICB0aGlzLmhhbmRsZURlc3Ryb3koKTtcbiAgICB0aGlzLmhhbmRsZUVycm9yKCk7XG4gIH1cbiAgLyoqIFdoZW4gYXVkaW8gc3RhcnRzIGxvYWRpbmcgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUxvYWQoKSB7XG4gICAgdGhpcy5hdWRpbz8ub24oJ2xvYWQnLCAodXJsKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiB7IHVybDogdXJsIH0sIHN0YXR1czogJ2xvYWQnLCBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBEdXJpbmcgYXVkaW8gbG9hZGluZyAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlTG9hZGluZygpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbignbG9hZGluZycsIChwZXJjZW50KSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiB7IHBlcmNlbnQ6IHBlcmNlbnQgfSwgc3RhdHVzOiAnbG9hZGluZycsIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIFdoZW4gdGhlIGF1ZGlvIGhhcyBiZWVuIGRlY29kZWQgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZURlY29kZSgpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbignZGVjb2RlJywgKGR1cmF0aW9uKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiB7IGR1cmF0aW9uOiBkdXJhdGlvbiB9LCBzdGF0dXM6ICdkZWNvZGUnLCBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBXaGVuIHRoZSBhdWRpbyBpcyBib3RoIGRlY29kZWQgYW5kIGNhbiBwbGF5ICovXG4gIHByb3RlY3RlZCBoYW5kbGVSZWFkeSgpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbigncmVhZHknLCAoZHVyYXRpb24pID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub25TdGF0dXNDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGRhdGE6IHsgZHVyYXRpb246IGR1cmF0aW9uIH0sIHN0YXR1czogJ3JlYWR5JywgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiBhbGwgYXVkaW8gY2hhbm5lbCBjaHVua3Mgb2YgdGhlIHdhdmVmb3JtIGhhdmUgZHJhd24gKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVJlZFJhd0NvbXBsZXRlKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdyZWRyYXdjb21wbGV0ZScsICgpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub25TdGF0dXNDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGRhdGE6IG51bGwsIHN0YXR1czogJ3JlZHJhd2NvbXBsZXRlJywgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiB0aGUgYXVkaW8gc3RhcnRzIHBsYXlpbmcgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVBsYXkoKSB7XG4gICAgdGhpcy5hdWRpbz8ub24oJ3BsYXknLCAoKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiBudWxsLCBzdGF0dXM6ICdwbGF5JywgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiB0aGUgYXVkaW8gcGF1c2VzICovXG4gIHByb3RlY3RlZCBoYW5kbGVQYXVzZSgpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbigncGF1c2UnLCAoKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiBudWxsLCBzdGF0dXM6ICdwYXVzZScsIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIFdoZW4gdGhlIGF1ZGlvIGZpbmlzaGVzIHBsYXlpbmcgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUZpbmlzaCgpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbignZmluaXNoJywgKCkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZWQuZW1pdCh7IGNvbXBvbmVudDogdGhpcywgZGF0YTogbnVsbCwgc3RhdHVzOiAnZmluaXNoJywgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogT24gYXVkaW8gcG9zaXRpb24gY2hhbmdlLCBmaXJlcyBjb250aW51b3VzbHkgZHVyaW5nIHBsYXliYWNrICovXG4gIHByb3RlY3RlZCBoYW5kbGVUaW1lVXBkYXRlKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCd0aW1ldXBkYXRlJywgKGN1cnJlbnRUaW1lKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiB7IGN1cnJlbnRUaW1lOiBjdXJyZW50VGltZSB9LCBzdGF0dXM6ICd0aW1ldXBkYXRlJywgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiB0aGUgdXNlciBzZWVrcyB0byBhIG5ldyBwb3NpdGlvbiAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlU2Vla2luZygpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbignc2Vla2luZycsIChjdXJyZW50VGltZSkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZWQuZW1pdCh7IGNvbXBvbmVudDogdGhpcywgZGF0YTogeyBjdXJyZW50VGltZTogY3VycmVudFRpbWUgfSwgc3RhdHVzOiAnc2Vla2luZycsIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIFdoZW4gdGhlIHVzZXIgaW50ZXJhY3RzIHdpdGggdGhlIHdhdmVmb3JtIChpLmcuIGNsaWNrcyBvciBkcmFncyBvbiBpdCkgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUludGVyYWN0aW9uKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdpbnRlcmFjdGlvbicsIChuZXdUaW1lKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiB7IG5ld1RpbWU6IG5ld1RpbWUgfSwgc3RhdHVzOiAnaW50ZXJhY3Rpb24nLCBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBXaGVuIHRoZSB1c2VyIGNsaWNrcyBvbiB0aGUgd2F2ZWZvcm0gKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUNsaWNrKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdjbGljaycsIChyZWxhdGl2ZVgpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub25TdGF0dXNDaGFuZ2VkLmVtaXQoeyBjb21wb25lbnQ6IHRoaXMsIGRhdGE6IHsgcmVsYXRpdmVYOiByZWxhdGl2ZVggfSwgc3RhdHVzOiAnY2xpY2snLCBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBXaGVuIHRoZSB1c2VyIGRyYWdzIHRoZSBjdXJzb3IgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZURyYWcoKSB7XG4gICAgdGhpcy5hdWRpbz8ub24oJ2RyYWcnLCAocmVsYXRpdmVYKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiB7IHJlbGF0aXZlWDogcmVsYXRpdmVYIH0sIHN0YXR1czogJ2RyYWcnLCBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBXaGVuIHRoZSB3YXZlZm9ybSBpcyBzY3JvbGxlZCAocGFubmVkKSAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlU2Nyb2xsKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdzY3JvbGwnLCAodmlzaWJsZVN0YXJ0VGltZSwgdmlzaWJsZUVuZFRpbWUpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub25TdGF0dXNDaGFuZ2VkLmVtaXQoe1xuICAgICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgICBkYXRhOiB7IHZpc2libGVTdGFydFRpbWUsIHZpc2libGVFbmRUaW1lIH0sXG4gICAgICAgICAgc3RhdHVzOiAnc2Nyb2xsJyxcbiAgICAgICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiB0aGUgem9vbSBsZXZlbCBjaGFuZ2VzICovXG4gIHByb3RlY3RlZCBoYW5kbGVab29tKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCd6b29tJywgKG1pblB4UGVyU2VjKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiB7IG1pblB4UGVyU2VjOiBtaW5QeFBlclNlYyB9LCBzdGF0dXM6ICd6b29tJywgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogSnVzdCBiZWZvcmUgdGhlIHdhdmVmb3JtIGlzIGRlc3Ryb3llZCBzbyB5b3UgY2FuIGNsZWFuIHVwIHlvdXIgZXZlbnRzICovXG4gIHByb3RlY3RlZCBoYW5kbGVEZXN0cm95KCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdkZXN0cm95JywgKCkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZWQuZW1pdCh7IGNvbXBvbmVudDogdGhpcywgZGF0YTogbnVsbCwgc3RhdHVzOiAnZGVzdHJveScsIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG4gIC8qKiBKdXN0IGJlZm9yZSB0aGUgd2F2ZWZvcm0gaXMgZGVzdHJveWVkIHNvIHlvdSBjYW4gY2xlYW4gdXAgeW91ciBldmVudHMgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUVycm9yKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdlcnJvcicsIChlKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiBlLCBzdGF0dXM6ICdlcnJvcicsIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYXgtYXVkaW8td2F2ZVwiICNkIFtuZ1N0eWxlXT1cInsnZGlzcGxheSc6IGF1ZGlvU3RhdGUoKSA9PT0gJ3JlYWR5JyA/ICdibG9jaycgOiAnbm9uZScgfVwiPjwvZGl2PlxuXG5Ac3dpdGNoIChhdWRpb1N0YXRlKCkpIHtcbkBjYXNlICgnbG9hZGluZycpIHtcbjxkaXYgY2xhc3M9XCJheC1hdWRpby1za2VsZXRvblwiPjwvZGl2PlxufVxuQGNhc2UgKCdlcnJvcicpIHtcbjxkaXYgY2xhc3M9XCJheC13YXZlLW1lc3NhZ2VcIj5cbiAgICB7eydlcnJvci5tZXNzYWdlJyB8IHRyYW5zbGF0ZTp7IHBhcmFtczp7IG1lc3NhZ2U6IGVycm9yTWVzc2FnZSgpIH0gfSB8IGFzeW5jIH19XG48L2Rpdj5cbn1cbn0iXX0=
340
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaW8td2F2ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvYXVkaW8td2F2ZS9zcmMvbGliL2F1ZGlvLXdhdmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2F1ZGlvLXdhdmUvc3JjL2xpYi9hdWRpby13YXZlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUVWLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxVQUFVLE1BQU0sZUFBZSxDQUFDOzs7O0FBR3ZDOzs7O0dBSUc7QUFPSCxNQUFNLE9BQU8sb0JBQW9CO0lBZ0MvQjs7T0FFRztJQUNIO1FBN0JBOztXQUVHO1FBQ0gsV0FBTSxHQUE4QixLQUFLLEVBQWdCLENBQUM7UUFFMUQ7Ozs7V0FJRztRQUNILG9CQUFlLEdBQUcsTUFBTSxFQUEwQixDQUFDO1FBRW5ELGVBQVUsR0FBRyxNQUFNLENBQXVELFFBQVEsQ0FBQyxDQUFDO1FBRXBGLGlCQUFZLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBTzFCOztXQUVHO1FBQ0ssV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQU05QixlQUFlLENBQUMsR0FBRyxFQUFFO1lBQ25CLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQzlGLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBd0IsQ0FBQyxD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dCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0U2lnbmFsLFxuICBOZ1pvbmUsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGFmdGVyTmV4dFJlbmRlcixcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgb3V0cHV0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IFdhdmVTdXJmZXIgZnJvbSAnd2F2ZXN1cmZlci5qcyc7XG5pbXBvcnQgeyBBWEF1ZGlvV2F2ZUNoYW5nZUV2ZW50LCBBWFdhdmVDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMvYXVkaW8td2F2ZS5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIERpc3BsYXlzIGFuZCBpbnRlcmFjdHMgd2l0aCBhdWRpbyB3YXZlZm9ybSB2aXN1YWxpemF0aW9uLlxuICpcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWF1ZGlvLXdhdmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXVkaW8td2F2ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F1ZGlvLXdhdmUuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhBdWRpb1dhdmVDb21wb25lbnQge1xuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIEBWaWV3Q2hpbGQoJ2QnLCB7IHN0YXRpYzogZmFsc2UgfSkgcHJvdGVjdGVkIGRpdjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gc2V0dGluZ3MgZm9yIHRoZSBhdWRpbyB3YXZlLlxuICAgKi9cbiAgY29uZmlnOiBJbnB1dFNpZ25hbDxBWFdhdmVDb25maWc+ID0gaW5wdXQ8QVhXYXZlQ29uZmlnPigpO1xuXG4gIC8qKlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSBzdGF0dXMgb2YgdGhlIGF1ZGlvIHdhdmUgY2hhbmdlcy5cbiAgICpcbiAgICogQGV2ZW50XG4gICAqL1xuICBvblN0YXR1c0NoYW5nZWQgPSBvdXRwdXQ8QVhBdWRpb1dhdmVDaGFuZ2VFdmVudD4oKTtcblxuICBhdWRpb1N0YXRlID0gc2lnbmFsPCdwbGF5aW5nJyB8ICdwYXVzZWQnIHwgJ2xvYWRpbmcnIHwgJ3JlYWR5JyB8ICdlcnJvcic+KCdwYXVzZWQnKTtcblxuICBlcnJvck1lc3NhZ2UgPSBzaWduYWwoJycpO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIGF1ZGlvOiBXYXZlU3VyZmVyO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBuZ1pvbmUgPSBpbmplY3QoTmdab25lKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgICBjb25zdCBwcmltYXJ5MjAwID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5ib2R5KS5nZXRQcm9wZXJ0eVZhbHVlKCctLWF4LWNvbG9yLXByaW1hcnktMjAwJyk7XG4gICAgICBjb25zdCBwcmltYXJ5NzAwID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5ib2R5KS5nZXRQcm9wZXJ0eVZhbHVlKCctLWF4LWNvbG9yLXByaW1hcnktNzAwJyk7XG5cbiAgICAgIHRoaXMuYXVkaW8gPSBXYXZlU3VyZmVyLmNyZWF0ZSh7XG4gICAgICAgIGNvbnRhaW5lcjogdGhpcy5kaXYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgd2F2ZUNvbG9yOiB0aGlzLmNvbmZpZygpPy53YXZlQ29sb3IgfHwgYHJnYmEoJHtwcmltYXJ5MjAwfSlgLFxuICAgICAgICBwcm9ncmVzc0NvbG9yOiB0aGlzLmNvbmZpZygpPy5wcm9ncmVzc0NvbG9yIHx8IGByZ2JhKCR7cHJpbWFyeTcwMH0pYCxcbiAgICAgICAgdXJsOiB0aGlzLmNvbmZpZygpPy51cmwgfHwgJycsXG4gICAgICAgIGJhcldpZHRoOiB0aGlzLmNvbmZpZygpPy5iYXJXaWR0aCB8fCAyLFxuICAgICAgICBiYXJSYWRpdXM6IHRoaXMuY29uZmlnKCk/LmJhclJhZGl1cyB8fCAyLFxuICAgICAgICBiYXJHYXA6IHRoaXMuY29uZmlnKCk/LmJhckdhcCB8fCAyLFxuICAgICAgICBoZWlnaHQ6IHRoaXMuY29uZmlnKCk/LmhlaWdodCB8fCAzNixcbiAgICAgIH0pO1xuICAgICAgdGhpcy5sb2FkKCk7XG4gICAgICB0aGlzLmF1ZGlvPy5vbignbG9hZGluZycsICgpID0+IHtcbiAgICAgICAgdGhpcy5hdWRpb1N0YXRlLnNldCgnbG9hZGluZycpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmF1ZGlvPy5vbigncmVhZHknLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuYXVkaW9TdGF0ZS5zZXQoJ3JlYWR5Jyk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuYXVkaW8/Lm9uKCdlcnJvcicsIChlKSA9PiB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlLnNldChlPy5tZXNzYWdlKTtcbiAgICAgICAgdGhpcy5hdWRpb1N0YXRlLnNldCgnZXJyb3InKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5iaW5kRXZlbnRzKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTG9hZHMgdGhlIGF1ZGlvIGZyb20gdGhlIHNwZWNpZmllZCBVUkwuXG4gICAqXG4gICAqIEBwYXJhbSB1cmwgLSBUaGUgVVJMIG9mIHRoZSBhdWRpbyB0byBsb2FkLiBEZWZhdWx0cyB0byB0aGUgVVJMIGZyb20gdGhlIGNvbmZpZy5cbiAgICovXG4gIGxvYWQodXJsID0gdGhpcy5jb25maWcoKS51cmwpIHtcbiAgICB0aGlzLmF1ZGlvLmxvYWQodXJsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQbGF5cyB0aGUgYXVkaW8uXG4gICAqXG4gICAqL1xuICBwbGF5KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuYXVkaW8/LnBsYXkoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXVzZXMgdGhlIGF1ZGlvLlxuICAgKi9cbiAgcGF1c2UoKTogdm9pZCB7XG4gICAgdGhpcy5hdWRpbz8ucGF1c2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIGR1cmF0aW9uIG9mIHRoZSBhdWRpby5cbiAgICpcbiAgICovXG4gIGdldER1cmF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmF1ZGlvPy5nZXREdXJhdGlvbigpID8/IDA7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIHRoZSBtZWRpYSBlbGVtZW50IG9mIHRoZSBhdWRpby5cbiAgICpcbiAgICovXG4gIGdldE1lZGlhRWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5hdWRpbz8uZ2V0TWVkaWFFbGVtZW50KCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxheWJhY2sgcmF0ZSBvZiB0aGUgYXVkaW8uXG4gICAqXG4gICAqIEBwYXJhbSByYXRlIC0gVGhlIHBsYXliYWNrIHJhdGUgdG8gc2V0LlxuICAgKi9cbiAgc2V0UmF0ZShyYXRlOiBudW1iZXIpIHtcbiAgICB0aGlzLmF1ZGlvLnNldFBsYXliYWNrUmF0ZShyYXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIGJpbmRFdmVudHMoKSB7XG4gICAgdGhpcy5oYW5kbGVMb2FkKCk7XG4gICAgdGhpcy5oYW5kbGVMb2FkaW5nKCk7XG4gICAgdGhpcy5oYW5kbGVEZWNvZGUoKTtcbiAgICB0aGlzLmhhbmRsZVJlYWR5KCk7XG4gICAgdGhpcy5oYW5kbGVSZWRSYXdDb21wbGV0ZSgpO1xuICAgIHRoaXMuaGFuZGxlUGxheSgpO1xuICAgIHRoaXMuaGFuZGxlUGF1c2UoKTtcbiAgICB0aGlzLmhhbmRsZUZpbmlzaCgpO1xuICAgIHRoaXMuaGFuZGxlVGltZVVwZGF0ZSgpO1xuICAgIHRoaXMuaGFuZGxlU2Vla2luZygpO1xuICAgIHRoaXMuaGFuZGxlSW50ZXJhY3Rpb24oKTtcbiAgICB0aGlzLmhhbmRsZUNsaWNrKCk7XG4gICAgdGhpcy5oYW5kbGVEcmFnKCk7XG4gICAgdGhpcy5oYW5kbGVTY3JvbGwoKTtcbiAgICB0aGlzLmhhbmRsZVpvb20oKTtcbiAgICB0aGlzLmhhbmRsZURlc3Ryb3koKTtcbiAgICB0aGlzLmhhbmRsZUVycm9yKCk7XG4gIH1cbiAgLyoqIFdoZW4gYXVkaW8gc3RhcnRzIGxvYWRpbmcgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUxvYWQoKSB7XG4gICAgdGhpcy5hdWRpbz8ub24oJ2xvYWQnLCAodXJsKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgICAgZGF0YTogeyB1cmw6IHVybCB9LFxuICAgICAgICAgIHN0YXR1czogJ2xvYWQnLFxuICAgICAgICAgIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBEdXJpbmcgYXVkaW8gbG9hZGluZyAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlTG9hZGluZygpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbignbG9hZGluZycsIChwZXJjZW50KSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgICAgZGF0YTogeyBwZXJjZW50OiBwZXJjZW50IH0sXG4gICAgICAgICAgc3RhdHVzOiAnbG9hZGluZycsXG4gICAgICAgICAgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlLFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIFdoZW4gdGhlIGF1ZGlvIGhhcyBiZWVuIGRlY29kZWQgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZURlY29kZSgpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbignZGVjb2RlJywgKGR1cmF0aW9uKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgICAgZGF0YTogeyBkdXJhdGlvbjogZHVyYXRpb24gfSxcbiAgICAgICAgICBzdGF0dXM6ICdkZWNvZGUnLFxuICAgICAgICAgIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBXaGVuIHRoZSBhdWRpbyBpcyBib3RoIGRlY29kZWQgYW5kIGNhbiBwbGF5ICovXG4gIHByb3RlY3RlZCBoYW5kbGVSZWFkeSgpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbigncmVhZHknLCAoZHVyYXRpb24pID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub25TdGF0dXNDaGFuZ2VkLmVtaXQoe1xuICAgICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgICBkYXRhOiB7IGR1cmF0aW9uOiBkdXJhdGlvbiB9LFxuICAgICAgICAgIHN0YXR1czogJ3JlYWR5JyxcbiAgICAgICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiBhbGwgYXVkaW8gY2hhbm5lbCBjaHVua3Mgb2YgdGhlIHdhdmVmb3JtIGhhdmUgZHJhd24gKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVJlZFJhd0NvbXBsZXRlKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdyZWRyYXdjb21wbGV0ZScsICgpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub25TdGF0dXNDaGFuZ2VkLmVtaXQoe1xuICAgICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgICBkYXRhOiBudWxsLFxuICAgICAgICAgIHN0YXR1czogJ3JlZHJhd2NvbXBsZXRlJyxcbiAgICAgICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiB0aGUgYXVkaW8gc3RhcnRzIHBsYXlpbmcgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVBsYXkoKSB7XG4gICAgdGhpcy5hdWRpbz8ub24oJ3BsYXknLCAoKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiBudWxsLCBzdGF0dXM6ICdwbGF5JywgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiB0aGUgYXVkaW8gcGF1c2VzICovXG4gIHByb3RlY3RlZCBoYW5kbGVQYXVzZSgpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbigncGF1c2UnLCAoKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiBudWxsLCBzdGF0dXM6ICdwYXVzZScsIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIFdoZW4gdGhlIGF1ZGlvIGZpbmlzaGVzIHBsYXlpbmcgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUZpbmlzaCgpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbignZmluaXNoJywgKCkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgICAgIGRhdGE6IG51bGwsXG4gICAgICAgICAgc3RhdHVzOiAnZmluaXNoJyxcbiAgICAgICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogT24gYXVkaW8gcG9zaXRpb24gY2hhbmdlLCBmaXJlcyBjb250aW51b3VzbHkgZHVyaW5nIHBsYXliYWNrICovXG4gIHByb3RlY3RlZCBoYW5kbGVUaW1lVXBkYXRlKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCd0aW1ldXBkYXRlJywgKGN1cnJlbnRUaW1lKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgICAgZGF0YTogeyBjdXJyZW50VGltZTogY3VycmVudFRpbWUgfSxcbiAgICAgICAgICBzdGF0dXM6ICd0aW1ldXBkYXRlJyxcbiAgICAgICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiB0aGUgdXNlciBzZWVrcyB0byBhIG5ldyBwb3NpdGlvbiAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlU2Vla2luZygpIHtcbiAgICB0aGlzLmF1ZGlvPy5vbignc2Vla2luZycsIChjdXJyZW50VGltZSkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgICAgIGRhdGE6IHsgY3VycmVudFRpbWU6IGN1cnJlbnRUaW1lIH0sXG4gICAgICAgICAgc3RhdHVzOiAnc2Vla2luZycsXG4gICAgICAgICAgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlLFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIFdoZW4gdGhlIHVzZXIgaW50ZXJhY3RzIHdpdGggdGhlIHdhdmVmb3JtIChpLmcuIGNsaWNrcyBvciBkcmFncyBvbiBpdCkgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUludGVyYWN0aW9uKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdpbnRlcmFjdGlvbicsIChuZXdUaW1lKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgICAgZGF0YTogeyBuZXdUaW1lOiBuZXdUaW1lIH0sXG4gICAgICAgICAgc3RhdHVzOiAnaW50ZXJhY3Rpb24nLFxuICAgICAgICAgIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBXaGVuIHRoZSB1c2VyIGNsaWNrcyBvbiB0aGUgd2F2ZWZvcm0gKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUNsaWNrKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdjbGljaycsIChyZWxhdGl2ZVgpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub25TdGF0dXNDaGFuZ2VkLmVtaXQoe1xuICAgICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgICBkYXRhOiB7IHJlbGF0aXZlWDogcmVsYXRpdmVYIH0sXG4gICAgICAgICAgc3RhdHVzOiAnY2xpY2snLFxuICAgICAgICAgIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBXaGVuIHRoZSB1c2VyIGRyYWdzIHRoZSBjdXJzb3IgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZURyYWcoKSB7XG4gICAgdGhpcy5hdWRpbz8ub24oJ2RyYWcnLCAocmVsYXRpdmVYKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgICAgZGF0YTogeyByZWxhdGl2ZVg6IHJlbGF0aXZlWCB9LFxuICAgICAgICAgIHN0YXR1czogJ2RyYWcnLFxuICAgICAgICAgIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBXaGVuIHRoZSB3YXZlZm9ybSBpcyBzY3JvbGxlZCAocGFubmVkKSAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlU2Nyb2xsKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdzY3JvbGwnLCAodmlzaWJsZVN0YXJ0VGltZSwgdmlzaWJsZUVuZFRpbWUpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub25TdGF0dXNDaGFuZ2VkLmVtaXQoe1xuICAgICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgICBkYXRhOiB7IHZpc2libGVTdGFydFRpbWUsIHZpc2libGVFbmRUaW1lIH0sXG4gICAgICAgICAgc3RhdHVzOiAnc2Nyb2xsJyxcbiAgICAgICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogV2hlbiB0aGUgem9vbSBsZXZlbCBjaGFuZ2VzICovXG4gIHByb3RlY3RlZCBoYW5kbGVab29tKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCd6b29tJywgKG1pblB4UGVyU2VjKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgICAgZGF0YTogeyBtaW5QeFBlclNlYzogbWluUHhQZXJTZWMgfSxcbiAgICAgICAgICBzdGF0dXM6ICd6b29tJyxcbiAgICAgICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICAvKiogSnVzdCBiZWZvcmUgdGhlIHdhdmVmb3JtIGlzIGRlc3Ryb3llZCBzbyB5b3UgY2FuIGNsZWFuIHVwIHlvdXIgZXZlbnRzICovXG4gIHByb3RlY3RlZCBoYW5kbGVEZXN0cm95KCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdkZXN0cm95JywgKCkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgICAgIGRhdGE6IG51bGwsXG4gICAgICAgICAgc3RhdHVzOiAnZGVzdHJveScsXG4gICAgICAgICAgaXNVc2VySW50ZXJhY3Rpb246IGZhbHNlLFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG4gIC8qKiBKdXN0IGJlZm9yZSB0aGUgd2F2ZWZvcm0gaXMgZGVzdHJveWVkIHNvIHlvdSBjYW4gY2xlYW4gdXAgeW91ciBldmVudHMgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZUVycm9yKCkge1xuICAgIHRoaXMuYXVkaW8/Lm9uKCdlcnJvcicsIChlKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBkYXRhOiBlLCBzdGF0dXM6ICdlcnJvcicsIGlzVXNlckludGVyYWN0aW9uOiBmYWxzZSB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYXgtYXVkaW8td2F2ZVwiICNkIFtuZ1N0eWxlXT1cInsnZGlzcGxheSc6IGF1ZGlvU3RhdGUoKSA9PT0gJ3JlYWR5JyA/ICdibG9jaycgOiAnbm9uZScgfVwiPjwvZGl2PlxuXG5Ac3dpdGNoIChhdWRpb1N0YXRlKCkpIHtcbkBjYXNlICgnbG9hZGluZycpIHtcbjxkaXYgY2xhc3M9XCJheC1hdWRpby1za2VsZXRvblwiPjwvZGl2PlxufVxuQGNhc2UgKCdlcnJvcicpIHtcbjxkaXYgY2xhc3M9XCJheC13YXZlLW1lc3NhZ2VcIj5cbiAgICB7eydlcnJvci5tZXNzYWdlJyB8IHRyYW5zbGF0ZTp7IHBhcmFtczp7IG1lc3NhZ2U6IGVycm9yTWVzc2FnZSgpIH0gfSB8IGFzeW5jIH19XG48L2Rpdj5cbn1cbn0iXX0=
@@ -39,11 +39,11 @@ export class AXAvatarComponent extends MXColorComponent {
39
39
  return `width: ${this.size()}px; height: ${this.size()}px`;
40
40
  }
41
41
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXAvatarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
42
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXAvatarComponent, selector: "ax-avatar", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { size: "sizeChange" }, host: { properties: { "class": "this.__hostClass", "style": "this.__hostStyle" } }, queries: [{ propertyName: "children", predicate: ["ax-image, ax-icon, ax-text"], isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-solid\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: rgba(var(--ax-color-white)); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: rgba(var(--ax-color-white))\" />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:-.25rem;overflow:hidden;border-width:2px;border-color:rgba(var(--ax-color-surface))}ax-avatar{position:relative;display:flex;justify-content:center}ax-avatar.ax-shape-sharp{border-radius:0}ax-avatar.ax-shape-soft{border-radius:var(--ax-rounded-border-default)}ax-avatar.ax-shape-rounded{border-radius:9999px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:1.5rem;line-height:2rem}ax-avatar ax-icon,ax-avatar ax-text{display:flex;min-height:100%;min-width:100%;align-items:center;justify-content:center}ax-avatar ax-badge{position:absolute}ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-400))}ax-avatar.ax-primary-solid ax-text,ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-400))}ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-secondary-solid ax-text,ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-400))}ax-avatar.ax-success-solid ax-text,ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-400))}ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-400))}ax-avatar.ax-warning-solid ax-text,ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-400))}ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-400))}ax-avatar.ax-danger-solid ax-text,ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-400))}ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-400))}ax-avatar.ax-info-solid ax-text,ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-400))}ax-avatar.ax-ghost-solid ax-text,ax-avatar.ax-ghost-solid ax-icon{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint))}ax-avatar.ax-ghost-solid ax-icon svg{fill:rgba(var(--ax-color-neutral-200))}.ax-dark ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-700))}.ax-dark ax-avatar.ax-primary-solid ax-text,.ax-dark ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-700));color:rgba(var(--ax-color-primary-fore-tint))}.ax-dark ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-700))}.ax-dark ax-avatar.ax-secondary-solid ax-text,.ax-dark ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-700));color:rgba(var(--ax-color-secondary-fore-tint))}.ax-dark ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-700))}.ax-dark ax-avatar.ax-success-solid ax-text,.ax-dark ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-700));color:rgba(var(--ax-color-success-fore-tint))}.ax-dark ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-700))}.ax-dark ax-avatar.ax-warning-solid ax-text,.ax-dark ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-700));color:rgba(var(--ax-color-warning-fore-tint))}.ax-dark ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-700))}.ax-dark ax-avatar.ax-danger-solid ax-text,.ax-dark ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-fore-tint))}.ax-dark ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-700))}.ax-dark ax-avatar.ax-info-solid ax-text,.ax-dark ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-700));color:rgba(var(--ax-color-info-fore-tint))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXAvatarComponent, selector: "ax-avatar", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { size: "sizeChange" }, host: { properties: { "class": "this.__hostClass", "style": "this.__hostStyle" } }, queries: [{ propertyName: "children", predicate: ["ax-image, ax-icon, ax-text"], isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-solid\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: rgba(var(--ax-color-white)); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: rgba(var(--ax-color-white))\" />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:-.25rem;overflow:hidden;border-width:2px;border-color:rgba(var(--ax-color-surface))}ax-avatar{position:relative;display:flex;justify-content:center}ax-avatar.ax-shape-sharp{border-radius:0}ax-avatar.ax-shape-soft{border-radius:var(--ax-rounded-border-default)}ax-avatar.ax-shape-rounded{border-radius:9999px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:1.5rem;line-height:2rem}ax-avatar ax-icon,ax-avatar ax-text{display:flex;min-height:100%;min-width:100%;align-items:center;justify-content:center}ax-avatar ax-badge{position:absolute}ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-400))}ax-avatar.ax-primary-solid ax-text,ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-400))}ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-secondary-solid ax-text,ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-400))}ax-avatar.ax-success-solid ax-text,ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-400))}ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-400))}ax-avatar.ax-warning-solid ax-text,ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-400))}ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-400))}ax-avatar.ax-danger-solid ax-text,ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-400))}ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-400))}ax-avatar.ax-info-solid ax-text,ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-400))}ax-avatar.ax-ghost-solid ax-text,ax-avatar.ax-ghost-solid ax-icon{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint))}ax-avatar.ax-ghost-solid ax-icon svg{fill:rgba(var(--ax-color-neutral-200))}.ax-dark ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-700))}.ax-dark ax-avatar.ax-primary-solid ax-text,.ax-dark ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-400));color:rgba(var(--ax-color-primary-100))}.ax-dark ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-700))}.ax-dark ax-avatar.ax-secondary-solid ax-text,.ax-dark ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-400));color:rgba(var(--ax-color-secondary-100))}.ax-dark ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-700))}.ax-dark ax-avatar.ax-success-solid ax-text,.ax-dark ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-400));color:rgba(var(--ax-color-success-100))}.ax-dark ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-700))}.ax-dark ax-avatar.ax-warning-solid ax-text,.ax-dark ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-400));color:rgba(var(--ax-color-warning-100))}.ax-dark ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-700))}.ax-dark ax-avatar.ax-danger-solid ax-text,.ax-dark ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-400));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-700))}.ax-dark ax-avatar.ax-info-solid ax-text,.ax-dark ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-400));color:rgba(var(--ax-color-info-100))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
43
43
  }
44
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXAvatarComponent, decorators: [{
45
45
  type: Component,
46
- args: [{ selector: 'ax-avatar', inputs: ['color'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-solid\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: rgba(var(--ax-color-white)); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: rgba(var(--ax-color-white))\" />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:-.25rem;overflow:hidden;border-width:2px;border-color:rgba(var(--ax-color-surface))}ax-avatar{position:relative;display:flex;justify-content:center}ax-avatar.ax-shape-sharp{border-radius:0}ax-avatar.ax-shape-soft{border-radius:var(--ax-rounded-border-default)}ax-avatar.ax-shape-rounded{border-radius:9999px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:1.5rem;line-height:2rem}ax-avatar ax-icon,ax-avatar ax-text{display:flex;min-height:100%;min-width:100%;align-items:center;justify-content:center}ax-avatar ax-badge{position:absolute}ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-400))}ax-avatar.ax-primary-solid ax-text,ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-400))}ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-secondary-solid ax-text,ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-400))}ax-avatar.ax-success-solid ax-text,ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-400))}ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-400))}ax-avatar.ax-warning-solid ax-text,ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-400))}ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-400))}ax-avatar.ax-danger-solid ax-text,ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-400))}ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-400))}ax-avatar.ax-info-solid ax-text,ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-400))}ax-avatar.ax-ghost-solid ax-text,ax-avatar.ax-ghost-solid ax-icon{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint))}ax-avatar.ax-ghost-solid ax-icon svg{fill:rgba(var(--ax-color-neutral-200))}.ax-dark ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-700))}.ax-dark ax-avatar.ax-primary-solid ax-text,.ax-dark ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-700));color:rgba(var(--ax-color-primary-fore-tint))}.ax-dark ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-700))}.ax-dark ax-avatar.ax-secondary-solid ax-text,.ax-dark ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-700));color:rgba(var(--ax-color-secondary-fore-tint))}.ax-dark ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-700))}.ax-dark ax-avatar.ax-success-solid ax-text,.ax-dark ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-700));color:rgba(var(--ax-color-success-fore-tint))}.ax-dark ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-700))}.ax-dark ax-avatar.ax-warning-solid ax-text,.ax-dark ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-700));color:rgba(var(--ax-color-warning-fore-tint))}.ax-dark ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-700))}.ax-dark ax-avatar.ax-danger-solid ax-text,.ax-dark ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-fore-tint))}.ax-dark ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-700))}.ax-dark ax-avatar.ax-info-solid ax-text,.ax-dark ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-700));color:rgba(var(--ax-color-info-fore-tint))}\n"] }]
46
+ args: [{ selector: 'ax-avatar', inputs: ['color'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-solid\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: rgba(var(--ax-color-white)); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: rgba(var(--ax-color-white))\" />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:-.25rem;overflow:hidden;border-width:2px;border-color:rgba(var(--ax-color-surface))}ax-avatar{position:relative;display:flex;justify-content:center}ax-avatar.ax-shape-sharp{border-radius:0}ax-avatar.ax-shape-soft{border-radius:var(--ax-rounded-border-default)}ax-avatar.ax-shape-rounded{border-radius:9999px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:1.5rem;line-height:2rem}ax-avatar ax-icon,ax-avatar ax-text{display:flex;min-height:100%;min-width:100%;align-items:center;justify-content:center}ax-avatar ax-badge{position:absolute}ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-400))}ax-avatar.ax-primary-solid ax-text,ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-400))}ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-secondary-solid ax-text,ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-400))}ax-avatar.ax-success-solid ax-text,ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-400))}ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-400))}ax-avatar.ax-warning-solid ax-text,ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-400))}ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-400))}ax-avatar.ax-danger-solid ax-text,ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-400))}ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-400))}ax-avatar.ax-info-solid ax-text,ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-400))}ax-avatar.ax-ghost-solid ax-text,ax-avatar.ax-ghost-solid ax-icon{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint))}ax-avatar.ax-ghost-solid ax-icon svg{fill:rgba(var(--ax-color-neutral-200))}.ax-dark ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-700))}.ax-dark ax-avatar.ax-primary-solid ax-text,.ax-dark ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-400));color:rgba(var(--ax-color-primary-100))}.ax-dark ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-700))}.ax-dark ax-avatar.ax-secondary-solid ax-text,.ax-dark ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-400));color:rgba(var(--ax-color-secondary-100))}.ax-dark ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-700))}.ax-dark ax-avatar.ax-success-solid ax-text,.ax-dark ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-400));color:rgba(var(--ax-color-success-100))}.ax-dark ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-700))}.ax-dark ax-avatar.ax-warning-solid ax-text,.ax-dark ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-400));color:rgba(var(--ax-color-warning-100))}.ax-dark ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-700))}.ax-dark ax-avatar.ax-danger-solid ax-text,.ax-dark ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-400));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-700))}.ax-dark ax-avatar.ax-info-solid ax-text,.ax-dark ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-400));color:rgba(var(--ax-color-info-100))}\n"] }]
47
47
  }], propDecorators: { __hostClass: [{
48
48
  type: HostBinding,
49
49
  args: ['class']