@ardium-ui/ui 4.0.0 → 4.1.0

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 (173) hide show
  1. package/esm2022/lib/_internal/boolean-component.mjs +1 -1
  2. package/esm2022/lib/_internal/disablable-component.mjs +1 -1
  3. package/esm2022/lib/_internal/focusable-component.mjs +1 -1
  4. package/esm2022/lib/_internal/item-storages/dropdown-item-storage.mjs +1 -1
  5. package/esm2022/lib/_internal/item-storages/simple-item-storage.mjs +1 -1
  6. package/esm2022/lib/_internal/ngmodel-component.mjs +2 -2
  7. package/esm2022/lib/_internal/public-api.mjs +1 -1
  8. package/esm2022/lib/_internal/selectable-list-component.mjs +1 -1
  9. package/esm2022/lib/buttons/_button-base.defaults.mjs +1 -1
  10. package/esm2022/lib/buttons/_button-base.mjs +4 -2
  11. package/esm2022/lib/buttons/button/button.component.mjs +1 -1
  12. package/esm2022/lib/buttons/fab/fab.component.mjs +1 -1
  13. package/esm2022/lib/buttons/icon-button/icon-button.component.mjs +1 -1
  14. package/esm2022/lib/buttons/icon-button/icon-button.module.mjs +1 -1
  15. package/esm2022/lib/calendar/calendar.component.mjs +3 -3
  16. package/esm2022/lib/calendar/calendar.defaults.mjs +1 -1
  17. package/esm2022/lib/calendar/calendar.internal-types.mjs +1 -1
  18. package/esm2022/lib/calendar/calendar.module.mjs +1 -1
  19. package/esm2022/lib/calendar/calendar.types.mjs +1 -1
  20. package/esm2022/lib/calendar/index.mjs +1 -1
  21. package/esm2022/lib/calendar/views/days-view/days-view.component.mjs +3 -3
  22. package/esm2022/lib/calendar/views/days-view/days-view.helpers.mjs +1 -1
  23. package/esm2022/lib/calendar/views/months-view/months-view.component.mjs +3 -3
  24. package/esm2022/lib/calendar/views/months-view/months-view.helpers.mjs +1 -1
  25. package/esm2022/lib/calendar/views/years-view/years-view.component.mjs +3 -3
  26. package/esm2022/lib/calendar/views/years-view/years-view.helpers.mjs +1 -1
  27. package/esm2022/lib/checkbox-list/checkbox-list.component.mjs +3 -3
  28. package/esm2022/lib/checkbox-list/checkbox-list.module.mjs +1 -1
  29. package/esm2022/lib/dialog/dialog.component.mjs +3 -3
  30. package/esm2022/lib/dialog/dialog.defaults.mjs +1 -1
  31. package/esm2022/lib/dialog/dialog.directives.mjs +1 -1
  32. package/esm2022/lib/dialog/dialog.module.mjs +1 -1
  33. package/esm2022/lib/dialog/dialog.types.mjs +1 -1
  34. package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.component.mjs +3 -3
  35. package/esm2022/lib/file-inputs/file-input/file-input.component.mjs +3 -3
  36. package/esm2022/lib/file-inputs/file-input-base.mjs +1 -1
  37. package/esm2022/lib/form-field/error/error.component.mjs +1 -1
  38. package/esm2022/lib/form-field/error/error.directive.mjs +1 -1
  39. package/esm2022/lib/form-field/form-field.component.mjs +4 -4
  40. package/esm2022/lib/form-field/form-field.module.mjs +1 -1
  41. package/esm2022/lib/form-field/hint/hint.component.mjs +1 -1
  42. package/esm2022/lib/form-field/hint/hint.directive.mjs +1 -1
  43. package/esm2022/lib/form-field/horizontal-form-field.component.mjs +3 -3
  44. package/esm2022/lib/form-field/index.mjs +1 -1
  45. package/esm2022/lib/form-field-frame/form-field-frame.component.mjs +1 -1
  46. package/esm2022/lib/inputs/_simple-input-base.mjs +2 -2
  47. package/esm2022/lib/inputs/date-input/date-input.component.mjs +3 -3
  48. package/esm2022/lib/inputs/date-input/date-input.defaults.mjs +1 -1
  49. package/esm2022/lib/inputs/date-input/date-input.directive.mjs +1 -1
  50. package/esm2022/lib/inputs/date-input/date-input.module.mjs +1 -1
  51. package/esm2022/lib/inputs/date-input/date-input.serializers.mjs +1 -1
  52. package/esm2022/lib/inputs/date-input/date-input.types.mjs +1 -1
  53. package/esm2022/lib/inputs/date-input/index.mjs +1 -1
  54. package/esm2022/lib/inputs/digit-input/digit-input.component.mjs +3 -3
  55. package/esm2022/lib/inputs/digit-input/digit-input.defaults.mjs +1 -1
  56. package/esm2022/lib/inputs/digit-input/digit-input.model.mjs +1 -1
  57. package/esm2022/lib/inputs/digit-input/digit-input.module.mjs +1 -1
  58. package/esm2022/lib/inputs/digit-input/digit-input.types.mjs +1 -1
  59. package/esm2022/lib/inputs/digit-input/digit-input.utils.mjs +1 -1
  60. package/esm2022/lib/inputs/hex-input/hex-input.component.mjs +3 -3
  61. package/esm2022/lib/inputs/hex-input/hex-input.defaults.mjs +1 -1
  62. package/esm2022/lib/inputs/input/input.component.mjs +3 -3
  63. package/esm2022/lib/inputs/input/input.module.mjs +1 -1
  64. package/esm2022/lib/inputs/input-utils.mjs +8 -3
  65. package/esm2022/lib/inputs/number-input/number-input.component.mjs +13 -4
  66. package/esm2022/lib/inputs/number-input/number-input.defaults.mjs +1 -1
  67. package/esm2022/lib/inputs/password-input/password-input.component.mjs +3 -3
  68. package/esm2022/lib/inputs/password-input/password-input.defaults.mjs +1 -1
  69. package/esm2022/lib/inputs/simple-input/simple-input.component.mjs +5 -5
  70. package/esm2022/lib/inputs/simple-input/simple-input.defaults.mjs +1 -1
  71. package/esm2022/lib/modal/index.mjs +1 -1
  72. package/esm2022/lib/modal/modal.component.mjs +3 -3
  73. package/esm2022/lib/modal/modal.defaults.mjs +1 -1
  74. package/esm2022/lib/modal/modal.directives.mjs +1 -1
  75. package/esm2022/lib/modal/modal.module.mjs +1 -1
  76. package/esm2022/lib/radio/radio/radio.component.mjs +1 -1
  77. package/esm2022/lib/radio/radio/radio.defaults.mjs +1 -1
  78. package/esm2022/lib/radio/radio-group.component.mjs +1 -1
  79. package/esm2022/lib/segment/segment.component.mjs +3 -3
  80. package/esm2022/lib/select/select.component.mjs +3 -3
  81. package/esm2022/lib/select/select.defaults.mjs +1 -1
  82. package/esm2022/lib/slide-toggle/slide-toggle.component.mjs +1 -1
  83. package/esm2022/lib/slider/range-slider/range-slider.component.mjs +1 -1
  84. package/esm2022/lib/slider/slider.component.mjs +3 -3
  85. package/esm2022/lib/star/index.mjs +1 -1
  86. package/esm2022/lib/star/rating-display/index.mjs +1 -1
  87. package/esm2022/lib/star/rating-display/rating-display.component.mjs +3 -3
  88. package/esm2022/lib/star/rating-display/rating-display.defaults.mjs +1 -1
  89. package/esm2022/lib/star/rating-display/rating-display.directives.mjs +1 -1
  90. package/esm2022/lib/star/rating-display/rating-display.module.mjs +1 -1
  91. package/esm2022/lib/star/rating-display/rating-display.types.mjs +1 -1
  92. package/esm2022/lib/star/rating-input/index.mjs +1 -1
  93. package/esm2022/lib/star/rating-input/rating-input.component.mjs +3 -3
  94. package/esm2022/lib/star/rating-input/rating-input.defaults.mjs +1 -1
  95. package/esm2022/lib/star/rating-input/rating-input.directives.mjs +2 -2
  96. package/esm2022/lib/star/rating-input/rating-input.module.mjs +1 -1
  97. package/esm2022/lib/star/rating-input/rating-input.types.mjs +1 -1
  98. package/esm2022/lib/star/star-button/index.mjs +1 -1
  99. package/esm2022/lib/star/star-button/star-button.component.mjs +4 -4
  100. package/esm2022/lib/star/star-button/star-button.defaults.mjs +1 -1
  101. package/esm2022/lib/star/star-button/star-button.directives.mjs +2 -2
  102. package/esm2022/lib/star/star-button/star-button.module.mjs +1 -1
  103. package/esm2022/lib/star/star-button/star-button.types.mjs +1 -1
  104. package/esm2022/lib/star/star.component.mjs +3 -3
  105. package/esm2022/lib/star/star.defaults.mjs +1 -1
  106. package/esm2022/lib/star/star.directives.mjs +2 -2
  107. package/esm2022/lib/star/star.module.mjs +1 -1
  108. package/esm2022/lib/star/star.types.mjs +1 -1
  109. package/esm2022/lib/text-list/index.mjs +1 -1
  110. package/esm2022/lib/text-list/text-list.component.mjs +3 -3
  111. package/esm2022/lib/text-list/text-list.module.mjs +1 -1
  112. package/esm2022/lib/text-list/text-list.pipe.mjs +1 -1
  113. package/esm2022/public-api.mjs +1 -1
  114. package/fesm2022/ardium-ui-ui.mjs +75 -59
  115. package/fesm2022/ardium-ui-ui.mjs.map +1 -1
  116. package/lib/dialog/dialog.types.d.ts +1 -1
  117. package/lib/inputs/date-input/date-input.types.d.ts +1 -1
  118. package/lib/inputs/number-input/number-input.component.d.ts +3 -1
  119. package/lib/star/rating-input/rating-input.directives.d.ts +2 -2
  120. package/lib/star/rating-input/rating-input.types.d.ts +1 -1
  121. package/lib/star/star-button/star-button.directives.d.ts +2 -2
  122. package/lib/star/star-button/star-button.types.d.ts +1 -1
  123. package/lib/star/star.directives.d.ts +2 -2
  124. package/package.json +1 -1
  125. package/prebuilt-themes/default/buttons/button.css.map +1 -1
  126. package/prebuilt-themes/default/buttons/fab.css.map +1 -1
  127. package/prebuilt-themes/default/buttons/icon-button.css.map +1 -1
  128. package/prebuilt-themes/default/calendar-OLD.css.map +1 -1
  129. package/prebuilt-themes/default/calendar.css.map +1 -1
  130. package/prebuilt-themes/default/checkbox-list.css.map +1 -1
  131. package/prebuilt-themes/default/checkbox.css.map +1 -1
  132. package/prebuilt-themes/default/chips.css.map +1 -1
  133. package/prebuilt-themes/default/form-field-frame.css.map +1 -1
  134. package/prebuilt-themes/default/inputs/color-input.css.map +1 -1
  135. package/prebuilt-themes/default/inputs/date-input.css.map +1 -1
  136. package/prebuilt-themes/default/inputs/digit-input.css.map +1 -1
  137. package/prebuilt-themes/default/inputs/file-input.css.map +1 -1
  138. package/prebuilt-themes/default/inputs/hex-input.css.map +1 -1
  139. package/prebuilt-themes/default/inputs/input.css.map +1 -1
  140. package/prebuilt-themes/default/inputs/number-input.css.map +1 -1
  141. package/prebuilt-themes/default/inputs/search-bar.css.map +1 -1
  142. package/prebuilt-themes/default/inputs/simple-input.css.map +1 -1
  143. package/prebuilt-themes/default/radio.css.map +1 -1
  144. package/prebuilt-themes/default/segment.css.map +1 -1
  145. package/prebuilt-themes/default/select.css.map +1 -1
  146. package/prebuilt-themes/default/slide-toggle.css.map +1 -1
  147. package/prebuilt-themes/default/slider.css.map +1 -1
  148. package/prebuilt-themes/default/stars.css.map +1 -1
  149. package/prebuilt-themes/default/statebox.css.map +1 -1
  150. package/prebuilt-themes/default/tabber.css.map +1 -1
  151. package/themes/_variables.scss +121 -121
  152. package/themes/default/_mixins.scss +8 -2
  153. package/themes/default/buttons/_button-mixins.scss +3 -1
  154. package/themes/default/buttons/button.scss +79 -79
  155. package/themes/default/buttons/fab.scss +81 -81
  156. package/themes/default/buttons/icon-button.scss +62 -62
  157. package/themes/default/calendar-OLD.scss +183 -183
  158. package/themes/default/calendar.scss +4 -2
  159. package/themes/default/card.scss +135 -135
  160. package/themes/default/core.scss +102 -102
  161. package/themes/default/form-field-frame.scss +3 -1
  162. package/themes/default/form-field.scss +2 -2
  163. package/themes/default/inputs/_shared.scss +50 -50
  164. package/themes/default/inputs/date-input.scss +4 -5
  165. package/themes/default/inputs/digit-input.scss +3 -1
  166. package/themes/default/inputs/file-input.scss +79 -79
  167. package/themes/default/inputs/input.scss +1 -1
  168. package/themes/default/inputs/number-input.scss +131 -131
  169. package/themes/default/inputs/simple-input.scss +1 -1
  170. package/themes/default/kbd.scss +21 -21
  171. package/themes/default/modal.scss +94 -94
  172. package/themes/default/spinner.scss +21 -21
  173. package/themes/default/stars.scss +85 -85
@@ -71,6 +71,7 @@ export class ArdiumNumberInputComponent extends _FormFieldComponentBase {
71
71
  this.allowFloat = input(false, { transform: v => coerceBooleanProperty(v) });
72
72
  //! incerement/decrement buttons
73
73
  this.noButtons = input(false, { transform: v => coerceBooleanProperty(v) });
74
+ this.keepFocusOnQuickChangeButton = input(true, { transform: v => coerceBooleanProperty(v) });
74
75
  this.stepSize = input(1, {
75
76
  transform: v => {
76
77
  const newValue = coerceNumberProperty(v, 1);
@@ -129,9 +130,17 @@ export class ArdiumNumberInputComponent extends _FormFieldComponentBase {
129
130
  this._focusInputIfCantQuickChange();
130
131
  }
131
132
  _focusInputIfCantQuickChange() {
133
+ if (this.keepFocusOnQuickChangeButton())
134
+ return;
132
135
  if (!this.canDecrement() || !this.canIncrement())
133
136
  this.focus();
134
137
  }
138
+ onQuickChangeButtonMouseup(event) {
139
+ // prevent the event from reaching the parent element
140
+ if (this.keepFocusOnQuickChangeButton()) {
141
+ event.stopPropagation();
142
+ }
143
+ }
135
144
  canIncrement() {
136
145
  const num = this.inputModel.numberValue();
137
146
  return !isDefined(num) || num < this.max();
@@ -202,7 +211,7 @@ export class ArdiumNumberInputComponent extends _FormFieldComponentBase {
202
211
  }
203
212
  }
204
213
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumNumberInputComponent, deps: [{ token: ARD_NUMBER_INPUT_DEFAULTS }], target: i0.ɵɵFactoryTarget.Component }); }
205
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ArdiumNumberInputComponent, selector: "ard-number-input", inputs: { inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, alignText: { classPropertyName: "alignText", publicName: "alignText", isSignal: true, isRequired: false, transformFunction: null }, compact: { classPropertyName: "compact", publicName: "compact", isSignal: true, isRequired: false, transformFunction: null }, inputAttrs: { classPropertyName: "inputAttrs", publicName: "inputAttrs", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, allowFloat: { classPropertyName: "allowFloat", publicName: "allowFloat", isSignal: true, isRequired: false, transformFunction: null }, noButtons: { classPropertyName: "noButtons", publicName: "noButtons", isSignal: true, isRequired: false, transformFunction: null }, stepSize: { classPropertyName: "stepSize", publicName: "stepSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", inputEvent: "input", changeEvent: "change", clearEvent: "clear", quickChangeEvent: "quickChange" }, providers: [
214
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ArdiumNumberInputComponent, selector: "ard-number-input", inputs: { inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, alignText: { classPropertyName: "alignText", publicName: "alignText", isSignal: true, isRequired: false, transformFunction: null }, compact: { classPropertyName: "compact", publicName: "compact", isSignal: true, isRequired: false, transformFunction: null }, inputAttrs: { classPropertyName: "inputAttrs", publicName: "inputAttrs", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, allowFloat: { classPropertyName: "allowFloat", publicName: "allowFloat", isSignal: true, isRequired: false, transformFunction: null }, noButtons: { classPropertyName: "noButtons", publicName: "noButtons", isSignal: true, isRequired: false, transformFunction: null }, keepFocusOnQuickChangeButton: { classPropertyName: "keepFocusOnQuickChangeButton", publicName: "keepFocusOnQuickChangeButton", isSignal: true, isRequired: false, transformFunction: null }, stepSize: { classPropertyName: "stepSize", publicName: "stepSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", inputEvent: "input", changeEvent: "change", clearEvent: "clear", quickChangeEvent: "quickChange" }, providers: [
206
215
  {
207
216
  provide: NG_VALUE_ACCESSOR,
208
217
  useExisting: forwardRef(() => ArdiumNumberInputComponent),
@@ -212,7 +221,7 @@ export class ArdiumNumberInputComponent extends _FormFieldComponentBase {
212
221
  provide: _FormFieldComponentBase,
213
222
  useExisting: ArdiumNumberInputComponent,
214
223
  },
215
- ], queries: [{ propertyName: "placeholderTemplate", first: true, predicate: ArdNumberInputPlaceholderTemplateDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["textInput"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"ard-number-input\"\r\n [ngClass]=\"ngClasses()\"\r\n [class.ard-has-error]=\"hasError()\"\r\n [class.ard-is-success]=\"isSuccess()\"\r\n [class.ard-has-value]=\"value\"\r\n (mousedown)=\"$event.preventDefault()\"\r\n (mouseup)=\"onMouseup()\"\r\n>\r\n @if (!noButtons()) {\r\n <ard-button\r\n class=\"ard-quick-change-button decrement\"\r\n [variant]=\"buttonVariant()\"\r\n [appearance]=\"buttonAppearance()\"\r\n color=\"none\"\r\n [disabled]=\"!canDecrement()\"\r\n [tabIndex]=\"!canDecrement() ? -1 : tabIndex()\"\r\n (click)=\"onQuickChangeButtonClick(-1, $event)\"\r\n (ardHold)=\"onQuickChangeButtonClick(-1)\"\r\n ardHoldSpaceKey\r\n >\r\n -\r\n </ard-button>\r\n }\r\n <div class=\"ard-input-container\">\r\n @if (shouldDisplayPlaceholder()) {\r\n <ng-template\r\n #defaultPlaceholderTemplate\r\n let-plchldr\r\n >\r\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\"></ng-template>\r\n }\r\n\r\n <input\r\n #textInput\r\n #focusableElement\r\n type=\"text\"\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"tabIndex()\"\r\n [readonly]=\"readonly()\"\r\n [disabled]=\"disabled()\"\r\n (input)=\"onInput(textInput.value)\"\r\n (focus)=\"onFocusMaster($event)\"\r\n (blur)=\"onBlurMaster($event)\"\r\n (change)=\"onChange($event)\"\r\n (mousedown)=\"$event.stopPropagation()\"\r\n (mouseup)=\"$event.stopPropagation()\"\r\n (copy)=\"onCopy($event)\"\r\n />\r\n </div>\r\n @if (!noButtons()) {\r\n <ard-button\r\n class=\"ard-quick-change-button increment\"\r\n [variant]=\"buttonVariant()\"\r\n [appearance]=\"buttonAppearance()\"\r\n color=\"none\"\r\n [disabled]=\"!canIncrement()\"\r\n [tabIndex]=\"!canIncrement() ? -1 : tabIndex()\"\r\n (click)=\"onQuickChangeButtonClick(1, $event)\"\r\n (ardHold)=\"onQuickChangeButtonClick(1)\"\r\n ardHoldSpaceKey\r\n >\r\n +\r\n </ard-button>\r\n }\r\n</div>\r\n", styles: [".ard-number-input{display:flex;max-width:100%}.ard-number-input .ard-input-container{position:relative}.ard-number-input .ard-placeholder{position:absolute;left:0;right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;pointer-events:none}.ard-text-align-left input,.ard-text-align-left .ard-placeholder{text-align:left}.ard-text-align-middle input,.ard-text-align-middle .ard-placeholder{text-align:center}.ard-text-align-right input,.ard-text-align-right .ard-placeholder{text-align:right}.ard-quick-change-button{-webkit-user-select:none;user-select:none;height:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.HoldDirective, selector: "[ardHold]", inputs: ["disabled", "readonly", "ardHoldDelay", "ardHoldRepeat", "ardAllowSpaceKey", "ardAllowEnterKey"], outputs: ["ardHold"] }, { kind: "component", type: i3.ArdiumButtonComponent, selector: "ard-button", inputs: ["icon", "variant", "alignIcon", "vertical"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
224
+ ], queries: [{ propertyName: "placeholderTemplate", first: true, predicate: ArdNumberInputPlaceholderTemplateDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["textInput"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"ard-number-input\"\r\n [ngClass]=\"ngClasses()\"\r\n [class.ard-has-error]=\"hasError()\"\r\n [class.ard-is-success]=\"isSuccess()\"\r\n [class.ard-has-value]=\"value\"\r\n (mousedown)=\"$event.preventDefault()\"\r\n (mouseup)=\"onMouseup()\"\r\n>\r\n @if (!noButtons()) {\r\n <ard-button\r\n class=\"ard-quick-change-button decrement\"\r\n [variant]=\"buttonVariant()\"\r\n [appearance]=\"buttonAppearance()\"\r\n color=\"none\"\r\n [disabled]=\"!canDecrement()\"\r\n [tabIndex]=\"!canDecrement() ? -1 : tabIndex()\"\r\n pointerEventsWhenDisabled\r\n (click)=\"canDecrement() && onQuickChangeButtonClick(-1, $event)\"\r\n (ardHold)=\"canDecrement() && onQuickChangeButtonClick(-1)\"\r\n (mouseup)=\"onQuickChangeButtonMouseup($event)\"\r\n ardHoldSpaceKey\r\n >\r\n -\r\n </ard-button>\r\n }\r\n <div class=\"ard-input-container\">\r\n @if (shouldDisplayPlaceholder()) {\r\n <ng-template\r\n #defaultPlaceholderTemplate\r\n let-plchldr\r\n >\r\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\"></ng-template>\r\n }\r\n\r\n <input\r\n #textInput\r\n #focusableElement\r\n type=\"text\"\r\n inputmode=\"numeric\"\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"tabIndex()\"\r\n [readonly]=\"readonly()\"\r\n [disabled]=\"disabled()\"\r\n (input)=\"onInput(textInput.value)\"\r\n (focus)=\"onFocusMaster($event)\"\r\n (blur)=\"onBlurMaster($event)\"\r\n (change)=\"onChange($event)\"\r\n (mousedown)=\"$event.stopPropagation()\"\r\n (mouseup)=\"$event.stopPropagation()\"\r\n (copy)=\"onCopy($event)\"\r\n />\r\n </div>\r\n @if (!noButtons()) {\r\n <ard-button\r\n class=\"ard-quick-change-button increment\"\r\n [variant]=\"buttonVariant()\"\r\n [appearance]=\"buttonAppearance()\"\r\n color=\"none\"\r\n [disabled]=\"!canIncrement()\"\r\n [tabIndex]=\"!canIncrement() ? -1 : tabIndex()\"\r\n pointerEventsWhenDisabled\r\n (click)=\"canIncrement() && onQuickChangeButtonClick(1, $event)\"\r\n (ardHold)=\"canIncrement() && onQuickChangeButtonClick(1)\"\r\n (mouseup)=\"onQuickChangeButtonMouseup($event)\"\r\n ardHoldSpaceKey\r\n >\r\n +\r\n </ard-button>\r\n }\r\n</div>\r\n", styles: [".ard-number-input{display:flex;max-width:100%}.ard-number-input .ard-input-container{position:relative}.ard-number-input .ard-placeholder{position:absolute;left:0;right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;pointer-events:none}.ard-text-align-left input,.ard-text-align-left .ard-placeholder{text-align:left}.ard-text-align-middle input,.ard-text-align-middle .ard-placeholder{text-align:center}.ard-text-align-right input,.ard-text-align-right .ard-placeholder{text-align:right}.ard-quick-change-button{-webkit-user-select:none;user-select:none;height:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.HoldDirective, selector: "[ardHold]", inputs: ["disabled", "readonly", "ardHoldDelay", "ardHoldRepeat", "ardAllowSpaceKey", "ardAllowEnterKey"], outputs: ["ardHold"] }, { kind: "component", type: i3.ArdiumButtonComponent, selector: "ard-button", inputs: ["icon", "variant", "alignIcon", "vertical"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
216
225
  }
217
226
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumNumberInputComponent, decorators: [{
218
227
  type: Component,
@@ -226,11 +235,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
226
235
  provide: _FormFieldComponentBase,
227
236
  useExisting: ArdiumNumberInputComponent,
228
237
  },
229
- ], template: "<div\r\n class=\"ard-number-input\"\r\n [ngClass]=\"ngClasses()\"\r\n [class.ard-has-error]=\"hasError()\"\r\n [class.ard-is-success]=\"isSuccess()\"\r\n [class.ard-has-value]=\"value\"\r\n (mousedown)=\"$event.preventDefault()\"\r\n (mouseup)=\"onMouseup()\"\r\n>\r\n @if (!noButtons()) {\r\n <ard-button\r\n class=\"ard-quick-change-button decrement\"\r\n [variant]=\"buttonVariant()\"\r\n [appearance]=\"buttonAppearance()\"\r\n color=\"none\"\r\n [disabled]=\"!canDecrement()\"\r\n [tabIndex]=\"!canDecrement() ? -1 : tabIndex()\"\r\n (click)=\"onQuickChangeButtonClick(-1, $event)\"\r\n (ardHold)=\"onQuickChangeButtonClick(-1)\"\r\n ardHoldSpaceKey\r\n >\r\n -\r\n </ard-button>\r\n }\r\n <div class=\"ard-input-container\">\r\n @if (shouldDisplayPlaceholder()) {\r\n <ng-template\r\n #defaultPlaceholderTemplate\r\n let-plchldr\r\n >\r\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\"></ng-template>\r\n }\r\n\r\n <input\r\n #textInput\r\n #focusableElement\r\n type=\"text\"\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"tabIndex()\"\r\n [readonly]=\"readonly()\"\r\n [disabled]=\"disabled()\"\r\n (input)=\"onInput(textInput.value)\"\r\n (focus)=\"onFocusMaster($event)\"\r\n (blur)=\"onBlurMaster($event)\"\r\n (change)=\"onChange($event)\"\r\n (mousedown)=\"$event.stopPropagation()\"\r\n (mouseup)=\"$event.stopPropagation()\"\r\n (copy)=\"onCopy($event)\"\r\n />\r\n </div>\r\n @if (!noButtons()) {\r\n <ard-button\r\n class=\"ard-quick-change-button increment\"\r\n [variant]=\"buttonVariant()\"\r\n [appearance]=\"buttonAppearance()\"\r\n color=\"none\"\r\n [disabled]=\"!canIncrement()\"\r\n [tabIndex]=\"!canIncrement() ? -1 : tabIndex()\"\r\n (click)=\"onQuickChangeButtonClick(1, $event)\"\r\n (ardHold)=\"onQuickChangeButtonClick(1)\"\r\n ardHoldSpaceKey\r\n >\r\n +\r\n </ard-button>\r\n }\r\n</div>\r\n", styles: [".ard-number-input{display:flex;max-width:100%}.ard-number-input .ard-input-container{position:relative}.ard-number-input .ard-placeholder{position:absolute;left:0;right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;pointer-events:none}.ard-text-align-left input,.ard-text-align-left .ard-placeholder{text-align:left}.ard-text-align-middle input,.ard-text-align-middle .ard-placeholder{text-align:center}.ard-text-align-right input,.ard-text-align-right .ard-placeholder{text-align:right}.ard-quick-change-button{-webkit-user-select:none;user-select:none;height:100%}\n"] }]
238
+ ], template: "<div\r\n class=\"ard-number-input\"\r\n [ngClass]=\"ngClasses()\"\r\n [class.ard-has-error]=\"hasError()\"\r\n [class.ard-is-success]=\"isSuccess()\"\r\n [class.ard-has-value]=\"value\"\r\n (mousedown)=\"$event.preventDefault()\"\r\n (mouseup)=\"onMouseup()\"\r\n>\r\n @if (!noButtons()) {\r\n <ard-button\r\n class=\"ard-quick-change-button decrement\"\r\n [variant]=\"buttonVariant()\"\r\n [appearance]=\"buttonAppearance()\"\r\n color=\"none\"\r\n [disabled]=\"!canDecrement()\"\r\n [tabIndex]=\"!canDecrement() ? -1 : tabIndex()\"\r\n pointerEventsWhenDisabled\r\n (click)=\"canDecrement() && onQuickChangeButtonClick(-1, $event)\"\r\n (ardHold)=\"canDecrement() && onQuickChangeButtonClick(-1)\"\r\n (mouseup)=\"onQuickChangeButtonMouseup($event)\"\r\n ardHoldSpaceKey\r\n >\r\n -\r\n </ard-button>\r\n }\r\n <div class=\"ard-input-container\">\r\n @if (shouldDisplayPlaceholder()) {\r\n <ng-template\r\n #defaultPlaceholderTemplate\r\n let-plchldr\r\n >\r\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\"></ng-template>\r\n }\r\n\r\n <input\r\n #textInput\r\n #focusableElement\r\n type=\"text\"\r\n inputmode=\"numeric\"\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"tabIndex()\"\r\n [readonly]=\"readonly()\"\r\n [disabled]=\"disabled()\"\r\n (input)=\"onInput(textInput.value)\"\r\n (focus)=\"onFocusMaster($event)\"\r\n (blur)=\"onBlurMaster($event)\"\r\n (change)=\"onChange($event)\"\r\n (mousedown)=\"$event.stopPropagation()\"\r\n (mouseup)=\"$event.stopPropagation()\"\r\n (copy)=\"onCopy($event)\"\r\n />\r\n </div>\r\n @if (!noButtons()) {\r\n <ard-button\r\n class=\"ard-quick-change-button increment\"\r\n [variant]=\"buttonVariant()\"\r\n [appearance]=\"buttonAppearance()\"\r\n color=\"none\"\r\n [disabled]=\"!canIncrement()\"\r\n [tabIndex]=\"!canIncrement() ? -1 : tabIndex()\"\r\n pointerEventsWhenDisabled\r\n (click)=\"canIncrement() && onQuickChangeButtonClick(1, $event)\"\r\n (ardHold)=\"canIncrement() && onQuickChangeButtonClick(1)\"\r\n (mouseup)=\"onQuickChangeButtonMouseup($event)\"\r\n ardHoldSpaceKey\r\n >\r\n +\r\n </ard-button>\r\n }\r\n</div>\r\n", styles: [".ard-number-input{display:flex;max-width:100%}.ard-number-input .ard-input-container{position:relative}.ard-number-input .ard-placeholder{position:absolute;left:0;right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;pointer-events:none}.ard-text-align-left input,.ard-text-align-left .ard-placeholder{text-align:left}.ard-text-align-middle input,.ard-text-align-middle .ard-placeholder{text-align:center}.ard-text-align-right input,.ard-text-align-right .ard-placeholder{text-align:right}.ard-quick-change-button{-webkit-user-select:none;user-select:none;height:100%}\n"] }]
230
239
  }], ctorParameters: () => [{ type: undefined, decorators: [{
231
240
  type: Inject,
232
241
  args: [ARD_NUMBER_INPUT_DEFAULTS]
233
242
  }] }], propDecorators: { value: [{
234
243
  type: Input
235
244
  }] } });
236
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvaW5wdXRzL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvbnVtYmVyLWlucHV0L251bWJlci1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxNQUFNLEVBQ04sS0FBSyxFQUNMLGlCQUFpQixFQUNqQixRQUFRLEVBQ1IsWUFBWSxFQUNaLE1BQU0sRUFDTixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQXdCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEUsT0FBTyxFQUFFLHlCQUF5QixFQUEwQixNQUFNLHlC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Y3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbmplY3QsXHJcbiAgSW5wdXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgY29tcHV0ZWQsXHJcbiAgY29udGVudENoaWxkLFxyXG4gIGVmZmVjdCxcclxuICBmb3J3YXJkUmVmLFxyXG4gIGlucHV0LFxyXG4gIG91dHB1dCxcclxuICB2aWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0BhcmRpdW0tdWkvZGV2a2l0JztcclxuaW1wb3J0IHsgcm91bmRUb1ByZWNpc2lvbiB9IGZyb20gJ21vcmUtcm91bmRpbmcnO1xyXG5pbXBvcnQgeyBpc0RlZmluZWQgfSBmcm9tICdzaW1wbGUtYm9vbCc7XHJcbmltcG9ydCB7IF9Gb3JtRmllbGRDb21wb25lbnRCYXNlIH0gZnJvbSAnLi4vLi4vX2ludGVybmFsL2Zvcm0tZmllbGQtY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnV0dG9uQXBwZWFyYW5jZSwgQnV0dG9uVmFyaWFudCB9IGZyb20gJy4uLy4uL2J1dHRvbnMvZ2VuZXJhbC1idXR0b24udHlwZXMnO1xyXG5pbXBvcnQgeyBPbmVBeGlzQWxpZ25tZW50IH0gZnJvbSAnLi4vLi4vdHlwZXMvYWxpZ25tZW50LnR5cGVzJztcclxuaW1wb3J0IHsgRm9ybUVsZW1lbnRBcHBlYXJhbmNlLCBGb3JtRWxlbWVudFZhcmlhbnQgfSBmcm9tICcuLi8uLi90eXBlcy90aGVtaW5nLnR5cGVzJztcclxuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICcuLi8uLi90eXBlcy91dGlsaXR5LnR5cGVzJztcclxuaW1wb3J0IHsgTnVtYmVySW5wdXRNb2RlbCwgTnVtYmVySW5wdXRNb2RlbEhvc3QgfSBmcm9tICcuLi9pbnB1dC11dGlscyc7XHJcbmltcG9ydCB7IEFSRF9OVU1CRVJfSU5QVVRfREVGQVVMVFMsIEFyZE51bWJlcklucHV0RGVmYXVsdHMgfSBmcm9tICcuL251bWJlci1pbnB1dC5kZWZhdWx0cyc7XHJcbmltcG9ydCB7IEFyZE51bWJlcklucHV0UGxhY2Vob2xkZXJUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vbnVtYmVyLWlucHV0LmRpcmVjdGl2ZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcmQtbnVtYmVyLWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbnVtYmVyLWlucHV0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9udW1iZXItaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQXJkaXVtTnVtYmVySW5wdXRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IF9Gb3JtRmllbGRDb21wb25lbnRCYXNlLFxyXG4gICAgICB1c2VFeGlzdGluZzogQXJkaXVtTnVtYmVySW5wdXRDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcmRpdW1OdW1iZXJJbnB1dENvbXBvbmVudFxyXG4gIGV4dGVuZHMgX0Zvcm1GaWVsZENvbXBvbmVudEJhc2VcclxuICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOdW1iZXJJbnB1dE1vZGVsSG9zdCwgQWZ0ZXJWaWV3SW5pdFxyXG57XHJcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlYWRvbmx5IF9ERUZBVUxUUyE6IEFyZE51bWJlcklucHV0RGVmYXVsdHM7XHJcbiAgY29uc3RydWN0b3IoQEluamVjdChBUkRfTlVNQkVSX0lOUFVUX0RFRkFVTFRTKSBkZWZhdWx0czogQXJkTnVtYmVySW5wdXREZWZhdWx0cykge1xyXG4gICAgc3VwZXIoZGVmYXVsdHMpO1xyXG5cclxuICAgIGVmZmVjdCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IHYgPSB0aGlzLmlucHV0TW9kZWwubnVtYmVyVmFsdWUoKTtcclxuICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHYpO1xyXG4gICAgICB0aGlzLl9vbkNoYW5nZVJlZ2lzdGVyZWQ/Lih2KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8hIGlucHV0IHZpZXdcclxuICByZWFkb25seSBpbnB1dEVsID0gdmlld0NoaWxkPEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4+KCd0ZXh0SW5wdXQnKTtcclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlucHV0TW9kZWwgPSBuZXcgTnVtYmVySW5wdXRNb2RlbCh0aGlzKTtcclxuICBwcml2YXRlIF93YXNWaWV3SW5pdCA9IGZhbHNlO1xyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NldElucHV0QXR0cmlidXRlcygpO1xyXG4gICAgdGhpcy5fd2FzVmlld0luaXQgPSB0cnVlO1xyXG4gICAgLy9zZXQgdGhlIHZhbHVlXHJcbiAgICBpZiAodGhpcy5fdmFsdWVCZWZvcmVJbml0KSB7XHJcbiAgICAgIHRoaXMud3JpdGVWYWx1ZSh0aGlzLl92YWx1ZUJlZm9yZUluaXQpO1xyXG4gICAgICBkZWxldGUgdGhpcy5fdmFsdWVCZWZvcmVJbml0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgaW5wdXRJZCA9IGlucHV0PE51bGxhYmxlPHN0cmluZz4+KCk7XHJcblxyXG4gIC8vISBwbGFjZWhvbGRlclxyXG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyID0gaW5wdXQ8TnVsbGFibGU8c3RyaW5nPj4oKTtcclxuXHJcbiAgcmVhZG9ubHkgcGxhY2Vob2xkZXJUZW1wbGF0ZSA9IGNvbnRlbnRDaGlsZChBcmROdW1iZXJJbnB1dFBsYWNlaG9sZGVyVGVtcGxhdGVEaXJlY3RpdmUpO1xyXG5cclxuICByZWFkb25seSBzaG91bGREaXNwbGF5UGxhY2Vob2xkZXIgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiAhIXRoaXMucGxhY2Vob2xkZXIoKSAmJiAhdGhpcy5pbnB1dE1vZGVsLnN0cmluZ1ZhbHVlKCkpO1xyXG5cclxuICAvLyEgYXBwZWFyYW5jZVxyXG4gIHJlYWRvbmx5IGFwcGVhcmFuY2UgPSBpbnB1dDxGb3JtRWxlbWVudEFwcGVhcmFuY2U+KEZvcm1FbGVtZW50QXBwZWFyYW5jZS5PdXRsaW5lZCk7XHJcbiAgcmVhZG9ubHkgdmFyaWFudCA9IGlucHV0PEZvcm1FbGVtZW50VmFyaWFudD4oRm9ybUVsZW1lbnRWYXJpYW50LlJvdW5kZWQpO1xyXG4gIHJlYWRvbmx5IGFsaWduVGV4dCA9IGlucHV0PE9uZUF4aXNBbGlnbm1lbnQ+KE9uZUF4aXNBbGlnbm1lbnQuTWlkZGxlKTtcclxuXHJcbiAgcmVhZG9ubHkgY29tcGFjdCA9IGlucHV0PGJvb2xlYW4sIGFueT4oZmFsc2UsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2KSB9KTtcclxuXHJcbiAgcmVhZG9ubHkgbmdDbGFzc2VzID0gY29tcHV0ZWQoKCk6IHN0cmluZyA9PiB7XHJcbiAgICByZXR1cm4gW1xyXG4gICAgICBgYXJkLWFwcGVhcmFuY2UtJHt0aGlzLmFwcGVhcmFuY2UoKX1gLFxyXG4gICAgICBgYXJkLXZhcmlhbnQtJHt0aGlzLnZhcmlhbnQoKX1gLFxyXG4gICAgICBgYXJkLXRleHQtYWxpZ24tJHt0aGlzLmFsaWduVGV4dCgpfWAsXHJcbiAgICAgIGBhcmQtcXVpY2stY2hhbmdlLSR7IXRoaXMubm9CdXR0b25zKCl9YCxcclxuICAgICAgdGhpcy5jb21wYWN0KCkgPyAnYXJkLWNvbXBhY3QnIDogJycsXHJcbiAgICBdLmpvaW4oJyAnKTtcclxuICB9KTtcclxuXHJcbiAgcmVhZG9ubHkgYnV0dG9uVmFyaWFudCA9IGNvbXB1dGVkKCgpOiBCdXR0b25WYXJpYW50ID0+IHtcclxuICAgIGlmICh0aGlzLnZhcmlhbnQoKSA9PT0gRm9ybUVsZW1lbnRWYXJpYW50LlJvdW5kZWQpIHJldHVybiBCdXR0b25WYXJpYW50LlJvdW5kZWQ7XHJcbiAgICBpZiAodGhpcy52YXJpYW50KCkgPT09IEZvcm1FbGVtZW50VmFyaWFudC5QaWxsKSByZXR1cm4gQnV0dG9uVmFyaWFudC5QaWxsO1xyXG4gICAgaWYgKHRoaXMudmFyaWFudCgpID09PSBGb3JtRWxlbWVudFZhcmlhbnQuU2hhcnApIHJldHVybiBCdXR0b25WYXJpYW50LlNoYXJwO1xyXG4gICAgcmV0dXJuIEJ1dHRvblZhcmlhbnQuUm91bmRlZDtcclxuICB9KTtcclxuICByZWFkb25seSBidXR0b25BcHBlYXJhbmNlID0gY29tcHV0ZWQ8QnV0dG9uQXBwZWFyYW5jZT4oKCkgPT4ge1xyXG4gICAgaWYgKHRoaXMuYXBwZWFyYW5jZSgpID09PSBGb3JtRWxlbWVudEFwcGVhcmFuY2UuT3V0bGluZWQgJiYgdGhpcy52YXJpYW50KCkgIT09IEZvcm1FbGVtZW50VmFyaWFudC5QaWxsKSB7XHJcbiAgICAgIHJldHVybiBCdXR0b25BcHBlYXJhbmNlLk91dGxpbmVkO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIEJ1dHRvbkFwcGVhcmFuY2UuVHJhbnNwYXJlbnQ7XHJcbiAgfSk7XHJcblxyXG4gIC8vISBvdGhlciBpbnB1dHNcclxuICByZWFkb25seSBpbnB1dEF0dHJzID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgYW55Pj4oe30pO1xyXG5cclxuICAvLyEgY29udHJvbCB2YWx1ZSBhY2Nlc3NvcidzIHdyaXRlIHZhbHVlIGltcGxlbWVudGF0aW9uXHJcbiAgd3JpdGVWYWx1ZSh2OiBhbnkpIHtcclxuICAgIHRoaXMuaW5wdXRNb2RlbC53cml0ZVZhbHVlKHYpO1xyXG4gIH1cclxuXHJcbiAgLy8hIHZhbHVlIHR3by13YXkgYmluZGluZ1xyXG4gIHByb3RlY3RlZCBfdmFsdWVCZWZvcmVJbml0Pzogc3RyaW5nIHwgbnVsbCA9ICcwJztcclxuICBASW5wdXQoKVxyXG4gIHNldCB2YWx1ZSh2OiBzdHJpbmcgfCBudW1iZXIgfCBudWxsKSB7XHJcbiAgICBpZiAodHlwZW9mIHYgPT09ICdudW1iZXInKSB2ID0gdi50b1N0cmluZygpO1xyXG4gICAgaWYgKCF0aGlzLl93YXNWaWV3SW5pdCkge1xyXG4gICAgICB0aGlzLl92YWx1ZUJlZm9yZUluaXQgPSB2O1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLndyaXRlVmFsdWUodik7XHJcbiAgfVxyXG4gIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gb3V0cHV0PG51bWJlciB8IG51bGw+KCk7XHJcblxyXG4gIC8vISBldmVudCBlbWl0dGVyc1xyXG4gIHJlYWRvbmx5IGlucHV0RXZlbnQgPSBvdXRwdXQ8bnVtYmVyIHwgbnVsbD4oeyBhbGlhczogJ2lucHV0JyB9KTtcclxuICByZWFkb25seSBjaGFuZ2VFdmVudCA9IG91dHB1dDxudW1iZXIgfCBudWxsPih7IGFsaWFzOiAnY2hhbmdlJyB9KTtcclxuICByZWFkb25seSBjbGVhckV2ZW50ID0gb3V0cHV0PE1vdXNlRXZlbnQ+KHsgYWxpYXM6ICdjbGVhcicgfSk7XHJcbiAgcmVhZG9ubHkgcXVpY2tDaGFuZ2VFdmVudCA9IG91dHB1dDx7XHJcbiAgICByZWFkb25seSBkaXJlY3Rpb246IDEgfCAtMTtcclxuICAgIHJlYWRvbmx5IHZhbHVlOiBudW1iZXI7XHJcbiAgfT4oeyBhbGlhczogJ3F1aWNrQ2hhbmdlJyB9KTtcclxuXHJcbiAgLy8hIG1pbi9tYXggYW5kIG51bWJlciB0eXBlXHJcbiAgcmVhZG9ubHkgbWluID0gaW5wdXQ8bnVtYmVyLCBhbnk+KDAsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZU51bWJlclByb3BlcnR5KHYsIDApIH0pO1xyXG4gIHJlYWRvbmx5IG1heCA9IGlucHV0PG51bWJlciwgYW55Pig5OTk5OTksIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZU51bWJlclByb3BlcnR5KHYsIDk5OTk5OSkgfSk7XHJcblxyXG4gIHJlYWRvbmx5IGFsbG93RmxvYXQgPSBpbnB1dDxib29sZWFuLCBhbnk+KGZhbHNlLCB7IHRyYW5zZm9ybTogdiA9PiBjb2VyY2VCb29sZWFuUHJvcGVydHkodikgfSk7XHJcblxyXG4gIC8vISBpbmNlcmVtZW50L2RlY3JlbWVudCBidXR0b25zXHJcbiAgcmVhZG9ubHkgbm9CdXR0b25zID0gaW5wdXQ8Ym9vbGVhbiwgYW55PihmYWxzZSwgeyB0cmFuc2Zvcm06IHYgPT4gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpIH0pO1xyXG5cclxuICByZWFkb25seSBzdGVwU2l6ZSA9IGlucHV0PG51bWJlciwgYW55PigxLCB7XHJcbiAgICB0cmFuc2Zvcm06IHYgPT4ge1xyXG4gICAgICBjb25zdCBuZXdWYWx1ZSA9IGNvZXJjZU51bWJlclByb3BlcnR5KHYsIDEpO1xyXG4gICAgICBpZiAobmV3VmFsdWUgPT09IDApIHRocm93IG5ldyBFcnJvcihgQVJELUZUMDA3MWE6IENhbm5vdCBzZXQgPGFyZC1udW1iZXItaW5wdXQ+J3MgW3N0ZXBTaXplXSB0byAwLmApO1xyXG4gICAgICBpZiAobmV3VmFsdWUgPCAwKVxyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgQVJELUZUMDA3MWI6IENhbm5vdCBzZXQgPGFyZC1udW1iZXItaW5wdXQ+J3MgW3N0ZXBTaXplXSB0byBhIG5lZ2F0aXZlIHZhbHVlLCBnb3QgXCIke25ld1ZhbHVlfVwiLmApO1xyXG4gICAgICByZXR1cm4gbmV3VmFsdWU7XHJcbiAgICB9LFxyXG4gIH0pO1xyXG5cclxuICBvblF1aWNrQ2hhbmdlQnV0dG9uQ2xpY2soZGlyZWN0aW9uOiAxIHwgLTEsIGV2ZW50PzogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgbGV0IG51bSA9IHRoaXMuaW5wdXRNb2RlbC5udW1iZXJWYWx1ZSgpO1xyXG4gICAgaWYgKCFudW0pIG51bSA9IDA7XHJcblxyXG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gMSAmJiBudW0gPj0gdGhpcy5tYXgoKSkgcmV0dXJuO1xyXG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gLTEgJiYgbnVtIDw9IHRoaXMubWluKCkpIHJldHVybjtcclxuXHJcbiAgICBpZiAoZXZlbnQpIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cclxuICAgIGNvbnN0IG5ld1ZhbHVlID0gbnVtICsgdGhpcy5zdGVwU2l6ZSgpICogZGlyZWN0aW9uO1xyXG4gICAgLy9yb3VuZCB0byA5IGRlY2ltYWwgcGxhY2VzIHRvIGF2b2lkIGZsb2F0aW5nIHBvaW50IGFyaXRobWV0aWMgZXJyb3JzXHJcbiAgICAvLzkgaXMgYW4gYXJiaXRyYXJ5IG51bWJlciB0aGF0IGp1c3Qgd29ya3Mgd2VsbC4gwq9cXF8o44OEKV8vwq9cclxuICAgIGNvbnN0IG5ld1ZhbHVlUHJlY2lzZSA9IHJvdW5kVG9QcmVjaXNpb24obmV3VmFsdWUsIDkpO1xyXG5cclxuICAgIHRoaXMud3JpdGVWYWx1ZShuZXdWYWx1ZVByZWNpc2UpO1xyXG4gICAgdGhpcy5xdWlja0NoYW5nZUV2ZW50LmVtaXQoeyBkaXJlY3Rpb24sIHZhbHVlOiBuZXdWYWx1ZVByZWNpc2UgfSk7XHJcbiAgICB0aGlzLl9lbWl0Q2hhbmdlKCk7XHJcblxyXG4gICAgdGhpcy5fZm9jdXNJbnB1dElmQ2FudFF1aWNrQ2hhbmdlKCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2ZvY3VzSW5wdXRJZkNhbnRRdWlja0NoYW5nZSgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5jYW5EZWNyZW1lbnQoKSB8fCAhdGhpcy5jYW5JbmNyZW1lbnQoKSkgdGhpcy5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgY2FuSW5jcmVtZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgbnVtID0gdGhpcy5pbnB1dE1vZGVsLm51bWJlclZhbHVlKCk7XHJcbiAgICByZXR1cm4gIWlzRGVmaW5lZChudW0pIHx8IG51bSA8IHRoaXMubWF4KCk7XHJcbiAgfVxyXG4gIGNhbkRlY3JlbWVudCgpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG51bSA9IHRoaXMuaW5wdXRNb2RlbC5udW1iZXJWYWx1ZSgpO1xyXG4gICAgcmV0dXJuICFpc0RlZmluZWQobnVtKSB8fCBudW0gPiB0aGlzLm1pbigpO1xyXG4gIH1cclxuXHJcbiAgLy8hIGV2ZW50IGhhbmRsZXJzXHJcbiAgb25JbnB1dChuZXdWYWw6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsdWVIYXNDaGFuZ2VkID0gdGhpcy5pbnB1dE1vZGVsLndyaXRlVmFsdWUobmV3VmFsKTtcclxuICAgIGlmICghdmFsdWVIYXNDaGFuZ2VkKSByZXR1cm47XHJcbiAgICB0aGlzLl9lbWl0SW5wdXQoKTtcclxuICB9XHJcbiAgcHJvdGVjdGVkIF9lbWl0SW5wdXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmlucHV0RXZlbnQuZW1pdCh0aGlzLmlucHV0TW9kZWwubnVtYmVyVmFsdWUoKSk7XHJcbiAgICB0aGlzLl9lbWl0Q2hhbmdlKCk7XHJcbiAgfVxyXG5cclxuICAvL2ZvY3VzLCBibHVyLCBjaGFuZ2VcclxuICBvbkZvY3VzTWFzdGVyKGV2ZW50OiBGb2N1c0V2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uRm9jdXMoZXZlbnQpO1xyXG4gIH1cclxuICBvbkJsdXJNYXN0ZXIoZXZlbnQ6IEZvY3VzRXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMub25CbHVyKGV2ZW50KTtcclxuICB9XHJcbiAgLy9jaGFuZ2VcclxuICBvbkNoYW5nZShldmVudDogRXZlbnQpOiB2b2lkIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5fZW1pdENoYW5nZSgpO1xyXG4gIH1cclxuICBwcm90ZWN0ZWQgX2VtaXRDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICBjb25zdCB2ID0gdGhpcy5pbnB1dE1vZGVsLm51bWJlclZhbHVlKCk7XHJcbiAgICB0aGlzLmNoYW5nZUV2ZW50LmVtaXQodik7XHJcbiAgfVxyXG5cclxuICAvL3NtYXJ0IGZvY3VzXHJcbiAgb25Nb3VzZXVwKCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpO1xyXG4gICAgaWYgKHNlbGVjdGlvbiAmJiBzZWxlY3Rpb24udHlwZSA9PT0gJ1JhbmdlJykgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIC8vIGNvcHlcclxuICBvbkNvcHkoZXZlbnQ6IENsaXBib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMudmFsdWUgJiZcclxuICAgICAgLy9kb2VzIHRoZSBzZWxlY3Rpb24gY292ZXIgdGhlIGVudGlyZSBpbnB1dFxyXG4gICAgICAoKHRoaXMuaW5wdXRFbCgpPy5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0ID09PSAwICYmXHJcbiAgICAgICAgdGhpcy5pbnB1dEVsKCk/Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kID09PSB0aGlzLmlucHV0RWwoKT8ubmF0aXZlRWxlbWVudC52YWx1ZS5sZW5ndGgpIHx8XHJcbiAgICAgICAgLy9vciBpcyB6ZXJvLXdpZGVcclxuICAgICAgICB0aGlzLmlucHV0RWwoKT8ubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCA9PT0gdGhpcy5pbnB1dEVsKCk/Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kKVxyXG4gICAgKSB7XHJcbiAgICAgIGV2ZW50LmNsaXBib2FyZERhdGE/LnNldERhdGEoJ3RleHQvcGxhaW4nLCBTdHJpbmcodGhpcy52YWx1ZSkpO1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8hIGhlbHBlcnNcclxuICBwcm90ZWN0ZWQgX3NldElucHV0QXR0cmlidXRlcygpIHtcclxuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5pbnB1dEVsKCkhLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBjb25zdCBhdHRyaWJ1dGVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xyXG4gICAgICB0eXBlOiAndGV4dCcsXHJcbiAgICAgIGF1dG9jb3JyZWN0OiAnb2ZmJyxcclxuICAgICAgYXV0b2NhcGl0YWxpemU6ICdvZmYnLFxyXG4gICAgICBhdXRvY29tcGxldGU6ICdvZmYnLFxyXG4gICAgICB0YWJpbmRleDogU3RyaW5nKHRoaXMudGFiSW5kZXgpLFxyXG4gICAgICAuLi50aGlzLmlucHV0QXR0cnMsXHJcbiAgICB9O1xyXG5cclxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKGF0dHJpYnV0ZXMpKSB7XHJcbiAgICAgIGlucHV0LnNldEF0dHJpYnV0ZShrZXksIFN0cmluZyhhdHRyaWJ1dGVzW2tleV0pKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwiYXJkLW51bWJlci1pbnB1dFwiXHJcbiAgW25nQ2xhc3NdPVwibmdDbGFzc2VzKClcIlxyXG4gIFtjbGFzcy5hcmQtaGFzLWVycm9yXT1cImhhc0Vycm9yKClcIlxyXG4gIFtjbGFzcy5hcmQtaXMtc3VjY2Vzc109XCJpc1N1Y2Nlc3MoKVwiXHJcbiAgW2NsYXNzLmFyZC1oYXMtdmFsdWVdPVwidmFsdWVcIlxyXG4gIChtb3VzZWRvd24pPVwiJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIlxyXG4gIChtb3VzZXVwKT1cIm9uTW91c2V1cCgpXCJcclxuPlxyXG4gIEBpZiAoIW5vQnV0dG9ucygpKSB7XHJcbiAgPGFyZC1idXR0b25cclxuICAgIGNsYXNzPVwiYXJkLXF1aWNrLWNoYW5nZS1idXR0b24gZGVjcmVtZW50XCJcclxuICAgIFt2YXJpYW50XT1cImJ1dHRvblZhcmlhbnQoKVwiXHJcbiAgICBbYXBwZWFyYW5jZV09XCJidXR0b25BcHBlYXJhbmNlKClcIlxyXG4gICAgY29sb3I9XCJub25lXCJcclxuICAgIFtkaXNhYmxlZF09XCIhY2FuRGVjcmVtZW50KClcIlxyXG4gICAgW3RhYkluZGV4XT1cIiFjYW5EZWNyZW1lbnQoKSA/IC0xIDogdGFiSW5kZXgoKVwiXHJcbiAgICAoY2xpY2spPVwib25RdWlja0NoYW5nZUJ1dHRvbkNsaWNrKC0xLCAkZXZlbnQpXCJcclxuICAgIChhcmRIb2xkKT1cIm9uUXVpY2tDaGFuZ2VCdXR0b25DbGljaygtMSlcIlxyXG4gICAgYXJkSG9sZFNwYWNlS2V5XHJcbiAgPlxyXG4gICAgLVxyXG4gIDwvYXJkLWJ1dHRvbj5cclxuICB9XHJcbiAgPGRpdiBjbGFzcz1cImFyZC1pbnB1dC1jb250YWluZXJcIj5cclxuICAgIEBpZiAoc2hvdWxkRGlzcGxheVBsYWNlaG9sZGVyKCkpIHtcclxuICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAjZGVmYXVsdFBsYWNlaG9sZGVyVGVtcGxhdGVcclxuICAgICAgbGV0LXBsY2hsZHJcclxuICAgID5cclxuICAgICAgPGRpdiBjbGFzcz1cImFyZC1wbGFjZWhvbGRlclwiPnt7IHBsYWNlaG9sZGVyKCkgfX08L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInBsYWNlaG9sZGVyVGVtcGxhdGUoKT8udGVtcGxhdGUgfHwgZGVmYXVsdFBsYWNlaG9sZGVyVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxyXG4gICAgfVxyXG5cclxuICAgIDxpbnB1dFxyXG4gICAgICAjdGV4dElucHV0XHJcbiAgICAgICNmb2N1c2FibGVFbGVtZW50XHJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgW2F0dHIuaWRdPVwiaW5wdXRJZCgpXCJcclxuICAgICAgW2F0dHIudGFiaW5kZXhdPVwidGFiSW5kZXgoKVwiXHJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seSgpXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIlxyXG4gICAgICAoaW5wdXQpPVwib25JbnB1dCh0ZXh0SW5wdXQudmFsdWUpXCJcclxuICAgICAgKGZvY3VzKT1cIm9uRm9jdXNNYXN0ZXIoJGV2ZW50KVwiXHJcbiAgICAgIChibHVyKT1cIm9uQmx1ck1hc3RlcigkZXZlbnQpXCJcclxuICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgKG1vdXNlZG93bik9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gICAgICAobW91c2V1cCk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gICAgICAoY29weSk9XCJvbkNvcHkoJGV2ZW50KVwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG4gIEBpZiAoIW5vQnV0dG9ucygpKSB7XHJcbiAgPGFyZC1idXR0b25cclxuICAgIGNsYXNzPVwiYXJkLXF1aWNrLWNoYW5nZS1idXR0b24gaW5jcmVtZW50XCJcclxuICAgIFt2YXJpYW50XT1cImJ1dHRvblZhcmlhbnQoKVwiXHJcbiAgICBbYXBwZWFyYW5jZV09XCJidXR0b25BcHBlYXJhbmNlKClcIlxyXG4gICAgY29sb3I9XCJub25lXCJcclxuICAgIFtkaXNhYmxlZF09XCIhY2FuSW5jcmVtZW50KClcIlxyXG4gICAgW3RhYkluZGV4XT1cIiFjYW5JbmNyZW1lbnQoKSA/IC0xIDogdGFiSW5kZXgoKVwiXHJcbiAgICAoY2xpY2spPVwib25RdWlja0NoYW5nZUJ1dHRvbkNsaWNrKDEsICRldmVudClcIlxyXG4gICAgKGFyZEhvbGQpPVwib25RdWlja0NoYW5nZUJ1dHRvbkNsaWNrKDEpXCJcclxuICAgIGFyZEhvbGRTcGFjZUtleVxyXG4gID5cclxuICAgICtcclxuICA8L2FyZC1idXR0b24+XHJcbiAgfVxyXG48L2Rpdj5cclxuIl19
245
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvaW5wdXRzL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvbnVtYmVyLWlucHV0L251bWJlci1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxNQUFNLEVBQ04sS0FBSyxFQUNMLGlCQUFpQixFQUNqQixRQUFRLEVBQ1IsWUFBWSxFQUNaLE1BQU0sRUFDTixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQXdCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEUsT0FBTyxFQUFFLHlCQUF5QixFQUEwQixNQUFNLHlCQUF5QixDQUFDO0FBQzVGLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7OztBQW9CdkYsTUFBTSxPQUFPLDBCQUNYLFNBQVEsdUJBQXVCO0lBSS9CLFlBQStDLFFBQWdDO1FBQzdFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQVNsQixjQUFjO1FBQ0wsWUFBTyxHQUFHLFNBQVMsQ0FBK0IsV0FBVyxDQUFDLENBQUM7UUFFckQsZUFBVSxHQUFHLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkQsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFXcEIsWUFBTyxHQUFHLEtBQUssRUFBb0IsQ0FBQztRQUU3QyxlQUFlO1FBQ04sZ0JBQVcsR0FBRyxLQUFLLEVBQW9CLENBQUM7UUFFeEMsd0JBQW1CLEdBQUcsWUFBWSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7UUFFL0UsNkJBQXdCLEdBQUcsUUFBUSxDQUFVLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFFcEgsY0FBYztRQUNMLGVBQVUsR0FBRyxLQUFLLENBQXdCLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFFLFlBQU8sR0FBRyxLQUFLLENBQXFCLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hFLGNBQVMsR0FBRyxLQUFLLENBQW1CLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTdELFlBQU8sR0FBRyxLQUFLLENBQWUsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRW5GLGNBQVMsR0FBRyxRQUFRLENBQUMsR0FBVyxFQUFFO1lBQ3pDLE9BQU87Z0JBQ0wsa0JBQWtCLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRTtnQkFDckMsZUFBZSxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQy9CLGtCQUFrQixJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ3BDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRTtnQkFDdkMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUU7YUFDcEMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztRQUVNLGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQWtCLEVBQUU7WUFDcEQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssa0JBQWtCLENBQUMsT0FBTztnQkFBRSxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUM7WUFDaEYsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssa0JBQWtCLENBQUMsSUFBSTtnQkFBRSxPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUM7WUFDMUUsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssa0JBQWtCLENBQUMsS0FBSztnQkFBRSxPQUFPLGFBQWEsQ0FBQyxLQUFLLENBQUM7WUFDNUUsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO1FBQ00scUJBQWdCLEdBQUcsUUFBUSxDQUFtQixHQUFHLEVBQUU7WUFDMUQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUsscUJBQXFCLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDdkcsT0FBTyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUM7WUFDbkMsQ0FBQztZQUNELE9BQU8sZ0JBQWdCLENBQUMsV0FBVyxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO1FBRUgsZ0JBQWdCO1FBQ1AsZUFBVSxHQUFHLEtBQUssQ0FBc0IsRUFBRSxDQUFDLENBQUM7UUFPckQseUJBQXlCO1FBQ2YscUJBQWdCLEdBQW1CLEdBQUcsQ0FBQztRQVV4QyxnQkFBVyxHQUFHLE1BQU0sRUFBaUIsQ0FBQztRQUUvQyxrQkFBa0I7UUFDVCxlQUFVLEdBQUcsTUFBTSxDQUFnQixFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELGdCQUFXLEdBQUcsTUFBTSxDQUFnQixFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3pELGVBQVUsR0FBRyxNQUFNLENBQWEsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNwRCxxQkFBZ0IsR0FBRyxNQUFNLENBRy9CLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFFN0IsMkJBQTJCO1FBQ2xCLFFBQUcsR0FBRyxLQUFLLENBQWMsQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM1RSxRQUFHLEdBQUcsS0FBSyxDQUFjLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLG9CQUFvQixDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFdEYsZUFBVSxHQUFHLEtBQUssQ0FBZSxLQUFLLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFL0YsZ0NBQWdDO1FBQ3ZCLGNBQVMsR0FBRyxLQUFLLENBQWUsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXJGLGlDQUE0QixHQUFHLEtBQUssQ0FBZSxJQUFJLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFdkcsYUFBUSxHQUFHLEtBQUssQ0FBYyxDQUFDLEVBQUU7WUFDeEMsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFO2dCQUNiLE1BQU0sUUFBUSxHQUFHLG9CQUFvQixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDNUMsSUFBSSxRQUFRLEtBQUssQ0FBQztvQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLCtEQUErRCxDQUFDLENBQUM7Z0JBQ3JHLElBQUksUUFBUSxHQUFHLENBQUM7b0JBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxxRkFBcUYsUUFBUSxJQUFJLENBQUMsQ0FBQztnQkFDckgsT0FBTyxRQUFRLENBQUM7WUFDbEIsQ0FBQztTQUNGLENBQUMsQ0FBQztRQTlHRCxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1YsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN4QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFPRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekIsZUFBZTtRQUNmLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUN2QyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQTRDRCx1REFBdUQ7SUFDdkQsVUFBVSxDQUFDLENBQU07UUFDZixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBSUQsSUFDSSxLQUFLLENBQUMsQ0FBeUI7UUFDakMsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRO1lBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7WUFDMUIsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFpQ0Qsd0JBQXdCLENBQUMsU0FBaUIsRUFBRSxLQUFrQjtRQUM1RCxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxHQUFHO1lBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUVsQixJQUFJLFNBQVMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFBRSxPQUFPO1FBQ2pELElBQUksU0FBUyxLQUFLLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQUUsT0FBTztRQUVsRCxJQUFJLEtBQUs7WUFBRSxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFbkMsTUFBTSxRQUFRLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxTQUFTLENBQUM7UUFDbkQscUVBQXFFO1FBQ3JFLDBEQUEwRDtRQUMxRCxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFdEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVuQixJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBQ08sNEJBQTRCO1FBQ2xDLElBQUksSUFBSSxDQUFDLDRCQUE0QixFQUFFO1lBQUUsT0FBTztRQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBQ0QsMEJBQTBCLENBQUMsS0FBaUI7UUFDMUMscURBQXFEO1FBQ3JELElBQUksSUFBSSxDQUFDLDRCQUE0QixFQUFFLEVBQUUsQ0FBQztZQUN4QyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDMUIsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFZO1FBQ1YsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUNELFlBQVk7UUFDVixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLE9BQU8sQ0FBQyxNQUFjO1FBQ3BCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxlQUFlO1lBQUUsT0FBTztRQUM3QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUNTLFVBQVU7UUFDbEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQscUJBQXFCO0lBQ3JCLGFBQWEsQ0FBQyxLQUFpQjtRQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFDRCxZQUFZLENBQUMsS0FBaUI7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBQ0QsUUFBUTtJQUNSLFFBQVEsQ0FBQyxLQUFZO1FBQ25CLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNTLFdBQVc7UUFDbkIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsYUFBYTtJQUNiLFNBQVM7UUFDUCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEMsSUFBSSxTQUFTLElBQUksU0FBUyxDQUFDLElBQUksS0FBSyxPQUFPO1lBQUUsT0FBTztRQUVwRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsT0FBTztJQUNQLE1BQU0sQ0FBQyxLQUFxQjtRQUMxQixJQUNFLElBQUksQ0FBQyxLQUFLO1lBQ1YsMkNBQTJDO1lBQzNDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsYUFBYSxDQUFDLGNBQWMsS0FBSyxDQUFDO2dCQUNsRCxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsYUFBYSxDQUFDLFlBQVksS0FBSyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsYUFBYSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7Z0JBQzFGLGlCQUFpQjtnQkFDakIsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLGFBQWEsQ0FBQyxjQUFjLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLGFBQWEsQ0FBQyxZQUFZLENBQUMsRUFDOUYsQ0FBQztZQUNELEtBQUssQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDL0QsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztJQUNELG1CQUFtQjtRQUMzQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFHLENBQUMsYUFBYSxDQUFDO1FBQzVDLE1BQU0sVUFBVSxHQUEyQjtZQUN6QyxJQUFJLEVBQUUsTUFBTTtZQUNaLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLGNBQWMsRUFBRSxLQUFLO1lBQ3JCLFlBQVksRUFBRSxLQUFLO1lBQ25CLFFBQVEsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUMvQixHQUFHLElBQUksQ0FBQyxVQUFVO1NBQ25CLENBQUM7UUFFRixLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUMxQyxLQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0gsQ0FBQzsrR0FsT1UsMEJBQTBCLGtCQUtqQix5QkFBeUI7bUdBTGxDLDBCQUEwQiw4L0RBWjFCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztnQkFDekQsS0FBSyxFQUFFLElBQUk7YUFDWjtZQUNEO2dCQUNFLE9BQU8sRUFBRSx1QkFBdUI7Z0JBQ2hDLFdBQVcsRUFBRSwwQkFBMEI7YUFDeEM7U0FDRiwyRUFxQzJDLDBDQUEwQyw2TUNsRnhGLGs0RUEwRUE7OzRGRDNCYSwwQkFBMEI7a0JBbEJ0QyxTQUFTOytCQUNFLGtCQUFrQixpQkFHYixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDJCQUEyQixDQUFDOzRCQUN6RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsdUJBQXVCOzRCQUNoQyxXQUFXLDRCQUE0Qjt5QkFDeEM7cUJBQ0Y7OzBCQU9ZLE1BQU07MkJBQUMseUJBQXlCO3lDQTJFekMsS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEluamVjdCxcclxuICBJbnB1dCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBjb21wdXRlZCxcclxuICBjb250ZW50Q2hpbGQsXHJcbiAgZWZmZWN0LFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgaW5wdXQsXHJcbiAgb3V0cHV0LFxyXG4gIHZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFyZGl1bS11aS9kZXZraXQnO1xyXG5pbXBvcnQgeyByb3VuZFRvUHJlY2lzaW9uIH0gZnJvbSAnbW9yZS1yb3VuZGluZyc7XHJcbmltcG9ydCB7IGlzRGVmaW5lZCB9IGZyb20gJ3NpbXBsZS1ib29sJztcclxuaW1wb3J0IHsgX0Zvcm1GaWVsZENvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9faW50ZXJuYWwvZm9ybS1maWVsZC1jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCdXR0b25BcHBlYXJhbmNlLCBCdXR0b25WYXJpYW50IH0gZnJvbSAnLi4vLi4vYnV0dG9ucy9nZW5lcmFsLWJ1dHRvbi50eXBlcyc7XHJcbmltcG9ydCB7IE9uZUF4aXNBbGlnbm1lbnQgfSBmcm9tICcuLi8uLi90eXBlcy9hbGlnbm1lbnQudHlwZXMnO1xyXG5pbXBvcnQgeyBGb3JtRWxlbWVudEFwcGVhcmFuY2UsIEZvcm1FbGVtZW50VmFyaWFudCB9IGZyb20gJy4uLy4uL3R5cGVzL3RoZW1pbmcudHlwZXMnO1xyXG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJy4uLy4uL3R5cGVzL3V0aWxpdHkudHlwZXMnO1xyXG5pbXBvcnQgeyBOdW1iZXJJbnB1dE1vZGVsLCBOdW1iZXJJbnB1dE1vZGVsSG9zdCB9IGZyb20gJy4uL2lucHV0LXV0aWxzJztcclxuaW1wb3J0IHsgQVJEX05VTUJFUl9JTlBVVF9ERUZBVUxUUywgQXJkTnVtYmVySW5wdXREZWZhdWx0cyB9IGZyb20gJy4vbnVtYmVyLWlucHV0LmRlZmF1bHRzJztcclxuaW1wb3J0IHsgQXJkTnVtYmVySW5wdXRQbGFjZWhvbGRlclRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9udW1iZXItaW5wdXQuZGlyZWN0aXZlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FyZC1udW1iZXItaW5wdXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9udW1iZXItaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL251bWJlci1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBcmRpdW1OdW1iZXJJbnB1dENvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogX0Zvcm1GaWVsZENvbXBvbmVudEJhc2UsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBBcmRpdW1OdW1iZXJJbnB1dENvbXBvbmVudCxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFyZGl1bU51bWJlcklucHV0Q29tcG9uZW50XHJcbiAgZXh0ZW5kcyBfRm9ybUZpZWxkQ29tcG9uZW50QmFzZVxyXG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE51bWJlcklucHV0TW9kZWxIb3N0LCBBZnRlclZpZXdJbml0XHJcbntcclxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVhZG9ubHkgX0RFRkFVTFRTITogQXJkTnVtYmVySW5wdXREZWZhdWx0cztcclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEFSRF9OVU1CRVJfSU5QVVRfREVGQVVMVFMpIGRlZmF1bHRzOiBBcmROdW1iZXJJbnB1dERlZmF1bHRzKSB7XHJcbiAgICBzdXBlcihkZWZhdWx0cyk7XHJcblxyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgY29uc3QgdiA9IHRoaXMuaW5wdXRNb2RlbC5udW1iZXJWYWx1ZSgpO1xyXG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodik7XHJcbiAgICAgIHRoaXMuX29uQ2hhbmdlUmVnaXN0ZXJlZD8uKHYpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvLyEgaW5wdXQgdmlld1xyXG4gIHJlYWRvbmx5IGlucHV0RWwgPSB2aWV3Q2hpbGQ8RWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50Pj4oJ3RleHRJbnB1dCcpO1xyXG5cclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW5wdXRNb2RlbCA9IG5ldyBOdW1iZXJJbnB1dE1vZGVsKHRoaXMpO1xyXG4gIHByaXZhdGUgX3dhc1ZpZXdJbml0ID0gZmFsc2U7XHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc2V0SW5wdXRBdHRyaWJ1dGVzKCk7XHJcbiAgICB0aGlzLl93YXNWaWV3SW5pdCA9IHRydWU7XHJcbiAgICAvL3NldCB0aGUgdmFsdWVcclxuICAgIGlmICh0aGlzLl92YWx1ZUJlZm9yZUluaXQpIHtcclxuICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMuX3ZhbHVlQmVmb3JlSW5pdCk7XHJcbiAgICAgIGRlbGV0ZSB0aGlzLl92YWx1ZUJlZm9yZUluaXQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZWFkb25seSBpbnB1dElkID0gaW5wdXQ8TnVsbGFibGU8c3RyaW5nPj4oKTtcclxuXHJcbiAgLy8hIHBsYWNlaG9sZGVyXHJcbiAgcmVhZG9ubHkgcGxhY2Vob2xkZXIgPSBpbnB1dDxOdWxsYWJsZTxzdHJpbmc+PigpO1xyXG5cclxuICByZWFkb25seSBwbGFjZWhvbGRlclRlbXBsYXRlID0gY29udGVudENoaWxkKEFyZE51bWJlcklucHV0UGxhY2Vob2xkZXJUZW1wbGF0ZURpcmVjdGl2ZSk7XHJcblxyXG4gIHJlYWRvbmx5IHNob3VsZERpc3BsYXlQbGFjZWhvbGRlciA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+ICEhdGhpcy5wbGFjZWhvbGRlcigpICYmICF0aGlzLmlucHV0TW9kZWwuc3RyaW5nVmFsdWUoKSk7XHJcblxyXG4gIC8vISBhcHBlYXJhbmNlXHJcbiAgcmVhZG9ubHkgYXBwZWFyYW5jZSA9IGlucHV0PEZvcm1FbGVtZW50QXBwZWFyYW5jZT4oRm9ybUVsZW1lbnRBcHBlYXJhbmNlLk91dGxpbmVkKTtcclxuICByZWFkb25seSB2YXJpYW50ID0gaW5wdXQ8Rm9ybUVsZW1lbnRWYXJpYW50PihGb3JtRWxlbWVudFZhcmlhbnQuUm91bmRlZCk7XHJcbiAgcmVhZG9ubHkgYWxpZ25UZXh0ID0gaW5wdXQ8T25lQXhpc0FsaWdubWVudD4oT25lQXhpc0FsaWdubWVudC5NaWRkbGUpO1xyXG5cclxuICByZWFkb25seSBjb21wYWN0ID0gaW5wdXQ8Ym9vbGVhbiwgYW55PihmYWxzZSwgeyB0cmFuc2Zvcm06IHYgPT4gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpIH0pO1xyXG5cclxuICByZWFkb25seSBuZ0NsYXNzZXMgPSBjb21wdXRlZCgoKTogc3RyaW5nID0+IHtcclxuICAgIHJldHVybiBbXHJcbiAgICAgIGBhcmQtYXBwZWFyYW5jZS0ke3RoaXMuYXBwZWFyYW5jZSgpfWAsXHJcbiAgICAgIGBhcmQtdmFyaWFudC0ke3RoaXMudmFyaWFudCgpfWAsXHJcbiAgICAgIGBhcmQtdGV4dC1hbGlnbi0ke3RoaXMuYWxpZ25UZXh0KCl9YCxcclxuICAgICAgYGFyZC1xdWljay1jaGFuZ2UtJHshdGhpcy5ub0J1dHRvbnMoKX1gLFxyXG4gICAgICB0aGlzLmNvbXBhY3QoKSA/ICdhcmQtY29tcGFjdCcgOiAnJyxcclxuICAgIF0uam9pbignICcpO1xyXG4gIH0pO1xyXG5cclxuICByZWFkb25seSBidXR0b25WYXJpYW50ID0gY29tcHV0ZWQoKCk6IEJ1dHRvblZhcmlhbnQgPT4ge1xyXG4gICAgaWYgKHRoaXMudmFyaWFudCgpID09PSBGb3JtRWxlbWVudFZhcmlhbnQuUm91bmRlZCkgcmV0dXJuIEJ1dHRvblZhcmlhbnQuUm91bmRlZDtcclxuICAgIGlmICh0aGlzLnZhcmlhbnQoKSA9PT0gRm9ybUVsZW1lbnRWYXJpYW50LlBpbGwpIHJldHVybiBCdXR0b25WYXJpYW50LlBpbGw7XHJcbiAgICBpZiAodGhpcy52YXJpYW50KCkgPT09IEZvcm1FbGVtZW50VmFyaWFudC5TaGFycCkgcmV0dXJuIEJ1dHRvblZhcmlhbnQuU2hhcnA7XHJcbiAgICByZXR1cm4gQnV0dG9uVmFyaWFudC5Sb3VuZGVkO1xyXG4gIH0pO1xyXG4gIHJlYWRvbmx5IGJ1dHRvbkFwcGVhcmFuY2UgPSBjb21wdXRlZDxCdXR0b25BcHBlYXJhbmNlPigoKSA9PiB7XHJcbiAgICBpZiAodGhpcy5hcHBlYXJhbmNlKCkgPT09IEZvcm1FbGVtZW50QXBwZWFyYW5jZS5PdXRsaW5lZCAmJiB0aGlzLnZhcmlhbnQoKSAhPT0gRm9ybUVsZW1lbnRWYXJpYW50LlBpbGwpIHtcclxuICAgICAgcmV0dXJuIEJ1dHRvbkFwcGVhcmFuY2UuT3V0bGluZWQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gQnV0dG9uQXBwZWFyYW5jZS5UcmFuc3BhcmVudDtcclxuICB9KTtcclxuXHJcbiAgLy8hIG90aGVyIGlucHV0c1xyXG4gIHJlYWRvbmx5IGlucHV0QXR0cnMgPSBpbnB1dDxSZWNvcmQ8c3RyaW5nLCBhbnk+Pih7fSk7XHJcblxyXG4gIC8vISBjb250cm9sIHZhbHVlIGFjY2Vzc29yJ3Mgd3JpdGUgdmFsdWUgaW1wbGVtZW50YXRpb25cclxuICB3cml0ZVZhbHVlKHY6IGFueSkge1xyXG4gICAgdGhpcy5pbnB1dE1vZGVsLndyaXRlVmFsdWUodik7XHJcbiAgfVxyXG5cclxuICAvLyEgdmFsdWUgdHdvLXdheSBiaW5kaW5nXHJcbiAgcHJvdGVjdGVkIF92YWx1ZUJlZm9yZUluaXQ/OiBzdHJpbmcgfCBudWxsID0gJzAnO1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IHZhbHVlKHY6IHN0cmluZyB8IG51bWJlciB8IG51bGwpIHtcclxuICAgIGlmICh0eXBlb2YgdiA9PT0gJ251bWJlcicpIHYgPSB2LnRvU3RyaW5nKCk7XHJcbiAgICBpZiAoIXRoaXMuX3dhc1ZpZXdJbml0KSB7XHJcbiAgICAgIHRoaXMuX3ZhbHVlQmVmb3JlSW5pdCA9IHY7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMud3JpdGVWYWx1ZSh2KTtcclxuICB9XHJcbiAgcmVhZG9ubHkgdmFsdWVDaGFuZ2UgPSBvdXRwdXQ8bnVtYmVyIHwgbnVsbD4oKTtcclxuXHJcbiAgLy8hIGV2ZW50IGVtaXR0ZXJzXHJcbiAgcmVhZG9ubHkgaW5wdXRFdmVudCA9IG91dHB1dDxudW1iZXIgfCBudWxsPih7IGFsaWFzOiAnaW5wdXQnIH0pO1xyXG4gIHJlYWRvbmx5IGNoYW5nZUV2ZW50ID0gb3V0cHV0PG51bWJlciB8IG51bGw+KHsgYWxpYXM6ICdjaGFuZ2UnIH0pO1xyXG4gIHJlYWRvbmx5IGNsZWFyRXZlbnQgPSBvdXRwdXQ8TW91c2VFdmVudD4oeyBhbGlhczogJ2NsZWFyJyB9KTtcclxuICByZWFkb25seSBxdWlja0NoYW5nZUV2ZW50ID0gb3V0cHV0PHtcclxuICAgIHJlYWRvbmx5IGRpcmVjdGlvbjogMSB8IC0xO1xyXG4gICAgcmVhZG9ubHkgdmFsdWU6IG51bWJlcjtcclxuICB9Pih7IGFsaWFzOiAncXVpY2tDaGFuZ2UnIH0pO1xyXG5cclxuICAvLyEgbWluL21heCBhbmQgbnVtYmVyIHR5cGVcclxuICByZWFkb25seSBtaW4gPSBpbnB1dDxudW1iZXIsIGFueT4oMCwgeyB0cmFuc2Zvcm06IHYgPT4gY29lcmNlTnVtYmVyUHJvcGVydHkodiwgMCkgfSk7XHJcbiAgcmVhZG9ubHkgbWF4ID0gaW5wdXQ8bnVtYmVyLCBhbnk+KDk5OTk5OSwgeyB0cmFuc2Zvcm06IHYgPT4gY29lcmNlTnVtYmVyUHJvcGVydHkodiwgOTk5OTk5KSB9KTtcclxuXHJcbiAgcmVhZG9ubHkgYWxsb3dGbG9hdCA9IGlucHV0PGJvb2xlYW4sIGFueT4oZmFsc2UsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2KSB9KTtcclxuXHJcbiAgLy8hIGluY2VyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnNcclxuICByZWFkb25seSBub0J1dHRvbnMgPSBpbnB1dDxib29sZWFuLCBhbnk+KGZhbHNlLCB7IHRyYW5zZm9ybTogdiA9PiBjb2VyY2VCb29sZWFuUHJvcGVydHkodikgfSk7XHJcblxyXG4gIHJlYWRvbmx5IGtlZXBGb2N1c09uUXVpY2tDaGFuZ2VCdXR0b24gPSBpbnB1dDxib29sZWFuLCBhbnk+KHRydWUsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2KSB9KTtcclxuXHJcbiAgcmVhZG9ubHkgc3RlcFNpemUgPSBpbnB1dDxudW1iZXIsIGFueT4oMSwge1xyXG4gICAgdHJhbnNmb3JtOiB2ID0+IHtcclxuICAgICAgY29uc3QgbmV3VmFsdWUgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2LCAxKTtcclxuICAgICAgaWYgKG5ld1ZhbHVlID09PSAwKSB0aHJvdyBuZXcgRXJyb3IoYEFSRC1GVDAwNzFhOiBDYW5ub3Qgc2V0IDxhcmQtbnVtYmVyLWlucHV0PidzIFtzdGVwU2l6ZV0gdG8gMC5gKTtcclxuICAgICAgaWYgKG5ld1ZhbHVlIDwgMClcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEFSRC1GVDAwNzFiOiBDYW5ub3Qgc2V0IDxhcmQtbnVtYmVyLWlucHV0PidzIFtzdGVwU2l6ZV0gdG8gYSBuZWdhdGl2ZSB2YWx1ZSwgZ290IFwiJHtuZXdWYWx1ZX1cIi5gKTtcclxuICAgICAgcmV0dXJuIG5ld1ZhbHVlO1xyXG4gICAgfSxcclxuICB9KTtcclxuXHJcbiAgb25RdWlja0NoYW5nZUJ1dHRvbkNsaWNrKGRpcmVjdGlvbjogMSB8IC0xLCBldmVudD86IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGxldCBudW0gPSB0aGlzLmlucHV0TW9kZWwubnVtYmVyVmFsdWUoKTtcclxuICAgIGlmICghbnVtKSBudW0gPSAwO1xyXG5cclxuICAgIGlmIChkaXJlY3Rpb24gPT09IDEgJiYgbnVtID49IHRoaXMubWF4KCkpIHJldHVybjtcclxuICAgIGlmIChkaXJlY3Rpb24gPT09IC0xICYmIG51bSA8PSB0aGlzLm1pbigpKSByZXR1cm47XHJcblxyXG4gICAgaWYgKGV2ZW50KSBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcbiAgICBjb25zdCBuZXdWYWx1ZSA9IG51bSArIHRoaXMuc3RlcFNpemUoKSAqIGRpcmVjdGlvbjtcclxuICAgIC8vcm91bmQgdG8gOSBkZWNpbWFsIHBsYWNlcyB0byBhdm9pZCBmbG9hdGluZyBwb2ludCBhcml0aG1ldGljIGVycm9yc1xyXG4gICAgLy85IGlzIGFuIGFyYml0cmFyeSBudW1iZXIgdGhhdCBqdXN0IHdvcmtzIHdlbGwuIMKvXFxfKOODhClfL8KvXHJcbiAgICBjb25zdCBuZXdWYWx1ZVByZWNpc2UgPSByb3VuZFRvUHJlY2lzaW9uKG5ld1ZhbHVlLCA5KTtcclxuXHJcbiAgICB0aGlzLndyaXRlVmFsdWUobmV3VmFsdWVQcmVjaXNlKTtcclxuICAgIHRoaXMucXVpY2tDaGFuZ2VFdmVudC5lbWl0KHsgZGlyZWN0aW9uLCB2YWx1ZTogbmV3VmFsdWVQcmVjaXNlIH0pO1xyXG4gICAgdGhpcy5fZW1pdENoYW5nZSgpO1xyXG5cclxuICAgIHRoaXMuX2ZvY3VzSW5wdXRJZkNhbnRRdWlja0NoYW5nZSgpO1xyXG4gIH1cclxuICBwcml2YXRlIF9mb2N1c0lucHV0SWZDYW50UXVpY2tDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5rZWVwRm9jdXNPblF1aWNrQ2hhbmdlQnV0dG9uKCkpIHJldHVybjtcclxuICAgIGlmICghdGhpcy5jYW5EZWNyZW1lbnQoKSB8fCAhdGhpcy5jYW5JbmNyZW1lbnQoKSkgdGhpcy5mb2N1cygpO1xyXG4gIH1cclxuICBvblF1aWNrQ2hhbmdlQnV0dG9uTW91c2V1cChldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgLy8gcHJldmVudCB0aGUgZXZlbnQgZnJvbSByZWFjaGluZyB0aGUgcGFyZW50IGVsZW1lbnRcclxuICAgIGlmICh0aGlzLmtlZXBGb2N1c09uUXVpY2tDaGFuZ2VCdXR0b24oKSkge1xyXG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNhbkluY3JlbWVudCgpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG51bSA9IHRoaXMuaW5wdXRNb2RlbC5udW1iZXJWYWx1ZSgpO1xyXG4gICAgcmV0dXJuICFpc0RlZmluZWQobnVtKSB8fCBudW0gPCB0aGlzLm1heCgpO1xyXG4gIH1cclxuICBjYW5EZWNyZW1lbnQoKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBudW0gPSB0aGlzLmlucHV0TW9kZWwubnVtYmVyVmFsdWUoKTtcclxuICAgIHJldHVybiAhaXNEZWZpbmVkKG51bSkgfHwgbnVtID4gdGhpcy5taW4oKTtcclxuICB9XHJcblxyXG4gIC8vISBldmVudCBoYW5kbGVyc1xyXG4gIG9uSW5wdXQobmV3VmFsOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IHZhbHVlSGFzQ2hhbmdlZCA9IHRoaXMuaW5wdXRNb2RlbC53cml0ZVZhbHVlKG5ld1ZhbCk7XHJcbiAgICBpZiAoIXZhbHVlSGFzQ2hhbmdlZCkgcmV0dXJuO1xyXG4gICAgdGhpcy5fZW1pdElucHV0KCk7XHJcbiAgfVxyXG4gIHByb3RlY3RlZCBfZW1pdElucHV0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbnB1dEV2ZW50LmVtaXQodGhpcy5pbnB1dE1vZGVsLm51bWJlclZhbHVlKCkpO1xyXG4gICAgdGhpcy5fZW1pdENoYW5nZSgpO1xyXG4gIH1cclxuXHJcbiAgLy9mb2N1cywgYmx1ciwgY2hhbmdlXHJcbiAgb25Gb2N1c01hc3RlcihldmVudDogRm9jdXNFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkZvY3VzKGV2ZW50KTtcclxuICB9XHJcbiAgb25CbHVyTWFzdGVyKGV2ZW50OiBGb2N1c0V2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQmx1cihldmVudCk7XHJcbiAgfVxyXG4gIC8vY2hhbmdlXHJcbiAgb25DaGFuZ2UoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuX2VtaXRDaGFuZ2UoKTtcclxuICB9XHJcbiAgcHJvdGVjdGVkIF9lbWl0Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgdiA9IHRoaXMuaW5wdXRNb2RlbC5udW1iZXJWYWx1ZSgpO1xyXG4gICAgdGhpcy5jaGFuZ2VFdmVudC5lbWl0KHYpO1xyXG4gIH1cclxuXHJcbiAgLy9zbWFydCBmb2N1c1xyXG4gIG9uTW91c2V1cCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcclxuICAgIGlmIChzZWxlY3Rpb24gJiYgc2VsZWN0aW9uLnR5cGUgPT09ICdSYW5nZScpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLmZvY3VzKCk7XHJcbiAgfVxyXG5cclxuICAvLyBjb3B5XHJcbiAgb25Db3B5KGV2ZW50OiBDbGlwYm9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLnZhbHVlICYmXHJcbiAgICAgIC8vZG9lcyB0aGUgc2VsZWN0aW9uIGNvdmVyIHRoZSBlbnRpcmUgaW5wdXRcclxuICAgICAgKCh0aGlzLmlucHV0RWwoKT8ubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCA9PT0gMCAmJlxyXG4gICAgICAgIHRoaXMuaW5wdXRFbCgpPy5uYXRpdmVFbGVtZW50LnNlbGVjdGlvbkVuZCA9PT0gdGhpcy5pbnB1dEVsKCk/Lm5hdGl2ZUVsZW1lbnQudmFsdWUubGVuZ3RoKSB8fFxyXG4gICAgICAgIC8vb3IgaXMgemVyby13aWRlXHJcbiAgICAgICAgdGhpcy5pbnB1dEVsKCk/Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgPT09IHRoaXMuaW5wdXRFbCgpPy5uYXRpdmVFbGVtZW50LnNlbGVjdGlvbkVuZClcclxuICAgICkge1xyXG4gICAgICBldmVudC5jbGlwYm9hcmREYXRhPy5zZXREYXRhKCd0ZXh0L3BsYWluJywgU3RyaW5nKHRoaXMudmFsdWUpKTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vISBoZWxwZXJzXHJcbiAgcHJvdGVjdGVkIF9zZXRJbnB1dEF0dHJpYnV0ZXMoKSB7XHJcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRFbCgpIS5uYXRpdmVFbGVtZW50O1xyXG4gICAgY29uc3QgYXR0cmlidXRlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcclxuICAgICAgdHlwZTogJ3RleHQnLFxyXG4gICAgICBhdXRvY29ycmVjdDogJ29mZicsXHJcbiAgICAgIGF1dG9jYXBpdGFsaXplOiAnb2ZmJyxcclxuICAgICAgYXV0b2NvbXBsZXRlOiAnb2ZmJyxcclxuICAgICAgdGFiaW5kZXg6IFN0cmluZyh0aGlzLnRhYkluZGV4KSxcclxuICAgICAgLi4udGhpcy5pbnB1dEF0dHJzLFxyXG4gICAgfTtcclxuXHJcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhhdHRyaWJ1dGVzKSkge1xyXG4gICAgICBpbnB1dC5zZXRBdHRyaWJ1dGUoa2V5LCBTdHJpbmcoYXR0cmlidXRlc1trZXldKSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cImFyZC1udW1iZXItaW5wdXRcIlxyXG4gIFtuZ0NsYXNzXT1cIm5nQ2xhc3NlcygpXCJcclxuICBbY2xhc3MuYXJkLWhhcy1lcnJvcl09XCJoYXNFcnJvcigpXCJcclxuICBbY2xhc3MuYXJkLWlzLXN1Y2Nlc3NdPVwiaXNTdWNjZXNzKClcIlxyXG4gIFtjbGFzcy5hcmQtaGFzLXZhbHVlXT1cInZhbHVlXCJcclxuICAobW91c2Vkb3duKT1cIiRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCJcclxuICAobW91c2V1cCk9XCJvbk1vdXNldXAoKVwiXHJcbj5cclxuICBAaWYgKCFub0J1dHRvbnMoKSkge1xyXG4gIDxhcmQtYnV0dG9uXHJcbiAgICBjbGFzcz1cImFyZC1xdWljay1jaGFuZ2UtYnV0dG9uIGRlY3JlbWVudFwiXHJcbiAgICBbdmFyaWFudF09XCJidXR0b25WYXJpYW50KClcIlxyXG4gICAgW2FwcGVhcmFuY2VdPVwiYnV0dG9uQXBwZWFyYW5jZSgpXCJcclxuICAgIGNvbG9yPVwibm9uZVwiXHJcbiAgICBbZGlzYWJsZWRdPVwiIWNhbkRlY3JlbWVudCgpXCJcclxuICAgIFt0YWJJbmRleF09XCIhY2FuRGVjcmVtZW50KCkgPyAtMSA6IHRhYkluZGV4KClcIlxyXG4gICAgcG9pbnRlckV2ZW50c1doZW5EaXNhYmxlZFxyXG4gICAgKGNsaWNrKT1cImNhbkRlY3JlbWVudCgpICYmIG9uUXVpY2tDaGFuZ2VCdXR0b25DbGljaygtMSwgJGV2ZW50KVwiXHJcbiAgICAoYXJkSG9sZCk9XCJjYW5EZWNyZW1lbnQoKSAmJiBvblF1aWNrQ2hhbmdlQnV0dG9uQ2xpY2soLTEpXCJcclxuICAgIChtb3VzZXVwKT1cIm9uUXVpY2tDaGFuZ2VCdXR0b25Nb3VzZXVwKCRldmVudClcIlxyXG4gICAgYXJkSG9sZFNwYWNlS2V5XHJcbiAgPlxyXG4gICAgLVxyXG4gIDwvYXJkLWJ1dHRvbj5cclxuICB9XHJcbiAgPGRpdiBjbGFzcz1cImFyZC1pbnB1dC1jb250YWluZXJcIj5cclxuICAgIEBpZiAoc2hvdWxkRGlzcGxheVBsYWNlaG9sZGVyKCkpIHtcclxuICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAjZGVmYXVsdFBsYWNlaG9sZGVyVGVtcGxhdGVcclxuICAgICAgbGV0LXBsY2hsZHJcclxuICAgID5cclxuICAgICAgPGRpdiBjbGFzcz1cImFyZC1wbGFjZWhvbGRlclwiPnt7IHBsYWNlaG9sZGVyKCkgfX08L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInBsYWNlaG9sZGVyVGVtcGxhdGUoKT8udGVtcGxhdGUgfHwgZGVmYXVsdFBsYWNlaG9sZGVyVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxyXG4gICAgfVxyXG5cclxuICAgIDxpbnB1dFxyXG4gICAgICAjdGV4dElucHV0XHJcbiAgICAgICNmb2N1c2FibGVFbGVtZW50XHJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgaW5wdXRtb2RlPVwibnVtZXJpY1wiXHJcbiAgICAgIFthdHRyLmlkXT1cImlucHV0SWQoKVwiXHJcbiAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYkluZGV4KClcIlxyXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkoKVwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcclxuICAgICAgKGlucHV0KT1cIm9uSW5wdXQodGV4dElucHV0LnZhbHVlKVwiXHJcbiAgICAgIChmb2N1cyk9XCJvbkZvY3VzTWFzdGVyKCRldmVudClcIlxyXG4gICAgICAoYmx1cik9XCJvbkJsdXJNYXN0ZXIoJGV2ZW50KVwiXHJcbiAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgIChtb3VzZWRvd24pPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcclxuICAgICAgKG1vdXNldXApPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcclxuICAgICAgKGNvcHkpPVwib25Db3B5KCRldmVudClcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuICBAaWYgKCFub0J1dHRvbnMoKSkge1xyXG4gIDxhcmQtYnV0dG9uXHJcbiAgICBjbGFzcz1cImFyZC1xdWljay1jaGFuZ2UtYnV0dG9uIGluY3JlbWVudFwiXHJcbiAgICBbdmFyaWFudF09XCJidXR0b25WYXJpYW50KClcIlxyXG4gICAgW2FwcGVhcmFuY2VdPVwiYnV0dG9uQXBwZWFyYW5jZSgpXCJcclxuICAgIGNvbG9yPVwibm9uZVwiXHJcbiAgICBbZGlzYWJsZWRdPVwiIWNhbkluY3JlbWVudCgpXCJcclxuICAgIFt0YWJJbmRleF09XCIhY2FuSW5jcmVtZW50KCkgPyAtMSA6IHRhYkluZGV4KClcIlxyXG4gICAgcG9pbnRlckV2ZW50c1doZW5EaXNhYmxlZFxyXG4gICAgKGNsaWNrKT1cImNhbkluY3JlbWVudCgpICYmIG9uUXVpY2tDaGFuZ2VCdXR0b25DbGljaygxLCAkZXZlbnQpXCJcclxuICAgIChhcmRIb2xkKT1cImNhbkluY3JlbWVudCgpICYmIG9uUXVpY2tDaGFuZ2VCdXR0b25DbGljaygxKVwiXHJcbiAgICAobW91c2V1cCk9XCJvblF1aWNrQ2hhbmdlQnV0dG9uTW91c2V1cCgkZXZlbnQpXCJcclxuICAgIGFyZEhvbGRTcGFjZUtleVxyXG4gID5cclxuICAgICtcclxuICA8L2FyZC1idXR0b24+XHJcbiAgfVxyXG48L2Rpdj5cclxuIl19
@@ -24,4 +24,4 @@ export const ARD_NUMBER_INPUT_DEFAULTS = new InjectionToken('ard-number-input-de
24
24
  export function provideNumberInputDefaults(config) {
25
25
  return { provide: ARD_NUMBER_INPUT_DEFAULTS, useValue: { ..._numberInputDefaults, ...config } };
26
26
  }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0LmRlZmF1bHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvbnVtYmVyLWlucHV0L251bWJlci1pbnB1dC5kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBK0IsMkJBQTJCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQWdCeEYsTUFBTSxvQkFBb0IsR0FBMkI7SUFDbkQsR0FBRywyQkFBMkI7SUFDOUIsVUFBVSxFQUFFLHFCQUFxQixDQUFDLFFBQVE7SUFDMUMsT0FBTyxFQUFFLGtCQUFrQixDQUFDLE9BQU87SUFDbkMsT0FBTyxFQUFFLEtBQUs7SUFDZCxXQUFXLEVBQUUsRUFBRTtJQUNmLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNO0lBQ2xDLFVBQVUsRUFBRSxFQUFFO0lBQ2QsR0FBRyxFQUFFLENBQUM7SUFDTixHQUFHLEVBQUUsUUFBUTtJQUNiLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLFNBQVMsRUFBRSxLQUFLO0lBQ2hCLFFBQVEsRUFBRSxDQUFDO0NBQ1osQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLElBQUksY0FBYyxDQUF5QiwyQkFBMkIsRUFBRTtJQUMvRyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNkLEdBQUcsb0JBQW9CO0tBQ3hCLENBQUM7Q0FDSCxDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsTUFBdUM7SUFDaEYsT0FBTyxFQUFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUsRUFBRSxHQUFHLG9CQUFvQixFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztBQUNsRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IF9Gb3JtRmllbGRDb21wb25lbnREZWZhdWx0cywgX2Zvcm1GaWVsZENvbXBvbmVudERlZmF1bHRzIH0gZnJvbSAnLi4vLi4vX2ludGVybmFsL2Zvcm0tZmllbGQtY29tcG9uZW50JztcclxuaW1wb3J0IHsgT25lQXhpc0FsaWdubWVudCB9IGZyb20gJy4vLi4vLi4vdHlwZXMvYWxpZ25tZW50LnR5cGVzJztcclxuaW1wb3J0IHsgRm9ybUVsZW1lbnRBcHBlYXJhbmNlLCBGb3JtRWxlbWVudFZhcmlhbnQgfSBmcm9tICcuLy4uLy4uL3R5cGVzL3RoZW1pbmcudHlwZXMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBcmROdW1iZXJJbnB1dERlZmF1bHRzIGV4dGVuZHMgX0Zvcm1GaWVsZENvbXBvbmVudERlZmF1bHRzIHtcclxuICBhcHBlYXJhbmNlOiBGb3JtRWxlbWVudEFwcGVhcmFuY2U7XHJcbiAgdmFyaWFudDogRm9ybUVsZW1lbnRWYXJpYW50O1xyXG4gIGNvbXBhY3Q6IGJvb2xlYW47XHJcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcclxuICBhbGlnblRleHQ6IE9uZUF4aXNBbGlnbm1lbnQ7XHJcbiAgaW5wdXRBdHRyczogUmVjb3JkPHN0cmluZywgYW55PjtcclxuICBtaW46IG51bWJlcjtcclxuICBtYXg6IG51bWJlcjtcclxuICBhbGxvd0Zsb2F0OiBib29sZWFuO1xyXG4gIG5vQnV0dG9uczogYm9vbGVhbjtcclxuICBzdGVwU2l6ZTogbnVtYmVyO1xyXG59XHJcblxyXG5jb25zdCBfbnVtYmVySW5wdXREZWZhdWx0czogQXJkTnVtYmVySW5wdXREZWZhdWx0cyA9IHtcclxuICAuLi5fZm9ybUZpZWxkQ29tcG9uZW50RGVmYXVsdHMsXHJcbiAgYXBwZWFyYW5jZTogRm9ybUVsZW1lbnRBcHBlYXJhbmNlLk91dGxpbmVkLFxyXG4gIHZhcmlhbnQ6IEZvcm1FbGVtZW50VmFyaWFudC5Sb3VuZGVkLFxyXG4gIGNvbXBhY3Q6IGZhbHNlLFxyXG4gIHBsYWNlaG9sZGVyOiAnJyxcclxuICBhbGlnblRleHQ6IE9uZUF4aXNBbGlnbm1lbnQuTWlkZGxlLFxyXG4gIGlucHV0QXR0cnM6IHt9LFxyXG4gIG1pbjogMCxcclxuICBtYXg6IEluZmluaXR5LFxyXG4gIGFsbG93RmxvYXQ6IGZhbHNlLFxyXG4gIG5vQnV0dG9uczogZmFsc2UsXHJcbiAgc3RlcFNpemU6IDEsXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgQVJEX05VTUJFUl9JTlBVVF9ERUZBVUxUUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxBcmROdW1iZXJJbnB1dERlZmF1bHRzPignYXJkLW51bWJlci1pbnB1dC1kZWZhdWx0cycsIHtcclxuICBmYWN0b3J5OiAoKSA9PiAoe1xyXG4gICAgLi4uX251bWJlcklucHV0RGVmYXVsdHMsXHJcbiAgfSksXHJcbn0pO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVOdW1iZXJJbnB1dERlZmF1bHRzKGNvbmZpZzogUGFydGlhbDxBcmROdW1iZXJJbnB1dERlZmF1bHRzPik6IFByb3ZpZGVyIHtcclxuICByZXR1cm4geyBwcm92aWRlOiBBUkRfTlVNQkVSX0lOUFVUX0RFRkFVTFRTLCB1c2VWYWx1ZTogeyAuLi5fbnVtYmVySW5wdXREZWZhdWx0cywgLi4uY29uZmlnIH0gfTtcclxufVxyXG4iXX0=
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0LmRlZmF1bHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvbnVtYmVyLWlucHV0L251bWJlci1pbnB1dC5kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBK0IsMkJBQTJCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQWdCeEYsTUFBTSxvQkFBb0IsR0FBMkI7SUFDbkQsR0FBRywyQkFBMkI7SUFDOUIsVUFBVSxFQUFFLHFCQUFxQixDQUFDLFFBQVE7SUFDMUMsT0FBTyxFQUFFLGtCQUFrQixDQUFDLE9BQU87SUFDbkMsT0FBTyxFQUFFLEtBQUs7SUFDZCxXQUFXLEVBQUUsRUFBRTtJQUNmLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNO0lBQ2xDLFVBQVUsRUFBRSxFQUFFO0lBQ2QsR0FBRyxFQUFFLENBQUM7SUFDTixHQUFHLEVBQUUsUUFBUTtJQUNiLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLFNBQVMsRUFBRSxLQUFLO0lBQ2hCLFFBQVEsRUFBRSxDQUFDO0NBQ1osQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLElBQUksY0FBYyxDQUF5QiwyQkFBMkIsRUFBRTtJQUMvRyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNkLEdBQUcsb0JBQW9CO0tBQ3hCLENBQUM7Q0FDSCxDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsTUFBdUM7SUFDaEYsT0FBTyxFQUFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUsRUFBRSxHQUFHLG9CQUFvQixFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztBQUNsRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBfRm9ybUZpZWxkQ29tcG9uZW50RGVmYXVsdHMsIF9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyB9IGZyb20gJy4uLy4uL19pbnRlcm5hbC9mb3JtLWZpZWxkLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBPbmVBeGlzQWxpZ25tZW50IH0gZnJvbSAnLi8uLi8uLi90eXBlcy9hbGlnbm1lbnQudHlwZXMnO1xuaW1wb3J0IHsgRm9ybUVsZW1lbnRBcHBlYXJhbmNlLCBGb3JtRWxlbWVudFZhcmlhbnQgfSBmcm9tICcuLy4uLy4uL3R5cGVzL3RoZW1pbmcudHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFyZE51bWJlcklucHV0RGVmYXVsdHMgZXh0ZW5kcyBfRm9ybUZpZWxkQ29tcG9uZW50RGVmYXVsdHMge1xuICBhcHBlYXJhbmNlOiBGb3JtRWxlbWVudEFwcGVhcmFuY2U7XG4gIHZhcmlhbnQ6IEZvcm1FbGVtZW50VmFyaWFudDtcbiAgY29tcGFjdDogYm9vbGVhbjtcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgYWxpZ25UZXh0OiBPbmVBeGlzQWxpZ25tZW50O1xuICBpbnB1dEF0dHJzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuICBtaW46IG51bWJlcjtcbiAgbWF4OiBudW1iZXI7XG4gIGFsbG93RmxvYXQ6IGJvb2xlYW47XG4gIG5vQnV0dG9uczogYm9vbGVhbjtcbiAgc3RlcFNpemU6IG51bWJlcjtcbn1cblxuY29uc3QgX251bWJlcklucHV0RGVmYXVsdHM6IEFyZE51bWJlcklucHV0RGVmYXVsdHMgPSB7XG4gIC4uLl9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyxcbiAgYXBwZWFyYW5jZTogRm9ybUVsZW1lbnRBcHBlYXJhbmNlLk91dGxpbmVkLFxuICB2YXJpYW50OiBGb3JtRWxlbWVudFZhcmlhbnQuUm91bmRlZCxcbiAgY29tcGFjdDogZmFsc2UsXG4gIHBsYWNlaG9sZGVyOiAnJyxcbiAgYWxpZ25UZXh0OiBPbmVBeGlzQWxpZ25tZW50Lk1pZGRsZSxcbiAgaW5wdXRBdHRyczoge30sXG4gIG1pbjogMCxcbiAgbWF4OiBJbmZpbml0eSxcbiAgYWxsb3dGbG9hdDogZmFsc2UsXG4gIG5vQnV0dG9uczogZmFsc2UsXG4gIHN0ZXBTaXplOiAxLFxufTtcblxuZXhwb3J0IGNvbnN0IEFSRF9OVU1CRVJfSU5QVVRfREVGQVVMVFMgPSBuZXcgSW5qZWN0aW9uVG9rZW48QXJkTnVtYmVySW5wdXREZWZhdWx0cz4oJ2FyZC1udW1iZXItaW5wdXQtZGVmYXVsdHMnLCB7XG4gIGZhY3Rvcnk6ICgpID0+ICh7XG4gICAgLi4uX251bWJlcklucHV0RGVmYXVsdHMsXG4gIH0pLFxufSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlTnVtYmVySW5wdXREZWZhdWx0cyhjb25maWc6IFBhcnRpYWw8QXJkTnVtYmVySW5wdXREZWZhdWx0cz4pOiBQcm92aWRlciB7XG4gIHJldHVybiB7IHByb3ZpZGU6IEFSRF9OVU1CRVJfSU5QVVRfREVGQVVMVFMsIHVzZVZhbHVlOiB7IC4uLl9udW1iZXJJbnB1dERlZmF1bHRzLCAuLi5jb25maWcgfSB9O1xufVxuIl19
@@ -144,7 +144,7 @@ export class ArdiumPasswordInputComponent extends _FormFieldComponentBase {
144
144
  provide: _FormFieldComponentBase,
145
145
  useExisting: ArdiumPasswordInputComponent,
146
146
  },
147
- ], queries: [{ propertyName: "prefixTemplate", first: true, predicate: ArdPasswordInputPrefixTemplateDirective, descendants: true, isSignal: true }, { propertyName: "suffixTemplate", first: true, predicate: ArdPasswordInputSuffixTemplateDirective, descendants: true, isSignal: true }, { propertyName: "placeholderTemplate", first: true, predicate: ArdPasswordInputPlaceholderTemplateDirective, descendants: true, isSignal: true }, { propertyName: "revealTemplate", first: true, predicate: ArdPasswordInputRevealButtonTemplateDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "textInputEl", first: true, predicate: ["textInput"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ard-form-field-frame\r\n [appearance]=\"appearance()\"\r\n [variant]=\"variant()\"\r\n [compact]=\"compact()\"\r\n [isFocused]=\"isFocused()\"\r\n [hasError]=\"hasError()\"\r\n [isSuccess]=\"isSuccess()\"\r\n [prefixTemplate]=\"prefixTemplate()?.template\"\r\n [suffixTemplate]=\"suffixTemplate()?.template\"\r\n>\r\n <div\r\n class=\"ard-password-input\"\r\n [ngClass]=\"ngClasses()\"\r\n [class.ard-has-value]=\"value()\"\r\n (click)=\"focus()\"\r\n >\r\n <div class=\"ard-input-container\">\r\n @if (shouldDisplayPlaceholder()) {\r\n <ng-template #defaultPlaceholderTemplate>\r\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\" />\r\n }\r\n\r\n <input\r\n #textInput\r\n #focusableElement\r\n [type]=\"!revealable() || !revealed() ? 'password' : 'text'\"\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"tabIndex()\"\r\n [readonly]=\"readonly()\"\r\n [disabled]=\"disabled()\"\r\n (input)=\"onInput(textInput.value)\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n (change)=\"onChange($event)\"\r\n (copy)=\"onCopy($event)\"\r\n [class.ard-revealed]=\"revealable() && revealed()\"\r\n />\r\n </div>\r\n\r\n @if (revealable()) {\r\n <button\r\n class=\"ard-reveal-button\"\r\n type=\"button\"\r\n (click)=\"!holdToReveal() && toggleReveal()\"\r\n (mousedown)=\"holdToReveal() && revealed.set(true)\"\r\n (mouseup)=\"holdToReveal() && revealed.set(false)\"\r\n >\r\n <ng-template\r\n #defaultRevealTemplate\r\n let-revealed\r\n >\r\n <ard-icon [icon]=\"revealed ? 'visibility' : 'visibility_off'\"></ard-icon>\r\n </ng-template>\r\n\r\n <ng-template\r\n [ngTemplateOutlet]=\"revealTemplate()?.template || defaultRevealTemplate\"\r\n [ngTemplateOutletContext]=\"revealButtonContext()\"\r\n />\r\n </button>\r\n }\r\n </div>\r\n</ard-form-field-frame>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ArdiumFormFieldFrameComponent, selector: "ard-form-field-frame", inputs: ["hasError", "isSuccess", "isFocused", "appearance", "variant", "compact", "prefixTemplate", "suffixTemplate"] }, { kind: "component", type: i3.ArdiumIconComponent, selector: "ard-icon", inputs: ["ariaLabel", "icon", "filled", "weight", "grade", "opticalSize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
147
+ ], queries: [{ propertyName: "prefixTemplate", first: true, predicate: ArdPasswordInputPrefixTemplateDirective, descendants: true, isSignal: true }, { propertyName: "suffixTemplate", first: true, predicate: ArdPasswordInputSuffixTemplateDirective, descendants: true, isSignal: true }, { propertyName: "placeholderTemplate", first: true, predicate: ArdPasswordInputPlaceholderTemplateDirective, descendants: true, isSignal: true }, { propertyName: "revealTemplate", first: true, predicate: ArdPasswordInputRevealButtonTemplateDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "textInputEl", first: true, predicate: ["textInput"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ard-form-field-frame\n [appearance]=\"appearance()\"\n [variant]=\"variant()\"\n [compact]=\"compact()\"\n [isFocused]=\"isFocused()\"\n [hasError]=\"hasError()\"\n [isSuccess]=\"isSuccess()\"\n [prefixTemplate]=\"prefixTemplate()?.template\"\n [suffixTemplate]=\"suffixTemplate()?.template\"\n>\n <div\n class=\"ard-password-input\"\n [ngClass]=\"ngClasses()\"\n [class.ard-has-value]=\"value()\"\n (click)=\"focus()\"\n >\n <div class=\"ard-input-container\">\n @if (shouldDisplayPlaceholder()) {\n <ng-template #defaultPlaceholderTemplate>\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\n </ng-template>\n\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\" />\n }\n\n <input\n #textInput\n #focusableElement\n [type]=\"!revealable() || !revealed() ? 'password' : 'text'\"\n [attr.id]=\"inputId()\"\n [attr.tabindex]=\"tabIndex()\"\n [readonly]=\"readonly()\"\n [disabled]=\"disabled()\"\n (input)=\"onInput(textInput.value)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n (change)=\"onChange($event)\"\n (copy)=\"onCopy($event)\"\n [class.ard-revealed]=\"revealable() && revealed()\"\n />\n </div>\n\n @if (revealable()) {\n <button\n class=\"ard-reveal-button\"\n type=\"button\"\n (click)=\"!holdToReveal() && toggleReveal()\"\n (mousedown)=\"holdToReveal() && revealed.set(true)\"\n (mouseup)=\"holdToReveal() && revealed.set(false)\"\n >\n <ng-template\n #defaultRevealTemplate\n let-revealed\n >\n <ard-icon [icon]=\"revealed ? 'visibility' : 'visibility_off'\"></ard-icon>\n </ng-template>\n\n <ng-template\n [ngTemplateOutlet]=\"revealTemplate()?.template || defaultRevealTemplate\"\n [ngTemplateOutletContext]=\"revealButtonContext()\"\n />\n </button>\n }\n </div>\n</ard-form-field-frame>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ArdiumFormFieldFrameComponent, selector: "ard-form-field-frame", inputs: ["hasError", "isSuccess", "isFocused", "appearance", "variant", "compact", "prefixTemplate", "suffixTemplate"] }, { kind: "component", type: i3.ArdiumIconComponent, selector: "ard-icon", inputs: ["ariaLabel", "icon", "filled", "weight", "grade", "opticalSize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
148
148
  }
149
149
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumPasswordInputComponent, decorators: [{
150
150
  type: Component,
@@ -158,9 +158,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
158
158
  provide: _FormFieldComponentBase,
159
159
  useExisting: ArdiumPasswordInputComponent,
160
160
  },
161
- ], template: "<ard-form-field-frame\r\n [appearance]=\"appearance()\"\r\n [variant]=\"variant()\"\r\n [compact]=\"compact()\"\r\n [isFocused]=\"isFocused()\"\r\n [hasError]=\"hasError()\"\r\n [isSuccess]=\"isSuccess()\"\r\n [prefixTemplate]=\"prefixTemplate()?.template\"\r\n [suffixTemplate]=\"suffixTemplate()?.template\"\r\n>\r\n <div\r\n class=\"ard-password-input\"\r\n [ngClass]=\"ngClasses()\"\r\n [class.ard-has-value]=\"value()\"\r\n (click)=\"focus()\"\r\n >\r\n <div class=\"ard-input-container\">\r\n @if (shouldDisplayPlaceholder()) {\r\n <ng-template #defaultPlaceholderTemplate>\r\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\" />\r\n }\r\n\r\n <input\r\n #textInput\r\n #focusableElement\r\n [type]=\"!revealable() || !revealed() ? 'password' : 'text'\"\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"tabIndex()\"\r\n [readonly]=\"readonly()\"\r\n [disabled]=\"disabled()\"\r\n (input)=\"onInput(textInput.value)\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n (change)=\"onChange($event)\"\r\n (copy)=\"onCopy($event)\"\r\n [class.ard-revealed]=\"revealable() && revealed()\"\r\n />\r\n </div>\r\n\r\n @if (revealable()) {\r\n <button\r\n class=\"ard-reveal-button\"\r\n type=\"button\"\r\n (click)=\"!holdToReveal() && toggleReveal()\"\r\n (mousedown)=\"holdToReveal() && revealed.set(true)\"\r\n (mouseup)=\"holdToReveal() && revealed.set(false)\"\r\n >\r\n <ng-template\r\n #defaultRevealTemplate\r\n let-revealed\r\n >\r\n <ard-icon [icon]=\"revealed ? 'visibility' : 'visibility_off'\"></ard-icon>\r\n </ng-template>\r\n\r\n <ng-template\r\n [ngTemplateOutlet]=\"revealTemplate()?.template || defaultRevealTemplate\"\r\n [ngTemplateOutletContext]=\"revealButtonContext()\"\r\n />\r\n </button>\r\n }\r\n </div>\r\n</ard-form-field-frame>\r\n" }]
161
+ ], template: "<ard-form-field-frame\n [appearance]=\"appearance()\"\n [variant]=\"variant()\"\n [compact]=\"compact()\"\n [isFocused]=\"isFocused()\"\n [hasError]=\"hasError()\"\n [isSuccess]=\"isSuccess()\"\n [prefixTemplate]=\"prefixTemplate()?.template\"\n [suffixTemplate]=\"suffixTemplate()?.template\"\n>\n <div\n class=\"ard-password-input\"\n [ngClass]=\"ngClasses()\"\n [class.ard-has-value]=\"value()\"\n (click)=\"focus()\"\n >\n <div class=\"ard-input-container\">\n @if (shouldDisplayPlaceholder()) {\n <ng-template #defaultPlaceholderTemplate>\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\n </ng-template>\n\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\" />\n }\n\n <input\n #textInput\n #focusableElement\n [type]=\"!revealable() || !revealed() ? 'password' : 'text'\"\n [attr.id]=\"inputId()\"\n [attr.tabindex]=\"tabIndex()\"\n [readonly]=\"readonly()\"\n [disabled]=\"disabled()\"\n (input)=\"onInput(textInput.value)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n (change)=\"onChange($event)\"\n (copy)=\"onCopy($event)\"\n [class.ard-revealed]=\"revealable() && revealed()\"\n />\n </div>\n\n @if (revealable()) {\n <button\n class=\"ard-reveal-button\"\n type=\"button\"\n (click)=\"!holdToReveal() && toggleReveal()\"\n (mousedown)=\"holdToReveal() && revealed.set(true)\"\n (mouseup)=\"holdToReveal() && revealed.set(false)\"\n >\n <ng-template\n #defaultRevealTemplate\n let-revealed\n >\n <ard-icon [icon]=\"revealed ? 'visibility' : 'visibility_off'\"></ard-icon>\n </ng-template>\n\n <ng-template\n [ngTemplateOutlet]=\"revealTemplate()?.template || defaultRevealTemplate\"\n [ngTemplateOutletContext]=\"revealButtonContext()\"\n />\n </button>\n }\n </div>\n</ard-form-field-frame>\n" }]
162
162
  }], ctorParameters: () => [{ type: undefined, decorators: [{
163
163
  type: Inject,
164
164
  args: [ARD_PASSWORD_INPUT_DEFAULTS]
165
165
  }] }] });
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvcGFzc3dvcmQtaW5wdXQvcGFzc3dvcmQtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvcGFzc3dvcmQtaW5wdXQvcGFzc3dvcmQtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsTUFBTSxFQUdOLGlCQUFpQixFQUNqQixRQUFRLEVBQ1IsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHL0UsT0FBTyxFQUFFLDJCQUEyQixFQUE0QixNQUFNLDJCQUEyQixDQUFDO0FBQ2xHLE9BQU8sRUFDTCw0Q0FBNEMsRUFDNUMsdUNBQXVDLEVBQ3ZDLDZDQUE2QyxFQUM3Qyx1Q0FBdUMsR0FDeEMsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7QUFxQnJDLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSx1QkFBdUI7SUFFdkUsWUFBaUQsUUFBa0M7UUFDakYsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBR2xCLGNBQWM7UUFDTCxnQkFBVyxHQUFHLFNBQVMsQ0FBK0IsV0FBVyxDQUFDLENBQUM7UUFPbkUsZ0JB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RUFpRUE7OzRGRGpCYSw0QkFBNEI7a0JBbEJ4QyxTQUFTOytCQUNFLG9CQUFvQixpQkFHZixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDZCQUE2QixDQUFDOzRCQUMzRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsdUJBQXVCOzRCQUNoQyxXQUFXLDhCQUE4Qjt5QkFDMUM7cUJBQ0Y7OzBCQUlZLE1BQU07MkJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbmplY3QsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBjb21wdXRlZCxcclxuICBjb250ZW50Q2hpbGQsXHJcbiAgZm9yd2FyZFJlZixcclxuICBpbnB1dCxcclxuICBtb2RlbCxcclxuICB2aWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0BhcmRpdW0tdWkvZGV2a2l0JztcclxuaW1wb3J0IHsgaXNBbnlTdHJpbmcsIGlzRGVmaW5lZCB9IGZyb20gJ3NpbXBsZS1ib29sJztcclxuaW1wb3J0IHsgX0Zvcm1GaWVsZENvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9faW50ZXJuYWwvZm9ybS1maWVsZC1jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtRWxlbWVudEFwcGVhcmFuY2UsIEZvcm1FbGVtZW50VmFyaWFudCB9IGZyb20gJy4uLy4uL3R5cGVzL3RoZW1pbmcudHlwZXMnO1xyXG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJy4uLy4uL3R5cGVzL3V0aWxpdHkudHlwZXMnO1xyXG5pbXBvcnQgeyBBUkRfUEFTU1dPUkRfSU5QVVRfREVGQVVMVFMsIEFyZFBhc3N3b3JkSW5wdXREZWZhdWx0cyB9IGZyb20gJy4vcGFzc3dvcmQtaW5wdXQuZGVmYXVsdHMnO1xyXG5pbXBvcnQge1xyXG4gIEFyZFBhc3N3b3JkSW5wdXRQbGFjZWhvbGRlclRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gIEFyZFBhc3N3b3JkSW5wdXRQcmVmaXhUZW1wbGF0ZURpcmVjdGl2ZSxcclxuICBBcmRQYXNzd29yZElucHV0UmV2ZWFsQnV0dG9uVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgQXJkUGFzc3dvcmRJbnB1dFN1ZmZpeFRlbXBsYXRlRGlyZWN0aXZlLFxyXG59IGZyb20gJy4vcGFzc3dvcmQtaW5wdXQuZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IFBhc3N3b3JkSW5wdXRSZXZlYWxCdXR0b25Db250ZXh0IH0gZnJvbSAnLi9wYXNzd29yZC1pbnB1dC50eXBlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FyZC1wYXNzd29yZC1pbnB1dCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Bhc3N3b3JkLWlucHV0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wYXNzd29yZC1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBcmRpdW1QYXNzd29yZElucHV0Q29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBfRm9ybUZpZWxkQ29tcG9uZW50QmFzZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IEFyZGl1bVBhc3N3b3JkSW5wdXRDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcmRpdW1QYXNzd29yZElucHV0Q29tcG9uZW50IGV4dGVuZHMgX0Zvcm1GaWVsZENvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBfREVGQVVMVFMhOiBBcmRQYXNzd29yZElucHV0RGVmYXVsdHM7XHJcbiAgY29uc3RydWN0b3IoQEluamVjdChBUkRfUEFTU1dPUkRfSU5QVVRfREVGQVVMVFMpIGRlZmF1bHRzOiBBcmRQYXNzd29yZElucHV0RGVmYXVsdHMpIHtcclxuICAgIHN1cGVyKGRlZmF1bHRzKTtcclxuICB9XHJcblxyXG4gIC8vISBpbnB1dCB2aWV3XHJcbiAgcmVhZG9ubHkgdGV4dElucHV0RWwgPSB2aWV3Q2hpbGQ8RWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50Pj4oJ3RleHRJbnB1dCcpO1xyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICB0aGlzLl9zZXRJbnB1dEF0dHJpYnV0ZXMoKTtcclxuICB9XHJcblxyXG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyID0gaW5wdXQ8c3RyaW5nPih0aGlzLl9ERUZBVUxUUy5wbGFjZWhvbGRlcik7XHJcbiAgcmVhZG9ubHkgaW5wdXRJZCA9IGlucHV0PE51bGxhYmxlPHN0cmluZz4+KCk7XHJcblxyXG4gIC8vISBwcmVmaXggJiBzdWZmaXhcclxuICByZWFkb25seSBwcmVmaXhUZW1wbGF0ZSA9IGNvbnRlbnRDaGlsZChBcmRQYXNzd29yZElucHV0UHJlZml4VGVtcGxhdGVEaXJlY3RpdmUpO1xyXG4gIHJlYWRvbmx5IHN1ZmZpeFRlbXBsYXRlID0gY29udGVudENoaWxkKEFyZFBhc3N3b3JkSW5wdXRTdWZmaXhUZW1wbGF0ZURpcmVjdGl2ZSk7XHJcblxyXG4gIC8vISBwbGFjZWhvbGRlclxyXG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyVGVtcGxhdGUgPSBjb250ZW50Q2hpbGQoQXJkUGFzc3dvcmRJbnB1dFBsYWNlaG9sZGVyVGVtcGxhdGVEaXJlY3RpdmUpO1xyXG5cclxuICByZWFkb25seSBzaG91bGREaXNwbGF5UGxhY2Vob2xkZXIgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMucGxhY2Vob2xkZXIoKSAmJiAhdGhpcy52YWx1ZSgpKTtcclxuXHJcbiAgLy8hIHJldmVhbGluZ1xyXG4gIHJlYWRvbmx5IHJldmVhbGFibGUgPSBpbnB1dDxib29sZWFuLCBhbnk+KHRoaXMuX0RFRkFVTFRTLnJldmVhbGFibGUsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2KSB9KTtcclxuICByZWFkb25seSBob2xkVG9SZXZlYWwgPSBpbnB1dDxib29sZWFuLCBhbnk+KHRoaXMuX0RFRkFVTFRTLmhvbGRUb1JldmVhbCwgeyB0cmFuc2Zvcm06IHYgPT4gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpIH0pO1xyXG5cclxuICByZWFkb25seSBhdXRvSGlkZVRpbWVvdXRNcyA9IGlucHV0PE51bGxhYmxlPG51bWJlcj4sIGFueT4odGhpcy5fREVGQVVMVFMuYXV0b0hpZGVUaW1lb3V0TXMsIHtcclxuICAgIHRyYW5zZm9ybTogdiA9PiBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2LCB0aGlzLl9ERUZBVUxUUy5hdXRvSGlkZVRpbWVvdXRNcyksXHJcbiAgfSk7XHJcblxyXG4gIHJlYWRvbmx5IHJldmVhbGVkID0gbW9kZWw8Ym9vbGVhbj4odGhpcy5fREVGQVVMVFMucmV2ZWFsZWQpO1xyXG5cclxuICBwcml2YXRlIF9oaWRlVGltZW91dDogTm9kZUpTLlRpbWVvdXQgfCBudWxsID0gbnVsbDtcclxuICB0b2dnbGVSZXZlYWwobmV3U3RhdGUgPSAhdGhpcy5yZXZlYWxlZCgpKTogdm9pZCB7XHJcbiAgICB0aGlzLnJldmVhbGVkLnNldChuZXdTdGF0ZSk7XHJcblxyXG4gICAgaWYgKHRoaXMuX2hpZGVUaW1lb3V0KSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9oaWRlVGltZW91dCk7XHJcbiAgICB9XHJcbiAgICBjb25zdCB0aW1lb3V0ID0gdGhpcy5hdXRvSGlkZVRpbWVvdXRNcygpO1xyXG4gICAgaWYgKHRpbWVvdXQgJiYgbmV3U3RhdGUpIHtcclxuICAgICAgdGhpcy5faGlkZVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmV2ZWFsZWQuc2V0KGZhbHNlKSwgdGltZW91dCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICBpZiAodGhpcy5faGlkZVRpbWVvdXQpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2hpZGVUaW1lb3V0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlYWRvbmx5IHJldmVhbFRlbXBsYXRlID0gY29udGVudENoaWxkKEFyZFBhc3N3b3JkSW5wdXRSZXZlYWxCdXR0b25UZW1wbGF0ZURpcmVjdGl2ZSk7XHJcblxyXG4gIHJlYWRvbmx5IHJldmVhbEJ1dHRvbkNvbnRleHQgPSBjb21wdXRlZChcclxuICAgICgpOiBQYXNzd29yZElucHV0UmV2ZWFsQnV0dG9uQ29udGV4dCA9PiAoe1xyXG4gICAgICAkaW1wbGljaXQ6IHRoaXMucmV2ZWFsZWQoKSxcclxuICAgIH0pXHJcbiAgKTtcclxuXHJcbiAgLy8hIGFwcGVhcmFuY2VcclxuICByZWFkb25seSBhcHBlYXJhbmNlID0gaW5wdXQ8Rm9ybUVsZW1lbnRBcHBlYXJhbmNlPih0aGlzLl9ERUZBVUxUUy5hcHBlYXJhbmNlKTtcclxuICByZWFkb25seSB2YXJpYW50ID0gaW5wdXQ8Rm9ybUVsZW1lbnRWYXJpYW50Pih0aGlzLl9ERUZBVUxUUy52YXJpYW50KTtcclxuXHJcbiAgcmVhZG9ubHkgY29tcGFjdCA9IGlucHV0PGJvb2xlYW4sIGFueT4odGhpcy5fREVGQVVMVFMuY29tcGFjdCwgeyB0cmFuc2Zvcm06IHYgPT4gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpIH0pO1xyXG5cclxuICByZWFkb25seSBuZ0NsYXNzZXMgPSBjb21wdXRlZCgoKSA9PlxyXG4gICAgW1xyXG4gICAgICBgYXJkLWFwcGVhcmFuY2UtJHt0aGlzLmFwcGVhcmFuY2UoKX1gLFxyXG4gICAgICBgYXJkLXZhcmlhbnQtJHt0aGlzLnZhcmlhbnQoKX1gLFxyXG4gICAgICB0aGlzLmNvbXBhY3QoKSA/ICdhcmQtY29tcGFjdCcgOiAnJyxcclxuICAgICAgdGhpcy5yZXZlYWxhYmxlKCkgPyAnYXJkLXJldmVhbGFibGUnIDogJycsXHJcbiAgICBdLmpvaW4oJyAnKVxyXG4gICk7XHJcblxyXG4gIC8vISBvdGhlciBpbnB1dHNcclxuICByZWFkb25seSBpbnB1dEF0dHJzID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgYW55Pj4odGhpcy5fREVGQVVMVFMuaW5wdXRBdHRycyk7XHJcblxyXG4gIC8vISBjb250cm9sIHZhbHVlIGFjY2Vzc29yJ3Mgd3JpdGUgdmFsdWUgaW1wbGVtZW50YXRpb25cclxuICB3cml0ZVZhbHVlKHY6IGFueSkge1xyXG4gICAgaWYgKCFpc0FueVN0cmluZyh2KSAmJiBpc0RlZmluZWQodikpIHtcclxuICAgICAgLy93YXJuIHdoZW4gdXNpbmcgbm9uLXN0cmluZy9ub24tbnVsbCB2YWx1ZVxyXG4gICAgICBjb25zb2xlLndhcm4oXHJcbiAgICAgICAgbmV3IEVycm9yKFxyXG4gICAgICAgICAgYEFSRC1XQTAwMjA6IFRyeWluZyB0byBzZXQgPGFyZC1wYXNzd29yZC1pbnB1dD4ncyB2YWx1ZSB0byBcIiR7dn1cIiAob2YgdHlwZSAke3R5cGVvZiB2fSksIGV4cGVjdGVkIHN0cmluZyBvciBudWxsLmBcclxuICAgICAgICApXHJcbiAgICAgICk7XHJcbiAgICAgIC8vbm9ybWFsaXplIHRoZSB2YWx1ZVxyXG4gICAgICB2ID0gdj8udG9TdHJpbmc/LigpID8/IFN0cmluZyh2KTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fd3JpdGVWYWx1ZSh2KTtcclxuICB9XHJcbiAgcHJvdGVjdGVkIF93cml0ZVZhbHVlKHY6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG9sZFZhbCA9IHRoaXMudmFsdWUoKTtcclxuICAgIHRoaXMudmFsdWUuc2V0KHYpO1xyXG4gICAgcmV0dXJuIG9sZFZhbCAhPT0gdjtcclxuICB9XHJcbiAgLy8hIHZhbHVlIHR3by13YXkgYmluZGluZ1xyXG4gIHJlYWRvbmx5IHZhbHVlID0gbW9kZWw8TnVsbGFibGU8c3RyaW5nPj4oKTtcclxuXHJcbiAgLy8hIGV2ZW50IGhhbmRsZXJzXHJcbiAgb25JbnB1dChuZXdWYWw6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsdWVIYXNDaGFuZ2VkID0gdGhpcy5fd3JpdGVWYWx1ZShuZXdWYWwpO1xyXG4gICAgaWYgKCF2YWx1ZUhhc0NoYW5nZWQpIHJldHVybjtcclxuICAgIHRoaXMuX2VtaXRDaGFuZ2UoKTtcclxuICB9XHJcbiAgcHJvdGVjdGVkIF9lbWl0Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgdiA9IHRoaXMudmFsdWUoKTtcclxuICAgIHRoaXMuX29uQ2hhbmdlUmVnaXN0ZXJlZD8uKHYpO1xyXG4gIH1cclxuICAvL2ZvY3VzLCBibHVyLCBjaGFuZ2VcclxuICBvbkNoYW5nZShldmVudDogRXZlbnQpOiB2b2lkIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5fZW1pdENoYW5nZSgpO1xyXG4gIH1cclxuXHJcbiAgLy8gY29weVxyXG4gIG9uQ29weShldmVudDogQ2xpcGJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgIGNvbnN0IHRleHRJbnB1dEVsID0gdGhpcy50ZXh0SW5wdXRFbCgpO1xyXG4gICAgY29uc3QgdiA9IHRoaXMudmFsdWUoKTtcclxuICAgIGlmIChcclxuICAgICAgdiAmJlxyXG4gICAgICB0ZXh0SW5wdXRFbCAmJlxyXG4gICAgICAvL2RvZXMgdGhlIHNlbGVjdGlvbiBjb3ZlciB0aGUgZW50aXJlIGlucHV0XHJcbiAgICAgICgodGV4dElucHV0RWwubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCA9PT0gMCAmJlxyXG4gICAgICAgIHRleHRJbnB1dEVsLm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kID09PSB0ZXh0SW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlLmxlbmd0aCkgfHxcclxuICAgICAgICAvL29yIGlzIHplcm8td2lkZVxyXG4gICAgICAgIHRleHRJbnB1dEVsLm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgPT09IHRleHRJbnB1dEVsLm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kKVxyXG4gICAgKSB7XHJcbiAgICAgIGV2ZW50LmNsaXBib2FyZERhdGE/LnNldERhdGEoJ3RleHQvcGxhaW4nLCB2KTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8hIGhlbHBlcnNcclxuICBwcm90ZWN0ZWQgX3NldElucHV0QXR0cmlidXRlcygpIHtcclxuICAgIGNvbnN0IGlucHV0ID0gdGhpcy50ZXh0SW5wdXRFbCgpPy5uYXRpdmVFbGVtZW50O1xyXG4gICAgaWYgKCFpbnB1dCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IGF0dHJpYnV0ZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XHJcbiAgICAgIHR5cGU6ICd0ZXh0JyxcclxuICAgICAgYXV0b2NvcnJlY3Q6ICdvZmYnLFxyXG4gICAgICBhdXRvY2FwaXRhbGl6ZTogJ29mZicsXHJcbiAgICAgIGF1dG9jb21wbGV0ZTogJ29mZicsXHJcbiAgICAgIHRhYmluZGV4OiBTdHJpbmcodGhpcy50YWJJbmRleCgpKSxcclxuICAgICAgLi4udGhpcy5pbnB1dEF0dHJzKCksXHJcbiAgICB9O1xyXG5cclxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKGF0dHJpYnV0ZXMpKSB7XHJcbiAgICAgIGlucHV0LnNldEF0dHJpYnV0ZShrZXksIFN0cmluZyhhdHRyaWJ1dGVzW2tleV0pKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGFyZC1mb3JtLWZpZWxkLWZyYW1lXHJcbiAgW2FwcGVhcmFuY2VdPVwiYXBwZWFyYW5jZSgpXCJcclxuICBbdmFyaWFudF09XCJ2YXJpYW50KClcIlxyXG4gIFtjb21wYWN0XT1cImNvbXBhY3QoKVwiXHJcbiAgW2lzRm9jdXNlZF09XCJpc0ZvY3VzZWQoKVwiXHJcbiAgW2hhc0Vycm9yXT1cImhhc0Vycm9yKClcIlxyXG4gIFtpc1N1Y2Nlc3NdPVwiaXNTdWNjZXNzKClcIlxyXG4gIFtwcmVmaXhUZW1wbGF0ZV09XCJwcmVmaXhUZW1wbGF0ZSgpPy50ZW1wbGF0ZVwiXHJcbiAgW3N1ZmZpeFRlbXBsYXRlXT1cInN1ZmZpeFRlbXBsYXRlKCk/LnRlbXBsYXRlXCJcclxuPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwiYXJkLXBhc3N3b3JkLWlucHV0XCJcclxuICAgIFtuZ0NsYXNzXT1cIm5nQ2xhc3NlcygpXCJcclxuICAgIFtjbGFzcy5hcmQtaGFzLXZhbHVlXT1cInZhbHVlKClcIlxyXG4gICAgKGNsaWNrKT1cImZvY3VzKClcIlxyXG4gID5cclxuICAgIDxkaXYgY2xhc3M9XCJhcmQtaW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICAgIEBpZiAoc2hvdWxkRGlzcGxheVBsYWNlaG9sZGVyKCkpIHtcclxuICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRQbGFjZWhvbGRlclRlbXBsYXRlPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImFyZC1wbGFjZWhvbGRlclwiPnt7IHBsYWNlaG9sZGVyKCkgfX08L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwicGxhY2Vob2xkZXJUZW1wbGF0ZSgpPy50ZW1wbGF0ZSB8fCBkZWZhdWx0UGxhY2Vob2xkZXJUZW1wbGF0ZVwiIC8+XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDxpbnB1dFxyXG4gICAgICAgICN0ZXh0SW5wdXRcclxuICAgICAgICAjZm9jdXNhYmxlRWxlbWVudFxyXG4gICAgICAgIFt0eXBlXT1cIiFyZXZlYWxhYmxlKCkgfHwgIXJldmVhbGVkKCkgPyAncGFzc3dvcmQnIDogJ3RleHQnXCJcclxuICAgICAgICBbYXR0ci5pZF09XCJpbnB1dElkKClcIlxyXG4gICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYkluZGV4KClcIlxyXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seSgpXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXHJcbiAgICAgICAgKGlucHV0KT1cIm9uSW5wdXQodGV4dElucHV0LnZhbHVlKVwiXHJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXHJcbiAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxyXG4gICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgKGNvcHkpPVwib25Db3B5KCRldmVudClcIlxyXG4gICAgICAgIFtjbGFzcy5hcmQtcmV2ZWFsZWRdPVwicmV2ZWFsYWJsZSgpICYmIHJldmVhbGVkKClcIlxyXG4gICAgICAvPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgQGlmIChyZXZlYWxhYmxlKCkpIHtcclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwiYXJkLXJldmVhbC1idXR0b25cIlxyXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgIChjbGljayk9XCIhaG9sZFRvUmV2ZWFsKCkgJiYgdG9nZ2xlUmV2ZWFsKClcIlxyXG4gICAgICAgIChtb3VzZWRvd24pPVwiaG9sZFRvUmV2ZWFsKCkgJiYgcmV2ZWFsZWQuc2V0KHRydWUpXCJcclxuICAgICAgICAobW91c2V1cCk9XCJob2xkVG9SZXZlYWwoKSAmJiByZXZlYWxlZC5zZXQoZmFsc2UpXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICAgICAgI2RlZmF1bHRSZXZlYWxUZW1wbGF0ZVxyXG4gICAgICAgICAgbGV0LXJldmVhbGVkXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPGFyZC1pY29uIFtpY29uXT1cInJldmVhbGVkID8gJ3Zpc2liaWxpdHknIDogJ3Zpc2liaWxpdHlfb2ZmJ1wiPjwvYXJkLWljb24+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlXHJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJyZXZlYWxUZW1wbGF0ZSgpPy50ZW1wbGF0ZSB8fCBkZWZhdWx0UmV2ZWFsVGVtcGxhdGVcIlxyXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInJldmVhbEJ1dHRvbkNvbnRleHQoKVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbjwvYXJkLWZvcm0tZmllbGQtZnJhbWU+XHJcbiJdfQ==
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvcGFzc3dvcmQtaW5wdXQvcGFzc3dvcmQtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvcGFzc3dvcmQtaW5wdXQvcGFzc3dvcmQtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsTUFBTSxFQUdOLGlCQUFpQixFQUNqQixRQUFRLEVBQ1IsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBQ0wsS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHL0UsT0FBTyxFQUFFLDJCQUEyQixFQUE0QixNQUFNLDJCQUEyQixDQUFDO0FBQ2xHLE9BQU8sRUFDTCw0Q0FBNEMsRUFDNUMsdUNBQXVDLEVBQ3ZDLDZDQUE2QyxFQUM3Qyx1Q0FBdUMsR0FDeEMsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7QUFxQnJDLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSx1QkFBdUI7SUFFdkUsWUFBaUQsUUFBa0M7UUFDakYsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBR2xCLGNBQWM7UUFDTCxnQkFBVyxHQUFHLFNBQVMsQ0FBK0IsV0FBVyxDQUFDLENBQUM7UUFPbkUsZ0JB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RUFpRUE7OzRGRGpCYSw0QkFBNEI7a0JBbEJ4QyxTQUFTOytCQUNFLG9CQUFvQixpQkFHZixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDZCQUE2QixDQUFDOzRCQUMzRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsdUJBQXVCOzRCQUNoQyxXQUFXLDhCQUE4Qjt5QkFDMUM7cUJBQ0Y7OzBCQUlZLE1BQU07MkJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbmplY3QsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBjb21wdXRlZCxcclxuICBjb250ZW50Q2hpbGQsXHJcbiAgZm9yd2FyZFJlZixcclxuICBpbnB1dCxcclxuICBtb2RlbCxcclxuICB2aWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0BhcmRpdW0tdWkvZGV2a2l0JztcclxuaW1wb3J0IHsgaXNBbnlTdHJpbmcsIGlzRGVmaW5lZCB9IGZyb20gJ3NpbXBsZS1ib29sJztcclxuaW1wb3J0IHsgX0Zvcm1GaWVsZENvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9faW50ZXJuYWwvZm9ybS1maWVsZC1jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtRWxlbWVudEFwcGVhcmFuY2UsIEZvcm1FbGVtZW50VmFyaWFudCB9IGZyb20gJy4uLy4uL3R5cGVzL3RoZW1pbmcudHlwZXMnO1xyXG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJy4uLy4uL3R5cGVzL3V0aWxpdHkudHlwZXMnO1xyXG5pbXBvcnQgeyBBUkRfUEFTU1dPUkRfSU5QVVRfREVGQVVMVFMsIEFyZFBhc3N3b3JkSW5wdXREZWZhdWx0cyB9IGZyb20gJy4vcGFzc3dvcmQtaW5wdXQuZGVmYXVsdHMnO1xyXG5pbXBvcnQge1xyXG4gIEFyZFBhc3N3b3JkSW5wdXRQbGFjZWhvbGRlclRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gIEFyZFBhc3N3b3JkSW5wdXRQcmVmaXhUZW1wbGF0ZURpcmVjdGl2ZSxcclxuICBBcmRQYXNzd29yZElucHV0UmV2ZWFsQnV0dG9uVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgQXJkUGFzc3dvcmRJbnB1dFN1ZmZpeFRlbXBsYXRlRGlyZWN0aXZlLFxyXG59IGZyb20gJy4vcGFzc3dvcmQtaW5wdXQuZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IFBhc3N3b3JkSW5wdXRSZXZlYWxCdXR0b25Db250ZXh0IH0gZnJvbSAnLi9wYXNzd29yZC1pbnB1dC50eXBlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FyZC1wYXNzd29yZC1pbnB1dCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Bhc3N3b3JkLWlucHV0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wYXNzd29yZC1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBcmRpdW1QYXNzd29yZElucHV0Q29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBfRm9ybUZpZWxkQ29tcG9uZW50QmFzZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IEFyZGl1bVBhc3N3b3JkSW5wdXRDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcmRpdW1QYXNzd29yZElucHV0Q29tcG9uZW50IGV4dGVuZHMgX0Zvcm1GaWVsZENvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBfREVGQVVMVFMhOiBBcmRQYXNzd29yZElucHV0RGVmYXVsdHM7XHJcbiAgY29uc3RydWN0b3IoQEluamVjdChBUkRfUEFTU1dPUkRfSU5QVVRfREVGQVVMVFMpIGRlZmF1bHRzOiBBcmRQYXNzd29yZElucHV0RGVmYXVsdHMpIHtcclxuICAgIHN1cGVyKGRlZmF1bHRzKTtcclxuICB9XHJcblxyXG4gIC8vISBpbnB1dCB2aWV3XHJcbiAgcmVhZG9ubHkgdGV4dElucHV0RWwgPSB2aWV3Q2hpbGQ8RWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50Pj4oJ3RleHRJbnB1dCcpO1xyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICB0aGlzLl9zZXRJbnB1dEF0dHJpYnV0ZXMoKTtcclxuICB9XHJcblxyXG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyID0gaW5wdXQ8c3RyaW5nPih0aGlzLl9ERUZBVUxUUy5wbGFjZWhvbGRlcik7XHJcbiAgcmVhZG9ubHkgaW5wdXRJZCA9IGlucHV0PE51bGxhYmxlPHN0cmluZz4+KCk7XHJcblxyXG4gIC8vISBwcmVmaXggJiBzdWZmaXhcclxuICByZWFkb25seSBwcmVmaXhUZW1wbGF0ZSA9IGNvbnRlbnRDaGlsZChBcmRQYXNzd29yZElucHV0UHJlZml4VGVtcGxhdGVEaXJlY3RpdmUpO1xyXG4gIHJlYWRvbmx5IHN1ZmZpeFRlbXBsYXRlID0gY29udGVudENoaWxkKEFyZFBhc3N3b3JkSW5wdXRTdWZmaXhUZW1wbGF0ZURpcmVjdGl2ZSk7XHJcblxyXG4gIC8vISBwbGFjZWhvbGRlclxyXG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyVGVtcGxhdGUgPSBjb250ZW50Q2hpbGQoQXJkUGFzc3dvcmRJbnB1dFBsYWNlaG9sZGVyVGVtcGxhdGVEaXJlY3RpdmUpO1xyXG5cclxuICByZWFkb25seSBzaG91bGREaXNwbGF5UGxhY2Vob2xkZXIgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMucGxhY2Vob2xkZXIoKSAmJiAhdGhpcy52YWx1ZSgpKTtcclxuXHJcbiAgLy8hIHJldmVhbGluZ1xyXG4gIHJlYWRvbmx5IHJldmVhbGFibGUgPSBpbnB1dDxib29sZWFuLCBhbnk+KHRoaXMuX0RFRkFVTFRTLnJldmVhbGFibGUsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2KSB9KTtcclxuICByZWFkb25seSBob2xkVG9SZXZlYWwgPSBpbnB1dDxib29sZWFuLCBhbnk+KHRoaXMuX0RFRkFVTFRTLmhvbGRUb1JldmVhbCwgeyB0cmFuc2Zvcm06IHYgPT4gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpIH0pO1xyXG5cclxuICByZWFkb25seSBhdXRvSGlkZVRpbWVvdXRNcyA9IGlucHV0PE51bGxhYmxlPG51bWJlcj4sIGFueT4odGhpcy5fREVGQVVMVFMuYXV0b0hpZGVUaW1lb3V0TXMsIHtcclxuICAgIHRyYW5zZm9ybTogdiA9PiBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2LCB0aGlzLl9ERUZBVUxUUy5hdXRvSGlkZVRpbWVvdXRNcyksXHJcbiAgfSk7XHJcblxyXG4gIHJlYWRvbmx5IHJldmVhbGVkID0gbW9kZWw8Ym9vbGVhbj4odGhpcy5fREVGQVVMVFMucmV2ZWFsZWQpO1xyXG5cclxuICBwcml2YXRlIF9oaWRlVGltZW91dDogTm9kZUpTLlRpbWVvdXQgfCBudWxsID0gbnVsbDtcclxuICB0b2dnbGVSZXZlYWwobmV3U3RhdGUgPSAhdGhpcy5yZXZlYWxlZCgpKTogdm9pZCB7XHJcbiAgICB0aGlzLnJldmVhbGVkLnNldChuZXdTdGF0ZSk7XHJcblxyXG4gICAgaWYgKHRoaXMuX2hpZGVUaW1lb3V0KSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9oaWRlVGltZW91dCk7XHJcbiAgICB9XHJcbiAgICBjb25zdCB0aW1lb3V0ID0gdGhpcy5hdXRvSGlkZVRpbWVvdXRNcygpO1xyXG4gICAgaWYgKHRpbWVvdXQgJiYgbmV3U3RhdGUpIHtcclxuICAgICAgdGhpcy5faGlkZVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmV2ZWFsZWQuc2V0KGZhbHNlKSwgdGltZW91dCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICBpZiAodGhpcy5faGlkZVRpbWVvdXQpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2hpZGVUaW1lb3V0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlYWRvbmx5IHJldmVhbFRlbXBsYXRlID0gY29udGVudENoaWxkKEFyZFBhc3N3b3JkSW5wdXRSZXZlYWxCdXR0b25UZW1wbGF0ZURpcmVjdGl2ZSk7XHJcblxyXG4gIHJlYWRvbmx5IHJldmVhbEJ1dHRvbkNvbnRleHQgPSBjb21wdXRlZChcclxuICAgICgpOiBQYXNzd29yZElucHV0UmV2ZWFsQnV0dG9uQ29udGV4dCA9PiAoe1xyXG4gICAgICAkaW1wbGljaXQ6IHRoaXMucmV2ZWFsZWQoKSxcclxuICAgIH0pXHJcbiAgKTtcclxuXHJcbiAgLy8hIGFwcGVhcmFuY2VcclxuICByZWFkb25seSBhcHBlYXJhbmNlID0gaW5wdXQ8Rm9ybUVsZW1lbnRBcHBlYXJhbmNlPih0aGlzLl9ERUZBVUxUUy5hcHBlYXJhbmNlKTtcclxuICByZWFkb25seSB2YXJpYW50ID0gaW5wdXQ8Rm9ybUVsZW1lbnRWYXJpYW50Pih0aGlzLl9ERUZBVUxUUy52YXJpYW50KTtcclxuXHJcbiAgcmVhZG9ubHkgY29tcGFjdCA9IGlucHV0PGJvb2xlYW4sIGFueT4odGhpcy5fREVGQVVMVFMuY29tcGFjdCwgeyB0cmFuc2Zvcm06IHYgPT4gY29lcmNlQm9vbGVhblByb3BlcnR5KHYpIH0pO1xyXG5cclxuICByZWFkb25seSBuZ0NsYXNzZXMgPSBjb21wdXRlZCgoKSA9PlxyXG4gICAgW1xyXG4gICAgICBgYXJkLWFwcGVhcmFuY2UtJHt0aGlzLmFwcGVhcmFuY2UoKX1gLFxyXG4gICAgICBgYXJkLXZhcmlhbnQtJHt0aGlzLnZhcmlhbnQoKX1gLFxyXG4gICAgICB0aGlzLmNvbXBhY3QoKSA/ICdhcmQtY29tcGFjdCcgOiAnJyxcclxuICAgICAgdGhpcy5yZXZlYWxhYmxlKCkgPyAnYXJkLXJldmVhbGFibGUnIDogJycsXHJcbiAgICBdLmpvaW4oJyAnKVxyXG4gICk7XHJcblxyXG4gIC8vISBvdGhlciBpbnB1dHNcclxuICByZWFkb25seSBpbnB1dEF0dHJzID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgYW55Pj4odGhpcy5fREVGQVVMVFMuaW5wdXRBdHRycyk7XHJcblxyXG4gIC8vISBjb250cm9sIHZhbHVlIGFjY2Vzc29yJ3Mgd3JpdGUgdmFsdWUgaW1wbGVtZW50YXRpb25cclxuICB3cml0ZVZhbHVlKHY6IGFueSkge1xyXG4gICAgaWYgKCFpc0FueVN0cmluZyh2KSAmJiBpc0RlZmluZWQodikpIHtcclxuICAgICAgLy93YXJuIHdoZW4gdXNpbmcgbm9uLXN0cmluZy9ub24tbnVsbCB2YWx1ZVxyXG4gICAgICBjb25zb2xlLndhcm4oXHJcbiAgICAgICAgbmV3IEVycm9yKFxyXG4gICAgICAgICAgYEFSRC1XQTAwMjA6IFRyeWluZyB0byBzZXQgPGFyZC1wYXNzd29yZC1pbnB1dD4ncyB2YWx1ZSB0byBcIiR7dn1cIiAob2YgdHlwZSAke3R5cGVvZiB2fSksIGV4cGVjdGVkIHN0cmluZyBvciBudWxsLmBcclxuICAgICAgICApXHJcbiAgICAgICk7XHJcbiAgICAgIC8vbm9ybWFsaXplIHRoZSB2YWx1ZVxyXG4gICAgICB2ID0gdj8udG9TdHJpbmc/LigpID8/IFN0cmluZyh2KTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fd3JpdGVWYWx1ZSh2KTtcclxuICB9XHJcbiAgcHJvdGVjdGVkIF93cml0ZVZhbHVlKHY6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG9sZFZhbCA9IHRoaXMudmFsdWUoKTtcclxuICAgIHRoaXMudmFsdWUuc2V0KHYpO1xyXG4gICAgcmV0dXJuIG9sZFZhbCAhPT0gdjtcclxuICB9XHJcbiAgLy8hIHZhbHVlIHR3by13YXkgYmluZGluZ1xyXG4gIHJlYWRvbmx5IHZhbHVlID0gbW9kZWw8TnVsbGFibGU8c3RyaW5nPj4oKTtcclxuXHJcbiAgLy8hIGV2ZW50IGhhbmRsZXJzXHJcbiAgb25JbnB1dChuZXdWYWw6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsdWVIYXNDaGFuZ2VkID0gdGhpcy5fd3JpdGVWYWx1ZShuZXdWYWwpO1xyXG4gICAgaWYgKCF2YWx1ZUhhc0NoYW5nZWQpIHJldHVybjtcclxuICAgIHRoaXMuX2VtaXRDaGFuZ2UoKTtcclxuICB9XHJcbiAgcHJvdGVjdGVkIF9lbWl0Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgdiA9IHRoaXMudmFsdWUoKTtcclxuICAgIHRoaXMuX29uQ2hhbmdlUmVnaXN0ZXJlZD8uKHYpO1xyXG4gIH1cclxuICAvL2ZvY3VzLCBibHVyLCBjaGFuZ2VcclxuICBvbkNoYW5nZShldmVudDogRXZlbnQpOiB2b2lkIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5fZW1pdENoYW5nZSgpO1xyXG4gIH1cclxuXHJcbiAgLy8gY29weVxyXG4gIG9uQ29weShldmVudDogQ2xpcGJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgIGNvbnN0IHRleHRJbnB1dEVsID0gdGhpcy50ZXh0SW5wdXRFbCgpO1xyXG4gICAgY29uc3QgdiA9IHRoaXMudmFsdWUoKTtcclxuICAgIGlmIChcclxuICAgICAgdiAmJlxyXG4gICAgICB0ZXh0SW5wdXRFbCAmJlxyXG4gICAgICAvL2RvZXMgdGhlIHNlbGVjdGlvbiBjb3ZlciB0aGUgZW50aXJlIGlucHV0XHJcbiAgICAgICgodGV4dElucHV0RWwubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCA9PT0gMCAmJlxyXG4gICAgICAgIHRleHRJbnB1dEVsLm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kID09PSB0ZXh0SW5wdXRFbC5uYXRpdmVFbGVtZW50LnZhbHVlLmxlbmd0aCkgfHxcclxuICAgICAgICAvL29yIGlzIHplcm8td2lkZVxyXG4gICAgICAgIHRleHRJbnB1dEVsLm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgPT09IHRleHRJbnB1dEVsLm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kKVxyXG4gICAgKSB7XHJcbiAgICAgIGV2ZW50LmNsaXBib2FyZERhdGE/LnNldERhdGEoJ3RleHQvcGxhaW4nLCB2KTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8hIGhlbHBlcnNcclxuICBwcm90ZWN0ZWQgX3NldElucHV0QXR0cmlidXRlcygpIHtcclxuICAgIGNvbnN0IGlucHV0ID0gdGhpcy50ZXh0SW5wdXRFbCgpPy5uYXRpdmVFbGVtZW50O1xyXG4gICAgaWYgKCFpbnB1dCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IGF0dHJpYnV0ZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XHJcbiAgICAgIHR5cGU6ICd0ZXh0JyxcclxuICAgICAgYXV0b2NvcnJlY3Q6ICdvZmYnLFxyXG4gICAgICBhdXRvY2FwaXRhbGl6ZTogJ29mZicsXHJcbiAgICAgIGF1dG9jb21wbGV0ZTogJ29mZicsXHJcbiAgICAgIHRhYmluZGV4OiBTdHJpbmcodGhpcy50YWJJbmRleCgpKSxcclxuICAgICAgLi4udGhpcy5pbnB1dEF0dHJzKCksXHJcbiAgICB9O1xyXG5cclxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKGF0dHJpYnV0ZXMpKSB7XHJcbiAgICAgIGlucHV0LnNldEF0dHJpYnV0ZShrZXksIFN0cmluZyhhdHRyaWJ1dGVzW2tleV0pKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGFyZC1mb3JtLWZpZWxkLWZyYW1lXG4gIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2UoKVwiXG4gIFt2YXJpYW50XT1cInZhcmlhbnQoKVwiXG4gIFtjb21wYWN0XT1cImNvbXBhY3QoKVwiXG4gIFtpc0ZvY3VzZWRdPVwiaXNGb2N1c2VkKClcIlxuICBbaGFzRXJyb3JdPVwiaGFzRXJyb3IoKVwiXG4gIFtpc1N1Y2Nlc3NdPVwiaXNTdWNjZXNzKClcIlxuICBbcHJlZml4VGVtcGxhdGVdPVwicHJlZml4VGVtcGxhdGUoKT8udGVtcGxhdGVcIlxuICBbc3VmZml4VGVtcGxhdGVdPVwic3VmZml4VGVtcGxhdGUoKT8udGVtcGxhdGVcIlxuPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJhcmQtcGFzc3dvcmQtaW5wdXRcIlxuICAgIFtuZ0NsYXNzXT1cIm5nQ2xhc3NlcygpXCJcbiAgICBbY2xhc3MuYXJkLWhhcy12YWx1ZV09XCJ2YWx1ZSgpXCJcbiAgICAoY2xpY2spPVwiZm9jdXMoKVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiYXJkLWlucHV0LWNvbnRhaW5lclwiPlxuICAgICAgQGlmIChzaG91bGREaXNwbGF5UGxhY2Vob2xkZXIoKSkge1xuICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRQbGFjZWhvbGRlclRlbXBsYXRlPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcmQtcGxhY2Vob2xkZXJcIj57eyBwbGFjZWhvbGRlcigpIH19PC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInBsYWNlaG9sZGVyVGVtcGxhdGUoKT8udGVtcGxhdGUgfHwgZGVmYXVsdFBsYWNlaG9sZGVyVGVtcGxhdGVcIiAvPlxuICAgICAgfVxuXG4gICAgICA8aW5wdXRcbiAgICAgICAgI3RleHRJbnB1dFxuICAgICAgICAjZm9jdXNhYmxlRWxlbWVudFxuICAgICAgICBbdHlwZV09XCIhcmV2ZWFsYWJsZSgpIHx8ICFyZXZlYWxlZCgpID8gJ3Bhc3N3b3JkJyA6ICd0ZXh0J1wiXG4gICAgICAgIFthdHRyLmlkXT1cImlucHV0SWQoKVwiXG4gICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYkluZGV4KClcIlxuICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcbiAgICAgICAgKGlucHV0KT1cIm9uSW5wdXQodGV4dElucHV0LnZhbHVlKVwiXG4gICAgICAgIChmb2N1cyk9XCJvbkZvY3VzKCRldmVudClcIlxuICAgICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXG4gICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChjb3B5KT1cIm9uQ29weSgkZXZlbnQpXCJcbiAgICAgICAgW2NsYXNzLmFyZC1yZXZlYWxlZF09XCJyZXZlYWxhYmxlKCkgJiYgcmV2ZWFsZWQoKVwiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuXG4gICAgQGlmIChyZXZlYWxhYmxlKCkpIHtcbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJhcmQtcmV2ZWFsLWJ1dHRvblwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiIWhvbGRUb1JldmVhbCgpICYmIHRvZ2dsZVJldmVhbCgpXCJcbiAgICAgICAgKG1vdXNlZG93bik9XCJob2xkVG9SZXZlYWwoKSAmJiByZXZlYWxlZC5zZXQodHJ1ZSlcIlxuICAgICAgICAobW91c2V1cCk9XCJob2xkVG9SZXZlYWwoKSAmJiByZXZlYWxlZC5zZXQoZmFsc2UpXCJcbiAgICAgID5cbiAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgI2RlZmF1bHRSZXZlYWxUZW1wbGF0ZVxuICAgICAgICAgIGxldC1yZXZlYWxlZFxuICAgICAgICA+XG4gICAgICAgICAgPGFyZC1pY29uIFtpY29uXT1cInJldmVhbGVkID8gJ3Zpc2liaWxpdHknIDogJ3Zpc2liaWxpdHlfb2ZmJ1wiPjwvYXJkLWljb24+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwicmV2ZWFsVGVtcGxhdGUoKT8udGVtcGxhdGUgfHwgZGVmYXVsdFJldmVhbFRlbXBsYXRlXCJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwicmV2ZWFsQnV0dG9uQ29udGV4dCgpXCJcbiAgICAgICAgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgIH1cbiAgPC9kaXY+XG48L2FyZC1mb3JtLWZpZWxkLWZyYW1lPlxuIl19
@@ -21,4 +21,4 @@ export const ARD_PASSWORD_INPUT_DEFAULTS = new InjectionToken('ard-password-inpu
21
21
  export function providePasswordInputDefaults(config) {
22
22
  return { provide: ARD_PASSWORD_INPUT_DEFAULTS, useValue: { ..._passwordInputDefaults, ...config } };
23
23
  }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQtaW5wdXQuZGVmYXVsdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2lucHV0cy9wYXNzd29yZC1pbnB1dC9wYXNzd29yZC1pbnB1dC5kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBK0IsMkJBQTJCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoSCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQWV4RixNQUFNLHNCQUFzQixHQUE2QjtJQUN2RCxHQUFHLDJCQUEyQjtJQUM5QixVQUFVLEVBQUUscUJBQXFCLENBQUMsUUFBUTtJQUMxQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsT0FBTztJQUNuQyxPQUFPLEVBQUUsS0FBSztJQUNkLFdBQVcsRUFBRSxFQUFFO0lBQ2YsVUFBVSxFQUFFLElBQUk7SUFDaEIsWUFBWSxFQUFFLEtBQUs7SUFDbkIsaUJBQWlCLEVBQUUsU0FBUztJQUM1QixRQUFRLEVBQUUsS0FBSztJQUNmLFVBQVUsRUFBRSxFQUFFO0NBQ2YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLElBQUksY0FBYyxDQUEyQiw2QkFBNkIsRUFBRTtJQUNySCxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNkLEdBQUcsc0JBQXNCO0tBQzFCLENBQUM7Q0FDSCxDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsNEJBQTRCLENBQUMsTUFBeUM7SUFDcEYsT0FBTyxFQUFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxRQUFRLEVBQUUsRUFBRSxHQUFHLHNCQUFzQixFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztBQUN0RyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IF9Gb3JtRmllbGRDb21wb25lbnREZWZhdWx0cywgX2Zvcm1GaWVsZENvbXBvbmVudERlZmF1bHRzIH0gZnJvbSAnLi4vLi4vX2ludGVybmFsL2Zvcm0tZmllbGQtY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUVsZW1lbnRBcHBlYXJhbmNlLCBGb3JtRWxlbWVudFZhcmlhbnQgfSBmcm9tICcuLy4uLy4uL3R5cGVzL3RoZW1pbmcudHlwZXMnO1xyXG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJy4vLi4vLi4vdHlwZXMvdXRpbGl0eS50eXBlcyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFyZFBhc3N3b3JkSW5wdXREZWZhdWx0cyBleHRlbmRzIF9Gb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyB7XHJcbiAgYXBwZWFyYW5jZTogRm9ybUVsZW1lbnRBcHBlYXJhbmNlO1xyXG4gIHZhcmlhbnQ6IEZvcm1FbGVtZW50VmFyaWFudDtcclxuICBjb21wYWN0OiBib29sZWFuO1xyXG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgcmV2ZWFsYWJsZTogYm9vbGVhbjtcclxuICBob2xkVG9SZXZlYWw6IGJvb2xlYW47XHJcbiAgYXV0b0hpZGVUaW1lb3V0TXM6IE51bGxhYmxlPG51bWJlcj47XHJcbiAgcmV2ZWFsZWQ6IGJvb2xlYW47XHJcbiAgaW5wdXRBdHRyczogUmVjb3JkPHN0cmluZywgYW55PjtcclxufVxyXG5cclxuY29uc3QgX3Bhc3N3b3JkSW5wdXREZWZhdWx0czogQXJkUGFzc3dvcmRJbnB1dERlZmF1bHRzID0ge1xyXG4gIC4uLl9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyxcclxuICBhcHBlYXJhbmNlOiBGb3JtRWxlbWVudEFwcGVhcmFuY2UuT3V0bGluZWQsXHJcbiAgdmFyaWFudDogRm9ybUVsZW1lbnRWYXJpYW50LlJvdW5kZWQsXHJcbiAgY29tcGFjdDogZmFsc2UsXHJcbiAgcGxhY2Vob2xkZXI6ICcnLFxyXG4gIHJldmVhbGFibGU6IHRydWUsXHJcbiAgaG9sZFRvUmV2ZWFsOiBmYWxzZSxcclxuICBhdXRvSGlkZVRpbWVvdXRNczogdW5kZWZpbmVkLFxyXG4gIHJldmVhbGVkOiBmYWxzZSxcclxuICBpbnB1dEF0dHJzOiB7fSxcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBBUkRfUEFTU1dPUkRfSU5QVVRfREVGQVVMVFMgPSBuZXcgSW5qZWN0aW9uVG9rZW48QXJkUGFzc3dvcmRJbnB1dERlZmF1bHRzPignYXJkLXBhc3N3b3JkLWlucHV0LWRlZmF1bHRzJywge1xyXG4gIGZhY3Rvcnk6ICgpID0+ICh7XHJcbiAgICAuLi5fcGFzc3dvcmRJbnB1dERlZmF1bHRzLFxyXG4gIH0pLFxyXG59KTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlUGFzc3dvcmRJbnB1dERlZmF1bHRzKGNvbmZpZzogUGFydGlhbDxBcmRQYXNzd29yZElucHV0RGVmYXVsdHM+KTogUHJvdmlkZXIge1xyXG4gIHJldHVybiB7IHByb3ZpZGU6IEFSRF9QQVNTV09SRF9JTlBVVF9ERUZBVUxUUywgdXNlVmFsdWU6IHsgLi4uX3Bhc3N3b3JkSW5wdXREZWZhdWx0cywgLi4uY29uZmlnIH0gfTtcclxufVxyXG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQtaW5wdXQuZGVmYXVsdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2lucHV0cy9wYXNzd29yZC1pbnB1dC9wYXNzd29yZC1pbnB1dC5kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBK0IsMkJBQTJCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoSCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQWV4RixNQUFNLHNCQUFzQixHQUE2QjtJQUN2RCxHQUFHLDJCQUEyQjtJQUM5QixVQUFVLEVBQUUscUJBQXFCLENBQUMsUUFBUTtJQUMxQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsT0FBTztJQUNuQyxPQUFPLEVBQUUsS0FBSztJQUNkLFdBQVcsRUFBRSxFQUFFO0lBQ2YsVUFBVSxFQUFFLElBQUk7SUFDaEIsWUFBWSxFQUFFLEtBQUs7SUFDbkIsaUJBQWlCLEVBQUUsU0FBUztJQUM1QixRQUFRLEVBQUUsS0FBSztJQUNmLFVBQVUsRUFBRSxFQUFFO0NBQ2YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLElBQUksY0FBYyxDQUEyQiw2QkFBNkIsRUFBRTtJQUNySCxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNkLEdBQUcsc0JBQXNCO0tBQzFCLENBQUM7Q0FDSCxDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsNEJBQTRCLENBQUMsTUFBeUM7SUFDcEYsT0FBTyxFQUFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxRQUFRLEVBQUUsRUFBRSxHQUFHLHNCQUFzQixFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztBQUN0RyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBfRm9ybUZpZWxkQ29tcG9uZW50RGVmYXVsdHMsIF9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyB9IGZyb20gJy4uLy4uL19pbnRlcm5hbC9mb3JtLWZpZWxkLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtRWxlbWVudEFwcGVhcmFuY2UsIEZvcm1FbGVtZW50VmFyaWFudCB9IGZyb20gJy4vLi4vLi4vdHlwZXMvdGhlbWluZy50eXBlcyc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJy4vLi4vLi4vdHlwZXMvdXRpbGl0eS50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXJkUGFzc3dvcmRJbnB1dERlZmF1bHRzIGV4dGVuZHMgX0Zvcm1GaWVsZENvbXBvbmVudERlZmF1bHRzIHtcbiAgYXBwZWFyYW5jZTogRm9ybUVsZW1lbnRBcHBlYXJhbmNlO1xuICB2YXJpYW50OiBGb3JtRWxlbWVudFZhcmlhbnQ7XG4gIGNvbXBhY3Q6IGJvb2xlYW47XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJldmVhbGFibGU6IGJvb2xlYW47XG4gIGhvbGRUb1JldmVhbDogYm9vbGVhbjtcbiAgYXV0b0hpZGVUaW1lb3V0TXM6IE51bGxhYmxlPG51bWJlcj47XG4gIHJldmVhbGVkOiBib29sZWFuO1xuICBpbnB1dEF0dHJzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xufVxuXG5jb25zdCBfcGFzc3dvcmRJbnB1dERlZmF1bHRzOiBBcmRQYXNzd29yZElucHV0RGVmYXVsdHMgPSB7XG4gIC4uLl9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyxcbiAgYXBwZWFyYW5jZTogRm9ybUVsZW1lbnRBcHBlYXJhbmNlLk91dGxpbmVkLFxuICB2YXJpYW50OiBGb3JtRWxlbWVudFZhcmlhbnQuUm91bmRlZCxcbiAgY29tcGFjdDogZmFsc2UsXG4gIHBsYWNlaG9sZGVyOiAnJyxcbiAgcmV2ZWFsYWJsZTogdHJ1ZSxcbiAgaG9sZFRvUmV2ZWFsOiBmYWxzZSxcbiAgYXV0b0hpZGVUaW1lb3V0TXM6IHVuZGVmaW5lZCxcbiAgcmV2ZWFsZWQ6IGZhbHNlLFxuICBpbnB1dEF0dHJzOiB7fSxcbn07XG5cbmV4cG9ydCBjb25zdCBBUkRfUEFTU1dPUkRfSU5QVVRfREVGQVVMVFMgPSBuZXcgSW5qZWN0aW9uVG9rZW48QXJkUGFzc3dvcmRJbnB1dERlZmF1bHRzPignYXJkLXBhc3N3b3JkLWlucHV0LWRlZmF1bHRzJywge1xuICBmYWN0b3J5OiAoKSA9PiAoe1xuICAgIC4uLl9wYXNzd29yZElucHV0RGVmYXVsdHMsXG4gIH0pLFxufSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlUGFzc3dvcmRJbnB1dERlZmF1bHRzKGNvbmZpZzogUGFydGlhbDxBcmRQYXNzd29yZElucHV0RGVmYXVsdHM+KTogUHJvdmlkZXIge1xuICByZXR1cm4geyBwcm92aWRlOiBBUkRfUEFTU1dPUkRfSU5QVVRfREVGQVVMVFMsIHVzZVZhbHVlOiB7IC4uLl9wYXNzd29yZElucHV0RGVmYXVsdHMsIC4uLmNvbmZpZyB9IH07XG59XG4iXX0=
@@ -26,9 +26,9 @@ export class ArdiumSimpleInputComponent extends _SimpleInputComponentBase {
26
26
  },
27
27
  {
28
28
  provide: _FormFieldComponentBase,
29
- useExisting: ArdiumSimpleInputComponent
29
+ useExisting: ArdiumSimpleInputComponent,
30
30
  },
31
- ], queries: [{ propertyName: "prefixTemplate", first: true, predicate: ArdSimpleInputPrefixTemplateDirective, descendants: true, isSignal: true }, { propertyName: "suffixTemplate", first: true, predicate: ArdSimpleInputSuffixTemplateDirective, descendants: true, isSignal: true }, { propertyName: "placeholderTemplate", first: true, predicate: ArdSimpleInputPlaceholderTemplateDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ard-form-field-frame\r\n [appearance]=\"appearance()\"\r\n [variant]=\"variant()\"\r\n [compact]=\"compact()\"\r\n [isFocused]=\"isFocused()\"\r\n [hasError]=\"hasError()\"\r\n [isSuccess]=\"isSuccess()\"\r\n [prefixTemplate]=\"prefixTemplate()?.template\"\r\n [suffixTemplate]=\"suffixTemplate()?.template\"\r\n>\r\n <div\r\n class=\"ard-simple-input\"\r\n [ngClass]=\"ngClasses()\"\r\n [class.ard-has-value]=\"value\"\r\n (click)=\"focus()\"\r\n >\r\n <div class=\"ard-input-container\">\r\n @if (shouldDisplayPlaceholder()) {\r\n <ng-template #defaultPlaceholderTemplate>\r\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\"></ng-template>\r\n }\r\n\r\n <input\r\n #textInput\r\n #focusableElement\r\n type=\"text\"\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"tabIndex()\"\r\n [readonly]=\"readonly()\"\r\n [disabled]=\"disabled()\"\r\n (input)=\"onInput(textInput.value)\"\r\n (focus)=\"onFocusMaster($event)\"\r\n (blur)=\"onBlurMaster($event)\"\r\n (change)=\"onChange($event)\"\r\n (copy)=\"onCopy($event)\"\r\n />\r\n </div>\r\n\r\n @if (shouldShowClearButton()) {\r\n <ard-clear-button\r\n [title]=\"clearButtonTitle()\"\r\n (click)=\"onClearButtonClick($event)\"\r\n />\r\n }\r\n </div>\r\n</ard-form-field-frame>\r\n", styles: [".ard-input-container{position:relative}.ard-placeholder{position:absolute;left:0;right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;pointer-events:none}.ard-text-align-left input,.ard-text-align-left .ard-placeholder{text-align:left}.ard-text-align-center input,.ard-text-align-center .ard-placeholder{text-align:center}.ard-text-align-right input,.ard-text-align-right .ard-placeholder{text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2._ClearButtonComponent, selector: "ard-clear-button" }, { kind: "component", type: i3.ArdiumFormFieldFrameComponent, selector: "ard-form-field-frame", inputs: ["hasError", "isSuccess", "isFocused", "appearance", "variant", "compact", "prefixTemplate", "suffixTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
31
+ ], queries: [{ propertyName: "prefixTemplate", first: true, predicate: ArdSimpleInputPrefixTemplateDirective, descendants: true, isSignal: true }, { propertyName: "suffixTemplate", first: true, predicate: ArdSimpleInputSuffixTemplateDirective, descendants: true, isSignal: true }, { propertyName: "placeholderTemplate", first: true, predicate: ArdSimpleInputPlaceholderTemplateDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ard-form-field-frame\n [appearance]=\"appearance()\"\n [variant]=\"variant()\"\n [compact]=\"compact()\"\n [isFocused]=\"isFocused()\"\n [hasError]=\"hasError()\"\n [isSuccess]=\"isSuccess()\"\n [prefixTemplate]=\"prefixTemplate()?.template\"\n [suffixTemplate]=\"suffixTemplate()?.template\"\n>\n <div\n class=\"ard-simple-input\"\n [ngClass]=\"ngClasses()\"\n [class.ard-has-value]=\"value\"\n (click)=\"focus()\"\n >\n <div class=\"ard-input-container\">\n @if (shouldDisplayPlaceholder()) {\n <ng-template #defaultPlaceholderTemplate>\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\n </ng-template>\n\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\"></ng-template>\n }\n\n <input\n #textInput\n #focusableElement\n type=\"text\"\n [attr.id]=\"inputId()\"\n [attr.tabindex]=\"tabIndex()\"\n [readonly]=\"readonly()\"\n [disabled]=\"disabled()\"\n (input)=\"onInput(textInput.value)\"\n (focus)=\"onFocusMaster($event)\"\n (blur)=\"onBlurMaster($event)\"\n (change)=\"onChange($event)\"\n (copy)=\"onCopy($event)\"\n />\n </div>\n\n @if (shouldShowClearButton()) {\n <ard-clear-button\n [title]=\"clearButtonTitle()\"\n (click)=\"onClearButtonClick($event)\"\n />\n }\n </div>\n</ard-form-field-frame>\n", styles: [".ard-input-container{position:relative}.ard-placeholder{position:absolute;left:0;right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;pointer-events:none}.ard-text-align-left input,.ard-text-align-left .ard-placeholder{text-align:left}.ard-text-align-center input,.ard-text-align-center .ard-placeholder{text-align:center}.ard-text-align-right input,.ard-text-align-right .ard-placeholder{text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2._ClearButtonComponent, selector: "ard-clear-button" }, { kind: "component", type: i3.ArdiumFormFieldFrameComponent, selector: "ard-form-field-frame", inputs: ["hasError", "isSuccess", "isFocused", "appearance", "variant", "compact", "prefixTemplate", "suffixTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
32
32
  }
33
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumSimpleInputComponent, decorators: [{
34
34
  type: Component,
@@ -40,11 +40,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
40
40
  },
41
41
  {
42
42
  provide: _FormFieldComponentBase,
43
- useExisting: ArdiumSimpleInputComponent
43
+ useExisting: ArdiumSimpleInputComponent,
44
44
  },
45
- ], template: "<ard-form-field-frame\r\n [appearance]=\"appearance()\"\r\n [variant]=\"variant()\"\r\n [compact]=\"compact()\"\r\n [isFocused]=\"isFocused()\"\r\n [hasError]=\"hasError()\"\r\n [isSuccess]=\"isSuccess()\"\r\n [prefixTemplate]=\"prefixTemplate()?.template\"\r\n [suffixTemplate]=\"suffixTemplate()?.template\"\r\n>\r\n <div\r\n class=\"ard-simple-input\"\r\n [ngClass]=\"ngClasses()\"\r\n [class.ard-has-value]=\"value\"\r\n (click)=\"focus()\"\r\n >\r\n <div class=\"ard-input-container\">\r\n @if (shouldDisplayPlaceholder()) {\r\n <ng-template #defaultPlaceholderTemplate>\r\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\"></ng-template>\r\n }\r\n\r\n <input\r\n #textInput\r\n #focusableElement\r\n type=\"text\"\r\n [attr.id]=\"inputId()\"\r\n [attr.tabindex]=\"tabIndex()\"\r\n [readonly]=\"readonly()\"\r\n [disabled]=\"disabled()\"\r\n (input)=\"onInput(textInput.value)\"\r\n (focus)=\"onFocusMaster($event)\"\r\n (blur)=\"onBlurMaster($event)\"\r\n (change)=\"onChange($event)\"\r\n (copy)=\"onCopy($event)\"\r\n />\r\n </div>\r\n\r\n @if (shouldShowClearButton()) {\r\n <ard-clear-button\r\n [title]=\"clearButtonTitle()\"\r\n (click)=\"onClearButtonClick($event)\"\r\n />\r\n }\r\n </div>\r\n</ard-form-field-frame>\r\n", styles: [".ard-input-container{position:relative}.ard-placeholder{position:absolute;left:0;right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;pointer-events:none}.ard-text-align-left input,.ard-text-align-left .ard-placeholder{text-align:left}.ard-text-align-center input,.ard-text-align-center .ard-placeholder{text-align:center}.ard-text-align-right input,.ard-text-align-right .ard-placeholder{text-align:right}\n"] }]
45
+ ], template: "<ard-form-field-frame\n [appearance]=\"appearance()\"\n [variant]=\"variant()\"\n [compact]=\"compact()\"\n [isFocused]=\"isFocused()\"\n [hasError]=\"hasError()\"\n [isSuccess]=\"isSuccess()\"\n [prefixTemplate]=\"prefixTemplate()?.template\"\n [suffixTemplate]=\"suffixTemplate()?.template\"\n>\n <div\n class=\"ard-simple-input\"\n [ngClass]=\"ngClasses()\"\n [class.ard-has-value]=\"value\"\n (click)=\"focus()\"\n >\n <div class=\"ard-input-container\">\n @if (shouldDisplayPlaceholder()) {\n <ng-template #defaultPlaceholderTemplate>\n <div class=\"ard-placeholder\">{{ placeholder() }}</div>\n </ng-template>\n\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate()?.template || defaultPlaceholderTemplate\"></ng-template>\n }\n\n <input\n #textInput\n #focusableElement\n type=\"text\"\n [attr.id]=\"inputId()\"\n [attr.tabindex]=\"tabIndex()\"\n [readonly]=\"readonly()\"\n [disabled]=\"disabled()\"\n (input)=\"onInput(textInput.value)\"\n (focus)=\"onFocusMaster($event)\"\n (blur)=\"onBlurMaster($event)\"\n (change)=\"onChange($event)\"\n (copy)=\"onCopy($event)\"\n />\n </div>\n\n @if (shouldShowClearButton()) {\n <ard-clear-button\n [title]=\"clearButtonTitle()\"\n (click)=\"onClearButtonClick($event)\"\n />\n }\n </div>\n</ard-form-field-frame>\n", styles: [".ard-input-container{position:relative}.ard-placeholder{position:absolute;left:0;right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;pointer-events:none}.ard-text-align-left input,.ard-text-align-left .ard-placeholder{text-align:left}.ard-text-align-center input,.ard-text-align-center .ard-placeholder{text-align:center}.ard-text-align-right input,.ard-text-align-right .ard-placeholder{text-align:right}\n"] }]
46
46
  }], ctorParameters: () => [{ type: undefined, decorators: [{
47
47
  type: Inject,
48
48
  args: [ARD_SIMPLE_INPUT_DEFAULTS]
49
49
  }] }] });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvaW5wdXRzL3NpbXBsZS1pbnB1dC9zaW1wbGUtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvc2ltcGxlLWlucHV0L3NpbXBsZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBMEIsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RixPQUFPLEVBQ0wsMENBQTBDLEVBQzFDLHFDQUFxQyxFQUNyQyxxQ0FBcUMsR0FDdEMsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFvQm5DLE1BQU0sT0FBTywwQkFBMkIsU0FBUSx5QkFBeUI7SUFFdkUsWUFBK0MsUUFBZ0M7UUFDN0UsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBR2xCLG1CQUFtQjtRQUNWLG1CQUFjLEdBQUcsWUFBWSxDQUFDLHFDQUFxQyxDQUFDLENBQUM7UUFDckUsbUJBQWMsR0FBRyxZQUFZLENBQUMscUNBQXFDLENBQUMsQ0FBQztRQUU5RSxlQUFlO1FBQ04sd0JBQW1CLEdBQUcsWUFBWSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7SUFQeEYsQ0FBQzsrR0FKVSwwQkFBMEIsa0JBRWpCLHlCQUF5QjttR0FGbEMsMEJBQTBCLDJDQVoxQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMEJBQTBCLENBQUM7Z0JBQ3pELEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRDtnQkFDRSxPQUFPLEVBQUUsdUJBQXVCO2dCQUNoQyxXQUFXLEVBQUUsMEJBQTBCO2FBQ3hDO1NBQ0Ysc0VBU3NDLHFDQUFxQyxpR0FDckMscUNBQXFDLHNHQUdoQywwQ0FBMEMsdUZDeEN4RiwwaERBaURBOzs0RkRwQmEsMEJBQTBCO2tCQWxCdEMsU0FBUzsrQkFDRSxrQkFBa0IsaUJBR2IsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwyQkFBMkIsQ0FBQzs0QkFDekQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLHVCQUF1Qjs0QkFDaEMsV0FBVyw0QkFBNEI7eUJBQ3hDO3FCQUNGOzswQkFJWSxNQUFNOzJCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbnRlbnRDaGlsZCwgZm9yd2FyZFJlZiwgSW5qZWN0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgX0Zvcm1GaWVsZENvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9faW50ZXJuYWwvZm9ybS1maWVsZC1jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBfU2ltcGxlSW5wdXRDb21wb25lbnRCYXNlIH0gZnJvbSAnLi4vX3NpbXBsZS1pbnB1dC1iYXNlJztcclxuaW1wb3J0IHsgQVJEX1NJTVBMRV9JTlBVVF9ERUZBVUxUUywgQXJkU2ltcGxlSW5wdXREZWZhdWx0cyB9IGZyb20gJy4vc2ltcGxlLWlucHV0LmRlZmF1bHRzJztcclxuaW1wb3J0IHtcclxuICBBcmRTaW1wbGVJbnB1dFBsYWNlaG9sZGVyVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgQXJkU2ltcGxlSW5wdXRQcmVmaXhUZW1wbGF0ZURpcmVjdGl2ZSxcclxuICBBcmRTaW1wbGVJbnB1dFN1ZmZpeFRlbXBsYXRlRGlyZWN0aXZlLFxyXG59IGZyb20gJy4vc2ltcGxlLWlucHV0LmRpcmVjdGl2ZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcmQtc2ltcGxlLWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2ltcGxlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zaW1wbGUtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQXJkaXVtU2ltcGxlSW5wdXRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IF9Gb3JtRmllbGRDb21wb25lbnRCYXNlLFxyXG4gICAgICB1c2VFeGlzdGluZzogQXJkaXVtU2ltcGxlSW5wdXRDb21wb25lbnRcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFyZGl1bVNpbXBsZUlucHV0Q29tcG9uZW50IGV4dGVuZHMgX1NpbXBsZUlucHV0Q29tcG9uZW50QmFzZSB7XHJcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlYWRvbmx5IF9ERUZBVUxUUyE6IEFyZFNpbXBsZUlucHV0RGVmYXVsdHM7XHJcbiAgY29uc3RydWN0b3IoQEluamVjdChBUkRfU0lNUExFX0lOUFVUX0RFRkFVTFRTKSBkZWZhdWx0czogQXJkU2ltcGxlSW5wdXREZWZhdWx0cykge1xyXG4gICAgc3VwZXIoZGVmYXVsdHMpO1xyXG4gIH1cclxuXHJcbiAgLy8hIHByZWZpeCAmIHN1ZmZpeFxyXG4gIHJlYWRvbmx5IHByZWZpeFRlbXBsYXRlID0gY29udGVudENoaWxkKEFyZFNpbXBsZUlucHV0UHJlZml4VGVtcGxhdGVEaXJlY3RpdmUpO1xyXG4gIHJlYWRvbmx5IHN1ZmZpeFRlbXBsYXRlID0gY29udGVudENoaWxkKEFyZFNpbXBsZUlucHV0U3VmZml4VGVtcGxhdGVEaXJlY3RpdmUpO1xyXG5cclxuICAvLyEgcGxhY2Vob2xkZXJcclxuICByZWFkb25seSBwbGFjZWhvbGRlclRlbXBsYXRlID0gY29udGVudENoaWxkKEFyZFNpbXBsZUlucHV0UGxhY2Vob2xkZXJUZW1wbGF0ZURpcmVjdGl2ZSk7XHJcbn1cclxuIiwiPGFyZC1mb3JtLWZpZWxkLWZyYW1lXHJcbiAgW2FwcGVhcmFuY2VdPVwiYXBwZWFyYW5jZSgpXCJcclxuICBbdmFyaWFudF09XCJ2YXJpYW50KClcIlxyXG4gIFtjb21wYWN0XT1cImNvbXBhY3QoKVwiXHJcbiAgW2lzRm9jdXNlZF09XCJpc0ZvY3VzZWQoKVwiXHJcbiAgW2hhc0Vycm9yXT1cImhhc0Vycm9yKClcIlxyXG4gIFtpc1N1Y2Nlc3NdPVwiaXNTdWNjZXNzKClcIlxyXG4gIFtwcmVmaXhUZW1wbGF0ZV09XCJwcmVmaXhUZW1wbGF0ZSgpPy50ZW1wbGF0ZVwiXHJcbiAgW3N1ZmZpeFRlbXBsYXRlXT1cInN1ZmZpeFRlbXBsYXRlKCk/LnRlbXBsYXRlXCJcclxuPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwiYXJkLXNpbXBsZS1pbnB1dFwiXHJcbiAgICBbbmdDbGFzc109XCJuZ0NsYXNzZXMoKVwiXHJcbiAgICBbY2xhc3MuYXJkLWhhcy12YWx1ZV09XCJ2YWx1ZVwiXHJcbiAgICAoY2xpY2spPVwiZm9jdXMoKVwiXHJcbiAgPlxyXG4gICAgPGRpdiBjbGFzcz1cImFyZC1pbnB1dC1jb250YWluZXJcIj5cclxuICAgICAgQGlmIChzaG91bGREaXNwbGF5UGxhY2Vob2xkZXIoKSkge1xyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFBsYWNlaG9sZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXJkLXBsYWNlaG9sZGVyXCI+e3sgcGxhY2Vob2xkZXIoKSB9fTwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJwbGFjZWhvbGRlclRlbXBsYXRlKCk/LnRlbXBsYXRlIHx8IGRlZmF1bHRQbGFjZWhvbGRlclRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cclxuICAgICAgfVxyXG5cclxuICAgICAgPGlucHV0XHJcbiAgICAgICAgI3RleHRJbnB1dFxyXG4gICAgICAgICNmb2N1c2FibGVFbGVtZW50XHJcbiAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgIFthdHRyLmlkXT1cImlucHV0SWQoKVwiXHJcbiAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwidGFiSW5kZXgoKVwiXHJcbiAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5KClcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcclxuICAgICAgICAoaW5wdXQpPVwib25JbnB1dCh0ZXh0SW5wdXQudmFsdWUpXCJcclxuICAgICAgICAoZm9jdXMpPVwib25Gb2N1c01hc3RlcigkZXZlbnQpXCJcclxuICAgICAgICAoYmx1cik9XCJvbkJsdXJNYXN0ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAoY29weSk9XCJvbkNvcHkoJGV2ZW50KVwiXHJcbiAgICAgIC8+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICBAaWYgKHNob3VsZFNob3dDbGVhckJ1dHRvbigpKSB7XHJcbiAgICAgIDxhcmQtY2xlYXItYnV0dG9uXHJcbiAgICAgICAgW3RpdGxlXT1cImNsZWFyQnV0dG9uVGl0bGUoKVwiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXJCdXR0b25DbGljaygkZXZlbnQpXCJcclxuICAgICAgLz5cclxuICAgIH1cclxuICA8L2Rpdj5cclxuPC9hcmQtZm9ybS1maWVsZC1mcmFtZT5cclxuIl19
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvaW5wdXRzL3NpbXBsZS1pbnB1dC9zaW1wbGUtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvc2ltcGxlLWlucHV0L3NpbXBsZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBMEIsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RixPQUFPLEVBQ0wsMENBQTBDLEVBQzFDLHFDQUFxQyxFQUNyQyxxQ0FBcUMsR0FDdEMsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFvQm5DLE1BQU0sT0FBTywwQkFBMkIsU0FBUSx5QkFBeUI7SUFFdkUsWUFBK0MsUUFBZ0M7UUFDN0UsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBR2xCLG1CQUFtQjtRQUNWLG1CQUFjLEdBQUcsWUFBWSxDQUFDLHFDQUFxQyxDQUFDLENBQUM7UUFDckUsbUJBQWMsR0FBRyxZQUFZLENBQUMscUNBQXFDLENBQUMsQ0FBQztRQUU5RSxlQUFlO1FBQ04sd0JBQW1CLEdBQUcsWUFBWSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7SUFQeEYsQ0FBQzsrR0FKVSwwQkFBMEIsa0JBRWpCLHlCQUF5QjttR0FGbEMsMEJBQTBCLDJDQVoxQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMEJBQTBCLENBQUM7Z0JBQ3pELEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRDtnQkFDRSxPQUFPLEVBQUUsdUJBQXVCO2dCQUNoQyxXQUFXLEVBQUUsMEJBQTBCO2FBQ3hDO1NBQ0Ysc0VBU3NDLHFDQUFxQyxpR0FDckMscUNBQXFDLHNHQUdoQywwQ0FBMEMsdUZDeEN4Rix3N0NBaURBOzs0RkRwQmEsMEJBQTBCO2tCQWxCdEMsU0FBUzsrQkFDRSxrQkFBa0IsaUJBR2IsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwyQkFBMkIsQ0FBQzs0QkFDekQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLHVCQUF1Qjs0QkFDaEMsV0FBVyw0QkFBNEI7eUJBQ3hDO3FCQUNGOzswQkFJWSxNQUFNOzJCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbnRlbnRDaGlsZCwgZm9yd2FyZFJlZiwgSW5qZWN0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgX0Zvcm1GaWVsZENvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9faW50ZXJuYWwvZm9ybS1maWVsZC1jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBfU2ltcGxlSW5wdXRDb21wb25lbnRCYXNlIH0gZnJvbSAnLi4vX3NpbXBsZS1pbnB1dC1iYXNlJztcclxuaW1wb3J0IHsgQVJEX1NJTVBMRV9JTlBVVF9ERUZBVUxUUywgQXJkU2ltcGxlSW5wdXREZWZhdWx0cyB9IGZyb20gJy4vc2ltcGxlLWlucHV0LmRlZmF1bHRzJztcclxuaW1wb3J0IHtcclxuICBBcmRTaW1wbGVJbnB1dFBsYWNlaG9sZGVyVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgQXJkU2ltcGxlSW5wdXRQcmVmaXhUZW1wbGF0ZURpcmVjdGl2ZSxcclxuICBBcmRTaW1wbGVJbnB1dFN1ZmZpeFRlbXBsYXRlRGlyZWN0aXZlLFxyXG59IGZyb20gJy4vc2ltcGxlLWlucHV0LmRpcmVjdGl2ZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcmQtc2ltcGxlLWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2ltcGxlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zaW1wbGUtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQXJkaXVtU2ltcGxlSW5wdXRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IF9Gb3JtRmllbGRDb21wb25lbnRCYXNlLFxyXG4gICAgICB1c2VFeGlzdGluZzogQXJkaXVtU2ltcGxlSW5wdXRDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcmRpdW1TaW1wbGVJbnB1dENvbXBvbmVudCBleHRlbmRzIF9TaW1wbGVJbnB1dENvbXBvbmVudEJhc2Uge1xyXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBfREVGQVVMVFMhOiBBcmRTaW1wbGVJbnB1dERlZmF1bHRzO1xyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQVJEX1NJTVBMRV9JTlBVVF9ERUZBVUxUUykgZGVmYXVsdHM6IEFyZFNpbXBsZUlucHV0RGVmYXVsdHMpIHtcclxuICAgIHN1cGVyKGRlZmF1bHRzKTtcclxuICB9XHJcblxyXG4gIC8vISBwcmVmaXggJiBzdWZmaXhcclxuICByZWFkb25seSBwcmVmaXhUZW1wbGF0ZSA9IGNvbnRlbnRDaGlsZChBcmRTaW1wbGVJbnB1dFByZWZpeFRlbXBsYXRlRGlyZWN0aXZlKTtcclxuICByZWFkb25seSBzdWZmaXhUZW1wbGF0ZSA9IGNvbnRlbnRDaGlsZChBcmRTaW1wbGVJbnB1dFN1ZmZpeFRlbXBsYXRlRGlyZWN0aXZlKTtcclxuXHJcbiAgLy8hIHBsYWNlaG9sZGVyXHJcbiAgcmVhZG9ubHkgcGxhY2Vob2xkZXJUZW1wbGF0ZSA9IGNvbnRlbnRDaGlsZChBcmRTaW1wbGVJbnB1dFBsYWNlaG9sZGVyVGVtcGxhdGVEaXJlY3RpdmUpO1xyXG59XHJcbiIsIjxhcmQtZm9ybS1maWVsZC1mcmFtZVxuICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlKClcIlxuICBbdmFyaWFudF09XCJ2YXJpYW50KClcIlxuICBbY29tcGFjdF09XCJjb21wYWN0KClcIlxuICBbaXNGb2N1c2VkXT1cImlzRm9jdXNlZCgpXCJcbiAgW2hhc0Vycm9yXT1cImhhc0Vycm9yKClcIlxuICBbaXNTdWNjZXNzXT1cImlzU3VjY2VzcygpXCJcbiAgW3ByZWZpeFRlbXBsYXRlXT1cInByZWZpeFRlbXBsYXRlKCk/LnRlbXBsYXRlXCJcbiAgW3N1ZmZpeFRlbXBsYXRlXT1cInN1ZmZpeFRlbXBsYXRlKCk/LnRlbXBsYXRlXCJcbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYXJkLXNpbXBsZS1pbnB1dFwiXG4gICAgW25nQ2xhc3NdPVwibmdDbGFzc2VzKClcIlxuICAgIFtjbGFzcy5hcmQtaGFzLXZhbHVlXT1cInZhbHVlXCJcbiAgICAoY2xpY2spPVwiZm9jdXMoKVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiYXJkLWlucHV0LWNvbnRhaW5lclwiPlxuICAgICAgQGlmIChzaG91bGREaXNwbGF5UGxhY2Vob2xkZXIoKSkge1xuICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRQbGFjZWhvbGRlclRlbXBsYXRlPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcmQtcGxhY2Vob2xkZXJcIj57eyBwbGFjZWhvbGRlcigpIH19PC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInBsYWNlaG9sZGVyVGVtcGxhdGUoKT8udGVtcGxhdGUgfHwgZGVmYXVsdFBsYWNlaG9sZGVyVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuICAgICAgfVxuXG4gICAgICA8aW5wdXRcbiAgICAgICAgI3RleHRJbnB1dFxuICAgICAgICAjZm9jdXNhYmxlRWxlbWVudFxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIFthdHRyLmlkXT1cImlucHV0SWQoKVwiXG4gICAgICAgIFthdHRyLnRhYmluZGV4XT1cInRhYkluZGV4KClcIlxuICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcbiAgICAgICAgKGlucHV0KT1cIm9uSW5wdXQodGV4dElucHV0LnZhbHVlKVwiXG4gICAgICAgIChmb2N1cyk9XCJvbkZvY3VzTWFzdGVyKCRldmVudClcIlxuICAgICAgICAoYmx1cik9XCJvbkJsdXJNYXN0ZXIoJGV2ZW50KVwiXG4gICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChjb3B5KT1cIm9uQ29weSgkZXZlbnQpXCJcbiAgICAgIC8+XG4gICAgPC9kaXY+XG5cbiAgICBAaWYgKHNob3VsZFNob3dDbGVhckJ1dHRvbigpKSB7XG4gICAgICA8YXJkLWNsZWFyLWJ1dHRvblxuICAgICAgICBbdGl0bGVdPVwiY2xlYXJCdXR0b25UaXRsZSgpXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXJCdXR0b25DbGljaygkZXZlbnQpXCJcbiAgICAgIC8+XG4gICAgfVxuICA8L2Rpdj5cbjwvYXJkLWZvcm0tZmllbGQtZnJhbWU+XG4iXX0=
@@ -22,4 +22,4 @@ export const ARD_SIMPLE_INPUT_DEFAULTS = new InjectionToken('ard-simple-input-de
22
22
  export function provideSimpleInputDefaults(config) {
23
23
  return { provide: ARD_SIMPLE_INPUT_DEFAULTS, useValue: { ..._simpleInputDefaults, ...config } };
24
24
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWlucHV0LmRlZmF1bHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvc2ltcGxlLWlucHV0L3NpbXBsZS1pbnB1dC5kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRW5GLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBSXhGLE1BQU0sb0JBQW9CLEdBQTJCO0lBQ25ELEdBQUcsMkJBQTJCO0lBQzlCLFVBQVUsRUFBRSxxQkFBcUIsQ0FBQyxRQUFRO0lBQzFDLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxPQUFPO0lBQ25DLE9BQU8sRUFBRSxLQUFLO0lBQ2QsV0FBVyxFQUFFLEVBQUU7SUFDZixTQUFTLEVBQUUsc0JBQXNCLENBQUMsSUFBSTtJQUN0QyxTQUFTLEVBQUUsS0FBSztJQUNoQixnQkFBZ0IsRUFBRSxPQUFPO0lBQ3pCLFVBQVUsRUFBRSxFQUFFO0lBQ2QsU0FBUyxFQUFFLFNBQVM7Q0FDckIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLElBQUksY0FBYyxDQUF5QiwyQkFBMkIsRUFBRTtJQUMvRyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNkLEdBQUcsb0JBQW9CO0tBQ3hCLENBQUM7Q0FDSCxDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsTUFBdUM7SUFDaEYsT0FBTyxFQUFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUsRUFBRSxHQUFHLG9CQUFvQixFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztBQUNsRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IF9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyB9IGZyb20gJy4uLy4uL19pbnRlcm5hbC9mb3JtLWZpZWxkLWNvbXBvbmVudCc7XHJcbmltcG9ydCB7IF9TaW1wbGVJbnB1dENvbXBvbmVudERlZmF1bHRzIH0gZnJvbSAnLi4vX3NpbXBsZS1pbnB1dC1iYXNlJztcclxuaW1wb3J0IHsgU2ltcGxlT25lQXhpc0FsaWdubWVudCB9IGZyb20gJy4vLi4vLi4vdHlwZXMvYWxpZ25tZW50LnR5cGVzJztcclxuaW1wb3J0IHsgRm9ybUVsZW1lbnRBcHBlYXJhbmNlLCBGb3JtRWxlbWVudFZhcmlhbnQgfSBmcm9tICcuLy4uLy4uL3R5cGVzL3RoZW1pbmcudHlwZXMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBcmRTaW1wbGVJbnB1dERlZmF1bHRzIGV4dGVuZHMgX1NpbXBsZUlucHV0Q29tcG9uZW50RGVmYXVsdHMge31cclxuXHJcbmNvbnN0IF9zaW1wbGVJbnB1dERlZmF1bHRzOiBBcmRTaW1wbGVJbnB1dERlZmF1bHRzID0ge1xyXG4gIC4uLl9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyxcclxuICBhcHBlYXJhbmNlOiBGb3JtRWxlbWVudEFwcGVhcmFuY2UuT3V0bGluZWQsXHJcbiAgdmFyaWFudDogRm9ybUVsZW1lbnRWYXJpYW50LlJvdW5kZWQsXHJcbiAgY29tcGFjdDogZmFsc2UsXHJcbiAgcGxhY2Vob2xkZXI6ICcnLFxyXG4gIGFsaWduVGV4dDogU2ltcGxlT25lQXhpc0FsaWdubWVudC5MZWZ0LFxyXG4gIGNsZWFyYWJsZTogZmFsc2UsXHJcbiAgY2xlYXJCdXR0b25UaXRsZTogJ0NsZWFyJyxcclxuICBpbnB1dEF0dHJzOiB7fSxcclxuICBtYXhMZW5ndGg6IHVuZGVmaW5lZCxcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBBUkRfU0lNUExFX0lOUFVUX0RFRkFVTFRTID0gbmV3IEluamVjdGlvblRva2VuPEFyZFNpbXBsZUlucHV0RGVmYXVsdHM+KCdhcmQtc2ltcGxlLWlucHV0LWRlZmF1bHRzJywge1xyXG4gIGZhY3Rvcnk6ICgpID0+ICh7XHJcbiAgICAuLi5fc2ltcGxlSW5wdXREZWZhdWx0cyxcclxuICB9KSxcclxufSk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVNpbXBsZUlucHV0RGVmYXVsdHMoY29uZmlnOiBQYXJ0aWFsPEFyZFNpbXBsZUlucHV0RGVmYXVsdHM+KTogUHJvdmlkZXIge1xyXG4gIHJldHVybiB7IHByb3ZpZGU6IEFSRF9TSU1QTEVfSU5QVVRfREVGQVVMVFMsIHVzZVZhbHVlOiB7IC4uLl9zaW1wbGVJbnB1dERlZmF1bHRzLCAuLi5jb25maWcgfSB9O1xyXG59XHJcbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWlucHV0LmRlZmF1bHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvc2ltcGxlLWlucHV0L3NpbXBsZS1pbnB1dC5kZWZhdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRW5GLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBSXhGLE1BQU0sb0JBQW9CLEdBQTJCO0lBQ25ELEdBQUcsMkJBQTJCO0lBQzlCLFVBQVUsRUFBRSxxQkFBcUIsQ0FBQyxRQUFRO0lBQzFDLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxPQUFPO0lBQ25DLE9BQU8sRUFBRSxLQUFLO0lBQ2QsV0FBVyxFQUFFLEVBQUU7SUFDZixTQUFTLEVBQUUsc0JBQXNCLENBQUMsSUFBSTtJQUN0QyxTQUFTLEVBQUUsS0FBSztJQUNoQixnQkFBZ0IsRUFBRSxPQUFPO0lBQ3pCLFVBQVUsRUFBRSxFQUFFO0lBQ2QsU0FBUyxFQUFFLFNBQVM7Q0FDckIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLElBQUksY0FBYyxDQUF5QiwyQkFBMkIsRUFBRTtJQUMvRyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNkLEdBQUcsb0JBQW9CO0tBQ3hCLENBQUM7Q0FDSCxDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsTUFBdUM7SUFDaEYsT0FBTyxFQUFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUsRUFBRSxHQUFHLG9CQUFvQixFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztBQUNsRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBfZm9ybUZpZWxkQ29tcG9uZW50RGVmYXVsdHMgfSBmcm9tICcuLi8uLi9faW50ZXJuYWwvZm9ybS1maWVsZC1jb21wb25lbnQnO1xuaW1wb3J0IHsgX1NpbXBsZUlucHV0Q29tcG9uZW50RGVmYXVsdHMgfSBmcm9tICcuLi9fc2ltcGxlLWlucHV0LWJhc2UnO1xuaW1wb3J0IHsgU2ltcGxlT25lQXhpc0FsaWdubWVudCB9IGZyb20gJy4vLi4vLi4vdHlwZXMvYWxpZ25tZW50LnR5cGVzJztcbmltcG9ydCB7IEZvcm1FbGVtZW50QXBwZWFyYW5jZSwgRm9ybUVsZW1lbnRWYXJpYW50IH0gZnJvbSAnLi8uLi8uLi90eXBlcy90aGVtaW5nLnR5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBBcmRTaW1wbGVJbnB1dERlZmF1bHRzIGV4dGVuZHMgX1NpbXBsZUlucHV0Q29tcG9uZW50RGVmYXVsdHMge31cblxuY29uc3QgX3NpbXBsZUlucHV0RGVmYXVsdHM6IEFyZFNpbXBsZUlucHV0RGVmYXVsdHMgPSB7XG4gIC4uLl9mb3JtRmllbGRDb21wb25lbnREZWZhdWx0cyxcbiAgYXBwZWFyYW5jZTogRm9ybUVsZW1lbnRBcHBlYXJhbmNlLk91dGxpbmVkLFxuICB2YXJpYW50OiBGb3JtRWxlbWVudFZhcmlhbnQuUm91bmRlZCxcbiAgY29tcGFjdDogZmFsc2UsXG4gIHBsYWNlaG9sZGVyOiAnJyxcbiAgYWxpZ25UZXh0OiBTaW1wbGVPbmVBeGlzQWxpZ25tZW50LkxlZnQsXG4gIGNsZWFyYWJsZTogZmFsc2UsXG4gIGNsZWFyQnV0dG9uVGl0bGU6ICdDbGVhcicsXG4gIGlucHV0QXR0cnM6IHt9LFxuICBtYXhMZW5ndGg6IHVuZGVmaW5lZCxcbn07XG5cbmV4cG9ydCBjb25zdCBBUkRfU0lNUExFX0lOUFVUX0RFRkFVTFRTID0gbmV3IEluamVjdGlvblRva2VuPEFyZFNpbXBsZUlucHV0RGVmYXVsdHM+KCdhcmQtc2ltcGxlLWlucHV0LWRlZmF1bHRzJywge1xuICBmYWN0b3J5OiAoKSA9PiAoe1xuICAgIC4uLl9zaW1wbGVJbnB1dERlZmF1bHRzLFxuICB9KSxcbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVNpbXBsZUlucHV0RGVmYXVsdHMoY29uZmlnOiBQYXJ0aWFsPEFyZFNpbXBsZUlucHV0RGVmYXVsdHM+KTogUHJvdmlkZXIge1xuICByZXR1cm4geyBwcm92aWRlOiBBUkRfU0lNUExFX0lOUFVUX0RFRkFVTFRTLCB1c2VWYWx1ZTogeyAuLi5fc2ltcGxlSW5wdXREZWZhdWx0cywgLi4uY29uZmlnIH0gfTtcbn1cbiJdfQ==
@@ -2,4 +2,4 @@ export * from './modal.component';
2
2
  export * from './modal.defaults';
3
3
  export * from './modal.directives';
4
4
  export * from './modal.module';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL21vZGFsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGFsLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kYWwuZGVmYXVsdHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGFsLmRpcmVjdGl2ZXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGFsLm1vZHVsZSc7XHJcblxyXG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL21vZGFsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGFsLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kYWwuZGVmYXVsdHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGFsLmRpcmVjdGl2ZXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGFsLm1vZHVsZSc7XHJcbiJdfQ==