@acorex/components 18.5.15 → 18.5.17
Sign up to get free protection for your applications and to get access to all the features.
- package/action-sheet/lib/action-sheet.component.d.ts +26 -0
- package/alert/lib/alert.component.d.ts +50 -2
- package/audio-wave/lib/audio-wave.component.d.ts +48 -0
- package/avatar/lib/avatar.component.d.ts +20 -1
- package/badge/lib/badge.component.d.ts +8 -0
- package/bottom-navigation/lib/bottom-navigation.component.d.ts +16 -0
- package/breadcrumbs/lib/breadcrumbs-item.component.d.ts +11 -0
- package/breadcrumbs/lib/breadcrumbs.component.d.ts +11 -0
- package/button/lib/button-item-list.component.d.ts +34 -0
- package/button/lib/button-item.component.d.ts +47 -0
- package/button/lib/button.component.d.ts +36 -0
- package/button-group/lib/button-group.component.d.ts +53 -0
- package/calendar/lib/calendar-range.component.d.ts +48 -0
- package/calendar/lib/calendar.component.d.ts +114 -0
- package/check-box/lib/check-box.component.d.ts +36 -0
- package/chips/lib/chips.component.d.ts +13 -0
- package/circular-progress/lib/circular-progress.component.d.ts +67 -1
- package/collapse/lib/collapse-group.component.d.ts +38 -0
- package/collapse/lib/collapse.component.d.ts +55 -0
- package/color-box/lib/color-box.component.d.ts +28 -1
- package/color-palette/lib/color-palette-input.component.d.ts +35 -0
- package/color-palette/lib/color-palette-picker.component.d.ts +53 -0
- package/color-palette/lib/color-palette-preview.component.d.ts +17 -0
- package/color-palette/lib/color-palette-swatches.component.d.ts +30 -0
- package/color-palette/lib/color-palette.component.d.ts +8 -0
- package/comment/lib/comment-container/comment-container.component.d.ts +5 -0
- package/comment/lib/comment-item/comment-item.component.d.ts +16 -2
- package/comment/lib/comment-like/comment-like.component.d.ts +8 -0
- package/comment/lib/comment-reply/comment-reply.component.d.ts +4 -0
- package/comment/lib/comment-view/comment-view.component.d.ts +4 -0
- package/common/lib/components/base-component.class.d.ts +8 -0
- package/common/lib/components/button-base-component.class.d.ts +21 -0
- package/common/lib/components/interactive-component.class.d.ts +15 -0
- package/conversation/lib/conversation-container/conversation-container.component.d.ts +4 -0
- package/conversation/lib/conversation-input/conversation-input.component.d.ts +79 -2
- package/conversation/lib/conversation-message/conversation-message.component.d.ts +41 -0
- package/conversation/lib/conversation-messages/conversation-message-audio/conversation-message-audio.component.d.ts +62 -0
- package/conversation/lib/conversation-messages/conversation-message-file/conversation-message-file.component.d.ts +34 -0
- package/conversation/lib/conversation-messages/conversation-message-image/conversation-message-image.component.d.ts +21 -0
- package/conversation/lib/conversation-messages/conversation-message-image-popup/conversation-message-image-popup.component.d.ts +11 -0
- package/conversation/lib/conversation-messages/conversation-message-text/conversation-message-text.component.d.ts +29 -0
- package/conversation/lib/conversation-messages/conversation-message-video/conversation-message-video.component.d.ts +11 -0
- package/conversation/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.d.ts +72 -0
- package/conversation/lib/conversation-view/conversation-view.component.d.ts +22 -0
- package/data-pager/lib/data-pager-base.component.d.ts +9 -0
- package/data-pager/lib/data-pager-info.component.d.ts +14 -0
- package/data-pager/lib/data-pager-input-selector.component.d.ts +17 -0
- package/data-pager/lib/data-pager-next-buttons.components.d.ts +20 -0
- package/data-pager/lib/data-pager-numeric-selector.component.d.ts +14 -0
- package/esm2022/action-sheet/lib/action-sheet.component.mjs +21 -1
- package/esm2022/alert/lib/alert.component.mjs +48 -3
- package/esm2022/audio-wave/lib/audio-wave.component.mjs +43 -1
- package/esm2022/avatar/lib/avatar.component.mjs +21 -2
- package/esm2022/badge/lib/badge.component.mjs +9 -1
- package/esm2022/bottom-navigation/lib/bottom-navigation.component.mjs +14 -1
- package/esm2022/breadcrumbs/lib/breadcrumbs-item.component.mjs +9 -1
- package/esm2022/breadcrumbs/lib/breadcrumbs.component.mjs +6 -1
- package/esm2022/button/lib/button-item-list.component.mjs +35 -1
- package/esm2022/button/lib/button-item.component.mjs +36 -1
- package/esm2022/button/lib/button.component.mjs +39 -3
- package/esm2022/button-group/lib/button-group.component.mjs +48 -1
- package/esm2022/calendar/lib/calendar-range.component.mjs +46 -1
- package/esm2022/calendar/lib/calendar.component.mjs +112 -1
- package/esm2022/check-box/lib/check-box.component.mjs +34 -1
- package/esm2022/chips/lib/chips.component.mjs +14 -1
- package/esm2022/circular-progress/lib/circular-progress.component.mjs +69 -1
- package/esm2022/collapse/lib/collapse-group.component.mjs +39 -1
- package/esm2022/collapse/lib/collapse.component.mjs +53 -1
- package/esm2022/color-box/lib/color-box.component.mjs +23 -2
- package/esm2022/color-palette/lib/color-palette-input.component.mjs +36 -1
- package/esm2022/color-palette/lib/color-palette-picker.component.mjs +54 -1
- package/esm2022/color-palette/lib/color-palette-preview.component.mjs +18 -1
- package/esm2022/color-palette/lib/color-palette-swatches.component.mjs +28 -1
- package/esm2022/color-palette/lib/color-palette.component.mjs +9 -1
- package/esm2022/comment/lib/comment-container/comment-container.component.mjs +6 -1
- package/esm2022/comment/lib/comment-item/comment-item.component.mjs +15 -1
- package/esm2022/comment/lib/comment-like/comment-like.component.mjs +9 -1
- package/esm2022/comment/lib/comment-reply/comment-reply.component.mjs +5 -1
- package/esm2022/comment/lib/comment-view/comment-view.component.mjs +5 -1
- package/esm2022/common/lib/components/base-component.class.mjs +9 -1
- package/esm2022/common/lib/components/button-base-component.class.mjs +22 -1
- package/esm2022/common/lib/components/interactive-component.class.mjs +16 -1
- package/esm2022/conversation/lib/conversation-container/conversation-container.component.mjs +5 -1
- package/esm2022/conversation/lib/conversation-input/conversation-input.component.mjs +75 -1
- package/esm2022/conversation/lib/conversation-message/conversation-message.component.mjs +39 -1
- package/esm2022/conversation/lib/conversation-messages/conversation-message-audio/conversation-message-audio.component.mjs +63 -1
- package/esm2022/conversation/lib/conversation-messages/conversation-message-file/conversation-message-file.component.mjs +35 -1
- package/esm2022/conversation/lib/conversation-messages/conversation-message-image/conversation-message-image.component.mjs +22 -1
- package/esm2022/conversation/lib/conversation-messages/conversation-message-image-popup/conversation-message-image-popup.component.mjs +9 -1
- package/esm2022/conversation/lib/conversation-messages/conversation-message-text/conversation-message-text.component.mjs +30 -1
- package/esm2022/conversation/lib/conversation-messages/conversation-message-video/conversation-message-video.component.mjs +12 -1
- package/esm2022/conversation/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.mjs +70 -1
- package/esm2022/conversation/lib/conversation-view/conversation-view.component.mjs +23 -1
- package/esm2022/data-pager/lib/data-pager-base.component.mjs +7 -1
- package/esm2022/data-pager/lib/data-pager-info.component.mjs +9 -1
- package/esm2022/data-pager/lib/data-pager-input-selector.component.mjs +18 -1
- package/esm2022/data-pager/lib/data-pager-next-buttons.components.mjs +18 -1
- package/esm2022/data-pager/lib/data-pager-numeric-selector.component.mjs +15 -1
- package/esm2022/scheduler/lib/scheduler-month-view.component.mjs +20 -1
- package/esm2022/scheduler/lib/scheduler-week-view.component.mjs +5 -1
- package/esm2022/scheduler/lib/scheduler.component.mjs +10 -1
- package/esm2022/search-box/lib/search-box.component.mjs +19 -2
- package/esm2022/select-box/lib/select-box.component.mjs +50 -2
- package/esm2022/selection-list/lib/selection-list.component.mjs +51 -1
- package/esm2022/side-menu/lib/side-menu.component.mjs +5 -1
- package/esm2022/skeleton/lib/skeleton.component.mjs +11 -1
- package/esm2022/slider/lib/slider.component.mjs +52 -2
- package/esm2022/step-wizard/lib/step-wizard.component.mjs +23 -1
- package/esm2022/switch/lib/switch-content.component.mjs +5 -1
- package/esm2022/switch/lib/switch.component.mjs +11 -1
- package/esm2022/tabs/lib/tab-item.component.mjs +24 -1
- package/esm2022/tabs/lib/tabs.component.mjs +36 -1
- package/esm2022/tag/lib/tag.component.mjs +2 -1
- package/esm2022/text-area/lib/text-area.component.mjs +8 -1
- package/esm2022/text-box/lib/text-box.component.mjs +13 -1
- package/esm2022/toast/lib/toast.component.mjs +6 -1
- package/esm2022/tooltip/lib/tooltip.component.mjs +5 -1
- package/esm2022/uploader/lib/uploader-dialog-container.component.mjs +16 -1
- package/esm2022/uploader/lib/uploader-drop-zone.component.mjs +5 -1
- package/esm2022/uploader/lib/uploader-list.component.mjs +8 -3
- package/esm2022/uploader/lib/uploader.models.mjs +14 -1
- package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-container/wysiwyg-container.component.mjs +18 -1
- package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-toolbar/wysiwyg-toolbar.component.mjs +106 -36
- package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-view/wysiwyg-view.component.mjs +9 -1
- package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg.service.mjs +4 -1
- package/fesm2022/acorex-components-action-sheet.mjs +20 -0
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +47 -2
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-audio-wave.mjs +42 -0
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +20 -1
- package/fesm2022/acorex-components-avatar.mjs.map +1 -1
- package/fesm2022/acorex-components-badge.mjs +8 -0
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-bottom-navigation.mjs +13 -0
- package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +13 -0
- package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/acorex-components-button-group.mjs +47 -0
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +107 -2
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +156 -0
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +33 -0
- package/fesm2022/acorex-components-check-box.mjs.map +1 -1
- package/fesm2022/acorex-components-chips.mjs +13 -0
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-circular-progress.mjs +68 -0
- package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse.mjs +90 -0
- package/fesm2022/acorex-components-collapse.mjs.map +1 -1
- package/fesm2022/acorex-components-color-box.mjs +22 -1
- package/fesm2022/acorex-components-color-box.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +140 -0
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-comment.mjs +35 -0
- package/fesm2022/acorex-components-comment.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +44 -0
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation.mjs +372 -0
- package/fesm2022/acorex-components-conversation.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +62 -0
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +32 -0
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-search-box.mjs +18 -1
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +49 -1
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +50 -0
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +4 -0
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-skeleton.mjs +10 -0
- package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
- package/fesm2022/acorex-components-slider.mjs +51 -1
- package/fesm2022/acorex-components-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-step-wizard.mjs +22 -0
- package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +14 -0
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +58 -0
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +1 -0
- package/fesm2022/acorex-components-tag.mjs.map +1 -1
- package/fesm2022/acorex-components-text-area.mjs +7 -0
- package/fesm2022/acorex-components-text-area.mjs.map +1 -1
- package/fesm2022/acorex-components-text-box.mjs +12 -0
- package/fesm2022/acorex-components-text-box.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +5 -0
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +4 -0
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +39 -2
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/fesm2022/acorex-components-wysiwyg.mjs +134 -35
- package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
- package/package.json +71 -71
- package/scheduler/lib/scheduler-month-view.component.d.ts +20 -0
- package/scheduler/lib/scheduler-week-view.component.d.ts +4 -0
- package/scheduler/lib/scheduler.component.d.ts +10 -0
- package/search-box/lib/search-box.component.d.ts +19 -1
- package/select-box/lib/select-box.component.d.ts +78 -1
- package/selection-list/lib/selection-list.component.d.ts +55 -0
- package/side-menu/lib/side-menu.component.d.ts +4 -0
- package/skeleton/lib/skeleton.component.d.ts +10 -0
- package/slider/lib/slider.component.d.ts +51 -1
- package/step-wizard/lib/step-wizard.component.d.ts +23 -0
- package/switch/lib/switch-content.component.d.ts +4 -0
- package/switch/lib/switch.component.d.ts +14 -0
- package/tabs/lib/tab-item.component.d.ts +32 -0
- package/tabs/lib/tabs.component.d.ts +42 -0
- package/tag/lib/tag.component.d.ts +4 -0
- package/text-area/lib/text-area.component.d.ts +13 -0
- package/text-box/lib/text-box.component.d.ts +27 -0
- package/toast/lib/toast.component.d.ts +6 -0
- package/tooltip/lib/tooltip.component.d.ts +13 -0
- package/uploader/lib/uploader-dialog-container.component.d.ts +15 -0
- package/uploader/lib/uploader-drop-zone.component.d.ts +4 -0
- package/uploader/lib/uploader-list.component.d.ts +5 -0
- package/uploader/lib/uploader.models.d.ts +4 -0
- package/wysiwyg/lib/wysiwyg/wysiwyg-container/wysiwyg-container.component.d.ts +19 -3
- package/wysiwyg/lib/wysiwyg/wysiwyg-toolbar/wysiwyg-toolbar.component.d.ts +61 -20
- package/wysiwyg/lib/wysiwyg/wysiwyg-view/wysiwyg-view.component.d.ts +4 -0
- package/wysiwyg/lib/wysiwyg/wysiwyg.service.d.ts +3 -0
@@ -256,7 +256,15 @@ const AXDefaultColorPalette = [
|
|
256
256
|
{ code: '#F57F17' },
|
257
257
|
];
|
258
258
|
|
259
|
+
/**
|
260
|
+
* Component for selecting colors from a palette.
|
261
|
+
*
|
262
|
+
* @category Components
|
263
|
+
*/
|
259
264
|
class AXColorPaletteInputComponent extends MXBaseComponent {
|
265
|
+
/**
|
266
|
+
* @ignore
|
267
|
+
*/
|
260
268
|
constructor(_parent, _unsubscriber) {
|
261
269
|
super();
|
262
270
|
this._parent = _parent;
|
@@ -269,7 +277,13 @@ class AXColorPaletteInputComponent extends MXBaseComponent {
|
|
269
277
|
a: 0,
|
270
278
|
};
|
271
279
|
this._hex = '';
|
280
|
+
/**
|
281
|
+
* @ignore
|
282
|
+
*/
|
272
283
|
this._colorMode = 'hex';
|
284
|
+
/**
|
285
|
+
* @ignore
|
286
|
+
*/
|
273
287
|
this._hexMaskOptions = {
|
274
288
|
mask: /^#[0-9a-f]{0,6}[0-9a-f]{0,2}$/i,
|
275
289
|
prepare: (str, m, a) => {
|
@@ -283,6 +297,9 @@ class AXColorPaletteInputComponent extends MXBaseComponent {
|
|
283
297
|
this.cdr.markForCheck();
|
284
298
|
});
|
285
299
|
}
|
300
|
+
/**
|
301
|
+
* @ignore
|
302
|
+
*/
|
286
303
|
applyParent(u = false) {
|
287
304
|
const value = this._parent.value;
|
288
305
|
if (!value) {
|
@@ -309,9 +326,15 @@ class AXColorPaletteInputComponent extends MXBaseComponent {
|
|
309
326
|
this.checkValid();
|
310
327
|
this.cdr.detectChanges();
|
311
328
|
}
|
329
|
+
/**
|
330
|
+
* @ignore
|
331
|
+
*/
|
312
332
|
ngAfterViewInit() {
|
313
333
|
this.applyParent();
|
314
334
|
}
|
335
|
+
/**
|
336
|
+
* @ignore
|
337
|
+
*/
|
315
338
|
_handleChangeInputMode() {
|
316
339
|
switch (this._colorMode) {
|
317
340
|
case 'rgba':
|
@@ -322,6 +345,9 @@ class AXColorPaletteInputComponent extends MXBaseComponent {
|
|
322
345
|
break;
|
323
346
|
}
|
324
347
|
}
|
348
|
+
/**
|
349
|
+
* @ignore
|
350
|
+
*/
|
325
351
|
_handleRGBAValueChanged(e) {
|
326
352
|
if (e.isUserInteraction) {
|
327
353
|
this._rgba[e.name] = e.value;
|
@@ -330,14 +356,23 @@ class AXColorPaletteInputComponent extends MXBaseComponent {
|
|
330
356
|
this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), e.isUserInteraction);
|
331
357
|
}
|
332
358
|
}
|
359
|
+
/**
|
360
|
+
* @ignore
|
361
|
+
*/
|
333
362
|
_handleHEXAValueChanged(e) {
|
334
363
|
if (e.isUserInteraction && e.value?.trim() != this._hex?.trim()) {
|
335
364
|
this._parent.commitValue(e.value, e.isUserInteraction);
|
336
365
|
}
|
337
366
|
}
|
367
|
+
/**
|
368
|
+
* @ignore
|
369
|
+
*/
|
338
370
|
checkValid() {
|
339
371
|
this.isValid = AXColorUtil.isValid(this._hex);
|
340
372
|
}
|
373
|
+
/**
|
374
|
+
* @ignore
|
375
|
+
*/
|
341
376
|
get __hostClass() {
|
342
377
|
return `ax-color-palette-input`;
|
343
378
|
}
|
@@ -367,7 +402,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
|
|
367
402
|
args: ['class']
|
368
403
|
}] } });
|
369
404
|
|
405
|
+
/**
|
406
|
+
* Component for picking colors from a color palette.
|
407
|
+
*
|
408
|
+
* @category Components
|
409
|
+
*/
|
370
410
|
class AXColorPalettePickerComponent extends MXBaseComponent {
|
411
|
+
/**
|
412
|
+
* @ignore
|
413
|
+
*/
|
371
414
|
constructor(_parent, _unsubscriber) {
|
372
415
|
super();
|
373
416
|
this._parent = _parent;
|
@@ -378,8 +421,17 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
378
421
|
b: 0,
|
379
422
|
a: 0,
|
380
423
|
};
|
424
|
+
/**
|
425
|
+
* @ignore
|
426
|
+
*/
|
381
427
|
this._gradient = 0;
|
428
|
+
/**
|
429
|
+
* @ignore
|
430
|
+
*/
|
382
431
|
this._bgColor = '#F00';
|
432
|
+
/**
|
433
|
+
* @ignore
|
434
|
+
*/
|
383
435
|
this._gradientColors = [
|
384
436
|
{ color: 'rgb(255, 0, 0)', pos: 0 },
|
385
437
|
{ color: 'rgb(255, 255, 0)', pos: 0.17 },
|
@@ -389,8 +441,17 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
389
441
|
{ color: 'rgb(255, 0, 255)', pos: 0.83 },
|
390
442
|
{ color: 'rgb(255, 0, 0)', pos: 1 },
|
391
443
|
];
|
444
|
+
/**
|
445
|
+
* @ignore
|
446
|
+
*/
|
392
447
|
this._gradients = AXColorUtil.gradient(this._gradientColors);
|
448
|
+
/**
|
449
|
+
* @ignore
|
450
|
+
*/
|
393
451
|
this._colors = this._gradients.rgb(100);
|
452
|
+
/**
|
453
|
+
* @ignore
|
454
|
+
*/
|
394
455
|
this.dragPosition = { x: 0, y: 0 };
|
395
456
|
_parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {
|
396
457
|
this._handleParentColorChanged();
|
@@ -399,6 +460,9 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
399
460
|
this.cdr.markForCheck();
|
400
461
|
});
|
401
462
|
}
|
463
|
+
/**
|
464
|
+
* @ignore
|
465
|
+
*/
|
402
466
|
setHSV() {
|
403
467
|
const hsv = AXColorUtil.to(this._rgba, 'hsva');
|
404
468
|
const sortedH = this._colors.map((c) => c.toHsv().h);
|
@@ -408,6 +472,9 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
408
472
|
this._bgColor = AXColorUtil.toString({ h: hsv.h, s: 1, v: 1, a: this._rgba.a }, 'rgba');
|
409
473
|
this.setPointerByPercent(hsv.s * 100, hsv.v * 100);
|
410
474
|
}
|
475
|
+
/**
|
476
|
+
* @ignore
|
477
|
+
*/
|
411
478
|
_handleParentColorChanged() {
|
412
479
|
const color = this._parent.value;
|
413
480
|
if (!color) {
|
@@ -426,6 +493,9 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
426
493
|
this.setHSV();
|
427
494
|
this.cdr.detectChanges();
|
428
495
|
}
|
496
|
+
/**
|
497
|
+
* @ignore
|
498
|
+
*/
|
429
499
|
_handleAlphaChanged(e) {
|
430
500
|
if (e.isUserInteraction && e.value != this._rgba.a) {
|
431
501
|
const { r, g, b } = this._rgba;
|
@@ -433,6 +503,9 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
433
503
|
this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), e.isUserInteraction);
|
434
504
|
}
|
435
505
|
}
|
506
|
+
/**
|
507
|
+
* @ignore
|
508
|
+
*/
|
436
509
|
_handleGradientChanged(e) {
|
437
510
|
if (e.isUserInteraction && e.value != this._gradient) {
|
438
511
|
const { s, v } = AXColorUtil.to(this._rgba, 'hsva');
|
@@ -440,6 +513,9 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
440
513
|
this._parent.commitValue(AXColorUtil.toString({ h, s, v, a: this._rgba.a }, 'rgba'), e.isUserInteraction);
|
441
514
|
}
|
442
515
|
}
|
516
|
+
/**
|
517
|
+
* @ignore
|
518
|
+
*/
|
443
519
|
_handleSurfaceClick(e) {
|
444
520
|
if (this._parent.disabled || this._parent.readonly) {
|
445
521
|
e.preventDefault();
|
@@ -452,6 +528,9 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
452
528
|
let y = e.offsetY;
|
453
529
|
this.setColorByXY(x, y);
|
454
530
|
}
|
531
|
+
/**
|
532
|
+
* @ignore
|
533
|
+
*/
|
455
534
|
_handleDrag() {
|
456
535
|
if (this._parent.disabled || this._parent.readonly) {
|
457
536
|
return;
|
@@ -472,6 +551,9 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
472
551
|
//
|
473
552
|
this.setColorByXY(x, y);
|
474
553
|
}
|
554
|
+
/**
|
555
|
+
* @ignore
|
556
|
+
*/
|
475
557
|
setColorByXY(x, y) {
|
476
558
|
const surface = this.getHostElement().querySelector('.ax-color-box-overlay');
|
477
559
|
const sb = surface.getBoundingClientRect();
|
@@ -484,6 +566,9 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
484
566
|
};
|
485
567
|
this._parent.commitValue(AXColorUtil.toString(hsv, 'rgba'), true);
|
486
568
|
}
|
569
|
+
/**
|
570
|
+
* @ignore
|
571
|
+
*/
|
487
572
|
setPointerByPercent(x, y) {
|
488
573
|
const surface = this.getHostElement().querySelector('.ax-color-box-overlay');
|
489
574
|
if (!surface)
|
@@ -499,6 +584,9 @@ class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
499
584
|
y: height - (y * height) / 100 - w,
|
500
585
|
};
|
501
586
|
}
|
587
|
+
/**
|
588
|
+
* @ignore
|
589
|
+
*/
|
502
590
|
get __hostClass() {
|
503
591
|
return `ax-color-palette-picker`;
|
504
592
|
}
|
@@ -528,7 +616,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
|
|
528
616
|
args: ['class']
|
529
617
|
}] } });
|
530
618
|
|
619
|
+
/**
|
620
|
+
* Component that displays a preview of the selected color in the palette.
|
621
|
+
*
|
622
|
+
* @category Components
|
623
|
+
*/
|
531
624
|
class AXColorPalettePreviewComponent extends MXBaseComponent {
|
625
|
+
/**
|
626
|
+
* @ignore
|
627
|
+
*/
|
532
628
|
constructor(_parent, _zone, _unsubscriber) {
|
533
629
|
super();
|
534
630
|
this._parent = _parent;
|
@@ -538,9 +634,15 @@ class AXColorPalettePreviewComponent extends MXBaseComponent {
|
|
538
634
|
_zone.runOutsideAngular(this.applyParent.bind(this));
|
539
635
|
});
|
540
636
|
}
|
637
|
+
/**
|
638
|
+
* @ignore
|
639
|
+
*/
|
541
640
|
ngAfterViewInit() {
|
542
641
|
this.applyParent();
|
543
642
|
}
|
643
|
+
/**
|
644
|
+
* @ignore
|
645
|
+
*/
|
544
646
|
applyParent() {
|
545
647
|
const inner = this.getHostElement().firstElementChild;
|
546
648
|
inner.style.backgroundColor = this._parent.value;
|
@@ -549,6 +651,9 @@ class AXColorPalettePreviewComponent extends MXBaseComponent {
|
|
549
651
|
const ratio = AXColorUtil.contrastToWhite(color);
|
550
652
|
this.getHostElement().style.color = !(ratio > 2.0) ? '#000' : '#fff';
|
551
653
|
}
|
654
|
+
/**
|
655
|
+
* @ignore
|
656
|
+
*/
|
552
657
|
get __hostClass() {
|
553
658
|
return `ax-color-palette-preview`;
|
554
659
|
}
|
@@ -584,11 +689,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
|
|
584
689
|
args: ['classs']
|
585
690
|
}] } });
|
586
691
|
|
692
|
+
/**
|
693
|
+
* Displays color swatches or favorites, allowing color selection.
|
694
|
+
*
|
695
|
+
* @category Components
|
696
|
+
*/
|
587
697
|
class AXColorPaletteSwatchesComponent extends MXBaseComponent {
|
698
|
+
/**
|
699
|
+
* @ignore
|
700
|
+
*/
|
588
701
|
constructor(_parent, _unsubscriber) {
|
589
702
|
super();
|
590
703
|
this._parent = _parent;
|
591
704
|
this._unsubscriber = _unsubscriber;
|
705
|
+
/**
|
706
|
+
* List of color objects for display, each with a `code` property.
|
707
|
+
* @defaultValue []
|
708
|
+
*/
|
592
709
|
this.colors = [];
|
593
710
|
_parent.onValueChanged
|
594
711
|
.pipe(_unsubscriber.takeUntilDestroy)
|
@@ -597,10 +714,16 @@ class AXColorPaletteSwatchesComponent extends MXBaseComponent {
|
|
597
714
|
this.applyParent();
|
598
715
|
});
|
599
716
|
}
|
717
|
+
/**
|
718
|
+
* @ignore
|
719
|
+
*/
|
600
720
|
applyParent() {
|
601
721
|
this._selected = AXColorUtil.toString(this._parent.value, 'hex').toLowerCase();
|
602
722
|
this.cdr.detectChanges();
|
603
723
|
}
|
724
|
+
/**
|
725
|
+
* @ignore
|
726
|
+
*/
|
604
727
|
ngOnInit() {
|
605
728
|
super.ngOnInit();
|
606
729
|
const isFav = this.getHostElement().tagName.toLowerCase() == 'ax-color-palette-favorite';
|
@@ -608,14 +731,23 @@ class AXColorPaletteSwatchesComponent extends MXBaseComponent {
|
|
608
731
|
this.colors = AXDefaultColorPalette.map((c) => this._format(c));
|
609
732
|
}
|
610
733
|
}
|
734
|
+
/**
|
735
|
+
* @ignore
|
736
|
+
*/
|
611
737
|
ngAfterViewInit() {
|
612
738
|
this.applyParent();
|
613
739
|
}
|
740
|
+
/**
|
741
|
+
* @ignore
|
742
|
+
*/
|
614
743
|
_handleClick(e, color) {
|
615
744
|
if (this._parent.disabled || this._parent.readonly)
|
616
745
|
return;
|
617
746
|
this._parent.commitValue(color.code, true);
|
618
747
|
}
|
748
|
+
/**
|
749
|
+
* @ignore
|
750
|
+
*/
|
619
751
|
_format(color) {
|
620
752
|
return {
|
621
753
|
code: color.code.toLowerCase(),
|
@@ -670,7 +802,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
|
|
670
802
|
type: Input
|
671
803
|
}] } });
|
672
804
|
|
805
|
+
/**
|
806
|
+
* A color palette component that allows for color selection and interaction.
|
807
|
+
*
|
808
|
+
* @category Components
|
809
|
+
*/
|
673
810
|
class AXColorPalleteComponent extends MXValueComponent {
|
811
|
+
/**
|
812
|
+
* @ignore
|
813
|
+
*/
|
674
814
|
get __hostDisabled() {
|
675
815
|
return this.disabled;
|
676
816
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-color-palette.mjs","sources":["../../../../libs/components/color-palette/src/lib/color-palette.class.ts","../../../../libs/components/color-palette/src/lib/color-palette-input.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-input.component.html","../../../../libs/components/color-palette/src/lib/color-palette-picker.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-picker.component.html","../../../../libs/components/color-palette/src/lib/color-palette-preview.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-swatches.component.ts","../../../../libs/components/color-palette/src/lib/color-palette.component.ts","../../../../libs/components/color-palette/src/lib/color-palette.component.html","../../../../libs/components/color-palette/src/lib/color-palette.module.ts","../../../../libs/components/color-palette/src/acorex-components-color-palette.ts"],"sourcesContent":["import { AXOptionChangedEvent, AXValueChangedEvent } from '@acorex/components/common';\nimport { EventEmitter, Injectable } from '@angular/core';\n\n/**\n * A token that specifies the display mode of datapager component.\n */\nexport type AXColorPaletteView = 'swatches' | 'gradient' | 'custom';\nexport interface AXColorChangedEvent {\n color: any;\n sender: any;\n}\n\n@Injectable()\nexport abstract class AXColorPaletteParentComponent {\n abstract readonly: boolean;\n abstract disabled: boolean;\n abstract get value(): string;\n abstract onValueChanged: EventEmitter<AXValueChangedEvent<string>>;\n abstract onOptionChanged: EventEmitter<AXOptionChangedEvent>;\n abstract commitValue(value: string, u?: boolean);\n}\n\n@Injectable()\nexport abstract class AXColorPaletteChildComponent {}\n\nexport const AXDefaultColorPalette = [\n { code: '#ffffff' },\n { code: '#000000' },\n { code: '#9E9E9E' },\n { code: '#FFC107' },\n { code: '#607D8B' },\n { code: '#2196F3' },\n { code: '#FF5722' },\n { code: '#4CAF50' },\n { code: '#9c27b0' },\n { code: '#3F51B5' },\n // Amber\n { code: '#fff8e1' },\n { code: '#ffecb3' },\n { code: '#ffe082' },\n { code: '#ffd54f' },\n { code: '#ffca28' },\n { code: '#ffc107' },\n { code: '#ffb300' },\n { code: '#ffa000' },\n { code: '#ff8f00' },\n { code: '#ff6f00' },\n // Blue Grey\n { code: '#ECEFF1' },\n { code: '#CFD8DC' },\n { code: '#B0BEC5' },\n { code: '#90A4AE' },\n { code: '#78909C' },\n { code: '#607D8B' },\n { code: '#546E7A' },\n { code: '#455A64' },\n { code: '#37474F' },\n { code: '#263238' },\n // Blue\n { code: '#E3F2FD' },\n { code: '#BBDEFB' },\n { code: '#90CAF9' },\n { code: '#64B5F6' },\n { code: '#42A5F5' },\n { code: '#2196F3' },\n { code: '#1E88E5' },\n { code: '#1976D2' },\n { code: '#1565C0' },\n { code: '#0D47A1' },\n // Brown\n { code: '#EFEBE9' },\n { code: '#D7CCC8' },\n { code: '#BCAAA4' },\n { code: '#A1887F' },\n { code: '#8D6E63' },\n { code: '#795548' },\n { code: '#6D4C41' },\n { code: '#5D4037' },\n { code: '#4E342E' },\n { code: '#3E2723' },\n // Cyan\n { code: '#E0F7FA' },\n { code: '#B2EBF2' },\n { code: '#80DEEA' },\n { code: '#4DD0E1' },\n { code: '#26C6DA' },\n { code: '#00BCD4' },\n { code: '#00ACC1' },\n { code: '#0097A7' },\n { code: '#00838F' },\n { code: '#006064' },\n // Deep Orange\n { code: '#FBE9E7' },\n { code: '#FFCCBC' },\n { code: '#FFAB91' },\n { code: '#FF8A65' },\n { code: '#FF7043' },\n { code: '#FF5722' },\n { code: '#F4511E' },\n { code: '#E64A19' },\n { code: '#D84315' },\n { code: '#BF360C' },\n // Deep Purple\n { code: '#EDE7F6' },\n { code: '#D1C4E9' },\n { code: '#B39DDB' },\n { code: '#9575CD' },\n { code: '#7E57C2' },\n { code: '#673AB7' },\n { code: '#5E35B1' },\n { code: '#512DA8' },\n { code: '#4527A0' },\n { code: '#311B92' },\n // Green\n { code: '#E8F5E9' },\n { code: '#C8E6C9' },\n { code: '#A5D6A7' },\n { code: '#81C784' },\n { code: '#66BB6A' },\n { code: '#4CAF50' },\n { code: '#43A047' },\n { code: '#388E3C' },\n { code: '#2E7D32' },\n { code: '#1B5E20' },\n\n // Grey\n { code: '#FAFAFA' },\n { code: '#F5F5F5' },\n { code: '#EEEEEE' },\n { code: '#E0E0E0' },\n { code: '#BDBDBD' },\n { code: '#9E9E9E' },\n { code: '#757575' },\n { code: '#616161' },\n { code: '#424242' },\n { code: '#212121' },\n\n // Indigo\n { code: '#E8EAF6' },\n { code: '#C5CAE9' },\n { code: '#9FA8DA' },\n { code: '#7986CB' },\n { code: '#5C6BC0' },\n { code: '#3F51B5' },\n { code: '#3949AB' },\n { code: '#303F9F' },\n { code: '#283593' },\n { code: '#1A237E' },\n // Light Blue\n { code: '#E1F5FE' },\n { code: '#B3E5FC' },\n { code: '#81D4FA' },\n { code: '#4FC3F7' },\n { code: '#29B6F6' },\n { code: '#03A9F4' },\n { code: '#039BE5' },\n { code: '#0288D1' },\n { code: '#0277BD' },\n { code: '#01579B' },\n // Light Green\n { code: '#F1F8E9' },\n { code: '#DCEDC8' },\n { code: '#C5E1A5' },\n { code: '#AED581' },\n { code: '#9CCC65' },\n { code: '#8BC34A' },\n { code: '#7CB342' },\n { code: '#689F38' },\n { code: '#558B2F' },\n { code: '#33691E' },\n // Lime\n { code: '#F9FBE7' },\n { code: '#F0F4C3' },\n { code: '#E6EE9C' },\n { code: '#DCE775' },\n { code: '#D4E157' },\n { code: '#CDDC39' },\n { code: '#C0CA33' },\n { code: '#AFB42B' },\n { code: '#9E9D24' },\n { code: '#827717' },\n // Orange\n { code: '#FFF3E0' },\n { code: '#FFE0B2' },\n { code: '#FFCC80' },\n { code: '#FFB74D' },\n { code: '#FFA726' },\n { code: '#FF9800' },\n { code: '#FB8C00' },\n { code: '#F57C00' },\n { code: '#EF6C00' },\n { code: '#E65100' },\n // Pink\n { code: '#FCE4EC' },\n { code: '#F8BBD0' },\n { code: '#F48FB1' },\n { code: '#F06292' },\n { code: '#EC407A' },\n { code: '#E91E63' },\n { code: '#D81B60' },\n { code: '#C2185B' },\n { code: '#AD1457' },\n { code: '#880E4F' },\n // Purple\n { code: '#F3E5F5' },\n { code: '#E1BEE7' },\n { code: '#CE93D8' },\n { code: '#BA68C8' },\n { code: '#AB47BC' },\n { code: '#9C27B0' },\n { code: '#8E24AA' },\n { code: '#7B1FA2' },\n { code: '#6A1B9A' },\n { code: '#4A148C' },\n // Red\n { code: '#FFEBEE' },\n { code: '#FFCDD2' },\n { code: '#EF9A9A' },\n { code: '#E57373' },\n { code: '#EF5350' },\n { code: '#F44336' },\n { code: '#E53935' },\n { code: '#D32F2F' },\n { code: '#C62828' },\n { code: '#B71C1C' },\n // Teal\n { code: '#E0F2F1' },\n { code: '#B2DFDB' },\n { code: '#80CBC4' },\n { code: '#4DB6AC' },\n { code: '#26A69A' },\n { code: '#009688' },\n { code: '#00897B' },\n { code: '#00796B' },\n { code: '#00695C' },\n { code: '#004D40' },\n // Yellow\n { code: '#FFFDE7' },\n { code: '#FFF9C4' },\n { code: '#FFF59D' },\n { code: '#FFF176' },\n { code: '#FFEE58' },\n { code: '#FFEB3B' },\n { code: '#FDD835' },\n { code: '#FBC02D' },\n { code: '#F9A825' },\n { code: '#F57F17' },\n];\n","import { AXValueChangedEvent, MXBaseComponent } from '@acorex/components/common';\nimport { AXMaskOptions } from '@acorex/components/text-box';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n@Component({\n selector: 'ax-color-palette-input',\n templateUrl: './color-palette-input.component.html',\n styles: `\n .ax-bold {\n font-weight: bold;\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPaletteInputComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPaletteInputComponent extends MXBaseComponent implements AfterViewInit {\n isValid = true;\n\n _rgba: any = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n\n _hex = '';\n\n protected _colorMode: 'hex' | 'rgba' = 'hex';\n\n protected _hexMaskOptions: AXMaskOptions = {\n mask: /^#[0-9a-f]{0,6}[0-9a-f]{0,2}$/i,\n prepare: (str, m, a) => {\n return m.typedValue?.startsWith('#') || str == '#' ? str.trim() : '#' + str.trim();\n },\n };\n\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.applyParent(e.isUserInteraction);\n });\n _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.cdr.markForCheck();\n });\n }\n\n private applyParent(u: boolean = false) {\n const value = this._parent.value;\n if (!value) {\n this._hex = '';\n this._rgba = {\n r: null,\n g: null,\n b: null,\n a: null,\n };\n } else {\n Object.assign(this._rgba, AXColorUtil.to(value, 'rgba'));\n if (this._colorMode != 'hex' || !this._hex) {\n this._hex = AXColorUtil.toString(value, 'hex');\n }\n if (this._colorMode == 'hex') {\n this._hex = value;\n }\n if (!u && this._rgba.a != 1) {\n this._colorMode = 'rgba';\n }\n }\n this.checkValid();\n this.cdr.detectChanges();\n }\n\n ngAfterViewInit() {\n this.applyParent();\n }\n\n _handleChangeInputMode() {\n switch (this._colorMode) {\n case 'rgba':\n this._colorMode = 'hex';\n break;\n default:\n this._colorMode = 'rgba';\n break;\n }\n }\n\n _handleRGBAValueChanged(e: AXValueChangedEvent<number>) {\n if (e.isUserInteraction) {\n this._rgba[e.name] = e.value;\n const { r, g, b, a } = this._rgba;\n const _color = `rgba(${r},${g},${b},${a})`;\n this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), e.isUserInteraction);\n }\n }\n\n protected _handleHEXAValueChanged(e: AXValueChangedEvent<string>) {\n if (e.isUserInteraction && e.value?.trim() != this._hex?.trim()) {\n this._parent.commitValue(e.value, e.isUserInteraction);\n }\n }\n\n private checkValid() {\n this.isValid = AXColorUtil.isValid(this._hex);\n }\n\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-color-palette-input`;\n }\n}\n","<div class=\"palette-inputs\">\n @switch (_colorMode) {\n @case ('hex') {\n <div>\n <ax-text-box\n class=\"ax-sm\"\n [ngModel]=\"_hex\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [state]=\"isValid ? 'clear' : 'error'\"\n (onValueChanged)=\"_handleHEXAValueChanged($event)\"\n [mask-options]=\"_hexMaskOptions\"\n >\n </ax-text-box>\n <label>HEX</label>\n </div>\n }\n @case ('rgba') {\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"r\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.r\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>R</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"g\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.g\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>G</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"b\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.b\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>B</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"a\"\n [minValue]=\"0\"\n [maxValue]=\"1\"\n [ngModel]=\"_rgba.a\"\n [decimals]=\"2\"\n [step]=\"0.1\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>A</label>\n </div>\n }\n }\n</div>\n<button\n type=\"button\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-sm\"\n (click)=\"_handleChangeInputMode()\"\n [disabled]=\"_parent.disabled\"\n>\n <span class=\"ax-icon ax-icon-unfold-more ax-bold\"></span>\n</button>\n","import { AXValueChangedEvent, MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n@Component({\n selector: 'ax-color-palette-picker',\n templateUrl: './color-palette-picker.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPalettePickerComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPalettePickerComponent extends MXBaseComponent {\n _rgba: { r: number; g: number; b: number; a: number } = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n\n protected _gradient: number = 0;\n\n protected _bgColor: string = '#F00';\n\n private readonly _gradientColors: any[] = [\n { color: 'rgb(255, 0, 0)', pos: 0 },\n { color: 'rgb(255, 255, 0)', pos: 0.17 },\n { color: 'rgb(0, 255, 0)', pos: 0.33 },\n { color: 'rgb(0, 255, 255)', pos: 0.5 },\n { color: 'rgb(0, 0, 255)', pos: 0.67 },\n { color: 'rgb(255, 0, 255)', pos: 0.83 },\n { color: 'rgb(255, 0, 0)', pos: 1 },\n ];\n\n private readonly _gradients = AXColorUtil.gradient(this._gradientColors);\n private readonly _colors = this._gradients.rgb(100);\n\n protected dragPosition = { x: 0, y: 0 };\n\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this._handleParentColorChanged();\n });\n _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.cdr.markForCheck();\n });\n }\n\n private setHSV() {\n const hsv = AXColorUtil.to(this._rgba, 'hsva') as any;\n const sortedH = this._colors.map((c) => c.toHsv().h);\n this._gradient = sortedH.findIndex((c) => {\n return Math.round(c) >= Math.round(hsv.h);\n });\n this._bgColor = AXColorUtil.toString({ h: hsv.h, s: 1, v: 1, a: this._rgba.a }, 'rgba');\n this.setPointerByPercent(hsv.s * 100, hsv.v * 100);\n }\n\n private _handleParentColorChanged() {\n const color = this._parent.value;\n if (!color) {\n this._rgba = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n } else {\n if (!AXColorUtil.equal(color, this._rgba)) {\n Object.assign(this._rgba, AXColorUtil.to(color, 'rgba'));\n }\n }\n this.setHSV();\n this.cdr.detectChanges();\n }\n\n protected _handleAlphaChanged(e: AXValueChangedEvent<number>) {\n if (e.isUserInteraction && e.value != this._rgba.a) {\n const { r, g, b } = this._rgba;\n const _color = `rgba(${r},${g},${b},${e.value})`;\n this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), e.isUserInteraction);\n }\n }\n\n protected _handleGradientChanged(e: AXValueChangedEvent<number>) {\n if (e.isUserInteraction && e.value != this._gradient) {\n const { s, v } = AXColorUtil.to(this._rgba, 'hsva') as any;\n const { h } = this._colors[e.value].toHsv();\n this._parent.commitValue(AXColorUtil.toString({ h, s, v, a: this._rgba.a }, 'rgba'), e.isUserInteraction);\n }\n }\n\n protected _handleSurfaceClick(e: MouseEvent) {\n if (this._parent.disabled || this._parent.readonly) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n let x = e.offsetX;\n let y = e.offsetY;\n this.setColorByXY(x, y);\n }\n\n protected _handleDrag() {\n if (this._parent.disabled || this._parent.readonly) {\n return;\n }\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const sb = surface.getBoundingClientRect();\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n const pb = pointer.getBoundingClientRect();\n const w = pb.width / 2;\n let x = pb.left - sb.left + w;\n let y = pb.top - sb.top + w;\n //\n x = x < 0 ? 0 : x;\n x = x > sb.width ? sb.width : x;\n //\n y = y < 0 ? 0 : y;\n y = y > sb.height ? sb.height : y;\n //\n this.setColorByXY(x, y);\n }\n\n private setColorByXY(x: number, y: number) {\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const sb = surface.getBoundingClientRect();\n //\n const { h } = AXColorUtil.to(this._bgColor, 'hsva') as any;\n const hsv = {\n h,\n s: x / sb.width,\n v: (sb.height - y) / sb.height,\n };\n this._parent.commitValue(AXColorUtil.toString(hsv, 'rgba'), true);\n }\n\n private setPointerByPercent(x: number, y: number) {\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n if (!surface) return;\n const sb = surface?.getBoundingClientRect();\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n const pb = pointer?.getBoundingClientRect();\n const w = pb.width / 2;\n const width = sb.width; //+ pb.width\n const height = sb.height; // + pb.width\n this.dragPosition = {\n x: (x * width) / 100 - w,\n y: height - (y * height) / 100 - w,\n };\n }\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-color-palette-picker`;\n }\n}\n","<div class=\"ax-color-box-overlay-trans\">\n <div class=\"ax-color-box-overlay\" [style.background-color]=\"_bgColor\">\n <div class=\"ax-color-box-overlay-g1\"></div>\n <div class=\"ax-color-box-overlay-g2\" (click)=\"_handleSurfaceClick($event)\"></div>\n <div class=\"ax-color-box-pointer\" cdkDrag cdkDragBoundary=\".ax-color-box-overlay\"\n [cdkDragFreeDragPosition]=\"dragPosition\" (cdkDragEnded)=\"_handleDrag()\"\n [cdkDragDisabled]=\"_parent.disabled || _parent.readonly\">\n </div>\n </div>\n</div>\n<ax-slider class=\"ax-color-box-gradient\" [minValue]=\"0\" [maxValue]=\"100\" [step]=\"1\" [ngModel]=\"_gradient\"\n [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\" (onValueChanged)=\"_handleGradientChanged($event)\">\n</ax-slider>\n<ax-slider class=\"ax-color-box-transparent\" [minValue]=\"0\" [maxValue]=\"1\" [step]=\"0.01\" [ngModel]=\"_rgba.a\"\n [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\" (onValueChanged)=\"_handleAlphaChanged($event)\">\n</ax-slider>","import { MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, HostBinding, Inject, NgZone, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n@Component({\n selector: 'ax-color-palette-preview',\n template: `<div class=\"palette-preview-overlay\" [class.ax-state-disabled]=\"_parent.disabled\"></div>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPalettePreviewComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPalettePreviewComponent extends MXBaseComponent implements AfterViewInit {\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _zone: NgZone,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n _zone.runOutsideAngular(this.applyParent.bind(this));\n });\n }\n\n ngAfterViewInit() {\n this.applyParent();\n }\n\n private applyParent() {\n const inner = this.getHostElement().firstElementChild as HTMLDivElement;\n inner.style.backgroundColor = this._parent.value;\n inner.innerText = AXColorUtil.toString(this._parent.value);\n const color = AXColorUtil.toString(this._parent.value, 'hex');\n const ratio = AXColorUtil.contrastToWhite(color);\n this.getHostElement().style.color = !(ratio > 2.0) ? '#000' : '#fff';\n }\n\n @HostBinding('classs')\n private get __hostClass(): string {\n return `ax-color-palette-preview`;\n }\n}\n","import { MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, Inject, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { distinctUntilChanged } from 'rxjs/operators';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent, AXDefaultColorPalette } from './color-palette.class';\n\n@Component({\n selector: 'ax-color-palette-swatches, ax-color-palette-favorite',\n template: `\n @for (color of colors; track color.code) {\n <div\n [style.background-color]=\"color.code\"\n [attr.title]=\"color.code\"\n [class.ax-state-selected]=\"color.code === _selected\"\n (click)=\"_handleClick($event, color)\"\n ></div>\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPaletteSwatchesComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPaletteSwatchesComponent extends MXBaseComponent implements OnInit, AfterViewInit {\n protected _selected: string;\n\n @Input()\n colors: { code: string }[] = [];\n\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged\n .pipe(_unsubscriber.takeUntilDestroy)\n .pipe(distinctUntilChanged())\n .subscribe(() => {\n this.applyParent();\n });\n }\n\n private applyParent() {\n this._selected = AXColorUtil.toString(this._parent.value, 'hex').toLowerCase();\n this.cdr.detectChanges();\n }\n\n override ngOnInit(): void {\n super.ngOnInit();\n const isFav = this.getHostElement().tagName.toLowerCase() == 'ax-color-palette-favorite';\n if (!isFav && this.colors.length == 0) {\n this.colors = AXDefaultColorPalette.map((c) => this._format(c));\n }\n }\n\n ngAfterViewInit() {\n this.applyParent();\n }\n\n protected _handleClick(e: MouseEvent, color) {\n if (this._parent.disabled || this._parent.readonly) return;\n this._parent.commitValue(color.code, true);\n }\n\n private _format(color: { code: string }): { code: string } {\n return {\n code: color.code.toLowerCase(),\n };\n }\n}\n","import { AXValuableComponent, MXValueComponent } from '@acorex/components/common';\nimport { ChangeDetectionStrategy, Component, ContentChildren, HostBinding, QueryList, ViewEncapsulation, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n@Component({\n selector: 'ax-color-palette',\n templateUrl: './color-palette.component.html',\n styleUrls: ['./color-palette.component.scss'],\n inputs: ['disabled', 'tabIndex', 'readonly', 'value', 'state', 'name', 'checked'],\n outputs: ['onBlur', 'onFocus', 'valueChange', 'stateChange', 'onValueChanged', 'readonlyChange', 'disabledChange'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n { provide: AXValuableComponent, useExisting: AXColorPalleteComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXColorPalleteComponent),\n multi: true,\n },\n {\n provide: AXColorPaletteParentComponent,\n useExisting: AXColorPalleteComponent,\n },\n ],\n})\nexport class AXColorPalleteComponent extends MXValueComponent<string> {\n @ContentChildren(AXColorPaletteChildComponent)\n _children: QueryList<AXColorPaletteChildComponent>;\n\n @HostBinding('class.ax-state-disabled')\n private get __hostDisabled() {\n return this.disabled;\n }\n}\n","<ng-content select='ax-header'></ng-content>\n\n@if(_children?.length){\n<ng-container [ngTemplateOutlet]=\"custom\"></ng-container>\n} @else{\n<ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n\n}\n<ng-template #custom>\n <ng-content select='ax-color-palette-preview'></ng-content>\n <ng-content select='ax-color-palette-picker'></ng-content>\n <ng-content select='ax-color-palette-swatches'></ng-content>\n <ng-content select='ax-color-palette-favorite'></ng-content>\n <ng-content select='ax-color-palette-input'></ng-content>\n</ng-template>\n<ng-template #default>\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-swatches></ax-color-palette-swatches>\n <ax-color-palette-input></ax-color-palette-input>\n</ng-template>\n<ng-content select='ax-footer'></ng-content>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\nimport { AXSliderModule } from '@acorex/components/slider';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { FormsModule } from '@angular/forms';\nimport { AXColorPaletteInputComponent } from './color-palette-input.component';\nimport { AXColorPalettePickerComponent } from './color-palette-picker.component';\nimport { AXColorPalettePreviewComponent } from './color-palette-preview.component';\nimport { AXColorPaletteSwatchesComponent } from './color-palette-swatches.component';\nimport { AXColorPalleteComponent } from './color-palette.component';\n\nconst MODULES: any[] = [\n FormsModule,\n AXTextBoxModule,\n AXLabelModule,\n AXButtonModule,\n AXDecoratorModule,\n AXNumberBoxModule,\n AXSliderModule,\n DragDropModule,\n];\nconst CONPONENTS: any[] = [\n AXColorPalleteComponent,\n AXColorPalettePreviewComponent,\n AXColorPaletteSwatchesComponent,\n AXColorPaletteInputComponent,\n AXColorPalettePickerComponent,\n];\n\n@NgModule({\n declarations: [...CONPONENTS],\n imports: [CommonModule, ...MODULES],\n exports: [...CONPONENTS],\n providers: [],\n})\nexport class AXColorPaletteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i4","i1","i2.AXColorPalettePreviewComponent","i3.AXColorPaletteSwatchesComponent","i4.AXColorPaletteInputComponent","i5.AXColorPalettePickerComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;MAasB,6BAA6B,CAAA;8GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA7B,6BAA6B,EAAA,CAAA,CAAA,EAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADlD,UAAU;;MAWW,4BAA4B,CAAA;8GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA5B,4BAA4B,EAAA,CAAA,CAAA,EAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBADjD,UAAU;;AAGE,MAAA,qBAAqB,GAAG;IACnC,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAGnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAGnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;;AC9Nf,MAAO,4BAA6B,SAAQ,eAAe,CAAA;IAqB/D,WAES,CAAA,OAAsC,EACrC,aAA6B,EAAA;AAErC,QAAA,KAAK,EAAE,CAAC;QAHD,IAAO,CAAA,OAAA,GAAP,OAAO,CAA+B;QACrC,IAAa,CAAA,aAAA,GAAb,aAAa,CAAgB;QAvBvC,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC;AAEf,QAAA,IAAA,CAAA,KAAK,GAAQ;AACX,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;SACL,CAAC;QAEF,IAAI,CAAA,IAAA,GAAG,EAAE,CAAC;QAEA,IAAU,CAAA,UAAA,GAAmB,KAAK,CAAC;AAEnC,QAAA,IAAA,CAAA,eAAe,GAAkB;AACzC,YAAA,IAAI,EAAE,gCAAgC;YACtC,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAI;AACrB,gBAAA,OAAO,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;aACpF;SACF,CAAC;AAQA,QAAA,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC1E,YAAA,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;AACxC,SAAC,CAAC,CAAC;AACH,QAAA,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC3E,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC1B,SAAC,CAAC,CAAC;KACJ;IAEO,WAAW,CAAC,IAAa,KAAK,EAAA;AACpC,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QACjC,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,GAAG;AACX,gBAAA,CAAC,EAAE,IAAI;AACP,gBAAA,CAAC,EAAE,IAAI;AACP,gBAAA,CAAC,EAAE,IAAI;AACP,gBAAA,CAAC,EAAE,IAAI;aACR,CAAC;SACH;aAAM;AACL,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;YACzD,IAAI,IAAI,CAAC,UAAU,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBAC1C,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;aAChD;AACD,YAAA,IAAI,IAAI,CAAC,UAAU,IAAI,KAAK,EAAE;AAC5B,gBAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;aACnB;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE;AAC3B,gBAAA,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;aAC1B;SACF;QACD,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,eAAe,GAAA;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,sBAAsB,GAAA;AACpB,QAAA,QAAQ,IAAI,CAAC,UAAU;AACrB,YAAA,KAAK,MAAM;AACT,gBAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,MAAM;AACR,YAAA;AACE,gBAAA,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;gBACzB,MAAM;SACT;KACF;AAED,IAAA,uBAAuB,CAAC,CAA8B,EAAA;AACpD,QAAA,IAAI,CAAC,CAAC,iBAAiB,EAAE;YACvB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;AAC7B,YAAA,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YAClC,MAAM,MAAM,GAAG,CAAA,KAAA,EAAQ,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,CAAG,CAAC;AAC3C,YAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC;SACrF;KACF;AAES,IAAA,uBAAuB,CAAC,CAA8B,EAAA;AAC9D,QAAA,IAAI,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;AAC/D,YAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC;SACxD;KACF;IAEO,UAAU,GAAA;QAChB,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/C;AAED,IAAA,IACY,WAAW,GAAA;AACrB,QAAA,OAAO,wBAAwB,CAAC;KACjC;AAlGU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,kBAsB7B,6BAA6B,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAtB5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,EAR5B,QAAA,EAAA,wBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,4BAA4B;AACrC,gBAAA,WAAW,EAAE,4BAA4B;AAC1C,aAAA;YACD,cAAc;AACf,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECtBH,4jFA2FA,EAAA,MAAA,EAAA,CAAA,6BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,IAAA,EAAA,aAAA,EAAA,WAAA,EAAA,WAAA,EAAA,MAAA,EAAA,cAAA,EAAA,MAAA,EAAA,cAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,aAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDnEa,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAlBxC,SAAS;+BACE,wBAAwB,EAAA,aAAA,EAOnB,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,4BAA4B;AACrC,4BAAA,WAAW,EAA8B,4BAAA;AAC1C,yBAAA;wBACD,cAAc;AACf,qBAAA,EAAA,QAAA,EAAA,4jFAAA,EAAA,MAAA,EAAA,CAAA,6BAAA,CAAA,EAAA,CAAA;;0BAwBE,MAAM;2BAAC,6BAA6B,CAAA;sEA0E3B,WAAW,EAAA,CAAA;sBADtB,WAAW;uBAAC,OAAO,CAAA;;;AErGhB,MAAO,6BAA8B,SAAQ,eAAe,CAAA;IA2BhE,WAES,CAAA,OAAsC,EACrC,aAA6B,EAAA;AAErC,QAAA,KAAK,EAAE,CAAC;QAHD,IAAO,CAAA,OAAA,GAAP,OAAO,CAA+B;QACrC,IAAa,CAAA,aAAA,GAAb,aAAa,CAAgB;AA7BvC,QAAA,IAAA,CAAA,KAAK,GAAmD;AACtD,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;AACJ,YAAA,CAAC,EAAE,CAAC;SACL,CAAC;QAEQ,IAAS,CAAA,SAAA,GAAW,CAAC,CAAC;QAEtB,IAAQ,CAAA,QAAA,GAAW,MAAM,CAAC;AAEnB,QAAA,IAAA,CAAA,eAAe,GAAU;AACxC,YAAA,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,EAAE;AACnC,YAAA,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,IAAI,EAAE;AACxC,YAAA,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,IAAI,EAAE;AACtC,YAAA,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,EAAE;AACvC,YAAA,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,IAAI,EAAE;AACtC,YAAA,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,IAAI,EAAE;AACxC,YAAA,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,EAAE;SACpC,CAAC;QAEe,IAAU,CAAA,UAAA,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACxD,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE1C,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAQtC,QAAA,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;YAC1E,IAAI,CAAC,yBAAyB,EAAE,CAAC;AACnC,SAAC,CAAC,CAAC;AACH,QAAA,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC3E,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC1B,SAAC,CAAC,CAAC;KACJ;IAEO,MAAM,GAAA;AACZ,QAAA,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAQ,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AACvC,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC5C,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;AACxF,QAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;KACpD;IAEO,yBAAyB,GAAA;AAC/B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QACjC,IAAI,CAAC,KAAK,EAAE;YACV,IAAI,CAAC,KAAK,GAAG;AACX,gBAAA,CAAC,EAAE,CAAC;AACJ,gBAAA,CAAC,EAAE,CAAC;AACJ,gBAAA,CAAC,EAAE,CAAC;AACJ,gBAAA,CAAC,EAAE,CAAC;aACL,CAAC;SACH;aAAM;AACL,YAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;AACzC,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;aAC1D;SACF;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;AACd,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;AAES,IAAA,mBAAmB,CAAC,CAA8B,EAAA;AAC1D,QAAA,IAAI,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;YAClD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;AAC/B,YAAA,MAAM,MAAM,GAAG,CAAQ,KAAA,EAAA,CAAC,CAAI,CAAA,EAAA,CAAC,CAAI,CAAA,EAAA,CAAC,CAAI,CAAA,EAAA,CAAC,CAAC,KAAK,GAAG,CAAC;AACjD,YAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC;SACrF;KACF;AAES,IAAA,sBAAsB,CAAC,CAA8B,EAAA;AAC7D,QAAA,IAAI,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE;AACpD,YAAA,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAQ,CAAC;AAC3D,YAAA,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;AAC5C,YAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC;SAC3G;KACF;AAES,IAAA,mBAAmB,CAAC,CAAa,EAAA;AACzC,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;YAClD,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,OAAO;SACR;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAiB,uBAAuB,CAAC,CAAC;QAC7F,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAiB,uBAAuB,CAAC,CAAC;AAC7F,QAAA,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;AAClB,QAAA,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;AAClB,QAAA,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KACzB;IAES,WAAW,GAAA;AACnB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;YAClD,OAAO;SACR;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAiB,uBAAuB,CAAC,CAAC;AAC7F,QAAA,MAAM,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAiB,uBAAuB,CAAC,CAAC;AAC7F,QAAA,MAAM,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;AAC3C,QAAA,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;;AAE5B,QAAA,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAClB,QAAA,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC;;AAEhC,QAAA,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAClB,QAAA,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;;AAElC,QAAA,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KACzB;IAEO,YAAY,CAAC,CAAS,EAAE,CAAS,EAAA;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAiB,uBAAuB,CAAC,CAAC;AAC7F,QAAA,MAAM,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;;AAE3C,QAAA,MAAM,EAAE,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAQ,CAAC;AAC3D,QAAA,MAAM,GAAG,GAAG;YACV,CAAC;AACD,YAAA,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK;YACf,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM;SAC/B,CAAC;AACF,QAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;KACnE;IAEO,mBAAmB,CAAC,CAAS,EAAE,CAAS,EAAA;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAiB,uBAAuB,CAAC,CAAC;AAC7F,QAAA,IAAI,CAAC,OAAO;YAAE,OAAO;AACrB,QAAA,MAAM,EAAE,GAAG,OAAO,EAAE,qBAAqB,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAiB,uBAAuB,CAAC,CAAC;AAC7F,QAAA,MAAM,EAAE,GAAG,OAAO,EAAE,qBAAqB,EAAE,CAAC;AAC5C,QAAA,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC;AACvB,QAAA,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;AACvB,QAAA,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG;YAClB,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,IAAI,GAAG,GAAG,CAAC;YACxB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,IAAI,GAAG,GAAG,CAAC;SACnC,CAAC;KACH;AACD,IAAA,IACY,WAAW,GAAA;AACrB,QAAA,OAAO,yBAAyB,CAAC;KAClC;AArJU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,kBA4B9B,6BAA6B,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AA5B5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,EAR7B,QAAA,EAAA,yBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,4BAA4B;AACrC,gBAAA,WAAW,EAAE,6BAA6B;AAC3C,aAAA;YACD,cAAc;AACf,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChBH,gjCAeY,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,iBAAA,EAAA,0BAAA,EAAA,qBAAA,EAAA,yBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDGC,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAbzC,SAAS;+BACE,yBAAyB,EAAA,aAAA,EAEpB,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,4BAA4B;AACrC,4BAAA,WAAW,EAA+B,6BAAA;AAC3C,yBAAA;wBACD,cAAc;AACf,qBAAA,EAAA,QAAA,EAAA,gjCAAA,EAAA,CAAA;;0BA8BE,MAAM;2BAAC,6BAA6B,CAAA;sEAuH3B,WAAW,EAAA,CAAA;sBADtB,WAAW;uBAAC,OAAO,CAAA;;;AElJhB,MAAO,8BAA+B,SAAQ,eAAe,CAAA;AACjE,IAAA,WAAA,CAES,OAAsC,EACrC,KAAa,EACb,aAA6B,EAAA;AAErC,QAAA,KAAK,EAAE,CAAC;QAJD,IAAO,CAAA,OAAA,GAAP,OAAO,CAA+B;QACrC,IAAK,CAAA,KAAA,GAAL,KAAK,CAAQ;QACb,IAAa,CAAA,aAAA,GAAb,aAAa,CAAgB;AAGrC,QAAA,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC1E,YAAA,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACvD,SAAC,CAAC,CAAC;KACJ;IAED,eAAe,GAAA;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAEO,WAAW,GAAA;QACjB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,iBAAmC,CAAC;QACxE,KAAK,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;AACjD,QAAA,KAAK,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC3D,QAAA,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACjD,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,KAAK,GAAG,GAAG,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC;KACtE;AAED,IAAA,IACY,WAAW,GAAA;AACrB,QAAA,OAAO,0BAA0B,CAAC;KACnC;AA7BU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,8BAA8B,kBAE/B,6BAA6B,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAF5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,EAR9B,QAAA,EAAA,0BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,4BAA4B;AACrC,gBAAA,WAAW,EAAE,8BAA8B;AAC5C,aAAA;YACD,cAAc;AACf,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EATS,CAA0F,wFAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAWzF,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAb1C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,QAAQ,EAAE,CAA0F,wFAAA,CAAA;oBACpG,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,4BAA4B;AACrC,4BAAA,WAAW,EAAgC,8BAAA;AAC5C,yBAAA;wBACD,cAAc;AACf,qBAAA;AACF,iBAAA,CAAA;;0BAGI,MAAM;2BAAC,6BAA6B,CAAA;2FAyB3B,WAAW,EAAA,CAAA;sBADtB,WAAW;uBAAC,QAAQ,CAAA;;;AChBjB,MAAO,+BAAgC,SAAQ,eAAe,CAAA;IAMlE,WAES,CAAA,OAAsC,EACrC,aAA6B,EAAA;AAErC,QAAA,KAAK,EAAE,CAAC;QAHD,IAAO,CAAA,OAAA,GAAP,OAAO,CAA+B;QACrC,IAAa,CAAA,aAAA,GAAb,aAAa,CAAgB;QALvC,IAAM,CAAA,MAAA,GAAuB,EAAE,CAAC;AAQ9B,QAAA,OAAO,CAAC,cAAc;AACnB,aAAA,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC;aACpC,IAAI,CAAC,oBAAoB,EAAE,CAAC;aAC5B,SAAS,CAAC,MAAK;YACd,IAAI,CAAC,WAAW,EAAE,CAAC;AACrB,SAAC,CAAC,CAAC;KACN;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AAC/E,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAEQ,QAAQ,GAAA;QACf,KAAK,CAAC,QAAQ,EAAE,CAAC;AACjB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,2BAA2B,CAAC;QACzF,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;SACjE;KACF;IAED,eAAe,GAAA;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAES,YAAY,CAAC,CAAa,EAAE,KAAK,EAAA;QACzC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO;QAC3D,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAC5C;AAEO,IAAA,OAAO,CAAC,KAAuB,EAAA;QACrC,OAAO;AACL,YAAA,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE;SAC/B,CAAC;KACH;AA9CU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,kBAOhC,6BAA6B,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAP5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,EAR/B,QAAA,EAAA,sDAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,4BAA4B;AACrC,gBAAA,WAAW,EAAE,+BAA+B;AAC7C,aAAA;YACD,cAAc;SACf,EAlBS,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;AAST,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAWU,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAtB3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sDAAsD;AAChE,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;AAST,EAAA,CAAA;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,4BAA4B;AACrC,4BAAA,WAAW,EAAiC,+BAAA;AAC7C,yBAAA;wBACD,cAAc;AACf,qBAAA;AACF,iBAAA,CAAA;;0BAQI,MAAM;2BAAC,6BAA6B,CAAA;sEAHvC,MAAM,EAAA,CAAA;sBADL,KAAK;;;ACLF,MAAO,uBAAwB,SAAQ,gBAAwB,CAAA;AAInE,IAAA,IACY,cAAc,GAAA;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;8GAPU,uBAAuB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,EAbvB,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,yBAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,uBAAuB,EAAE;AACtE,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,uBAAuB,CAAC;AACtD,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACD,YAAA;AACE,gBAAA,OAAO,EAAE,6BAA6B;AACtC,gBAAA,WAAW,EAAE,uBAAuB;AACrC,aAAA;SACF,EAGgB,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EAAA,4BAA4B,oDC3B/C,43BAqB4C,EAAA,MAAA,EAAA,CAAA,0oKAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,8BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,+BAAA,EAAA,QAAA,EAAA,sDAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,4BAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,6BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDK/B,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBArBnC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,UAGpB,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAA,OAAA,EACxE,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,EAAA,aAAA,EACnG,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA;AACT,wBAAA,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,yBAAyB,EAAE;AACtE,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,6BAA6B,CAAC;AACtD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,6BAA6B;AACtC,4BAAA,WAAW,EAAyB,uBAAA;AACrC,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,43BAAA,EAAA,MAAA,EAAA,CAAA,0oKAAA,CAAA,EAAA,CAAA;8BAID,SAAS,EAAA,CAAA;sBADR,eAAe;uBAAC,4BAA4B,CAAA;gBAIjC,cAAc,EAAA,CAAA;sBADzB,WAAW;uBAAC,yBAAyB,CAAA;;;AEbxC,MAAM,OAAO,GAAU;IACrB,WAAW;IACX,eAAe;IACf,aAAa;IACb,cAAc;IACd,iBAAiB;IACjB,iBAAiB;IACjB,cAAc;IACd,cAAc;CACf,CAAC;AACF,MAAM,UAAU,GAAU;IACxB,uBAAuB;IACvB,8BAA8B;IAC9B,+BAA+B;IAC/B,4BAA4B;IAC5B,6BAA6B;CAC9B,CAAC;MAQW,oBAAoB,CAAA;8GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,iBAb/B,uBAAuB;YACvB,8BAA8B;YAC9B,+BAA+B;YAC/B,4BAA4B;YAC5B,6BAA6B,CAAA,EAAA,OAAA,EAAA,CAKnB,YAAY,EAnBtB,WAAW;YACX,eAAe;YACf,aAAa;YACb,cAAc;YACd,iBAAiB;YACjB,iBAAiB;YACjB,cAAc;AACd,YAAA,cAAc,aAGd,uBAAuB;YACvB,8BAA8B;YAC9B,+BAA+B;YAC/B,4BAA4B;YAC5B,6BAA6B,CAAA,EAAA,CAAA,CAAA,EAAA;+GASlB,oBAAoB,EAAA,OAAA,EAAA,CAJrB,YAAY,EAAK,OAAO,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIvB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,GAAG,UAAU,CAAC;AAC7B,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,GAAG,OAAO,CAAC;AACnC,oBAAA,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC;AACxB,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA,CAAA;;;ACxCD;;AAEG;;;;"}
|
1
|
+
{"version":3,"file":"acorex-components-color-palette.mjs","sources":["../../../../libs/components/color-palette/src/lib/color-palette.class.ts","../../../../libs/components/color-palette/src/lib/color-palette-input.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-input.component.html","../../../../libs/components/color-palette/src/lib/color-palette-picker.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-picker.component.html","../../../../libs/components/color-palette/src/lib/color-palette-preview.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-swatches.component.ts","../../../../libs/components/color-palette/src/lib/color-palette.component.ts","../../../../libs/components/color-palette/src/lib/color-palette.component.html","../../../../libs/components/color-palette/src/lib/color-palette.module.ts","../../../../libs/components/color-palette/src/acorex-components-color-palette.ts"],"sourcesContent":["import { AXOptionChangedEvent, AXValueChangedEvent } from '@acorex/components/common';\nimport { EventEmitter, Injectable } from '@angular/core';\n\n/**\n * A token that specifies the display mode of datapager component.\n */\nexport type AXColorPaletteView = 'swatches' | 'gradient' | 'custom';\nexport interface AXColorChangedEvent {\n color: any;\n sender: any;\n}\n\n@Injectable()\nexport abstract class AXColorPaletteParentComponent {\n abstract readonly: boolean;\n abstract disabled: boolean;\n abstract get value(): string;\n abstract onValueChanged: EventEmitter<AXValueChangedEvent<string>>;\n abstract onOptionChanged: EventEmitter<AXOptionChangedEvent>;\n abstract commitValue(value: string, u?: boolean);\n}\n\n@Injectable()\nexport abstract class AXColorPaletteChildComponent {}\n\nexport const AXDefaultColorPalette = [\n { code: '#ffffff' },\n { code: '#000000' },\n { code: '#9E9E9E' },\n { code: '#FFC107' },\n { code: '#607D8B' },\n { code: '#2196F3' },\n { code: '#FF5722' },\n { code: '#4CAF50' },\n { code: '#9c27b0' },\n { code: '#3F51B5' },\n // Amber\n { code: '#fff8e1' },\n { code: '#ffecb3' },\n { code: '#ffe082' },\n { code: '#ffd54f' },\n { code: '#ffca28' },\n { code: '#ffc107' },\n { code: '#ffb300' },\n { code: '#ffa000' },\n { code: '#ff8f00' },\n { code: '#ff6f00' },\n // Blue Grey\n { code: '#ECEFF1' },\n { code: '#CFD8DC' },\n { code: '#B0BEC5' },\n { code: '#90A4AE' },\n { code: '#78909C' },\n { code: '#607D8B' },\n { code: '#546E7A' },\n { code: '#455A64' },\n { code: '#37474F' },\n { code: '#263238' },\n // Blue\n { code: '#E3F2FD' },\n { code: '#BBDEFB' },\n { code: '#90CAF9' },\n { code: '#64B5F6' },\n { code: '#42A5F5' },\n { code: '#2196F3' },\n { code: '#1E88E5' },\n { code: '#1976D2' },\n { code: '#1565C0' },\n { code: '#0D47A1' },\n // Brown\n { code: '#EFEBE9' },\n { code: '#D7CCC8' },\n { code: '#BCAAA4' },\n { code: '#A1887F' },\n { code: '#8D6E63' },\n { code: '#795548' },\n { code: '#6D4C41' },\n { code: '#5D4037' },\n { code: '#4E342E' },\n { code: '#3E2723' },\n // Cyan\n { code: '#E0F7FA' },\n { code: '#B2EBF2' },\n { code: '#80DEEA' },\n { code: '#4DD0E1' },\n { code: '#26C6DA' },\n { code: '#00BCD4' },\n { code: '#00ACC1' },\n { code: '#0097A7' },\n { code: '#00838F' },\n { code: '#006064' },\n // Deep Orange\n { code: '#FBE9E7' },\n { code: '#FFCCBC' },\n { code: '#FFAB91' },\n { code: '#FF8A65' },\n { code: '#FF7043' },\n { code: '#FF5722' },\n { code: '#F4511E' },\n { code: '#E64A19' },\n { code: '#D84315' },\n { code: '#BF360C' },\n // Deep Purple\n { code: '#EDE7F6' },\n { code: '#D1C4E9' },\n { code: '#B39DDB' },\n { code: '#9575CD' },\n { code: '#7E57C2' },\n { code: '#673AB7' },\n { code: '#5E35B1' },\n { code: '#512DA8' },\n { code: '#4527A0' },\n { code: '#311B92' },\n // Green\n { code: '#E8F5E9' },\n { code: '#C8E6C9' },\n { code: '#A5D6A7' },\n { code: '#81C784' },\n { code: '#66BB6A' },\n { code: '#4CAF50' },\n { code: '#43A047' },\n { code: '#388E3C' },\n { code: '#2E7D32' },\n { code: '#1B5E20' },\n\n // Grey\n { code: '#FAFAFA' },\n { code: '#F5F5F5' },\n { code: '#EEEEEE' },\n { code: '#E0E0E0' },\n { code: '#BDBDBD' },\n { code: '#9E9E9E' },\n { code: '#757575' },\n { code: '#616161' },\n { code: '#424242' },\n { code: '#212121' },\n\n // Indigo\n { code: '#E8EAF6' },\n { code: '#C5CAE9' },\n { code: '#9FA8DA' },\n { code: '#7986CB' },\n { code: '#5C6BC0' },\n { code: '#3F51B5' },\n { code: '#3949AB' },\n { code: '#303F9F' },\n { code: '#283593' },\n { code: '#1A237E' },\n // Light Blue\n { code: '#E1F5FE' },\n { code: '#B3E5FC' },\n { code: '#81D4FA' },\n { code: '#4FC3F7' },\n { code: '#29B6F6' },\n { code: '#03A9F4' },\n { code: '#039BE5' },\n { code: '#0288D1' },\n { code: '#0277BD' },\n { code: '#01579B' },\n // Light Green\n { code: '#F1F8E9' },\n { code: '#DCEDC8' },\n { code: '#C5E1A5' },\n { code: '#AED581' },\n { code: '#9CCC65' },\n { code: '#8BC34A' },\n { code: '#7CB342' },\n { code: '#689F38' },\n { code: '#558B2F' },\n { code: '#33691E' },\n // Lime\n { code: '#F9FBE7' },\n { code: '#F0F4C3' },\n { code: '#E6EE9C' },\n { code: '#DCE775' },\n { code: '#D4E157' },\n { code: '#CDDC39' },\n { code: '#C0CA33' },\n { code: '#AFB42B' },\n { code: '#9E9D24' },\n { code: '#827717' },\n // Orange\n { code: '#FFF3E0' },\n { code: '#FFE0B2' },\n { code: '#FFCC80' },\n { code: '#FFB74D' },\n { code: '#FFA726' },\n { code: '#FF9800' },\n { code: '#FB8C00' },\n { code: '#F57C00' },\n { code: '#EF6C00' },\n { code: '#E65100' },\n // Pink\n { code: '#FCE4EC' },\n { code: '#F8BBD0' },\n { code: '#F48FB1' },\n { code: '#F06292' },\n { code: '#EC407A' },\n { code: '#E91E63' },\n { code: '#D81B60' },\n { code: '#C2185B' },\n { code: '#AD1457' },\n { code: '#880E4F' },\n // Purple\n { code: '#F3E5F5' },\n { code: '#E1BEE7' },\n { code: '#CE93D8' },\n { code: '#BA68C8' },\n { code: '#AB47BC' },\n { code: '#9C27B0' },\n { code: '#8E24AA' },\n { code: '#7B1FA2' },\n { code: '#6A1B9A' },\n { code: '#4A148C' },\n // Red\n { code: '#FFEBEE' },\n { code: '#FFCDD2' },\n { code: '#EF9A9A' },\n { code: '#E57373' },\n { code: '#EF5350' },\n { code: '#F44336' },\n { code: '#E53935' },\n { code: '#D32F2F' },\n { code: '#C62828' },\n { code: '#B71C1C' },\n // Teal\n { code: '#E0F2F1' },\n { code: '#B2DFDB' },\n { code: '#80CBC4' },\n { code: '#4DB6AC' },\n { code: '#26A69A' },\n { code: '#009688' },\n { code: '#00897B' },\n { code: '#00796B' },\n { code: '#00695C' },\n { code: '#004D40' },\n // Yellow\n { code: '#FFFDE7' },\n { code: '#FFF9C4' },\n { code: '#FFF59D' },\n { code: '#FFF176' },\n { code: '#FFEE58' },\n { code: '#FFEB3B' },\n { code: '#FDD835' },\n { code: '#FBC02D' },\n { code: '#F9A825' },\n { code: '#F57F17' },\n];\n","import { AXValueChangedEvent, MXBaseComponent } from '@acorex/components/common';\nimport { AXMaskOptions } from '@acorex/components/text-box';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component for selecting colors from a palette.\n * \n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-input',\n templateUrl: './color-palette-input.component.html',\n styles: `\n .ax-bold {\n font-weight: bold;\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPaletteInputComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPaletteInputComponent extends MXBaseComponent implements AfterViewInit {\n isValid = true;\n\n _rgba: any = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n\n _hex = '';\n\n /**\n * @ignore\n */\n protected _colorMode: 'hex' | 'rgba' = 'hex';\n\n /**\n * @ignore\n */\n protected _hexMaskOptions: AXMaskOptions = {\n mask: /^#[0-9a-f]{0,6}[0-9a-f]{0,2}$/i,\n prepare: (str, m, a) => {\n return m.typedValue?.startsWith('#') || str == '#' ? str.trim() : '#' + str.trim();\n },\n };\n\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.applyParent(e.isUserInteraction);\n });\n _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.cdr.markForCheck();\n });\n }\n\n /**\n * @ignore\n */\n private applyParent(u: boolean = false) {\n const value = this._parent.value;\n if (!value) {\n this._hex = '';\n this._rgba = {\n r: null,\n g: null,\n b: null,\n a: null,\n };\n } else {\n Object.assign(this._rgba, AXColorUtil.to(value, 'rgba'));\n if (this._colorMode != 'hex' || !this._hex) {\n this._hex = AXColorUtil.toString(value, 'hex');\n }\n if (this._colorMode == 'hex') {\n this._hex = value;\n }\n if (!u && this._rgba.a != 1) {\n this._colorMode = 'rgba';\n }\n }\n this.checkValid();\n this.cdr.detectChanges();\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit() {\n this.applyParent();\n }\n\n /**\n * @ignore\n */\n _handleChangeInputMode() {\n switch (this._colorMode) {\n case 'rgba':\n this._colorMode = 'hex';\n break;\n default:\n this._colorMode = 'rgba';\n break;\n }\n }\n\n /**\n * @ignore\n */\n _handleRGBAValueChanged(e: AXValueChangedEvent<number>) {\n if (e.isUserInteraction) {\n this._rgba[e.name] = e.value;\n const { r, g, b, a } = this._rgba;\n const _color = `rgba(${r},${g},${b},${a})`;\n this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), e.isUserInteraction);\n }\n }\n\n /**\n * @ignore\n */\n protected _handleHEXAValueChanged(e: AXValueChangedEvent<string>) {\n if (e.isUserInteraction && e.value?.trim() != this._hex?.trim()) {\n this._parent.commitValue(e.value, e.isUserInteraction);\n }\n }\n\n /**\n * @ignore\n */\n private checkValid() {\n this.isValid = AXColorUtil.isValid(this._hex);\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-color-palette-input`;\n }\n}\n","<div class=\"palette-inputs\">\n @switch (_colorMode) {\n @case ('hex') {\n <div>\n <ax-text-box\n class=\"ax-sm\"\n [ngModel]=\"_hex\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [state]=\"isValid ? 'clear' : 'error'\"\n (onValueChanged)=\"_handleHEXAValueChanged($event)\"\n [mask-options]=\"_hexMaskOptions\"\n >\n </ax-text-box>\n <label>HEX</label>\n </div>\n }\n @case ('rgba') {\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"r\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.r\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>R</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"g\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.g\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>G</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"b\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.b\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>B</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"a\"\n [minValue]=\"0\"\n [maxValue]=\"1\"\n [ngModel]=\"_rgba.a\"\n [decimals]=\"2\"\n [step]=\"0.1\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>A</label>\n </div>\n }\n }\n</div>\n<button\n type=\"button\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-sm\"\n (click)=\"_handleChangeInputMode()\"\n [disabled]=\"_parent.disabled\"\n>\n <span class=\"ax-icon ax-icon-unfold-more ax-bold\"></span>\n</button>\n","import { AXValueChangedEvent, MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component for picking colors from a color palette.\n * \n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-picker',\n templateUrl: './color-palette-picker.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPalettePickerComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPalettePickerComponent extends MXBaseComponent {\n _rgba: { r: number; g: number; b: number; a: number } = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n\n /**\n * @ignore\n */\n protected _gradient: number = 0;\n\n /**\n * @ignore\n */\n protected _bgColor: string = '#F00';\n\n /**\n * @ignore\n */\n private readonly _gradientColors: any[] = [\n { color: 'rgb(255, 0, 0)', pos: 0 },\n { color: 'rgb(255, 255, 0)', pos: 0.17 },\n { color: 'rgb(0, 255, 0)', pos: 0.33 },\n { color: 'rgb(0, 255, 255)', pos: 0.5 },\n { color: 'rgb(0, 0, 255)', pos: 0.67 },\n { color: 'rgb(255, 0, 255)', pos: 0.83 },\n { color: 'rgb(255, 0, 0)', pos: 1 },\n ];\n\n /**\n * @ignore\n */\n private readonly _gradients = AXColorUtil.gradient(this._gradientColors);\n\n /**\n * @ignore\n */\n private readonly _colors = this._gradients.rgb(100);\n\n /**\n * @ignore\n */\n protected dragPosition = { x: 0, y: 0 };\n\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this._handleParentColorChanged();\n });\n _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.cdr.markForCheck();\n });\n }\n\n /**\n * @ignore\n */\n private setHSV() {\n const hsv = AXColorUtil.to(this._rgba, 'hsva') as any;\n const sortedH = this._colors.map((c) => c.toHsv().h);\n this._gradient = sortedH.findIndex((c) => {\n return Math.round(c) >= Math.round(hsv.h);\n });\n this._bgColor = AXColorUtil.toString({ h: hsv.h, s: 1, v: 1, a: this._rgba.a }, 'rgba');\n this.setPointerByPercent(hsv.s * 100, hsv.v * 100);\n }\n\n /**\n * @ignore\n */\n private _handleParentColorChanged() {\n const color = this._parent.value;\n if (!color) {\n this._rgba = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n } else {\n if (!AXColorUtil.equal(color, this._rgba)) {\n Object.assign(this._rgba, AXColorUtil.to(color, 'rgba'));\n }\n }\n this.setHSV();\n this.cdr.detectChanges();\n }\n\n /**\n * @ignore\n */\n protected _handleAlphaChanged(e: AXValueChangedEvent<number>) {\n if (e.isUserInteraction && e.value != this._rgba.a) {\n const { r, g, b } = this._rgba;\n const _color = `rgba(${r},${g},${b},${e.value})`;\n this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), e.isUserInteraction);\n }\n }\n\n /**\n * @ignore\n */\n protected _handleGradientChanged(e: AXValueChangedEvent<number>) {\n if (e.isUserInteraction && e.value != this._gradient) {\n const { s, v } = AXColorUtil.to(this._rgba, 'hsva') as any;\n const { h } = this._colors[e.value].toHsv();\n this._parent.commitValue(AXColorUtil.toString({ h, s, v, a: this._rgba.a }, 'rgba'), e.isUserInteraction);\n }\n }\n\n /**\n * @ignore\n */\n protected _handleSurfaceClick(e: MouseEvent) {\n if (this._parent.disabled || this._parent.readonly) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n let x = e.offsetX;\n let y = e.offsetY;\n this.setColorByXY(x, y);\n }\n\n /**\n * @ignore\n */\n protected _handleDrag() {\n if (this._parent.disabled || this._parent.readonly) {\n return;\n }\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const sb = surface.getBoundingClientRect();\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n const pb = pointer.getBoundingClientRect();\n const w = pb.width / 2;\n let x = pb.left - sb.left + w;\n let y = pb.top - sb.top + w;\n //\n x = x < 0 ? 0 : x;\n x = x > sb.width ? sb.width : x;\n //\n y = y < 0 ? 0 : y;\n y = y > sb.height ? sb.height : y;\n //\n this.setColorByXY(x, y);\n }\n\n /**\n * @ignore\n */\n private setColorByXY(x: number, y: number) {\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const sb = surface.getBoundingClientRect();\n //\n const { h } = AXColorUtil.to(this._bgColor, 'hsva') as any;\n const hsv = {\n h,\n s: x / sb.width,\n v: (sb.height - y) / sb.height,\n };\n this._parent.commitValue(AXColorUtil.toString(hsv, 'rgba'), true);\n }\n\n /**\n * @ignore\n */\n private setPointerByPercent(x: number, y: number) {\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n if (!surface) return;\n const sb = surface?.getBoundingClientRect();\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n const pb = pointer?.getBoundingClientRect();\n const w = pb.width / 2;\n const width = sb.width; //+ pb.width\n const height = sb.height; // + pb.width\n this.dragPosition = {\n x: (x * width) / 100 - w,\n y: height - (y * height) / 100 - w,\n };\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-color-palette-picker`;\n }\n}\n","<div class=\"ax-color-box-overlay-trans\">\n <div class=\"ax-color-box-overlay\" [style.background-color]=\"_bgColor\">\n <div class=\"ax-color-box-overlay-g1\"></div>\n <div class=\"ax-color-box-overlay-g2\" (click)=\"_handleSurfaceClick($event)\"></div>\n <div class=\"ax-color-box-pointer\" cdkDrag cdkDragBoundary=\".ax-color-box-overlay\"\n [cdkDragFreeDragPosition]=\"dragPosition\" (cdkDragEnded)=\"_handleDrag()\"\n [cdkDragDisabled]=\"_parent.disabled || _parent.readonly\">\n </div>\n </div>\n</div>\n<ax-slider class=\"ax-color-box-gradient\" [minValue]=\"0\" [maxValue]=\"100\" [step]=\"1\" [ngModel]=\"_gradient\"\n [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\" (onValueChanged)=\"_handleGradientChanged($event)\">\n</ax-slider>\n<ax-slider class=\"ax-color-box-transparent\" [minValue]=\"0\" [maxValue]=\"1\" [step]=\"0.01\" [ngModel]=\"_rgba.a\"\n [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\" (onValueChanged)=\"_handleAlphaChanged($event)\">\n</ax-slider>","import { MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, HostBinding, Inject, NgZone, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component that displays a preview of the selected color in the palette.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-preview',\n template: `<div class=\"palette-preview-overlay\" [class.ax-state-disabled]=\"_parent.disabled\"></div>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPalettePreviewComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPalettePreviewComponent extends MXBaseComponent implements AfterViewInit {\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _zone: NgZone,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n _zone.runOutsideAngular(this.applyParent.bind(this));\n });\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit() {\n this.applyParent();\n }\n\n /**\n * @ignore\n */\n private applyParent() {\n const inner = this.getHostElement().firstElementChild as HTMLDivElement;\n inner.style.backgroundColor = this._parent.value;\n inner.innerText = AXColorUtil.toString(this._parent.value);\n const color = AXColorUtil.toString(this._parent.value, 'hex');\n const ratio = AXColorUtil.contrastToWhite(color);\n this.getHostElement().style.color = !(ratio > 2.0) ? '#000' : '#fff';\n }\n\n /**\n * @ignore\n */\n @HostBinding('classs')\n private get __hostClass(): string {\n return `ax-color-palette-preview`;\n }\n}\n","import { MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, Inject, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { distinctUntilChanged } from 'rxjs/operators';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent, AXDefaultColorPalette } from './color-palette.class';\n\n/**\n * Displays color swatches or favorites, allowing color selection.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-swatches, ax-color-palette-favorite',\n template: `\n @for (color of colors; track color.code) {\n <div\n [style.background-color]=\"color.code\"\n [attr.title]=\"color.code\"\n [class.ax-state-selected]=\"color.code === _selected\"\n (click)=\"_handleClick($event, color)\"\n ></div>\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPaletteSwatchesComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPaletteSwatchesComponent extends MXBaseComponent implements OnInit, AfterViewInit {\n /**\n * @ignore\n */\n protected _selected: string;\n\n /**\n * List of color objects for display, each with a `code` property.\n * @defaultValue []\n */\n @Input()\n colors: { code: string }[] = [];\n\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged\n .pipe(_unsubscriber.takeUntilDestroy)\n .pipe(distinctUntilChanged())\n .subscribe(() => {\n this.applyParent();\n });\n }\n\n /**\n * @ignore\n */\n private applyParent() {\n this._selected = AXColorUtil.toString(this._parent.value, 'hex').toLowerCase();\n this.cdr.detectChanges();\n }\n\n /**\n * @ignore\n */\n override ngOnInit(): void {\n super.ngOnInit();\n const isFav = this.getHostElement().tagName.toLowerCase() == 'ax-color-palette-favorite';\n if (!isFav && this.colors.length == 0) {\n this.colors = AXDefaultColorPalette.map((c) => this._format(c));\n }\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit() {\n this.applyParent();\n }\n\n /**\n * @ignore\n */\n protected _handleClick(e: MouseEvent, color) {\n if (this._parent.disabled || this._parent.readonly) return;\n this._parent.commitValue(color.code, true);\n }\n\n /**\n * @ignore\n */\n private _format(color: { code: string }): { code: string } {\n return {\n code: color.code.toLowerCase(),\n };\n }\n}\n","import { AXValuableComponent, MXValueComponent } from '@acorex/components/common';\nimport { ChangeDetectionStrategy, Component, ContentChildren, HostBinding, QueryList, ViewEncapsulation, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * A color palette component that allows for color selection and interaction.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette',\n templateUrl: './color-palette.component.html',\n styleUrls: ['./color-palette.component.scss'],\n inputs: ['disabled', 'tabIndex', 'readonly', 'value', 'state', 'name', 'checked'],\n outputs: ['onBlur', 'onFocus', 'valueChange', 'stateChange', 'onValueChanged', 'readonlyChange', 'disabledChange'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n { provide: AXValuableComponent, useExisting: AXColorPalleteComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXColorPalleteComponent),\n multi: true,\n },\n {\n provide: AXColorPaletteParentComponent,\n useExisting: AXColorPalleteComponent,\n },\n ],\n})\nexport class AXColorPalleteComponent extends MXValueComponent<string> {\n @ContentChildren(AXColorPaletteChildComponent)\n _children: QueryList<AXColorPaletteChildComponent>;\n\n /**\n * @ignore\n */\n @HostBinding('class.ax-state-disabled')\n private get __hostDisabled() {\n return this.disabled;\n }\n}\n","<ng-content select='ax-header'></ng-content>\n\n@if(_children?.length){\n<ng-container [ngTemplateOutlet]=\"custom\"></ng-container>\n} @else{\n<ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n\n}\n<ng-template #custom>\n <ng-content select='ax-color-palette-preview'></ng-content>\n <ng-content select='ax-color-palette-picker'></ng-content>\n <ng-content select='ax-color-palette-swatches'></ng-content>\n <ng-content select='ax-color-palette-favorite'></ng-content>\n <ng-content select='ax-color-palette-input'></ng-content>\n</ng-template>\n<ng-template #default>\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-swatches></ax-color-palette-swatches>\n <ax-color-palette-input></ax-color-palette-input>\n</ng-template>\n<ng-content select='ax-footer'></ng-content>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\nimport { AXSliderModule } from '@acorex/components/slider';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { FormsModule } from '@angular/forms';\nimport { AXColorPaletteInputComponent } from './color-palette-input.component';\nimport { AXColorPalettePickerComponent } from './color-palette-picker.component';\nimport { AXColorPalettePreviewComponent } from './color-palette-preview.component';\nimport { AXColorPaletteSwatchesComponent } from './color-palette-swatches.component';\nimport { AXColorPalleteComponent } from './color-palette.component';\n\nconst MODULES: any[] = [\n FormsModule,\n AXTextBoxModule,\n AXLabelModule,\n AXButtonModule,\n AXDecoratorModule,\n AXNumberBoxModule,\n AXSliderModule,\n DragDropModule,\n];\nconst CONPONENTS: any[] = [\n AXColorPalleteComponent,\n AXColorPalettePreviewComponent,\n AXColorPaletteSwatchesComponent,\n AXColorPaletteInputComponent,\n AXColorPalettePickerComponent,\n];\n\n@NgModule({\n declarations: [...CONPONENTS],\n imports: [CommonModule, ...MODULES],\n exports: [...CONPONENTS],\n providers: [],\n})\nexport class AXColorPaletteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i4","i1","i2.AXColorPalettePreviewComponent","i3.AXColorPaletteSwatchesComponent","i4.AXColorPaletteInputComponent","i5.AXColorPalettePickerComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;MAasB,6BAA6B,CAAA;8GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA7B,6BAA6B,EAAA,CAAA,CAAA,EAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADlD,UAAU;;MAWW,4BAA4B,CAAA;8GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA5B,4BAA4B,EAAA,CAAA,CAAA,EAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBADjD,UAAU;;AAGE,MAAA,qBAAqB,GAAG;IACnC,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAGnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAGnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IAC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"}
|