@acorex/components 18.14.0 → 18.14.1-next.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (91) hide show
  1. package/esm2022/alert/lib/alert.component.mjs +10 -14
  2. package/esm2022/avatar/lib/avatar.component.mjs +2 -2
  3. package/esm2022/common/lib/components/selection-base.component.class.mjs +2 -1
  4. package/esm2022/selection-list/lib/selection-list.component.mjs +39 -91
  5. package/esm2022/time-line/lib/time-line-item.component.mjs +3 -3
  6. package/esm2022/time-line/lib/time-line.component.mjs +18 -4
  7. package/fesm2022/acorex-components-action-sheet.mjs +1 -1
  8. package/fesm2022/acorex-components-alert.mjs +10 -14
  9. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  10. package/fesm2022/acorex-components-audio-wave.mjs +1 -1
  11. package/fesm2022/acorex-components-avatar.mjs +3 -3
  12. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  13. package/fesm2022/acorex-components-badge.mjs +1 -1
  14. package/fesm2022/acorex-components-bottom-navigation.mjs +1 -1
  15. package/fesm2022/acorex-components-breadcrumbs.mjs +1 -1
  16. package/fesm2022/acorex-components-button-group.mjs +1 -1
  17. package/fesm2022/acorex-components-button.mjs +1 -1
  18. package/fesm2022/acorex-components-calendar.mjs +1 -1
  19. package/fesm2022/acorex-components-check-box.mjs +1 -1
  20. package/fesm2022/acorex-components-chips.mjs +1 -1
  21. package/fesm2022/acorex-components-circular-progress.mjs +1 -1
  22. package/fesm2022/acorex-components-collapse.mjs +1 -1
  23. package/fesm2022/acorex-components-color-box.mjs +1 -1
  24. package/fesm2022/acorex-components-color-palette.mjs +1 -1
  25. package/fesm2022/acorex-components-comment.mjs +1 -1
  26. package/fesm2022/acorex-components-common.mjs +2 -1
  27. package/fesm2022/acorex-components-common.mjs.map +1 -1
  28. package/fesm2022/acorex-components-conversation.mjs +1 -1
  29. package/fesm2022/acorex-components-data-pager.mjs +1 -1
  30. package/fesm2022/acorex-components-data-table.mjs +1 -1
  31. package/fesm2022/acorex-components-datetime-box.mjs +1 -1
  32. package/fesm2022/acorex-components-datetime-input.mjs +1 -1
  33. package/fesm2022/acorex-components-datetime-picker.mjs +1 -1
  34. package/fesm2022/acorex-components-decorators.mjs +1 -1
  35. package/fesm2022/acorex-components-dialog.mjs +1 -1
  36. package/fesm2022/acorex-components-drawer.mjs +1 -1
  37. package/fesm2022/acorex-components-dropdown-button.mjs +1 -1
  38. package/fesm2022/acorex-components-dropdown.mjs +1 -1
  39. package/fesm2022/acorex-components-form.mjs +1 -1
  40. package/fesm2022/acorex-components-image-editor.mjs +1 -1
  41. package/fesm2022/acorex-components-image.mjs +1 -1
  42. package/fesm2022/acorex-components-json-viewer.mjs +1 -1
  43. package/fesm2022/acorex-components-label.mjs +1 -1
  44. package/fesm2022/acorex-components-list.mjs +1 -1
  45. package/fesm2022/acorex-components-loading-dialog.mjs +1 -1
  46. package/fesm2022/acorex-components-loading.mjs +1 -1
  47. package/fesm2022/acorex-components-map.mjs +1 -1
  48. package/fesm2022/acorex-components-media-viewer.mjs +1 -1
  49. package/fesm2022/acorex-components-menu.mjs +1 -1
  50. package/fesm2022/acorex-components-nav.mjs +1 -1
  51. package/fesm2022/acorex-components-navbar.mjs +1 -1
  52. package/fesm2022/acorex-components-notification.mjs +1 -1
  53. package/fesm2022/acorex-components-number-box.mjs +1 -1
  54. package/fesm2022/acorex-components-otp.mjs +1 -1
  55. package/fesm2022/acorex-components-page.mjs +1 -1
  56. package/fesm2022/acorex-components-paint.mjs +1 -1
  57. package/fesm2022/acorex-components-password-box.mjs +1 -1
  58. package/fesm2022/acorex-components-phone-box.mjs +1 -1
  59. package/fesm2022/acorex-components-picker.mjs +1 -1
  60. package/fesm2022/acorex-components-popover.mjs +1 -1
  61. package/fesm2022/acorex-components-popup.mjs +1 -1
  62. package/fesm2022/acorex-components-progress-bar.mjs +1 -1
  63. package/fesm2022/acorex-components-qrcode.mjs +1 -1
  64. package/fesm2022/acorex-components-radio.mjs +1 -1
  65. package/fesm2022/acorex-components-range-slider.mjs +1 -1
  66. package/fesm2022/acorex-components-rate-picker.mjs +1 -1
  67. package/fesm2022/acorex-components-result.mjs +1 -1
  68. package/fesm2022/acorex-components-routing-progress.mjs +1 -1
  69. package/fesm2022/acorex-components-scheduler.mjs +1 -1
  70. package/fesm2022/acorex-components-search-box.mjs +1 -1
  71. package/fesm2022/acorex-components-select-box.mjs +1 -1
  72. package/fesm2022/acorex-components-selection-list.mjs +39 -91
  73. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  74. package/fesm2022/acorex-components-side-menu.mjs +1 -1
  75. package/fesm2022/acorex-components-skeleton.mjs +1 -1
  76. package/fesm2022/acorex-components-slider.mjs +1 -1
  77. package/fesm2022/acorex-components-step-wizard.mjs +1 -1
  78. package/fesm2022/acorex-components-switch.mjs +1 -1
  79. package/fesm2022/acorex-components-tabs.mjs +1 -1
  80. package/fesm2022/acorex-components-tag.mjs +1 -1
  81. package/fesm2022/acorex-components-text-area.mjs +1 -1
  82. package/fesm2022/acorex-components-text-box.mjs +1 -1
  83. package/fesm2022/acorex-components-time-line.mjs +19 -5
  84. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  85. package/fesm2022/acorex-components-toast.mjs +1 -1
  86. package/fesm2022/acorex-components-tooltip.mjs +1 -1
  87. package/fesm2022/acorex-components-uploader.mjs +1 -1
  88. package/fesm2022/acorex-components-wysiwyg.mjs +1 -1
  89. package/package.json +1 -1
  90. package/selection-list/lib/selection-list.component.d.ts +9 -37
  91. package/time-line/lib/time-line.component.d.ts +2 -0
@@ -115,17 +115,13 @@ export class AXAlertComponent extends MXColorComponent {
115
115
  * @ignore
116
116
  */
117
117
  close() {
118
- const host = this.getHostElement();
119
- const func = () => {
120
- if (isBrowser()) {
121
- host.parentElement?.removeChild(host);
122
- this.onClosed.emit({
123
- component: this,
124
- });
125
- host.removeEventListener('transitionend', func);
126
- }
127
- };
128
- host.addEventListener('transitionend', func);
118
+ if (isBrowser()) {
119
+ const host = this.getHostElement();
120
+ host.parentElement?.removeChild(host);
121
+ this.onClosed.emit({
122
+ component: this,
123
+ });
124
+ }
129
125
  }
130
126
  /**
131
127
  * @ignore
@@ -134,13 +130,13 @@ export class AXAlertComponent extends MXColorComponent {
134
130
  return `ax-alert ax-none ax-${this.color}-solid`;
135
131
  }
136
132
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
137
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXAlertComponent, selector: "ax-alert", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, timeOut: { classPropertyName: "timeOut", publicName: "timeOut", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { colorChange: "colorChange", onClosed: "onClosed", timeOut: "timeOutChange" }, host: { properties: { "class": "this.__hostClass" } }, providers: [{ provide: AXClosbaleComponent, useExisting: AXAlertComponent }], queries: [{ propertyName: "axIcon", first: true, predicate: ["ax-icon"], descendants: true, isSignal: true }, { propertyName: "axTitle", first: true, predicate: ["ax-title"], descendants: true, isSignal: true }, { propertyName: "axContent", first: true, predicate: ["ax-content"], descendants: true, isSignal: true }, { propertyName: "axFooter", first: true, predicate: ["ax-footer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n", styles: [".ax-dark ax-alert.ax-primary-solid{background-color:rgba(var(--ax-color-primary-900),.25);border-color:rgba(var(--ax-color-primary-500))}.ax-dark ax-alert.ax-primary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-alert.ax-secondary-solid{background-color:rgba(var(--ax-color-secondary-900),.25);border-color:rgba(var(--ax-color-secondary-500))}.ax-dark ax-alert.ax-secondary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-alert.ax-success-solid{background-color:rgba(var(--ax-color-success-900),.25);border-color:rgba(var(--ax-color-success-500))}.ax-dark ax-alert.ax-success-solid .ax-alert-progress{background-color:rgba(var(--ax-color-success-fore))}.ax-dark ax-alert.ax-warning-solid{background-color:rgba(var(--ax-color-warning-900),.25);border-color:rgba(var(--ax-color-warning-500))}.ax-dark ax-alert.ax-warning-solid .ax-alert-progress{background-color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-alert.ax-danger-solid{background-color:rgba(var(--ax-color-danger-900),.25);border-color:rgba(var(--ax-color-danger-500))}.ax-dark ax-alert.ax-danger-solid .ax-alert-progress{background-color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-alert.ax-info-solid{background-color:rgba(var(--ax-color-info-900),.25);border-color:rgba(var(--ax-color-info-500))}.ax-dark ax-alert.ax-info-solid .ax-alert-progress{background-color:rgba(var(--ax-color-info-fore))}ax-alert{position:relative;display:flex;gap:1rem;overflow:hidden;border-radius:var(--ax-rounded-border-default);border-width:1px;border-color:rgba(var(--ax-color-border-default));padding:1rem;font-size:.875rem;line-height:1.25rem}ax-alert .ax-alert-inline{display:flex;flex:1 1 0%;align-items:center;justify-content:center}ax-alert .ax-alert-block{display:flex}ax-alert .ax-alert-block .ax-alert-content{display:flex;flex-direction:column;line-height:1.5}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:empty{display:none}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:not(:empty)+ax-content:not(:empty){margin-top:.5rem}ax-alert .ax-alert-block .ax-alert-content ax-footer{margin-top:1rem}ax-alert .ax-alert-icon{display:grid;border-radius:9999px;padding-inline-end:.5rem;font-size:1.125rem;line-height:1.75rem}ax-alert .ax-alert-buttons{padding-inline-start:1rem}ax-alert .ax-alert-title{display:flex;flex:1 1 0%;flex-direction:column}ax-alert .ax-alert-title ax-title{font-size:.875rem;line-height:1.25rem;font-weight:500}ax-alert .ax-alert-progress{position:absolute;bottom:0;inset-inline-start:0px;height:.25rem}@keyframes progressBar{0%{width:100%}to{width:0%}}ax-alert.ax-primary-solid{background-color:rgba(var(--ax-color-primary-100));border-color:rgba(var(--ax-color-primary-500))}ax-alert.ax-primary-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-primary-solid ax-title,ax-alert.ax-primary-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-primary-solid .ax-alert-icon{color:rgba(var(--ax-color-primary-500))}ax-alert.ax-primary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-primary-500))}ax-alert.ax-secondary-solid{background-color:rgba(var(--ax-color-secondary-100));border-color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-secondary-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-secondary-solid ax-title,ax-alert.ax-secondary-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-secondary-solid .ax-alert-icon{color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-secondary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-success-solid{background-color:rgba(var(--ax-color-success-100));border-color:rgba(var(--ax-color-success-500))}ax-alert.ax-success-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-success-solid ax-title,ax-alert.ax-success-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-success-solid .ax-alert-icon{color:rgba(var(--ax-color-success-500))}ax-alert.ax-success-solid .ax-alert-progress{background-color:rgba(var(--ax-color-success-500))}ax-alert.ax-warning-solid{background-color:rgba(var(--ax-color-warning-100));border-color:rgba(var(--ax-color-warning-500))}ax-alert.ax-warning-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-warning-solid ax-title,ax-alert.ax-warning-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-warning-solid .ax-alert-icon{color:rgba(var(--ax-color-warning-500))}ax-alert.ax-warning-solid .ax-alert-progress{background-color:rgba(var(--ax-color-warning-500))}ax-alert.ax-danger-solid{background-color:rgba(var(--ax-color-danger-100));border-color:rgba(var(--ax-color-danger-500))}ax-alert.ax-danger-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-danger-solid ax-title,ax-alert.ax-danger-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-danger-solid .ax-alert-icon{color:rgba(var(--ax-color-danger-500))}ax-alert.ax-danger-solid .ax-alert-progress{background-color:rgba(var(--ax-color-danger-500))}ax-alert.ax-info-solid{background-color:rgba(var(--ax-color-info-100));border-color:rgba(var(--ax-color-info-500))}ax-alert.ax-info-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-info-solid ax-title,ax-alert.ax-info-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-info-solid .ax-alert-icon{color:rgba(var(--ax-color-info-500))}ax-alert.ax-info-solid .ax-alert-progress{background-color:rgba(var(--ax-color-info-500))}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
133
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXAlertComponent, selector: "ax-alert", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, timeOut: { classPropertyName: "timeOut", publicName: "timeOut", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { colorChange: "colorChange", onClosed: "onClosed", timeOut: "timeOutChange" }, host: { properties: { "class": "this.__hostClass" } }, providers: [{ provide: AXClosbaleComponent, useExisting: AXAlertComponent }], queries: [{ propertyName: "axIcon", first: true, predicate: ["ax-icon"], descendants: true, isSignal: true }, { propertyName: "axTitle", first: true, predicate: ["ax-title"], descendants: true, isSignal: true }, { propertyName: "axContent", first: true, predicate: ["ax-content"], descendants: true, isSignal: true }, { propertyName: "axFooter", first: true, predicate: ["ax-footer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n", styles: [".ax-dark ax-alert.ax-primary-solid{background-color:rgba(var(--ax-color-primary-900),.25);border-color:rgba(var(--ax-color-primary-400))}.ax-dark ax-alert.ax-primary-solid .ax-alert-icon{color:rgba(var(--ax-color-primary-400))}.ax-dark ax-alert.ax-primary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-alert.ax-secondary-solid{background-color:rgba(var(--ax-color-secondary-900),.25);border-color:rgba(var(--ax-color-secondary-400))}.ax-dark ax-alert.ax-secondary-solid .ax-alert-icon{color:rgba(var(--ax-color-secondary-400))}.ax-dark ax-alert.ax-secondary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-alert.ax-success-solid{background-color:rgba(var(--ax-color-success-900),.25);border-color:rgba(var(--ax-color-success-400))}.ax-dark ax-alert.ax-success-solid .ax-alert-icon{color:rgba(var(--ax-color-success-400))}.ax-dark ax-alert.ax-success-solid .ax-alert-progress{background-color:rgba(var(--ax-color-success-fore))}.ax-dark ax-alert.ax-warning-solid{background-color:rgba(var(--ax-color-warning-900),.25);border-color:rgba(var(--ax-color-warning-400))}.ax-dark ax-alert.ax-warning-solid .ax-alert-icon{color:rgba(var(--ax-color-warning-400))}.ax-dark ax-alert.ax-warning-solid .ax-alert-progress{background-color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-alert.ax-danger-solid{background-color:rgba(var(--ax-color-danger-900),.25);border-color:rgba(var(--ax-color-danger-400))}.ax-dark ax-alert.ax-danger-solid .ax-alert-icon{color:rgba(var(--ax-color-danger-400))}.ax-dark ax-alert.ax-danger-solid .ax-alert-progress{background-color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-alert.ax-info-solid{background-color:rgba(var(--ax-color-info-900),.25);border-color:rgba(var(--ax-color-info-400))}.ax-dark ax-alert.ax-info-solid .ax-alert-icon{color:rgba(var(--ax-color-info-400))}.ax-dark ax-alert.ax-info-solid .ax-alert-progress{background-color:rgba(var(--ax-color-info-fore))}ax-alert{position:relative;display:flex;gap:1rem;overflow:hidden;border-radius:var(--ax-rounded-border-default);border-width:1px;border-color:rgba(var(--ax-color-border-default));padding:1rem;font-size:.875rem;line-height:1.25rem}ax-alert .ax-alert-inline{display:flex;flex:1 1 0%;align-items:center;justify-content:center}ax-alert .ax-alert-block{display:flex}ax-alert .ax-alert-block .ax-alert-content{display:flex;flex-direction:column;line-height:1.5}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:empty{display:none}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:not(:empty)+ax-content:not(:empty){margin-top:.5rem}ax-alert .ax-alert-block .ax-alert-content ax-footer{margin-top:1rem}ax-alert .ax-alert-icon{display:grid;border-radius:9999px;padding-inline-end:.5rem;font-size:1.125rem;line-height:1.75rem}ax-alert .ax-alert-buttons{padding-inline-start:1rem}ax-alert .ax-alert-title{display:flex;flex:1 1 0%;flex-direction:column}ax-alert .ax-alert-title ax-title{font-size:.875rem;line-height:1.25rem;font-weight:500}ax-alert .ax-alert-progress{position:absolute;bottom:0;inset-inline-start:0px;height:.25rem}@keyframes progressBar{0%{width:100%}to{width:0%}}ax-alert.ax-primary-solid{background-color:rgba(var(--ax-color-primary-100));border-color:rgba(var(--ax-color-primary-500))}ax-alert.ax-primary-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-primary-solid ax-title,ax-alert.ax-primary-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-primary-solid .ax-alert-icon{color:rgba(var(--ax-color-primary-500))}ax-alert.ax-primary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-primary-500))}ax-alert.ax-secondary-solid{background-color:rgba(var(--ax-color-secondary-100));border-color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-secondary-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-secondary-solid ax-title,ax-alert.ax-secondary-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-secondary-solid .ax-alert-icon{color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-secondary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-success-solid{background-color:rgba(var(--ax-color-success-100));border-color:rgba(var(--ax-color-success-500))}ax-alert.ax-success-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-success-solid ax-title,ax-alert.ax-success-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-success-solid .ax-alert-icon{color:rgba(var(--ax-color-success-500))}ax-alert.ax-success-solid .ax-alert-progress{background-color:rgba(var(--ax-color-success-500))}ax-alert.ax-warning-solid{background-color:rgba(var(--ax-color-warning-100));border-color:rgba(var(--ax-color-warning-500))}ax-alert.ax-warning-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-warning-solid ax-title,ax-alert.ax-warning-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-warning-solid .ax-alert-icon{color:rgba(var(--ax-color-warning-500))}ax-alert.ax-warning-solid .ax-alert-progress{background-color:rgba(var(--ax-color-warning-500))}ax-alert.ax-danger-solid{background-color:rgba(var(--ax-color-danger-100));border-color:rgba(var(--ax-color-danger-500))}ax-alert.ax-danger-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-danger-solid ax-title,ax-alert.ax-danger-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-danger-solid .ax-alert-icon{color:rgba(var(--ax-color-danger-500))}ax-alert.ax-danger-solid .ax-alert-progress{background-color:rgba(var(--ax-color-danger-500))}ax-alert.ax-info-solid{background-color:rgba(var(--ax-color-info-100));border-color:rgba(var(--ax-color-info-500))}ax-alert.ax-info-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-info-solid ax-title,ax-alert.ax-info-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-info-solid .ax-alert-icon{color:rgba(var(--ax-color-info-500))}ax-alert.ax-info-solid .ax-alert-progress{background-color:rgba(var(--ax-color-info-500))}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
138
134
  }
139
135
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXAlertComponent, decorators: [{
140
136
  type: Component,
141
- args: [{ selector: 'ax-alert', inputs: ['color'], outputs: ['colorChange'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: AXClosbaleComponent, useExisting: AXAlertComponent }], template: "@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n", styles: [".ax-dark ax-alert.ax-primary-solid{background-color:rgba(var(--ax-color-primary-900),.25);border-color:rgba(var(--ax-color-primary-500))}.ax-dark ax-alert.ax-primary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-alert.ax-secondary-solid{background-color:rgba(var(--ax-color-secondary-900),.25);border-color:rgba(var(--ax-color-secondary-500))}.ax-dark ax-alert.ax-secondary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-alert.ax-success-solid{background-color:rgba(var(--ax-color-success-900),.25);border-color:rgba(var(--ax-color-success-500))}.ax-dark ax-alert.ax-success-solid .ax-alert-progress{background-color:rgba(var(--ax-color-success-fore))}.ax-dark ax-alert.ax-warning-solid{background-color:rgba(var(--ax-color-warning-900),.25);border-color:rgba(var(--ax-color-warning-500))}.ax-dark ax-alert.ax-warning-solid .ax-alert-progress{background-color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-alert.ax-danger-solid{background-color:rgba(var(--ax-color-danger-900),.25);border-color:rgba(var(--ax-color-danger-500))}.ax-dark ax-alert.ax-danger-solid .ax-alert-progress{background-color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-alert.ax-info-solid{background-color:rgba(var(--ax-color-info-900),.25);border-color:rgba(var(--ax-color-info-500))}.ax-dark ax-alert.ax-info-solid .ax-alert-progress{background-color:rgba(var(--ax-color-info-fore))}ax-alert{position:relative;display:flex;gap:1rem;overflow:hidden;border-radius:var(--ax-rounded-border-default);border-width:1px;border-color:rgba(var(--ax-color-border-default));padding:1rem;font-size:.875rem;line-height:1.25rem}ax-alert .ax-alert-inline{display:flex;flex:1 1 0%;align-items:center;justify-content:center}ax-alert .ax-alert-block{display:flex}ax-alert .ax-alert-block .ax-alert-content{display:flex;flex-direction:column;line-height:1.5}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:empty{display:none}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:not(:empty)+ax-content:not(:empty){margin-top:.5rem}ax-alert .ax-alert-block .ax-alert-content ax-footer{margin-top:1rem}ax-alert .ax-alert-icon{display:grid;border-radius:9999px;padding-inline-end:.5rem;font-size:1.125rem;line-height:1.75rem}ax-alert .ax-alert-buttons{padding-inline-start:1rem}ax-alert .ax-alert-title{display:flex;flex:1 1 0%;flex-direction:column}ax-alert .ax-alert-title ax-title{font-size:.875rem;line-height:1.25rem;font-weight:500}ax-alert .ax-alert-progress{position:absolute;bottom:0;inset-inline-start:0px;height:.25rem}@keyframes progressBar{0%{width:100%}to{width:0%}}ax-alert.ax-primary-solid{background-color:rgba(var(--ax-color-primary-100));border-color:rgba(var(--ax-color-primary-500))}ax-alert.ax-primary-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-primary-solid ax-title,ax-alert.ax-primary-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-primary-solid .ax-alert-icon{color:rgba(var(--ax-color-primary-500))}ax-alert.ax-primary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-primary-500))}ax-alert.ax-secondary-solid{background-color:rgba(var(--ax-color-secondary-100));border-color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-secondary-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-secondary-solid ax-title,ax-alert.ax-secondary-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-secondary-solid .ax-alert-icon{color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-secondary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-success-solid{background-color:rgba(var(--ax-color-success-100));border-color:rgba(var(--ax-color-success-500))}ax-alert.ax-success-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-success-solid ax-title,ax-alert.ax-success-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-success-solid .ax-alert-icon{color:rgba(var(--ax-color-success-500))}ax-alert.ax-success-solid .ax-alert-progress{background-color:rgba(var(--ax-color-success-500))}ax-alert.ax-warning-solid{background-color:rgba(var(--ax-color-warning-100));border-color:rgba(var(--ax-color-warning-500))}ax-alert.ax-warning-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-warning-solid ax-title,ax-alert.ax-warning-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-warning-solid .ax-alert-icon{color:rgba(var(--ax-color-warning-500))}ax-alert.ax-warning-solid .ax-alert-progress{background-color:rgba(var(--ax-color-warning-500))}ax-alert.ax-danger-solid{background-color:rgba(var(--ax-color-danger-100));border-color:rgba(var(--ax-color-danger-500))}ax-alert.ax-danger-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-danger-solid ax-title,ax-alert.ax-danger-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-danger-solid .ax-alert-icon{color:rgba(var(--ax-color-danger-500))}ax-alert.ax-danger-solid .ax-alert-progress{background-color:rgba(var(--ax-color-danger-500))}ax-alert.ax-info-solid{background-color:rgba(var(--ax-color-info-100));border-color:rgba(var(--ax-color-info-500))}ax-alert.ax-info-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-info-solid ax-title,ax-alert.ax-info-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-info-solid .ax-alert-icon{color:rgba(var(--ax-color-info-500))}ax-alert.ax-info-solid .ax-alert-progress{background-color:rgba(var(--ax-color-info-500))}\n"] }]
137
+ args: [{ selector: 'ax-alert', inputs: ['color'], outputs: ['colorChange'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: AXClosbaleComponent, useExisting: AXAlertComponent }], template: "@if (showInline()) {\n <div class=\"ax-alert-inline\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <div class=\"ax-alert-buttons\">\n <ng-container [ngTemplateOutlet]=\"buttons\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container>\n </div>\n} @else {\n <div class=\"ax-alert-block\">\n <div class=\"ax-alert-icon ax-icon-solid\">\n <ng-container [ngTemplateOutlet]=\"icon\"></ng-container>\n </div>\n <div class=\"ax-alert-content\">\n <div class=\"ax-alert-title\">\n <ng-container [ngTemplateOutlet]=\"title\"></ng-container>\n </div>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"footer\"></ng-container>\n </div>\n <div><ng-container [ngTemplateOutlet]=\"closeButton\"></ng-container></div>\n </div>\n}\n\n@if (timeOut()) {\n <div class=\"ax-alert-progress\" [style.animation-duration.ms]=\"timeOut()\"></div>\n}\n\n<ng-template #buttons>\n <ng-content select=\"ax-button\"> </ng-content>\n</ng-template>\n<ng-template #closeButton>\n <ng-content select=\"ax-close-button\"> </ng-content>\n</ng-template>\n<ng-template #title>\n <ng-content select=\"ax-title\"> </ng-content>\n</ng-template>\n<ng-template #icon>\n <ng-content select=\"ax-icon\"> </ng-content>\n</ng-template>\n<ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n</ng-template>\n<ng-template #footer>\n <ng-content select=\"ax-footer\"> </ng-content>\n</ng-template>\n", styles: [".ax-dark ax-alert.ax-primary-solid{background-color:rgba(var(--ax-color-primary-900),.25);border-color:rgba(var(--ax-color-primary-400))}.ax-dark ax-alert.ax-primary-solid .ax-alert-icon{color:rgba(var(--ax-color-primary-400))}.ax-dark ax-alert.ax-primary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-alert.ax-secondary-solid{background-color:rgba(var(--ax-color-secondary-900),.25);border-color:rgba(var(--ax-color-secondary-400))}.ax-dark ax-alert.ax-secondary-solid .ax-alert-icon{color:rgba(var(--ax-color-secondary-400))}.ax-dark ax-alert.ax-secondary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-alert.ax-success-solid{background-color:rgba(var(--ax-color-success-900),.25);border-color:rgba(var(--ax-color-success-400))}.ax-dark ax-alert.ax-success-solid .ax-alert-icon{color:rgba(var(--ax-color-success-400))}.ax-dark ax-alert.ax-success-solid .ax-alert-progress{background-color:rgba(var(--ax-color-success-fore))}.ax-dark ax-alert.ax-warning-solid{background-color:rgba(var(--ax-color-warning-900),.25);border-color:rgba(var(--ax-color-warning-400))}.ax-dark ax-alert.ax-warning-solid .ax-alert-icon{color:rgba(var(--ax-color-warning-400))}.ax-dark ax-alert.ax-warning-solid .ax-alert-progress{background-color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-alert.ax-danger-solid{background-color:rgba(var(--ax-color-danger-900),.25);border-color:rgba(var(--ax-color-danger-400))}.ax-dark ax-alert.ax-danger-solid .ax-alert-icon{color:rgba(var(--ax-color-danger-400))}.ax-dark ax-alert.ax-danger-solid .ax-alert-progress{background-color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-alert.ax-info-solid{background-color:rgba(var(--ax-color-info-900),.25);border-color:rgba(var(--ax-color-info-400))}.ax-dark ax-alert.ax-info-solid .ax-alert-icon{color:rgba(var(--ax-color-info-400))}.ax-dark ax-alert.ax-info-solid .ax-alert-progress{background-color:rgba(var(--ax-color-info-fore))}ax-alert{position:relative;display:flex;gap:1rem;overflow:hidden;border-radius:var(--ax-rounded-border-default);border-width:1px;border-color:rgba(var(--ax-color-border-default));padding:1rem;font-size:.875rem;line-height:1.25rem}ax-alert .ax-alert-inline{display:flex;flex:1 1 0%;align-items:center;justify-content:center}ax-alert .ax-alert-block{display:flex}ax-alert .ax-alert-block .ax-alert-content{display:flex;flex-direction:column;line-height:1.5}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:empty{display:none}ax-alert .ax-alert-block .ax-alert-content .ax-alert-title:not(:empty)+ax-content:not(:empty){margin-top:.5rem}ax-alert .ax-alert-block .ax-alert-content ax-footer{margin-top:1rem}ax-alert .ax-alert-icon{display:grid;border-radius:9999px;padding-inline-end:.5rem;font-size:1.125rem;line-height:1.75rem}ax-alert .ax-alert-buttons{padding-inline-start:1rem}ax-alert .ax-alert-title{display:flex;flex:1 1 0%;flex-direction:column}ax-alert .ax-alert-title ax-title{font-size:.875rem;line-height:1.25rem;font-weight:500}ax-alert .ax-alert-progress{position:absolute;bottom:0;inset-inline-start:0px;height:.25rem}@keyframes progressBar{0%{width:100%}to{width:0%}}ax-alert.ax-primary-solid{background-color:rgba(var(--ax-color-primary-100));border-color:rgba(var(--ax-color-primary-500))}ax-alert.ax-primary-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-primary-solid ax-title,ax-alert.ax-primary-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-primary-solid .ax-alert-icon{color:rgba(var(--ax-color-primary-500))}ax-alert.ax-primary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-primary-500))}ax-alert.ax-secondary-solid{background-color:rgba(var(--ax-color-secondary-100));border-color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-secondary-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-secondary-solid ax-title,ax-alert.ax-secondary-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-secondary-solid .ax-alert-icon{color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-secondary-solid .ax-alert-progress{background-color:rgba(var(--ax-color-secondary-500))}ax-alert.ax-success-solid{background-color:rgba(var(--ax-color-success-100));border-color:rgba(var(--ax-color-success-500))}ax-alert.ax-success-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-success-solid ax-title,ax-alert.ax-success-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-success-solid .ax-alert-icon{color:rgba(var(--ax-color-success-500))}ax-alert.ax-success-solid .ax-alert-progress{background-color:rgba(var(--ax-color-success-500))}ax-alert.ax-warning-solid{background-color:rgba(var(--ax-color-warning-100));border-color:rgba(var(--ax-color-warning-500))}ax-alert.ax-warning-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-warning-solid ax-title,ax-alert.ax-warning-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-warning-solid .ax-alert-icon{color:rgba(var(--ax-color-warning-500))}ax-alert.ax-warning-solid .ax-alert-progress{background-color:rgba(var(--ax-color-warning-500))}ax-alert.ax-danger-solid{background-color:rgba(var(--ax-color-danger-100));border-color:rgba(var(--ax-color-danger-500))}ax-alert.ax-danger-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-danger-solid ax-title,ax-alert.ax-danger-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-danger-solid .ax-alert-icon{color:rgba(var(--ax-color-danger-500))}ax-alert.ax-danger-solid .ax-alert-progress{background-color:rgba(var(--ax-color-danger-500))}ax-alert.ax-info-solid{background-color:rgba(var(--ax-color-info-100));border-color:rgba(var(--ax-color-info-500))}ax-alert.ax-info-solid ax-button[class$=blank]{color:rgb(var(--ax-color-text-default))}ax-alert.ax-info-solid ax-title,ax-alert.ax-info-solid ax-content{color:rgb(var(--ax-color-text-default))}ax-alert.ax-info-solid .ax-alert-icon{color:rgba(var(--ax-color-info-500))}ax-alert.ax-info-solid .ax-alert-progress{background-color:rgba(var(--ax-color-info-500))}\n"] }]
142
138
  }], ctorParameters: () => [], propDecorators: { __hostClass: [{
143
139
  type: HostBinding,
144
140
  args: ['class']
145
141
  }] } });
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FsZXJ0L3NyYy9saWIvYWxlcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FsZXJ0L3NyYy9saWIvYWxlcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFXLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFM0YsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWxELE9BQU8sRUFDTCxlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7OztBQUV2Qjs7OztHQUlHO0FBV0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQjtJQThEcEQ7O09BRUc7SUFDSDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBakVWOztXQUVHO1FBQ0gsV0FBTSxHQUFHLFlBQVksQ0FBMkIsU0FBUyxDQUFDLENBQUM7UUFDM0Q7O1dBRUc7UUFDSCxZQUFPLEdBQUcsWUFBWSxDQUE4QixVQUFVLENBQUMsQ0FBQztRQUNoRTs7V0FFRztRQUNILGNBQVMsR0FBRyxZQUFZLENBQThCLFlBQVksQ0FBQyxDQUFDO1FBQ3BFOztXQUVHO1FBQ0gsYUFBUSxHQUFHLFlBQVksQ0FBOEIsV0FBVyxDQUFDLENBQUM7UUFFbEU7O1dBRUc7UUFDTyxlQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJDOzs7O1dBSUc7UUFDSCxhQUFRLEdBQUcsTUFBTSxFQUFXLENBQUM7UUFFN0I7O1dBRUc7UUFDSyxlQUFVLEdBQUcsTUFBTSxDQUFD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SUFBSTtpQkFDaEIsQ0FBQyxDQUFDO2dCQUNILElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbEQsQ0FBQztRQUNILENBQUMsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxXQUFXO1FBQ2IsT0FBTyx1QkFBdUIsSUFBSSxDQUFDLEtBQUssUUFBUSxDQUFDO0lBQ25ELENBQUM7OEdBN0lVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHNiQUZoQixDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLHdkQzlCOUUsZ3NEQW1EQTs7MkZEbkJhLGdCQUFnQjtrQkFWNUIsU0FBUzsrQkFDRSxVQUFVLFVBR1osQ0FBQyxPQUFPLENBQUMsV0FDUixDQUFDLGFBQWEsQ0FBQyxtQkFDUCx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCLENBQUMsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxrQkFBa0IsRUFBRSxDQUFDO3dEQTZJeEUsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENsb3NiYWxlQ29tcG9uZW50LCBBWEV2ZW50LCBNWENvbG9yQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQsIEFYRGVjb3JhdG9ySWNvbkNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IGlzQnJvd3NlciB9IGZyb20gJ0BhY29yZXgvY29yZS9wbGF0Zm9ybSc7XG5cbmltcG9ydCB7XG4gIGFmdGVyTmV4dFJlbmRlcixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29udGVudENoaWxkLFxuICBlZmZlY3QsXG4gIEhvc3RCaW5kaW5nLFxuICBtb2RlbCxcbiAgb3V0cHV0LFxuICBzaWduYWwsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBUaGUgQWxlcnQgY29tcG9uZW50IGlzIHVzZWQgdG8gZGlzcGxheSBub3RpZmljYXRpb25zIG9yIGFsZXJ0cyB0byB1c2Vycy5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1hbGVydCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbGVydC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FsZXJ0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGlucHV0czogWydjb2xvciddLFxuICBvdXRwdXRzOiBbJ2NvbG9yQ2hhbmdlJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYQ2xvc2JhbGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWEFsZXJ0Q29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBBWEFsZXJ0Q29tcG9uZW50IGV4dGVuZHMgTVhDb2xvckNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgYXhJY29uID0gY29udGVudENoaWxkPEFYRGVjb3JhdG9ySWNvbkNvbXBvbmVudD4oJ2F4LWljb24nKTtcbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBheFRpdGxlID0gY29udGVudENoaWxkPEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudD4oJ2F4LXRpdGxlJyk7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgYXhDb250ZW50ID0gY29udGVudENoaWxkPEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudD4oJ2F4LWNvbnRlbnQnKTtcbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBheEZvb3RlciA9IGNvbnRlbnRDaGlsZDxBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQ+KCdheC1mb290ZXInKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBzaG93SW5saW5lID0gc2lnbmFsKGZhbHNlKTtcblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgYWxlcnQgY29tcG9uZW50IGlzIGNsb3NlZC5cbiAgICpcbiAgICogQGV2ZW50XG4gICAqL1xuICBvbkNsb3NlZCA9IG91dHB1dDxBWEV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBjdXN0b21JY29uID0gc2lnbmFsKCcnKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByaXZhdGUgX3RpbWVPdXRSZWY6IG51bWJlcjtcblxuICAvKipcbiAgICogU2V0cyB0aGUgZHVyYXRpb24gKGluIG1pbGxpc2Vjb25kcykgYWZ0ZXIgd2hpY2ggdGhlIGFsZXJ0IHdpbGwgYXV0b21hdGljYWxseSBjbG9zZS5cbiAgICpcbiAgICogQGRlZmF1bHRWYWx1ZSAwXG4gICAqL1xuICB0aW1lT3V0ID0gbW9kZWw8bnVtYmVyPigwKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIC8vVE9ETzogQ2hlY2sgQ29uc29sZSBmb3IgIGVmZmVjdCgpIGNhbiBvbmx5IGJlIHVzZWQgd2l0aGluIGFuIGluamVjdGlvbiBjb250ZXh0IHN1Y2ggYXMgYSBjb25zdHJ1Y3RvciwgYSBmYWN0b3J5IGZ1bmN0aW9uLCBhIGZpZWxkIGluaXRpYWxpemVyLCBvciBhIGZ1bmN0aW9uIHVzZWQgd2l0aCBgcnVuSW5JbmplY3Rpb25Db250ZXh0YFxuICB0aW1lT3V0RWZmZWN0ID0gKCkgPT4ge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy50aW1lT3V0KCkpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVPdXRSZWYpO1xuICAgICAgICB0aGlzLl90aW1lT3V0UmVmID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgfSwgdGhpcy50aW1lT3V0KCkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgICAgdGhpcy5vbk9wdGlvbkNoYW5nZWQuc3Vic2NyaWJlKHRoaXMuX2hhbmRsZU9uT3B0aW9uQ2hhbmdlZC5iaW5kKHRoaXMpKTtcbiAgICAgIHRoaXMuX3NldExheW91dCgpO1xuICAgICAgdGhpcy5jdXN0b21JY29uLnNldCh0aGlzLmF4SWNvbigpPy5pY29uKTtcbiAgICB9KTtcbiAgICB0aGlzLnRpbWVPdXRFZmZlY3QoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBfc2V0TGF5b3V0KCkge1xuICAgIHRoaXMuX3NldEljb24oKTtcbiAgICB0aGlzLnNob3dJbmxpbmUuc2V0KHRoaXMuYXhDb250ZW50KCkgPT0gbnVsbCAmJiB0aGlzLmF4Rm9vdGVyKCkgPT0gbnVsbCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBfaGFuZGxlT25PcHRpb25DaGFuZ2VkKCkge1xuICAgIHRoaXMuX3NldEljb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBfc2V0SWNvbigpIHtcbiAgICBpZiAoIXRoaXMuYXhJY29uKCkgfHwgdGhpcy5heEljb24oKS5nZXRIb3N0RWxlbWVudCgpLmZpcnN0RWxlbWVudENoaWxkKSByZXR1cm47XG5cbiAgICBzd2l0Y2ggKHRoaXMuY29sb3IpIHtcbiAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxuICAgICAgICB0aGlzLmF4SWNvbigpLmljb24gPSAnYXgtaWNvbiBheC1pY29uLWNoZWNrLWNpcmNsZSc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZGFuZ2VyJzpcbiAgICAgICAgdGhpcy5heEljb24oKS5pY29uID0gJ2F4LWljb24gYXgtaWNvbi1lcnJvcic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnd2FybmluZyc6XG4gICAgICAgIHRoaXMuYXhJY29uKCkuaWNvbiA9ICdheC1pY29uIGF4LWljb24td2FybmluZyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnaW5mbyc6XG4gICAgICAgIHRoaXMuYXhJY29uKCkuaWNvbiA9ICdheC1pY29uIGF4LWljb24taW5mbyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5heEljb24oKS5pY29uID0gdGhpcy5jdXN0b21JY29uKCkgfHwgJ2F4LWljb24gYXgtaWNvbi1jaGVjay1jaXJjbGUnO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyB0aGUgYWxlcnQgZnJvbSB0aGUgY29udGFpbmVyIGFmdGVyIGEgdHJhbnNpdGlvbiBlZmZlY3QuXG4gICAqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBjbG9zZSgpOiB2b2lkIHtcbiAgICBjb25zdCBob3N0ID0gdGhpcy5nZXRIb3N0RWxlbWVudCgpO1xuICAgIGNvbnN0IGZ1bmMgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNCcm93c2VyKCkpIHtcbiAgICAgICAgaG9zdC5wYXJlbnRFbGVtZW50Py5yZW1vdmVDaGlsZChob3N0KTtcbiAgICAgICAgdGhpcy5vbkNsb3NlZC5lbWl0KHtcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgIH0pO1xuICAgICAgICBob3N0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RyYW5zaXRpb25lbmQnLCBmdW5jKTtcbiAgICAgIH1cbiAgICB9O1xuICAgIGhvc3QuYWRkRXZlbnRMaXN0ZW5lcigndHJhbnNpdGlvbmVuZCcsIGZ1bmMpO1xuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IF9faG9zdENsYXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBheC1hbGVydCBheC1ub25lIGF4LSR7dGhpcy5jb2xvcn0tc29saWRgO1xuICB9XG59XG4iLCJAaWYgKHNob3dJbmxpbmUoKSkge1xuICA8ZGl2IGNsYXNzPVwiYXgtYWxlcnQtaW5saW5lXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWljb24gYXgtaWNvbi1zb2xpZFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LXRpdGxlXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRpdGxlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWJ1dHRvbnNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2xvc2VCdXR0b25cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG59IEBlbHNlIHtcbiAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWJsb2NrXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWljb24gYXgtaWNvbi1zb2xpZFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWNvbnRlbnRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1hbGVydC10aXRsZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRpdGxlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2PjxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2xvc2VCdXR0b25cIj48L25nLWNvbnRhaW5lcj48L2Rpdj5cbiAgPC9kaXY+XG59XG5cbkBpZiAodGltZU91dCgpKSB7XG4gIDxkaXYgY2xhc3M9XCJheC1hbGVydC1wcm9ncmVzc1wiIFtzdHlsZS5hbmltYXRpb24tZHVyYXRpb24ubXNdPVwidGltZU91dCgpXCI+PC9kaXY+XG59XG5cbjxuZy10ZW1wbGF0ZSAjYnV0dG9ucz5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtYnV0dG9uXCI+IDwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2Nsb3NlQnV0dG9uPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1jbG9zZS1idXR0b25cIj4gPC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjdGl0bGU+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXRpdGxlXCI+IDwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2ljb24+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LWljb25cIj4gPC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtY29udGVudFwiPiA8L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlICNmb290ZXI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LWZvb3RlclwiPiA8L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FsZXJ0L3NyYy9saWIvYWxlcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FsZXJ0L3NyYy9saWIvYWxlcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFXLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFM0YsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWxELE9BQU8sRUFDTCxlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7OztBQUV2Qjs7OztHQUlHO0FBV0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQjtJQThEcEQ7O09BRUc7SUFDSDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBakVWOztXQUVHO1FBQ0gsV0FBTSxHQUFHLFlBQVksQ0FBMkIsU0FBUyxDQUFDLENBQUM7UUFDM0Q7O1dBRUc7UUFDSCxZQUFPLEdBQUcsWUFBWSxDQUE4QixVQUFVLENBQUMsQ0FBQztRQUNoRTs7V0FFRztRQUNILGNBQVMsR0FBRyxZQUFZLENBQThCLFlBQVksQ0FBQyxDQUFDO1FBQ3BFOztXQUVHO1FBQ0gsYUFBUSxHQUFHLFlBQVksQ0FBOEIsV0FBVyxDQUFDLENBQUM7UUFFbEU7O1dBRUc7UUFDTyxlQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJDOzs7O1dBSUc7UUFDSCxhQUFRLEdBQUcsTUFBTSxFQUFXLENBQUM7UUFFN0I7O1dBRUc7UUFDSyxlQUFVLEdBQUcsTUFBTSxDQUFD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Q0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxXQUFXO1FBQ2IsT0FBTyx1QkFBdUIsSUFBSSxDQUFDLEtBQUssUUFBUSxDQUFDO0lBQ25ELENBQUM7OEdBeklVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHNiQUZoQixDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLHdkQzlCOUUsZ3NEQW1EQTs7MkZEbkJhLGdCQUFnQjtrQkFWNUIsU0FBUzsrQkFDRSxVQUFVLFVBR1osQ0FBQyxPQUFPLENBQUMsV0FDUixDQUFDLGFBQWEsQ0FBQyxtQkFDUCx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCLENBQUMsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxrQkFBa0IsRUFBRSxDQUFDO3dEQXlJeEUsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENsb3NiYWxlQ29tcG9uZW50LCBBWEV2ZW50LCBNWENvbG9yQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQsIEFYRGVjb3JhdG9ySWNvbkNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IGlzQnJvd3NlciB9IGZyb20gJ0BhY29yZXgvY29yZS9wbGF0Zm9ybSc7XG5cbmltcG9ydCB7XG4gIGFmdGVyTmV4dFJlbmRlcixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29udGVudENoaWxkLFxuICBlZmZlY3QsXG4gIEhvc3RCaW5kaW5nLFxuICBtb2RlbCxcbiAgb3V0cHV0LFxuICBzaWduYWwsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBUaGUgQWxlcnQgY29tcG9uZW50IGlzIHVzZWQgdG8gZGlzcGxheSBub3RpZmljYXRpb25zIG9yIGFsZXJ0cyB0byB1c2Vycy5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1hbGVydCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbGVydC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FsZXJ0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGlucHV0czogWydjb2xvciddLFxuICBvdXRwdXRzOiBbJ2NvbG9yQ2hhbmdlJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYQ2xvc2JhbGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWEFsZXJ0Q29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBBWEFsZXJ0Q29tcG9uZW50IGV4dGVuZHMgTVhDb2xvckNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgYXhJY29uID0gY29udGVudENoaWxkPEFYRGVjb3JhdG9ySWNvbkNvbXBvbmVudD4oJ2F4LWljb24nKTtcbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBheFRpdGxlID0gY29udGVudENoaWxkPEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudD4oJ2F4LXRpdGxlJyk7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgYXhDb250ZW50ID0gY29udGVudENoaWxkPEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudD4oJ2F4LWNvbnRlbnQnKTtcbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBheEZvb3RlciA9IGNvbnRlbnRDaGlsZDxBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQ+KCdheC1mb290ZXInKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBzaG93SW5saW5lID0gc2lnbmFsKGZhbHNlKTtcblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgYWxlcnQgY29tcG9uZW50IGlzIGNsb3NlZC5cbiAgICpcbiAgICogQGV2ZW50XG4gICAqL1xuICBvbkNsb3NlZCA9IG91dHB1dDxBWEV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBjdXN0b21JY29uID0gc2lnbmFsKCcnKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByaXZhdGUgX3RpbWVPdXRSZWY6IG51bWJlcjtcblxuICAvKipcbiAgICogU2V0cyB0aGUgZHVyYXRpb24gKGluIG1pbGxpc2Vjb25kcykgYWZ0ZXIgd2hpY2ggdGhlIGFsZXJ0IHdpbGwgYXV0b21hdGljYWxseSBjbG9zZS5cbiAgICpcbiAgICogQGRlZmF1bHRWYWx1ZSAwXG4gICAqL1xuICB0aW1lT3V0ID0gbW9kZWw8bnVtYmVyPigwKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIC8vVE9ETzogQ2hlY2sgQ29uc29sZSBmb3IgIGVmZmVjdCgpIGNhbiBvbmx5IGJlIHVzZWQgd2l0aGluIGFuIGluamVjdGlvbiBjb250ZXh0IHN1Y2ggYXMgYSBjb25zdHJ1Y3RvciwgYSBmYWN0b3J5IGZ1bmN0aW9uLCBhIGZpZWxkIGluaXRpYWxpemVyLCBvciBhIGZ1bmN0aW9uIHVzZWQgd2l0aCBgcnVuSW5JbmplY3Rpb25Db250ZXh0YFxuICB0aW1lT3V0RWZmZWN0ID0gKCkgPT4ge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy50aW1lT3V0KCkpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVPdXRSZWYpO1xuICAgICAgICB0aGlzLl90aW1lT3V0UmVmID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgfSwgdGhpcy50aW1lT3V0KCkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgICAgdGhpcy5vbk9wdGlvbkNoYW5nZWQuc3Vic2NyaWJlKHRoaXMuX2hhbmRsZU9uT3B0aW9uQ2hhbmdlZC5iaW5kKHRoaXMpKTtcbiAgICAgIHRoaXMuX3NldExheW91dCgpO1xuICAgICAgdGhpcy5jdXN0b21JY29uLnNldCh0aGlzLmF4SWNvbigpPy5pY29uKTtcbiAgICB9KTtcbiAgICB0aGlzLnRpbWVPdXRFZmZlY3QoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBfc2V0TGF5b3V0KCkge1xuICAgIHRoaXMuX3NldEljb24oKTtcbiAgICB0aGlzLnNob3dJbmxpbmUuc2V0KHRoaXMuYXhDb250ZW50KCkgPT0gbnVsbCAmJiB0aGlzLmF4Rm9vdGVyKCkgPT0gbnVsbCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBfaGFuZGxlT25PcHRpb25DaGFuZ2VkKCkge1xuICAgIHRoaXMuX3NldEljb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBfc2V0SWNvbigpIHtcbiAgICBpZiAoIXRoaXMuYXhJY29uKCkgfHwgdGhpcy5heEljb24oKS5nZXRIb3N0RWxlbWVudCgpLmZpcnN0RWxlbWVudENoaWxkKSByZXR1cm47XG5cbiAgICBzd2l0Y2ggKHRoaXMuY29sb3IpIHtcbiAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxuICAgICAgICB0aGlzLmF4SWNvbigpLmljb24gPSAnYXgtaWNvbiBheC1pY29uLWNoZWNrLWNpcmNsZSc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZGFuZ2VyJzpcbiAgICAgICAgdGhpcy5heEljb24oKS5pY29uID0gJ2F4LWljb24gYXgtaWNvbi1lcnJvcic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnd2FybmluZyc6XG4gICAgICAgIHRoaXMuYXhJY29uKCkuaWNvbiA9ICdheC1pY29uIGF4LWljb24td2FybmluZyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnaW5mbyc6XG4gICAgICAgIHRoaXMuYXhJY29uKCkuaWNvbiA9ICdheC1pY29uIGF4LWljb24taW5mbyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5heEljb24oKS5pY29uID0gdGhpcy5jdXN0b21JY29uKCkgfHwgJ2F4LWljb24gYXgtaWNvbi1jaGVjay1jaXJjbGUnO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyB0aGUgYWxlcnQgZnJvbSB0aGUgY29udGFpbmVyIGFmdGVyIGEgdHJhbnNpdGlvbiBlZmZlY3QuXG4gICAqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAoaXNCcm93c2VyKCkpIHtcbiAgICAgIGNvbnN0IGhvc3QgPSB0aGlzLmdldEhvc3RFbGVtZW50KCk7XG4gICAgICBob3N0LnBhcmVudEVsZW1lbnQ/LnJlbW92ZUNoaWxkKGhvc3QpO1xuICAgICAgdGhpcy5vbkNsb3NlZC5lbWl0KHtcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IF9faG9zdENsYXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBheC1hbGVydCBheC1ub25lIGF4LSR7dGhpcy5jb2xvcn0tc29saWRgO1xuICB9XG59XG4iLCJAaWYgKHNob3dJbmxpbmUoKSkge1xuICA8ZGl2IGNsYXNzPVwiYXgtYWxlcnQtaW5saW5lXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWljb24gYXgtaWNvbi1zb2xpZFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LXRpdGxlXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRpdGxlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWJ1dHRvbnNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2xvc2VCdXR0b25cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG59IEBlbHNlIHtcbiAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWJsb2NrXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWljb24gYXgtaWNvbi1zb2xpZFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWNvbnRlbnRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1hbGVydC10aXRsZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRpdGxlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2PjxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2xvc2VCdXR0b25cIj48L25nLWNvbnRhaW5lcj48L2Rpdj5cbiAgPC9kaXY+XG59XG5cbkBpZiAodGltZU91dCgpKSB7XG4gIDxkaXYgY2xhc3M9XCJheC1hbGVydC1wcm9ncmVzc1wiIFtzdHlsZS5hbmltYXRpb24tZHVyYXRpb24ubXNdPVwidGltZU91dCgpXCI+PC9kaXY+XG59XG5cbjxuZy10ZW1wbGF0ZSAjYnV0dG9ucz5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtYnV0dG9uXCI+IDwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2Nsb3NlQnV0dG9uPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1jbG9zZS1idXR0b25cIj4gPC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjdGl0bGU+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXRpdGxlXCI+IDwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2ljb24+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LWljb25cIj4gPC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtY29udGVudFwiPiA8L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlICNmb290ZXI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LWZvb3RlclwiPiA8L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -39,11 +39,11 @@ export class AXAvatarComponent extends MXColorComponent {
39
39
  return `width: ${this.size()}px; height: ${this.size()}px`;
40
40
  }
41
41
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXAvatarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
42
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXAvatarComponent, selector: "ax-avatar", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { size: "sizeChange" }, host: { properties: { "class": "this.__hostClass", "style": "this.__hostStyle" } }, queries: [{ propertyName: "children", predicate: ["ax-image, ax-icon, ax-text"], isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-solid\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: rgba(var(--ax-color-white)); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: rgba(var(--ax-color-white))\" />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:-.25rem;overflow:hidden;border-width:2px;border-color:rgba(var(--ax-color-surface))}ax-avatar{position:relative;display:flex;justify-content:center}ax-avatar.ax-shape-sharp{border-radius:0}ax-avatar.ax-shape-soft{border-radius:var(--ax-rounded-border-default)}ax-avatar.ax-shape-rounded{border-radius:9999px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:1.5rem;line-height:2rem}ax-avatar ax-icon,ax-avatar ax-text{display:flex;min-height:100%;min-width:100%;align-items:center;justify-content:center}ax-avatar ax-badge{position:absolute}ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-solid ax-text,ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-solid ax-text,ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-solid ax-text,ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-500))}ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-solid ax-text,ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-solid ax-text,ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-solid ax-text,ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-500))}ax-avatar.ax-ghost-solid ax-text,ax-avatar.ax-ghost-solid ax-icon{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint))}ax-avatar.ax-ghost-solid ax-icon svg{fill:rgba(var(--ax-color-neutral-200))}.ax-dark ax-avatar.ax-primary-solid ax-text,.ax-dark ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-200));color:rgba(var(--ax-color-primary-fore-tint))}.ax-dark ax-avatar.ax-secondary-solid ax-text,.ax-dark ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-200));color:rgba(var(--ax-color-secondary-fore-tint))}.ax-dark ax-avatar.ax-success-solid ax-text,.ax-dark ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-200));color:rgba(var(--ax-color-success-fore-tint))}.ax-dark ax-avatar.ax-warning-solid ax-text,.ax-dark ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-200));color:rgba(var(--ax-color-warning-fore-tint))}.ax-dark ax-avatar.ax-danger-solid ax-text,.ax-dark ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-200));color:rgba(var(--ax-color-danger-fore-tint))}.ax-dark ax-avatar.ax-info-solid ax-text,.ax-dark ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-200));color:rgba(var(--ax-color-info-fore-tint))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXAvatarComponent, selector: "ax-avatar", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { size: "sizeChange" }, host: { properties: { "class": "this.__hostClass", "style": "this.__hostStyle" } }, queries: [{ propertyName: "children", predicate: ["ax-image, ax-icon, ax-text"], isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-solid\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: rgba(var(--ax-color-white)); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: rgba(var(--ax-color-white))\" />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:-.25rem;overflow:hidden;border-width:2px;border-color:rgba(var(--ax-color-surface))}ax-avatar{position:relative;display:flex;justify-content:center}ax-avatar.ax-shape-sharp{border-radius:0}ax-avatar.ax-shape-soft{border-radius:var(--ax-rounded-border-default)}ax-avatar.ax-shape-rounded{border-radius:9999px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:1.5rem;line-height:2rem}ax-avatar ax-icon,ax-avatar ax-text{display:flex;min-height:100%;min-width:100%;align-items:center;justify-content:center}ax-avatar ax-badge{position:absolute}ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-400))}ax-avatar.ax-primary-solid ax-text,ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-400))}ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-secondary-solid ax-text,ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-400))}ax-avatar.ax-success-solid ax-text,ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-400))}ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-400))}ax-avatar.ax-warning-solid ax-text,ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-400))}ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-400))}ax-avatar.ax-danger-solid ax-text,ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-400))}ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-400))}ax-avatar.ax-info-solid ax-text,ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-400))}ax-avatar.ax-ghost-solid ax-text,ax-avatar.ax-ghost-solid ax-icon{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint))}ax-avatar.ax-ghost-solid ax-icon svg{fill:rgba(var(--ax-color-neutral-200))}.ax-dark ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-700))}.ax-dark ax-avatar.ax-primary-solid ax-text,.ax-dark ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-700));color:rgba(var(--ax-color-primary-fore-tint))}.ax-dark ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-700))}.ax-dark ax-avatar.ax-secondary-solid ax-text,.ax-dark ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-700));color:rgba(var(--ax-color-secondary-fore-tint))}.ax-dark ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-700))}.ax-dark ax-avatar.ax-success-solid ax-text,.ax-dark ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-700));color:rgba(var(--ax-color-success-fore-tint))}.ax-dark ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-700))}.ax-dark ax-avatar.ax-warning-solid ax-text,.ax-dark ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-700));color:rgba(var(--ax-color-warning-fore-tint))}.ax-dark ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-700))}.ax-dark ax-avatar.ax-danger-solid ax-text,.ax-dark ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-fore-tint))}.ax-dark ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-700))}.ax-dark ax-avatar.ax-info-solid ax-text,.ax-dark ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-700));color:rgba(var(--ax-color-info-fore-tint))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
43
43
  }
44
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXAvatarComponent, decorators: [{
45
45
  type: Component,
46
- args: [{ selector: 'ax-avatar', inputs: ['color'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-solid\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: rgba(var(--ax-color-white)); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: rgba(var(--ax-color-white))\" />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:-.25rem;overflow:hidden;border-width:2px;border-color:rgba(var(--ax-color-surface))}ax-avatar{position:relative;display:flex;justify-content:center}ax-avatar.ax-shape-sharp{border-radius:0}ax-avatar.ax-shape-soft{border-radius:var(--ax-rounded-border-default)}ax-avatar.ax-shape-rounded{border-radius:9999px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:1.5rem;line-height:2rem}ax-avatar ax-icon,ax-avatar ax-text{display:flex;min-height:100%;min-width:100%;align-items:center;justify-content:center}ax-avatar ax-badge{position:absolute}ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-500))}ax-avatar.ax-primary-solid ax-text,ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-500))}ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-secondary-solid ax-text,ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-500))}ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-500))}ax-avatar.ax-success-solid ax-text,ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-500))}ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-500))}ax-avatar.ax-warning-solid ax-text,ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-500))}ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-500))}ax-avatar.ax-danger-solid ax-text,ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-500))}ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-500))}ax-avatar.ax-info-solid ax-text,ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-500))}ax-avatar.ax-ghost-solid ax-text,ax-avatar.ax-ghost-solid ax-icon{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint))}ax-avatar.ax-ghost-solid ax-icon svg{fill:rgba(var(--ax-color-neutral-200))}.ax-dark ax-avatar.ax-primary-solid ax-text,.ax-dark ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-200));color:rgba(var(--ax-color-primary-fore-tint))}.ax-dark ax-avatar.ax-secondary-solid ax-text,.ax-dark ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-200));color:rgba(var(--ax-color-secondary-fore-tint))}.ax-dark ax-avatar.ax-success-solid ax-text,.ax-dark ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-200));color:rgba(var(--ax-color-success-fore-tint))}.ax-dark ax-avatar.ax-warning-solid ax-text,.ax-dark ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-200));color:rgba(var(--ax-color-warning-fore-tint))}.ax-dark ax-avatar.ax-danger-solid ax-text,.ax-dark ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-200));color:rgba(var(--ax-color-danger-fore-tint))}.ax-dark ax-avatar.ax-info-solid ax-text,.ax-dark ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-200));color:rgba(var(--ax-color-info-fore-tint))}\n"] }]
46
+ args: [{ selector: 'ax-avatar', inputs: ['color'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content select=\"ax-text, ax-image, ax-icon\"></ng-content>\n\n@if (!children()?.length) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"ax-solid\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 512 512\">\n <g style=\"isolation: isolate\">\n <g id=\"Layer_2\" data-name=\"Layer 2\">\n <g id=\"Layer_1-2\" data-name=\"Layer 1\">\n <rect width=\"512\" height=\"512\" />\n <path\n d=\"M419.16,511.94s-2.85-154-142.28-176.19a139.93,139.93,0,0,0-22-1.67h0a55.8,55.8,0,0,0-5.93.29C99.25,350.35,96.26,511.94,96.26,511.94\"\n style=\"fill: rgba(var(--ax-color-white)); opacity: 0.7\"\n />\n <path\n d=\"M256,355.18c-17.29,0-32.22-4.63-46.38-12.41-3.86,1.31-8.15,2.93-11.75,4.46A96.48,96.48,0,0,0,256,366.62a100.29,100.29,0,0,0,60.07-20c-3.6-1.49-6.41-2.55-10.27-3.83C291.48,350.79,273.58,355.18,256,355.18Z\"\n style=\"opacity: 0.05\"\n />\n <circle cx=\"257.71\" cy=\"255.94\" r=\"99.24\" style=\"fill: rgba(var(--ax-color-white))\" />\n </g>\n </g>\n </g>\n </svg>\n}\n<ng-content select=\"ax-badge\"></ng-content>\n", styles: ["ax-avatar-group{display:flex}ax-avatar-group ax-avatar{margin:-.25rem;overflow:hidden;border-width:2px;border-color:rgba(var(--ax-color-surface))}ax-avatar{position:relative;display:flex;justify-content:center}ax-avatar.ax-shape-sharp{border-radius:0}ax-avatar.ax-shape-soft{border-radius:var(--ax-rounded-border-default)}ax-avatar.ax-shape-rounded{border-radius:9999px}ax-avatar *{border-radius:inherit}ax-avatar ax-text{font-size:1.5rem;line-height:2rem}ax-avatar ax-icon,ax-avatar ax-text{display:flex;min-height:100%;min-width:100%;align-items:center;justify-content:center}ax-avatar ax-badge{position:absolute}ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-400))}ax-avatar.ax-primary-solid ax-text,ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-400))}ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-secondary-solid ax-text,ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-100));color:rgba(var(--ax-color-secondary-400))}ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-400))}ax-avatar.ax-success-solid ax-text,ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-100));color:rgba(var(--ax-color-success-400))}ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-400))}ax-avatar.ax-warning-solid ax-text,ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-100));color:rgba(var(--ax-color-warning-400))}ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-400))}ax-avatar.ax-danger-solid ax-text,ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-400))}ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-400))}ax-avatar.ax-info-solid ax-text,ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-100));color:rgba(var(--ax-color-info-400))}ax-avatar.ax-ghost-solid ax-text,ax-avatar.ax-ghost-solid ax-icon{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint))}ax-avatar.ax-ghost-solid ax-icon svg{fill:rgba(var(--ax-color-neutral-200))}.ax-dark ax-avatar.ax-primary-solid .ax-solid{fill:rgba(var(--ax-color-primary-700))}.ax-dark ax-avatar.ax-primary-solid ax-text,.ax-dark ax-avatar.ax-primary-solid ax-icon{background-color:rgba(var(--ax-color-primary-700));color:rgba(var(--ax-color-primary-fore-tint))}.ax-dark ax-avatar.ax-secondary-solid .ax-solid{fill:rgba(var(--ax-color-secondary-700))}.ax-dark ax-avatar.ax-secondary-solid ax-text,.ax-dark ax-avatar.ax-secondary-solid ax-icon{background-color:rgba(var(--ax-color-secondary-700));color:rgba(var(--ax-color-secondary-fore-tint))}.ax-dark ax-avatar.ax-success-solid .ax-solid{fill:rgba(var(--ax-color-success-700))}.ax-dark ax-avatar.ax-success-solid ax-text,.ax-dark ax-avatar.ax-success-solid ax-icon{background-color:rgba(var(--ax-color-success-700));color:rgba(var(--ax-color-success-fore-tint))}.ax-dark ax-avatar.ax-warning-solid .ax-solid{fill:rgba(var(--ax-color-warning-700))}.ax-dark ax-avatar.ax-warning-solid ax-text,.ax-dark ax-avatar.ax-warning-solid ax-icon{background-color:rgba(var(--ax-color-warning-700));color:rgba(var(--ax-color-warning-fore-tint))}.ax-dark ax-avatar.ax-danger-solid .ax-solid{fill:rgba(var(--ax-color-danger-700))}.ax-dark ax-avatar.ax-danger-solid ax-text,.ax-dark ax-avatar.ax-danger-solid ax-icon{background-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-fore-tint))}.ax-dark ax-avatar.ax-info-solid .ax-solid{fill:rgba(var(--ax-color-info-700))}.ax-dark ax-avatar.ax-info-solid ax-text,.ax-dark ax-avatar.ax-info-solid ax-icon{background-color:rgba(var(--ax-color-info-700));color:rgba(var(--ax-color-info-fore-tint))}\n"] }]
47
47
  }], propDecorators: { __hostClass: [{
48
48
  type: HostBinding,
49
49
  args: ['class']
@@ -218,6 +218,7 @@ export class MXSelectionValueComponent extends MXValueComponent {
218
218
  clearSelectionCache() {
219
219
  this.dataService.cacheList = {};
220
220
  this.dataService.selectedItems = [];
221
+ this.cdr.markForCheck();
221
222
  }
222
223
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: MXSelectionValueComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
223
224
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: MXSelectionValueComponent }); }
@@ -225,4 +226,4 @@ export class MXSelectionValueComponent extends MXValueComponent {
225
226
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: MXSelectionValueComponent, decorators: [{
226
227
  type: Injectable
227
228
  }] });
228
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWJhc2UuY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0aW9uLWJhc2UuY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBRzNELE1BQU0sT0FBTyx3QkFBd0I7SUFEckM7UUFFUyxrQkFBYSxHQUFjLEVBQUUsQ0FBQztRQUM5QixjQUFTLEdBQXdDLEVBQUUsQ0FBQztLQUM1RDs4R0FIWSx3QkFBd0I7a0hBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEcEMsVUFBVTs7QUFNWCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLGNBQWMsQ0FDdkQseUJBQXlCLENBQzFCLENBQUM7QUFHRixNQUFNLE9BQWdCLHlCQUF1QyxTQUFRLGdCQUF5QjtJQUQ5Rjs7UUFFVSxrQkFBYSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN4QyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBSTlDLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBVW5CLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBV25CLGVBQVUsR0FBRyxNQUFNLENBQUM7UUFXcEIsbUJBQWMsR0FBRyxVQUFVLENBQUM7UUFXNUIsY0FBUyxHQUFHLEtBQUssQ0FBQztLQTJLM0I7SUFyTkMsSUFBVyxVQUFVO1FBQ25CLE9B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LENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRVMsbUJBQW1CO1FBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7SUFDdEMsQ0FBQzs4R0EzTm1CLHlCQUF5QjtrSEFBekIseUJBQXlCOzsyRkFBekIseUJBQXlCO2tCQUQ5QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhGb3JtYXRTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTVhWYWx1ZUNvbXBvbmVudCB9IGZyb20gJy4vdmFsdWUtY29tcG9uZW50LmNsYXNzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1YU2VsZWN0aW9uQnJpZGdlU2VydmljZSB7XG4gIHB1YmxpYyBzZWxlY3RlZEl0ZW1zOiB1bmtub3duW10gPSBbXTtcbiAgcHVibGljIGNhY2hlTGlzdDogeyBba2V5OiBzdHJpbmcgfCBudW1iZXJdOiB1bmtub3duIH0gPSB7fTtcbn1cblxuZXhwb3J0IGNvbnN0IEFYX1NFTEVDVElPTl9EQVRBX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPE1YU2VsZWN0aW9uQnJpZGdlU2VydmljZT4oXG4gICdBWF9TRUxFQ1RJT05fREFUQV9UT0tFTicsXG4pO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTVhTZWxlY3Rpb25WYWx1ZUNvbXBvbmVudDxUID0gdW5rbm93bj4gZXh0ZW5kcyBNWFZhbHVlQ29tcG9uZW50PHVua25vd24+IHtcbiAgcHJpdmF0ZSBmb3JtYXRTZXJ2aWNlID0gaW5qZWN0KEFYRm9ybWF0U2VydmljZSk7XG4gIHByaXZhdGUgZGF0YVNlcnZpY2UgPSBpbmplY3QoQVhfU0VMRUNUSU9OX0RBVEFfVE9LRU4pO1xuXG4gIGRpc2FibGVkQ2FsbGJhY2s6IChlOiB7IGl0ZW06IFQ7IGluZGV4OiBudW1iZXIgfSkgPT4gYm9vbGVhbjtcblxuICBwcml2YXRlIF92YWx1ZUZpZWxkID0gJ2lkJztcbiAgcHVibGljIGdldCB2YWx1ZUZpZWxkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlRmllbGQ7XG4gIH1cbiAgcHVibGljIHNldCB2YWx1ZUZpZWxkKHY6IHN0cmluZykge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICd2YWx1ZUZpZWxkJyxcbiAgICAgIHZhbHVlOiB2LFxuICAgIH0pO1xuICB9XG4gIHByaXZhdGUgX3RleHRUZW1wbGF0ZSA9ICcnO1xuICBwdWJsaWMgZ2V0IHRleHRUZW1wbGF0ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl90ZXh0VGVtcGxhdGU7XG4gIH1cbiAgcHVibGljIHNldCB0ZXh0VGVtcGxhdGUodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RleHRUZW1wbGF0ZScsXG4gICAgICB2YWx1ZTogdixcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3RleHRGaWVsZCA9ICd0ZXh0JztcbiAgcHVibGljIGdldCB0ZXh0RmllbGQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdGV4dEZpZWxkO1xuICB9XG4gIHB1YmxpYyBzZXQgdGV4dEZpZWxkKHY6IHN0cmluZykge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICd0ZXh0RmllbGQnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9kaXNhYmxlZEZpZWxkID0gJ2Rpc2FibGVkJztcbiAgcHVibGljIGdldCBkaXNhYmxlZEZpZWxkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkRmllbGQ7XG4gIH1cbiAgcHVibGljIHNldCBkaXNhYmxlZEZpZWxkKHY6IHN0cmluZykge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdkaXNhYmxlZEZpZWxkJyxcbiAgICAgIHZhbHVlOiB2LFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfbXVsdGlwbGUgPSBmYWxzZTtcbiAgcHVibGljIGdldCBtdWx0aXBsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbXVsdGlwbGU7XG4gIH1cbiAgcHVibGljIHNldCBtdWx0aXBsZSh2OiBib29sZWFuKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ211bHRpcGxlJyxcbiAgICAgIHZhbHVlOiB2LFxuICAgICAgYWZ0ZXJDYWxsYmFjazogKCkgPT4ge1xuICAgICAgICB0aGlzLnJlc2V0KGZhbHNlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBnZXQgc2VsZWN0ZWRJdGVtcygpOiB1bmtub3duW10ge1xuICAgIHJldHVybiB0aGlzLmRhdGFTZXJ2aWNlLnNlbGVjdGVkSXRlbXMgfHwgW107XG4gIH1cblxuICBvdmVycmlkZSBpbnRlcm5hbFNldFZhbHVlKHZhbHVlOiB1bmtub3duKSB7XG4gICAgY29uc3QgaXNBcnJheSA9IEFycmF5LmlzQXJyYXkodmFsdWUpO1xuICAgIGlmICh2YWx1ZSA9PSBudWxsIHx8IChpc0FycmF5ICYmIHZhbHVlLmxlbmd0aCA9PSAwKSkge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlwbGUgPyBbXSA6IG51bGw7XG4gICAgfVxuICAgIGNvbnN0IG5vcm1hbGl6ZWRJdGVtcyA9IGlzQXJyYXlcbiAgICAgID8gdGhpcy5ub3JtYWxpemVJdGVtc0xpc3QodmFsdWUsIHRydWUpXG4gICAgICA6IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KFt2YWx1ZV0sIHRydWUpO1xuXG4gICAgaWYgKG5vcm1hbGl6ZWRJdGVtcy5sZW5ndGggPT0gMCkge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlwbGUgPyBbXSA6IG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMubXVsdGlwbGVcbiAgICAgID8gbm9ybWFsaXplZEl0ZW1zLm1hcCgoYykgPT4gY1t0aGlzLnZhbHVlRmllbGRdKVxuICAgICAgOiBub3JtYWxpemVkSXRlbXNbMF1bdGhpcy52YWx1ZUZpZWxkXTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgb3ZlcnJpZGUgZW1pdE9uVmFsdWVDaGFuZ2VkRXZlbnQob2xkVmFsdWU/OiB1bmtub3duLCBuZXdWYWx1ZT86IHVua25vd24pIHtcbiAgICB0aGlzLl9ub3JtYWxpemVTZWxlY3RlZEl0ZW1zKCk7XG4gICAgc3VwZXIuZW1pdE9uVmFsdWVDaGFuZ2VkRXZlbnQob2xkVmFsdWUsIG5ld1ZhbHVlKTtcbiAgfVxuXG4gIGFic3RyYWN0IGdldEl0ZW1CeUtleShrZXk6IHVua25vd24pOiB1bmtub3duIHwgUHJvbWlzZTx1bmtub3duPjtcblxuICBwcm90ZWN0ZWQgbm9ybWFsaXplSXRlbXNMaXN0KGl0ZW1zOiB1bmtub3duW10sIGZpbmRCeWtleSA9IGZhbHNlKTogdW5rbm93bltdIHtcbiAgICBpZiAoaXRlbXMgPT0gbnVsbCkgcmV0dXJuIFtdO1xuICAgIHJldHVybiBpdGVtcy5maWx0ZXIoKGMpID0+IGMgIT0gbnVsbCkubWFwKChpKSA9PiB0aGlzLm5vcm1hbGl6ZUl0ZW0oaSwgZmluZEJ5a2V5KSk7XG4gIH1cblxuICBwcml2YXRlIG5vcm1hbGl6ZUl0ZW0oaXRlbTogdW5rbm93biwgZmluZEJ5a2V5ID0gZmFsc2UpOiB1bmtub3duIHtcbiAgICBjb25zdCBjb21wbGV4ID0gdHlwZW9mIGl0ZW0gPT0gJ29iamVjdCc7XG4gICAgY29uc3Qga2V5ID0gY29tcGxleCA/IGl0ZW1bdGhpcy52YWx1ZUZpZWxkXSA6IGAke2l0ZW19YDtcbiAgICBjb25zdCBjYWNoZUtleSA9IGBrLSR7a2V5fWA7XG4gICAgY29uc3QgaGFzVGV4dCA9ICFjb21wbGV4IHx8IGl0ZW1bdGhpcy50ZXh0RmllbGRdICE9IG51bGw7XG4gICAgLy9cbiAgICBpZiAodGhpcy5kYXRhU2VydmljZS5jYWNoZUxpc3RbY2FjaGVLZXldICYmIHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0W2NhY2hlS2V5XVt0aGlzLnRleHRGaWVsZF0pXG4gICAgICByZXR1cm4gdGhpcy5kYXRhU2VydmljZS5jYWNoZUxpc3RbY2FjaGVLZXldO1xuICAgIC8vXG4gICAgY29uc3Qgb2JqOiB1bmtub3duID0ge307XG4gICAgaWYgKGNvbXBsZXggJiYgaGFzVGV4dCkge1xuICAgICAgT2JqZWN0LmFzc2lnbihvYmosIGl0ZW0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBleGlzdHNJdGVtID0gZmluZEJ5a2V5ID8gdGhpcy5nZXRJdGVtQnlLZXkoa2V5KSA6IG51bGw7XG4gICAgICBpZiAoZXhpc3RzSXRlbSAmJiBleGlzdHNJdGVtIGluc3RhbmNlb2YgUHJvbWlzZSkge1xuICAgICAgICBvYmpbdGhpcy52YWx1ZUZpZWxkXSA9IGtleTtcbiAgICAgICAgb2JqWydpc0xvYWRpbmcnXSA9IHRydWU7XG4gICAgICAgIG9ialt0aGlzLnRleHRGaWVsZF0gPSAnTG9hZGluZyc7XG4gICAgICAgIC8vXG4gICAgICAgIGV4aXN0c0l0ZW1cbiAgICAgICAgICAudGhlbigocikgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiByID09PSAnb2JqZWN0JyAmJiByKSB7XG4gICAgICAgICAgICAgIG9ialt0aGlzLnZhbHVlRmllbGRdID0gclt0aGlzLnZhbHVlRmllbGRdO1xuICAgICAgICAgICAgICBvYmpbdGhpcy50ZXh0RmllbGRdID0gclt0aGlzLnRleHRGaWVsZF07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBvYmpbdGhpcy52YWx1ZUZpZWxkXSA9IHIgfHwga2V5O1xuICAgICAgICAgICAgICBvYmpbdGhpcy50ZXh0RmllbGRdID0gcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICAgIC5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgICAgIG9ialsnaXNMb2FkaW5nJ10gPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0W2NhY2hlS2V5XSA9IG9iajtcbiAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChleGlzdHNJdGVtKSB7XG4gICAgICAgIG9ialt0aGlzLnZhbHVlRmllbGRdID0gY29tcGxleCA/IGV4aXN0c0l0ZW1bdGhpcy52YWx1ZUZpZWxkXSA6IGV4aXN0c0l0ZW07XG4gICAgICAgIG9ialt0aGlzLnRleHRGaWVsZF0gPSBjb21wbGV4ID8gZXhpc3RzSXRlbVt0aGlzLnRleHRGaWVsZF0gOiBleGlzdHNJdGVtO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb2JqW3RoaXMudmFsdWVGaWVsZF0gPSBjb21wbGV4ID8gaXRlbVt0aGlzLnZhbHVlRmllbGRdIDogaXRlbTtcbiAgICAgICAgb2JqW3RoaXMudGV4dEZpZWxkXSA9IGNvbXBsZXggPyBpdGVtW3RoaXMudGV4dEZpZWxkXSA6IGl0ZW07XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0W2NhY2hlS2V5XSA9IG9iajtcbiAgICByZXR1cm4gb2JqO1xuICB9XG5cbiAgcHJpdmF0ZSBfbm9ybWFsaXplU2VsZWN0ZWRJdGVtcygpIHtcbiAgICBjb25zdCB2YWx1ZXMgPSBBcnJheS5pc0FycmF5KHRoaXMudmFsdWUpID8gdGhpcy52YWx1ZSA6IHRoaXMudmFsdWUgIT0gbnVsbCA/IFt0aGlzLnZhbHVlXSA6IFtdO1xuICAgIHRoaXMuZGF0YVNlcnZpY2Uuc2VsZWN0ZWRJdGVtcyA9IHZhbHVlcy5tYXAoKHYpID0+IHRoaXMubm9ybWFsaXplSXRlbSh2KSk7XG4gIH1cblxuICBwdWJsaWMgdW5zZWxlY3RJdGVtcyguLi5pdGVtczogVFtdKSB7XG4gICAgaWYgKCFpdGVtcyB8fCBpdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuY29tbWl0VmFsdWUoW10sIHRydWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBub3JtYWxpemVJdGVtcyA9IEFycmF5LmlzQXJyYXkoaXRlbXMpXG4gICAgICA/IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KGl0ZW1zKVxuICAgICAgOiBbdGhpcy5ub3JtYWxpemVJdGVtKGl0ZW1zKV07XG4gICAgY29uc3QgbmV3U2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5maWx0ZXIoXG4gICAgICAoaSkgPT4gIW5vcm1hbGl6ZUl0ZW1zLnNvbWUoKG4pID0+IG5bdGhpcy52YWx1ZUZpZWxkXSA9PSBpW3RoaXMudmFsdWVGaWVsZF0pLFxuICAgICk7XG4gICAgdGhpcy5jb21taXRWYWx1ZShuZXdTZWxlY3RlZEl0ZW1zLCB0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RJdGVtcyguLi5pdGVtczogVFtdKSB7XG4gICAgaWYgKGl0ZW1zICYmIGl0ZW1zLmxlbmd0aCkge1xuICAgICAgbGV0IG5ld1NlbGVjdGVkSXRlbXMgPSBBcnJheS5pc0FycmF5KHRoaXMudmFsdWUpID8gdGhpcy52YWx1ZSA6IFt0aGlzLnZhbHVlXTtcbiAgICAgIGNvbnN0IG5vcm1hbGl6ZUl0ZW1zID0gQXJyYXkuaXNBcnJheShpdGVtcylcbiAgICAgICAgPyB0aGlzLm5vcm1hbGl6ZUl0ZW1zTGlzdChpdGVtcylcbiAgICAgICAgOiBbdGhpcy5ub3JtYWxpemVJdGVtKGl0ZW1zKV07XG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgICBuZXdTZWxlY3RlZEl0ZW1zID0gWy4uLm5ld1NlbGVjdGVkSXRlbXMsIC4uLm5vcm1hbGl6ZUl0ZW1zXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5ld1NlbGVjdGVkSXRlbXMgPSBub3JtYWxpemVJdGVtcztcbiAgICAgIH1cbiAgICAgIHRoaXMuY29tbWl0VmFsdWUobmV3U2VsZWN0ZWRJdGVtcywgdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHRvZ2dsZVNlbGVjdCguLi5pdGVtczogVFtdKSB7XG4gICAgaXRlbXM/LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIHRoaXMuaXNJdGVtU2VsZWN0ZWQoaXRlbSkgPyB0aGlzLnVuc2VsZWN0SXRlbXMoaXRlbSkgOiB0aGlzLnNlbGVjdEl0ZW1zKGl0ZW0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zZWxlY3RJdGVtcyhpdGVtKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBpc0l0ZW1TZWxlY3RlZChpdGVtOiBUKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcy5zb21lKChjKSA9PiBjW3RoaXMudmFsdWVGaWVsZF0gPT09IHRoaXMubm9ybWFsaXplSXRlbShpdGVtKVt0aGlzLnZhbHVlRmllbGRdKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0l0ZW1EaXNhYmxlZChpdGVtOiBUKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuZGlzYWJsZWQgfHxcbiAgICAgIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShpdGVtW3RoaXMuZGlzYWJsZWRGaWVsZF0pID09PSB0cnVlIHx8XG4gICAgICAodGhpcy5kaXNhYmxlZENhbGxiYWNrID8gdGhpcy5kaXNhYmxlZENhbGxiYWNrKHsgaXRlbSwgaW5kZXg6IC0xIH0pIDogZmFsc2UpXG4gICAgKTtcbiAgfVxuXG4gIC8vIHByb3RlY3RlZCBnZXREaXNwbGF5VGV4dChpdGVtOiBUKSB7XG4gIC8vICAgY29uc3Qgbm9ybWFsaXplSXRlbSA9IHRoaXMubm9ybWFsaXplSXRlbShpdGVtKSBhcyBhbnk7XG4gIC8vICAgcmV0dXJuIGZvcm1hdHRlZFRleHQgfHwgbm9ybWFsaXplSXRlbVt0aGlzLnZhbHVlRmllbGRdO1xuICAvLyB9XG5cbiAgcHJvdGVjdGVkIGdldERpc3BsYXlUZXh0KGl0ZW06IFQpIHtcbiAgICBjb25zdCBub3JtYWxpemVJdGVtID0gdGhpcy5ub3JtYWxpemVJdGVtKGl0ZW0pIGFzIGFueTtcbiAgICBjb25zdCBmb3JtYXR0ZWRUZW1wbGF0ZSA9IHRoaXMuZm9ybWF0U2VydmljZS5mb3JtYXQodGhpcy50ZXh0VGVtcGxhdGUsICdzdHJpbmcnLCBub3JtYWxpemVJdGVtKTtcbiAgICBpZiAodGhpcy50ZXh0VGVtcGxhdGUgJiYgZm9ybWF0dGVkVGVtcGxhdGUgIT0gdGhpcy50ZXh0VGVtcGxhdGUpIHJldHVybiBmb3JtYXR0ZWRUZW1wbGF0ZTtcbiAgICBlbHNlIHJldHVybiBub3JtYWxpemVJdGVtW3RoaXMudGV4dEZpZWxkXSB8fCBub3JtYWxpemVJdGVtW3RoaXMudmFsdWVGaWVsZF07XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0VmFsdWUoaXRlbTogVCkge1xuICAgIGNvbnN0IG5vcm1hbGl6ZUl0ZW0gPSB0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbSkgYXMgYW55O1xuICAgIHJldHVybiBub3JtYWxpemVJdGVtW3RoaXMudmFsdWVGaWVsZF07XG4gIH1cblxuICBwcm90ZWN0ZWQgY2xlYXJTZWxlY3Rpb25DYWNoZSgpIHtcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLmNhY2hlTGlzdCA9IHt9O1xuICAgIHRoaXMuZGF0YVNlcnZpY2Uuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuICB9XG59XG4iXX0=
229
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWJhc2UuY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0aW9uLWJhc2UuY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBRzNELE1BQU0sT0FBTyx3QkFBd0I7SUFEckM7UUFFUyxrQkFBYSxHQUFjLEVBQUUsQ0FBQztRQUM5QixjQUFTLEdBQXdDLEVBQUUsQ0FBQztLQUM1RDs4R0FIWSx3QkFBd0I7a0hBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEcEMsVUFBVTs7QUFNWCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLGNBQWMsQ0FDdkQseUJBQXlCLENBQzFCLENBQUM7QUFHRixNQUFNLE9BQWdCLHlCQUF1QyxTQUFRLGdCQUF5QjtJQUQ5Rjs7UUFFVSxrQkFBYSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN4QyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBSTlDLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBVW5CLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBV25CLGVBQVUsR0FBRyxNQUFNLENBQUM7UUFXcEIsbUJBQWMsR0FBRyxVQUFVLENBQUM7UUFXNUIsY0FBUyxHQUFHLEtBQUssQ0FBQztLQTRLM0I7SUF0TkMsSUFBVyxVQUFVO1FBQ25CLE9B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LENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRVMsbUJBQW1CO1FBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDOzhHQTVObUIseUJBQXlCO2tIQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBRDlDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEZvcm1hdFNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvZm9ybWF0JztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNWFZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi92YWx1ZS1jb21wb25lbnQuY2xhc3MnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTVhTZWxlY3Rpb25CcmlkZ2VTZXJ2aWNlIHtcbiAgcHVibGljIHNlbGVjdGVkSXRlbXM6IHVua25vd25bXSA9IFtdO1xuICBwdWJsaWMgY2FjaGVMaXN0OiB7IFtrZXk6IHN0cmluZyB8IG51bWJlcl06IHVua25vd24gfSA9IHt9O1xufVxuXG5leHBvcnQgY29uc3QgQVhfU0VMRUNUSU9OX0RBVEFfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48TVhTZWxlY3Rpb25CcmlkZ2VTZXJ2aWNlPihcbiAgJ0FYX1NFTEVDVElPTl9EQVRBX1RPS0VOJyxcbik7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNWFNlbGVjdGlvblZhbHVlQ29tcG9uZW50PFQgPSB1bmtub3duPiBleHRlbmRzIE1YVmFsdWVDb21wb25lbnQ8dW5rbm93bj4ge1xuICBwcml2YXRlIGZvcm1hdFNlcnZpY2UgPSBpbmplY3QoQVhGb3JtYXRTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBkYXRhU2VydmljZSA9IGluamVjdChBWF9TRUxFQ1RJT05fREFUQV9UT0tFTik7XG5cbiAgZGlzYWJsZWRDYWxsYmFjazogKGU6IHsgaXRlbTogVDsgaW5kZXg6IG51bWJlciB9KSA9PiBib29sZWFuO1xuXG4gIHByaXZhdGUgX3ZhbHVlRmllbGQgPSAnaWQnO1xuICBwdWJsaWMgZ2V0IHZhbHVlRmllbGQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVGaWVsZDtcbiAgfVxuICBwdWJsaWMgc2V0IHZhbHVlRmllbGQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3ZhbHVlRmllbGQnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgfSk7XG4gIH1cbiAgcHJpdmF0ZSBfdGV4dFRlbXBsYXRlID0gJyc7XG4gIHB1YmxpYyBnZXQgdGV4dFRlbXBsYXRlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RleHRUZW1wbGF0ZTtcbiAgfVxuICBwdWJsaWMgc2V0IHRleHRUZW1wbGF0ZSh2OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNldE9wdGlvbih7XG4gICAgICBuYW1lOiAndGV4dFRlbXBsYXRlJyxcbiAgICAgIHZhbHVlOiB2LFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdGV4dEZpZWxkID0gJ3RleHQnO1xuICBwdWJsaWMgZ2V0IHRleHRGaWVsZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl90ZXh0RmllbGQ7XG4gIH1cbiAgcHVibGljIHNldCB0ZXh0RmllbGQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RleHRGaWVsZCcsXG4gICAgICB2YWx1ZTogdixcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVkRmllbGQgPSAnZGlzYWJsZWQnO1xuICBwdWJsaWMgZ2V0IGRpc2FibGVkRmllbGQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWRGaWVsZDtcbiAgfVxuICBwdWJsaWMgc2V0IGRpc2FibGVkRmllbGQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ2Rpc2FibGVkRmllbGQnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9tdWx0aXBsZSA9IGZhbHNlO1xuICBwdWJsaWMgZ2V0IG11bHRpcGxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9tdWx0aXBsZTtcbiAgfVxuICBwdWJsaWMgc2V0IG11bHRpcGxlKHY6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNldE9wdGlvbih7XG4gICAgICBuYW1lOiAnbXVsdGlwbGUnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgICBhZnRlckNhbGxiYWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMucmVzZXQoZmFsc2UpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIGdldCBzZWxlY3RlZEl0ZW1zKCk6IHVua25vd25bXSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2Uuc2VsZWN0ZWRJdGVtcyB8fCBbXTtcbiAgfVxuXG4gIG92ZXJyaWRlIGludGVybmFsU2V0VmFsdWUodmFsdWU6IHVua25vd24pIHtcbiAgICBjb25zdCBpc0FycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSk7XG4gICAgaWYgKHZhbHVlID09IG51bGwgfHwgKGlzQXJyYXkgJiYgdmFsdWUubGVuZ3RoID09IDApKSB7XG4gICAgICByZXR1cm4gdGhpcy5tdWx0aXBsZSA/IFtdIDogbnVsbDtcbiAgICB9XG4gICAgY29uc3Qgbm9ybWFsaXplZEl0ZW1zID0gaXNBcnJheVxuICAgICAgPyB0aGlzLm5vcm1hbGl6ZUl0ZW1zTGlzdCh2YWx1ZSwgdHJ1ZSlcbiAgICAgIDogdGhpcy5ub3JtYWxpemVJdGVtc0xpc3QoW3ZhbHVlXSwgdHJ1ZSk7XG5cbiAgICBpZiAobm9ybWFsaXplZEl0ZW1zLmxlbmd0aCA9PSAwKSB7XG4gICAgICByZXR1cm4gdGhpcy5tdWx0aXBsZSA/IFtdIDogbnVsbDtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5tdWx0aXBsZVxuICAgICAgPyBub3JtYWxpemVkSXRlbXMubWFwKChjKSA9PiBjW3RoaXMudmFsdWVGaWVsZF0pXG4gICAgICA6IG5vcm1hbGl6ZWRJdGVtc1swXVt0aGlzLnZhbHVlRmllbGRdO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBvdmVycmlkZSBlbWl0T25WYWx1ZUNoYW5nZWRFdmVudChvbGRWYWx1ZT86IHVua25vd24sIG5ld1ZhbHVlPzogdW5rbm93bikge1xuICAgIHRoaXMuX25vcm1hbGl6ZVNlbGVjdGVkSXRlbXMoKTtcbiAgICBzdXBlci5lbWl0T25WYWx1ZUNoYW5nZWRFdmVudChvbGRWYWx1ZSwgbmV3VmFsdWUpO1xuICB9XG5cbiAgYWJzdHJhY3QgZ2V0SXRlbUJ5S2V5KGtleTogdW5rbm93bik6IHVua25vd24gfCBQcm9taXNlPHVua25vd24+O1xuXG4gIHByb3RlY3RlZCBub3JtYWxpemVJdGVtc0xpc3QoaXRlbXM6IHVua25vd25bXSwgZmluZEJ5a2V5ID0gZmFsc2UpOiB1bmtub3duW10ge1xuICAgIGlmIChpdGVtcyA9PSBudWxsKSByZXR1cm4gW107XG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoYykgPT4gYyAhPSBudWxsKS5tYXAoKGkpID0+IHRoaXMubm9ybWFsaXplSXRlbShpLCBmaW5kQnlrZXkpKTtcbiAgfVxuXG4gIHByaXZhdGUgbm9ybWFsaXplSXRlbShpdGVtOiB1bmtub3duLCBmaW5kQnlrZXkgPSBmYWxzZSk6IHVua25vd24ge1xuICAgIGNvbnN0IGNvbXBsZXggPSB0eXBlb2YgaXRlbSA9PSAnb2JqZWN0JztcbiAgICBjb25zdCBrZXkgPSBjb21wbGV4ID8gaXRlbVt0aGlzLnZhbHVlRmllbGRdIDogYCR7aXRlbX1gO1xuICAgIGNvbnN0IGNhY2hlS2V5ID0gYGstJHtrZXl9YDtcbiAgICBjb25zdCBoYXNUZXh0ID0gIWNvbXBsZXggfHwgaXRlbVt0aGlzLnRleHRGaWVsZF0gIT0gbnVsbDtcbiAgICAvL1xuICAgIGlmICh0aGlzLmRhdGFTZXJ2aWNlLmNhY2hlTGlzdFtjYWNoZUtleV0gJiYgdGhpcy5kYXRhU2VydmljZS5jYWNoZUxpc3RbY2FjaGVLZXldW3RoaXMudGV4dEZpZWxkXSlcbiAgICAgIHJldHVybiB0aGlzLmRhdGFTZXJ2aWNlLmNhY2hlTGlzdFtjYWNoZUtleV07XG4gICAgLy9cbiAgICBjb25zdCBvYmo6IHVua25vd24gPSB7fTtcbiAgICBpZiAoY29tcGxleCAmJiBoYXNUZXh0KSB7XG4gICAgICBPYmplY3QuYXNzaWduKG9iaiwgaXRlbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGV4aXN0c0l0ZW0gPSBmaW5kQnlrZXkgPyB0aGlzLmdldEl0ZW1CeUtleShrZXkpIDogbnVsbDtcbiAgICAgIGlmIChleGlzdHNJdGVtICYmIGV4aXN0c0l0ZW0gaW5zdGFuY2VvZiBQcm9taXNlKSB7XG4gICAgICAgIG9ialt0aGlzLnZhbHVlRmllbGRdID0ga2V5O1xuICAgICAgICBvYmpbJ2lzTG9hZGluZyddID0gdHJ1ZTtcbiAgICAgICAgb2JqW3RoaXMudGV4dEZpZWxkXSA9ICdMb2FkaW5nJztcbiAgICAgICAgLy9cbiAgICAgICAgZXhpc3RzSXRlbVxuICAgICAgICAgIC50aGVuKChyKSA9PiB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHIgPT09ICdvYmplY3QnICYmIHIpIHtcbiAgICAgICAgICAgICAgb2JqW3RoaXMudmFsdWVGaWVsZF0gPSByW3RoaXMudmFsdWVGaWVsZF07XG4gICAgICAgICAgICAgIG9ialt0aGlzLnRleHRGaWVsZF0gPSByW3RoaXMudGV4dEZpZWxkXTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIG9ialt0aGlzLnZhbHVlRmllbGRdID0gciB8fCBrZXk7XG4gICAgICAgICAgICAgIG9ialt0aGlzLnRleHRGaWVsZF0gPSByO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgb2JqWydpc0xvYWRpbmcnXSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5jYWNoZUxpc3RbY2FjaGVLZXldID0gb2JqO1xuICAgICAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKGV4aXN0c0l0ZW0pIHtcbiAgICAgICAgb2JqW3RoaXMudmFsdWVGaWVsZF0gPSBjb21wbGV4ID8gZXhpc3RzSXRlbVt0aGlzLnZhbHVlRmllbGRdIDogZXhpc3RzSXRlbTtcbiAgICAgICAgb2JqW3RoaXMudGV4dEZpZWxkXSA9IGNvbXBsZXggPyBleGlzdHNJdGVtW3RoaXMudGV4dEZpZWxkXSA6IGV4aXN0c0l0ZW07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYmpbdGhpcy52YWx1ZUZpZWxkXSA9IGNvbXBsZXggPyBpdGVtW3RoaXMudmFsdWVGaWVsZF0gOiBpdGVtO1xuICAgICAgICBvYmpbdGhpcy50ZXh0RmllbGRdID0gY29tcGxleCA/IGl0ZW1bdGhpcy50ZXh0RmllbGRdIDogaXRlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5kYXRhU2VydmljZS5jYWNoZUxpc3RbY2FjaGVLZXldID0gb2JqO1xuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICBwcml2YXRlIF9ub3JtYWxpemVTZWxlY3RlZEl0ZW1zKCkge1xuICAgIGNvbnN0IHZhbHVlcyA9IEFycmF5LmlzQXJyYXkodGhpcy52YWx1ZSkgPyB0aGlzLnZhbHVlIDogdGhpcy52YWx1ZSAhPSBudWxsID8gW3RoaXMudmFsdWVdIDogW107XG4gICAgdGhpcy5kYXRhU2VydmljZS5zZWxlY3RlZEl0ZW1zID0gdmFsdWVzLm1hcCgodikgPT4gdGhpcy5ub3JtYWxpemVJdGVtKHYpKTtcbiAgfVxuXG4gIHB1YmxpYyB1bnNlbGVjdEl0ZW1zKC4uLml0ZW1zOiBUW10pIHtcbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5jb21taXRWYWx1ZShbXSwgdHJ1ZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IG5vcm1hbGl6ZUl0ZW1zID0gQXJyYXkuaXNBcnJheShpdGVtcylcbiAgICAgID8gdGhpcy5ub3JtYWxpemVJdGVtc0xpc3QoaXRlbXMpXG4gICAgICA6IFt0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbXMpXTtcbiAgICBjb25zdCBuZXdTZWxlY3RlZEl0ZW1zID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmZpbHRlcihcbiAgICAgIChpKSA9PiAhbm9ybWFsaXplSXRlbXMuc29tZSgobikgPT4gblt0aGlzLnZhbHVlRmllbGRdID09IGlbdGhpcy52YWx1ZUZpZWxkXSksXG4gICAgKTtcbiAgICB0aGlzLmNvbW1pdFZhbHVlKG5ld1NlbGVjdGVkSXRlbXMsIHRydWUpO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEl0ZW1zKC4uLml0ZW1zOiBUW10pIHtcbiAgICBpZiAoaXRlbXMgJiYgaXRlbXMubGVuZ3RoKSB7XG4gICAgICBsZXQgbmV3U2VsZWN0ZWRJdGVtcyA9IEFycmF5LmlzQXJyYXkodGhpcy52YWx1ZSkgPyB0aGlzLnZhbHVlIDogW3RoaXMudmFsdWVdO1xuICAgICAgY29uc3Qgbm9ybWFsaXplSXRlbXMgPSBBcnJheS5pc0FycmF5KGl0ZW1zKVxuICAgICAgICA/IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KGl0ZW1zKVxuICAgICAgICA6IFt0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbXMpXTtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIG5ld1NlbGVjdGVkSXRlbXMgPSBbLi4ubmV3U2VsZWN0ZWRJdGVtcywgLi4ubm9ybWFsaXplSXRlbXNdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3U2VsZWN0ZWRJdGVtcyA9IG5vcm1hbGl6ZUl0ZW1zO1xuICAgICAgfVxuICAgICAgdGhpcy5jb21taXRWYWx1ZShuZXdTZWxlY3RlZEl0ZW1zLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlU2VsZWN0KC4uLml0ZW1zOiBUW10pIHtcbiAgICBpdGVtcz8uZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgdGhpcy5pc0l0ZW1TZWxlY3RlZChpdGVtKSA/IHRoaXMudW5zZWxlY3RJdGVtcyhpdGVtKSA6IHRoaXMuc2VsZWN0SXRlbXMoaXRlbSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdEl0ZW1zKGl0ZW0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGlzSXRlbVNlbGVjdGVkKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEl0ZW1zLnNvbWUoKGMpID0+IGNbdGhpcy52YWx1ZUZpZWxkXSA9PT0gdGhpcy5ub3JtYWxpemVJdGVtKGl0ZW0pW3RoaXMudmFsdWVGaWVsZF0pO1xuICB9XG5cbiAgcHVibGljIGlzSXRlbURpc2FibGVkKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5kaXNhYmxlZCB8fFxuICAgICAgY29lcmNlQm9vbGVhblByb3BlcnR5KGl0ZW1bdGhpcy5kaXNhYmxlZEZpZWxkXSkgPT09IHRydWUgfHxcbiAgICAgICh0aGlzLmRpc2FibGVkQ2FsbGJhY2sgPyB0aGlzLmRpc2FibGVkQ2FsbGJhY2soeyBpdGVtLCBpbmRleDogLTEgfSkgOiBmYWxzZSlcbiAgICApO1xuICB9XG5cbiAgLy8gcHJvdGVjdGVkIGdldERpc3BsYXlUZXh0KGl0ZW06IFQpIHtcbiAgLy8gICBjb25zdCBub3JtYWxpemVJdGVtID0gdGhpcy5ub3JtYWxpemVJdGVtKGl0ZW0pIGFzIGFueTtcbiAgLy8gICByZXR1cm4gZm9ybWF0dGVkVGV4dCB8fCBub3JtYWxpemVJdGVtW3RoaXMudmFsdWVGaWVsZF07XG4gIC8vIH1cblxuICBwcm90ZWN0ZWQgZ2V0RGlzcGxheVRleHQoaXRlbTogVCkge1xuICAgIGNvbnN0IG5vcm1hbGl6ZUl0ZW0gPSB0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbSkgYXMgYW55O1xuICAgIGNvbnN0IGZvcm1hdHRlZFRlbXBsYXRlID0gdGhpcy5mb3JtYXRTZXJ2aWNlLmZvcm1hdCh0aGlzLnRleHRUZW1wbGF0ZSwgJ3N0cmluZycsIG5vcm1hbGl6ZUl0ZW0pO1xuICAgIGlmICh0aGlzLnRleHRUZW1wbGF0ZSAmJiBmb3JtYXR0ZWRUZW1wbGF0ZSAhPSB0aGlzLnRleHRUZW1wbGF0ZSkgcmV0dXJuIGZvcm1hdHRlZFRlbXBsYXRlO1xuICAgIGVsc2UgcmV0dXJuIG5vcm1hbGl6ZUl0ZW1bdGhpcy50ZXh0RmllbGRdIHx8IG5vcm1hbGl6ZUl0ZW1bdGhpcy52YWx1ZUZpZWxkXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRWYWx1ZShpdGVtOiBUKSB7XG4gICAgY29uc3Qgbm9ybWFsaXplSXRlbSA9IHRoaXMubm9ybWFsaXplSXRlbShpdGVtKSBhcyBhbnk7XG4gICAgcmV0dXJuIG5vcm1hbGl6ZUl0ZW1bdGhpcy52YWx1ZUZpZWxkXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjbGVhclNlbGVjdGlvbkNhY2hlKCkge1xuICAgIHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0ID0ge307XG4gICAgdGhpcy5kYXRhU2VydmljZS5zZWxlY3RlZEl0ZW1zID0gW107XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiJdfQ==