@energycap/components 0.44.2-github-actions.20250919-1816 → 0.44.2-github-actions.20250919-1421

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 (184) hide show
  1. package/README.md +188 -188
  2. package/esm2022/lib/components.module.mjs +1 -1
  3. package/esm2022/lib/controls/banner/banner.component.mjs +3 -3
  4. package/esm2022/lib/controls/button/button.component.mjs +3 -3
  5. package/esm2022/lib/controls/button/copy-button-base.directive.mjs +1 -1
  6. package/esm2022/lib/controls/button/copy-button.directive.mjs +1 -1
  7. package/esm2022/lib/controls/button/copy-table-button.directive.mjs +1 -1
  8. package/esm2022/lib/controls/calendar/calendar-item.component.mjs +1 -1
  9. package/esm2022/lib/controls/calendar/calendar.component.mjs +3 -3
  10. package/esm2022/lib/controls/calendar/calendar.types.mjs +1 -1
  11. package/esm2022/lib/controls/checkbox/checkbox.component.mjs +3 -3
  12. package/esm2022/lib/controls/collapsible-toggle/collapsible-toggle.component.mjs +1 -1
  13. package/esm2022/lib/controls/combobox/combobox.component.mjs +3 -3
  14. package/esm2022/lib/controls/date-input/date-input-selection-strategies/date-input-selection-strategy-base.mjs +1 -1
  15. package/esm2022/lib/controls/date-input/date-input-selection-strategies/day-selection-strategy.mjs +1 -1
  16. package/esm2022/lib/controls/date-input/date-input-selection-strategies/last-28-days-selection-strategy.mjs +1 -1
  17. package/esm2022/lib/controls/date-input/date-input-selection-strategies/last-7-days-selection-strategy.mjs +1 -1
  18. package/esm2022/lib/controls/date-input/date-input-selection-strategies/month-selection-strategy.mjs +1 -1
  19. package/esm2022/lib/controls/date-input/date-input-selection-strategies/quarter-selection-strategy.mjs +1 -1
  20. package/esm2022/lib/controls/date-input/date-input-selection-strategies/range-selection-strategy.mjs +1 -1
  21. package/esm2022/lib/controls/date-input/date-input-selection-strategies/year-selection-strategy.mjs +1 -1
  22. package/esm2022/lib/controls/date-input/date-input.component.mjs +3 -3
  23. package/esm2022/lib/controls/date-input/date-input.types.mjs +1 -1
  24. package/esm2022/lib/controls/dropdown/dropdown.component.mjs +3 -3
  25. package/esm2022/lib/controls/file-upload/file-upload.component.mjs +3 -3
  26. package/esm2022/lib/controls/form-control/form-control.component.mjs +3 -3
  27. package/esm2022/lib/controls/form-control-base.mjs +1 -1
  28. package/esm2022/lib/controls/form-control-label/form-control-label.component.mjs +3 -3
  29. package/esm2022/lib/controls/form-group/form-group.component.mjs +3 -3
  30. package/esm2022/lib/controls/help-popover/help-popover.component.mjs +3 -3
  31. package/esm2022/lib/controls/item-picker/item-picker.component.mjs +3 -3
  32. package/esm2022/lib/controls/link-button/link-button.component.mjs +1 -1
  33. package/esm2022/lib/controls/menu/menu.component.mjs +3 -3
  34. package/esm2022/lib/controls/navigation/link-item.mjs +1 -1
  35. package/esm2022/lib/controls/navigation/nav-group.mjs +1 -1
  36. package/esm2022/lib/controls/navigation/nav-item-active.directive.mjs +1 -1
  37. package/esm2022/lib/controls/navigation/nav-item.mjs +1 -1
  38. package/esm2022/lib/controls/numericbox/numericbox.component.mjs +3 -3
  39. package/esm2022/lib/controls/popover/popover.component.mjs +3 -3
  40. package/esm2022/lib/controls/radio-button/radio-button-option.mjs +1 -1
  41. package/esm2022/lib/controls/radio-button/radio-button.component.mjs +3 -3
  42. package/esm2022/lib/controls/select/select.component.mjs +3 -3
  43. package/esm2022/lib/controls/tabs/tabs.component.mjs +3 -3
  44. package/esm2022/lib/controls/textbox/textbox.component.mjs +3 -3
  45. package/esm2022/lib/core/cache.service.mjs +1 -1
  46. package/esm2022/lib/core/custom-validators.mjs +1 -1
  47. package/esm2022/lib/core/date-time-helper.mjs +1 -1
  48. package/esm2022/lib/core/error.service.mjs +1 -1
  49. package/esm2022/lib/core/router-helper.service.mjs +1 -1
  50. package/esm2022/lib/core/scroll.service.mjs +1 -1
  51. package/esm2022/lib/core/telemetry-tracker.service.mjs +1 -1
  52. package/esm2022/lib/core/telemetry.service.mjs +1 -1
  53. package/esm2022/lib/core/validation-message.service.mjs +1 -1
  54. package/esm2022/lib/core/validation-patterns.mjs +1 -1
  55. package/esm2022/lib/core/window.service.mjs +1 -1
  56. package/esm2022/lib/display/app-bar/app-bar.component.mjs +3 -3
  57. package/esm2022/lib/display/avatar/avatar.component.mjs +1 -1
  58. package/esm2022/lib/display/avatar/avatar.service.mjs +1 -1
  59. package/esm2022/lib/display/confirm/confirm.component.mjs +3 -3
  60. package/esm2022/lib/display/dialog/dialog-content.mjs +1 -1
  61. package/esm2022/lib/display/dialog/dialog-group/dialog-group.component.mjs +3 -3
  62. package/esm2022/lib/display/dialog/dialog-types.mjs +1 -1
  63. package/esm2022/lib/display/dialog/dialog.component.mjs +1 -1
  64. package/esm2022/lib/display/dialog/dialog.service.mjs +1 -1
  65. package/esm2022/lib/display/help/help-types.mjs +1 -1
  66. package/esm2022/lib/display/hierarchy/hierarchy-base.mjs +1 -1
  67. package/esm2022/lib/display/hierarchy/hierarchy-mocks.spec.mjs +1 -1
  68. package/esm2022/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.mjs +3 -3
  69. package/esm2022/lib/display/item-display/item-display.component.mjs +3 -3
  70. package/esm2022/lib/display/json-display/json-display.component.mjs +3 -3
  71. package/esm2022/lib/display/resizable/resizable-base.mjs +1 -1
  72. package/esm2022/lib/display/resizable/resizable.component.mjs +7 -7
  73. package/esm2022/lib/display/spinner/spinner.component.mjs +3 -3
  74. package/esm2022/lib/display/splash/splash.component.mjs +3 -3
  75. package/esm2022/lib/display/splash/splash.service.mjs +1 -1
  76. package/esm2022/lib/display/table/resizable-column.component.mjs +3 -3
  77. package/esm2022/lib/display/table/resizable-table.directive.mjs +1 -1
  78. package/esm2022/lib/display/table/searchable-table.component.mjs +3 -3
  79. package/esm2022/lib/display/table/table-detail-row.component.mjs +11 -11
  80. package/esm2022/lib/display/table/table-locked-column.component.mjs +1 -1
  81. package/esm2022/lib/display/table/table-master-header-row.component.mjs +1 -1
  82. package/esm2022/lib/display/table/table-master-row.component.mjs +3 -3
  83. package/esm2022/lib/display/table/table-pagination.component.mjs +3 -3
  84. package/esm2022/lib/display/table/table-selectable-row.component.mjs +3 -3
  85. package/esm2022/lib/display/table/table.component.mjs +3 -3
  86. package/esm2022/lib/display/tags/tag.mjs +1 -1
  87. package/esm2022/lib/display/tags/tags.component.mjs +3 -3
  88. package/esm2022/lib/display/toast/toast/toast.component.mjs +3 -3
  89. package/esm2022/lib/display/toast/toast-types.mjs +1 -1
  90. package/esm2022/lib/display/toast/toast.service.mjs +1 -1
  91. package/esm2022/lib/display/toast/toaster/toaster.component.mjs +3 -3
  92. package/esm2022/lib/display/tooltip/tooltip.component.mjs +3 -3
  93. package/esm2022/lib/display/tooltip/tooltip.service.mjs +1 -1
  94. package/esm2022/lib/display/tooltip-directive/tooltip.directive.mjs +1 -1
  95. package/esm2022/lib/display/tree/tree.component.mjs +3 -3
  96. package/esm2022/lib/display/view-overlay/view-overlay.component.mjs +3 -3
  97. package/esm2022/lib/shared/directives/click-area-for/click-area-for.directive.mjs +1 -1
  98. package/esm2022/lib/shared/directives/if-viewport-width/if-viewport-width.directive.mjs +1 -1
  99. package/esm2022/lib/shared/directives/keyboard-nav-container/keyboard-nav-container.directive.mjs +1 -1
  100. package/esm2022/lib/shared/directives/popup/popup-container.directive.mjs +1 -1
  101. package/esm2022/lib/shared/display/pipes/date-display-2.pipe.mjs +1 -1
  102. package/esm2022/lib/shared/display/pipes/date-display.pipe.mjs +1 -1
  103. package/esm2022/lib/shared/display/pipes/highlight-text.pipe.mjs +1 -1
  104. package/esm2022/lib/shared/display/pipes/relative-date.pipe.mjs +1 -1
  105. package/esm2022/lib/shared/display/pipes/row-count.pipe.mjs +1 -1
  106. package/esm2022/lib/shared/display/pipes/time-display.pipe.mjs +1 -1
  107. package/esm2022/lib/shared/display.mjs +1 -1
  108. package/esm2022/lib/shared/form-group.helper.mjs +1 -1
  109. package/esm2022/lib/shared/json-helper.mjs +1 -1
  110. package/esm2022/lib/shared/lodash-helper.mjs +1 -1
  111. package/esm2022/lib/shared/page/page-base/page-base.component.mjs +1 -1
  112. package/esm2022/lib/shared/page/page-statuses.mjs +1 -1
  113. package/esm2022/lib/shared/page/page-title/page-title.component.mjs +3 -3
  114. package/esm2022/lib/shared/page/page-view/page-view.component.mjs +3 -3
  115. package/esm2022/lib/shared/testing/copy-button-base-test-injector-factory.spec.mjs +1 -1
  116. package/esm2022/lib/shared/testing/hierarchy-base-test-injector-factory.spec.mjs +1 -1
  117. package/esm2022/lib/shared/testing/page-base-component-test-helper.spec.mjs +1 -1
  118. package/esm2022/lib/shared/testing/page-base-component-test-injector-factory.spec.mjs +1 -1
  119. package/esm2022/lib/shared/testing/public-mocks.spec.mjs +1 -1
  120. package/esm2022/lib/shared/testing/spy-factory.spec.mjs +1 -1
  121. package/esm2022/lib/shared/testing/translation-mocks.spec.mjs +1 -1
  122. package/esm2022/lib/shared/user-preference.service.mjs +1 -1
  123. package/esm2022/lib/shared/wizard/wizard-base/wizard-base.component.mjs +1 -1
  124. package/esm2022/lib/shared/wizard/wizard-buttons/wizard-buttons.component.mjs +3 -3
  125. package/esm2022/lib/shared/wizard/wizard-progress/wizard-progress.component.mjs +3 -3
  126. package/esm2022/public-api.mjs +1 -1
  127. package/fesm2022/energycap-components.mjs +104 -104
  128. package/fesm2022/energycap-components.mjs.map +1 -1
  129. package/package.json +1 -1
  130. package/schematics/collection.json +4 -4
  131. package/src/assets/images/favicon-ech.svg +14 -14
  132. package/src/assets/images/favicon-esa.svg +6 -6
  133. package/src/assets/images/favicon-eum.svg +13 -13
  134. package/src/assets/images/favicon-whitelabel.svg +4 -4
  135. package/src/assets/images/favicon.svg +12 -12
  136. package/src/assets/images/icon-carbonhub.svg +10 -10
  137. package/src/assets/images/icon-eum.svg +5 -5
  138. package/src/assets/images/icon-ucp.svg +12 -12
  139. package/src/assets/images/icon-wattics.svg +5 -5
  140. package/src/assets/images/icon.svg +11 -11
  141. package/src/assets/images/logo.svg +10 -10
  142. package/src/assets/images/splash-electric.svg +3 -3
  143. package/src/assets/images/splash-interval.svg +3 -3
  144. package/src/assets/images/splash-seedling.svg +11 -11
  145. package/src/assets/images/splash-water.svg +3 -3
  146. package/src/assets/locales/en_US.json +58 -58
  147. package/src/assets/scripts/unsupported-browser.js +17 -17
  148. package/src/styles/_base.scss +38 -38
  149. package/src/styles/_colors.scss +96 -96
  150. package/src/styles/_core.scss +3 -3
  151. package/src/styles/_functions.scss +114 -114
  152. package/src/styles/_global-variables.scss +229 -229
  153. package/src/styles/_icons.scss +23 -23
  154. package/src/styles/bootstrap/_grid.scss +33 -33
  155. package/src/styles/bootstrap/_reboot.scss +322 -322
  156. package/src/styles/components/_card.scss +21 -21
  157. package/src/styles/components/_link-icons.scss +37 -37
  158. package/src/styles/components/_splash.scss +150 -150
  159. package/src/styles/components/_tag.scss +18 -18
  160. package/src/styles/components/_unsupported-browsers.scss +23 -23
  161. package/src/styles/email/_email-base.scss +227 -227
  162. package/src/styles/email/email.scss +42 -42
  163. package/src/styles/index.scss +28 -28
  164. package/src/styles/mixins/_animations.scss +17 -17
  165. package/src/styles/mixins/_button-base.scss +185 -185
  166. package/src/styles/mixins/_card-base.scss +40 -40
  167. package/src/styles/mixins/_common.scss +51 -51
  168. package/src/styles/mixins/_dialog-base.scss +95 -95
  169. package/src/styles/mixins/_form-control-base.scss +640 -640
  170. package/src/styles/mixins/_login.scss +74 -74
  171. package/src/styles/mixins/_menu-base.scss +153 -153
  172. package/src/styles/mixins/_overlay-base.scss +32 -32
  173. package/src/styles/mixins/_resizable-base.scss +57 -57
  174. package/src/styles/mixins/_spinner-base.scss +34 -34
  175. package/src/styles/mixins/_table-base.scss +297 -297
  176. package/src/styles/mixins/_tabs-base.scss +146 -146
  177. package/src/styles/mixins/_tags-base.scss +121 -121
  178. package/src/styles/mixins/_text.scss +89 -89
  179. package/src/styles/mixins.scss +14 -14
  180. package/src/styles/utilities/_borders.scss +29 -29
  181. package/src/styles/utilities/_common.scss +49 -49
  182. package/src/styles/utilities/_layout.scss +115 -115
  183. package/src/styles/utilities/_spacing.scss +64 -64
  184. package/src/styles/utilities/_text.scss +139 -139
@@ -65,11 +65,11 @@ export class ButtonComponent {
65
65
  this.buttonElement.nativeElement.focus();
66
66
  }
67
67
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
68
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ButtonComponent, selector: "ec-button", inputs: { id: "id", disabled: "disabled", icon: "icon", label: "label", badge: "badge", tabindex: "tabindex", type: "type", pending: "pending", pendingIcon: "pendingIcon", customTemplate: "customTemplate", isSubmit: "isSubmit", autofocus: "autofocus" }, outputs: { clicked: "clicked" }, host: { properties: { "attr.id": "this.id" } }, viewQueries: [{ propertyName: "buttonElement", first: true, predicate: ["element"], descendants: true, static: true }], ngImport: i0, template: "<button id=\"{{id}}_button\"\n class=\"ec-button-{{customTemplate ? 'custom' : type}}\"\n [class.has-badge]=\"badge !== undefined\"\n [class.icon-only]=\"icon && !label\"\n tabindex=\"{{tabindex}}\"\n [type]=\"type === 'submit' || isSubmit ? 'submit' : 'button'\"\n [disabled]=\"disabled\"\n (click)=\"onClick($event)\"\n #element\n [attr.cdkFocusInitial]=\"autofocus || null\">\n <ng-container *ngIf=\"customTemplate; else defaultTemplate\">\n <ng-container *ngTemplateOutlet=\"customTemplate\"></ng-container>\n </ng-container>\n</button>\n\n<ng-template #defaultTemplate>\n <!-- Hidden when the button is not pending -->\n <div class=\"pending-container\" *ngIf=\"pending\">\n <i class=\"ec-icon {{pendingIcon}}\" id=\"{{id}}_pending\"></i>\n </div>\n\n <i class=\"ec-icon {{icon}}\" id=\"{{id}}_icon\" *ngIf=\"icon\"></i>\n\n <ng-container *ngIf=\"label\">\n <span id=\"{{id}}_label\" class=\"label\">{{label | translate}}</span>\n </ng-container>\n\n <ng-container *ngIf=\"badge !== undefined\">\n <span id=\"{{id}}_badge\" class=\"badge\">{{badge}}</span>\n </ng-container>\n</ng-template>", styles: [":host{display:inline-block;vertical-align:top}:host(.font-size-inherit){font-size:inherit}:host(.font-size-inherit) button{font-size:inherit}:host(.text-left) button{justify-content:flex-start}:host(.text-right) button{justify-content:flex-end}:host(.active) .ec-button-icon,:host(.active) .ec-button-text,:host(.active) .ec-button-link,:host(.active) .ec-button-danger-text,:host(.active) .ec-button-custom,:host(.active) .ec-button-secondary,:host(.active) .ec-button-primary{background-color:var(--ec-background-color-selected);color:var(--ec-button-color-active)}:host(.active) .ec-button-icon .ec-icon,:host(.active) .ec-button-text .ec-icon,:host(.active) .ec-button-link .ec-icon,:host(.active) .ec-button-danger-text .ec-icon,:host(.active) .ec-button-custom .ec-icon,:host(.active) .ec-button-secondary .ec-icon,:host(.active) .ec-button-primary .ec-icon{color:var(--ec-button-color-icon-active, var(--ec-color-icon))}:host(.d-block) button{width:100%}:host(.border-0) button:not(:focus){border-color:transparent}:host(.is-action-icon) .ec-button-icon{color:var(--ec-color-interactive)}:host(.is-success) .ec-button-icon,:host(.is-success) .ec-button-secondary,:host(.is-success) .ec-button-text{color:var(--ec-color-success)}:host(.is-error) .ec-button-icon,:host(.is-error) .ec-button-secondary,:host(.is-error) .ec-button-text{color:var(--ec-color-danger)}:host-context(.btn-stack) button{height:1rem}:host-context(.btn-stack) .ec-icon{width:.0625rem;height:.0625rem}:host-context(.actions-col) button{border-radius:0}.ec-button-primary,.ec-button-submit{background-color:var(--ec-button-background-color-primary, var(--ec-color-gray-8));color:var(--ec-button-color-primary, var(--ec-color-primary-light))}.ec-button-primary:active:not(:disabled),.ec-button-submit:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-primary:focus,.ec-button-submit:focus{box-shadow:var(--ec-button-box-shadow-focus-primary, 0 0 0 2px var(--ec-color-interactive), inset 0 0 0 2px var(--ec-color-white))}.ec-button-primary .ec-icon,.ec-button-submit .ec-icon{color:var(--ec-button-color-icon-primary, var(--ec-color-primary-light))}.ec-button-secondary{background-color:var(--ec-button-background-color-secondary, var(--ec-background-color));border:1px solid var(--ec-button-border-color-secondary, var(--ec-color-gray-8));color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}.ec-button-secondary:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus));border-color:transparent}.ec-button-secondary:focus{box-shadow:var(--ec-button-box-shadow-focus-secondary, 0 0 0 2px var(--ec-border-color-focus));border-color:var(--ec-button-border-color-secondary-focus, transparent)}.ec-button-secondary .ec-icon{color:var(--ec-button-color-icon-secondary, var(--ec-color-icon))}.ec-button-common{background-color:var(--ec-button-background-color-secondary, var(--ec-background-color));border:1px solid var(--ec-button-border-color-secondary, var(--ec-color-gray-8));color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}.ec-button-common:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus));border-color:transparent}.ec-button-common:focus{box-shadow:var(--ec-button-box-shadow-focus-secondary, 0 0 0 2px var(--ec-border-color-focus));border-color:var(--ec-button-border-color-secondary-focus, transparent)}.ec-button-common .ec-icon{color:var(--ec-button-color-icon-secondary, var(--ec-color-icon))}.ec-button-icon{background-color:transparent;color:var(--ec-button-color-icon, var(--ec-color-icon));width:2rem;padding:0}.ec-button-icon .ec-icon{height:1rem;margin:0;padding:0;color:inherit}.ec-button-icon:hover:not(:disabled){background-color:var(--ec-background-color-hover)}.ec-button-icon:hover:not(:disabled) .ec-icon{color:var(--ec-button-color-icon-hover, var(--ec-button-color-icon, var(--ec-color-icon)))}.ec-button-icon:active:not(:disabled),.ec-button-icon:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-icon:active:not(:disabled){background-color:var(--ec-background-color-selected)}.ec-button-icon:disabled{background-color:transparent;border-color:transparent}.ec-button-icon:disabled .ec-icon{color:var(--ec-color-disabled-dark)}.ec-button-icon.has-badge{width:auto;min-width:2rem;padding-right:0;padding-left:.375rem}.ec-button-icon .badge{margin-left:-.5rem}.ec-button-text{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-primary-dark))}.ec-button-text .ec-icon{color:var(--ec-button-color-icon-text, inherit)}.ec-button-text:active:not(:disabled),.ec-button-text:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-text:disabled{background-color:transparent;border-color:transparent}.ec-button-link{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-link))}.ec-button-link .ec-icon{color:var(--ec-button-color-icon-link, inherit)}.ec-button-link:active:not(:disabled),.ec-button-link:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-link:disabled{background-color:transparent;border-color:transparent}.ec-button-danger{background-color:var(--ec-color-danger);color:var(--ec-color-primary-light)}.ec-button-danger .ec-icon{color:var(--ec-button-color-icon, inherit)}.ec-button-danger:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-danger:focus{box-shadow:var(--ec-button-box-shadow-focus-primary, 0 0 0 2px var(--ec-border-color-focus), inset 0 0 0 2px var(--ec-color-white))}.ec-button-danger-text{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-danger))}.ec-button-danger-text .ec-icon{color:var(--ec-button-color-icon-danger-text, inherit)}.ec-button-danger-text:active:not(:disabled),.ec-button-danger-text:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-danger-text:disabled{background-color:transparent;border-color:transparent}.ec-button-custom{padding:0;background-color:transparent;height:auto}.ec-button-custom:disabled{background-color:transparent;border:0}button{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border:0;border-radius:var(--ec-border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}button .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}button .ec-icon{flex:none}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}button:focus{outline:none;position:relative;z-index:1}button:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}button.icon-only{padding:0;width:2rem}:host(.textbox-group-btn-right){position:relative}:host(.textbox-group-btn-right) button{padding-left:.4375rem;padding-right:.4375rem;border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px}.badge{border:1px solid var(--ec-color-white);display:inline-block;line-height:.875rem;color:var(--ec-color-primary-light);text-align:center;vertical-align:baseline;white-space:nowrap;font-size:.625rem;font-weight:700;padding:0 .25rem;border-radius:.5625rem;min-width:1rem;background-color:var(--ec-button-background-color-badge, var(--ec-color-purple-4));margin-left:-.25rem;margin-top:-.75rem}:host(.is-tab) button{padding-left:.5rem;padding-right:.5rem;border-radius:var(--ec-border-radius);border:1px solid var(--ec-tab-border-color, var(--ec-border-color));align-items:center;color:var(--ec-tab-color, var(--ec-color-secondary-dark));cursor:pointer;font-size:var(--ec-tab-font-size, var(--ec-font-size-label));display:flex;height:1.75rem;min-width:1.75rem;justify-content:center}:host(.is-tab) button.active{color:var(--ec-tab-color-active, var(--ec-color-interactive));background-color:var(--ec-tab-background-color-active, var(--ec-background-color))}:host(.is-tab) button:hover,:host(.is-tab) button:focus{outline:none;border-color:var(--ec-tab-border-color-active, var(--ec-border-color-focus));box-shadow:0 0 0 1px var(--ec-tab-border-color-active, var(--ec-border-color-focus));position:relative;z-index:1}:host(.is-tab) button.is-disabled{opacity:var(--ec-form-control-opacity-disabled);cursor:default;pointer-events:none}:host(.is-tab) button.ec-button-icon{padding:0;justify-content:center;width:auto}:host(.is-tab) button.ec-button-icon .ec-icon{color:inherit}:host(.is-tab) button:hover{background-color:transparent}:host(.is-tab).active button{color:var(--ec-tab-color-active, var(--ec-color-interactive));background-color:var(--ec-tab-background-color-active, var(--ec-background-color))}.pending-container{display:flex;align-items:center;justify-content:center;position:absolute;inset:0;z-index:1}.pending-container>.ec-icon{flex:none;color:inherit}.pending-container~.ec-icon,.pending-container~.label,.pending-container~.badge{opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
68
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ButtonComponent, selector: "ec-button", inputs: { id: "id", disabled: "disabled", icon: "icon", label: "label", badge: "badge", tabindex: "tabindex", type: "type", pending: "pending", pendingIcon: "pendingIcon", customTemplate: "customTemplate", isSubmit: "isSubmit", autofocus: "autofocus" }, outputs: { clicked: "clicked" }, host: { properties: { "attr.id": "this.id" } }, viewQueries: [{ propertyName: "buttonElement", first: true, predicate: ["element"], descendants: true, static: true }], ngImport: i0, template: "<button id=\"{{id}}_button\"\r\n class=\"ec-button-{{customTemplate ? 'custom' : type}}\"\r\n [class.has-badge]=\"badge !== undefined\"\r\n [class.icon-only]=\"icon && !label\"\r\n tabindex=\"{{tabindex}}\"\r\n [type]=\"type === 'submit' || isSubmit ? 'submit' : 'button'\"\r\n [disabled]=\"disabled\"\r\n (click)=\"onClick($event)\"\r\n #element\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n <ng-container *ngIf=\"customTemplate; else defaultTemplate\">\r\n <ng-container *ngTemplateOutlet=\"customTemplate\"></ng-container>\r\n </ng-container>\r\n</button>\r\n\r\n<ng-template #defaultTemplate>\r\n <!-- Hidden when the button is not pending -->\r\n <div class=\"pending-container\" *ngIf=\"pending\">\r\n <i class=\"ec-icon {{pendingIcon}}\" id=\"{{id}}_pending\"></i>\r\n </div>\r\n\r\n <i class=\"ec-icon {{icon}}\" id=\"{{id}}_icon\" *ngIf=\"icon\"></i>\r\n\r\n <ng-container *ngIf=\"label\">\r\n <span id=\"{{id}}_label\" class=\"label\">{{label | translate}}</span>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"badge !== undefined\">\r\n <span id=\"{{id}}_badge\" class=\"badge\">{{badge}}</span>\r\n </ng-container>\r\n</ng-template>", styles: [":host{display:inline-block;vertical-align:top}:host(.font-size-inherit){font-size:inherit}:host(.font-size-inherit) button{font-size:inherit}:host(.text-left) button{justify-content:flex-start}:host(.text-right) button{justify-content:flex-end}:host(.active) .ec-button-icon,:host(.active) .ec-button-text,:host(.active) .ec-button-link,:host(.active) .ec-button-danger-text,:host(.active) .ec-button-custom,:host(.active) .ec-button-secondary,:host(.active) .ec-button-primary{background-color:var(--ec-background-color-selected);color:var(--ec-button-color-active)}:host(.active) .ec-button-icon .ec-icon,:host(.active) .ec-button-text .ec-icon,:host(.active) .ec-button-link .ec-icon,:host(.active) .ec-button-danger-text .ec-icon,:host(.active) .ec-button-custom .ec-icon,:host(.active) .ec-button-secondary .ec-icon,:host(.active) .ec-button-primary .ec-icon{color:var(--ec-button-color-icon-active, var(--ec-color-icon))}:host(.d-block) button{width:100%}:host(.border-0) button:not(:focus){border-color:transparent}:host(.is-action-icon) .ec-button-icon{color:var(--ec-color-interactive)}:host(.is-success) .ec-button-icon,:host(.is-success) .ec-button-secondary,:host(.is-success) .ec-button-text{color:var(--ec-color-success)}:host(.is-error) .ec-button-icon,:host(.is-error) .ec-button-secondary,:host(.is-error) .ec-button-text{color:var(--ec-color-danger)}:host-context(.btn-stack) button{height:1rem}:host-context(.btn-stack) .ec-icon{width:.0625rem;height:.0625rem}:host-context(.actions-col) button{border-radius:0}.ec-button-primary,.ec-button-submit{background-color:var(--ec-button-background-color-primary, var(--ec-color-gray-8));color:var(--ec-button-color-primary, var(--ec-color-primary-light))}.ec-button-primary:active:not(:disabled),.ec-button-submit:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-primary:focus,.ec-button-submit:focus{box-shadow:var(--ec-button-box-shadow-focus-primary, 0 0 0 2px var(--ec-color-interactive), inset 0 0 0 2px var(--ec-color-white))}.ec-button-primary .ec-icon,.ec-button-submit .ec-icon{color:var(--ec-button-color-icon-primary, var(--ec-color-primary-light))}.ec-button-secondary{background-color:var(--ec-button-background-color-secondary, var(--ec-background-color));border:1px solid var(--ec-button-border-color-secondary, var(--ec-color-gray-8));color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}.ec-button-secondary:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus));border-color:transparent}.ec-button-secondary:focus{box-shadow:var(--ec-button-box-shadow-focus-secondary, 0 0 0 2px var(--ec-border-color-focus));border-color:var(--ec-button-border-color-secondary-focus, transparent)}.ec-button-secondary .ec-icon{color:var(--ec-button-color-icon-secondary, var(--ec-color-icon))}.ec-button-common{background-color:var(--ec-button-background-color-secondary, var(--ec-background-color));border:1px solid var(--ec-button-border-color-secondary, var(--ec-color-gray-8));color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}.ec-button-common:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus));border-color:transparent}.ec-button-common:focus{box-shadow:var(--ec-button-box-shadow-focus-secondary, 0 0 0 2px var(--ec-border-color-focus));border-color:var(--ec-button-border-color-secondary-focus, transparent)}.ec-button-common .ec-icon{color:var(--ec-button-color-icon-secondary, var(--ec-color-icon))}.ec-button-icon{background-color:transparent;color:var(--ec-button-color-icon, var(--ec-color-icon));width:2rem;padding:0}.ec-button-icon .ec-icon{height:1rem;margin:0;padding:0;color:inherit}.ec-button-icon:hover:not(:disabled){background-color:var(--ec-background-color-hover)}.ec-button-icon:hover:not(:disabled) .ec-icon{color:var(--ec-button-color-icon-hover, var(--ec-button-color-icon, var(--ec-color-icon)))}.ec-button-icon:active:not(:disabled),.ec-button-icon:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-icon:active:not(:disabled){background-color:var(--ec-background-color-selected)}.ec-button-icon:disabled{background-color:transparent;border-color:transparent}.ec-button-icon:disabled .ec-icon{color:var(--ec-color-disabled-dark)}.ec-button-icon.has-badge{width:auto;min-width:2rem;padding-right:0;padding-left:.375rem}.ec-button-icon .badge{margin-left:-.5rem}.ec-button-text{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-primary-dark))}.ec-button-text .ec-icon{color:var(--ec-button-color-icon-text, inherit)}.ec-button-text:active:not(:disabled),.ec-button-text:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-text:disabled{background-color:transparent;border-color:transparent}.ec-button-link{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-link))}.ec-button-link .ec-icon{color:var(--ec-button-color-icon-link, inherit)}.ec-button-link:active:not(:disabled),.ec-button-link:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-link:disabled{background-color:transparent;border-color:transparent}.ec-button-danger{background-color:var(--ec-color-danger);color:var(--ec-color-primary-light)}.ec-button-danger .ec-icon{color:var(--ec-button-color-icon, inherit)}.ec-button-danger:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-danger:focus{box-shadow:var(--ec-button-box-shadow-focus-primary, 0 0 0 2px var(--ec-border-color-focus), inset 0 0 0 2px var(--ec-color-white))}.ec-button-danger-text{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-danger))}.ec-button-danger-text .ec-icon{color:var(--ec-button-color-icon-danger-text, inherit)}.ec-button-danger-text:active:not(:disabled),.ec-button-danger-text:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-danger-text:disabled{background-color:transparent;border-color:transparent}.ec-button-custom{padding:0;background-color:transparent;height:auto}.ec-button-custom:disabled{background-color:transparent;border:0}button{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border:0;border-radius:var(--ec-border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}button .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}button .ec-icon{flex:none}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}button:focus{outline:none;position:relative;z-index:1}button:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}button.icon-only{padding:0;width:2rem}:host(.textbox-group-btn-right){position:relative}:host(.textbox-group-btn-right) button{padding-left:.4375rem;padding-right:.4375rem;border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px}.badge{border:1px solid var(--ec-color-white);display:inline-block;line-height:.875rem;color:var(--ec-color-primary-light);text-align:center;vertical-align:baseline;white-space:nowrap;font-size:.625rem;font-weight:700;padding:0 .25rem;border-radius:.5625rem;min-width:1rem;background-color:var(--ec-button-background-color-badge, var(--ec-color-purple-4));margin-left:-.25rem;margin-top:-.75rem}:host(.is-tab) button{padding-left:.5rem;padding-right:.5rem;border-radius:var(--ec-border-radius);border:1px solid var(--ec-tab-border-color, var(--ec-border-color));align-items:center;color:var(--ec-tab-color, var(--ec-color-secondary-dark));cursor:pointer;font-size:var(--ec-tab-font-size, var(--ec-font-size-label));display:flex;height:1.75rem;min-width:1.75rem;justify-content:center}:host(.is-tab) button.active{color:var(--ec-tab-color-active, var(--ec-color-interactive));background-color:var(--ec-tab-background-color-active, var(--ec-background-color))}:host(.is-tab) button:hover,:host(.is-tab) button:focus{outline:none;border-color:var(--ec-tab-border-color-active, var(--ec-border-color-focus));box-shadow:0 0 0 1px var(--ec-tab-border-color-active, var(--ec-border-color-focus));position:relative;z-index:1}:host(.is-tab) button.is-disabled{opacity:var(--ec-form-control-opacity-disabled);cursor:default;pointer-events:none}:host(.is-tab) button.ec-button-icon{padding:0;justify-content:center;width:auto}:host(.is-tab) button.ec-button-icon .ec-icon{color:inherit}:host(.is-tab) button:hover{background-color:transparent}:host(.is-tab).active button{color:var(--ec-tab-color-active, var(--ec-color-interactive));background-color:var(--ec-tab-background-color-active, var(--ec-background-color))}.pending-container{display:flex;align-items:center;justify-content:center;position:absolute;inset:0;z-index:1}.pending-container>.ec-icon{flex:none;color:inherit}.pending-container~.ec-icon,.pending-container~.label,.pending-container~.badge{opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
69
69
  }
70
70
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonComponent, decorators: [{
71
71
  type: Component,
72
- args: [{ selector: 'ec-button', template: "<button id=\"{{id}}_button\"\n class=\"ec-button-{{customTemplate ? 'custom' : type}}\"\n [class.has-badge]=\"badge !== undefined\"\n [class.icon-only]=\"icon && !label\"\n tabindex=\"{{tabindex}}\"\n [type]=\"type === 'submit' || isSubmit ? 'submit' : 'button'\"\n [disabled]=\"disabled\"\n (click)=\"onClick($event)\"\n #element\n [attr.cdkFocusInitial]=\"autofocus || null\">\n <ng-container *ngIf=\"customTemplate; else defaultTemplate\">\n <ng-container *ngTemplateOutlet=\"customTemplate\"></ng-container>\n </ng-container>\n</button>\n\n<ng-template #defaultTemplate>\n <!-- Hidden when the button is not pending -->\n <div class=\"pending-container\" *ngIf=\"pending\">\n <i class=\"ec-icon {{pendingIcon}}\" id=\"{{id}}_pending\"></i>\n </div>\n\n <i class=\"ec-icon {{icon}}\" id=\"{{id}}_icon\" *ngIf=\"icon\"></i>\n\n <ng-container *ngIf=\"label\">\n <span id=\"{{id}}_label\" class=\"label\">{{label | translate}}</span>\n </ng-container>\n\n <ng-container *ngIf=\"badge !== undefined\">\n <span id=\"{{id}}_badge\" class=\"badge\">{{badge}}</span>\n </ng-container>\n</ng-template>", styles: [":host{display:inline-block;vertical-align:top}:host(.font-size-inherit){font-size:inherit}:host(.font-size-inherit) button{font-size:inherit}:host(.text-left) button{justify-content:flex-start}:host(.text-right) button{justify-content:flex-end}:host(.active) .ec-button-icon,:host(.active) .ec-button-text,:host(.active) .ec-button-link,:host(.active) .ec-button-danger-text,:host(.active) .ec-button-custom,:host(.active) .ec-button-secondary,:host(.active) .ec-button-primary{background-color:var(--ec-background-color-selected);color:var(--ec-button-color-active)}:host(.active) .ec-button-icon .ec-icon,:host(.active) .ec-button-text .ec-icon,:host(.active) .ec-button-link .ec-icon,:host(.active) .ec-button-danger-text .ec-icon,:host(.active) .ec-button-custom .ec-icon,:host(.active) .ec-button-secondary .ec-icon,:host(.active) .ec-button-primary .ec-icon{color:var(--ec-button-color-icon-active, var(--ec-color-icon))}:host(.d-block) button{width:100%}:host(.border-0) button:not(:focus){border-color:transparent}:host(.is-action-icon) .ec-button-icon{color:var(--ec-color-interactive)}:host(.is-success) .ec-button-icon,:host(.is-success) .ec-button-secondary,:host(.is-success) .ec-button-text{color:var(--ec-color-success)}:host(.is-error) .ec-button-icon,:host(.is-error) .ec-button-secondary,:host(.is-error) .ec-button-text{color:var(--ec-color-danger)}:host-context(.btn-stack) button{height:1rem}:host-context(.btn-stack) .ec-icon{width:.0625rem;height:.0625rem}:host-context(.actions-col) button{border-radius:0}.ec-button-primary,.ec-button-submit{background-color:var(--ec-button-background-color-primary, var(--ec-color-gray-8));color:var(--ec-button-color-primary, var(--ec-color-primary-light))}.ec-button-primary:active:not(:disabled),.ec-button-submit:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-primary:focus,.ec-button-submit:focus{box-shadow:var(--ec-button-box-shadow-focus-primary, 0 0 0 2px var(--ec-color-interactive), inset 0 0 0 2px var(--ec-color-white))}.ec-button-primary .ec-icon,.ec-button-submit .ec-icon{color:var(--ec-button-color-icon-primary, var(--ec-color-primary-light))}.ec-button-secondary{background-color:var(--ec-button-background-color-secondary, var(--ec-background-color));border:1px solid var(--ec-button-border-color-secondary, var(--ec-color-gray-8));color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}.ec-button-secondary:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus));border-color:transparent}.ec-button-secondary:focus{box-shadow:var(--ec-button-box-shadow-focus-secondary, 0 0 0 2px var(--ec-border-color-focus));border-color:var(--ec-button-border-color-secondary-focus, transparent)}.ec-button-secondary .ec-icon{color:var(--ec-button-color-icon-secondary, var(--ec-color-icon))}.ec-button-common{background-color:var(--ec-button-background-color-secondary, var(--ec-background-color));border:1px solid var(--ec-button-border-color-secondary, var(--ec-color-gray-8));color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}.ec-button-common:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus));border-color:transparent}.ec-button-common:focus{box-shadow:var(--ec-button-box-shadow-focus-secondary, 0 0 0 2px var(--ec-border-color-focus));border-color:var(--ec-button-border-color-secondary-focus, transparent)}.ec-button-common .ec-icon{color:var(--ec-button-color-icon-secondary, var(--ec-color-icon))}.ec-button-icon{background-color:transparent;color:var(--ec-button-color-icon, var(--ec-color-icon));width:2rem;padding:0}.ec-button-icon .ec-icon{height:1rem;margin:0;padding:0;color:inherit}.ec-button-icon:hover:not(:disabled){background-color:var(--ec-background-color-hover)}.ec-button-icon:hover:not(:disabled) .ec-icon{color:var(--ec-button-color-icon-hover, var(--ec-button-color-icon, var(--ec-color-icon)))}.ec-button-icon:active:not(:disabled),.ec-button-icon:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-icon:active:not(:disabled){background-color:var(--ec-background-color-selected)}.ec-button-icon:disabled{background-color:transparent;border-color:transparent}.ec-button-icon:disabled .ec-icon{color:var(--ec-color-disabled-dark)}.ec-button-icon.has-badge{width:auto;min-width:2rem;padding-right:0;padding-left:.375rem}.ec-button-icon .badge{margin-left:-.5rem}.ec-button-text{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-primary-dark))}.ec-button-text .ec-icon{color:var(--ec-button-color-icon-text, inherit)}.ec-button-text:active:not(:disabled),.ec-button-text:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-text:disabled{background-color:transparent;border-color:transparent}.ec-button-link{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-link))}.ec-button-link .ec-icon{color:var(--ec-button-color-icon-link, inherit)}.ec-button-link:active:not(:disabled),.ec-button-link:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-link:disabled{background-color:transparent;border-color:transparent}.ec-button-danger{background-color:var(--ec-color-danger);color:var(--ec-color-primary-light)}.ec-button-danger .ec-icon{color:var(--ec-button-color-icon, inherit)}.ec-button-danger:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-danger:focus{box-shadow:var(--ec-button-box-shadow-focus-primary, 0 0 0 2px var(--ec-border-color-focus), inset 0 0 0 2px var(--ec-color-white))}.ec-button-danger-text{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-danger))}.ec-button-danger-text .ec-icon{color:var(--ec-button-color-icon-danger-text, inherit)}.ec-button-danger-text:active:not(:disabled),.ec-button-danger-text:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-danger-text:disabled{background-color:transparent;border-color:transparent}.ec-button-custom{padding:0;background-color:transparent;height:auto}.ec-button-custom:disabled{background-color:transparent;border:0}button{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border:0;border-radius:var(--ec-border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}button .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}button .ec-icon{flex:none}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}button:focus{outline:none;position:relative;z-index:1}button:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}button.icon-only{padding:0;width:2rem}:host(.textbox-group-btn-right){position:relative}:host(.textbox-group-btn-right) button{padding-left:.4375rem;padding-right:.4375rem;border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px}.badge{border:1px solid var(--ec-color-white);display:inline-block;line-height:.875rem;color:var(--ec-color-primary-light);text-align:center;vertical-align:baseline;white-space:nowrap;font-size:.625rem;font-weight:700;padding:0 .25rem;border-radius:.5625rem;min-width:1rem;background-color:var(--ec-button-background-color-badge, var(--ec-color-purple-4));margin-left:-.25rem;margin-top:-.75rem}:host(.is-tab) button{padding-left:.5rem;padding-right:.5rem;border-radius:var(--ec-border-radius);border:1px solid var(--ec-tab-border-color, var(--ec-border-color));align-items:center;color:var(--ec-tab-color, var(--ec-color-secondary-dark));cursor:pointer;font-size:var(--ec-tab-font-size, var(--ec-font-size-label));display:flex;height:1.75rem;min-width:1.75rem;justify-content:center}:host(.is-tab) button.active{color:var(--ec-tab-color-active, var(--ec-color-interactive));background-color:var(--ec-tab-background-color-active, var(--ec-background-color))}:host(.is-tab) button:hover,:host(.is-tab) button:focus{outline:none;border-color:var(--ec-tab-border-color-active, var(--ec-border-color-focus));box-shadow:0 0 0 1px var(--ec-tab-border-color-active, var(--ec-border-color-focus));position:relative;z-index:1}:host(.is-tab) button.is-disabled{opacity:var(--ec-form-control-opacity-disabled);cursor:default;pointer-events:none}:host(.is-tab) button.ec-button-icon{padding:0;justify-content:center;width:auto}:host(.is-tab) button.ec-button-icon .ec-icon{color:inherit}:host(.is-tab) button:hover{background-color:transparent}:host(.is-tab).active button{color:var(--ec-tab-color-active, var(--ec-color-interactive));background-color:var(--ec-tab-background-color-active, var(--ec-background-color))}.pending-container{display:flex;align-items:center;justify-content:center;position:absolute;inset:0;z-index:1}.pending-container>.ec-icon{flex:none;color:inherit}.pending-container~.ec-icon,.pending-container~.label,.pending-container~.badge{opacity:0}\n"] }]
72
+ args: [{ selector: 'ec-button', template: "<button id=\"{{id}}_button\"\r\n class=\"ec-button-{{customTemplate ? 'custom' : type}}\"\r\n [class.has-badge]=\"badge !== undefined\"\r\n [class.icon-only]=\"icon && !label\"\r\n tabindex=\"{{tabindex}}\"\r\n [type]=\"type === 'submit' || isSubmit ? 'submit' : 'button'\"\r\n [disabled]=\"disabled\"\r\n (click)=\"onClick($event)\"\r\n #element\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n <ng-container *ngIf=\"customTemplate; else defaultTemplate\">\r\n <ng-container *ngTemplateOutlet=\"customTemplate\"></ng-container>\r\n </ng-container>\r\n</button>\r\n\r\n<ng-template #defaultTemplate>\r\n <!-- Hidden when the button is not pending -->\r\n <div class=\"pending-container\" *ngIf=\"pending\">\r\n <i class=\"ec-icon {{pendingIcon}}\" id=\"{{id}}_pending\"></i>\r\n </div>\r\n\r\n <i class=\"ec-icon {{icon}}\" id=\"{{id}}_icon\" *ngIf=\"icon\"></i>\r\n\r\n <ng-container *ngIf=\"label\">\r\n <span id=\"{{id}}_label\" class=\"label\">{{label | translate}}</span>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"badge !== undefined\">\r\n <span id=\"{{id}}_badge\" class=\"badge\">{{badge}}</span>\r\n </ng-container>\r\n</ng-template>", styles: [":host{display:inline-block;vertical-align:top}:host(.font-size-inherit){font-size:inherit}:host(.font-size-inherit) button{font-size:inherit}:host(.text-left) button{justify-content:flex-start}:host(.text-right) button{justify-content:flex-end}:host(.active) .ec-button-icon,:host(.active) .ec-button-text,:host(.active) .ec-button-link,:host(.active) .ec-button-danger-text,:host(.active) .ec-button-custom,:host(.active) .ec-button-secondary,:host(.active) .ec-button-primary{background-color:var(--ec-background-color-selected);color:var(--ec-button-color-active)}:host(.active) .ec-button-icon .ec-icon,:host(.active) .ec-button-text .ec-icon,:host(.active) .ec-button-link .ec-icon,:host(.active) .ec-button-danger-text .ec-icon,:host(.active) .ec-button-custom .ec-icon,:host(.active) .ec-button-secondary .ec-icon,:host(.active) .ec-button-primary .ec-icon{color:var(--ec-button-color-icon-active, var(--ec-color-icon))}:host(.d-block) button{width:100%}:host(.border-0) button:not(:focus){border-color:transparent}:host(.is-action-icon) .ec-button-icon{color:var(--ec-color-interactive)}:host(.is-success) .ec-button-icon,:host(.is-success) .ec-button-secondary,:host(.is-success) .ec-button-text{color:var(--ec-color-success)}:host(.is-error) .ec-button-icon,:host(.is-error) .ec-button-secondary,:host(.is-error) .ec-button-text{color:var(--ec-color-danger)}:host-context(.btn-stack) button{height:1rem}:host-context(.btn-stack) .ec-icon{width:.0625rem;height:.0625rem}:host-context(.actions-col) button{border-radius:0}.ec-button-primary,.ec-button-submit{background-color:var(--ec-button-background-color-primary, var(--ec-color-gray-8));color:var(--ec-button-color-primary, var(--ec-color-primary-light))}.ec-button-primary:active:not(:disabled),.ec-button-submit:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-primary:focus,.ec-button-submit:focus{box-shadow:var(--ec-button-box-shadow-focus-primary, 0 0 0 2px var(--ec-color-interactive), inset 0 0 0 2px var(--ec-color-white))}.ec-button-primary .ec-icon,.ec-button-submit .ec-icon{color:var(--ec-button-color-icon-primary, var(--ec-color-primary-light))}.ec-button-secondary{background-color:var(--ec-button-background-color-secondary, var(--ec-background-color));border:1px solid var(--ec-button-border-color-secondary, var(--ec-color-gray-8));color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}.ec-button-secondary:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus));border-color:transparent}.ec-button-secondary:focus{box-shadow:var(--ec-button-box-shadow-focus-secondary, 0 0 0 2px var(--ec-border-color-focus));border-color:var(--ec-button-border-color-secondary-focus, transparent)}.ec-button-secondary .ec-icon{color:var(--ec-button-color-icon-secondary, var(--ec-color-icon))}.ec-button-common{background-color:var(--ec-button-background-color-secondary, var(--ec-background-color));border:1px solid var(--ec-button-border-color-secondary, var(--ec-color-gray-8));color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}.ec-button-common:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus));border-color:transparent}.ec-button-common:focus{box-shadow:var(--ec-button-box-shadow-focus-secondary, 0 0 0 2px var(--ec-border-color-focus));border-color:var(--ec-button-border-color-secondary-focus, transparent)}.ec-button-common .ec-icon{color:var(--ec-button-color-icon-secondary, var(--ec-color-icon))}.ec-button-icon{background-color:transparent;color:var(--ec-button-color-icon, var(--ec-color-icon));width:2rem;padding:0}.ec-button-icon .ec-icon{height:1rem;margin:0;padding:0;color:inherit}.ec-button-icon:hover:not(:disabled){background-color:var(--ec-background-color-hover)}.ec-button-icon:hover:not(:disabled) .ec-icon{color:var(--ec-button-color-icon-hover, var(--ec-button-color-icon, var(--ec-color-icon)))}.ec-button-icon:active:not(:disabled),.ec-button-icon:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-icon:active:not(:disabled){background-color:var(--ec-background-color-selected)}.ec-button-icon:disabled{background-color:transparent;border-color:transparent}.ec-button-icon:disabled .ec-icon{color:var(--ec-color-disabled-dark)}.ec-button-icon.has-badge{width:auto;min-width:2rem;padding-right:0;padding-left:.375rem}.ec-button-icon .badge{margin-left:-.5rem}.ec-button-text{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-primary-dark))}.ec-button-text .ec-icon{color:var(--ec-button-color-icon-text, inherit)}.ec-button-text:active:not(:disabled),.ec-button-text:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-text:disabled{background-color:transparent;border-color:transparent}.ec-button-link{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-link))}.ec-button-link .ec-icon{color:var(--ec-button-color-icon-link, inherit)}.ec-button-link:active:not(:disabled),.ec-button-link:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-link:disabled{background-color:transparent;border-color:transparent}.ec-button-danger{background-color:var(--ec-color-danger);color:var(--ec-color-primary-light)}.ec-button-danger .ec-icon{color:var(--ec-button-color-icon, inherit)}.ec-button-danger:active:not(:disabled){background-color:var(--ec-button-background-color-active, var(--ec-background-color-selected));color:var(--ec-button-color-active, var(--ec-color-primary-dark));box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-danger:focus{box-shadow:var(--ec-button-box-shadow-focus-primary, 0 0 0 2px var(--ec-border-color-focus), inset 0 0 0 2px var(--ec-color-white))}.ec-button-danger-text{background-color:transparent;color:var(--ec-button-color-text, var(--ec-color-danger))}.ec-button-danger-text .ec-icon{color:var(--ec-button-color-icon-danger-text, inherit)}.ec-button-danger-text:active:not(:disabled),.ec-button-danger-text:focus{box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}.ec-button-danger-text:disabled{background-color:transparent;border-color:transparent}.ec-button-custom{padding:0;background-color:transparent;height:auto}.ec-button-custom:disabled{background-color:transparent;border:0}button{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border:0;border-radius:var(--ec-border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}button .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}button .ec-icon{flex:none}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}button:focus{outline:none;position:relative;z-index:1}button:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}button.icon-only{padding:0;width:2rem}:host(.textbox-group-btn-right){position:relative}:host(.textbox-group-btn-right) button{padding-left:.4375rem;padding-right:.4375rem;border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px}.badge{border:1px solid var(--ec-color-white);display:inline-block;line-height:.875rem;color:var(--ec-color-primary-light);text-align:center;vertical-align:baseline;white-space:nowrap;font-size:.625rem;font-weight:700;padding:0 .25rem;border-radius:.5625rem;min-width:1rem;background-color:var(--ec-button-background-color-badge, var(--ec-color-purple-4));margin-left:-.25rem;margin-top:-.75rem}:host(.is-tab) button{padding-left:.5rem;padding-right:.5rem;border-radius:var(--ec-border-radius);border:1px solid var(--ec-tab-border-color, var(--ec-border-color));align-items:center;color:var(--ec-tab-color, var(--ec-color-secondary-dark));cursor:pointer;font-size:var(--ec-tab-font-size, var(--ec-font-size-label));display:flex;height:1.75rem;min-width:1.75rem;justify-content:center}:host(.is-tab) button.active{color:var(--ec-tab-color-active, var(--ec-color-interactive));background-color:var(--ec-tab-background-color-active, var(--ec-background-color))}:host(.is-tab) button:hover,:host(.is-tab) button:focus{outline:none;border-color:var(--ec-tab-border-color-active, var(--ec-border-color-focus));box-shadow:0 0 0 1px var(--ec-tab-border-color-active, var(--ec-border-color-focus));position:relative;z-index:1}:host(.is-tab) button.is-disabled{opacity:var(--ec-form-control-opacity-disabled);cursor:default;pointer-events:none}:host(.is-tab) button.ec-button-icon{padding:0;justify-content:center;width:auto}:host(.is-tab) button.ec-button-icon .ec-icon{color:inherit}:host(.is-tab) button:hover{background-color:transparent}:host(.is-tab).active button{color:var(--ec-tab-color-active, var(--ec-color-interactive));background-color:var(--ec-tab-background-color-active, var(--ec-background-color))}.pending-container{display:flex;align-items:center;justify-content:center;position:absolute;inset:0;z-index:1}.pending-container>.ec-icon{flex:none;color:inherit}.pending-container~.ec-icon,.pending-container~.label,.pending-container~.badge{opacity:0}\n"] }]
73
73
  }], ctorParameters: () => [], propDecorators: { id: [{
74
74
  type: HostBinding,
75
75
  args: ['attr.id']
@@ -103,4 +103,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
103
103
  type: ViewChild,
104
104
  args: ['element', { static: true }]
105
105
  }] } });
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFnQi9JLE1BQU0sT0FBTyxlQUFlO0lBb0V4QjtRQTVEQTs7V0FFRztRQUNhLGFBQVEsR0FBYSxLQUFLLENBQUM7UUFpQjNDOztXQUVHO1FBQ2EsYUFBUSxHQUFZLENBQUMsQ0FBQztRQUV0Qzs7V0FFRztRQUNhLFNBQUksR0FBZ0IsUUFBUSxDQUFDO1FBRTdDOztXQUVHO1FBQ2EsWUFBTyxHQUFhLEtBQUssQ0FBQztRQUUxQyxpR0FBaUc7UUFDakYsZ0JBQVcsR0FBRyxjQUFjLENBQUM7UUFRN0M7OztXQUdHO1FBQ2EsYUFBUSxHQUFhLEtBQUssQ0FBQztRQUUzQyxrREFBa0Q7UUFDbEMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQzs7V0FFRztRQUNjLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUl0RCxDQUFDO0lBRWpCOzs7T0FHRztJQUNJLFFBQVE7UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDcEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQzFFLENBQUM7SUFDTCxDQUFDO0lBRU0sZUFBZTtRQUNsQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDakIsQ0FBQztJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksT0FBTyxDQUFDLEtBQVU7UUFDckIsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQyxLQUFLLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUNyQyxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLENBQUM7SUFDTCxDQUFDO0lBRU0sS0FBSztRQUNSLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzdDLENBQUM7K0dBckdRLGVBQWU7bUdBQWYsZUFBZSx3ZkNoQjVCLGtzQ0E4QmM7OzRGRGRELGVBQWU7a0JBTjNCLFNBQVM7K0JBQ0ksV0FBVzt3REFXTCxFQUFFO3NCQURqQixXQUFXO3VCQUFDLFNBQVM7O3NCQUNyQixLQUFLO2dCQUtVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBS1UsSUFBSTtzQkFBbkIsS0FBSztnQkFLVSxLQUFLO3NCQUFwQixLQUFLO2dCQUtVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBS1UsUUFBUTtzQkFBdkIsS0FBSztnQkFLVSxJQUFJO3NCQUFuQixLQUFLO2dCQUtVLE9BQU87c0JBQXRCLEtBQUs7Z0JBR1UsV0FBVztzQkFBMUIsS0FBSztnQkFNVSxjQUFjO3NCQUE3QixLQUFLO2dCQU1VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBR1UsU0FBUztzQkFBeEIsS0FBSztnQkFLVyxPQUFPO3NCQUF2QixNQUFNO2dCQUVzQyxhQUFhO3NCQUF6RCxTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIFwiU3VibWl0XCIgYnV0dG9uIHR5cGUgaXMgZGVwcmVjYXRlZC4gVXNlIHRoZSBpc1N1Ym1pdCBpbnB1dCBpbnN0ZWFkLlxuICogVGhpcyBhbGxvd3MgeW91IHRvIG1ha2UgYW55IGJ1dHRvbiB0eXBlIGEgc3VibWl0IGJ1dHRvbi5cbiAqXG4gKiBcIkxpbmtcIiBidXR0b24gdHlwZSBpcyBkZXByZWNhdGVkLiBVc2UgdGhlIExpbmtCdXR0b25Db21wb25lbnQgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IHR5cGUgQnV0dG9uVHlwZSA9IFwicHJpbWFyeVwiIHwgXCJzZWNvbmRhcnlcIiB8IFwiY29tbW9uXCIgfCBcImljb25cIiB8IFwibGlua1wiIHwgXCJ0ZXh0XCIgfCBcInN1Ym1pdFwiIHwgXCJkYW5nZXJcIiB8IFwiZGFuZ2VyLXRleHRcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlYy1idXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9idXR0b24uY29tcG9uZW50LnNjc3MnXVxufSlcblxuZXhwb3J0IGNsYXNzIEJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgICAvKipcbiAgICAgKiBJZCB0byBzZXRcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxuICAgIEBJbnB1dCgpIHB1YmxpYyBpZD86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIElzIHRoZSBidXR0b24gZGlzYWJsZWQ/XG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIGRpc2FibGVkPzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGljb24gY2xhc3MgZm9yIGEgYnV0dG9uIHRoYXQgaGFzIGFuIGltYWdlXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIGljb24/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgdGV4dCBvbiB0aGUgYnV0dG9uXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIGxhYmVsPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGV4dCB0byBwbGFjZSBpbiBhIGJhZGdlIHRvIHRoZSByaWdodCBvZiB0aGUgYnV0dG9uXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIGJhZGdlPzogc3RyaW5nIHwgbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHRhYmluZGV4IG9mIHRoZSBjb250cm9sXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIHRhYmluZGV4PzogbnVtYmVyID0gMDtcblxuICAgIC8qKlxuICAgICAqIFRoZSB0eXBlIG9mIGJ1dHRvblxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyB0eXBlPzogQnV0dG9uVHlwZSA9IFwiY29tbW9uXCI7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgcGVuZGluZyBzdGF0dXMgb2YgdGhlIGNvbnRyb2wsIGNhbiBiZSB1c2VkIHRvIHByb3ZpZGUgZmVlZGJhY2sgdG8gdGhlIHVzZXIgdGhhdCBzb21ldGhpbmcgaXMgaW4gcHJvY2VzcyBvciAoaW4gY29tYmluYXRpb24gd2l0aCBgW3BlbmRpbmdJY29uXWApIHNvbWUgb3RoZXIgc3RhdHVzLCBlLmcgc3VjY2Vzcy5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgcGVuZGluZz86IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKiBUaGUgaWNvbiB0byBkaXNwbGF5IHdoZW4gdGhlIGJ1dHRvbiBpcyBpbiB0aGUgcGVuZGluZyBzdGF0ZS4gRGVmYXVsdHMgdG8gJ2ljb24tdWktbG9hZGluZycgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgcGVuZGluZ0ljb24gPSAnaWNvbi1sb2FkaW5nJztcblxuICAgIC8qKlxuICAgICAqIFByb3ZpZGUgYSBjdXN0b20gdGVtcGxhdGUgZm9yIHRoZSBidXR0b24uIFRoaXMgd2lsbCBvdmVycmlkZSBpY29uLCBsYWJlbCBhbmQgYmFkZ2VcbiAgICAgKiBpZiBzcGVjaWZpZWQuIEZvY3VzLCBob3ZlciBhbmQgZGlzYWJsZWQgc3R5bGVzIHN0aWxsIGFwcGx5LlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCB0aGUgYnV0dG9uIGVsZW1lbnQncyB0eXBlIHdpbGwgYmUgc2V0IHRvIHN1Ym1pdCBzbyB0aGF0IGhpdHRpbmcgXCJlbnRlclwiXG4gICAgICogb24gYSBmb3JtIHdpbGwgdHJpZ2dlciB0aGUgYnV0dG9uJ3MgYWN0aW9uLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpc1N1Ym1pdD86IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKiBGb2N1c2VzIHRoZSBidXR0b24gb24gaW5pdCB3aGVuIHNldCB0byB0cnVlICovXG4gICAgQElucHV0KCkgcHVibGljIGF1dG9mb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogRW1pdCBhbiBldmVudCB3aGVuIHRoZSBidXR0b24gZWxlbWVudCBpcyBjbGlja2VkIChub3QgdGhlIGljb24pXG4gICAgICovXG4gICAgQE91dHB1dCgpIHB1YmxpYyBjbGlja2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgQFZpZXdDaGlsZCgnZWxlbWVudCcsIHtzdGF0aWM6IHRydWV9KSBwdWJsaWMgYnV0dG9uRWxlbWVudCE6IEVsZW1lbnRSZWY7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gICAgLyoqXG4gICAgICogRW5zdXJlIGxhYmVsIG9yIGljb24gaXMgc2V0XG4gICAgICpcbiAgICAgKi9cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5sYWJlbCAmJiAhdGhpcy5pY29uICYmICF0aGlzLmN1c3RvbVRlbXBsYXRlKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0J1dHRvbkNvbXBvbmVudCByZXF1aXJlcyBhbiBpY29uLCBhIGxhYmVsLCBvciBib3RoJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5hdXRvZm9jdXMpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV2ZW50IGhhbmRsZXIgZm9yIGNsaWNrIGV2ZW50IG9uIHRoZSBidXR0b24gZWxlbWVudC5cbiAgICAgKiBCbHVyIHRoZSBidXR0b24gc28gZm9jdXMgc3R5bGUgZG9lcyBub3QgcGVyc2lzdFxuICAgICAqXG4gICAgICovXG4gICAgcHVibGljIG9uQ2xpY2soZXZlbnQ6IGFueSkge1xuICAgICAgICBpZiAodGhpcy5wZW5kaW5nIHx8IHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5jbGlja2VkLmVtaXQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJ1dHRvbkVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbn0iLCI8YnV0dG9uIGlkPVwie3tpZH19X2J1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZWMtYnV0dG9uLXt7Y3VzdG9tVGVtcGxhdGUgPyAnY3VzdG9tJyA6IHR5cGV9fVwiXG4gICAgICAgIFtjbGFzcy5oYXMtYmFkZ2VdPVwiYmFkZ2UgIT09IHVuZGVmaW5lZFwiXG4gICAgICAgIFtjbGFzcy5pY29uLW9ubHldPVwiaWNvbiAmJiAhbGFiZWxcIlxuICAgICAgICB0YWJpbmRleD1cInt7dGFiaW5kZXh9fVwiXG4gICAgICAgIFt0eXBlXT1cInR5cGUgPT09ICdzdWJtaXQnIHx8IGlzU3VibWl0ID8gJ3N1Ym1pdCcgOiAnYnV0dG9uJ1wiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIChjbGljayk9XCJvbkNsaWNrKCRldmVudClcIlxuICAgICAgICAjZWxlbWVudFxuICAgICAgICBbYXR0ci5jZGtGb2N1c0luaXRpYWxdPVwiYXV0b2ZvY3VzIHx8IG51bGxcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VzdG9tVGVtcGxhdGU7IGVsc2UgZGVmYXVsdFRlbXBsYXRlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9idXR0b24+XG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdFRlbXBsYXRlPlxuICAgIDwhLS0gSGlkZGVuIHdoZW4gdGhlIGJ1dHRvbiBpcyBub3QgcGVuZGluZyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwicGVuZGluZy1jb250YWluZXJcIiAqbmdJZj1cInBlbmRpbmdcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJlYy1pY29uIHt7cGVuZGluZ0ljb259fVwiIGlkPVwie3tpZH19X3BlbmRpbmdcIj48L2k+XG4gICAgPC9kaXY+XG5cbiAgICA8aSBjbGFzcz1cImVjLWljb24ge3tpY29ufX1cIiBpZD1cInt7aWR9fV9pY29uXCIgKm5nSWY9XCJpY29uXCI+PC9pPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhYmVsXCI+XG4gICAgICAgIDxzcGFuIGlkPVwie3tpZH19X2xhYmVsXCIgY2xhc3M9XCJsYWJlbFwiPnt7bGFiZWwgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJiYWRnZSAhPT0gdW5kZWZpbmVkXCI+XG4gICAgICAgIDxzcGFuIGlkPVwie3tpZH19X2JhZGdlXCIgY2xhc3M9XCJiYWRnZVwiPnt7YmFkZ2V9fTwvc3Bhbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+Il19
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFnQi9JLE1BQU0sT0FBTyxlQUFlO0lBb0V4QjtRQTVEQTs7V0FFRztRQUNhLGFBQVEsR0FBYSxLQUFLLENBQUM7UUFpQjNDOztXQUVHO1FBQ2EsYUFBUSxHQUFZLENBQUMsQ0FBQztRQUV0Qzs7V0FFRztRQUNhLFNBQUksR0FBZ0IsUUFBUSxDQUFDO1FBRTdDOztXQUVHO1FBQ2EsWUFBTyxHQUFhLEtBQUssQ0FBQztRQUUxQyxpR0FBaUc7UUFDakYsZ0JBQVcsR0FBRyxjQUFjLENBQUM7UUFRN0M7OztXQUdHO1FBQ2EsYUFBUSxHQUFhLEtBQUssQ0FBQztRQUUzQyxrREFBa0Q7UUFDbEMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQzs7V0FFRztRQUNjLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUl0RCxDQUFDO0lBRWpCOzs7T0FHRztJQUNJLFFBQVE7UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDcEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQzFFLENBQUM7SUFDTCxDQUFDO0lBRU0sZUFBZTtRQUNsQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDakIsQ0FBQztJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksT0FBTyxDQUFDLEtBQVU7UUFDckIsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQyxLQUFLLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUNyQyxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLENBQUM7SUFDTCxDQUFDO0lBRU0sS0FBSztRQUNSLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzdDLENBQUM7K0dBckdRLGVBQWU7bUdBQWYsZUFBZSx3ZkNoQjVCLDh2Q0E4QmM7OzRGRGRELGVBQWU7a0JBTjNCLFNBQVM7K0JBQ0ksV0FBVzt3REFXTCxFQUFFO3NCQURqQixXQUFXO3VCQUFDLFNBQVM7O3NCQUNyQixLQUFLO2dCQUtVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBS1UsSUFBSTtzQkFBbkIsS0FBSztnQkFLVSxLQUFLO3NCQUFwQixLQUFLO2dCQUtVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBS1UsUUFBUTtzQkFBdkIsS0FBSztnQkFLVSxJQUFJO3NCQUFuQixLQUFLO2dCQUtVLE9BQU87c0JBQXRCLEtBQUs7Z0JBR1UsV0FBVztzQkFBMUIsS0FBSztnQkFNVSxjQUFjO3NCQUE3QixLQUFLO2dCQU1VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBR1UsU0FBUztzQkFBeEIsS0FBSztnQkFLVyxPQUFPO3NCQUF2QixNQUFNO2dCQUVzQyxhQUFhO3NCQUF6RCxTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLyoqXHJcbiAqIFwiU3VibWl0XCIgYnV0dG9uIHR5cGUgaXMgZGVwcmVjYXRlZC4gVXNlIHRoZSBpc1N1Ym1pdCBpbnB1dCBpbnN0ZWFkLlxyXG4gKiBUaGlzIGFsbG93cyB5b3UgdG8gbWFrZSBhbnkgYnV0dG9uIHR5cGUgYSBzdWJtaXQgYnV0dG9uLlxyXG4gKlxyXG4gKiBcIkxpbmtcIiBidXR0b24gdHlwZSBpcyBkZXByZWNhdGVkLiBVc2UgdGhlIExpbmtCdXR0b25Db21wb25lbnQgaW5zdGVhZC5cclxuICovXHJcbmV4cG9ydCB0eXBlIEJ1dHRvblR5cGUgPSBcInByaW1hcnlcIiB8IFwic2Vjb25kYXJ5XCIgfCBcImNvbW1vblwiIHwgXCJpY29uXCIgfCBcImxpbmtcIiB8IFwidGV4dFwiIHwgXCJzdWJtaXRcIiB8IFwiZGFuZ2VyXCIgfCBcImRhbmdlci10ZXh0XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnZWMtYnV0dG9uJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2J1dHRvbi5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgICAvKipcclxuICAgICAqIElkIHRvIHNldFxyXG4gICAgICovXHJcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxyXG4gICAgQElucHV0KCkgcHVibGljIGlkPzogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogSXMgdGhlIGJ1dHRvbiBkaXNhYmxlZD9cclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIGRpc2FibGVkPzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIGljb24gY2xhc3MgZm9yIGEgYnV0dG9uIHRoYXQgaGFzIGFuIGltYWdlXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBpY29uPzogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIHRleHQgb24gdGhlIGJ1dHRvblxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgbGFiZWw/OiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUZXh0IHRvIHBsYWNlIGluIGEgYmFkZ2UgdG8gdGhlIHJpZ2h0IG9mIHRoZSBidXR0b25cclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIGJhZGdlPzogc3RyaW5nIHwgbnVtYmVyO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIHRhYmluZGV4IG9mIHRoZSBjb250cm9sXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyB0YWJpbmRleD86IG51bWJlciA9IDA7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgdHlwZSBvZiBidXR0b25cclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIHR5cGU/OiBCdXR0b25UeXBlID0gXCJjb21tb25cIjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFRoZSBwZW5kaW5nIHN0YXR1cyBvZiB0aGUgY29udHJvbCwgY2FuIGJlIHVzZWQgdG8gcHJvdmlkZSBmZWVkYmFjayB0byB0aGUgdXNlciB0aGF0IHNvbWV0aGluZyBpcyBpbiBwcm9jZXNzIG9yIChpbiBjb21iaW5hdGlvbiB3aXRoIGBbcGVuZGluZ0ljb25dYCkgc29tZSBvdGhlciBzdGF0dXMsIGUuZyBzdWNjZXNzLlxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcGVuZGluZz86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKiogVGhlIGljb24gdG8gZGlzcGxheSB3aGVuIHRoZSBidXR0b24gaXMgaW4gdGhlIHBlbmRpbmcgc3RhdGUuIERlZmF1bHRzIHRvICdpY29uLXVpLWxvYWRpbmcnICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcGVuZGluZ0ljb24gPSAnaWNvbi1sb2FkaW5nJztcclxuXHJcbiAgICAvKipcclxuICAgICAqIFByb3ZpZGUgYSBjdXN0b20gdGVtcGxhdGUgZm9yIHRoZSBidXR0b24uIFRoaXMgd2lsbCBvdmVycmlkZSBpY29uLCBsYWJlbCBhbmQgYmFkZ2VcclxuICAgICAqIGlmIHNwZWNpZmllZC4gRm9jdXMsIGhvdmVyIGFuZCBkaXNhYmxlZCBzdHlsZXMgc3RpbGwgYXBwbHkuXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBJZiB0cnVlLCB0aGUgYnV0dG9uIGVsZW1lbnQncyB0eXBlIHdpbGwgYmUgc2V0IHRvIHN1Ym1pdCBzbyB0aGF0IGhpdHRpbmcgXCJlbnRlclwiXHJcbiAgICAgKiBvbiBhIGZvcm0gd2lsbCB0cmlnZ2VyIHRoZSBidXR0b24ncyBhY3Rpb24uXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBpc1N1Ym1pdD86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKiogRm9jdXNlcyB0aGUgYnV0dG9uIG9uIGluaXQgd2hlbiBzZXQgdG8gdHJ1ZSAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIGF1dG9mb2N1czogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRW1pdCBhbiBldmVudCB3aGVuIHRoZSBidXR0b24gZWxlbWVudCBpcyBjbGlja2VkIChub3QgdGhlIGljb24pXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBwdWJsaWMgY2xpY2tlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdlbGVtZW50Jywge3N0YXRpYzogdHJ1ZX0pIHB1YmxpYyBidXR0b25FbGVtZW50ITogRWxlbWVudFJlZjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRW5zdXJlIGxhYmVsIG9yIGljb24gaXMgc2V0XHJcbiAgICAgKlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmxhYmVsICYmICF0aGlzLmljb24gJiYgIXRoaXMuY3VzdG9tVGVtcGxhdGUpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdCdXR0b25Db21wb25lbnQgcmVxdWlyZXMgYW4gaWNvbiwgYSBsYWJlbCwgb3IgYm90aCcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmF1dG9mb2N1cykge1xyXG4gICAgICAgICAgICB0aGlzLmZvY3VzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgaGFuZGxlciBmb3IgY2xpY2sgZXZlbnQgb24gdGhlIGJ1dHRvbiBlbGVtZW50LlxyXG4gICAgICogQmx1ciB0aGUgYnV0dG9uIHNvIGZvY3VzIHN0eWxlIGRvZXMgbm90IHBlcnNpc3RcclxuICAgICAqXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBvbkNsaWNrKGV2ZW50OiBhbnkpIHtcclxuICAgICAgICBpZiAodGhpcy5wZW5kaW5nIHx8IHRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jbGlja2VkLmVtaXQoZXZlbnQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZm9jdXMoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5idXR0b25FbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgIH1cclxufSIsIjxidXR0b24gaWQ9XCJ7e2lkfX1fYnV0dG9uXCJcclxuICAgICAgICBjbGFzcz1cImVjLWJ1dHRvbi17e2N1c3RvbVRlbXBsYXRlID8gJ2N1c3RvbScgOiB0eXBlfX1cIlxyXG4gICAgICAgIFtjbGFzcy5oYXMtYmFkZ2VdPVwiYmFkZ2UgIT09IHVuZGVmaW5lZFwiXHJcbiAgICAgICAgW2NsYXNzLmljb24tb25seV09XCJpY29uICYmICFsYWJlbFwiXHJcbiAgICAgICAgdGFiaW5kZXg9XCJ7e3RhYmluZGV4fX1cIlxyXG4gICAgICAgIFt0eXBlXT1cInR5cGUgPT09ICdzdWJtaXQnIHx8IGlzU3VibWl0ID8gJ3N1Ym1pdCcgOiAnYnV0dG9uJ1wiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAoY2xpY2spPVwib25DbGljaygkZXZlbnQpXCJcclxuICAgICAgICAjZWxlbWVudFxyXG4gICAgICAgIFthdHRyLmNka0ZvY3VzSW5pdGlhbF09XCJhdXRvZm9jdXMgfHwgbnVsbFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1c3RvbVRlbXBsYXRlOyBlbHNlIGRlZmF1bHRUZW1wbGF0ZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbjwvYnV0dG9uPlxyXG5cclxuPG5nLXRlbXBsYXRlICNkZWZhdWx0VGVtcGxhdGU+XHJcbiAgICA8IS0tIEhpZGRlbiB3aGVuIHRoZSBidXR0b24gaXMgbm90IHBlbmRpbmcgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwicGVuZGluZy1jb250YWluZXJcIiAqbmdJZj1cInBlbmRpbmdcIj5cclxuICAgICAgICA8aSBjbGFzcz1cImVjLWljb24ge3twZW5kaW5nSWNvbn19XCIgaWQ9XCJ7e2lkfX1fcGVuZGluZ1wiPjwvaT5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxpIGNsYXNzPVwiZWMtaWNvbiB7e2ljb259fVwiIGlkPVwie3tpZH19X2ljb25cIiAqbmdJZj1cImljb25cIj48L2k+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhYmVsXCI+XHJcbiAgICAgICAgPHNwYW4gaWQ9XCJ7e2lkfX1fbGFiZWxcIiBjbGFzcz1cImxhYmVsXCI+e3tsYWJlbCB8IHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJhZGdlICE9PSB1bmRlZmluZWRcIj5cclxuICAgICAgICA8c3BhbiBpZD1cInt7aWR9fV9iYWRnZVwiIGNsYXNzPVwiYmFkZ2VcIj57e2JhZGdlfX08L3NwYW4+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -64,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
64
64
  type: HostBinding,
65
65
  args: ['class.is-error']
66
66
  }] } });
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS1idXR0b24tYmFzZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvYnV0dG9uL2NvcHktYnV0dG9uLWJhc2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLFdBQVcsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUkzQyxNQUFNLE9BQWdCLHVCQUF1QjtJQVUzQyxZQUNFLE1BQXVCLEVBQ3ZCLFFBQWtCO1FBWG9CLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFLekQscUVBQXFFO1FBQzdELGNBQVMsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQU0vQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUN0QixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVPLE9BQU87UUFDYixJQUFJLE9BQWdCLENBQUM7UUFDckIsSUFBSSxrQkFBa0IsR0FBVyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUV6RCxpRUFBaUU7UUFDakUsSUFBSSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUVsRCxrSEFBa0g7UUFDbEgsSUFBSSxnQkFBZ0IsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUM5QixPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsZ0JBQWlCLENBQUMsQ0FBQztRQUNyRSxDQUFDO1FBRUQsd0NBQXdDO1FBQ3hDLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUM7UUFDekMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztZQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUM7UUFDMUMsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUUzQixnREFBZ0Q7UUFDaEQsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztZQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztZQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQztRQUMvQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDOytHQS9EbUIsdUJBQXVCO21HQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBRDVDLFNBQVM7MkdBRWdDLFdBQVc7c0JBQWxELFdBQVc7dUJBQUMsa0JBQWtCO2dCQUNPLFVBQVU7c0JBQS9DLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIE9uRGVzdHJveSwgSG9zdEJpbmRpbmcsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGlwYm9hcmRTZXJ2aWNlIH0gZnJvbSAnbmd4LWNsaXBib2FyZCc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2J1dHRvbi5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDb3B5QnV0dG9uQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1zdWNjZXNzJykgcHVibGljIGNvcHlTdWNjZXNzID0gZmFsc2U7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtZXJyb3InKSBwdWJsaWMgY29weUZhaWxlZCA9IGZhbHNlO1xuXG4gIHB1YmxpYyBidXR0b246IEJ1dHRvbkNvbXBvbmVudDtcbiAgcHJvdGVjdGVkIGNsaXBib2FyZFNlcnZpY2U6IENsaXBib2FyZFNlcnZpY2U7XG5cbiAgLyoqIFVzZWQgdG8gdW5zdWJzY3JpYmUgd2hlbiB0aGUgZGlyZWN0aXZlIGlzIHJlbW92ZWQgZnJvbSB0aGUgRE9NICovXG4gIHByaXZhdGUgZGVzdHJveWVkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBidXR0b246IEJ1dHRvbkNvbXBvbmVudCxcbiAgICBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gICAgdGhpcy5idXR0b24gPSBidXR0b247XG4gICAgdGhpcy5jbGlwYm9hcmRTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KENsaXBib2FyZFNlcnZpY2UpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYnV0dG9uLmNsaWNrZWQucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZClcbiAgICApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm9uQ2xpY2soKTtcbiAgICB9KVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3llZC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBvbkNsaWNrKCkge1xuICAgIGxldCBzdWNjZXNzOiBib29sZWFuO1xuICAgIGxldCBkZWZhdWx0UGVuZGluZ0ljb246IHN0cmluZyA9IHRoaXMuYnV0dG9uLnBlbmRpbmdJY29uO1xuXG4gICAgLyoqIENhbGwgYWJzdHJhY3QgbWV0aG9kIHRvIGdldCB2YWx1ZSBmb3IgY29weWluZyB0byBjbGlwYm9hcmQgKi9cbiAgICBsZXQgZGF0YUZvckNsaXBib2FyZCA9IHRoaXMuZ2V0RGF0YUZvckNsaXBib2FyZCgpO1xuXG4gICAgLyoqIElmIHRoZSBjb3B5VGFibGVCdXR0b24gcmV0dXJucyBlcnJvciwgdHJpZ2dlciB0aGUgZmFpbGVkIHJlc3BvbnNlIGZsb3csIG90aGVyd2lzZSwgYXR0ZW1wdCBjbGlwYm9hcmRTZXJ2aWNlICovXG4gICAgaWYgKGRhdGFGb3JDbGlwYm9hcmQgPT09IG51bGwpIHtcbiAgICAgIHN1Y2Nlc3MgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3VjY2VzcyA9IHRoaXMuY2xpcGJvYXJkU2VydmljZS5jb3B5RnJvbUNvbnRlbnQoZGF0YUZvckNsaXBib2FyZCEpO1xuICAgIH1cblxuICAgIC8qKiBJY29uIGhhbmRsaW5nIGZvciBzdWNjZXNzL2ZhaWx1cmUgKi9cbiAgICBpZiAoc3VjY2Vzcykge1xuICAgICAgdGhpcy5jb3B5U3VjY2VzcyA9IHRydWU7XG4gICAgICB0aGlzLmJ1dHRvbi5wZW5kaW5nSWNvbiA9ICdpY29uLWNoZWNrJztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb3B5RmFpbGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuYnV0dG9uLnBlbmRpbmdJY29uID0gJ2ljb24tY2FuY2VsJztcbiAgICB9XG5cbiAgICB0aGlzLmJ1dHRvbi5wZW5kaW5nID0gdHJ1ZTtcblxuICAgIC8qKiBBRnRlciA1MDBtcyBzaHV0IHRoZSBwZW5kaW5nIG92ZXJsYXkgZG93biAqL1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5idXR0b24ucGVuZGluZyA9IGZhbHNlO1xuICAgICAgdGhpcy5jb3B5U3VjY2VzcyA9IGZhbHNlO1xuICAgICAgdGhpcy5jb3B5RmFpbGVkID0gZmFsc2U7XG4gICAgICB0aGlzLmJ1dHRvbi5wZW5kaW5nSWNvbiA9IGRlZmF1bHRQZW5kaW5nSWNvbjtcbiAgICB9LCA1MDApO1xuICB9XG5cbiAgLyoqIENhbGxlZCB0byBnZXQgY29udGV4dC1zcGVjaWZpYyB2YWx1ZSBmb3IgY2xpcGJvYXJkIGNvcHlpbmcgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldERhdGFGb3JDbGlwYm9hcmQoKTogc3RyaW5nIHwgbnVsbDtcblxufVxuIl19
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS1idXR0b24tYmFzZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvYnV0dG9uL2NvcHktYnV0dG9uLWJhc2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLFdBQVcsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUkzQyxNQUFNLE9BQWdCLHVCQUF1QjtJQVUzQyxZQUNFLE1BQXVCLEVBQ3ZCLFFBQWtCO1FBWG9CLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFLekQscUVBQXFFO1FBQzdELGNBQVMsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQU0vQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUN0QixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVPLE9BQU87UUFDYixJQUFJLE9BQWdCLENBQUM7UUFDckIsSUFBSSxrQkFBa0IsR0FBVyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUV6RCxpRUFBaUU7UUFDakUsSUFBSSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUVsRCxrSEFBa0g7UUFDbEgsSUFBSSxnQkFBZ0IsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUM5QixPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsZ0JBQWlCLENBQUMsQ0FBQztRQUNyRSxDQUFDO1FBRUQsd0NBQXdDO1FBQ3hDLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUM7UUFDekMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztZQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUM7UUFDMUMsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUUzQixnREFBZ0Q7UUFDaEQsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztZQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztZQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQztRQUMvQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDOytHQS9EbUIsdUJBQXVCO21HQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBRDVDLFNBQVM7MkdBRWdDLFdBQVc7c0JBQWxELFdBQVc7dUJBQUMsa0JBQWtCO2dCQUNPLFVBQVU7c0JBQS9DLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIE9uRGVzdHJveSwgSG9zdEJpbmRpbmcsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENsaXBib2FyZFNlcnZpY2UgfSBmcm9tICduZ3gtY2xpcGJvYXJkJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vYnV0dG9uLmNvbXBvbmVudCc7XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvcHlCdXR0b25CYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtc3VjY2VzcycpIHB1YmxpYyBjb3B5U3VjY2VzcyA9IGZhbHNlO1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtZXJyb3InKSBwdWJsaWMgY29weUZhaWxlZCA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgYnV0dG9uOiBCdXR0b25Db21wb25lbnQ7XHJcbiAgcHJvdGVjdGVkIGNsaXBib2FyZFNlcnZpY2U6IENsaXBib2FyZFNlcnZpY2U7XHJcblxyXG4gIC8qKiBVc2VkIHRvIHVuc3Vic2NyaWJlIHdoZW4gdGhlIGRpcmVjdGl2ZSBpcyByZW1vdmVkIGZyb20gdGhlIERPTSAqL1xyXG4gIHByaXZhdGUgZGVzdHJveWVkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBidXR0b246IEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgdGhpcy5idXR0b24gPSBidXR0b247XHJcbiAgICB0aGlzLmNsaXBib2FyZFNlcnZpY2UgPSBpbmplY3Rvci5nZXQoQ2xpcGJvYXJkU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmJ1dHRvbi5jbGlja2VkLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZClcclxuICAgICkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5vbkNsaWNrKCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95ZWQubmV4dCgpO1xyXG4gICAgdGhpcy5kZXN0cm95ZWQudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DbGljaygpIHtcclxuICAgIGxldCBzdWNjZXNzOiBib29sZWFuO1xyXG4gICAgbGV0IGRlZmF1bHRQZW5kaW5nSWNvbjogc3RyaW5nID0gdGhpcy5idXR0b24ucGVuZGluZ0ljb247XHJcblxyXG4gICAgLyoqIENhbGwgYWJzdHJhY3QgbWV0aG9kIHRvIGdldCB2YWx1ZSBmb3IgY29weWluZyB0byBjbGlwYm9hcmQgKi9cclxuICAgIGxldCBkYXRhRm9yQ2xpcGJvYXJkID0gdGhpcy5nZXREYXRhRm9yQ2xpcGJvYXJkKCk7XHJcblxyXG4gICAgLyoqIElmIHRoZSBjb3B5VGFibGVCdXR0b24gcmV0dXJucyBlcnJvciwgdHJpZ2dlciB0aGUgZmFpbGVkIHJlc3BvbnNlIGZsb3csIG90aGVyd2lzZSwgYXR0ZW1wdCBjbGlwYm9hcmRTZXJ2aWNlICovXHJcbiAgICBpZiAoZGF0YUZvckNsaXBib2FyZCA9PT0gbnVsbCkge1xyXG4gICAgICBzdWNjZXNzID0gZmFsc2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBzdWNjZXNzID0gdGhpcy5jbGlwYm9hcmRTZXJ2aWNlLmNvcHlGcm9tQ29udGVudChkYXRhRm9yQ2xpcGJvYXJkISk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEljb24gaGFuZGxpbmcgZm9yIHN1Y2Nlc3MvZmFpbHVyZSAqL1xyXG4gICAgaWYgKHN1Y2Nlc3MpIHtcclxuICAgICAgdGhpcy5jb3B5U3VjY2VzcyA9IHRydWU7XHJcbiAgICAgIHRoaXMuYnV0dG9uLnBlbmRpbmdJY29uID0gJ2ljb24tY2hlY2snO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jb3B5RmFpbGVkID0gdHJ1ZTtcclxuICAgICAgdGhpcy5idXR0b24ucGVuZGluZ0ljb24gPSAnaWNvbi1jYW5jZWwnO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYnV0dG9uLnBlbmRpbmcgPSB0cnVlO1xyXG5cclxuICAgIC8qKiBBRnRlciA1MDBtcyBzaHV0IHRoZSBwZW5kaW5nIG92ZXJsYXkgZG93biAqL1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuYnV0dG9uLnBlbmRpbmcgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jb3B5U3VjY2VzcyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNvcHlGYWlsZWQgPSBmYWxzZTtcclxuICAgICAgdGhpcy5idXR0b24ucGVuZGluZ0ljb24gPSBkZWZhdWx0UGVuZGluZ0ljb247XHJcbiAgICB9LCA1MDApO1xyXG4gIH1cclxuXHJcbiAgLyoqIENhbGxlZCB0byBnZXQgY29udGV4dC1zcGVjaWZpYyB2YWx1ZSBmb3IgY2xpcGJvYXJkIGNvcHlpbmcgKi9cclxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0RGF0YUZvckNsaXBib2FyZCgpOiBzdHJpbmcgfCBudWxsO1xyXG5cclxufVxyXG4iXX0=
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
25
25
  type: Input,
26
26
  args: ['ecCopyButton']
27
27
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS1idXR0b24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2J1dHRvbi9jb3B5LWJ1dHRvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQVksS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSWpFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFNdkUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUF1QjtJQUc5RCxZQUNpQixNQUF1QixFQUM1QixRQUFrQjtRQUU1QixLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBSFQsV0FBTSxHQUFOLE1BQU0sQ0FBaUI7UUFDNUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUc5QixDQUFDO0lBRVMsbUJBQW1CO1FBQzNCLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUM7SUFDbkMsQ0FBQzsrR0FaVSxtQkFBbUI7bUdBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFKL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2lCQUMzQjs7MEJBTUksSUFBSTtnRUFIdUIsYUFBYTtzQkFBMUMsS0FBSzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0LCBJbmplY3RvciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vYnV0dG9uLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IENvcHlCdXR0b25CYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3B5LWJ1dHRvbi1iYXNlLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlY0NvcHlCdXR0b25dJ1xufSlcblxuZXhwb3J0IGNsYXNzIENvcHlCdXR0b25EaXJlY3RpdmUgZXh0ZW5kcyBDb3B5QnV0dG9uQmFzZURpcmVjdGl2ZSB7XG4gIEBJbnB1dCgnZWNDb3B5QnV0dG9uJykgcHVibGljIGNvcHlGb3JtTW9kZWw/OiBBYnN0cmFjdENvbnRyb2w7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEhvc3QoKSBwdWJsaWMgYnV0dG9uOiBCdXR0b25Db21wb25lbnQsXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvclxuICApIHtcbiAgICBzdXBlcihidXR0b24sIGluamVjdG9yKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXREYXRhRm9yQ2xpcGJvYXJkKCk6IHN0cmluZyB7IFxuICAgIHJldHVybiB0aGlzLmNvcHlGb3JtTW9kZWw/LnZhbHVlO1xuICB9ICBcbn0iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS1idXR0b24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2J1dHRvbi9jb3B5LWJ1dHRvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQVksS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSWpFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFNdkUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUF1QjtJQUc5RCxZQUNpQixNQUF1QixFQUM1QixRQUFrQjtRQUU1QixLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBSFQsV0FBTSxHQUFOLE1BQU0sQ0FBaUI7UUFDNUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUc5QixDQUFDO0lBRVMsbUJBQW1CO1FBQzNCLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUM7SUFDbkMsQ0FBQzsrR0FaVSxtQkFBbUI7bUdBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFKL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2lCQUMzQjs7MEJBTUksSUFBSTtnRUFIdUIsYUFBYTtzQkFBMUMsS0FBSzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0LCBJbmplY3RvciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2J1dHRvbi5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHsgQ29weUJ1dHRvbkJhc2VEaXJlY3RpdmUgfSBmcm9tICcuL2NvcHktYnV0dG9uLWJhc2UuZGlyZWN0aXZlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2VjQ29weUJ1dHRvbl0nXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgQ29weUJ1dHRvbkRpcmVjdGl2ZSBleHRlbmRzIENvcHlCdXR0b25CYXNlRGlyZWN0aXZlIHtcclxuICBASW5wdXQoJ2VjQ29weUJ1dHRvbicpIHB1YmxpYyBjb3B5Rm9ybU1vZGVsPzogQWJzdHJhY3RDb250cm9sO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBIb3N0KCkgcHVibGljIGJ1dHRvbjogQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgc3VwZXIoYnV0dG9uLCBpbmplY3Rvcik7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgZ2V0RGF0YUZvckNsaXBib2FyZCgpOiBzdHJpbmcgeyBcclxuICAgIHJldHVybiB0aGlzLmNvcHlGb3JtTW9kZWw/LnZhbHVlO1xyXG4gIH0gIFxyXG59Il19
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
40
40
  type: Input,
41
41
  args: ['ecCopyTableButton']
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS10YWJsZS1idXR0b24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2J1dHRvbi9jb3B5LXRhYmxlLWJ1dHRvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQVksS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFNdkUsTUFBTSxPQUFPLHdCQUF5QixTQUFRLHVCQUF1QjtJQUduRSxZQUNpQixNQUF1QixFQUM1QixRQUFrQjtRQUU1QixLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBSFQsV0FBTSxHQUFOLE1BQU0sQ0FBaUI7UUFDNUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUc5QixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDTyxtQkFBbUI7UUFDM0IsSUFBSSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRXhFLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN0QixPQUFPLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxDQUFDLENBQUE7WUFDOUMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNoQyxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUcsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzsrR0E5QlUsd0JBQXdCO21HQUF4Qix3QkFBd0I7OzRGQUF4Qix3QkFBd0I7a0JBSnBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7OzBCQU1JLElBQUk7Z0VBSDRCLE9BQU87c0JBQXpDLEtBQUs7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0LCBJbmplY3RvciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb3B5QnV0dG9uQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4vY29weS1idXR0b24tYmFzZS5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZWNDb3B5VGFibGVCdXR0b25dJ1xufSlcblxuZXhwb3J0IGNsYXNzIENvcHlUYWJsZUJ1dHRvbkRpcmVjdGl2ZSBleHRlbmRzIENvcHlCdXR0b25CYXNlRGlyZWN0aXZlIHtcbiAgQElucHV0KCdlY0NvcHlUYWJsZUJ1dHRvbicpIHB1YmxpYyB0YWJsZUlkITogc3RyaW5nO1xuICBcbiAgY29uc3RydWN0b3IoXG4gICAgQEhvc3QoKSBwdWJsaWMgYnV0dG9uOiBCdXR0b25Db21wb25lbnQsXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvclxuICApIHtcbiAgICBzdXBlcihidXR0b24sIGluamVjdG9yKTtcbiAgfVxuXG4gIC8qKiBHcmFicyB0YWJsZSByb3dzIGFuZCBjb252ZXJ0cyB0aGVtIHRvIGFuIEFycmF5IHdlIGNhbiB3b3JrIHdpdGggY2FsbGVkIHJvd3NcbiAgICogIElmIHJvd3MgaXMgZW1wdHkgaXQgbWVhbnMgdGhlIHRhYmxlSWQgcHJvdmlkZWQgd2FzIG5vdCBmb3VuZCBhbmQgc28gd2UgdHJpZ2dlciB0aGUgdW5zdWNjZXNzZnVsXG4gICAqICBwYXRoIGluIHRoZSBiYXNlIGRpcmVjdGl2ZS4gSWYgdGFibGVJZCBpcyBnb29kLCB3ZSBtYXAgb3ZlciB0aGUgcm93cyBhbmQgZXh0cmFjdCB0aGUgZGF0YSBpblxuICAgKiBlYWNoIGNlbGwgYXMgYSBzdHJpbmcgdmFsdWUgYmVmb3JlIGpvaW5pbmcgaXQgYWxsIGFzIHRhYiAmIGxpbmUgZGVsaW1pdGVkIHZhbHVlcyBzbyB0aGUgdXNlciBtYXlcbiAgICogcGFzdGUgaXQgaW4gYW4gZXhjZWwgc3ByZWFkc2hlZXRcbiAgICovIFxuICBwcm90ZWN0ZWQgZ2V0RGF0YUZvckNsaXBib2FyZCgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBsZXQgcm93cyA9IEFycmF5LmZyb20oZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChgIyR7dGhpcy50YWJsZUlkfSB0cmApKTtcbiAgICBcbiAgICBpZiAocm93cy5sZW5ndGggPT09IDApIHtcbiAgICAgIGNvbnNvbGUubG9nKCdObyB0YWJsZSB3YXMgZm91bmQgd2l0aCB0aGF0IElEJylcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBcbiAgICBsZXQgcmF3VGFibGVUZXh0ID0gcm93cy5tYXAocm93ID0+IHtcbiAgICAgIGxldCByb3dUZXh0ID0gQXJyYXkuZnJvbShyb3cucXVlcnlTZWxlY3RvckFsbCgndGQsIHRoJykpLm1hcCh0YWJsZUNlbGwgPT4gdGFibGVDZWxsLnRleHRDb250ZW50KS5qb2luKCdcXHQnKTtcbiAgICAgIHJldHVybiByb3dUZXh0O1xuICAgIH0pLmpvaW4oJ1xcbicpO1xuXG4gICAgcmV0dXJuIHJhd1RhYmxlVGV4dDtcbiAgfVxufVxuIl19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS10YWJsZS1idXR0b24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2J1dHRvbi9jb3B5LXRhYmxlLWJ1dHRvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQVksS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFNdkUsTUFBTSxPQUFPLHdCQUF5QixTQUFRLHVCQUF1QjtJQUduRSxZQUNpQixNQUF1QixFQUM1QixRQUFrQjtRQUU1QixLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBSFQsV0FBTSxHQUFOLE1BQU0sQ0FBaUI7UUFDNUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUc5QixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDTyxtQkFBbUI7UUFDM0IsSUFBSSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRXhFLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN0QixPQUFPLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxDQUFDLENBQUE7WUFDOUMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNoQyxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUcsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzsrR0E5QlUsd0JBQXdCO21HQUF4Qix3QkFBd0I7OzRGQUF4Qix3QkFBd0I7a0JBSnBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7OzBCQU1JLElBQUk7Z0VBSDRCLE9BQU87c0JBQXpDLEtBQUs7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0LCBJbmplY3RvciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29weUJ1dHRvbkJhc2VEaXJlY3RpdmUgfSBmcm9tICcuL2NvcHktYnV0dG9uLWJhc2UuZGlyZWN0aXZlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2VjQ29weVRhYmxlQnV0dG9uXSdcclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBDb3B5VGFibGVCdXR0b25EaXJlY3RpdmUgZXh0ZW5kcyBDb3B5QnV0dG9uQmFzZURpcmVjdGl2ZSB7XHJcbiAgQElucHV0KCdlY0NvcHlUYWJsZUJ1dHRvbicpIHB1YmxpYyB0YWJsZUlkITogc3RyaW5nO1xyXG4gIFxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEhvc3QoKSBwdWJsaWMgYnV0dG9uOiBCdXR0b25Db21wb25lbnQsXHJcbiAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yXHJcbiAgKSB7XHJcbiAgICBzdXBlcihidXR0b24sIGluamVjdG9yKTtcclxuICB9XHJcblxyXG4gIC8qKiBHcmFicyB0YWJsZSByb3dzIGFuZCBjb252ZXJ0cyB0aGVtIHRvIGFuIEFycmF5IHdlIGNhbiB3b3JrIHdpdGggY2FsbGVkIHJvd3NcclxuICAgKiAgSWYgcm93cyBpcyBlbXB0eSBpdCBtZWFucyB0aGUgdGFibGVJZCBwcm92aWRlZCB3YXMgbm90IGZvdW5kIGFuZCBzbyB3ZSB0cmlnZ2VyIHRoZSB1bnN1Y2Nlc3NmdWxcclxuICAgKiAgcGF0aCBpbiB0aGUgYmFzZSBkaXJlY3RpdmUuIElmIHRhYmxlSWQgaXMgZ29vZCwgd2UgbWFwIG92ZXIgdGhlIHJvd3MgYW5kIGV4dHJhY3QgdGhlIGRhdGEgaW5cclxuICAgKiBlYWNoIGNlbGwgYXMgYSBzdHJpbmcgdmFsdWUgYmVmb3JlIGpvaW5pbmcgaXQgYWxsIGFzIHRhYiAmIGxpbmUgZGVsaW1pdGVkIHZhbHVlcyBzbyB0aGUgdXNlciBtYXlcclxuICAgKiBwYXN0ZSBpdCBpbiBhbiBleGNlbCBzcHJlYWRzaGVldFxyXG4gICAqLyBcclxuICBwcm90ZWN0ZWQgZ2V0RGF0YUZvckNsaXBib2FyZCgpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIGxldCByb3dzID0gQXJyYXkuZnJvbShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGAjJHt0aGlzLnRhYmxlSWR9IHRyYCkpO1xyXG4gICAgXHJcbiAgICBpZiAocm93cy5sZW5ndGggPT09IDApIHtcclxuICAgICAgY29uc29sZS5sb2coJ05vIHRhYmxlIHdhcyBmb3VuZCB3aXRoIHRoYXQgSUQnKVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgbGV0IHJhd1RhYmxlVGV4dCA9IHJvd3MubWFwKHJvdyA9PiB7XHJcbiAgICAgIGxldCByb3dUZXh0ID0gQXJyYXkuZnJvbShyb3cucXVlcnlTZWxlY3RvckFsbCgndGQsIHRoJykpLm1hcCh0YWJsZUNlbGwgPT4gdGFibGVDZWxsLnRleHRDb250ZW50KS5qb2luKCdcXHQnKTtcclxuICAgICAgcmV0dXJuIHJvd1RleHQ7XHJcbiAgICB9KS5qb2luKCdcXG4nKTtcclxuXHJcbiAgICByZXR1cm4gcmF3VGFibGVUZXh0O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -88,4 +88,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
88
88
  type: HostBinding,
89
89
  args: ['attr.disabled']
90
90
  }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvY2FsZW5kYXIvY2FsZW5kYXItaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQVMzRCxNQUFNLE9BQU8scUJBQXFCO0lBWWhDLElBQXlDLFFBQVE7UUFDL0MsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7UUFaZ0IsU0FBSSxHQUFrQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUN4RCxZQUFPLEdBQVMsY0FBYyxDQUFDLGlCQUFpQixDQUFDO1FBQ2pELFlBQU8sR0FBUyxjQUFjLENBQUMsaUJBQWlCLENBQUM7UUFFM0IsVUFBSyxHQUFZLEtBQUssQ0FBQztRQUNwQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQ2QsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQ2xELFdBQU0sR0FBWSxLQUFLLENBQUM7SUFLL0MsQ0FBQztJQUVqQixXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLENBQUM7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QUFTO3NCQUF4QixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxPQUFPO3NCQUF0QixLQUFLO2dCQUVnQyxLQUFLO3NCQUExQyxXQUFXO3VCQUFDLGdCQUFnQjtnQkFDWSxRQUFRO3NCQUFoRCxXQUFXO3VCQUFDLG1CQUFtQjtnQkFDcUIsa0JBQWtCO3NCQUF0RSxXQUFXO3VCQUFDLCtCQUErQjtnQkFDTCxNQUFNO3NCQUE1QyxXQUFXO3VCQUFDLGlCQUFpQjtnQkFDVyxRQUFRO3NCQUFoRCxXQUFXO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgRGF0ZVRpbWVIZWxwZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGUtdGltZS1oZWxwZXInO1xuaW1wb3J0IHsgRGF0ZUlucHV0IH0gZnJvbSAnLi4vZGF0ZS1pbnB1dC9kYXRlLWlucHV0LnR5cGVzJztcbmltcG9ydCB7IENhbGVuZGFyIH0gZnJvbSAnLi9jYWxlbmRhci50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2J1dHRvbltlYy1jYWxlbmRhci1pdGVtXScsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0eWxlVXJsczogWycuL2NhbGVuZGFyLWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFySXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG5cbiAgQElucHV0KCkgcHVibGljIGl0ZW0/OiBDYWxlbmRhci5JdGVtO1xuICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0aW9uPzogRGF0ZUlucHV0LlNlbGVjdGlvbjtcbiAgQElucHV0KCkgcHVibGljIHZpZXc6IENhbGVuZGFyLlZpZXcgPSB7IG1vZGU6ICdkYXknLCBkYXRlOiBuZXcgRGF0ZSgpIH07XG4gIEBJbnB1dCgpIHB1YmxpYyBtaW5EYXRlOiBEYXRlID0gRGF0ZVRpbWVIZWxwZXIubWluRGF0ZVBpY2tlckRhdGU7XG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhEYXRlOiBEYXRlID0gRGF0ZVRpbWVIZWxwZXIubWF4RGF0ZVBpY2tlckRhdGU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy10b2RheScpIHB1YmxpYyB0b2RheTogYm9vbGVhbiA9IGZhbHNlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLXNlbGVjdGVkJykgcHVibGljIHNlbGVjdGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtb3V0c2lkZS1hY3RpdmUtbW9udGgnKSBwdWJsaWMgb3V0c2lkZUFjdGl2ZU1vbnRoOiBib29sZWFuID0gZmFsc2U7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtaGlkZGVuJykgcHVibGljIGhpZGRlbjogYm9vbGVhbiA9IGZhbHNlO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGlzYWJsZWQnKSBwdWJsaWMgZ2V0IGRpc2FibGVkKCkge1xuICAgIHJldHVybiB0aGlzLmhpZGRlbiB8fCB1bmRlZmluZWQ7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnZpZXcubW9kZSAhPT0gJ2RheScpIHtcbiAgICAgIHRoaXMudG9kYXkgPSBmYWxzZTtcbiAgICAgIHRoaXMub3V0c2lkZUFjdGl2ZU1vbnRoID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudG9kYXkgPSBtb21lbnQodGhpcy5pdGVtPy5kYXRlKS5pc1NhbWUobW9tZW50KCksICdkYXknKTtcbiAgICAgIHRoaXMub3V0c2lkZUFjdGl2ZU1vbnRoID0gIW1vbWVudCh0aGlzLml0ZW0/LmRhdGUpLmlzU2FtZSh0aGlzLnZpZXcuZGF0ZSwgJ21vbnRoJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXRlbT8uZGF0ZSkge1xuICAgICAgdGhpcy5oaWRkZW4gPSB0aGlzLmlzSGlkZGVuKHRoaXMuaXRlbS5kYXRlLCB0aGlzLm1pbkRhdGUsIHRoaXMubWF4RGF0ZSwgdGhpcy52aWV3Lm1vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmhpZGRlbiA9IHRydWU7XG4gICAgfVxuICAgIFxuICAgIHRoaXMuc2VsZWN0ZWQgPSB0aGlzLmlzU2VsZWN0ZWQodGhpcy5pdGVtPy5kYXRlLCB0aGlzLnNlbGVjdGlvbiwgdGhpcy52aWV3Lm1vZGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1NlbGVjdGVkKGRhdGU/OiBEYXRlLCBzZWxlY3Rpb24/OiBEYXRlSW5wdXQuU2VsZWN0aW9uLCB2aWV3PzogQ2FsZW5kYXIuVmlld01vZGUpOiBib29sZWFuIHtcbiAgICBpZiAoIWRhdGUgfHwgIXNlbGVjdGlvbikge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChEYXRlSW5wdXQuaXNTZWxlY3Rpb25TaW5nbGVEYXRlKHNlbGVjdGlvbikpIHtcbiAgICAgIHJldHVybiBtb21lbnQoZGF0ZSkuaXNTYW1lKHNlbGVjdGlvbiwgdmlldyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChzZWxlY3Rpb24uc3RhcnQgJiYgIXNlbGVjdGlvbi5lbmQpIHtcbiAgICAgICAgcmV0dXJuIG1vbWVudChkYXRlKS5pc1NhbWUoc2VsZWN0aW9uLnN0YXJ0LCB2aWV3KTtcbiAgICAgIH0gZWxzZSBpZiAoIXNlbGVjdGlvbi5zdGFydCAmJiBzZWxlY3Rpb24uZW5kKSB7XG4gICAgICAgIHJldHVybiBtb21lbnQoZGF0ZSkuaXNTYW1lKHNlbGVjdGlvbi5lbmQsIHZpZXcpO1xuICAgICAgfSBlbHNlIGlmIChzZWxlY3Rpb24uc3RhcnQgJiYgc2VsZWN0aW9uLmVuZCkge1xuICAgICAgICByZXR1cm4gbW9tZW50KGRhdGUpLmlzQmV0d2VlbihzZWxlY3Rpb24uc3RhcnQsIHNlbGVjdGlvbi5lbmQsIHZpZXcsICdbXScpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgaXNIaWRkZW4oZGF0ZTogRGF0ZSwgbWluRGF0ZTogRGF0ZSwgbWF4RGF0ZTogRGF0ZSwgdmlldzogQ2FsZW5kYXIuVmlld01vZGUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gbW9tZW50KGRhdGUpLmlzQmVmb3JlKG1pbkRhdGUsIHZpZXcpIHx8IG1vbWVudChkYXRlKS5pc0FmdGVyKG1heERhdGUsIHZpZXcpO1xuICB9XG59XG4iXX0=
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvY2FsZW5kYXIvY2FsZW5kYXItaXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQVMzRCxNQUFNLE9BQU8scUJBQXFCO0lBWWhDLElBQXlDLFFBQVE7UUFDL0MsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7UUFaZ0IsU0FBSSxHQUFrQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUN4RCxZQUFPLEdBQVMsY0FBYyxDQUFDLGlCQUFpQixDQUFDO1FBQ2pELFlBQU8sR0FBUyxjQUFjLENBQUMsaUJBQWlCLENBQUM7UUFFM0IsVUFBSyxHQUFZLEtBQUssQ0FBQztRQUNwQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQ2QsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQ2xELFdBQU0sR0FBWSxLQUFLLENBQUM7SUFLL0MsQ0FBQztJQUVqQixXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLENBQUM7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QUFTO3NCQUF4QixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxPQUFPO3NCQUF0QixLQUFLO2dCQUVnQyxLQUFLO3NCQUExQyxXQUFXO3VCQUFDLGdCQUFnQjtnQkFDWSxRQUFRO3NCQUFoRCxXQUFXO3VCQUFDLG1CQUFtQjtnQkFDcUIsa0JBQWtCO3NCQUF0RSxXQUFXO3VCQUFDLCtCQUErQjtnQkFDTCxNQUFNO3NCQUE1QyxXQUFXO3VCQUFDLGlCQUFpQjtnQkFDVyxRQUFRO3NCQUFoRCxXQUFXO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XHJcbmltcG9ydCB7IERhdGVUaW1lSGVscGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRlLXRpbWUtaGVscGVyJztcclxuaW1wb3J0IHsgRGF0ZUlucHV0IH0gZnJvbSAnLi4vZGF0ZS1pbnB1dC9kYXRlLWlucHV0LnR5cGVzJztcclxuaW1wb3J0IHsgQ2FsZW5kYXIgfSBmcm9tICcuL2NhbGVuZGFyLnR5cGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYnV0dG9uW2VjLWNhbGVuZGFyLWl0ZW1dJyxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIHN0eWxlVXJsczogWycuL2NhbGVuZGFyLWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIENhbGVuZGFySXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBpdGVtPzogQ2FsZW5kYXIuSXRlbTtcclxuICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0aW9uPzogRGF0ZUlucHV0LlNlbGVjdGlvbjtcclxuICBASW5wdXQoKSBwdWJsaWMgdmlldzogQ2FsZW5kYXIuVmlldyA9IHsgbW9kZTogJ2RheScsIGRhdGU6IG5ldyBEYXRlKCkgfTtcclxuICBASW5wdXQoKSBwdWJsaWMgbWluRGF0ZTogRGF0ZSA9IERhdGVUaW1lSGVscGVyLm1pbkRhdGVQaWNrZXJEYXRlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhEYXRlOiBEYXRlID0gRGF0ZVRpbWVIZWxwZXIubWF4RGF0ZVBpY2tlckRhdGU7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtdG9kYXknKSBwdWJsaWMgdG9kYXk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLXNlbGVjdGVkJykgcHVibGljIHNlbGVjdGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1vdXRzaWRlLWFjdGl2ZS1tb250aCcpIHB1YmxpYyBvdXRzaWRlQWN0aXZlTW9udGg6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLWhpZGRlbicpIHB1YmxpYyBoaWRkZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGlzYWJsZWQnKSBwdWJsaWMgZ2V0IGRpc2FibGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaGlkZGVuIHx8IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudmlldy5tb2RlICE9PSAnZGF5Jykge1xyXG4gICAgICB0aGlzLnRvZGF5ID0gZmFsc2U7XHJcbiAgICAgIHRoaXMub3V0c2lkZUFjdGl2ZU1vbnRoID0gZmFsc2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnRvZGF5ID0gbW9tZW50KHRoaXMuaXRlbT8uZGF0ZSkuaXNTYW1lKG1vbWVudCgpLCAnZGF5Jyk7XHJcbiAgICAgIHRoaXMub3V0c2lkZUFjdGl2ZU1vbnRoID0gIW1vbWVudCh0aGlzLml0ZW0/LmRhdGUpLmlzU2FtZSh0aGlzLnZpZXcuZGF0ZSwgJ21vbnRoJyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaXRlbT8uZGF0ZSkge1xyXG4gICAgICB0aGlzLmhpZGRlbiA9IHRoaXMuaXNIaWRkZW4odGhpcy5pdGVtLmRhdGUsIHRoaXMubWluRGF0ZSwgdGhpcy5tYXhEYXRlLCB0aGlzLnZpZXcubW9kZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmhpZGRlbiA9IHRydWU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHRoaXMuc2VsZWN0ZWQgPSB0aGlzLmlzU2VsZWN0ZWQodGhpcy5pdGVtPy5kYXRlLCB0aGlzLnNlbGVjdGlvbiwgdGhpcy52aWV3Lm1vZGUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc1NlbGVjdGVkKGRhdGU/OiBEYXRlLCBzZWxlY3Rpb24/OiBEYXRlSW5wdXQuU2VsZWN0aW9uLCB2aWV3PzogQ2FsZW5kYXIuVmlld01vZGUpOiBib29sZWFuIHtcclxuICAgIGlmICghZGF0ZSB8fCAhc2VsZWN0aW9uKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoRGF0ZUlucHV0LmlzU2VsZWN0aW9uU2luZ2xlRGF0ZShzZWxlY3Rpb24pKSB7XHJcbiAgICAgIHJldHVybiBtb21lbnQoZGF0ZSkuaXNTYW1lKHNlbGVjdGlvbiwgdmlldyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoc2VsZWN0aW9uLnN0YXJ0ICYmICFzZWxlY3Rpb24uZW5kKSB7XHJcbiAgICAgICAgcmV0dXJuIG1vbWVudChkYXRlKS5pc1NhbWUoc2VsZWN0aW9uLnN0YXJ0LCB2aWV3KTtcclxuICAgICAgfSBlbHNlIGlmICghc2VsZWN0aW9uLnN0YXJ0ICYmIHNlbGVjdGlvbi5lbmQpIHtcclxuICAgICAgICByZXR1cm4gbW9tZW50KGRhdGUpLmlzU2FtZShzZWxlY3Rpb24uZW5kLCB2aWV3KTtcclxuICAgICAgfSBlbHNlIGlmIChzZWxlY3Rpb24uc3RhcnQgJiYgc2VsZWN0aW9uLmVuZCkge1xyXG4gICAgICAgIHJldHVybiBtb21lbnQoZGF0ZSkuaXNCZXR3ZWVuKHNlbGVjdGlvbi5zdGFydCwgc2VsZWN0aW9uLmVuZCwgdmlldywgJ1tdJyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzSGlkZGVuKGRhdGU6IERhdGUsIG1pbkRhdGU6IERhdGUsIG1heERhdGU6IERhdGUsIHZpZXc6IENhbGVuZGFyLlZpZXdNb2RlKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gbW9tZW50KGRhdGUpLmlzQmVmb3JlKG1pbkRhdGUsIHZpZXcpIHx8IG1vbWVudChkYXRlKS5pc0FmdGVyKG1heERhdGUsIHZpZXcpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -221,11 +221,11 @@ export class CalendarComponent {
221
221
  return lastRow[lastRow.length - 1];
222
222
  }
223
223
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
224
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CalendarComponent, selector: "ec-calendar", inputs: { id: "id", selection: "selection", selectionMode: "selectionMode", minDate: "minDate", maxDate: "maxDate", tabindex: "tabindex", view: "view" }, outputs: { dateSelected: "dateSelected", viewChange: "viewChange" }, host: { properties: { "attr.id": "this.id" } }, usesOnChanges: true, ngImport: i0, template: "<header class=\"d-flex align-items-center mt-1 mb-2 px-1\">\n <button id=\"{{id}}_prev_button\"\n class=\"mr-auto\"\n (click)=\"onPreviousClick()\"\n [disabled]=\"disablePreviousButton\"\n tabindex=\"{{tabindex}}\">\n <i class=\"ec-icon icon-angle-down rotate-90\"></i>\n </button>\n\n <button *ngIf=\"view.mode === 'day'\"\n id=\"{{id}}_month_button\"\n class=\"text-body-1 font-weight-bold\"\n (click)=\"onMonthClick()\"\n tabindex=\"{{tabindex}}\">\n {{month}}\n </button>\n\n <button *ngIf=\"view.mode !== 'year'\"\n id=\"{{id}}_year_button\"\n class=\"text-body-1 font-weight-bold\"\n (click)=\"onYearClick()\"\n tabindex=\"{{tabindex}}\">\n {{year}}\n </button>\n\n <div id=\"{{id}}_year_range\"\n *ngIf=\"view.mode === 'year'\"\n class=\"text-body-1 font-weight-bold\"\n [innerHTML]=\"yearRange\">\n </div>\n\n <button id=\"{{id}}_next_button\"\n class=\"ml-auto\"\n (click)=\"onNextClick()\"\n [disabled]=\"disableNextButton\"\n tabindex=\"{{tabindex}}\">\n <i class=\"ec-icon icon-angle-down rotate-270\"></i>\n </button>\n</header>\n\n<div *ngIf=\"view.mode === 'day'\"\n class=\"mb-1 px-2 d-flex\">\n <h3 *ngFor=\"let day of weekDays\"\n class=\"text-heading-3 d-flex justify-content-center align-items-center\"\n style=\"width: 2rem; height: 1.75rem;\">{{day}}</h3>\n</div>\n\n<div *ngFor=\"let row of calendarItems; last as isLast; trackBy: trackByDateRow\"\n class=\"px-2 d-flex {{view.mode}}-view\"\n [class.mb-1]=\"!isLast\"\n [class.mb-2]=\"isLast\">\n <button *ngFor=\"let item of row; trackBy: trackByDate\"\n id=\"{{id}}_item_{{item.date | date:'MM_dd_yyyy'}}\"\n ec-calendar-item\n [item]=\"item\"\n [selection]=\"selection\"\n [view]=\"view\"\n (click)=\"onItemSelected(item)\"\n [innerHTML]=\"item.label\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n tabindex=\"{{tabindex}}\">\n </button>\n</div>\n", styles: [":host{display:inline-block}button{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border:0;border-radius:var(--ec-border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;background-color:transparent}button .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}button .ec-icon{flex:none}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}button:focus{outline:none;position:relative;z-index:1}button:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}button:disabled{background-color:transparent;border-color:transparent;color:var(--ec-color-hint-dark);--ec-color-icon: var(--ec-color-hint-dark)}button:hover:not(:disabled){background-color:var(--ec-background-color-hover)}button:active:not(:disabled){background-color:var(--ec-background-color-selected);font-weight:700}button:focus:not(:disabled){box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}button.is-selected{background-color:var(--ec-background-color-selected);font-weight:700}.day-view button{width:2rem;height:1.75rem}.month-view button{width:4.67rem;height:3.25rem}.quarter-view button{width:7rem;height:6.75rem}.year-view button{width:3.5rem;height:3.25rem}.is-selected:has(+.is-selected:not(:disabled)){border-top-right-radius:0;border-bottom-right-radius:0}.is-selected:not(:disabled)+.is-selected{border-top-left-radius:0;border-bottom-left-radius:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CalendarItemComponent, selector: "button[ec-calendar-item]", inputs: ["item", "selection", "view", "minDate", "maxDate"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
224
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CalendarComponent, selector: "ec-calendar", inputs: { id: "id", selection: "selection", selectionMode: "selectionMode", minDate: "minDate", maxDate: "maxDate", tabindex: "tabindex", view: "view" }, outputs: { dateSelected: "dateSelected", viewChange: "viewChange" }, host: { properties: { "attr.id": "this.id" } }, usesOnChanges: true, ngImport: i0, template: "<header class=\"d-flex align-items-center mt-1 mb-2 px-1\">\r\n <button id=\"{{id}}_prev_button\"\r\n class=\"mr-auto\"\r\n (click)=\"onPreviousClick()\"\r\n [disabled]=\"disablePreviousButton\"\r\n tabindex=\"{{tabindex}}\">\r\n <i class=\"ec-icon icon-angle-down rotate-90\"></i>\r\n </button>\r\n\r\n <button *ngIf=\"view.mode === 'day'\"\r\n id=\"{{id}}_month_button\"\r\n class=\"text-body-1 font-weight-bold\"\r\n (click)=\"onMonthClick()\"\r\n tabindex=\"{{tabindex}}\">\r\n {{month}}\r\n </button>\r\n\r\n <button *ngIf=\"view.mode !== 'year'\"\r\n id=\"{{id}}_year_button\"\r\n class=\"text-body-1 font-weight-bold\"\r\n (click)=\"onYearClick()\"\r\n tabindex=\"{{tabindex}}\">\r\n {{year}}\r\n </button>\r\n\r\n <div id=\"{{id}}_year_range\"\r\n *ngIf=\"view.mode === 'year'\"\r\n class=\"text-body-1 font-weight-bold\"\r\n [innerHTML]=\"yearRange\">\r\n </div>\r\n\r\n <button id=\"{{id}}_next_button\"\r\n class=\"ml-auto\"\r\n (click)=\"onNextClick()\"\r\n [disabled]=\"disableNextButton\"\r\n tabindex=\"{{tabindex}}\">\r\n <i class=\"ec-icon icon-angle-down rotate-270\"></i>\r\n </button>\r\n</header>\r\n\r\n<div *ngIf=\"view.mode === 'day'\"\r\n class=\"mb-1 px-2 d-flex\">\r\n <h3 *ngFor=\"let day of weekDays\"\r\n class=\"text-heading-3 d-flex justify-content-center align-items-center\"\r\n style=\"width: 2rem; height: 1.75rem;\">{{day}}</h3>\r\n</div>\r\n\r\n<div *ngFor=\"let row of calendarItems; last as isLast; trackBy: trackByDateRow\"\r\n class=\"px-2 d-flex {{view.mode}}-view\"\r\n [class.mb-1]=\"!isLast\"\r\n [class.mb-2]=\"isLast\">\r\n <button *ngFor=\"let item of row; trackBy: trackByDate\"\r\n id=\"{{id}}_item_{{item.date | date:'MM_dd_yyyy'}}\"\r\n ec-calendar-item\r\n [item]=\"item\"\r\n [selection]=\"selection\"\r\n [view]=\"view\"\r\n (click)=\"onItemSelected(item)\"\r\n [innerHTML]=\"item.label\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n tabindex=\"{{tabindex}}\">\r\n </button>\r\n</div>\r\n", styles: [":host{display:inline-block}button{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border:0;border-radius:var(--ec-border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;background-color:transparent}button .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}button .ec-icon{flex:none}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}button:focus{outline:none;position:relative;z-index:1}button:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}button:disabled{background-color:transparent;border-color:transparent;color:var(--ec-color-hint-dark);--ec-color-icon: var(--ec-color-hint-dark)}button:hover:not(:disabled){background-color:var(--ec-background-color-hover)}button:active:not(:disabled){background-color:var(--ec-background-color-selected);font-weight:700}button:focus:not(:disabled){box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}button.is-selected{background-color:var(--ec-background-color-selected);font-weight:700}.day-view button{width:2rem;height:1.75rem}.month-view button{width:4.67rem;height:3.25rem}.quarter-view button{width:7rem;height:6.75rem}.year-view button{width:3.5rem;height:3.25rem}.is-selected:has(+.is-selected:not(:disabled)){border-top-right-radius:0;border-bottom-right-radius:0}.is-selected:not(:disabled)+.is-selected{border-top-left-radius:0;border-bottom-left-radius:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CalendarItemComponent, selector: "button[ec-calendar-item]", inputs: ["item", "selection", "view", "minDate", "maxDate"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
225
225
  }
226
226
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CalendarComponent, decorators: [{
227
227
  type: Component,
228
- args: [{ selector: 'ec-calendar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<header class=\"d-flex align-items-center mt-1 mb-2 px-1\">\n <button id=\"{{id}}_prev_button\"\n class=\"mr-auto\"\n (click)=\"onPreviousClick()\"\n [disabled]=\"disablePreviousButton\"\n tabindex=\"{{tabindex}}\">\n <i class=\"ec-icon icon-angle-down rotate-90\"></i>\n </button>\n\n <button *ngIf=\"view.mode === 'day'\"\n id=\"{{id}}_month_button\"\n class=\"text-body-1 font-weight-bold\"\n (click)=\"onMonthClick()\"\n tabindex=\"{{tabindex}}\">\n {{month}}\n </button>\n\n <button *ngIf=\"view.mode !== 'year'\"\n id=\"{{id}}_year_button\"\n class=\"text-body-1 font-weight-bold\"\n (click)=\"onYearClick()\"\n tabindex=\"{{tabindex}}\">\n {{year}}\n </button>\n\n <div id=\"{{id}}_year_range\"\n *ngIf=\"view.mode === 'year'\"\n class=\"text-body-1 font-weight-bold\"\n [innerHTML]=\"yearRange\">\n </div>\n\n <button id=\"{{id}}_next_button\"\n class=\"ml-auto\"\n (click)=\"onNextClick()\"\n [disabled]=\"disableNextButton\"\n tabindex=\"{{tabindex}}\">\n <i class=\"ec-icon icon-angle-down rotate-270\"></i>\n </button>\n</header>\n\n<div *ngIf=\"view.mode === 'day'\"\n class=\"mb-1 px-2 d-flex\">\n <h3 *ngFor=\"let day of weekDays\"\n class=\"text-heading-3 d-flex justify-content-center align-items-center\"\n style=\"width: 2rem; height: 1.75rem;\">{{day}}</h3>\n</div>\n\n<div *ngFor=\"let row of calendarItems; last as isLast; trackBy: trackByDateRow\"\n class=\"px-2 d-flex {{view.mode}}-view\"\n [class.mb-1]=\"!isLast\"\n [class.mb-2]=\"isLast\">\n <button *ngFor=\"let item of row; trackBy: trackByDate\"\n id=\"{{id}}_item_{{item.date | date:'MM_dd_yyyy'}}\"\n ec-calendar-item\n [item]=\"item\"\n [selection]=\"selection\"\n [view]=\"view\"\n (click)=\"onItemSelected(item)\"\n [innerHTML]=\"item.label\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n tabindex=\"{{tabindex}}\">\n </button>\n</div>\n", styles: [":host{display:inline-block}button{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border:0;border-radius:var(--ec-border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;background-color:transparent}button .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}button .ec-icon{flex:none}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}button:focus{outline:none;position:relative;z-index:1}button:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}button:disabled{background-color:transparent;border-color:transparent;color:var(--ec-color-hint-dark);--ec-color-icon: var(--ec-color-hint-dark)}button:hover:not(:disabled){background-color:var(--ec-background-color-hover)}button:active:not(:disabled){background-color:var(--ec-background-color-selected);font-weight:700}button:focus:not(:disabled){box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}button.is-selected{background-color:var(--ec-background-color-selected);font-weight:700}.day-view button{width:2rem;height:1.75rem}.month-view button{width:4.67rem;height:3.25rem}.quarter-view button{width:7rem;height:6.75rem}.year-view button{width:3.5rem;height:3.25rem}.is-selected:has(+.is-selected:not(:disabled)){border-top-right-radius:0;border-bottom-right-radius:0}.is-selected:not(:disabled)+.is-selected{border-top-left-radius:0;border-bottom-left-radius:0}\n"] }]
228
+ args: [{ selector: 'ec-calendar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<header class=\"d-flex align-items-center mt-1 mb-2 px-1\">\r\n <button id=\"{{id}}_prev_button\"\r\n class=\"mr-auto\"\r\n (click)=\"onPreviousClick()\"\r\n [disabled]=\"disablePreviousButton\"\r\n tabindex=\"{{tabindex}}\">\r\n <i class=\"ec-icon icon-angle-down rotate-90\"></i>\r\n </button>\r\n\r\n <button *ngIf=\"view.mode === 'day'\"\r\n id=\"{{id}}_month_button\"\r\n class=\"text-body-1 font-weight-bold\"\r\n (click)=\"onMonthClick()\"\r\n tabindex=\"{{tabindex}}\">\r\n {{month}}\r\n </button>\r\n\r\n <button *ngIf=\"view.mode !== 'year'\"\r\n id=\"{{id}}_year_button\"\r\n class=\"text-body-1 font-weight-bold\"\r\n (click)=\"onYearClick()\"\r\n tabindex=\"{{tabindex}}\">\r\n {{year}}\r\n </button>\r\n\r\n <div id=\"{{id}}_year_range\"\r\n *ngIf=\"view.mode === 'year'\"\r\n class=\"text-body-1 font-weight-bold\"\r\n [innerHTML]=\"yearRange\">\r\n </div>\r\n\r\n <button id=\"{{id}}_next_button\"\r\n class=\"ml-auto\"\r\n (click)=\"onNextClick()\"\r\n [disabled]=\"disableNextButton\"\r\n tabindex=\"{{tabindex}}\">\r\n <i class=\"ec-icon icon-angle-down rotate-270\"></i>\r\n </button>\r\n</header>\r\n\r\n<div *ngIf=\"view.mode === 'day'\"\r\n class=\"mb-1 px-2 d-flex\">\r\n <h3 *ngFor=\"let day of weekDays\"\r\n class=\"text-heading-3 d-flex justify-content-center align-items-center\"\r\n style=\"width: 2rem; height: 1.75rem;\">{{day}}</h3>\r\n</div>\r\n\r\n<div *ngFor=\"let row of calendarItems; last as isLast; trackBy: trackByDateRow\"\r\n class=\"px-2 d-flex {{view.mode}}-view\"\r\n [class.mb-1]=\"!isLast\"\r\n [class.mb-2]=\"isLast\">\r\n <button *ngFor=\"let item of row; trackBy: trackByDate\"\r\n id=\"{{id}}_item_{{item.date | date:'MM_dd_yyyy'}}\"\r\n ec-calendar-item\r\n [item]=\"item\"\r\n [selection]=\"selection\"\r\n [view]=\"view\"\r\n (click)=\"onItemSelected(item)\"\r\n [innerHTML]=\"item.label\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n tabindex=\"{{tabindex}}\">\r\n </button>\r\n</div>\r\n", styles: [":host{display:inline-block}button{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border:0;border-radius:var(--ec-border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;background-color:transparent}button .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}button .ec-icon{flex:none}button .ec-icon+.label{flex:none;margin-left:.25rem}button.has-badge{padding-right:.0625rem}button:focus{outline:none;position:relative;z-index:1}button:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}button:disabled{background-color:transparent;border-color:transparent;color:var(--ec-color-hint-dark);--ec-color-icon: var(--ec-color-hint-dark)}button:hover:not(:disabled){background-color:var(--ec-background-color-hover)}button:active:not(:disabled){background-color:var(--ec-background-color-selected);font-weight:700}button:focus:not(:disabled){box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}button.is-selected{background-color:var(--ec-background-color-selected);font-weight:700}.day-view button{width:2rem;height:1.75rem}.month-view button{width:4.67rem;height:3.25rem}.quarter-view button{width:7rem;height:6.75rem}.year-view button{width:3.5rem;height:3.25rem}.is-selected:has(+.is-selected:not(:disabled)){border-top-right-radius:0;border-bottom-right-radius:0}.is-selected:not(:disabled)+.is-selected{border-top-left-radius:0;border-bottom-left-radius:0}\n"] }]
229
229
  }], propDecorators: { id: [{
230
230
  type: HostBinding,
231
231
  args: ['attr.id']
@@ -248,4 +248,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
248
248
  }], viewChange: [{
249
249
  type: Output
250
250
  }] } });
251
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2NhbGVuZGFyL2NhbGVuZGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQy9JLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDL0IsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQVU3RCxNQUFNLE9BQU8saUJBQWlCO0lBTjlCO1FBU2tCLE9BQUUsR0FBVyxVQUFVLENBQUM7UUFFL0IsY0FBUyxHQUErQixJQUFJLENBQUM7UUFDN0Msa0JBQWEsR0FBNEIsS0FBSyxDQUFDO1FBRS9DLFlBQU8sR0FBUyxjQUFjLENBQUMsaUJBQWlCLENBQUM7UUFDakQsWUFBTyxHQUFTLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQztRQUUxQyxhQUFRLEdBQVksQ0FBQyxDQUFDO1FBRTVCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVsRCxtREFBbUQ7UUFDbkMsU0FBSSxHQUFrQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUN2RCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7UUFXaEUsOERBQThEO1FBQ3ZELGtCQUFhLEdBQXNCLEVBQUUsQ0FB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QixDQUFDLE1BQU07OEJBSy9CLEVBQUU7c0JBRGpCLFdBQVc7dUJBQUMsU0FBUzs7c0JBQ3JCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRVUsUUFBUTtzQkFBdkIsS0FBSztnQkFFSSxZQUFZO3NCQUFyQixNQUFNO2dCQUdTLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1csVUFBVTtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyByYW5nZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBEYXRlVGltZUhlbHBlciB9IGZyb20gJy4uLy4uL2NvcmUvZGF0ZS10aW1lLWhlbHBlcic7XG5pbXBvcnQgeyBEYXRlSW5wdXQgfSBmcm9tICcuLi9kYXRlLWlucHV0L2RhdGUtaW5wdXQudHlwZXMnO1xuaW1wb3J0IHsgQ2FsZW5kYXIgfSBmcm9tICcuL2NhbGVuZGFyLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWMtY2FsZW5kYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYWxlbmRhci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBDYWxlbmRhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0IHtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxuICBASW5wdXQoKSBwdWJsaWMgaWQ6IHN0cmluZyA9ICdjYWxlbmRhcic7XG5cbiAgQElucHV0KCkgc2VsZWN0aW9uOiBEYXRlSW5wdXQuU2VsZWN0aW9uIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgpIHNlbGVjdGlvbk1vZGU6IERhdGVJbnB1dC5TZWxlY3Rpb25Nb2RlID0gJ2RheSc7XG5cbiAgQElucHV0KCkgbWluRGF0ZTogRGF0ZSA9IERhdGVUaW1lSGVscGVyLm1pbkRhdGVQaWNrZXJEYXRlO1xuICBASW5wdXQoKSBtYXhEYXRlOiBEYXRlID0gRGF0ZVRpbWVIZWxwZXIubWF4RGF0ZVBpY2tlckRhdGU7XG5cbiAgQElucHV0KCkgcHVibGljIHRhYmluZGV4PzogbnVtYmVyID0gMDtcblxuICBAT3V0cHV0KCkgZGF0ZVNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlPigpO1xuXG4gIC8qKiBEZXRlcm1pbmVzIHRoZSBjdXJyZW50IHZpZXcgb2YgdGhlIGNhbGVuZGFyLiAqL1xuICBASW5wdXQoKSBwdWJsaWMgdmlldzogQ2FsZW5kYXIuVmlldyA9IHsgbW9kZTogJ2RheScsIGRhdGU6IG5ldyBEYXRlKCkgfTtcbiAgQE91dHB1dCgpIHB1YmxpYyB2aWV3Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxDYWxlbmRhci5WaWV3PigpO1xuXG4gIC8qKiBNb250aCBvZiB0aGUgYWN0aXZlIGRhdGUgZGlzcGxheWVkIGluIHRoZSBoZWFkZXIgYnV0dG9ucy4gKi9cbiAgcHVibGljIG1vbnRoPzogc3RyaW5nO1xuXG4gIC8qKiBZZWFyIG9mIHRoZSBhY3RpdmUgZGF0ZSBkaXNwbGF5ZWQgaW4gdGhlIGhlYWRlciBidXR0b25zLiAqL1xuICBwdWJsaWMgeWVhcj86IHN0cmluZztcblxuICAvKiogUmFuZ2Ugb2YgeWVhcnMgdG8gZGlzcGxheSBpbiB0aGUgeWVhciB2aWV3LiAqL1xuICBwdWJsaWMgeWVhclJhbmdlPzogc3RyaW5nO1xuXG4gIC8qKiBBcnJheSBvZiBjYWxlbmRhciBpdGVtIHJvd3MgdG8gZGlzcGxheSBpbiB0aGUgY2FsZW5kYXIuICovXG4gIHB1YmxpYyBjYWxlbmRhckl0ZW1zOiBDYWxlbmRhci5JdGVtW11bXSA9IFtdO1xuXG4gIC8qKiBXZWVrZGF5IGxhYmVscyB0byBzaG93IGF0IHRoZSB0b3Agb2YgdGhlIGNhbGVuZGFyIGluIGRheSB2aWV3LiAqL1xuICBwdWJsaWMgd2Vla0RheXMgPSBtb21lbnQud2Vla2RheXNTaG9ydCgpLm1hcChkID0+IGQuc2xpY2UoMCwgMSkpO1xuXG4gIHB1YmxpYyBkaXNhYmxlUHJldmlvdXNCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGRpc2FibGVOZXh0QnV0dG9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLy8gVHJhY2tieSBmdW5jdGlvbnMgZm9yIG5nRm9yIGxvb3BzLiBUaGVzZSByZWR1Y2UgdGhlIG51bWJlciBvZiBET00gZWxlbWVudHMgdGhhdCBuZWVkIHRvIGJlIHVwZGF0ZWQgd2hlbiB0aGUgY2FsZW5kYXIgaXMgcmUtZHJhd24uXG4gIC8vIFdpdGhvdXQgdGhlc2UgdGhlcmUgYXJlIHNvbWUgY2hhbmdlLWRldGVjdGlvbiBpc3N1ZXMgb24gdGhlIGZpcnN0LXRpbWUgcmVuZGVyaW5nIG9mIHRoZSBjYWxlbmRhci5cbiAgcHVibGljIHRyYWNrQnlEYXRlUm93ID0gKGluZGV4OiBudW1iZXIsIHJvdzogQ2FsZW5kYXIuSXRlbVtdKSA9PiBgJHtyb3dbMF0uZGF0ZS50b0lTT1N0cmluZygpfS0ke3Jvd1tyb3cubGVuZ3RoIC0gMV0uZGF0ZS50b0lTT1N0cmluZygpfWA7XG4gIHB1YmxpYyB0cmFja0J5RGF0ZSA9IChpbmRleDogbnVtYmVyLCBpdGVtOiBDYWxlbmRhci5JdGVtKSA9PiBpdGVtLmRhdGUudG9JU09TdHJpbmcoKTtcblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMudmlldykge1xuICAgICAgdGhpcy5kcmF3Q2FsZW5kYXIodGhpcy52aWV3KTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5taW5EYXRlIHx8IGNoYW5nZXMubWF4RGF0ZSkge1xuICAgICAgdGhpcy51cGRhdGVOZXh0UHJldmlvdXNTdGF0ZXMoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuY2FsZW5kYXJJdGVtcy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuZHJhd0NhbGVuZGFyKHRoaXMudmlldyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uTmV4dENsaWNrKCk6IHZvaWQge1xuICAgIC8vIElmIHdlJ3JlIGluIGRheSB2aWV3LCB3ZSdyZSBpbmNyZW1lbnRpbmcgYnkgbW9udGhcbiAgICAvLyBJbiBtb250aCwgcXVhcnRlciwgYW5kIHllYXIgdmlld3Mgd2UncmUgaW5jcmVtZW50aW5nIGJ5IHllYXJcXFxuICAgIGNvbnN0IHVuaXQgPSB0aGlzLnZpZXcubW9kZSA9PT0gJ2RheScgPyAnbW9udGgnIDogJ3llYXInO1xuICAgIC8vIEluIHllYXIgdmlldywgd2UncmUgbW92aW5nIGJ5IDE2IHllYXJzIGF0IGEgdGltZS4gT3RoZXJ3aXNlIHdlJ3JlIGp1c3QgbW92aW5nIGJ5IDEgbW9udGgveWVhci5cbiAgICBjb25zdCBjb3VudCA9IHRoaXMudmlldy5tb2RlID09PSAneWVhcicgPyAxNiA6IDE7XG4gICAgY29uc3QgZ29Ub0RhdGUgPSBtb21lbnQodGhpcy52aWV3LmRhdGUpLmFkZChjb3VudCwgdW5pdCkudG9EYXRlKCk7XG4gICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiB0aGlzLnZpZXcubW9kZSwgZGF0ZTogZ29Ub0RhdGUgfSk7XG4gIH1cblxuICBwdWJsaWMgb25QcmV2aW91c0NsaWNrKCk6IHZvaWQge1xuICAgIC8vIElmIHdlJ3JlIGluIGRheSB2aWV3LCB3ZSdyZSBpbmNyZW1lbnRpbmcgYnkgbW9udGhcbiAgICAvLyBJbiBtb250aCwgcXVhcnRlciwgYW5kIHllYXIgdmlld3Mgd2UncmUgaW5jcmVtZW50aW5nIGJ5IHllYXJcbiAgICBjb25zdCB1bml0ID0gdGhpcy52aWV3Lm1vZGUgPT09ICdkYXknID8gJ21vbnRoJyA6ICd5ZWFyJztcbiAgICAvLyBJbiB5ZWFyIHZpZXcsIHdlJ3JlIG1vdmluZyBieSAxNiB5ZWFycyBhdCBhIHRpbWUuIE90aGVyd2lzZSB3ZSdyZSBqdXN0IG1vdmluZyBieSAxIG1vbnRoL3llYXIuXG4gICAgY29uc3QgY291bnQgPSB0aGlzLnZpZXcubW9kZSA9PT0gJ3llYXInID8gMTYgOiAxO1xuICAgIGNvbnN0IGdvVG9EYXRlID0gbW9tZW50KHRoaXMudmlldy5kYXRlKS5zdWJ0cmFjdChjb3VudCwgdW5pdCkudG9EYXRlKCk7XG4gICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiB0aGlzLnZpZXcubW9kZSwgZGF0ZTogZ29Ub0RhdGUgfSk7XG4gIH1cblxuICAvKiogU3dpdGNoZXMgdGhlIGNhbGVuZGFyIHRvIG1vbnRoIHZpZXcuICovXG4gIHB1YmxpYyBvbk1vbnRoQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiAnbW9udGgnLCBkYXRlOiB0aGlzLnZpZXcuZGF0ZSB9KTtcbiAgfVxuXG4gIC8qKiBTd2l0Y2hlcyB0aGUgY2FsZW5kYXIgdG8geWVhciB2aWV3LiAqL1xuICBwdWJsaWMgb25ZZWFyQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiAneWVhcicsIGRhdGU6IHRoaXMudmlldy5kYXRlIH0pO1xuICB9XG5cbiAgcHVibGljIG9uSXRlbVNlbGVjdGVkKGl0ZW06IENhbGVuZGFyLkl0ZW0pOiB2b2lkIHtcbiAgICBzd2l0Y2godGhpcy52aWV3Lm1vZGUpIHtcbiAgICAgIGNhc2UgJ2RheSc6XG4gICAgICAgIHRoaXMub25EYXlTZWxlY3RlZChpdGVtKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdtb250aCc6XG4gICAgICAgIHRoaXMub25Nb250aFNlbGVjdGVkKGl0ZW0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3F1YXJ0ZXInOlxuICAgICAgICB0aGlzLm9uUXVhcnRlclNlbGVjdGVkKGl0ZW0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3llYXInOlxuICAgICAgICB0aGlzLm9uWWVhclNlbGVjdGVkKGl0ZW0pO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9uWWVhclNlbGVjdGVkKGl0ZW06IENhbGVuZGFyLkl0ZW0pOiB2b2lkIHtcbiAgICAvLyBJZiBpbiB5ZWFyIHNlbGVjdGlvbiBtb2RlLCBlbWl0IHRoZSBjYWxlbmRhciBpdGVtIHNvIHRoZSBkYXRlIHBpY2tlciBjYW4gdXBkYXRlIHRoZSBzZWxlY3Rpb24uXG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uTW9kZSA9PT0gJ3llYXInKSB7XG4gICAgICB0aGlzLmRhdGVTZWxlY3RlZC5lbWl0KGl0ZW0uZGF0ZSk7XG4gICAgLy8gSWYgd2UncmUgaW4gcXVhcnRlciBzZWxlY3Rpb24gbW9kZSwgZHJhdyB0aGUgcXVhcnRlciB2aWV3LlxuICAgIH0gZWxzZSBpZiAodGhpcy5zZWxlY3Rpb25Nb2RlID09PSAncXVhcnRlcicpIHtcbiAgICAgIHRoaXMuZHJhd0NhbGVuZGFyKHsgbW9kZTogJ3F1YXJ0ZXInLCBkYXRlOiBpdGVtLmRhdGUgfSk7XG4gICAgLy8gQWxsIG90aGVyIHNlbGVjdGlvbiBtb2RlcyBzaG91bGQgem9vbSBpbiB0byB0aGUgbW9udGggdmlldyB3aGVuIGEgeWVhciBpcyBzZWxlY3RlZC5cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiAnbW9udGgnLCBkYXRlOiBpdGVtLmRhdGUgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvblF1YXJ0ZXJTZWxlY3RlZChpdGVtOiBDYWxlbmRhci5JdGVtKTogdm9pZCB7XG4gICAgLy8gUXVhcnRlciB2aWV3IGlzIG9ubHkgYWNjZXNzaWJsZSB3aGVuIGluIHF1YXJ0ZXIgc2VsZWN0aW9uIG1vZGUsXG4gICAgLy8gc28gdGhlcmUncyBubyBvdGhlciB2aWV3cyB0byBkcmF3IGZyb20gaGVyZS4gSnVzdCBlbWl0IHRoZSBzZWxlY3RlZCBpdGVtLlxuICAgIHRoaXMuZGF0ZVNlbGVjdGVkLmVtaXQoaXRlbS5kYXRlKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Nb250aFNlbGVjdGVkKGl0ZW06IENhbGVuZGFyLkl0ZW0pOiB2b2lkIHtcbiAgICAvLyBXaGVuIGluIG1vbnRoIHNlbGVjdGlvbiBtb2RlLCBlbWl0IHRoZSBzZWxlY3RlZCBtb250aCBpdGVtIGFuZCBkb24ndCBjaGFuZ2UgdGhlIHZpZXcuXG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uTW9kZSA9PT0gJ21vbnRoJykge1xuICAgICAgdGhpcy5kYXRlU2VsZWN0ZWQuZW1pdChpdGVtLmRhdGUpO1xuICAgIC8vIE1vbnRoIHZpZXcgaXMgb25seSBhY2Nlc3NpYmxlIGZyb20gZGF5LCBsYXN0N2RheXMsIGxhc3QyOGRheXMsIG1vbnRoLCBhbmQgcmFuZ2Ugc2VsZWN0aW9uIG1vZGVzLlxuICAgIC8vIElmIHdlJ3JlIG5vdCBpbiBtb250aCBzZWxlY3Rpb24gbW9kZSwgd2UgbmVlZCB0byB6b29tIGluIHRvIHRoZSBkYXkgdmlldy5cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiAnZGF5JywgZGF0ZTogaXRlbS5kYXRlIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25EYXlTZWxlY3RlZChpdGVtOiBDYWxlbmRhci5JdGVtKTogdm9pZCB7XG4gICAgLy8gTm8gZnVydGhlciB2aWV3cyBvdGhlciB0aGFuIGRheSBtb2RlLiBKdXN0IGVtaXQgdGhlIHNlbGVjdGVkIGl0ZW0uXG4gICAgdGhpcy5kYXRlU2VsZWN0ZWQuZW1pdChpdGVtLmRhdGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBkcmF3Q2FsZW5kYXIodmlldzogQ2FsZW5kYXIuVmlldyk6IHZvaWQge1xuICAgIC8vIElmIHRoZSB2aWV3IGhhcyBjaGFuZ2VkLCBlbWl0IHRoZSBuZXcgdmlldy5cbiAgICBpZiAodmlldy5kYXRlICE9PSB0aGlzLnZpZXcuZGF0ZSB8fCB2aWV3Lm1vZGUgIT09IHRoaXMudmlldy5tb2RlKSB7XG4gICAgICB0aGlzLnZpZXcgPSB2aWV3O1xuICAgICAgdGhpcy52aWV3Q2hhbmdlLmVtaXQodmlldyk7XG4gICAgfVxuICAgIFxuICAgIHRoaXMubW9udGggPSBtb21lbnQodGhpcy52aWV3LmRhdGUpLmZvcm1hdCgnTU1NJyk7XG4gICAgdGhpcy55ZWFyID0gbW9tZW50KHRoaXMudmlldy5kYXRlKS5mb3JtYXQoJ1lZWVknKTtcbiAgICB0aGlzLmNhbGVuZGFySXRlbXMgPSB0aGlzLmdldENhbGVuZGFySXRlbXModGhpcy52aWV3KTtcblxuICAgIGNvbnN0IHN0YXJ0WWVhciA9IHRoaXMuY2FsZW5kYXJJdGVtc1swXVswXS5kYXRlIDwgdGhpcy5taW5EYXRlID8gdGhpcy5taW5EYXRlIDogdGhpcy5jYWxlbmRhckl0ZW1zWzBdWzBdLmRhdGU7XG4gICAgY29uc3QgbGFzdEl0ZW0gPSB0aGlzLmdldExhc3RJdGVtKCk7XG4gICAgY29uc3QgZW5kWWVhciA9IGxhc3RJdGVtLmRhdGUgPiB0aGlzLm1heERhdGUgPyB0aGlzLm1heERhdGUgOiBsYXN0SXRlbS5kYXRlO1xuICAgIHRoaXMueWVhclJhbmdlID0gYCR7bW9tZW50KHN0YXJ0WWVhcikuZm9ybWF0KCdZWVlZJyl9Jm5kYXNoOyR7bW9tZW50KGVuZFllYXIpLmZvcm1hdCgnWVlZWScpfWA7XG5cbiAgICB0aGlzLnVwZGF0ZU5leHRQcmV2aW91c1N0YXRlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDYWxlbmRhckl0ZW1zKHZpZXc6IENhbGVuZGFyLlZpZXcpOiBDYWxlbmRhci5JdGVtW11bXSB7XG4gICAgc3dpdGNoICh2aWV3Lm1vZGUpIHtcbiAgICAgIGNhc2UgJ2RheSc6IHJldHVybiB0aGlzLmdldERheVZpZXdJdGVtcyh2aWV3LmRhdGUpO1xuICAgICAgY2FzZSAnbW9udGgnOiByZXR1cm4gdGhpcy5nZXRNb250aFZpZXdJdGVtcyh2aWV3LmRhdGUpO1xuICAgICAgY2FzZSAncXVhcnRlcic6IHJldHVybiB0aGlzLmdldFF1YXJ0ZXJWaWV3SXRlbXModmlldy5kYXRlKTtcbiAgICAgIGNhc2UgJ3llYXInOiByZXR1cm4gdGhpcy5nZXRZZWFyVmlld0l0ZW1zKHZpZXcuZGF0ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXREYXlWaWV3SXRlbXMoYWN0aXZlRGF0ZTogRGF0ZSk6IENhbGVuZGFyLkl0ZW1bXVtdIHtcbiAgICAvLyA2IHJvd3Mgb2YgNyBkYXlzID0gNDIgZGF5c1xuICAgIHJldHVybiByYW5nZSgwLCA2KS5tYXAociA9PiB7XG4gICAgICByZXR1cm4gcmFuZ2UoMCwgNykubWFwKGQgPT4ge1xuICAgICAgICAvLyBVc2UgdGhlIHN0YXJ0IG9mIHRoZSB3ZWVrIG9mIHRoZSBmaXJzdCBkYXkgb2YgdGhlIG1vbnRoLlxuICAgICAgICAvLyBUaGlzIHBhZHMgb3V0IHRoZSBmaXJzdCB3ZWVrIHdpdGggYW55IGRheXMgZnJvbSB0aGUgcHJldmlvdXMgbW9udGguXG4gICAgICAgIGNvbnN0IGRhdGUgPSBtb21lbnQoYWN0aXZlRGF0ZSkuc3RhcnRPZignbW9udGgnKS5zdGFydE9mKCd3ZWVrJykuYWRkKHIgKiA3ICsgZCwgJ2RheScpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGRhdGU6IGRhdGUudG9EYXRlKCksXG4gICAgICAgICAgbGFiZWw6IGRhdGUuZm9ybWF0KCdEJylcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNb250aFZpZXdJdGVtcyhhY3RpdmVEYXRlOiBEYXRlKTogQ2FsZW5kYXIuSXRlbVtdW10ge1xuICAgIC8vIDQgcm93cyBvZiAzIG1vbnRocyA9IDEyIG1vbnRoc1xuICAgIHJldHVybiByYW5nZSgwLCA0KS5tYXAociA9PiB7XG4gICAgICByZXR1cm4gcmFuZ2UoMCwgMykubWFwKG0gPT4ge1xuICAgICAgICBjb25zdCBkYXRlID0gbW9tZW50KGFjdGl2ZURhdGUpLnN0YXJ0T2YoJ3llYXInKS5hZGQociAqIDMgKyBtLCAnbW9udGgnKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBkYXRlOiBkYXRlLnRvRGF0ZSgpLFxuICAgICAgICAgIGxhYmVsOiBkYXRlLmZvcm1hdCgnTU1NJylcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRRdWFydGVyVmlld0l0ZW1zKGFjdGl2ZURhdGU6IERhdGUpOiBDYWxlbmRhci5JdGVtW11bXSB7XG4gICAgLy8gMiByb3dzIG9mIDIgcXVhcnRlcnMgPSA0IHF1YXJ0ZXJzXG4gICAgcmV0dXJuIHJhbmdlKDAsIDIpLm1hcChyID0+IHtcbiAgICAgIHJldHVybiByYW5nZSgwLCAyKS5tYXAocSA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBtb21lbnQoYWN0aXZlRGF0ZSkuc3RhcnRPZigneWVhcicpLmFkZChyICogMiArIHEsICdxdWFydGVyJyk7XG4gICAgICAgIGNvbnN0IGVuZERhdGUgPSBtb21lbnQoZGF0ZSkuZW5kT2YoJ3F1YXJ0ZXInKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBkYXRlOiBkYXRlLnRvRGF0ZSgpLFxuICAgICAgICAgIGxhYmVsOiBgJHtkYXRlLmZvcm1hdCgnTU1NJyl9Jm5kYXNoOyR7ZW5kRGF0ZS5mb3JtYXQoJ01NTScpfWBcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRZZWFyVmlld0l0ZW1zKGFjdGl2ZURhdGU6IERhdGUpOiBDYWxlbmRhci5JdGVtW11bXSB7XG4gICAgLy8gNCByb3dzIG9mIDQgeWVhcnMgPSAxNiB5ZWFyc1xuICAgIHJldHVybiByYW5nZSgwLCA0KS5tYXAociA9PiB7XG4gICAgICByZXR1cm4gcmFuZ2UoMCwgNCkubWFwKHkgPT4ge1xuICAgICAgICAvLyBTdWJ0cmFjdGluZyA4IHllYXJzIHRvIHB1dCB0aGUgY3VycmVudCBhY3RpdmUgeWVhciBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSAzcmQgcm93LlxuICAgICAgICBjb25zdCBkYXRlID0gbW9tZW50KGFjdGl2ZURhdGUpLnN0YXJ0T2YoJ3llYXInKS5zdWJ0cmFjdCg4LCAneWVhcnMnKS5hZGQociAqIDQgKyB5LCAneWVhcicpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGRhdGU6IGRhdGUudG9EYXRlKCksXG4gICAgICAgICAgbGFiZWw6IGRhdGUuZm9ybWF0KCdZWVlZJylcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVOZXh0UHJldmlvdXNTdGF0ZXMoKTogdm9pZCB7XG4gICAgLy8gV2UgY2hhbmdlIHRoZSBncmFudWxhcml0eSBvZiB0aGUgbWluIGFuZCBtYXggZGF0ZSBjaGVja3MgYmFzZWQgb24gdGhlIGN1cnJlbnQgdmlldyBtb2RlLlxuICAgIC8vIFdlIGRvbid0IHdhbnQgdG8gZGlzYWJsZSB0aGUgbmV4dC9wcmV2aW91cyBidXR0b25zIGlmIHRoZSBtaW4gb3IgbWF4IGRhdGUgaXMgd2l0aGluIHRoZVxuICAgIC8vIG5leHQgb3IgcHJldmlvdXMgdmlld1xuICAgIGNvbnN0IHVuaXQgPSB0aGlzLnZpZXcubW9kZSA9PT0gJ2RheScgPyAnbW9udGgnIDogJ3llYXInO1xuXG4gICAgLy8gV2hlbiBpbiB5ZWFyIHZpZXcsIHdlIG5lZWQgdG8gc3VidHJhY3QgOSB5ZWFycyB0byBkZXRlcm1pbmUgaWYgd2UncmUgcGFzdCB0aGUgbWluIGRhdGUuXG4gICAgLy8gVGhlIHllYXIgdmlldyBpcyAxNiB5ZWFycyBsb25nLCBhbmQgdGhlIGN1cnJlbnQgZGF0ZSBpcyB0aGUgOXRoIHllYXIgaW4gdGhlIHZpZXcuXG4gICAgY29uc3Qgc3ViQ291bnQgPSB0aGlzLnZpZXcubW9kZSA9PT0gJ3llYXInID8gOSA6IDE7XG4gICAgaWYgKG1vbWVudCh0aGlzLnZpZXcuZGF0ZSkuc3VidHJhY3Qoc3ViQ291bnQsIHVuaXQpLmlzQmVmb3JlKHRoaXMubWluRGF0ZSwgdW5pdCkpIHtcbiAgICAgIHRoaXMuZGlzYWJsZVByZXZpb3VzQnV0dG9uID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kaXNhYmxlUHJldmlvdXNCdXR0b24gPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBXaGVuIGluIHllYXIgdmlldywgd2UgbmVlZCB0byBhZGQgOCB5ZWFycyB0byBkZXRlcm1pbmUgaWYgd2UncmUgcGFzdCB0aGUgbWF4IGRhdGUuXG4gICAgLy8gVGhlIHllYXIgdmlldyBpcyAxNiB5ZWFycyBsb25nLCBhbmQgdGhlIGN1cnJlbnQgZGF0ZSBpcyB0aGUgOXRoIHllYXIgaW4gdGhlIHZpZXcuXG4gICAgY29uc3QgYWRkQ291bnQgPSB0aGlzLnZpZXcubW9kZSA9PT0gJ3llYXInID8gOCA6IDE7XG4gICAgaWYgKG1vbWVudCh0aGlzLnZpZXcuZGF0ZSkuYWRkKGFkZENvdW50LCB1bml0KS5pc0FmdGVyKHRoaXMubWF4RGF0ZSwgdW5pdCkpIHtcbiAgICAgIHRoaXMuZGlzYWJsZU5leHRCdXR0b24gPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRpc2FibGVOZXh0QnV0dG9uID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRMYXN0SXRlbSgpOiBDYWxlbmRhci5JdGVtIHtcbiAgICBjb25zdCBsYXN0Um93ID0gdGhpcy5jYWxlbmRhckl0ZW1zW3RoaXMuY2FsZW5kYXJJdGVtcy5sZW5ndGggLSAxXTtcbiAgICByZXR1cm4gbGFzdFJvd1tsYXN0Um93Lmxlbmd0aCAtIDFdO1xuICB9XG59XG4iLCI8aGVhZGVyIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtdC0xIG1iLTIgcHgtMVwiPlxuICA8YnV0dG9uIGlkPVwie3tpZH19X3ByZXZfYnV0dG9uXCJcbiAgICAgICAgICBjbGFzcz1cIm1yLWF1dG9cIlxuICAgICAgICAgIChjbGljayk9XCJvblByZXZpb3VzQ2xpY2soKVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVQcmV2aW91c0J1dHRvblwiXG4gICAgICAgICAgdGFiaW5kZXg9XCJ7e3RhYmluZGV4fX1cIj5cbiAgICA8aSBjbGFzcz1cImVjLWljb24gaWNvbi1hbmdsZS1kb3duIHJvdGF0ZS05MFwiPjwvaT5cbiAgPC9idXR0b24+XG5cbiAgPGJ1dHRvbiAqbmdJZj1cInZpZXcubW9kZSA9PT0gJ2RheSdcIlxuICAgICAgICAgIGlkPVwie3tpZH19X21vbnRoX2J1dHRvblwiXG4gICAgICAgICAgY2xhc3M9XCJ0ZXh0LWJvZHktMSBmb250LXdlaWdodC1ib2xkXCJcbiAgICAgICAgICAoY2xpY2spPVwib25Nb250aENsaWNrKClcIlxuICAgICAgICAgIHRhYmluZGV4PVwie3t0YWJpbmRleH19XCI+XG4gICAge3ttb250aH19XG4gIDwvYnV0dG9uPlxuXG4gIDxidXR0b24gKm5nSWY9XCJ2aWV3Lm1vZGUgIT09ICd5ZWFyJ1wiXG4gICAgICAgICAgaWQ9XCJ7e2lkfX1feWVhcl9idXR0b25cIlxuICAgICAgICAgIGNsYXNzPVwidGV4dC1ib2R5LTEgZm9udC13ZWlnaHQtYm9sZFwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uWWVhckNsaWNrKClcIlxuICAgICAgICAgIHRhYmluZGV4PVwie3t0YWJpbmRleH19XCI+XG4gICAge3t5ZWFyfX1cbiAgPC9idXR0b24+XG5cbiAgPGRpdiBpZD1cInt7aWR9fV95ZWFyX3JhbmdlXCJcbiAgICAgICAqbmdJZj1cInZpZXcubW9kZSA9PT0gJ3llYXInXCJcbiAgICAgICBjbGFzcz1cInRleHQtYm9keS0xIGZvbnQtd2VpZ2h0LWJvbGRcIlxuICAgICAgIFtpbm5lckhUTUxdPVwieWVhclJhbmdlXCI+XG4gIDwvZGl2PlxuXG4gIDxidXR0b24gaWQ9XCJ7e2lkfX1fbmV4dF9idXR0b25cIlxuICAgICAgICAgIGNsYXNzPVwibWwtYXV0b1wiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uTmV4dENsaWNrKClcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlTmV4dEJ1dHRvblwiXG4gICAgICAgICAgdGFiaW5kZXg9XCJ7e3RhYmluZGV4fX1cIj5cbiAgICA8aSBjbGFzcz1cImVjLWljb24gaWNvbi1hbmdsZS1kb3duIHJvdGF0ZS0yNzBcIj48L2k+XG4gIDwvYnV0dG9uPlxuPC9oZWFkZXI+XG5cbjxkaXYgKm5nSWY9XCJ2aWV3Lm1vZGUgPT09ICdkYXknXCJcbiAgICAgY2xhc3M9XCJtYi0xIHB4LTIgZC1mbGV4XCI+XG4gIDxoMyAqbmdGb3I9XCJsZXQgZGF5IG9mIHdlZWtEYXlzXCJcbiAgICAgIGNsYXNzPVwidGV4dC1oZWFkaW5nLTMgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgIHN0eWxlPVwid2lkdGg6IDJyZW07IGhlaWdodDogMS43NXJlbTtcIj57e2RheX19PC9oMz5cbjwvZGl2PlxuXG48ZGl2ICpuZ0Zvcj1cImxldCByb3cgb2YgY2FsZW5kYXJJdGVtczsgbGFzdCBhcyBpc0xhc3Q7IHRyYWNrQnk6IHRyYWNrQnlEYXRlUm93XCJcbiAgICAgY2xhc3M9XCJweC0yIGQtZmxleCB7e3ZpZXcubW9kZX19LXZpZXdcIlxuICAgICBbY2xhc3MubWItMV09XCIhaXNMYXN0XCJcbiAgICAgW2NsYXNzLm1iLTJdPVwiaXNMYXN0XCI+XG4gIDxidXR0b24gKm5nRm9yPVwibGV0IGl0ZW0gb2Ygcm93OyB0cmFja0J5OiB0cmFja0J5RGF0ZVwiXG4gICAgICAgICAgaWQ9XCJ7e2lkfX1faXRlbV97e2l0ZW0uZGF0ZSB8IGRhdGU6J01NX2RkX3l5eXknfX1cIlxuICAgICAgICAgIGVjLWNhbGVuZGFyLWl0ZW1cbiAgICAgICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgICAgICBbc2VsZWN0aW9uXT1cInNlbGVjdGlvblwiXG4gICAgICAgICAgW3ZpZXddPVwidmlld1wiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uSXRlbVNlbGVjdGVkKGl0ZW0pXCJcbiAgICAgICAgICBbaW5uZXJIVE1MXT1cIml0ZW0ubGFiZWxcIlxuICAgICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuICAgICAgICAgIFttYXhEYXRlXT1cIm1heERhdGVcIlxuICAgICAgICAgIHRhYmluZGV4PVwie3t0YWJpbmRleH19XCI+XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
251
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2NhbGVuZGFyL2NhbGVuZGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQy9JLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDL0IsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQVU3RCxNQUFNLE9BQU8saUJBQWlCO0lBTjlCO1FBU2tCLE9BQUUsR0FBVyxVQUFVLENBQUM7UUFFL0IsY0FBUyxHQUErQixJQUFJLENBQUM7UUFDN0Msa0JBQWEsR0FBNEIsS0FBSyxDQUFDO1FBRS9DLFlBQU8sR0FBUyxjQUFjLENBQUMsaUJBQWlCLENBQUM7UUFDakQsWUFBTyxHQUFTLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQztRQUUxQyxhQUFRLEdBQVksQ0FBQyxDQUFDO1FBRTVCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVsRCxtREFBbUQ7UUFDbkMsU0FBSSxHQUFrQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUN2RCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7UUFXaEUsOERBQThEO1FBQ3ZELGtCQUFhLEdBQXNCLEVBQUUsQ0FB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QixDQUFDLE1BQU07OEJBSy9CLEVBQUU7c0JBRGpCLFdBQVc7dUJBQUMsU0FBUzs7c0JBQ3JCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRVUsUUFBUTtzQkFBdkIsS0FBSztnQkFFSSxZQUFZO3NCQUFyQixNQUFNO2dCQUdTLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1csVUFBVTtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHJhbmdlIH0gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBEYXRlVGltZUhlbHBlciB9IGZyb20gJy4uLy4uL2NvcmUvZGF0ZS10aW1lLWhlbHBlcic7XHJcbmltcG9ydCB7IERhdGVJbnB1dCB9IGZyb20gJy4uL2RhdGUtaW5wdXQvZGF0ZS1pbnB1dC50eXBlcyc7XHJcbmltcG9ydCB7IENhbGVuZGFyIH0gZnJvbSAnLi9jYWxlbmRhci50eXBlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjLWNhbGVuZGFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NhbGVuZGFyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIENhbGVuZGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xyXG5cclxuICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBpZDogc3RyaW5nID0gJ2NhbGVuZGFyJztcclxuXHJcbiAgQElucHV0KCkgc2VsZWN0aW9uOiBEYXRlSW5wdXQuU2VsZWN0aW9uIHwgbnVsbCA9IG51bGw7XHJcbiAgQElucHV0KCkgc2VsZWN0aW9uTW9kZTogRGF0ZUlucHV0LlNlbGVjdGlvbk1vZGUgPSAnZGF5JztcclxuXHJcbiAgQElucHV0KCkgbWluRGF0ZTogRGF0ZSA9IERhdGVUaW1lSGVscGVyLm1pbkRhdGVQaWNrZXJEYXRlO1xyXG4gIEBJbnB1dCgpIG1heERhdGU6IERhdGUgPSBEYXRlVGltZUhlbHBlci5tYXhEYXRlUGlja2VyRGF0ZTtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHRhYmluZGV4PzogbnVtYmVyID0gMDtcclxuXHJcbiAgQE91dHB1dCgpIGRhdGVTZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZT4oKTtcclxuXHJcbiAgLyoqIERldGVybWluZXMgdGhlIGN1cnJlbnQgdmlldyBvZiB0aGUgY2FsZW5kYXIuICovXHJcbiAgQElucHV0KCkgcHVibGljIHZpZXc6IENhbGVuZGFyLlZpZXcgPSB7IG1vZGU6ICdkYXknLCBkYXRlOiBuZXcgRGF0ZSgpIH07XHJcbiAgQE91dHB1dCgpIHB1YmxpYyB2aWV3Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxDYWxlbmRhci5WaWV3PigpO1xyXG5cclxuICAvKiogTW9udGggb2YgdGhlIGFjdGl2ZSBkYXRlIGRpc3BsYXllZCBpbiB0aGUgaGVhZGVyIGJ1dHRvbnMuICovXHJcbiAgcHVibGljIG1vbnRoPzogc3RyaW5nO1xyXG5cclxuICAvKiogWWVhciBvZiB0aGUgYWN0aXZlIGRhdGUgZGlzcGxheWVkIGluIHRoZSBoZWFkZXIgYnV0dG9ucy4gKi9cclxuICBwdWJsaWMgeWVhcj86IHN0cmluZztcclxuXHJcbiAgLyoqIFJhbmdlIG9mIHllYXJzIHRvIGRpc3BsYXkgaW4gdGhlIHllYXIgdmlldy4gKi9cclxuICBwdWJsaWMgeWVhclJhbmdlPzogc3RyaW5nO1xyXG5cclxuICAvKiogQXJyYXkgb2YgY2FsZW5kYXIgaXRlbSByb3dzIHRvIGRpc3BsYXkgaW4gdGhlIGNhbGVuZGFyLiAqL1xyXG4gIHB1YmxpYyBjYWxlbmRhckl0ZW1zOiBDYWxlbmRhci5JdGVtW11bXSA9IFtdO1xyXG5cclxuICAvKiogV2Vla2RheSBsYWJlbHMgdG8gc2hvdyBhdCB0aGUgdG9wIG9mIHRoZSBjYWxlbmRhciBpbiBkYXkgdmlldy4gKi9cclxuICBwdWJsaWMgd2Vla0RheXMgPSBtb21lbnQud2Vla2RheXNTaG9ydCgpLm1hcChkID0+IGQuc2xpY2UoMCwgMSkpO1xyXG5cclxuICBwdWJsaWMgZGlzYWJsZVByZXZpb3VzQnV0dG9uOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGRpc2FibGVOZXh0QnV0dG9uOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8vIFRyYWNrYnkgZnVuY3Rpb25zIGZvciBuZ0ZvciBsb29wcy4gVGhlc2UgcmVkdWNlIHRoZSBudW1iZXIgb2YgRE9NIGVsZW1lbnRzIHRoYXQgbmVlZCB0byBiZSB1cGRhdGVkIHdoZW4gdGhlIGNhbGVuZGFyIGlzIHJlLWRyYXduLlxyXG4gIC8vIFdpdGhvdXQgdGhlc2UgdGhlcmUgYXJlIHNvbWUgY2hhbmdlLWRldGVjdGlvbiBpc3N1ZXMgb24gdGhlIGZpcnN0LXRpbWUgcmVuZGVyaW5nIG9mIHRoZSBjYWxlbmRhci5cclxuICBwdWJsaWMgdHJhY2tCeURhdGVSb3cgPSAoaW5kZXg6IG51bWJlciwgcm93OiBDYWxlbmRhci5JdGVtW10pID0+IGAke3Jvd1swXS5kYXRlLnRvSVNPU3RyaW5nKCl9LSR7cm93W3Jvdy5sZW5ndGggLSAxXS5kYXRlLnRvSVNPU3RyaW5nKCl9YDtcclxuICBwdWJsaWMgdHJhY2tCeURhdGUgPSAoaW5kZXg6IG51bWJlciwgaXRlbTogQ2FsZW5kYXIuSXRlbSkgPT4gaXRlbS5kYXRlLnRvSVNPU3RyaW5nKCk7XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzLnZpZXcpIHtcclxuICAgICAgdGhpcy5kcmF3Q2FsZW5kYXIodGhpcy52aWV3KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2hhbmdlcy5taW5EYXRlIHx8IGNoYW5nZXMubWF4RGF0ZSkge1xyXG4gICAgICB0aGlzLnVwZGF0ZU5leHRQcmV2aW91c1N0YXRlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuY2FsZW5kYXJJdGVtcy5sZW5ndGgpIHtcclxuICAgICAgdGhpcy5kcmF3Q2FsZW5kYXIodGhpcy52aWV3KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbk5leHRDbGljaygpOiB2b2lkIHtcclxuICAgIC8vIElmIHdlJ3JlIGluIGRheSB2aWV3LCB3ZSdyZSBpbmNyZW1lbnRpbmcgYnkgbW9udGhcclxuICAgIC8vIEluIG1vbnRoLCBxdWFydGVyLCBhbmQgeWVhciB2aWV3cyB3ZSdyZSBpbmNyZW1lbnRpbmcgYnkgeWVhclxcXHJcbiAgICBjb25zdCB1bml0ID0gdGhpcy52aWV3Lm1vZGUgPT09ICdkYXknID8gJ21vbnRoJyA6ICd5ZWFyJztcclxuICAgIC8vIEluIHllYXIgdmlldywgd2UncmUgbW92aW5nIGJ5IDE2IHllYXJzIGF0IGEgdGltZS4gT3RoZXJ3aXNlIHdlJ3JlIGp1c3QgbW92aW5nIGJ5IDEgbW9udGgveWVhci5cclxuICAgIGNvbnN0IGNvdW50ID0gdGhpcy52aWV3Lm1vZGUgPT09ICd5ZWFyJyA/IDE2IDogMTtcclxuICAgIGNvbnN0IGdvVG9EYXRlID0gbW9tZW50KHRoaXMudmlldy5kYXRlKS5hZGQoY291bnQsIHVuaXQpLnRvRGF0ZSgpO1xyXG4gICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiB0aGlzLnZpZXcubW9kZSwgZGF0ZTogZ29Ub0RhdGUgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25QcmV2aW91c0NsaWNrKCk6IHZvaWQge1xyXG4gICAgLy8gSWYgd2UncmUgaW4gZGF5IHZpZXcsIHdlJ3JlIGluY3JlbWVudGluZyBieSBtb250aFxyXG4gICAgLy8gSW4gbW9udGgsIHF1YXJ0ZXIsIGFuZCB5ZWFyIHZpZXdzIHdlJ3JlIGluY3JlbWVudGluZyBieSB5ZWFyXHJcbiAgICBjb25zdCB1bml0ID0gdGhpcy52aWV3Lm1vZGUgPT09ICdkYXknID8gJ21vbnRoJyA6ICd5ZWFyJztcclxuICAgIC8vIEluIHllYXIgdmlldywgd2UncmUgbW92aW5nIGJ5IDE2IHllYXJzIGF0IGEgdGltZS4gT3RoZXJ3aXNlIHdlJ3JlIGp1c3QgbW92aW5nIGJ5IDEgbW9udGgveWVhci5cclxuICAgIGNvbnN0IGNvdW50ID0gdGhpcy52aWV3Lm1vZGUgPT09ICd5ZWFyJyA/IDE2IDogMTtcclxuICAgIGNvbnN0IGdvVG9EYXRlID0gbW9tZW50KHRoaXMudmlldy5kYXRlKS5zdWJ0cmFjdChjb3VudCwgdW5pdCkudG9EYXRlKCk7XHJcbiAgICB0aGlzLmRyYXdDYWxlbmRhcih7IG1vZGU6IHRoaXMudmlldy5tb2RlLCBkYXRlOiBnb1RvRGF0ZSB9KTtcclxuICB9XHJcblxyXG4gIC8qKiBTd2l0Y2hlcyB0aGUgY2FsZW5kYXIgdG8gbW9udGggdmlldy4gKi9cclxuICBwdWJsaWMgb25Nb250aENsaWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiAnbW9udGgnLCBkYXRlOiB0aGlzLnZpZXcuZGF0ZSB9KTtcclxuICB9XHJcblxyXG4gIC8qKiBTd2l0Y2hlcyB0aGUgY2FsZW5kYXIgdG8geWVhciB2aWV3LiAqL1xyXG4gIHB1YmxpYyBvblllYXJDbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMuZHJhd0NhbGVuZGFyKHsgbW9kZTogJ3llYXInLCBkYXRlOiB0aGlzLnZpZXcuZGF0ZSB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkl0ZW1TZWxlY3RlZChpdGVtOiBDYWxlbmRhci5JdGVtKTogdm9pZCB7XHJcbiAgICBzd2l0Y2godGhpcy52aWV3Lm1vZGUpIHtcclxuICAgICAgY2FzZSAnZGF5JzpcclxuICAgICAgICB0aGlzLm9uRGF5U2VsZWN0ZWQoaXRlbSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ21vbnRoJzpcclxuICAgICAgICB0aGlzLm9uTW9udGhTZWxlY3RlZChpdGVtKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAncXVhcnRlcic6XHJcbiAgICAgICAgdGhpcy5vblF1YXJ0ZXJTZWxlY3RlZChpdGVtKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAneWVhcic6XHJcbiAgICAgICAgdGhpcy5vblllYXJTZWxlY3RlZChpdGVtKTtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25ZZWFyU2VsZWN0ZWQoaXRlbTogQ2FsZW5kYXIuSXRlbSk6IHZvaWQge1xyXG4gICAgLy8gSWYgaW4geWVhciBzZWxlY3Rpb24gbW9kZSwgZW1pdCB0aGUgY2FsZW5kYXIgaXRlbSBzbyB0aGUgZGF0ZSBwaWNrZXIgY2FuIHVwZGF0ZSB0aGUgc2VsZWN0aW9uLlxyXG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uTW9kZSA9PT0gJ3llYXInKSB7XHJcbiAgICAgIHRoaXMuZGF0ZVNlbGVjdGVkLmVtaXQoaXRlbS5kYXRlKTtcclxuICAgIC8vIElmIHdlJ3JlIGluIHF1YXJ0ZXIgc2VsZWN0aW9uIG1vZGUsIGRyYXcgdGhlIHF1YXJ0ZXIgdmlldy5cclxuICAgIH0gZWxzZSBpZiAodGhpcy5zZWxlY3Rpb25Nb2RlID09PSAncXVhcnRlcicpIHtcclxuICAgICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiAncXVhcnRlcicsIGRhdGU6IGl0ZW0uZGF0ZSB9KTtcclxuICAgIC8vIEFsbCBvdGhlciBzZWxlY3Rpb24gbW9kZXMgc2hvdWxkIHpvb20gaW4gdG8gdGhlIG1vbnRoIHZpZXcgd2hlbiBhIHllYXIgaXMgc2VsZWN0ZWQuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmRyYXdDYWxlbmRhcih7IG1vZGU6ICdtb250aCcsIGRhdGU6IGl0ZW0uZGF0ZSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25RdWFydGVyU2VsZWN0ZWQoaXRlbTogQ2FsZW5kYXIuSXRlbSk6IHZvaWQge1xyXG4gICAgLy8gUXVhcnRlciB2aWV3IGlzIG9ubHkgYWNjZXNzaWJsZSB3aGVuIGluIHF1YXJ0ZXIgc2VsZWN0aW9uIG1vZGUsXHJcbiAgICAvLyBzbyB0aGVyZSdzIG5vIG90aGVyIHZpZXdzIHRvIGRyYXcgZnJvbSBoZXJlLiBKdXN0IGVtaXQgdGhlIHNlbGVjdGVkIGl0ZW0uXHJcbiAgICB0aGlzLmRhdGVTZWxlY3RlZC5lbWl0KGl0ZW0uZGF0ZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uTW9udGhTZWxlY3RlZChpdGVtOiBDYWxlbmRhci5JdGVtKTogdm9pZCB7XHJcbiAgICAvLyBXaGVuIGluIG1vbnRoIHNlbGVjdGlvbiBtb2RlLCBlbWl0IHRoZSBzZWxlY3RlZCBtb250aCBpdGVtIGFuZCBkb24ndCBjaGFuZ2UgdGhlIHZpZXcuXHJcbiAgICBpZiAodGhpcy5zZWxlY3Rpb25Nb2RlID09PSAnbW9udGgnKSB7XHJcbiAgICAgIHRoaXMuZGF0ZVNlbGVjdGVkLmVtaXQoaXRlbS5kYXRlKTtcclxuICAgIC8vIE1vbnRoIHZpZXcgaXMgb25seSBhY2Nlc3NpYmxlIGZyb20gZGF5LCBsYXN0N2RheXMsIGxhc3QyOGRheXMsIG1vbnRoLCBhbmQgcmFuZ2Ugc2VsZWN0aW9uIG1vZGVzLlxyXG4gICAgLy8gSWYgd2UncmUgbm90IGluIG1vbnRoIHNlbGVjdGlvbiBtb2RlLCB3ZSBuZWVkIHRvIHpvb20gaW4gdG8gdGhlIGRheSB2aWV3LlxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kcmF3Q2FsZW5kYXIoeyBtb2RlOiAnZGF5JywgZGF0ZTogaXRlbS5kYXRlIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkRheVNlbGVjdGVkKGl0ZW06IENhbGVuZGFyLkl0ZW0pOiB2b2lkIHtcclxuICAgIC8vIE5vIGZ1cnRoZXIgdmlld3Mgb3RoZXIgdGhhbiBkYXkgbW9kZS4gSnVzdCBlbWl0IHRoZSBzZWxlY3RlZCBpdGVtLlxyXG4gICAgdGhpcy5kYXRlU2VsZWN0ZWQuZW1pdChpdGVtLmRhdGUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBkcmF3Q2FsZW5kYXIodmlldzogQ2FsZW5kYXIuVmlldyk6IHZvaWQge1xyXG4gICAgLy8gSWYgdGhlIHZpZXcgaGFzIGNoYW5nZWQsIGVtaXQgdGhlIG5ldyB2aWV3LlxyXG4gICAgaWYgKHZpZXcuZGF0ZSAhPT0gdGhpcy52aWV3LmRhdGUgfHwgdmlldy5tb2RlICE9PSB0aGlzLnZpZXcubW9kZSkge1xyXG4gICAgICB0aGlzLnZpZXcgPSB2aWV3O1xyXG4gICAgICB0aGlzLnZpZXdDaGFuZ2UuZW1pdCh2aWV3KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgdGhpcy5tb250aCA9IG1vbWVudCh0aGlzLnZpZXcuZGF0ZSkuZm9ybWF0KCdNTU0nKTtcclxuICAgIHRoaXMueWVhciA9IG1vbWVudCh0aGlzLnZpZXcuZGF0ZSkuZm9ybWF0KCdZWVlZJyk7XHJcbiAgICB0aGlzLmNhbGVuZGFySXRlbXMgPSB0aGlzLmdldENhbGVuZGFySXRlbXModGhpcy52aWV3KTtcclxuXHJcbiAgICBjb25zdCBzdGFydFllYXIgPSB0aGlzLmNhbGVuZGFySXRlbXNbMF1bMF0uZGF0ZSA8IHRoaXMubWluRGF0ZSA/IHRoaXMubWluRGF0ZSA6IHRoaXMuY2FsZW5kYXJJdGVtc1swXVswXS5kYXRlO1xyXG4gICAgY29uc3QgbGFzdEl0ZW0gPSB0aGlzLmdldExhc3RJdGVtKCk7XHJcbiAgICBjb25zdCBlbmRZZWFyID0gbGFzdEl0ZW0uZGF0ZSA+IHRoaXMubWF4RGF0ZSA/IHRoaXMubWF4RGF0ZSA6IGxhc3RJdGVtLmRhdGU7XHJcbiAgICB0aGlzLnllYXJSYW5nZSA9IGAke21vbWVudChzdGFydFllYXIpLmZvcm1hdCgnWVlZWScpfSZuZGFzaDske21vbWVudChlbmRZZWFyKS5mb3JtYXQoJ1lZWVknKX1gO1xyXG5cclxuICAgIHRoaXMudXBkYXRlTmV4dFByZXZpb3VzU3RhdGVzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldENhbGVuZGFySXRlbXModmlldzogQ2FsZW5kYXIuVmlldyk6IENhbGVuZGFyLkl0ZW1bXVtdIHtcclxuICAgIHN3aXRjaCAodmlldy5tb2RlKSB7XHJcbiAgICAgIGNhc2UgJ2RheSc6IHJldHVybiB0aGlzLmdldERheVZpZXdJdGVtcyh2aWV3LmRhdGUpO1xyXG4gICAgICBjYXNlICdtb250aCc6IHJldHVybiB0aGlzLmdldE1vbnRoVmlld0l0ZW1zKHZpZXcuZGF0ZSk7XHJcbiAgICAgIGNhc2UgJ3F1YXJ0ZXInOiByZXR1cm4gdGhpcy5nZXRRdWFydGVyVmlld0l0ZW1zKHZpZXcuZGF0ZSk7XHJcbiAgICAgIGNhc2UgJ3llYXInOiByZXR1cm4gdGhpcy5nZXRZZWFyVmlld0l0ZW1zKHZpZXcuZGF0ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldERheVZpZXdJdGVtcyhhY3RpdmVEYXRlOiBEYXRlKTogQ2FsZW5kYXIuSXRlbVtdW10ge1xyXG4gICAgLy8gNiByb3dzIG9mIDcgZGF5cyA9IDQyIGRheXNcclxuICAgIHJldHVybiByYW5nZSgwLCA2KS5tYXAociA9PiB7XHJcbiAgICAgIHJldHVybiByYW5nZSgwLCA3KS5tYXAoZCA9PiB7XHJcbiAgICAgICAgLy8gVXNlIHRoZSBzdGFydCBvZiB0aGUgd2VlayBvZiB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aC5cclxuICAgICAgICAvLyBUaGlzIHBhZHMgb3V0IHRoZSBmaXJzdCB3ZWVrIHdpdGggYW55IGRheXMgZnJvbSB0aGUgcHJldmlvdXMgbW9udGguXHJcbiAgICAgICAgY29uc3QgZGF0ZSA9IG1vbWVudChhY3RpdmVEYXRlKS5zdGFydE9mKCdtb250aCcpLnN0YXJ0T2YoJ3dlZWsnKS5hZGQociAqIDcgKyBkLCAnZGF5Jyk7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGRhdGU6IGRhdGUudG9EYXRlKCksXHJcbiAgICAgICAgICBsYWJlbDogZGF0ZS5mb3JtYXQoJ0QnKVxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldE1vbnRoVmlld0l0ZW1zKGFjdGl2ZURhdGU6IERhdGUpOiBDYWxlbmRhci5JdGVtW11bXSB7XHJcbiAgICAvLyA0IHJvd3Mgb2YgMyBtb250aHMgPSAxMiBtb250aHNcclxuICAgIHJldHVybiByYW5nZSgwLCA0KS5tYXAociA9PiB7XHJcbiAgICAgIHJldHVybiByYW5nZSgwLCAzKS5tYXAobSA9PiB7XHJcbiAgICAgICAgY29uc3QgZGF0ZSA9IG1vbWVudChhY3RpdmVEYXRlKS5zdGFydE9mKCd5ZWFyJykuYWRkKHIgKiAzICsgbSwgJ21vbnRoJyk7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGRhdGU6IGRhdGUudG9EYXRlKCksXHJcbiAgICAgICAgICBsYWJlbDogZGF0ZS5mb3JtYXQoJ01NTScpXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UXVhcnRlclZpZXdJdGVtcyhhY3RpdmVEYXRlOiBEYXRlKTogQ2FsZW5kYXIuSXRlbVtdW10ge1xyXG4gICAgLy8gMiByb3dzIG9mIDIgcXVhcnRlcnMgPSA0IHF1YXJ0ZXJzXHJcbiAgICByZXR1cm4gcmFuZ2UoMCwgMikubWFwKHIgPT4ge1xyXG4gICAgICByZXR1cm4gcmFuZ2UoMCwgMikubWFwKHEgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRhdGUgPSBtb21lbnQoYWN0aXZlRGF0ZSkuc3RhcnRPZigneWVhcicpLmFkZChyICogMiArIHEsICdxdWFydGVyJyk7XHJcbiAgICAgICAgY29uc3QgZW5kRGF0ZSA9IG1vbWVudChkYXRlKS5lbmRPZigncXVhcnRlcicpO1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBkYXRlOiBkYXRlLnRvRGF0ZSgpLFxyXG4gICAgICAgICAgbGFiZWw6IGAke2RhdGUuZm9ybWF0KCdNTU0nKX0mbmRhc2g7JHtlbmREYXRlLmZvcm1hdCgnTU1NJyl9YFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFllYXJWaWV3SXRlbXMoYWN0aXZlRGF0ZTogRGF0ZSk6IENhbGVuZGFyLkl0ZW1bXVtdIHtcclxuICAgIC8vIDQgcm93cyBvZiA0IHllYXJzID0gMTYgeWVhcnNcclxuICAgIHJldHVybiByYW5nZSgwLCA0KS5tYXAociA9PiB7XHJcbiAgICAgIHJldHVybiByYW5nZSgwLCA0KS5tYXAoeSA9PiB7XHJcbiAgICAgICAgLy8gU3VidHJhY3RpbmcgOCB5ZWFycyB0byBwdXQgdGhlIGN1cnJlbnQgYWN0aXZlIHllYXIgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgM3JkIHJvdy5cclxuICAgICAgICBjb25zdCBkYXRlID0gbW9tZW50KGFjdGl2ZURhdGUpLnN0YXJ0T2YoJ3llYXInKS5zdWJ0cmFjdCg4LCAneWVhcnMnKS5hZGQociAqIDQgKyB5LCAneWVhcicpO1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBkYXRlOiBkYXRlLnRvRGF0ZSgpLFxyXG4gICAgICAgICAgbGFiZWw6IGRhdGUuZm9ybWF0KCdZWVlZJylcclxuICAgICAgICB9O1xyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVOZXh0UHJldmlvdXNTdGF0ZXMoKTogdm9pZCB7XHJcbiAgICAvLyBXZSBjaGFuZ2UgdGhlIGdyYW51bGFyaXR5IG9mIHRoZSBtaW4gYW5kIG1heCBkYXRlIGNoZWNrcyBiYXNlZCBvbiB0aGUgY3VycmVudCB2aWV3IG1vZGUuXHJcbiAgICAvLyBXZSBkb24ndCB3YW50IHRvIGRpc2FibGUgdGhlIG5leHQvcHJldmlvdXMgYnV0dG9ucyBpZiB0aGUgbWluIG9yIG1heCBkYXRlIGlzIHdpdGhpbiB0aGVcclxuICAgIC8vIG5leHQgb3IgcHJldmlvdXMgdmlld1xyXG4gICAgY29uc3QgdW5pdCA9IHRoaXMudmlldy5tb2RlID09PSAnZGF5JyA/ICdtb250aCcgOiAneWVhcic7XHJcblxyXG4gICAgLy8gV2hlbiBpbiB5ZWFyIHZpZXcsIHdlIG5lZWQgdG8gc3VidHJhY3QgOSB5ZWFycyB0byBkZXRlcm1pbmUgaWYgd2UncmUgcGFzdCB0aGUgbWluIGRhdGUuXHJcbiAgICAvLyBUaGUgeWVhciB2aWV3IGlzIDE2IHllYXJzIGxvbmcsIGFuZCB0aGUgY3VycmVudCBkYXRlIGlzIHRoZSA5dGggeWVhciBpbiB0aGUgdmlldy5cclxuICAgIGNvbnN0IHN1YkNvdW50ID0gdGhpcy52aWV3Lm1vZGUgPT09ICd5ZWFyJyA/IDkgOiAxO1xyXG4gICAgaWYgKG1vbWVudCh0aGlzLnZpZXcuZGF0ZSkuc3VidHJhY3Qoc3ViQ291bnQsIHVuaXQpLmlzQmVmb3JlKHRoaXMubWluRGF0ZSwgdW5pdCkpIHtcclxuICAgICAgdGhpcy5kaXNhYmxlUHJldmlvdXNCdXR0b24gPSB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kaXNhYmxlUHJldmlvdXNCdXR0b24gPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBXaGVuIGluIHllYXIgdmlldywgd2UgbmVlZCB0byBhZGQgOCB5ZWFycyB0byBkZXRlcm1pbmUgaWYgd2UncmUgcGFzdCB0aGUgbWF4IGRhdGUuXHJcbiAgICAvLyBUaGUgeWVhciB2aWV3IGlzIDE2IHllYXJzIGxvbmcsIGFuZCB0aGUgY3VycmVudCBkYXRlIGlzIHRoZSA5dGggeWVhciBpbiB0aGUgdmlldy5cclxuICAgIGNvbnN0IGFkZENvdW50ID0gdGhpcy52aWV3Lm1vZGUgPT09ICd5ZWFyJyA/IDggOiAxO1xyXG4gICAgaWYgKG1vbWVudCh0aGlzLnZpZXcuZGF0ZSkuYWRkKGFkZENvdW50LCB1bml0KS5pc0FmdGVyKHRoaXMubWF4RGF0ZSwgdW5pdCkpIHtcclxuICAgICAgdGhpcy5kaXNhYmxlTmV4dEJ1dHRvbiA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmRpc2FibGVOZXh0QnV0dG9uID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldExhc3RJdGVtKCk6IENhbGVuZGFyLkl0ZW0ge1xyXG4gICAgY29uc3QgbGFzdFJvdyA9IHRoaXMuY2FsZW5kYXJJdGVtc1t0aGlzLmNhbGVuZGFySXRlbXMubGVuZ3RoIC0gMV07XHJcbiAgICByZXR1cm4gbGFzdFJvd1tsYXN0Um93Lmxlbmd0aCAtIDFdO1xyXG4gIH1cclxufVxyXG4iLCI8aGVhZGVyIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtdC0xIG1iLTIgcHgtMVwiPlxyXG4gIDxidXR0b24gaWQ9XCJ7e2lkfX1fcHJldl9idXR0b25cIlxyXG4gICAgICAgICAgY2xhc3M9XCJtci1hdXRvXCJcclxuICAgICAgICAgIChjbGljayk9XCJvblByZXZpb3VzQ2xpY2soKVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZVByZXZpb3VzQnV0dG9uXCJcclxuICAgICAgICAgIHRhYmluZGV4PVwie3t0YWJpbmRleH19XCI+XHJcbiAgICA8aSBjbGFzcz1cImVjLWljb24gaWNvbi1hbmdsZS1kb3duIHJvdGF0ZS05MFwiPjwvaT5cclxuICA8L2J1dHRvbj5cclxuXHJcbiAgPGJ1dHRvbiAqbmdJZj1cInZpZXcubW9kZSA9PT0gJ2RheSdcIlxyXG4gICAgICAgICAgaWQ9XCJ7e2lkfX1fbW9udGhfYnV0dG9uXCJcclxuICAgICAgICAgIGNsYXNzPVwidGV4dC1ib2R5LTEgZm9udC13ZWlnaHQtYm9sZFwiXHJcbiAgICAgICAgICAoY2xpY2spPVwib25Nb250aENsaWNrKClcIlxyXG4gICAgICAgICAgdGFiaW5kZXg9XCJ7e3RhYmluZGV4fX1cIj5cclxuICAgIHt7bW9udGh9fVxyXG4gIDwvYnV0dG9uPlxyXG5cclxuICA8YnV0dG9uICpuZ0lmPVwidmlldy5tb2RlICE9PSAneWVhcidcIlxyXG4gICAgICAgICAgaWQ9XCJ7e2lkfX1feWVhcl9idXR0b25cIlxyXG4gICAgICAgICAgY2xhc3M9XCJ0ZXh0LWJvZHktMSBmb250LXdlaWdodC1ib2xkXCJcclxuICAgICAgICAgIChjbGljayk9XCJvblllYXJDbGljaygpXCJcclxuICAgICAgICAgIHRhYmluZGV4PVwie3t0YWJpbmRleH19XCI+XHJcbiAgICB7e3llYXJ9fVxyXG4gIDwvYnV0dG9uPlxyXG5cclxuICA8ZGl2IGlkPVwie3tpZH19X3llYXJfcmFuZ2VcIlxyXG4gICAgICAgKm5nSWY9XCJ2aWV3Lm1vZGUgPT09ICd5ZWFyJ1wiXHJcbiAgICAgICBjbGFzcz1cInRleHQtYm9keS0xIGZvbnQtd2VpZ2h0LWJvbGRcIlxyXG4gICAgICAgW2lubmVySFRNTF09XCJ5ZWFyUmFuZ2VcIj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGJ1dHRvbiBpZD1cInt7aWR9fV9uZXh0X2J1dHRvblwiXHJcbiAgICAgICAgICBjbGFzcz1cIm1sLWF1dG9cIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIm9uTmV4dENsaWNrKClcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVOZXh0QnV0dG9uXCJcclxuICAgICAgICAgIHRhYmluZGV4PVwie3t0YWJpbmRleH19XCI+XHJcbiAgICA8aSBjbGFzcz1cImVjLWljb24gaWNvbi1hbmdsZS1kb3duIHJvdGF0ZS0yNzBcIj48L2k+XHJcbiAgPC9idXR0b24+XHJcbjwvaGVhZGVyPlxyXG5cclxuPGRpdiAqbmdJZj1cInZpZXcubW9kZSA9PT0gJ2RheSdcIlxyXG4gICAgIGNsYXNzPVwibWItMSBweC0yIGQtZmxleFwiPlxyXG4gIDxoMyAqbmdGb3I9XCJsZXQgZGF5IG9mIHdlZWtEYXlzXCJcclxuICAgICAgY2xhc3M9XCJ0ZXh0LWhlYWRpbmctMyBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIlxyXG4gICAgICBzdHlsZT1cIndpZHRoOiAycmVtOyBoZWlnaHQ6IDEuNzVyZW07XCI+e3tkYXl9fTwvaDM+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiAqbmdGb3I9XCJsZXQgcm93IG9mIGNhbGVuZGFySXRlbXM7IGxhc3QgYXMgaXNMYXN0OyB0cmFja0J5OiB0cmFja0J5RGF0ZVJvd1wiXHJcbiAgICAgY2xhc3M9XCJweC0yIGQtZmxleCB7e3ZpZXcubW9kZX19LXZpZXdcIlxyXG4gICAgIFtjbGFzcy5tYi0xXT1cIiFpc0xhc3RcIlxyXG4gICAgIFtjbGFzcy5tYi0yXT1cImlzTGFzdFwiPlxyXG4gIDxidXR0b24gKm5nRm9yPVwibGV0IGl0ZW0gb2Ygcm93OyB0cmFja0J5OiB0cmFja0J5RGF0ZVwiXHJcbiAgICAgICAgICBpZD1cInt7aWR9fV9pdGVtX3t7aXRlbS5kYXRlIHwgZGF0ZTonTU1fZGRfeXl5eSd9fVwiXHJcbiAgICAgICAgICBlYy1jYWxlbmRhci1pdGVtXHJcbiAgICAgICAgICBbaXRlbV09XCJpdGVtXCJcclxuICAgICAgICAgIFtzZWxlY3Rpb25dPVwic2VsZWN0aW9uXCJcclxuICAgICAgICAgIFt2aWV3XT1cInZpZXdcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIm9uSXRlbVNlbGVjdGVkKGl0ZW0pXCJcclxuICAgICAgICAgIFtpbm5lckhUTUxdPVwiaXRlbS5sYWJlbFwiXHJcbiAgICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcclxuICAgICAgICAgIFttYXhEYXRlXT1cIm1heERhdGVcIlxyXG4gICAgICAgICAgdGFiaW5kZXg9XCJ7e3RhYmluZGV4fX1cIj5cclxuICA8L2J1dHRvbj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvY2FsZW5kYXIvY2FsZW5kYXIudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBuYW1lc3BhY2UgQ2FsZW5kYXIge1xuICBleHBvcnQgdHlwZSBWaWV3TW9kZSA9ICdkYXknIHwgJ21vbnRoJyB8ICdxdWFydGVyJyB8ICd5ZWFyJztcblxuICBleHBvcnQgdHlwZSBWaWV3ID0ge1xuICAgIG1vZGU6IFZpZXdNb2RlO1xuICAgIGRhdGU6IERhdGU7XG4gIH07XG5cbiAgZXhwb3J0IHR5cGUgSXRlbSA9IHtcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIGRhdGU6IERhdGU7XG4gIH07XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvY2FsZW5kYXIvY2FsZW5kYXIudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBuYW1lc3BhY2UgQ2FsZW5kYXIge1xyXG4gIGV4cG9ydCB0eXBlIFZpZXdNb2RlID0gJ2RheScgfCAnbW9udGgnIHwgJ3F1YXJ0ZXInIHwgJ3llYXInO1xyXG5cclxuICBleHBvcnQgdHlwZSBWaWV3ID0ge1xyXG4gICAgbW9kZTogVmlld01vZGU7XHJcbiAgICBkYXRlOiBEYXRlO1xyXG4gIH07XHJcblxyXG4gIGV4cG9ydCB0eXBlIEl0ZW0gPSB7XHJcbiAgICBsYWJlbDogc3RyaW5nO1xyXG4gICAgZGF0ZTogRGF0ZTtcclxuICB9O1xyXG59XHJcbiJdfQ==