@seniorsistemas/angular-components 19.9.3 → 19.9.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/autocomplete/README.md +4 -0
  2. package/autocomplete/lib/autocomplete/autocomplete.component.d.ts +7 -1
  3. package/autocomplete/lib/autocomplete/components/autocomplete-chip/autocomplete-chip.component.d.ts +3 -1
  4. package/checkbox/lib/checkbox/checkbox.component.d.ts +1 -6
  5. package/checkbox-list/lib/checkbox-list/checkbox-list.component.d.ts +8 -0
  6. package/content-generator/lib/content-generator/content-generator.component.d.ts +2 -2
  7. package/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.d.ts +2 -0
  8. package/drawer/README.md +9 -2
  9. package/drawer/lib/drawer/drawer.component.d.ts +12 -1
  10. package/editor/lib/editor/editor.component.d.ts +1 -1
  11. package/esm2022/autocomplete/lib/autocomplete/autocomplete.component.mjs +10 -4
  12. package/esm2022/autocomplete/lib/autocomplete/components/autocomplete-chip/autocomplete-chip.component.mjs +5 -3
  13. package/esm2022/button/lib/button/button.component.mjs +3 -3
  14. package/esm2022/checkbox/lib/checkbox/checkbox.component.mjs +3 -9
  15. package/esm2022/checkbox-list/lib/checkbox-list/checkbox-list.component.mjs +17 -5
  16. package/esm2022/content-generator/lib/content-generator/content-generator.component.mjs +9 -8
  17. package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.mjs +18 -3
  18. package/esm2022/drawer/lib/drawer/drawer.component.mjs +33 -11
  19. package/esm2022/drawer/lib/drawer/drawer.module.mjs +2 -2
  20. package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +3 -3
  21. package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +3 -3
  22. package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.mjs +3 -3
  23. package/esm2022/dynamic-form/dynamic-form/form-field/fields/checkbox/checkbox-field.component.mjs +4 -3
  24. package/esm2022/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.mjs +3 -3
  25. package/esm2022/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.mjs +3 -3
  26. package/esm2022/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.mjs +3 -3
  27. package/esm2022/dynamic-form/dynamic-form/form-field/fields/select/select-field.component.mjs +2 -2
  28. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.mjs +3 -3
  29. package/esm2022/editor/lib/editor/editor.component.mjs +8 -8
  30. package/esm2022/file-picker/lib/file-picker/file-picker.component.mjs +4 -4
  31. package/esm2022/global-search/lib/global-search/components/dropdown/global-search-dropdown-item.component.mjs +4 -4
  32. package/esm2022/global-search/lib/global-search/global-search.module.mjs +2 -2
  33. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-number/inline-edit-number.component.mjs +3 -3
  34. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-text/inline-edit-text.component.mjs +2 -3
  35. package/esm2022/insights/lib/insights/components/insights-card/insights-card.component.mjs +21 -3
  36. package/esm2022/insights/lib/insights/components/insights-sidebar/insights-sidebar.component.mjs +14 -3
  37. package/esm2022/insights/lib/insights/insights.component.mjs +15 -4
  38. package/esm2022/paginator/lib/models/paginator.models.mjs +1 -1
  39. package/esm2022/paginator/lib/paginator/paginator.component.mjs +19 -13
  40. package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.mjs +19 -8
  41. package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.module.mjs +3 -4
  42. package/esm2022/rating-scale/lib/rating-scale/models/rating-scale-node.mjs +1 -1
  43. package/esm2022/rating-scale/lib/rating-scale/rating-scale.component.mjs +23 -3
  44. package/esm2022/select/lib/select/components/select-option/select-option.component.mjs +5 -3
  45. package/esm2022/select/lib/select/select.component.mjs +6 -4
  46. package/esm2022/side-sheet/lib/side-sheet/side-sheet.component.mjs +6 -5
  47. package/esm2022/slider/lib/slider/slider.component.mjs +3 -3
  48. package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.mjs +58 -8
  49. package/esm2022/split-button/lib/split-button/split-button.component.mjs +11 -3
  50. package/esm2022/star-rating/star-rating/star-rating.component.mjs +3 -3
  51. package/esm2022/table/lib/table/table-column/table-columns.component.mjs +1 -1
  52. package/esm2022/table-header/lib/table-header/table-header-checkbox.component.mjs +14 -21
  53. package/esm2022/text-area/lib/text-area/text-area.component.mjs +3 -3
  54. package/esm2022/token-list/lib/token-list/token-list.component.mjs +7 -3
  55. package/esm2022/tooltip/lib/tooltip/tooltip.directive.mjs +3 -2
  56. package/esm2022/utils/lib/utils/utils.mjs +49 -3
  57. package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs +13 -5
  58. package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs.map +1 -1
  59. package/fesm2022/seniorsistemas-angular-components-button.mjs +2 -2
  60. package/fesm2022/seniorsistemas-angular-components-button.mjs.map +1 -1
  61. package/fesm2022/seniorsistemas-angular-components-checkbox-list.mjs +16 -4
  62. package/fesm2022/seniorsistemas-angular-components-checkbox-list.mjs.map +1 -1
  63. package/fesm2022/seniorsistemas-angular-components-checkbox.mjs +2 -8
  64. package/fesm2022/seniorsistemas-angular-components-checkbox.mjs.map +1 -1
  65. package/fesm2022/seniorsistemas-angular-components-content-generator.mjs +8 -6
  66. package/fesm2022/seniorsistemas-angular-components-content-generator.mjs.map +1 -1
  67. package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs +17 -2
  68. package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs.map +1 -1
  69. package/fesm2022/seniorsistemas-angular-components-drawer.mjs +32 -9
  70. package/fesm2022/seniorsistemas-angular-components-drawer.mjs.map +1 -1
  71. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +17 -17
  72. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
  73. package/fesm2022/seniorsistemas-angular-components-editor.mjs +7 -7
  74. package/fesm2022/seniorsistemas-angular-components-editor.mjs.map +1 -1
  75. package/fesm2022/seniorsistemas-angular-components-file-picker.mjs +3 -3
  76. package/fesm2022/seniorsistemas-angular-components-file-picker.mjs.map +1 -1
  77. package/fesm2022/seniorsistemas-angular-components-global-search.mjs +3 -3
  78. package/fesm2022/seniorsistemas-angular-components-global-search.mjs.map +1 -1
  79. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +3 -4
  80. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
  81. package/fesm2022/seniorsistemas-angular-components-insights.mjs +47 -7
  82. package/fesm2022/seniorsistemas-angular-components-insights.mjs.map +1 -1
  83. package/fesm2022/seniorsistemas-angular-components-paginator.mjs +18 -12
  84. package/fesm2022/seniorsistemas-angular-components-paginator.mjs.map +1 -1
  85. package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs +20 -9
  86. package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs.map +1 -1
  87. package/fesm2022/seniorsistemas-angular-components-rating-scale.mjs +22 -2
  88. package/fesm2022/seniorsistemas-angular-components-rating-scale.mjs.map +1 -1
  89. package/fesm2022/seniorsistemas-angular-components-select.mjs +9 -5
  90. package/fesm2022/seniorsistemas-angular-components-select.mjs.map +1 -1
  91. package/fesm2022/seniorsistemas-angular-components-side-sheet.mjs +5 -4
  92. package/fesm2022/seniorsistemas-angular-components-side-sheet.mjs.map +1 -1
  93. package/fesm2022/seniorsistemas-angular-components-slider.mjs +2 -2
  94. package/fesm2022/seniorsistemas-angular-components-slider.mjs.map +1 -1
  95. package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs +57 -7
  96. package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs.map +1 -1
  97. package/fesm2022/seniorsistemas-angular-components-split-button.mjs +10 -2
  98. package/fesm2022/seniorsistemas-angular-components-split-button.mjs.map +1 -1
  99. package/fesm2022/seniorsistemas-angular-components-star-rating.mjs +2 -2
  100. package/fesm2022/seniorsistemas-angular-components-star-rating.mjs.map +1 -1
  101. package/fesm2022/seniorsistemas-angular-components-table-header.mjs +13 -20
  102. package/fesm2022/seniorsistemas-angular-components-table-header.mjs.map +1 -1
  103. package/fesm2022/seniorsistemas-angular-components-table.mjs +1 -1
  104. package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
  105. package/fesm2022/seniorsistemas-angular-components-text-area.mjs +2 -2
  106. package/fesm2022/seniorsistemas-angular-components-text-area.mjs.map +1 -1
  107. package/fesm2022/seniorsistemas-angular-components-token-list.mjs +6 -2
  108. package/fesm2022/seniorsistemas-angular-components-token-list.mjs.map +1 -1
  109. package/fesm2022/seniorsistemas-angular-components-tooltip.mjs +2 -1
  110. package/fesm2022/seniorsistemas-angular-components-tooltip.mjs.map +1 -1
  111. package/fesm2022/seniorsistemas-angular-components-utils.mjs +49 -3
  112. package/fesm2022/seniorsistemas-angular-components-utils.mjs.map +1 -1
  113. package/global-search/lib/global-search/global-search.module.d.ts +1 -1
  114. package/insights/README.md +12 -0
  115. package/insights/lib/insights/components/insights-card/insights-card.component.d.ts +22 -1
  116. package/insights/lib/insights/components/insights-sidebar/insights-sidebar.component.d.ts +9 -1
  117. package/insights/lib/insights/insights.component.d.ts +9 -1
  118. package/package.json +1 -3
  119. package/paginator/lib/models/paginator.models.d.ts +1 -0
  120. package/paginator/lib/paginator/paginator.component.d.ts +3 -1
  121. package/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.d.ts +3 -1
  122. package/rating-scale/README.md +38 -13
  123. package/rating-scale/lib/rating-scale/models/rating-scale-node.d.ts +8 -0
  124. package/rating-scale/lib/rating-scale/rating-scale.component.d.ts +4 -1
  125. package/select/README.md +2 -0
  126. package/select/lib/select/components/select-option/select-option.component.d.ts +3 -1
  127. package/select/lib/select/select.component.d.ts +3 -1
  128. package/side-sheet/README.md +4 -4
  129. package/side-sheet/lib/side-sheet/side-sheet.component.d.ts +1 -0
  130. package/speech-recognition/README.md +1 -0
  131. package/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.d.ts +4 -1
  132. package/split-button/README.md +2 -0
  133. package/split-button/lib/split-button/split-button.component.d.ts +5 -1
  134. package/table-header/lib/table-header/table-header-checkbox.component.d.ts +1 -4
  135. package/token-list/lib/token-list/token-list.component.d.ts +3 -1
  136. package/utils/lib/utils/utils.d.ts +21 -0
@@ -2,13 +2,14 @@ import { animate, style, transition, trigger } from '@angular/animations';
2
2
  import { CdkTrapFocus } from '@angular/cdk/a11y';
3
3
  import { NgTemplateOutlet } from '@angular/common';
4
4
  import { Component, contentChild, ContentChildren, effect, Input, model, } from '@angular/core';
5
- import { DEPRECATED_CONFIG } from '@seniorsistemas/angular-components/common/deprecated-selector';
6
- import { DeprecatedSelectorDirective } from '@seniorsistemas/angular-components/common/deprecated-selector';
5
+ import { TranslateModule } from '@ngx-translate/core';
6
+ import { DEPRECATED_CONFIG, DeprecatedSelectorDirective } from '@seniorsistemas/angular-components/common/deprecated-selector';
7
7
  import { FooterComponent } from '@seniorsistemas/angular-components/structure';
8
8
  import { TemplateDirective } from '@seniorsistemas/angular-components/template';
9
- import { disableScroll, enableScroll } from '@seniorsistemas/angular-components/utils';
9
+ import { createScrollLock, randomHash } from '@seniorsistemas/angular-components/utils';
10
10
  import * as i0 from "@angular/core";
11
11
  import * as i1 from "@seniorsistemas/angular-components/common/deprecated-selector";
12
+ import * as i2 from "@ngx-translate/core";
12
13
  /**
13
14
  * @description Componente de painel lateral deslizante (drawer) que aparece sobre o conteúdo
14
15
  * vindo do lado direito da tela. Suporta templates customizados para cabeçalho, corpo e rodapé
@@ -56,6 +57,12 @@ export class DrawerComponent {
56
57
  * Pode ser substituído por um template customizado via `sTemplate="header"`.
57
58
  */
58
59
  header;
60
+ /**
61
+ * @description Nome acessível do drawer, usado quando o cabeçalho é um template
62
+ * customizado via `sTemplate="header"` (nesse caso não há `header` para associar
63
+ * via `aria-labelledby`). Ignorado quando `header` está definido.
64
+ */
65
+ ariaLabel;
59
66
  /**
60
67
  * @description Quando `true`, aumenta a largura do drawer para acomodar mais conteúdo.
61
68
  *
@@ -76,18 +83,24 @@ export class DrawerComponent {
76
83
  set registerConfirmClose(fn) {
77
84
  this._confirmClose = fn;
78
85
  }
86
+ /** @description Id único usado para associar o título ao painel via `aria-labelledby`. */
87
+ titleId = randomHash('drawer-title');
79
88
  headerTemplate = null;
80
89
  bodyTemplate = null;
81
90
  footerTemplate = null;
82
91
  footerComponent = contentChild(FooterComponent);
83
92
  _confirmClose = () => true;
93
+ _elementToRefocus = null;
94
+ _scrollLock = createScrollLock();
84
95
  visibleEffect = effect(() => {
85
96
  const visible = this.visible();
86
97
  if (visible) {
87
- disableScroll();
98
+ this._scrollLock.lock();
99
+ this._elementToRefocus = document.activeElement;
88
100
  }
89
101
  else {
90
- enableScroll();
102
+ this._scrollLock.unlock();
103
+ this._restoreFocus();
91
104
  }
92
105
  });
93
106
  ngAfterContentInit() {
@@ -95,6 +108,8 @@ export class DrawerComponent {
95
108
  }
96
109
  ngOnDestroy() {
97
110
  this.visibleEffect.destroy();
111
+ this._scrollLock.unlock();
112
+ this._restoreFocus();
98
113
  }
99
114
  closeDrawer() {
100
115
  if (this._confirmClose()) {
@@ -102,9 +117,14 @@ export class DrawerComponent {
102
117
  }
103
118
  }
104
119
  handleEscape() {
105
- if (this.closeOnEscape) {
106
- this.closeDrawer();
120
+ if (!this.visible() || !this.closeOnEscape) {
121
+ return;
107
122
  }
123
+ this.closeDrawer();
124
+ }
125
+ _restoreFocus() {
126
+ this._elementToRefocus?.focus();
127
+ this._elementToRefocus = null;
108
128
  }
109
129
  _getCustomTemplate(type) {
110
130
  return this.templates?.find((template) => template.type === type)?.template ?? null;
@@ -124,7 +144,7 @@ export class DrawerComponent {
124
144
  this.footerTemplate = this.getFooterTemplate();
125
145
  }
126
146
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DrawerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
127
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DrawerComponent, isStandalone: true, selector: "s-drawer, s-sidebar", inputs: { visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, closable: { classPropertyName: "closable", publicName: "closable", isSignal: false, isRequired: false, transformFunction: null }, dismissible: { classPropertyName: "dismissible", publicName: "dismissible", isSignal: false, isRequired: false, transformFunction: null }, closeOnEscape: { classPropertyName: "closeOnEscape", publicName: "closeOnEscape", isSignal: false, isRequired: false, transformFunction: null }, header: { classPropertyName: "header", publicName: "header", isSignal: false, isRequired: false, transformFunction: null }, largeSized: { classPropertyName: "largeSized", publicName: "largeSized", isSignal: false, isRequired: false, transformFunction: null }, cache: { classPropertyName: "cache", publicName: "cache", isSignal: false, isRequired: false, transformFunction: null }, registerConfirmClose: { classPropertyName: "registerConfirmClose", publicName: "registerConfirmClose", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { visible: "visibleChange" }, host: { listeners: { "document:keydown.escape": "handleEscape()" } }, providers: [
147
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DrawerComponent, isStandalone: true, selector: "s-drawer, s-sidebar", inputs: { visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, closable: { classPropertyName: "closable", publicName: "closable", isSignal: false, isRequired: false, transformFunction: null }, dismissible: { classPropertyName: "dismissible", publicName: "dismissible", isSignal: false, isRequired: false, transformFunction: null }, closeOnEscape: { classPropertyName: "closeOnEscape", publicName: "closeOnEscape", isSignal: false, isRequired: false, transformFunction: null }, header: { classPropertyName: "header", publicName: "header", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: false, isRequired: false, transformFunction: null }, largeSized: { classPropertyName: "largeSized", publicName: "largeSized", isSignal: false, isRequired: false, transformFunction: null }, cache: { classPropertyName: "cache", publicName: "cache", isSignal: false, isRequired: false, transformFunction: null }, registerConfirmClose: { classPropertyName: "registerConfirmClose", publicName: "registerConfirmClose", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { visible: "visibleChange" }, host: { listeners: { "document:keydown.escape": "handleEscape()" } }, providers: [
128
148
  {
129
149
  provide: DEPRECATED_CONFIG,
130
150
  useValue: {
@@ -133,7 +153,7 @@ export class DrawerComponent {
133
153
  removalVersion: '20.0.0',
134
154
  },
135
155
  },
136
- ], queries: [{ propertyName: "footerComponent", first: true, predicate: FooterComponent, descendants: true, isSignal: true }, { propertyName: "templates", predicate: TemplateDirective }], hostDirectives: [{ directive: i1.DeprecatedSelectorDirective }], ngImport: i0, template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"drawer__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"drawer__header__close fas fa-times\"\n (click)=\"closeDrawer()\"\n ></button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.drawer{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.drawer__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.drawer__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.drawer__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.drawer__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.drawer__footer{border-top:1px solid #dedce5;padding-top:.75rem}.drawer--open{right:0}@media (min-width: 768px){.drawer{width:75%}}@media (min-width: 992px){.drawer{width:50%}}\n"], dependencies: [{ kind: "directive", type: CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
156
+ ], queries: [{ propertyName: "footerComponent", first: true, predicate: FooterComponent, descendants: true, isSignal: true }, { propertyName: "templates", predicate: TemplateDirective }], hostDirectives: [{ directive: i1.DeprecatedSelectorDirective }], ngImport: i0, template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n [cdkTrapFocus]=\"visible()\"\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n [attr.role]=\"visible() ? 'dialog' : null\"\n [attr.aria-modal]=\"visible() ? true : null\"\n [attr.aria-labelledby]=\"headerTemplate ? null : titleId\"\n [attr.aria-label]=\"headerTemplate ? ariaLabel : null\"\n [attr.inert]=\"visible() ? null : ''\"\n [attr.aria-hidden]=\"visible() ? null : 'true'\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <h2\n [id]=\"titleId\"\n tabindex=\"-1\"\n class=\"drawer__header__title\"\n >\n {{ header }}\n </h2>\n }\n @if (closable) {\n <button\n type=\"button\"\n class=\"drawer__header__close\"\n [attr.aria-label]=\"'platform.angular_components.close' | translate\"\n (click)=\"closeDrawer()\"\n >\n <i\n class=\"fas fa-times\"\n [attr.aria-hidden]=\"true\"\n ></i>\n </button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.drawer{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.drawer__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.drawer__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;font-weight:400;margin:0;outline:none;text-transform:uppercase;-webkit-user-select:none;user-select:none}.drawer__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.drawer__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.drawer__footer{border-top:1px solid #dedce5;padding-top:.75rem}.drawer--open{right:0}@media (min-width: 768px){.drawer{width:75%}}@media (min-width: 992px){.drawer{width:50%}}\n"], dependencies: [{ kind: "directive", type: CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], animations: [
137
157
  trigger('visibilityChanged', [
138
158
  transition(':enter', [
139
159
  style({ transform: 'translateX(100%)' }),
@@ -170,7 +190,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
170
190
  animate('300ms', style({ transform: 'translateX(100%)' })),
171
191
  ]),
172
192
  ]),
173
- ], standalone: true, imports: [CdkTrapFocus, NgTemplateOutlet], template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <span class=\"drawer__header__title\">{{ header }}</span>\n }\n @if (closable) {\n <button\n class=\"drawer__header__close fas fa-times\"\n (click)=\"closeDrawer()\"\n ></button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.drawer{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.drawer__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.drawer__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;-webkit-user-select:none;user-select:none}.drawer__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.drawer__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.drawer__footer{border-top:1px solid #dedce5;padding-top:.75rem}.drawer--open{right:0}@media (min-width: 768px){.drawer{width:75%}}@media (min-width: 992px){.drawer{width:50%}}\n"] }]
193
+ ], standalone: true, imports: [CdkTrapFocus, NgTemplateOutlet, TranslateModule], template: "@if (visible()) {\n <div\n class=\"backdrop\"\n (click)=\"dismissible && closeDrawer()\"\n ></div>\n}\n\n@if (cache || visible()) {\n <div\n [cdkTrapFocus]=\"visible()\"\n [cdkTrapFocusAutoCapture]=\"visible()\"\n [@visibilityChanged]\n class=\"drawer\"\n [class.drawer--open]=\"visible()\"\n [class.drawer--large-size]=\"largeSized\"\n [attr.role]=\"visible() ? 'dialog' : null\"\n [attr.aria-modal]=\"visible() ? true : null\"\n [attr.aria-labelledby]=\"headerTemplate ? null : titleId\"\n [attr.aria-label]=\"headerTemplate ? ariaLabel : null\"\n [attr.inert]=\"visible() ? null : ''\"\n [attr.aria-hidden]=\"visible() ? null : 'true'\"\n >\n <div class=\"drawer__header\">\n @if (headerTemplate) {\n <ng-template *ngTemplateOutlet=\"headerTemplate\"></ng-template>\n } @else {\n <h2\n [id]=\"titleId\"\n tabindex=\"-1\"\n class=\"drawer__header__title\"\n >\n {{ header }}\n </h2>\n }\n @if (closable) {\n <button\n type=\"button\"\n class=\"drawer__header__close\"\n [attr.aria-label]=\"'platform.angular_components.close' | translate\"\n (click)=\"closeDrawer()\"\n >\n <i\n class=\"fas fa-times\"\n [attr.aria-hidden]=\"true\"\n ></i>\n </button>\n }\n </div>\n <div class=\"drawer__body\">\n @if (bodyTemplate) {\n <ng-template [ngTemplateOutlet]=\"bodyTemplate\"></ng-template>\n } @else {\n <ng-content select=\":not(s-footer)\"></ng-content>\n }\n </div>\n @if (footerTemplate || footerComponent()) {\n <div class=\"drawer__footer\">\n @if (footerTemplate) {\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"></ng-template>\n } @else {\n <ng-content select=\"s-footer\"></ng-content>\n }\n </div>\n }\n </div>\n}\n\n", styles: [".backdrop{background-color:#00000080;height:100%;left:0;position:fixed;top:0;transition:opacity .3s;width:100%;z-index:998}.drawer{background-color:#fff;box-shadow:0 1px 5px #00000040;display:flex;flex-direction:column;height:100%;right:-100%;padding:1rem;position:fixed;top:0;transition:right .3s;width:100%;z-index:999}.drawer__header{border-bottom:1px solid #dedce5;display:flex;justify-content:space-between;padding-bottom:.75rem}.drawer__header__title{color:#212533;font-family:Inter,sans-serif;font-size:1rem;font-weight:400;margin:0;outline:none;text-transform:uppercase;-webkit-user-select:none;user-select:none}.drawer__header__close{background-color:transparent;border:none;color:#212533;cursor:pointer;font-size:1rem;padding:.5rem}.drawer__body{flex-grow:1;overflow:auto;padding:1rem .5rem}.drawer__footer{border-top:1px solid #dedce5;padding-top:.75rem}.drawer--open{right:0}@media (min-width: 768px){.drawer{width:75%}}@media (min-width: 992px){.drawer{width:50%}}\n"] }]
174
194
  }], propDecorators: { templates: [{
175
195
  type: ContentChildren,
176
196
  args: [TemplateDirective]
@@ -182,6 +202,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
182
202
  type: Input
183
203
  }], header: [{
184
204
  type: Input
205
+ }], ariaLabel: [{
206
+ type: Input
185
207
  }], largeSized: [{
186
208
  type: Input
187
209
  }], cache: [{
@@ -189,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
189
211
  }], registerConfirmClose: [{
190
212
  type: Input
191
213
  }] } });
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9kcmF3ZXIvc3JjL2xpYi9kcmF3ZXIvZHJhd2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9kcmF3ZXIvc3JjL2xpYi9kcmF3ZXIvZHJhd2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUVILFNBQVMsRUFDVCxZQUFZLEVBQ1osZUFBZSxFQUNmLE1BQU0sRUFDTixLQUFLLEVBQ0wsS0FBSyxHQUlSLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQzVHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNoRixPQUFPLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7QUFFdkY7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBa0NILE1BQU0sT0FBTyxlQUFlO0lBRWpCLFNBQVMsR0FBd0MsSUFBSSxDQUFDO0lBRTdEOzs7O09BSUc7SUFDSSxPQUFPLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBRXZDOzs7O09BSUc7SUFFSSxR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LFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7NkJBQzdELENBQUM7eUJBQ0wsQ0FBQztxQkFDTCxjQUNXLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQzs4QkFJbEMsU0FBUztzQkFEZixlQUFlO3VCQUFDLGlCQUFpQjtnQkFnQjNCLFFBQVE7c0JBRGQsS0FBSztnQkFTQyxXQUFXO3NCQURqQixLQUFLO2dCQVNDLGFBQWE7c0JBRG5CLEtBQUs7Z0JBUUMsTUFBTTtzQkFEWixLQUFLO2dCQVNDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBVUMsS0FBSztzQkFEWCxLQUFLO2dCQVFLLG9CQUFvQjtzQkFEOUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDZGtUcmFwRm9jdXMgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBDb21wb25lbnQsXG4gICAgY29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBlZmZlY3QsXG4gICAgSW5wdXQsXG4gICAgbW9kZWwsXG4gICAgT25EZXN0cm95LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBERVBSRUNBVEVEX0NPTkZJRyB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvY29tbW9uL2RlcHJlY2F0ZWQtc2VsZWN0b3InO1xuaW1wb3J0IHsgRGVwcmVjYXRlZFNlbGVjdG9yRGlyZWN0aXZlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9jb21tb24vZGVwcmVjYXRlZC1zZWxlY3Rvcic7XG5pbXBvcnQgeyBGb290ZXJDb21wb25lbnQgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3N0cnVjdHVyZSc7XG5pbXBvcnQgeyBUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdGVtcGxhdGUnO1xuaW1wb3J0IHsgZGlzYWJsZVNjcm9sbCwgZW5hYmxlU2Nyb2xsIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy91dGlscyc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbXBvbmVudGUgZGUgcGFpbmVsIGxhdGVyYWwgZGVzbGl6YW50ZSAoZHJhd2VyKSBxdWUgYXBhcmVjZSBzb2JyZSBvIGNvbnRlw7pkb1xuICogdmluZG8gZG8gbGFkbyBkaXJlaXRvIGRhIHRlbGEuIFN1cG9ydGEgdGVtcGxhdGVzIGN1c3RvbWl6YWRvcyBwYXJhIGNhYmXDp2FsaG8sIGNvcnBvIGUgcm9kYXDDqVxuICogdmlhIGBzVGVtcGxhdGVgLCBibG9xdWVpbyBkZSBzY3JvbGwgYXV0b23DoXRpY28gZSBjb25maXJtYcOnw6NvIGRlIGZlY2hhbWVudG8uXG4gKlxuICogVGFtYsOpbSByZXNwb25kZSBhbyBzZWxldG9yIGxlZ2FkbyBgcy1zaWRlYmFyYC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogPHMtZHJhd2VyIFsodmlzaWJsZSldPVwiZHJhd2VyT3BlblwiIGhlYWRlcj1cIkZpbHRyb3NcIiBbY2xvc2FibGVdPVwidHJ1ZVwiPlxuICogICA8bmctdGVtcGxhdGUgc1RlbXBsYXRlPVwiYm9keVwiPkNvbnRlw7pkbzwvbmctdGVtcGxhdGU+XG4gKiA8L3MtZHJhd2VyPlxuICogYGBgXG4gKlxuICogQGNhdGVnb3J5IE92ZXJsYXlcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzLWRyYXdlciwgcy1zaWRlYmFyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHJhd2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kcmF3ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgICcoZG9jdW1lbnQ6a2V5ZG93bi5lc2NhcGUpJzogJ2hhbmRsZUVzY2FwZSgpJyxcbiAgICB9LFxuICAgIGhvc3REaXJlY3RpdmVzOiBbRGVwcmVjYXRlZFNlbGVjdG9yRGlyZWN0aXZlXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogREVQUkVDQVRFRF9DT05GSUcsXG4gICAgICAgICAgICB1c2VWYWx1ZToge1xuICAgICAgICAgICAgICAgIG9sZFNlbGVjdG9yOiAncy1zaWRlYmFyJyxcbiAgICAgICAgICAgICAgICBuZXdTZWxlY3RvcjogJ3MtZHJhd2VyJyxcbiAgICAgICAgICAgICAgICByZW1vdmFsVmVyc2lvbjogJzIwLjAuMCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgYW5pbWF0aW9uczogW1xuICAgICAgICB0cmlnZ2VyKCd2aXNpYmlsaXR5Q2hhbmdlZCcsIFtcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgICAgICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMTAwJSknIH0pLFxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzMwMG1zJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyB9KSksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgICAgICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pLFxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzMwMG1zJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJyB9KSksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgXSksXG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDZGtUcmFwRm9jdXMsIE5nVGVtcGxhdGVPdXRsZXRdLFxufSlcbmV4cG9ydCBjbGFzcyBEcmF3ZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICAgIEBDb250ZW50Q2hpbGRyZW4oVGVtcGxhdGVEaXJlY3RpdmUpXG4gICAgcHVibGljIHRlbXBsYXRlczogUXVlcnlMaXN0PFRlbXBsYXRlRGlyZWN0aXZlPiB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIENvbnRyb2xhIGEgdmlzaWJpbGlkYWRlIGRvIGRyYXdlci4gU3Vwb3J0YSB0d28td2F5IGJpbmRpbmcgdmlhIGBbKHZpc2libGUpXWAuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIHB1YmxpYyB2aXNpYmxlID0gbW9kZWw8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFF1YW5kbyBgdHJ1ZWAsIGV4aWJlIG8gYm90w6NvIGRlIGZlY2hhciAoWCkgbm8gY2FiZcOnYWxobyBkbyBkcmF3ZXIuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY2xvc2FibGUgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFF1YW5kbyBgdHJ1ZWAsIGNsaWNhciBubyBiYWNrZHJvcCAow6FyZWEgZXNjdXJlY2lkYSBmb3JhIGRvIGRyYXdlcikgZmVjaGEgbyBwYWluZWwuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZGlzbWlzc2libGUgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFF1YW5kbyBgdHJ1ZWAsIHByZXNzaW9uYXIgYSB0ZWNsYSBFc2NhcGUgZmVjaGEgbyBkcmF3ZXIuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY2xvc2VPbkVzY2FwZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gVGV4dG8gZXhpYmlkbyBubyBjYWJlw6dhbGhvIHBhZHLDo28gZG8gZHJhd2VyLlxuICAgICAqIFBvZGUgc2VyIHN1YnN0aXR1w61kbyBwb3IgdW0gdGVtcGxhdGUgY3VzdG9taXphZG8gdmlhIGBzVGVtcGxhdGU9XCJoZWFkZXJcImAuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaGVhZGVyPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFF1YW5kbyBgdHJ1ZWAsIGF1bWVudGEgYSBsYXJndXJhIGRvIGRyYXdlciBwYXJhIGFjb21vZGFyIG1haXMgY29udGXDumRvLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBsYXJnZVNpemVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gUXVhbmRvIGB0cnVlYCwgbWFudMOpbSBvIGNvbnRlw7pkbyBkbyBkcmF3ZXIgbm8gRE9NIG1lc21vIHF1YW5kbyBvY3VsdG8sXG4gICAgICogcHJlc2VydmFuZG8gbyBlc3RhZG8gaW50ZXJubyBkb3MgY29tcG9uZW50ZXMgZmlsaG9zLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBjYWNoZSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEZ1bsOnw6NvIGRlIGNvbmZpcm1hw6fDo28gY2hhbWFkYSBhbnRlcyBkZSBmZWNoYXIgbyBkcmF3ZXIuXG4gICAgICogUXVhbmRvIHJldG9ybmFyIGBmYWxzZWAsIG8gZmVjaGFtZW50byDDqSBibG9xdWVhZG8uIMOadGlsIHBhcmEgdmFsaWRhciBmb3JtdWzDoXJpb3MgbsOjbyBzYWx2b3MuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IHJlZ2lzdGVyQ29uZmlybUNsb3NlKGZuOiAoKSA9PiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2NvbmZpcm1DbG9zZSA9IGZuO1xuICAgIH1cblxuICAgIHB1YmxpYyBoZWFkZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcbiAgICBwdWJsaWMgYm9keVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IG51bGwgPSBudWxsO1xuICAgIHB1YmxpYyBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBmb290ZXJDb21wb25lbnQgPSBjb250ZW50Q2hpbGQoRm9vdGVyQ29tcG9uZW50KTtcblxuICAgIHByaXZhdGUgX2NvbmZpcm1DbG9zZSA9ICgpID0+IHRydWU7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpc2libGVFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgICAgICBjb25zdCB2aXNpYmxlID0gdGhpcy52aXNpYmxlKCk7XG4gICAgICAgIGlmICh2aXNpYmxlKSB7XG4gICAgICAgICAgICBkaXNhYmxlU2Nyb2xsKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBlbmFibGVTY3JvbGwoKTtcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZ2V0VGVtcGxhdGVzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZpc2libGVFZmZlY3QuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbG9zZURyYXdlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX2NvbmZpcm1DbG9zZSgpKSB7XG4gICAgICAgICAgICB0aGlzLnZpc2libGUuc2V0KGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBoYW5kbGVFc2NhcGUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNsb3NlT25Fc2NhcGUpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VEcmF3ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX2dldEN1c3RvbVRlbXBsYXRlKHR5cGU6IHN0cmluZyk6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGVtcGxhdGVzPy5maW5kKCh0ZW1wbGF0ZTogVGVtcGxhdGVEaXJlY3RpdmUpID0+IHRlbXBsYXRlLnR5cGUgPT09IHR5cGUpPy50ZW1wbGF0ZSA/PyBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0SGVhZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldEN1c3RvbVRlbXBsYXRlKCdoZWFkZXInKSA/PyBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Qm9keVRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRDdXN0b21UZW1wbGF0ZSgnYm9keScpID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGb290ZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0Q3VzdG9tVGVtcGxhdGUoJ2Zvb3RlcicpID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZ2V0VGVtcGxhdGVzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhlYWRlclRlbXBsYXRlID0gdGhpcy5nZXRIZWFkZXJUZW1wbGF0ZSgpO1xuICAgICAgICB0aGlzLmJvZHlUZW1wbGF0ZSA9IHRoaXMuZ2V0Qm9keVRlbXBsYXRlKCk7XG4gICAgICAgIHRoaXMuZm9vdGVyVGVtcGxhdGUgPSB0aGlzLmdldEZvb3RlclRlbXBsYXRlKCk7XG4gICAgfVxufVxuIiwiQGlmICh2aXNpYmxlKCkpIHtcbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYmFja2Ryb3BcIlxuICAgICAgICAoY2xpY2spPVwiZGlzbWlzc2libGUgJiYgY2xvc2VEcmF3ZXIoKVwiXG4gICAgPjwvZGl2PlxufVxuXG5AaWYgKGNhY2hlIHx8IHZpc2libGUoKSkge1xuICAgIDxkaXZcbiAgICAgICAgY2RrVHJhcEZvY3VzXG4gICAgICAgIFtjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZV09XCJ2aXNpYmxlKClcIlxuICAgICAgICBbQHZpc2liaWxpdHlDaGFuZ2VkXVxuICAgICAgICBjbGFzcz1cImRyYXdlclwiXG4gICAgICAgIFtjbGFzcy5kcmF3ZXItLW9wZW5dPVwidmlzaWJsZSgpXCJcbiAgICAgICAgW2NsYXNzLmRyYXdlci0tbGFyZ2Utc2l6ZV09XCJsYXJnZVNpemVkXCJcbiAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkcmF3ZXJfX2hlYWRlclwiPlxuICAgICAgICAgICAgQGlmIChoZWFkZXJUZW1wbGF0ZSkge1xuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlclRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZHJhd2VyX19oZWFkZXJfX3RpdGxlXCI+e3sgaGVhZGVyIH19PC9zcGFuPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChjbG9zYWJsZSkge1xuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkcmF3ZXJfX2hlYWRlcl9fY2xvc2UgZmFzIGZhLXRpbWVzXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlRHJhd2VyKClcIlxuICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkcmF3ZXJfX2JvZHlcIj5cbiAgICAgICAgICAgIEBpZiAoYm9keVRlbXBsYXRlKSB7XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJvZHlUZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCI6bm90KHMtZm9vdGVyKVwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIEBpZiAoZm9vdGVyVGVtcGxhdGUgfHwgZm9vdGVyQ29tcG9uZW50KCkpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcmF3ZXJfX2Zvb3RlclwiPlxuICAgICAgICAgICAgICAgIEBpZiAoZm9vdGVyVGVtcGxhdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwicy1mb290ZXJcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn1cbiJdfQ==
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9kcmF3ZXIvc3JjL2xpYi9kcmF3ZXIvZHJhd2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9kcmF3ZXIvc3JjL2xpYi9kcmF3ZXIvZHJhd2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUVILFNBQVMsRUFDVCxZQUFZLEVBQ1osZUFBZSxFQUNmLE1BQU0sRUFDTixLQUFLLEVBQ0wsS0FBSyxHQUlSLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMvSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7O0FBRXhGOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQWtDSCxNQUFNLE9BQU8sZUFBZTtJQUVqQixTQUFTLEdBQXdDLElBQUksQ0FBQztJQUU3RDs7OztPQUlHO0lBQ0ksT0FBTyxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUV2Qzs7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aWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IENka1RyYXBGb2N1cyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBjb250ZW50Q2hpbGQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIGVmZmVjdCxcbiAgICBJbnB1dCxcbiAgICBtb2RlbCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgUXVlcnlMaXN0LFxuICAgIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBERVBSRUNBVEVEX0NPTkZJRywgRGVwcmVjYXRlZFNlbGVjdG9yRGlyZWN0aXZlIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy9jb21tb24vZGVwcmVjYXRlZC1zZWxlY3Rvcic7XG5pbXBvcnQgeyBGb290ZXJDb21wb25lbnQgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3N0cnVjdHVyZSc7XG5pbXBvcnQgeyBUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdGVtcGxhdGUnO1xuaW1wb3J0IHsgY3JlYXRlU2Nyb2xsTG9jaywgcmFuZG9tSGFzaCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdXRpbHMnO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBDb21wb25lbnRlIGRlIHBhaW5lbCBsYXRlcmFsIGRlc2xpemFudGUgKGRyYXdlcikgcXVlIGFwYXJlY2Ugc29icmUgbyBjb250ZcO6ZG9cbiAqIHZpbmRvIGRvIGxhZG8gZGlyZWl0byBkYSB0ZWxhLiBTdXBvcnRhIHRlbXBsYXRlcyBjdXN0b21pemFkb3MgcGFyYSBjYWJlw6dhbGhvLCBjb3JwbyBlIHJvZGFww6lcbiAqIHZpYSBgc1RlbXBsYXRlYCwgYmxvcXVlaW8gZGUgc2Nyb2xsIGF1dG9tw6F0aWNvIGUgY29uZmlybWHDp8OjbyBkZSBmZWNoYW1lbnRvLlxuICpcbiAqIFRhbWLDqW0gcmVzcG9uZGUgYW8gc2VsZXRvciBsZWdhZG8gYHMtc2lkZWJhcmAuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDxzLWRyYXdlciBbKHZpc2libGUpXT1cImRyYXdlck9wZW5cIiBoZWFkZXI9XCJGaWx0cm9zXCIgW2Nsb3NhYmxlXT1cInRydWVcIj5cbiAqICAgPG5nLXRlbXBsYXRlIHNUZW1wbGF0ZT1cImJvZHlcIj5Db250ZcO6ZG88L25nLXRlbXBsYXRlPlxuICogPC9zLWRyYXdlcj5cbiAqIGBgYFxuICpcbiAqIEBjYXRlZ29yeSBPdmVybGF5XG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncy1kcmF3ZXIsIHMtc2lkZWJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RyYXdlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHJhd2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgaG9zdDoge1xuICAgICAgICAnKGRvY3VtZW50OmtleWRvd24uZXNjYXBlKSc6ICdoYW5kbGVFc2NhcGUoKScsXG4gICAgfSxcbiAgICBob3N0RGlyZWN0aXZlczogW0RlcHJlY2F0ZWRTZWxlY3RvckRpcmVjdGl2ZV0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IERFUFJFQ0FURURfQ09ORklHLFxuICAgICAgICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgICAgICAgICBvbGRTZWxlY3RvcjogJ3Mtc2lkZWJhcicsXG4gICAgICAgICAgICAgICAgbmV3U2VsZWN0b3I6ICdzLWRyYXdlcicsXG4gICAgICAgICAgICAgICAgcmVtb3ZhbFZlcnNpb246ICcyMC4wLjAnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICBdLFxuICAgIGFuaW1hdGlvbnM6IFtcbiAgICAgICAgdHJpZ2dlcigndmlzaWJpbGl0eUNoYW5nZWQnLCBbXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgICAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJyB9KSxcbiAgICAgICAgICAgICAgICBhbmltYXRlKCczMDBtcycsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwKScgfSkpLFxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXG4gICAgICAgICAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyB9KSxcbiAgICAgICAgICAgICAgICBhbmltYXRlKCczMDBtcycsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSkpLFxuICAgICAgICAgICAgXSksXG4gICAgICAgIF0pLFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ2RrVHJhcEZvY3VzLCBOZ1RlbXBsYXRlT3V0bGV0LCBUcmFuc2xhdGVNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBEcmF3ZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICAgIEBDb250ZW50Q2hpbGRyZW4oVGVtcGxhdGVEaXJlY3RpdmUpXG4gICAgcHVibGljIHRlbXBsYXRlczogUXVlcnlMaXN0PFRlbXBsYXRlRGlyZWN0aXZlPiB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIENvbnRyb2xhIGEgdmlzaWJpbGlkYWRlIGRvIGRyYXdlci4gU3Vwb3J0YSB0d28td2F5IGJpbmRpbmcgdmlhIGBbKHZpc2libGUpXWAuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIHB1YmxpYyB2aXNpYmxlID0gbW9kZWw8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFF1YW5kbyBgdHJ1ZWAsIGV4aWJlIG8gYm90w6NvIGRlIGZlY2hhciAoWCkgbm8gY2FiZcOnYWxobyBkbyBkcmF3ZXIuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY2xvc2FibGUgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFF1YW5kbyBgdHJ1ZWAsIGNsaWNhciBubyBiYWNrZHJvcCAow6FyZWEgZXNjdXJlY2lkYSBmb3JhIGRvIGRyYXdlcikgZmVjaGEgbyBwYWluZWwuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZGlzbWlzc2libGUgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFF1YW5kbyBgdHJ1ZWAsIHByZXNzaW9uYXIgYSB0ZWNsYSBFc2NhcGUgZmVjaGEgbyBkcmF3ZXIuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY2xvc2VPbkVzY2FwZSA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gVGV4dG8gZXhpYmlkbyBubyBjYWJlw6dhbGhvIHBhZHLDo28gZG8gZHJhd2VyLlxuICAgICAqIFBvZGUgc2VyIHN1YnN0aXR1w61kbyBwb3IgdW0gdGVtcGxhdGUgY3VzdG9taXphZG8gdmlhIGBzVGVtcGxhdGU9XCJoZWFkZXJcImAuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaGVhZGVyPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIE5vbWUgYWNlc3PDrXZlbCBkbyBkcmF3ZXIsIHVzYWRvIHF1YW5kbyBvIGNhYmXDp2FsaG8gw6kgdW0gdGVtcGxhdGVcbiAgICAgKiBjdXN0b21pemFkbyB2aWEgYHNUZW1wbGF0ZT1cImhlYWRlclwiYCAobmVzc2UgY2FzbyBuw6NvIGjDoSBgaGVhZGVyYCBwYXJhIGFzc29jaWFyXG4gICAgICogdmlhIGBhcmlhLWxhYmVsbGVkYnlgKS4gSWdub3JhZG8gcXVhbmRvIGBoZWFkZXJgIGVzdMOhIGRlZmluaWRvLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGFyaWFMYWJlbD86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBRdWFuZG8gYHRydWVgLCBhdW1lbnRhIGEgbGFyZ3VyYSBkbyBkcmF3ZXIgcGFyYSBhY29tb2RhciBtYWlzIGNvbnRlw7pkby5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbGFyZ2VTaXplZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFF1YW5kbyBgdHJ1ZWAsIG1hbnTDqW0gbyBjb250ZcO6ZG8gZG8gZHJhd2VyIG5vIERPTSBtZXNtbyBxdWFuZG8gb2N1bHRvLFxuICAgICAqIHByZXNlcnZhbmRvIG8gZXN0YWRvIGludGVybm8gZG9zIGNvbXBvbmVudGVzIGZpbGhvcy5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY2FjaGUgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBGdW7Dp8OjbyBkZSBjb25maXJtYcOnw6NvIGNoYW1hZGEgYW50ZXMgZGUgZmVjaGFyIG8gZHJhd2VyLlxuICAgICAqIFF1YW5kbyByZXRvcm5hciBgZmFsc2VgLCBvIGZlY2hhbWVudG8gw6kgYmxvcXVlYWRvLiDDmnRpbCBwYXJhIHZhbGlkYXIgZm9ybXVsw6FyaW9zIG7Do28gc2Fsdm9zLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCByZWdpc3RlckNvbmZpcm1DbG9zZShmbjogKCkgPT4gYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9jb25maXJtQ2xvc2UgPSBmbjtcbiAgICB9XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIElkIMO6bmljbyB1c2FkbyBwYXJhIGFzc29jaWFyIG8gdMOtdHVsbyBhbyBwYWluZWwgdmlhIGBhcmlhLWxhYmVsbGVkYnlgLiAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0aXRsZUlkID0gcmFuZG9tSGFzaCgnZHJhd2VyLXRpdGxlJyk7XG5cbiAgICBwdWJsaWMgaGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgbnVsbCA9IG51bGw7XG4gICAgcHVibGljIGJvZHlUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsID0gbnVsbDtcbiAgICBwdWJsaWMgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZm9vdGVyQ29tcG9uZW50ID0gY29udGVudENoaWxkKEZvb3RlckNvbXBvbmVudCk7XG5cbiAgICBwcml2YXRlIF9jb25maXJtQ2xvc2UgPSAoKSA9PiB0cnVlO1xuXG4gICAgcHJpdmF0ZSBfZWxlbWVudFRvUmVmb2N1czogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3Njcm9sbExvY2sgPSBjcmVhdGVTY3JvbGxMb2NrKCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpc2libGVFZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgICAgICBjb25zdCB2aXNpYmxlID0gdGhpcy52aXNpYmxlKCk7XG4gICAgICAgIGlmICh2aXNpYmxlKSB7XG4gICAgICAgICAgICB0aGlzLl9zY3JvbGxMb2NrLmxvY2soKTtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRUb1JlZm9jdXMgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50IHwgbnVsbDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3Njcm9sbExvY2sudW5sb2NrKCk7XG4gICAgICAgICAgICB0aGlzLl9yZXN0b3JlRm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZ2V0VGVtcGxhdGVzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZpc2libGVFZmZlY3QuZGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9zY3JvbGxMb2NrLnVubG9jaygpO1xuICAgICAgICB0aGlzLl9yZXN0b3JlRm9jdXMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2VEcmF3ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9jb25maXJtQ2xvc2UoKSkge1xuICAgICAgICAgICAgdGhpcy52aXNpYmxlLnNldChmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlRXNjYXBlKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMudmlzaWJsZSgpIHx8ICF0aGlzLmNsb3NlT25Fc2NhcGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2xvc2VEcmF3ZXIoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9yZXN0b3JlRm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnRUb1JlZm9jdXM/LmZvY3VzKCk7XG4gICAgICAgIHRoaXMuX2VsZW1lbnRUb1JlZm9jdXMgPSBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dldEN1c3RvbVRlbXBsYXRlKHR5cGU6IHN0cmluZyk6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGVtcGxhdGVzPy5maW5kKCh0ZW1wbGF0ZTogVGVtcGxhdGVEaXJlY3RpdmUpID0+IHRlbXBsYXRlLnR5cGUgPT09IHR5cGUpPy50ZW1wbGF0ZSA/PyBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0SGVhZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldEN1c3RvbVRlbXBsYXRlKCdoZWFkZXInKSA/PyBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Qm9keVRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRDdXN0b21UZW1wbGF0ZSgnYm9keScpID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGb290ZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0Q3VzdG9tVGVtcGxhdGUoJ2Zvb3RlcicpID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZ2V0VGVtcGxhdGVzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhlYWRlclRlbXBsYXRlID0gdGhpcy5nZXRIZWFkZXJUZW1wbGF0ZSgpO1xuICAgICAgICB0aGlzLmJvZHlUZW1wbGF0ZSA9IHRoaXMuZ2V0Qm9keVRlbXBsYXRlKCk7XG4gICAgICAgIHRoaXMuZm9vdGVyVGVtcGxhdGUgPSB0aGlzLmdldEZvb3RlclRlbXBsYXRlKCk7XG4gICAgfVxufVxuIiwiQGlmICh2aXNpYmxlKCkpIHtcbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYmFja2Ryb3BcIlxuICAgICAgICAoY2xpY2spPVwiZGlzbWlzc2libGUgJiYgY2xvc2VEcmF3ZXIoKVwiXG4gICAgPjwvZGl2PlxufVxuXG5AaWYgKGNhY2hlIHx8IHZpc2libGUoKSkge1xuICAgIDxkaXZcbiAgICAgICAgW2Nka1RyYXBGb2N1c109XCJ2aXNpYmxlKClcIlxuICAgICAgICBbY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmVdPVwidmlzaWJsZSgpXCJcbiAgICAgICAgW0B2aXNpYmlsaXR5Q2hhbmdlZF1cbiAgICAgICAgY2xhc3M9XCJkcmF3ZXJcIlxuICAgICAgICBbY2xhc3MuZHJhd2VyLS1vcGVuXT1cInZpc2libGUoKVwiXG4gICAgICAgIFtjbGFzcy5kcmF3ZXItLWxhcmdlLXNpemVdPVwibGFyZ2VTaXplZFwiXG4gICAgICAgIFthdHRyLnJvbGVdPVwidmlzaWJsZSgpID8gJ2RpYWxvZycgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1tb2RhbF09XCJ2aXNpYmxlKCkgPyB0cnVlIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJoZWFkZXJUZW1wbGF0ZSA/IG51bGwgOiB0aXRsZUlkXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJoZWFkZXJUZW1wbGF0ZSA/IGFyaWFMYWJlbCA6IG51bGxcIlxuICAgICAgICBbYXR0ci5pbmVydF09XCJ2aXNpYmxlKCkgPyBudWxsIDogJydcIlxuICAgICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCJ2aXNpYmxlKCkgPyBudWxsIDogJ3RydWUnXCJcbiAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkcmF3ZXJfX2hlYWRlclwiPlxuICAgICAgICAgICAgQGlmIChoZWFkZXJUZW1wbGF0ZSkge1xuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlclRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxoMlxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwidGl0bGVJZFwiXG4gICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImRyYXdlcl9faGVhZGVyX190aXRsZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBoZWFkZXIgfX1cbiAgICAgICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChjbG9zYWJsZSkge1xuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZHJhd2VyX19oZWFkZXJfX2Nsb3NlXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCIncGxhdGZvcm0uYW5ndWxhcl9jb21wb25lbnRzLmNsb3NlJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjbG9zZURyYXdlcigpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZhcyBmYS10aW1lc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvaT5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkcmF3ZXJfX2JvZHlcIj5cbiAgICAgICAgICAgIEBpZiAoYm9keVRlbXBsYXRlKSB7XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJvZHlUZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCI6bm90KHMtZm9vdGVyKVwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIEBpZiAoZm9vdGVyVGVtcGxhdGUgfHwgZm9vdGVyQ29tcG9uZW50KCkpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcmF3ZXJfX2Zvb3RlclwiPlxuICAgICAgICAgICAgICAgIEBpZiAoZm9vdGVyVGVtcGxhdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwicy1mb290ZXJcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn1cblxuIl19
@@ -5,7 +5,7 @@ import * as i0 from "@angular/core";
5
5
  export class DrawerModule {
6
6
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DrawerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
7
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: DrawerModule, imports: [DrawerComponent], exports: [DrawerComponent, TemplateModule] });
8
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DrawerModule, imports: [TemplateModule] });
8
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DrawerModule, imports: [DrawerComponent, TemplateModule] });
9
9
  }
10
10
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DrawerModule, decorators: [{
11
11
  type: NgModule,
@@ -14,4 +14,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
14
14
  exports: [DrawerComponent, TemplateModule],
15
15
  }]
16
16
  }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9kcmF3ZXIvc3JjL2xpYi9kcmF3ZXIvZHJhd2VyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUU3RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBTXJELE1BQU0sT0FBTyxZQUFZO3dHQUFaLFlBQVk7eUdBQVosWUFBWSxZQUhYLGVBQWUsYUFDZixlQUFlLEVBQUUsY0FBYzt5R0FFaEMsWUFBWSxZQUZNLGNBQWM7OzRGQUVoQyxZQUFZO2tCQUp4QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDMUIsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFLGNBQWMsQ0FBQztpQkFDN0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBUZW1wbGF0ZU1vZHVsZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdGVtcGxhdGUnO1xuXG5pbXBvcnQgeyBEcmF3ZXJDb21wb25lbnQgfSBmcm9tICcuL2RyYXdlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtEcmF3ZXJDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtEcmF3ZXJDb21wb25lbnQsIFRlbXBsYXRlTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJhd2VyTW9kdWxlIHt9XG4iXX0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9kcmF3ZXIvc3JjL2xpYi9kcmF3ZXIvZHJhd2VyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUU3RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBTXJELE1BQU0sT0FBTyxZQUFZO3dHQUFaLFlBQVk7eUdBQVosWUFBWSxZQUhYLGVBQWUsYUFDZixlQUFlLEVBQUUsY0FBYzt5R0FFaEMsWUFBWSxZQUhYLGVBQWUsRUFDRSxjQUFjOzs0RkFFaEMsWUFBWTtrQkFKeEIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7b0JBQzFCLE9BQU8sRUFBRSxDQUFDLGVBQWUsRUFBRSxjQUFjLENBQUM7aUJBQzdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVGVtcGxhdGVNb2R1bGUgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3RlbXBsYXRlJztcblxuaW1wb3J0IHsgRHJhd2VyQ29tcG9uZW50IH0gZnJvbSAnLi9kcmF3ZXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbRHJhd2VyQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRHJhd2VyQ29tcG9uZW50LCBUZW1wbGF0ZU1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIERyYXdlck1vZHVsZSB7fVxuIl19