@taiga-ui/core 3.14.0 → 3.15.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 (218) hide show
  1. package/bundles/taiga-ui-core-components-alert.umd.js +11 -11
  2. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-components-button.umd.js +16 -16
  4. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-components-calendar.umd.js +23 -10
  6. package/bundles/taiga-ui-core-components-calendar.umd.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-data-list.umd.js +34 -37
  8. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-dialog.umd.js +16 -16
  10. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-error.umd.js +5 -5
  12. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-expand.umd.js +17 -18
  14. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-group.umd.js +17 -17
  16. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-hints-host.umd.js +4 -4
  18. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +13 -13
  20. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-label.umd.js +6 -6
  22. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  23. package/bundles/taiga-ui-core-components-link.umd.js +14 -14
  24. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  25. package/bundles/taiga-ui-core-components-loader.umd.js +5 -5
  26. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  27. package/bundles/taiga-ui-core-components-notification.umd.js +10 -10
  28. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  29. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +5 -5
  30. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  31. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +5 -5
  32. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  33. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +5 -5
  34. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  35. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +58 -58
  36. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +4 -4
  38. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  39. package/bundles/taiga-ui-core-components-root.umd.js +7 -7
  40. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  41. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +28 -28
  42. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  43. package/bundles/taiga-ui-core-components-scrollbar.umd.js +10 -10
  44. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  45. package/bundles/taiga-ui-core-components-svg.umd.js +18 -18
  46. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  47. package/bundles/taiga-ui-core-components-theme-night.umd.js +4 -4
  48. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  49. package/bundles/taiga-ui-core-components-tooltip.umd.js +9 -9
  50. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  51. package/bundles/taiga-ui-core-directives-dropdown.umd.js +94 -91
  52. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  53. package/bundles/taiga-ui-core-directives-hint.umd.js +61 -61
  54. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  55. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js +1 -1
  56. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js.map +1 -1
  57. package/bundles/taiga-ui-core-directives-mode.umd.js +2 -2
  58. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  59. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +1 -1
  60. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  61. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +34 -34
  62. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  63. package/bundles/taiga-ui-core-directives-wrapper.umd.js +9 -9
  64. package/bundles/taiga-ui-core-directives-wrapper.umd.js.map +1 -1
  65. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +3 -3
  66. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  67. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +3 -3
  68. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
  69. package/components/calendar/calendar.component.d.ts +4 -2
  70. package/components/expand/expand.component.d.ts +1 -1
  71. package/directives/dropdown/dropdown-context.directive.d.ts +4 -4
  72. package/directives/dropdown/dropdown-options.directive.d.ts +3 -5
  73. package/directives/dropdown/dropdown-position-sided.directive.d.ts +2 -1
  74. package/directives/dropdown/dropdown.directive.d.ts +1 -1
  75. package/esm2015/components/alert/alert.component.js +12 -12
  76. package/esm2015/components/button/button.component.js +17 -17
  77. package/esm2015/components/calendar/calendar.component.js +21 -12
  78. package/esm2015/components/data-list/data-list.component.js +17 -17
  79. package/esm2015/components/data-list/data-list.directive.js +2 -2
  80. package/esm2015/components/data-list/opt-group.directive.js +5 -5
  81. package/esm2015/components/data-list/option/option.component.js +14 -17
  82. package/esm2015/components/dialog/dialog.component.js +14 -14
  83. package/esm2015/components/dialog/dialog.directive.js +4 -4
  84. package/esm2015/components/error/error.component.js +6 -6
  85. package/esm2015/components/expand/expand-content.directive.js +2 -2
  86. package/esm2015/components/expand/expand.component.js +17 -19
  87. package/esm2015/components/group/group-styles.component.js +4 -4
  88. package/esm2015/components/group/group.directive.js +15 -15
  89. package/esm2015/components/hints-host/hints-host.component.js +5 -5
  90. package/esm2015/components/hosted-dropdown/hosted-dropdown-connector.directive.js +2 -2
  91. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +13 -13
  92. package/esm2015/components/label/label.component.js +7 -7
  93. package/esm2015/components/link/link.component.js +15 -15
  94. package/esm2015/components/loader/loader.component.js +6 -6
  95. package/esm2015/components/notification/notification.component.js +11 -11
  96. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +6 -6
  97. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +6 -6
  98. package/esm2015/components/primitive-spin-button/primitive-spin-button.component.js +6 -6
  99. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +32 -32
  100. package/esm2015/components/primitive-textfield/primitive-textfield.directive.js +2 -2
  101. package/esm2015/components/primitive-textfield/textfield/textfield.component.js +13 -13
  102. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +15 -15
  103. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +5 -5
  104. package/esm2015/components/root/root.component.js +8 -8
  105. package/esm2015/components/scroll-controls/scroll-controls.component.js +6 -6
  106. package/esm2015/components/scroll-controls/scrollbar-wrapper.directive.js +2 -2
  107. package/esm2015/components/scroll-controls/scrollbar.directive.js +23 -23
  108. package/esm2015/components/scrollbar/scroll-ref.directive.js +2 -2
  109. package/esm2015/components/scrollbar/scrollable.directive.js +2 -2
  110. package/esm2015/components/scrollbar/scrollbar.component.js +9 -9
  111. package/esm2015/components/svg/svg.component.js +19 -19
  112. package/esm2015/components/theme-night/theme-night.component.js +5 -5
  113. package/esm2015/components/tooltip/tooltip.component.js +10 -10
  114. package/esm2015/directives/dropdown/dropdown-context.directive.js +16 -16
  115. package/esm2015/directives/dropdown/dropdown-driver.directive.js +2 -2
  116. package/esm2015/directives/dropdown/dropdown-host.directive.js +2 -2
  117. package/esm2015/directives/dropdown/dropdown-hover.directive.js +4 -4
  118. package/esm2015/directives/dropdown/dropdown-manual.directive.js +2 -2
  119. package/esm2015/directives/dropdown/dropdown-options.directive.js +19 -15
  120. package/esm2015/directives/dropdown/dropdown-position-sided.directive.js +17 -14
  121. package/esm2015/directives/dropdown/dropdown-position.directive.js +12 -14
  122. package/esm2015/directives/dropdown/dropdown-selection.directive.js +11 -11
  123. package/esm2015/directives/dropdown/dropdown.component.js +18 -20
  124. package/esm2015/directives/dropdown/dropdown.directive.js +7 -7
  125. package/esm2015/directives/hint/hint-describe.directive.js +5 -5
  126. package/esm2015/directives/hint/hint-driver.directive.js +2 -2
  127. package/esm2015/directives/hint/hint-host.directive.js +2 -2
  128. package/esm2015/directives/hint/hint-hover.directive.js +5 -5
  129. package/esm2015/directives/hint/hint-manual.directive.js +2 -2
  130. package/esm2015/directives/hint/hint-options.directive.js +12 -12
  131. package/esm2015/directives/hint/hint-pointer.directive.js +3 -3
  132. package/esm2015/directives/hint/hint-position.directive.js +25 -25
  133. package/esm2015/directives/hint/hint.component.js +10 -10
  134. package/esm2015/directives/hint/hint.directive.js +5 -5
  135. package/esm2015/directives/mask-accessor/mask-accessor.directive.js +2 -2
  136. package/esm2015/directives/mode/mode.directive.js +3 -3
  137. package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +2 -2
  138. package/esm2015/directives/textfield-controller/textfield-cleaner.directive.js +4 -4
  139. package/esm2015/directives/textfield-controller/textfield-custom-content.directive.js +5 -5
  140. package/esm2015/directives/textfield-controller/textfield-filler.directive.js +5 -5
  141. package/esm2015/directives/textfield-controller/textfield-icon-left.directive.js +5 -5
  142. package/esm2015/directives/textfield-controller/textfield-icon.directive.js +5 -5
  143. package/esm2015/directives/textfield-controller/textfield-label-outside.directive.js +4 -4
  144. package/esm2015/directives/textfield-controller/textfield-postfix.directive.js +5 -5
  145. package/esm2015/directives/textfield-controller/textfield-prefix.directive.js +5 -5
  146. package/esm2015/directives/textfield-controller/textfield-size.directive.js +5 -5
  147. package/esm2015/directives/wrapper/wrapper.directive.js +10 -10
  148. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +4 -4
  149. package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +4 -4
  150. package/fesm2015/taiga-ui-core-components-alert.js +11 -11
  151. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  152. package/fesm2015/taiga-ui-core-components-button.js +16 -16
  153. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  154. package/fesm2015/taiga-ui-core-components-calendar.js +20 -11
  155. package/fesm2015/taiga-ui-core-components-calendar.js.map +1 -1
  156. package/fesm2015/taiga-ui-core-components-data-list.js +34 -37
  157. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  158. package/fesm2015/taiga-ui-core-components-dialog.js +16 -16
  159. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  160. package/fesm2015/taiga-ui-core-components-error.js +5 -5
  161. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  162. package/fesm2015/taiga-ui-core-components-expand.js +17 -19
  163. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  164. package/fesm2015/taiga-ui-core-components-group.js +17 -17
  165. package/fesm2015/taiga-ui-core-components-group.js.map +1 -1
  166. package/fesm2015/taiga-ui-core-components-hints-host.js +4 -4
  167. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  168. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +13 -13
  169. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  170. package/fesm2015/taiga-ui-core-components-label.js +6 -6
  171. package/fesm2015/taiga-ui-core-components-label.js.map +1 -1
  172. package/fesm2015/taiga-ui-core-components-link.js +14 -14
  173. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  174. package/fesm2015/taiga-ui-core-components-loader.js +5 -5
  175. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  176. package/fesm2015/taiga-ui-core-components-notification.js +10 -10
  177. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  178. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +5 -5
  179. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  180. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +5 -5
  181. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  182. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +5 -5
  183. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  184. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +59 -59
  185. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  186. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +4 -4
  187. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  188. package/fesm2015/taiga-ui-core-components-root.js +7 -7
  189. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  190. package/fesm2015/taiga-ui-core-components-scroll-controls.js +28 -28
  191. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  192. package/fesm2015/taiga-ui-core-components-scrollbar.js +10 -10
  193. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  194. package/fesm2015/taiga-ui-core-components-svg.js +18 -18
  195. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  196. package/fesm2015/taiga-ui-core-components-theme-night.js +4 -4
  197. package/fesm2015/taiga-ui-core-components-theme-night.js.map +1 -1
  198. package/fesm2015/taiga-ui-core-components-tooltip.js +9 -9
  199. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  200. package/fesm2015/taiga-ui-core-directives-dropdown.js +96 -92
  201. package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
  202. package/fesm2015/taiga-ui-core-directives-hint.js +61 -61
  203. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  204. package/fesm2015/taiga-ui-core-directives-mask-accessor.js +1 -1
  205. package/fesm2015/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  206. package/fesm2015/taiga-ui-core-directives-mode.js +2 -2
  207. package/fesm2015/taiga-ui-core-directives-mode.js.map +1 -1
  208. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +1 -1
  209. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  210. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +34 -34
  211. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  212. package/fesm2015/taiga-ui-core-directives-wrapper.js +9 -9
  213. package/fesm2015/taiga-ui-core-directives-wrapper.js.map +1 -1
  214. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +3 -3
  215. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  216. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +3 -3
  217. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  218. package/package.json +6 -6
@@ -35,7 +35,7 @@ export class TuiPrimitiveTextfieldComponent extends AbstractTuiInteractive {
35
35
  this.elementRef = elementRef;
36
36
  this.editable = true;
37
37
  /** @deprecated use `tuiTextfieldFiller` from {@link TuiTextfieldControllerModule} instead */
38
- this.textfieldFiller = ``;
38
+ this.textfieldFiller = '';
39
39
  /**
40
40
  * @deprecated:
41
41
  * use `tuiTextfieldOptionsProvider({iconCleaner: `tuiIconChevronUp`})`
@@ -45,10 +45,10 @@ export class TuiPrimitiveTextfieldComponent extends AbstractTuiInteractive {
45
45
  this.invalid = false;
46
46
  this.disabled = false;
47
47
  /** @deprecated use `tuiTextfieldPrefix` from {@link TuiTextfieldControllerModule} instead */
48
- this.textfieldPrefix = ``;
48
+ this.textfieldPrefix = '';
49
49
  /** @deprecated use `tuiTextfieldPostfix` from {@link TuiTextfieldControllerModule} instead */
50
- this.textfieldPostfix = ``;
51
- this.value = ``;
50
+ this.textfieldPostfix = '';
51
+ this.value = '';
52
52
  this.valueChange = new EventEmitter();
53
53
  this.autofilled = false;
54
54
  }
@@ -101,7 +101,7 @@ export class TuiPrimitiveTextfieldComponent extends AbstractTuiInteractive {
101
101
  get showOnlyPlaceholder() {
102
102
  return (this.focused &&
103
103
  this.placeholderVisible &&
104
- (this.size === `s` || (this.size === `m` && !this.placeholderRaisable)));
104
+ (this.size === 's' || (this.size === 'm' && !this.placeholderRaisable)));
105
105
  }
106
106
  get placeholderVisible() {
107
107
  var _a;
@@ -132,25 +132,25 @@ export class TuiPrimitiveTextfieldComponent extends AbstractTuiInteractive {
132
132
  // Safari expiration date autofill workaround
133
133
  get name() {
134
134
  var _a;
135
- return ((_a = this.nativeFocusableElement) === null || _a === void 0 ? void 0 : _a.autocomplete) === `cc-exp`
136
- ? `ccexpiryyear`
135
+ return ((_a = this.nativeFocusableElement) === null || _a === void 0 ? void 0 : _a.autocomplete) === 'cc-exp'
136
+ ? 'ccexpiryyear'
137
137
  : null;
138
138
  }
139
139
  get computedId() {
140
140
  var _a;
141
- return ((_a = this.nativeFocusableElement) === null || _a === void 0 ? void 0 : _a.id) || ``;
141
+ return ((_a = this.nativeFocusableElement) === null || _a === void 0 ? void 0 : _a.id) || '';
142
142
  }
143
143
  onFocused(focused) {
144
144
  this.updateFocused(focused);
145
145
  }
146
146
  getIndent$(element) {
147
- return fromEvent(element, `scroll`).pipe(map(() => -1 * element.scrollLeft));
147
+ return fromEvent(element, 'scroll').pipe(map(() => -1 * element.scrollLeft));
148
148
  }
149
149
  clear() {
150
150
  if (this.nativeFocusableElement) {
151
- this.nativeFocusableElement.value = ``;
151
+ this.nativeFocusableElement.value = '';
152
152
  }
153
- this.updateValue(``);
153
+ this.updateValue('');
154
154
  }
155
155
  onMouseDown(event) {
156
156
  const { nativeFocusableElement } = this;
@@ -167,10 +167,10 @@ export class TuiPrimitiveTextfieldComponent extends AbstractTuiInteractive {
167
167
  this.updateAutofilled(autofilled);
168
168
  }
169
169
  get iconPaddingLeft() {
170
- return this.size === `s` ? ICON_PADDING_S : ICON_PADDING;
170
+ return this.size === 's' ? ICON_PADDING_S : ICON_PADDING;
171
171
  }
172
172
  get placeholderRaisable() {
173
- return this.size !== `s` && !this.controller.labelOutside;
173
+ return this.size !== 's' && !this.controller.labelOutside;
174
174
  }
175
175
  updateAutofilled(autofilled) {
176
176
  if (this.autofilled === autofilled) {
@@ -222,9 +222,9 @@ __decorate([
222
222
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPrimitiveTextfieldComponent, decorators: [{
223
223
  type: Component,
224
224
  args: [{
225
- selector: `tui-primitive-textfield`,
226
- templateUrl: `./primitive-textfield.template.html`,
227
- styleUrls: [`./primitive-textfield.style.less`],
225
+ selector: 'tui-primitive-textfield',
226
+ templateUrl: './primitive-textfield.template.html',
227
+ styleUrls: ['./primitive-textfield.style.less'],
228
228
  changeDetection: ChangeDetectionStrategy.OnPush,
229
229
  providers: [
230
230
  tuiAsFocusableItemAccessor(TuiPrimitiveTextfieldComponent),
@@ -232,9 +232,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
232
232
  MODE_PROVIDER,
233
233
  ],
234
234
  host: {
235
- '($.data-mode.attr)': `mode$`,
236
- '[class._autofilled]': `autofilled`,
237
- '[class._label-outside]': `controller.labelOutside`,
235
+ '($.data-mode.attr)': 'mode$',
236
+ '[class._autofilled]': 'autofilled',
237
+ '[class._label-outside]': 'controller.labelOutside',
238
238
  },
239
239
  }]
240
240
  }], ctorParameters: function () { return [{ type: i10.Observable, decorators: [{
@@ -259,29 +259,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
259
259
  args: [ElementRef]
260
260
  }] }]; }, propDecorators: { focusableElement: [{
261
261
  type: ViewChild,
262
- args: [`focusableElement`]
262
+ args: ['focusableElement']
263
263
  }], editable: [{
264
264
  type: Input
265
265
  }], textfieldFiller: [{
266
266
  type: Input,
267
- args: [`filler`]
267
+ args: ['filler']
268
268
  }], iconCleaner: [{
269
269
  type: Input
270
270
  }], readOnly: [{
271
271
  type: Input
272
272
  }, {
273
273
  type: HostBinding,
274
- args: [`class._readonly`]
274
+ args: ['class._readonly']
275
275
  }], invalid: [{
276
276
  type: Input
277
277
  }], disabled: [{
278
278
  type: Input
279
279
  }], textfieldPrefix: [{
280
280
  type: Input,
281
- args: [`prefix`]
281
+ args: ['prefix']
282
282
  }], textfieldPostfix: [{
283
283
  type: Input,
284
- args: [`postfix`]
284
+ args: ['postfix']
285
285
  }], value: [{
286
286
  type: Input
287
287
  }], valueChange: [{
@@ -291,24 +291,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
291
291
  args: [PolymorpheusOutletDirective, { descendants: true }]
292
292
  }], size: [{
293
293
  type: HostBinding,
294
- args: [`attr.data-size`]
294
+ args: ['attr.data-size']
295
295
  }], computedInvalid: [{
296
296
  type: HostBinding,
297
- args: [`class._invalid`]
297
+ args: ['class._invalid']
298
298
  }], inputHidden: [{
299
299
  type: HostBinding,
300
- args: [`class._hidden`]
300
+ args: ['class._hidden']
301
301
  }], borderStart: [{
302
302
  type: HostBinding,
303
- args: [`style.--border-start.rem`]
303
+ args: ['style.--border-start.rem']
304
304
  }], borderEnd: [{
305
305
  type: HostBinding,
306
- args: [`style.--border-end.rem`]
306
+ args: ['style.--border-end.rem']
307
307
  }], onFocused: [{
308
308
  type: HostListener,
309
- args: [`focusin`, [`true`]]
309
+ args: ['focusin', ['true']]
310
310
  }, {
311
311
  type: HostListener,
312
- args: [`focusout`, [`false`]]
312
+ args: ['focusout', ['false']]
313
313
  }], getIndent$: [] } });
314
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXRleHRmaWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcHJpbWl0aXZlLXRleHRmaWVsZC9wcmltaXRpdmUtdGV4dGZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUtdGV4dGZpZWxkL3ByaW1pdGl2ZS10ZXh0ZmllbGQudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBRU4sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsMEJBQTBCLEVBRTFCLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFDSCw2QkFBNkIsRUFDN0IscUJBQXFCLEVBQ3JCLGdDQUFnQyxHQUduQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3hELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsUUFBUSxFQUFFLHdCQUF3QixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFekUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ2hFLE9BQU8sRUFBc0IsMkJBQTJCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRixPQUFPLEVBQUMsU0FBUyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFJbkMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDO0FBQzFCLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQztBQWtCM0IsTUFBTSxPQUFPLDhCQUNULFNBQVEsc0JBQXNCO0lBMEQ5QixZQUMrQixLQUF1QyxFQUN2QixVQUFrQixFQUVwRCxVQUFrQyxFQUdsQyxXQUEyQyxFQUUzQyxPQUE0QixFQUNBLFVBQW1DO1FBRXhFLEtBQUssRUFBRSxDQUFDO1FBWG1CLFVBQUssR0FBTCxLQUFLLENBQWtDO1FBQ3ZCLGVBQVUsR0FBVixVQUFVLENBQVE7UUFFcEQsZUFBVSxHQUFWLFVBQVUsQ0FBd0I7UUFHbEMsZ0JBQVcsR0FBWCxXQUFXLENBQWdDO1FBRTNDLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBQ0EsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUE1RDVFLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFFaEIsNkZBQTZGO1FBRzdGLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBRXJCOzs7V0FHRztRQUdILGdCQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFLdkMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUlqQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBSWhCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFakIsNkZBQTZGO1FBRzdGLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBRXJCLDhGQUE4RjtRQUc5RixxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFJdEIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUdGLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUtsRCxlQUFVLEdBQUcsS0FBSyxDQUFDO0lBZW5CLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUM7SUFDMUQsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUM7SUFDMUQsQ0FBQztJQUVELElBQUksc0JBQXNCO1FBQ3RCLElBQUksSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ2pELE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxNQUFNLEVBQUMsYUFBYSxFQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBRTlDLE9BQU8sQ0FBQyxhQUFhLENBQUMsc0JBQXNCO1lBQ3hDLGFBQWEsQ0FBNEIsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1AsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxJQUNJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUNJLGVBQWU7UUFDZixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFDSSxXQUFXOztRQUNYLE9BQU8sQ0FBQyxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsT0FBTywwQ0FBRSxNQUFNLENBQUEsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1YsT0FBTyxDQUNILElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTztZQUN2QixJQUFJLENBQUMsUUFBUTtZQUNiLENBQUMsSUFBSSxDQUFDLGdCQUFnQjtZQUN0QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQ2pCLENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxVQUFVOztRQUNWLE9BQU8sQ0FBQyxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsV0FBVywwQ0FBRSxPQUFPLENBQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqRSxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDaEIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ25CLE9BQU8sQ0FDSCxJQUFJLENBQUMsT0FBTztZQUNaLElBQUksQ0FBQyxrQkFBa0I7WUFDdkIsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FDMUUsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLGtCQUFrQjs7UUFDbEIsTUFBTSxRQUFRLEdBQ1YsQ0FBQSxNQUFBLElBQUksQ0FBQyxzQkFBc0IsMENBQUUsV0FBVyxLQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM1RSxNQUFNLFNBQVMsR0FBRyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUM7UUFFckUsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQUksY0FBYztRQUNkLE9BQU8sQ0FDSCxDQUFDLElBQUksQ0FBQyxtQkFBbUI7WUFDekIsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQ3hELENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDakIsT0FBTyxDQUNILElBQUksQ0FBQyxtQkFBbUI7WUFDeEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQ2pGLENBQUM7SUFDTixDQUFDO0lBRUQsSUFDSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELElBQ0ksU0FBUztRQUNULE9BQU8sWUFBWSxDQUNmLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUNsQixJQUFJLENBQUMsVUFBVSxFQUNmLElBQUksQ0FBQyxVQUFVLEVBQ2YsSUFBSSxDQUFDLGdCQUFnQixDQUN4QixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksZUFBZTtRQUdmLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVELDZDQUE2QztJQUM3QyxJQUFJLElBQUk7O1FBQ0osT0FBTyxDQUFBLE1BQUEsSUFBSSxDQUFDLHNCQUFzQiwwQ0FBRSxZQUFZLE1BQUssUUFBUTtZQUN6RCxDQUFDLENBQUMsY0FBYztZQUNoQixDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ2YsQ0FBQztJQUVELElBQUksVUFBVTs7UUFDVixPQUFPLENBQUEsTUFBQSxJQUFJLENBQUMsc0JBQXNCLDBDQUFFLEVBQUUsS0FBSSxFQUFFLENBQUM7SUFDakQsQ0FBQztJQUlELFNBQVMsQ0FBQyxPQUFnQjtRQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFHRCxVQUFVLENBQUMsT0FBb0I7UUFDM0IsT0FBTyxTQUFTLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtZQUM3QixJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUMxQztRQUVELElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFpQjtRQUN6QixNQUFNLEVBQUMsc0JBQXNCLEVBQUMsR0FBRyxJQUFJLENBQUM7UUFFdEMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssc0JBQXNCLEVBQUU7WUFDcEUsT0FBTztTQUNWO1FBRUQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLHNCQUFzQixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBYTtRQUN2QixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxZQUFZLENBQUMsVUFBbUI7UUFDNUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFZLGVBQWU7UUFDdkIsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQVksbUJBQW1CO1FBQzNCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQztJQUM5RCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsVUFBbUI7UUFDeEMsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLFVBQVUsRUFBRTtZQUNoQyxPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUNqQyxDQUFDO0lBRU8sV0FBVyxDQUFDLEtBQWE7UUFDN0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzs7NEhBcFFRLDhCQUE4QixrQkE0RDNCLFFBQVEsYUFDUix3QkFBd0IsYUFDeEIsZ0NBQWdDLGFBR2hDLHVCQUF1Qiw2QkFFdkIscUJBQXFCLGFBRXJCLFVBQVU7Z0hBckViLDhCQUE4QixvMEJBWDVCO1FBQ1AsMEJBQTBCLENBQUMsOEJBQThCLENBQUM7UUFDMUQsNkJBQTZCO1FBQzdCLGFBQWE7S0FDaEIsa0RBNkRnQiwyQkFBMkIsNkxDbEhoRCxrb0lBa0hBO0FEN0NJO0lBREMsY0FBYyxFQUFFO2dFQUNEO0FBS2hCO0lBREMsY0FBYyxFQUFFO3VFQUNJO0FBUXJCO0lBREMsY0FBYyxFQUFFO21FQUNzQjtBQUt2QztJQURDLGNBQWMsRUFBRTtnRUFDQTtBQUlqQjtJQURDLGNBQWMsRUFBRTsrREFDRDtBQUloQjtJQURDLGNBQWMsRUFBRTtnRUFDQTtBQUtqQjtJQURDLGNBQWMsRUFBRTt1RUFDSTtBQUtyQjtJQURDLGNBQWMsRUFBRTt3RUFDSztBQUl0QjtJQURDLGNBQWMsRUFBRTs2REFDTjtBQWlLWDtJQURDLE9BQU87Z0VBR1A7NEZBcE5RLDhCQUE4QjtrQkFoQjFDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsV0FBVyxFQUFFLHFDQUFxQztvQkFDbEQsU0FBUyxFQUFFLENBQUMsa0NBQWtDLENBQUM7b0JBQy9DLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxTQUFTLEVBQUU7d0JBQ1AsMEJBQTBCLGdDQUFnQzt3QkFDMUQsNkJBQTZCO3dCQUM3QixhQUFhO3FCQUNoQjtvQkFDRCxJQUFJLEVBQUU7d0JBQ0Ysb0JBQW9CLEVBQUUsT0FBTzt3QkFDN0IscUJBQXFCLEVBQUUsWUFBWTt3QkFDbkMsd0JBQXdCLEVBQUUseUJBQXlCO3FCQUN0RDtpQkFDSjs7MEJBNkRRLE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsTUFBTTsyQkFBQyx3QkFBd0I7OzBCQUMvQixNQUFNOzJCQUFDLGdDQUFnQzs7MEJBRXZDLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsdUJBQXVCOzswQkFFOUIsTUFBTTsyQkFBQyxxQkFBcUI7OzBCQUU1QixNQUFNOzJCQUFDLFVBQVU7NENBaEVMLGdCQUFnQjtzQkFEaEMsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBSzdCLFFBQVE7c0JBRlAsS0FBSztnQkFPTixlQUFlO3NCQUZkLEtBQUs7dUJBQUMsUUFBUTtnQkFVZixXQUFXO3NCQUZWLEtBQUs7Z0JBT04sUUFBUTtzQkFIUCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFNOUIsT0FBTztzQkFGTixLQUFLO2dCQU1OLFFBQVE7c0JBRlAsS0FBSztnQkFPTixlQUFlO3NCQUZkLEtBQUs7dUJBQUMsUUFBUTtnQkFPZixnQkFBZ0I7c0JBRmYsS0FBSzt1QkFBQyxTQUFTO2dCQU1oQixLQUFLO3NCQUZKLEtBQUs7Z0JBS0csV0FBVztzQkFEbkIsTUFBTTtnQkFJRSxPQUFPO3NCQURmLGVBQWU7dUJBQUMsMkJBQTJCLEVBQUUsRUFBQyxXQUFXLEVBQUUsSUFBSSxFQUFDO2dCQWdEN0QsSUFBSTtzQkFEUCxXQUFXO3VCQUFDLGdCQUFnQjtnQkFNekIsZUFBZTtzQkFEbEIsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBTXpCLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxlQUFlO2dCQXlEeEIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLDBCQUEwQjtnQkFNbkMsU0FBUztzQkFEWixXQUFXO3VCQUFDLHdCQUF3QjtnQkFpQ3JDLFNBQVM7c0JBRlIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxNQUFNLENBQUM7O3NCQUNoQyxZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sQ0FBQztnQkFNbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlJbnRlcmFjdGl2ZSxcbiAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcixcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIHR1aUlzTmF0aXZlRm9jdXNlZEluLFxuICAgIHR1aVB1cmUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9oaW50JztcbmltcG9ydCB7XG4gICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVFVJX1RFWFRGSUVMRF9PUFRJT05TLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgVHVpVGV4dGZpZWxkT3B0aW9ucyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy90ZXh0ZmllbGQtY29udHJvbGxlcic7XG5pbXBvcnQge01PREVfUFJPVklERVJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Byb3ZpZGVycyc7XG5pbXBvcnQge1RVSV9NT0RFLCBUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aUJyaWdodG5lc3MsIFR1aVNpemVMLCBUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHt0dWlHZXRCb3JkZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50LCBQb2x5bW9ycGhldXNPdXRsZXREaXJlY3RpdmV9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge2Zyb21FdmVudCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1R1aVByaW1pdGl2ZVRleHRmaWVsZH0gZnJvbSAnLi9wcmltaXRpdmUtdGV4dGZpZWxkLXR5cGVzJztcblxuY29uc3QgSUNPTl9QQURESU5HID0gMS43NTtcbmNvbnN0IElDT05fUEFERElOR19TID0gMS41O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1wcmltaXRpdmUtdGV4dGZpZWxkYCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vcHJpbWl0aXZlLXRleHRmaWVsZC50ZW1wbGF0ZS5odG1sYCxcbiAgICBzdHlsZVVybHM6IFtgLi9wcmltaXRpdmUtdGV4dGZpZWxkLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50KSxcbiAgICAgICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgICAgIE1PREVfUFJPVklERVIsXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICcoJC5kYXRhLW1vZGUuYXR0ciknOiBgbW9kZSRgLFxuICAgICAgICAnW2NsYXNzLl9hdXRvZmlsbGVkXSc6IGBhdXRvZmlsbGVkYCxcbiAgICAgICAgJ1tjbGFzcy5fbGFiZWwtb3V0c2lkZV0nOiBgY29udHJvbGxlci5sYWJlbE91dHNpZGVgLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlJbnRlcmFjdGl2ZVxuICAgIGltcGxlbWVudHMgVHVpUHJpbWl0aXZlVGV4dGZpZWxkXG57XG4gICAgQFZpZXdDaGlsZChgZm9jdXNhYmxlRWxlbWVudGApXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2FibGVFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBlZGl0YWJsZSA9IHRydWU7XG5cbiAgICAvKiogQGRlcHJlY2F0ZWQgdXNlIGB0dWlUZXh0ZmllbGRGaWxsZXJgIGZyb20ge0BsaW5rIFR1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGV9IGluc3RlYWQgKi9cbiAgICBASW5wdXQoYGZpbGxlcmApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB0ZXh0ZmllbGRGaWxsZXIgPSBgYDtcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkOlxuICAgICAqIHVzZSBgdHVpVGV4dGZpZWxkT3B0aW9uc1Byb3ZpZGVyKHtpY29uQ2xlYW5lcjogYHR1aUljb25DaGV2cm9uVXBgfSlgXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGljb25DbGVhbmVyID0gdGhpcy5vcHRpb25zLmljb25DbGVhbmVyO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLl9yZWFkb25seWApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICByZWFkT25seSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGludmFsaWQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgLyoqIEBkZXByZWNhdGVkIHVzZSBgdHVpVGV4dGZpZWxkUHJlZml4YCBmcm9tIHtAbGluayBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlfSBpbnN0ZWFkICovXG4gICAgQElucHV0KGBwcmVmaXhgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdGV4dGZpZWxkUHJlZml4ID0gYGA7XG5cbiAgICAvKiogQGRlcHJlY2F0ZWQgdXNlIGB0dWlUZXh0ZmllbGRQb3N0Zml4YCBmcm9tIHtAbGluayBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlfSBpbnN0ZWFkICovXG4gICAgQElucHV0KGBwb3N0Zml4YClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHRleHRmaWVsZFBvc3RmaXggPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB2YWx1ZSA9IGBgO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oUG9seW1vcnBoZXVzT3V0bGV0RGlyZWN0aXZlLCB7ZGVzY2VuZGFudHM6IHRydWV9KVxuICAgIHJlYWRvbmx5IGNvbnRlbnQ/OiBRdWVyeUxpc3Q8dW5rbm93bj47XG5cbiAgICBhdXRvZmlsbGVkID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfTU9ERSkgcmVhZG9ubHkgbW9kZSQ6IE9ic2VydmFibGU8VHVpQnJpZ2h0bmVzcyB8IG51bGw+LFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfQVBQRUFSQU5DRSkgcmVhZG9ubHkgYXBwZWFyYW5jZTogc3RyaW5nLFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSKVxuICAgICAgICByZWFkb25seSBjb250cm9sbGVyOiBUdWlUZXh0ZmllbGRDb250cm9sbGVyLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlKVxuICAgICAgICByZWFkb25seSBoaW50T3B0aW9uczogVHVpSGludE9wdGlvbnNEaXJlY3RpdmUgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfT1BUSU9OUylcbiAgICAgICAgcmVhZG9ubHkgb3B0aW9uczogVHVpVGV4dGZpZWxkT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIGdldCBwcmVmaXgoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dGZpZWxkUHJlZml4IHx8IHRoaXMuY29udHJvbGxlci5wcmVmaXg7XG4gICAgfVxuXG4gICAgZ2V0IHBvc3RmaXgoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dGZpZWxkUG9zdGZpeCB8fCB0aGlzLmNvbnRyb2xsZXIucG9zdGZpeDtcbiAgICB9XG5cbiAgICBnZXQgZmlsbGVyKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZEZpbGxlciB8fCB0aGlzLmNvbnRyb2xsZXIuZmlsbGVyO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgaWYgKHRoaXMuY29tcHV0ZWREaXNhYmxlZCB8fCAhdGhpcy5mb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuZm9jdXNhYmxlRWxlbWVudDtcblxuICAgICAgICByZXR1cm4gKG5hdGl2ZUVsZW1lbnQucHJldmlvdXNFbGVtZW50U2libGluZyB8fFxuICAgICAgICAgICAgbmF0aXZlRWxlbWVudCkgYXMgSFRNTElucHV0RWxlbWVudCB8IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc05hdGl2ZUZvY3VzZWRJbih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKGBhdHRyLmRhdGEtc2l6ZWApXG4gICAgZ2V0IHNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplUyB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuc2l6ZTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGNsYXNzLl9pbnZhbGlkYClcbiAgICBnZXQgY29tcHV0ZWRJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMucmVhZE9ubHkgJiYgIXRoaXMuZGlzYWJsZWQgJiYgdGhpcy5pbnZhbGlkO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2hpZGRlbmApXG4gICAgZ2V0IGlucHV0SGlkZGVuKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmNvbnRlbnQ/Lmxlbmd0aDtcbiAgICB9XG5cbiAgICBnZXQgaGFzVmFsdWUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0NsZWFuZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmNvbnRyb2xsZXIuY2xlYW5lciAmJlxuICAgICAgICAgICAgdGhpcy5oYXNWYWx1ZSAmJlxuICAgICAgICAgICAgIXRoaXMuY29tcHV0ZWREaXNhYmxlZCAmJlxuICAgICAgICAgICAgIXRoaXMucmVhZE9ubHlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgaGFzVG9vbHRpcCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5oaW50T3B0aW9ucz8uY29udGVudCAmJiAhdGhpcy5jb21wdXRlZERpc2FibGVkO1xuICAgIH1cblxuICAgIGdldCBoYXNDdXN0b21Db250ZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmNvbnRyb2xsZXIuY3VzdG9tQ29udGVudDtcbiAgICB9XG5cbiAgICBnZXQgc2hvd09ubHlQbGFjZWhvbGRlcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuZm9jdXNlZCAmJlxuICAgICAgICAgICAgdGhpcy5wbGFjZWhvbGRlclZpc2libGUgJiZcbiAgICAgICAgICAgICh0aGlzLnNpemUgPT09IGBzYCB8fCAodGhpcy5zaXplID09PSBgbWAgJiYgIXRoaXMucGxhY2Vob2xkZXJSYWlzYWJsZSkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IHBsYWNlaG9sZGVyVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgaGFzRGVjb3IgPVxuICAgICAgICAgICAgdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50Py5wbGFjZWhvbGRlciB8fCB0aGlzLnByZWZpeCB8fCB0aGlzLnBvc3RmaXg7XG4gICAgICAgIGNvbnN0IHNob3dEZWNvciA9IGhhc0RlY29yICYmICF0aGlzLnJlYWRPbmx5ICYmIHRoaXMuY29tcHV0ZWRGb2N1c2VkO1xuXG4gICAgICAgIHJldHVybiAhdGhpcy5oYXNWYWx1ZSAmJiAhc2hvd0RlY29yO1xuICAgIH1cblxuICAgIGdldCBoYXNQbGFjZWhvbGRlcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0aGlzLnNob3dPbmx5UGxhY2Vob2xkZXIgJiZcbiAgICAgICAgICAgICh0aGlzLnBsYWNlaG9sZGVyUmFpc2FibGUgfHwgdGhpcy5wbGFjZWhvbGRlclZpc2libGUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IHBsYWNlaG9sZGVyUmFpc2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5wbGFjZWhvbGRlclJhaXNhYmxlICYmXG4gICAgICAgICAgICAoKHRoaXMuY29tcHV0ZWRGb2N1c2VkICYmICF0aGlzLnJlYWRPbmx5KSB8fCB0aGlzLmhhc1ZhbHVlIHx8IHRoaXMuYXV0b2ZpbGxlZClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYHN0eWxlLi0tYm9yZGVyLXN0YXJ0LnJlbWApXG4gICAgZ2V0IGJvcmRlclN0YXJ0KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmljb25MZWZ0Q29udGVudCA/IHRoaXMuaWNvblBhZGRpbmdMZWZ0IDogMDtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYHN0eWxlLi0tYm9yZGVyLWVuZC5yZW1gKVxuICAgIGdldCBib3JkZXJFbmQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHR1aUdldEJvcmRlcihcbiAgICAgICAgICAgICEhdGhpcy5pY29uQ29udGVudCxcbiAgICAgICAgICAgIHRoaXMuaGFzQ2xlYW5lcixcbiAgICAgICAgICAgIHRoaXMuaGFzVG9vbHRpcCxcbiAgICAgICAgICAgIHRoaXMuaGFzQ3VzdG9tQ29udGVudCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgaWNvbkNvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PFR1aVNpemVMIHwgVHVpU2l6ZVM+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuaWNvbjtcbiAgICB9XG5cbiAgICBnZXQgaWNvbkxlZnRDb250ZW50KCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8XG4gICAgICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpU2l6ZUwgfCBUdWlTaXplUz5cbiAgICA+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5pY29uTGVmdDtcbiAgICB9XG5cbiAgICAvLyBTYWZhcmkgZXhwaXJhdGlvbiBkYXRlIGF1dG9maWxsIHdvcmthcm91bmRcbiAgICBnZXQgbmFtZSgpOiAnY2NleHBpcnl5ZWFyJyB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50Py5hdXRvY29tcGxldGUgPT09IGBjYy1leHBgXG4gICAgICAgICAgICA/IGBjY2V4cGlyeXllYXJgXG4gICAgICAgICAgICA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkSWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudD8uaWQgfHwgYGA7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgZm9jdXNpbmAsIFtgdHJ1ZWBdKVxuICAgIEBIb3N0TGlzdGVuZXIoYGZvY3Vzb3V0YCwgW2BmYWxzZWBdKVxuICAgIG9uRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldEluZGVudCQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgICAgICByZXR1cm4gZnJvbUV2ZW50KGVsZW1lbnQsIGBzY3JvbGxgKS5waXBlKG1hcCgoKSA9PiAtMSAqIGVsZW1lbnQuc2Nyb2xsTGVmdCkpO1xuICAgIH1cblxuICAgIGNsZWFyKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQudmFsdWUgPSBgYDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoYGApO1xuICAgIH1cblxuICAgIG9uTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVGb2N1c2FibGVFbGVtZW50fSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKCFuYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IGV2ZW50LnRhcmdldCA9PT0gbmF0aXZlRm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgbmF0aXZlRm9jdXNhYmxlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIG9uTW9kZWxDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHZhbHVlKTtcbiAgICB9XG5cbiAgICBvbkF1dG9maWxsZWQoYXV0b2ZpbGxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUF1dG9maWxsZWQoYXV0b2ZpbGxlZCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaWNvblBhZGRpbmdMZWZ0KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpemUgPT09IGBzYCA/IElDT05fUEFERElOR19TIDogSUNPTl9QQURESU5HO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHBsYWNlaG9sZGVyUmFpc2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpemUgIT09IGBzYCAmJiAhdGhpcy5jb250cm9sbGVyLmxhYmVsT3V0c2lkZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUF1dG9maWxsZWQoYXV0b2ZpbGxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5hdXRvZmlsbGVkID09PSBhdXRvZmlsbGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmF1dG9maWxsZWQgPSBhdXRvZmlsbGVkO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRlbnQ/LmNoYW5nZXMgfCBhc3luY1wiPjwvbmctY29udGFpbmVyPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpbnRPcHRpb25zPy5jaGFuZ2UkIHwgYXN5bmNcIj48L25nLWNvbnRhaW5lcj5cbjxkaXZcbiAgICB0dWlXcmFwcGVyXG4gICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX193cmFwcGVyXCJcbiAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2ZvY3VzXT1cImNvbXB1dGVkRm9jdXNlZFwiXG4gICAgW2hvdmVyXT1cInBzZXVkb0hvdmVyXCJcbiAgICBbYWN0aXZlXT1cInBzZXVkb0FjdGl2ZVwiXG4gICAgW2ludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbiAgICBbc3R5bGUuLS10ZXh0LWluZGVudC5weF09XCJkZWNvci5wcmUkIHwgYXN5bmNcIlxuICAgIChtb3VzZWRvd24pPVwib25Nb3VzZURvd24oJGV2ZW50KVwiXG4gICAgKGNsaWNrLnByZXZlbnQuc2lsZW50KT1cIigwKVwiXG4gICAgKHR1aUF1dG9maWxsZWRDaGFuZ2UpPVwib25BdXRvZmlsbGVkKCRldmVudClcIlxuPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImlucHV0XCI+PC9uZy1jb250ZW50PlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNlbGVjdFwiPjwvbmctY29udGVudD5cbiAgICA8aW5wdXRcbiAgICAgICAgI2ZvY3VzYWJsZUVsZW1lbnRcbiAgICAgICAgdHVpTWFza0FjY2Vzc29yXG4gICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktcHJpbWl0aXZlLXRleHRmaWVsZF9fbmF0aXZlLWlucHV0XCJcbiAgICAgICAgY2xhc3M9XCJ0LWlucHV0XCJcbiAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiY29tcHV0ZWREaXNhYmxlZCB8fCBudWxsXCJcbiAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImNvbXB1dGVkSW52YWxpZFwiXG4gICAgICAgIFtpZF09XCJpZFwiXG4gICAgICAgIFtyZWFkT25seV09XCJyZWFkT25seSB8fCAhZWRpdGFibGVcIlxuICAgICAgICBbdHVpRm9jdXNhYmxlXT1cImNvbXB1dGVkRm9jdXNhYmxlXCJcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbk1vZGVsQ2hhbmdlKCRldmVudClcIlxuICAgIC8+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cImlucHV0SGlkZGVuXCJcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX192YWx1ZVwiXG4gICAgICAgIGNsYXNzPVwidC1pbnB1dCB0LWlucHV0X3RlbXBsYXRlXCJcbiAgICA+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aUNvbnRlbnRcIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInQtY29udGVudFwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cImljb25MZWZ0Q29udGVudFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtaWNvbiB0LWljb25fbGVmdFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx0dWktc3ZnXG4gICAgICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImljb25MZWZ0Q29udGVudCBhcyBzcmM7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHNpemV9XCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInQtd3JhcHBlclwiPlxuICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJoYXNQbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX19wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1wbGFjZWhvbGRlcl9yYWlzZWRdPVwicGxhY2Vob2xkZXJSYWlzZWRcIlxuICAgICAgICAgICAgICAgIFtmb3JdPVwiY29tcHV0ZWRJZFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LXdyYXBwZXItdmFsdWUtZGVjb3JhdGlvblwiPlxuICAgICAgICAgICAgICAgIDx0dWktdmFsdWUtZGVjb3JhdGlvblxuICAgICAgICAgICAgICAgICAgICAjZGVjb3JcbiAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX192YWx1ZS1kZWNvcmF0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXZhbHVlLWRlY29yYXRpb25cIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC1oYXMtdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUudGV4dEluZGVudC5weF09XCJnZXRJbmRlbnQkKGZvY3VzYWJsZUVsZW1lbnQpIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgID48L3R1aS12YWx1ZS1kZWNvcmF0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cImhhc0N1c3RvbUNvbnRlbnRcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX19jdXN0b20tY29udGVudFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtY3VzdG9tLWNvbnRlbnRcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJjb250cm9sbGVyLmN1c3RvbUNvbnRlbnQgYXMgc3JjXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtY3VzdG9tLWljb25cIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c3BhblxuICAgICAgICAgICAgKm5nSWY9XCJoYXNDbGVhbmVyXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktcHJpbWl0aXZlLXRleHRmaWVsZF9fY2xlYW5lclwiXG4gICAgICAgICAgICBjbGFzcz1cInQtY2xlYW5lclwiXG4gICAgICAgICAgICAoY2xpY2suc3RvcCk9XCJjbGVhcigpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaWNvbkNsZWFuZXIgfHwgY29udHJvbGxlci5vcHRpb25zLmljb25DbGVhbmVyIGFzIHNyYzsgY29udGV4dDogeyRpbXBsaWNpdDogc2l6ZX1cIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHR1aS10b29sdGlwXG4gICAgICAgICAgICAqbmdJZj1cImhpbnRPcHRpb25zICYmIGhpbnRPcHRpb25zLmNvbnRlbnQgJiYgIWNvbXB1dGVkRGlzYWJsZWRcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX190b29sdGlwXCJcbiAgICAgICAgICAgIFtkZXNjcmliZUlkXT1cImNvbXB1dGVkSWRcIlxuICAgICAgICAgICAgW2NvbnRlbnRdPVwiaGludE9wdGlvbnMuY29udGVudFwiXG4gICAgICAgICAgICBbZGlyZWN0aW9uXT1cImhpbnRPcHRpb25zLmRpcmVjdGlvblwiXG4gICAgICAgICAgICBbYXBwZWFyYW5jZV09XCJoaW50T3B0aW9ucy5hcHBlYXJhbmNlXCJcbiAgICAgICAgICAgIFtzaG93RGVsYXldPVwiaGludE9wdGlvbnMuc2hvd0RlbGF5XCJcbiAgICAgICAgICAgIFtoaWRlRGVsYXldPVwiaGludE9wdGlvbnMuaGlkZURlbGF5XCJcbiAgICAgICAgPjwvdHVpLXRvb2x0aXA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiaWNvbkNvbnRlbnRcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWljb25cIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpY29uQ29udGVudCBhcyBzcmM7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHNpemV9XCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
314
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXRleHRmaWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcHJpbWl0aXZlLXRleHRmaWVsZC9wcmltaXRpdmUtdGV4dGZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUtdGV4dGZpZWxkL3ByaW1pdGl2ZS10ZXh0ZmllbGQudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBRU4sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsMEJBQTBCLEVBRTFCLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFDSCw2QkFBNkIsRUFDN0IscUJBQXFCLEVBQ3JCLGdDQUFnQyxHQUduQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3hELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsUUFBUSxFQUFFLHdCQUF3QixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFFekUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ2hFLE9BQU8sRUFBc0IsMkJBQTJCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRixPQUFPLEVBQUMsU0FBUyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFB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cG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlJbnRlcmFjdGl2ZSxcbiAgICB0dWlBc0ZvY3VzYWJsZUl0ZW1BY2Nlc3NvcixcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIHR1aUlzTmF0aXZlRm9jdXNlZEluLFxuICAgIHR1aVB1cmUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9oaW50JztcbmltcG9ydCB7XG4gICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVFVJX1RFWFRGSUVMRF9PUFRJT05TLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgVHVpVGV4dGZpZWxkT3B0aW9ucyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy90ZXh0ZmllbGQtY29udHJvbGxlcic7XG5pbXBvcnQge01PREVfUFJPVklERVJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Byb3ZpZGVycyc7XG5pbXBvcnQge1RVSV9NT0RFLCBUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge1R1aUJyaWdodG5lc3MsIFR1aVNpemVMLCBUdWlTaXplU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHt0dWlHZXRCb3JkZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50LCBQb2x5bW9ycGhldXNPdXRsZXREaXJlY3RpdmV9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge2Zyb21FdmVudCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1R1aVByaW1pdGl2ZVRleHRmaWVsZH0gZnJvbSAnLi9wcmltaXRpdmUtdGV4dGZpZWxkLXR5cGVzJztcblxuY29uc3QgSUNPTl9QQURESU5HID0gMS43NTtcbmNvbnN0IElDT05fUEFERElOR19TID0gMS41O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1wcmltaXRpdmUtdGV4dGZpZWxkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJpbWl0aXZlLXRleHRmaWVsZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wcmltaXRpdmUtdGV4dGZpZWxkLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50KSxcbiAgICAgICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgICAgIE1PREVfUFJPVklERVIsXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICcoJC5kYXRhLW1vZGUuYXR0ciknOiAnbW9kZSQnLFxuICAgICAgICAnW2NsYXNzLl9hdXRvZmlsbGVkXSc6ICdhdXRvZmlsbGVkJyxcbiAgICAgICAgJ1tjbGFzcy5fbGFiZWwtb3V0c2lkZV0nOiAnY29udHJvbGxlci5sYWJlbE91dHNpZGUnLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlJbnRlcmFjdGl2ZVxuICAgIGltcGxlbWVudHMgVHVpUHJpbWl0aXZlVGV4dGZpZWxkXG57XG4gICAgQFZpZXdDaGlsZCgnZm9jdXNhYmxlRWxlbWVudCcpXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2FibGVFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBlZGl0YWJsZSA9IHRydWU7XG5cbiAgICAvKiogQGRlcHJlY2F0ZWQgdXNlIGB0dWlUZXh0ZmllbGRGaWxsZXJgIGZyb20ge0BsaW5rIFR1aVRleHRmaWVsZENvbnRyb2xsZXJNb2R1bGV9IGluc3RlYWQgKi9cbiAgICBASW5wdXQoJ2ZpbGxlcicpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB0ZXh0ZmllbGRGaWxsZXIgPSAnJztcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkOlxuICAgICAqIHVzZSBgdHVpVGV4dGZpZWxkT3B0aW9uc1Byb3ZpZGVyKHtpY29uQ2xlYW5lcjogYHR1aUljb25DaGV2cm9uVXBgfSlgXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGljb25DbGVhbmVyID0gdGhpcy5vcHRpb25zLmljb25DbGVhbmVyO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9yZWFkb25seScpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICByZWFkT25seSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGludmFsaWQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgLyoqIEBkZXByZWNhdGVkIHVzZSBgdHVpVGV4dGZpZWxkUHJlZml4YCBmcm9tIHtAbGluayBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlfSBpbnN0ZWFkICovXG4gICAgQElucHV0KCdwcmVmaXgnKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgdGV4dGZpZWxkUHJlZml4ID0gJyc7XG5cbiAgICAvKiogQGRlcHJlY2F0ZWQgdXNlIGB0dWlUZXh0ZmllbGRQb3N0Zml4YCBmcm9tIHtAbGluayBUdWlUZXh0ZmllbGRDb250cm9sbGVyTW9kdWxlfSBpbnN0ZWFkICovXG4gICAgQElucHV0KCdwb3N0Zml4JylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHRleHRmaWVsZFBvc3RmaXggPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB2YWx1ZSA9ICcnO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oUG9seW1vcnBoZXVzT3V0bGV0RGlyZWN0aXZlLCB7ZGVzY2VuZGFudHM6IHRydWV9KVxuICAgIHJlYWRvbmx5IGNvbnRlbnQ/OiBRdWVyeUxpc3Q8dW5rbm93bj47XG5cbiAgICBhdXRvZmlsbGVkID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfTU9ERSkgcmVhZG9ubHkgbW9kZSQ6IE9ic2VydmFibGU8VHVpQnJpZ2h0bmVzcyB8IG51bGw+LFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfQVBQRUFSQU5DRSkgcmVhZG9ubHkgYXBwZWFyYW5jZTogc3RyaW5nLFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSKVxuICAgICAgICByZWFkb25seSBjb250cm9sbGVyOiBUdWlUZXh0ZmllbGRDb250cm9sbGVyLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlKVxuICAgICAgICByZWFkb25seSBoaW50T3B0aW9uczogVHVpSGludE9wdGlvbnNEaXJlY3RpdmUgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFRVSV9URVhURklFTERfT1BUSU9OUylcbiAgICAgICAgcmVhZG9ubHkgb3B0aW9uczogVHVpVGV4dGZpZWxkT3B0aW9ucyxcbiAgICAgICAgQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIGdldCBwcmVmaXgoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dGZpZWxkUHJlZml4IHx8IHRoaXMuY29udHJvbGxlci5wcmVmaXg7XG4gICAgfVxuXG4gICAgZ2V0IHBvc3RmaXgoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dGZpZWxkUG9zdGZpeCB8fCB0aGlzLmNvbnRyb2xsZXIucG9zdGZpeDtcbiAgICB9XG5cbiAgICBnZXQgZmlsbGVyKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZEZpbGxlciB8fCB0aGlzLmNvbnRyb2xsZXIuZmlsbGVyO1xuICAgIH1cblxuICAgIGdldCBuYXRpdmVGb2N1c2FibGVFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgaWYgKHRoaXMuY29tcHV0ZWREaXNhYmxlZCB8fCAhdGhpcy5mb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuZm9jdXNhYmxlRWxlbWVudDtcblxuICAgICAgICByZXR1cm4gKG5hdGl2ZUVsZW1lbnQucHJldmlvdXNFbGVtZW50U2libGluZyB8fFxuICAgICAgICAgICAgbmF0aXZlRWxlbWVudCkgYXMgSFRNTElucHV0RWxlbWVudCB8IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0dWlJc05hdGl2ZUZvY3VzZWRJbih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc2l6ZScpXG4gICAgZ2V0IHNpemUoKTogVHVpU2l6ZUwgfCBUdWlTaXplUyB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuc2l6ZTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9pbnZhbGlkJylcbiAgICBnZXQgY29tcHV0ZWRJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMucmVhZE9ubHkgJiYgIXRoaXMuZGlzYWJsZWQgJiYgdGhpcy5pbnZhbGlkO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2hpZGRlbicpXG4gICAgZ2V0IGlucHV0SGlkZGVuKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmNvbnRlbnQ/Lmxlbmd0aDtcbiAgICB9XG5cbiAgICBnZXQgaGFzVmFsdWUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0NsZWFuZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmNvbnRyb2xsZXIuY2xlYW5lciAmJlxuICAgICAgICAgICAgdGhpcy5oYXNWYWx1ZSAmJlxuICAgICAgICAgICAgIXRoaXMuY29tcHV0ZWREaXNhYmxlZCAmJlxuICAgICAgICAgICAgIXRoaXMucmVhZE9ubHlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgaGFzVG9vbHRpcCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5oaW50T3B0aW9ucz8uY29udGVudCAmJiAhdGhpcy5jb21wdXRlZERpc2FibGVkO1xuICAgIH1cblxuICAgIGdldCBoYXNDdXN0b21Db250ZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmNvbnRyb2xsZXIuY3VzdG9tQ29udGVudDtcbiAgICB9XG5cbiAgICBnZXQgc2hvd09ubHlQbGFjZWhvbGRlcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuZm9jdXNlZCAmJlxuICAgICAgICAgICAgdGhpcy5wbGFjZWhvbGRlclZpc2libGUgJiZcbiAgICAgICAgICAgICh0aGlzLnNpemUgPT09ICdzJyB8fCAodGhpcy5zaXplID09PSAnbScgJiYgIXRoaXMucGxhY2Vob2xkZXJSYWlzYWJsZSkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IHBsYWNlaG9sZGVyVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgaGFzRGVjb3IgPVxuICAgICAgICAgICAgdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50Py5wbGFjZWhvbGRlciB8fCB0aGlzLnByZWZpeCB8fCB0aGlzLnBvc3RmaXg7XG4gICAgICAgIGNvbnN0IHNob3dEZWNvciA9IGhhc0RlY29yICYmICF0aGlzLnJlYWRPbmx5ICYmIHRoaXMuY29tcHV0ZWRGb2N1c2VkO1xuXG4gICAgICAgIHJldHVybiAhdGhpcy5oYXNWYWx1ZSAmJiAhc2hvd0RlY29yO1xuICAgIH1cblxuICAgIGdldCBoYXNQbGFjZWhvbGRlcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0aGlzLnNob3dPbmx5UGxhY2Vob2xkZXIgJiZcbiAgICAgICAgICAgICh0aGlzLnBsYWNlaG9sZGVyUmFpc2FibGUgfHwgdGhpcy5wbGFjZWhvbGRlclZpc2libGUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IHBsYWNlaG9sZGVyUmFpc2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5wbGFjZWhvbGRlclJhaXNhYmxlICYmXG4gICAgICAgICAgICAoKHRoaXMuY29tcHV0ZWRGb2N1c2VkICYmICF0aGlzLnJlYWRPbmx5KSB8fCB0aGlzLmhhc1ZhbHVlIHx8IHRoaXMuYXV0b2ZpbGxlZClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0tYm9yZGVyLXN0YXJ0LnJlbScpXG4gICAgZ2V0IGJvcmRlclN0YXJ0KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmljb25MZWZ0Q29udGVudCA/IHRoaXMuaWNvblBhZGRpbmdMZWZ0IDogMDtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0tYm9yZGVyLWVuZC5yZW0nKVxuICAgIGdldCBib3JkZXJFbmQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHR1aUdldEJvcmRlcihcbiAgICAgICAgICAgICEhdGhpcy5pY29uQ29udGVudCxcbiAgICAgICAgICAgIHRoaXMuaGFzQ2xlYW5lcixcbiAgICAgICAgICAgIHRoaXMuaGFzVG9vbHRpcCxcbiAgICAgICAgICAgIHRoaXMuaGFzQ3VzdG9tQ29udGVudCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgaWNvbkNvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PFR1aVNpemVMIHwgVHVpU2l6ZVM+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xsZXIuaWNvbjtcbiAgICB9XG5cbiAgICBnZXQgaWNvbkxlZnRDb250ZW50KCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8XG4gICAgICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpU2l6ZUwgfCBUdWlTaXplUz5cbiAgICA+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5pY29uTGVmdDtcbiAgICB9XG5cbiAgICAvLyBTYWZhcmkgZXhwaXJhdGlvbiBkYXRlIGF1dG9maWxsIHdvcmthcm91bmRcbiAgICBnZXQgbmFtZSgpOiAnY2NleHBpcnl5ZWFyJyB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50Py5hdXRvY29tcGxldGUgPT09ICdjYy1leHAnXG4gICAgICAgICAgICA/ICdjY2V4cGlyeXllYXInXG4gICAgICAgICAgICA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkSWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudD8uaWQgfHwgJyc7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXNpbicsIFsndHJ1ZSddKVxuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgWydmYWxzZSddKVxuICAgIG9uRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldEluZGVudCQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgICAgICByZXR1cm4gZnJvbUV2ZW50KGVsZW1lbnQsICdzY3JvbGwnKS5waXBlKG1hcCgoKSA9PiAtMSAqIGVsZW1lbnQuc2Nyb2xsTGVmdCkpO1xuICAgIH1cblxuICAgIGNsZWFyKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoJycpO1xuICAgIH1cblxuICAgIG9uTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVGb2N1c2FibGVFbGVtZW50fSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKCFuYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IGV2ZW50LnRhcmdldCA9PT0gbmF0aXZlRm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgbmF0aXZlRm9jdXNhYmxlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIG9uTW9kZWxDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHZhbHVlKTtcbiAgICB9XG5cbiAgICBvbkF1dG9maWxsZWQoYXV0b2ZpbGxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUF1dG9maWxsZWQoYXV0b2ZpbGxlZCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaWNvblBhZGRpbmdMZWZ0KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpemUgPT09ICdzJyA/IElDT05fUEFERElOR19TIDogSUNPTl9QQURESU5HO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHBsYWNlaG9sZGVyUmFpc2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpemUgIT09ICdzJyAmJiAhdGhpcy5jb250cm9sbGVyLmxhYmVsT3V0c2lkZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUF1dG9maWxsZWQoYXV0b2ZpbGxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5hdXRvZmlsbGVkID09PSBhdXRvZmlsbGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmF1dG9maWxsZWQgPSBhdXRvZmlsbGVkO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRlbnQ/LmNoYW5nZXMgfCBhc3luY1wiPjwvbmctY29udGFpbmVyPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpbnRPcHRpb25zPy5jaGFuZ2UkIHwgYXN5bmNcIj48L25nLWNvbnRhaW5lcj5cbjxkaXZcbiAgICB0dWlXcmFwcGVyXG4gICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX193cmFwcGVyXCJcbiAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2ZvY3VzXT1cImNvbXB1dGVkRm9jdXNlZFwiXG4gICAgW2hvdmVyXT1cInBzZXVkb0hvdmVyXCJcbiAgICBbYWN0aXZlXT1cInBzZXVkb0FjdGl2ZVwiXG4gICAgW2ludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbiAgICBbc3R5bGUuLS10ZXh0LWluZGVudC5weF09XCJkZWNvci5wcmUkIHwgYXN5bmNcIlxuICAgIChtb3VzZWRvd24pPVwib25Nb3VzZURvd24oJGV2ZW50KVwiXG4gICAgKGNsaWNrLnByZXZlbnQuc2lsZW50KT1cIigwKVwiXG4gICAgKHR1aUF1dG9maWxsZWRDaGFuZ2UpPVwib25BdXRvZmlsbGVkKCRldmVudClcIlxuPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImlucHV0XCI+PC9uZy1jb250ZW50PlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNlbGVjdFwiPjwvbmctY29udGVudD5cbiAgICA8aW5wdXRcbiAgICAgICAgI2ZvY3VzYWJsZUVsZW1lbnRcbiAgICAgICAgdHVpTWFza0FjY2Vzc29yXG4gICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktcHJpbWl0aXZlLXRleHRmaWVsZF9fbmF0aXZlLWlucHV0XCJcbiAgICAgICAgY2xhc3M9XCJ0LWlucHV0XCJcbiAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiY29tcHV0ZWREaXNhYmxlZCB8fCBudWxsXCJcbiAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImNvbXB1dGVkSW52YWxpZFwiXG4gICAgICAgIFtpZF09XCJpZFwiXG4gICAgICAgIFtyZWFkT25seV09XCJyZWFkT25seSB8fCAhZWRpdGFibGVcIlxuICAgICAgICBbdHVpRm9jdXNhYmxlXT1cImNvbXB1dGVkRm9jdXNhYmxlXCJcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbk1vZGVsQ2hhbmdlKCRldmVudClcIlxuICAgIC8+XG4gICAgPGRpdlxuICAgICAgICAqbmdJZj1cImlucHV0SGlkZGVuXCJcbiAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX192YWx1ZVwiXG4gICAgICAgIGNsYXNzPVwidC1pbnB1dCB0LWlucHV0X3RlbXBsYXRlXCJcbiAgICA+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aUNvbnRlbnRcIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInQtY29udGVudFwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cImljb25MZWZ0Q29udGVudFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtaWNvbiB0LWljb25fbGVmdFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDx0dWktc3ZnXG4gICAgICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImljb25MZWZ0Q29udGVudCBhcyBzcmM7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHNpemV9XCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInQtd3JhcHBlclwiPlxuICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJoYXNQbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX19wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MudC1wbGFjZWhvbGRlcl9yYWlzZWRdPVwicGxhY2Vob2xkZXJSYWlzZWRcIlxuICAgICAgICAgICAgICAgIFtmb3JdPVwiY29tcHV0ZWRJZFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LXdyYXBwZXItdmFsdWUtZGVjb3JhdGlvblwiPlxuICAgICAgICAgICAgICAgIDx0dWktdmFsdWUtZGVjb3JhdGlvblxuICAgICAgICAgICAgICAgICAgICAjZGVjb3JcbiAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX192YWx1ZS1kZWNvcmF0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXZhbHVlLWRlY29yYXRpb25cIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC1oYXMtdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUudGV4dEluZGVudC5weF09XCJnZXRJbmRlbnQkKGZvY3VzYWJsZUVsZW1lbnQpIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgID48L3R1aS12YWx1ZS1kZWNvcmF0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cImhhc0N1c3RvbUNvbnRlbnRcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX19jdXN0b20tY29udGVudFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtY3VzdG9tLWNvbnRlbnRcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJjb250cm9sbGVyLmN1c3RvbUNvbnRlbnQgYXMgc3JjXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtY3VzdG9tLWljb25cIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c3BhblxuICAgICAgICAgICAgKm5nSWY9XCJoYXNDbGVhbmVyXCJcbiAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktcHJpbWl0aXZlLXRleHRmaWVsZF9fY2xlYW5lclwiXG4gICAgICAgICAgICBjbGFzcz1cInQtY2xlYW5lclwiXG4gICAgICAgICAgICAoY2xpY2suc3RvcCk9XCJjbGVhcigpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaWNvbkNsZWFuZXIgfHwgY29udHJvbGxlci5vcHRpb25zLmljb25DbGVhbmVyIGFzIHNyYzsgY29udGV4dDogeyRpbXBsaWNpdDogc2l6ZX1cIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHR1aS10b29sdGlwXG4gICAgICAgICAgICAqbmdJZj1cImhpbnRPcHRpb25zICYmIGhpbnRPcHRpb25zLmNvbnRlbnQgJiYgIWNvbXB1dGVkRGlzYWJsZWRcIlxuICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1wcmltaXRpdmUtdGV4dGZpZWxkX190b29sdGlwXCJcbiAgICAgICAgICAgIFtkZXNjcmliZUlkXT1cImNvbXB1dGVkSWRcIlxuICAgICAgICAgICAgW2NvbnRlbnRdPVwiaGludE9wdGlvbnMuY29udGVudFwiXG4gICAgICAgICAgICBbZGlyZWN0aW9uXT1cImhpbnRPcHRpb25zLmRpcmVjdGlvblwiXG4gICAgICAgICAgICBbYXBwZWFyYW5jZV09XCJoaW50T3B0aW9ucy5hcHBlYXJhbmNlXCJcbiAgICAgICAgICAgIFtzaG93RGVsYXldPVwiaGludE9wdGlvbnMuc2hvd0RlbGF5XCJcbiAgICAgICAgICAgIFtoaWRlRGVsYXldPVwiaGludE9wdGlvbnMuaGlkZURlbGF5XCJcbiAgICAgICAgPjwvdHVpLXRvb2x0aXA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiaWNvbkNvbnRlbnRcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0LWljb25cIlxuICAgICAgICA+XG4gICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpY29uQ29udGVudCBhcyBzcmM7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHNpemV9XCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -26,11 +26,11 @@ TuiPrimitiveTextfieldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPrimitiveTextfieldDirective, decorators: [{
27
27
  type: Directive,
28
28
  args: [{
29
- selector: `tui-primitive-textfield`,
29
+ selector: 'tui-primitive-textfield',
30
30
  providers: [tuiAsTextfieldHost(TuiPrimitiveTextfieldDirective)],
31
31
  }]
32
32
  }], ctorParameters: function () { return [{ type: i1.TuiPrimitiveTextfieldComponent, decorators: [{
33
33
  type: Inject,
34
34
  args: [TuiPrimitiveTextfieldComponent]
35
35
  }] }]; } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXRleHRmaWVsZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcHJpbWl0aXZlLXRleHRmaWVsZC9wcmltaXRpdmUtdGV4dGZpZWxkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVoRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RCxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBTS9FLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSx3QkFBNkI7SUFDN0UsWUFFcUIsU0FBeUM7UUFFMUQ7Ozs7V0FJRztRQUNILEtBQUssQ0FBQyxTQUFtRCxDQUFDLENBQUM7UUFQMUMsY0FBUyxHQUFULFNBQVMsQ0FBZ0M7SUFROUQsQ0FBQztJQUVELElBQWEsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7SUFDL0QsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFhO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7OzRIQW5CUSw4QkFBOEIsa0JBRTNCLDhCQUE4QjtnSEFGakMsOEJBQThCLGtEQUY1QixDQUFDLGtCQUFrQixDQUFDLDhCQUE4QixDQUFDLENBQUM7NEZBRXRELDhCQUE4QjtrQkFKMUMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsZ0NBQWdDLENBQUM7aUJBQ2xFOzswQkFHUSxNQUFNOzJCQUFDLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aUNvbnRyb2x9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aVRleHRmaWVsZEhvc3R9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7dHVpQXNUZXh0ZmllbGRIb3N0fSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuXG5pbXBvcnQge1R1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudH0gZnJvbSAnLi9wcmltaXRpdmUtdGV4dGZpZWxkLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgdHVpLXByaW1pdGl2ZS10ZXh0ZmllbGRgLFxuICAgIHByb3ZpZGVyczogW3R1aUFzVGV4dGZpZWxkSG9zdChUdWlQcmltaXRpdmVUZXh0ZmllbGREaXJlY3RpdmUpXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHJpbWl0aXZlVGV4dGZpZWxkRGlyZWN0aXZlIGV4dGVuZHMgQWJzdHJhY3RUdWlUZXh0ZmllbGRIb3N0PGFueT4ge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0ZXh0ZmllbGQ6IFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudCxcbiAgICApIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudCBzYXRpc2ZpZXMgYWxsIHJlcXVpcmVkIHBhcnRzIG9mXG4gICAgICAgICAqIEFic3RyYWN0VHVpQ29udHJvbCBpbnRlcmZhY2UuIEEgbmV3IGludGVyZmFjZSBpcyBub3QgaW50cm9kdWNlZFxuICAgICAgICAgKiBzbyBBYnN0cmFjdFR1aUNvbnRyb2wgaXMgYXV0b21hdGljYWxseSBpbmplY3RlZCBmb3IgYWxsIG90aGVyIGNvbnRyb2xzLlxuICAgICAgICAgKi9cbiAgICAgICAgc3VwZXIodGV4dGZpZWxkIGFzIHVua25vd24gYXMgQWJzdHJhY3RUdWlDb250cm9sPHVua25vd24+KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBnZXQgcmVhZE9ubHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZC5yZWFkT25seSB8fCAhdGhpcy50ZXh0ZmllbGQuZWRpdGFibGU7XG4gICAgfVxuXG4gICAgb25WYWx1ZUNoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGV4dGZpZWxkLm9uTW9kZWxDaGFuZ2UodmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXRleHRmaWVsZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcHJpbWl0aXZlLXRleHRmaWVsZC9wcmltaXRpdmUtdGV4dGZpZWxkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVoRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RCxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBTS9FLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSx3QkFBNkI7SUFDN0UsWUFFcUIsU0FBeUM7UUFFMUQ7Ozs7V0FJRztRQUNILEtBQUssQ0FBQyxTQUFtRCxDQUFDLENBQUM7UUFQMUMsY0FBUyxHQUFULFNBQVMsQ0FBZ0M7SUFROUQsQ0FBQztJQUVELElBQWEsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7SUFDL0QsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFhO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7OzRIQW5CUSw4QkFBOEIsa0JBRTNCLDhCQUE4QjtnSEFGakMsOEJBQThCLGtEQUY1QixDQUFDLGtCQUFrQixDQUFDLDhCQUE4QixDQUFDLENBQUM7NEZBRXRELDhCQUE4QjtrQkFKMUMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsZ0NBQWdDLENBQUM7aUJBQ2xFOzswQkFHUSxNQUFNOzJCQUFDLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aUNvbnRyb2x9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aVRleHRmaWVsZEhvc3R9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7dHVpQXNUZXh0ZmllbGRIb3N0fSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuXG5pbXBvcnQge1R1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudH0gZnJvbSAnLi9wcmltaXRpdmUtdGV4dGZpZWxkLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAndHVpLXByaW1pdGl2ZS10ZXh0ZmllbGQnLFxuICAgIHByb3ZpZGVyczogW3R1aUFzVGV4dGZpZWxkSG9zdChUdWlQcmltaXRpdmVUZXh0ZmllbGREaXJlY3RpdmUpXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHJpbWl0aXZlVGV4dGZpZWxkRGlyZWN0aXZlIGV4dGVuZHMgQWJzdHJhY3RUdWlUZXh0ZmllbGRIb3N0PGFueT4ge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0ZXh0ZmllbGQ6IFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudCxcbiAgICApIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudCBzYXRpc2ZpZXMgYWxsIHJlcXVpcmVkIHBhcnRzIG9mXG4gICAgICAgICAqIEFic3RyYWN0VHVpQ29udHJvbCBpbnRlcmZhY2UuIEEgbmV3IGludGVyZmFjZSBpcyBub3QgaW50cm9kdWNlZFxuICAgICAgICAgKiBzbyBBYnN0cmFjdFR1aUNvbnRyb2wgaXMgYXV0b21hdGljYWxseSBpbmplY3RlZCBmb3IgYWxsIG90aGVyIGNvbnRyb2xzLlxuICAgICAgICAgKi9cbiAgICAgICAgc3VwZXIodGV4dGZpZWxkIGFzIHVua25vd24gYXMgQWJzdHJhY3RUdWlDb250cm9sPHVua25vd24+KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBnZXQgcmVhZE9ubHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZC5yZWFkT25seSB8fCAhdGhpcy50ZXh0ZmllbGQuZWRpdGFibGU7XG4gICAgfVxuXG4gICAgb25WYWx1ZUNoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGV4dGZpZWxkLm9uTW9kZWxDaGFuZ2UodmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==
@@ -18,23 +18,23 @@ export class TuiTextfieldComponent {
18
18
  }
19
19
  }
20
20
  TuiTextfieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiTextfieldComponent, deps: [{ token: TUI_TEXTFIELD_HOST }, { token: TUI_TEXTFIELD_WATCHED_CONTROLLER }, { token: ElementRef }, { token: TuiIdService }], target: i0.ɵɵFactoryTarget.Component });
21
- TuiTextfieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiTextfieldComponent, selector: "input[tuiTextfield], textarea[tuiTextfield]", host: { attributes: { "type": "text" }, listeners: { "input": "host.onValueChange($event.target.value)" }, properties: { "attr.aria-invalid": "host.invalid", "attr.disabled": "host.disabled || null", "tabIndex": "host.focusable ? 0 : -1", "readOnly": "host.readOnly", "value": "host.value", "id": "this.id" } }, providers: [TEXTFIELD_CONTROLLER_PROVIDER], ngImport: i0, template: ``, isInline: true, styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}:host:-webkit-autofill,:host:-webkit-autofill:hover,:host:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}:host[data-mode=onDark] :host:-webkit-autofill,:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill,:host :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill,:host[data-mode=onDark] :host:-webkit-autofill:hover,:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:hover,:host :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:hover,:host[data-mode=onDark] :host:-webkit-autofill:focus,:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:focus,:host :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}:host[data-size=s] :host,:host :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),:host :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=l] :host,:host :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),:host :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled :host,:host :host-context(tui-primitive-textfield._disabled),:host :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) :host,:host :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) :host:-webkit-autofill+.t-content .t-placeholder,:host :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) :host,:host :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.125rem}:host[data-size=m]:not(._label-outside) :host:-webkit-autofill+.t-content .t-placeholder,:host :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input:host,:host :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}:host::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}:host::placeholder{color:var(--tui-text-03);opacity:0}:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"])::-ms-input-placeholder,:host :host-context(tui-text-area[data-mode=\"onDark\"])::-ms-input-placeholder{color:var(--tui-text-03-night)}:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"])::placeholder,:host :host-context(tui-text-area[data-mode=\"onDark\"])::placeholder{color:var(--tui-text-03-night)}:host :host-context(tui-primitive-textfield._focused:not(._readonly))::-ms-input-placeholder,:host :host-context(tui-text-area._focused:not(._readonly))::-ms-input-placeholder{opacity:1}:host :host-context(tui-primitive-textfield._focused:not(._readonly))::placeholder,:host :host-context(tui-text-area._focused:not(._readonly))::placeholder{opacity:1}:host::-webkit-caps-lock-indicator,:host::-webkit-contacts-auto-fill-button,:host::-webkit-credit-card-auto-fill-button,:host::-webkit-credentials-auto-fill-button,:host::-webkit-strong-password-auto-fill-button{content:none!important;position:absolute;left:-62.4375rem;top:-62.4375rem;z-index:-999;display:none!important;background:transparent!important;pointer-events:none!important}textarea:host{white-space:normal}textarea:host :host-context(tui-text-area._ios){padding-left:.8125rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21
+ TuiTextfieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiTextfieldComponent, selector: "input[tuiTextfield], textarea[tuiTextfield]", host: { attributes: { "type": "text" }, listeners: { "input": "host.onValueChange($event.target.value)" }, properties: { "attr.aria-invalid": "host.invalid", "attr.disabled": "host.disabled || null", "tabIndex": "host.focusable ? 0 : -1", "readOnly": "host.readOnly", "value": "host.value", "id": "this.id" } }, providers: [TEXTFIELD_CONTROLLER_PROVIDER], ngImport: i0, template: '', isInline: true, styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:var(--border-start, 0);border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}:host:-webkit-autofill,:host:-webkit-autofill:hover,:host:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}:host[data-mode=onDark] :host:-webkit-autofill,:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill,:host :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill,:host[data-mode=onDark] :host:-webkit-autofill:hover,:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:hover,:host :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:hover,:host[data-mode=onDark] :host:-webkit-autofill:focus,:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:focus,:host :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}:host[data-size=s] :host,:host :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),:host :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=l] :host,:host :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),:host :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled :host,:host :host-context(tui-primitive-textfield._disabled),:host :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) :host,:host :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) :host:-webkit-autofill+.t-content .t-placeholder,:host :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) :host,:host :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.125rem}:host[data-size=m]:not(._label-outside) :host:-webkit-autofill+.t-content .t-placeholder,:host :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input:host,:host :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}:host::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}:host::placeholder{color:var(--tui-text-03);opacity:0}:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"])::-ms-input-placeholder,:host :host-context(tui-text-area[data-mode=\"onDark\"])::-ms-input-placeholder{color:var(--tui-text-03-night)}:host :host-context(tui-primitive-textfield[data-mode=\"onDark\"])::placeholder,:host :host-context(tui-text-area[data-mode=\"onDark\"])::placeholder{color:var(--tui-text-03-night)}:host :host-context(tui-primitive-textfield._focused:not(._readonly))::-ms-input-placeholder,:host :host-context(tui-text-area._focused:not(._readonly))::-ms-input-placeholder{opacity:1}:host :host-context(tui-primitive-textfield._focused:not(._readonly))::placeholder,:host :host-context(tui-text-area._focused:not(._readonly))::placeholder{opacity:1}:host::-webkit-caps-lock-indicator,:host::-webkit-contacts-auto-fill-button,:host::-webkit-credit-card-auto-fill-button,:host::-webkit-credentials-auto-fill-button,:host::-webkit-strong-password-auto-fill-button{content:none!important;position:absolute;left:-62.4375rem;top:-62.4375rem;z-index:-999;display:none!important;background:transparent!important;pointer-events:none!important}textarea:host{white-space:normal}textarea:host :host-context(tui-text-area._ios){padding-left:.8125rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
22
22
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiTextfieldComponent, decorators: [{
23
23
  type: Component,
24
24
  args: [{
25
- selector: `input[tuiTextfield], textarea[tuiTextfield]`,
26
- template: ``,
25
+ selector: 'input[tuiTextfield], textarea[tuiTextfield]',
26
+ template: '',
27
27
  providers: [TEXTFIELD_CONTROLLER_PROVIDER],
28
28
  host: {
29
- type: `text`,
30
- '[attr.aria-invalid]': `host.invalid`,
31
- '[attr.disabled]': `host.disabled || null`,
32
- '[tabIndex]': `host.focusable ? 0 : -1`,
33
- '[readOnly]': `host.readOnly`,
34
- '[value]': `host.value`,
35
- '(input)': `host.onValueChange($event.target.value)`,
29
+ type: 'text',
30
+ '[attr.aria-invalid]': 'host.invalid',
31
+ '[attr.disabled]': 'host.disabled || null',
32
+ '[tabIndex]': 'host.focusable ? 0 : -1',
33
+ '[readOnly]': 'host.readOnly',
34
+ '[value]': 'host.value',
35
+ '(input)': 'host.onValueChange($event.target.value)',
36
36
  },
37
- styleUrls: [`./textfield.style.less`],
37
+ styleUrls: ['./textfield.style.less'],
38
38
  changeDetection: ChangeDetectionStrategy.OnPush,
39
39
  }]
40
40
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -51,6 +51,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
51
51
  args: [TuiIdService]
52
52
  }] }]; }, propDecorators: { id: [{
53
53
  type: HostBinding,
54
- args: [`id`]
54
+ args: ['id']
55
55
  }] } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUtdGV4dGZpZWxkL3RleHRmaWVsZC90ZXh0ZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUNILDZCQUE2QixFQUM3QixnQ0FBZ0MsR0FFbkMsTUFBTSwyQkFBMkIsQ0FBQztBQUVuQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQWtCekQsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixZQUN5QyxJQUFzQixFQUVsRCxVQUFrQyxFQUNOLFVBQXdDLEVBRTVELFNBQXVCO1FBTEgsU0FBSSxHQUFKLElBQUksQ0FBa0I7UUFFbEQsZUFBVSxHQUFWLFVBQVUsQ0FBd0I7UUFDTixlQUFVLEdBQVYsVUFBVSxDQUE4QjtRQUU1RCxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBRXhDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELElBQ0ksRUFBRTtRQUNGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDekUsQ0FBQzs7bUhBZlEscUJBQXFCLGtCQUVsQixrQkFBa0IsYUFDbEIsZ0NBQWdDLGFBRWhDLFVBQVUsYUFDVixZQUFZO3VHQU5mLHFCQUFxQiw4WEFibkIsQ0FBQyw2QkFBNkIsQ0FBQywwQkFEaEMsRUFBRTs0RkFjSCxxQkFBcUI7a0JBaEJqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSw2Q0FBNkM7b0JBQ3ZELFFBQVEsRUFBRSxFQUFFO29CQUNaLFNBQVMsRUFBRSxDQUFDLDZCQUE2QixDQUFDO29CQUMxQyxJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLE1BQU07d0JBQ1oscUJBQXFCLEVBQUUsY0FBYzt3QkFDckMsaUJBQWlCLEVBQUUsdUJBQXVCO3dCQUMxQyxZQUFZLEVBQUUseUJBQXlCO3dCQUN2QyxZQUFZLEVBQUUsZUFBZTt3QkFDN0IsU0FBUyxFQUFFLFlBQVk7d0JBQ3ZCLFNBQVMsRUFBRSx5Q0FBeUM7cUJBQ3ZEO29CQUNELFNBQVMsRUFBRSxDQUFDLHdCQUF3QixDQUFDO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7OzBCQUdRLE1BQU07MkJBQUMsa0JBQWtCOzswQkFDekIsTUFBTTsyQkFBQyxnQ0FBZ0M7OzBCQUV2QyxNQUFNOzJCQUFDLFVBQVU7OzBCQUNqQixNQUFNOzJCQUFDLFlBQVk7NENBT3BCLEVBQUU7c0JBREwsV0FBVzt1QkFBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlJZFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBURVhURklFTERfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBUVUlfVEVYVEZJRUxEX1dBVENIRURfQ09OVFJPTExFUixcbiAgICBUdWlUZXh0ZmllbGRDb250cm9sbGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzJztcbmltcG9ydCB7VHVpVGV4dGZpZWxkSG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9URVhURklFTERfSE9TVH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGBpbnB1dFt0dWlUZXh0ZmllbGRdLCB0ZXh0YXJlYVt0dWlUZXh0ZmllbGRdYCxcbiAgICB0ZW1wbGF0ZTogYGAsXG4gICAgcHJvdmlkZXJzOiBbVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVJdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgdHlwZTogYHRleHRgLFxuICAgICAgICAnW2F0dHIuYXJpYS1pbnZhbGlkXSc6IGBob3N0LmludmFsaWRgLFxuICAgICAgICAnW2F0dHIuZGlzYWJsZWRdJzogYGhvc3QuZGlzYWJsZWQgfHwgbnVsbGAsXG4gICAgICAgICdbdGFiSW5kZXhdJzogYGhvc3QuZm9jdXNhYmxlID8gMCA6IC0xYCxcbiAgICAgICAgJ1tyZWFkT25seV0nOiBgaG9zdC5yZWFkT25seWAsXG4gICAgICAgICdbdmFsdWVdJzogYGhvc3QudmFsdWVgLFxuICAgICAgICAnKGlucHV0KSc6IGBob3N0Lm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnRhcmdldC52YWx1ZSlgLFxuICAgIH0sXG4gICAgc3R5bGVVcmxzOiBbYC4vdGV4dGZpZWxkLnN0eWxlLmxlc3NgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGV4dGZpZWxkQ29tcG9uZW50IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX0hPU1QpIHJlYWRvbmx5IGhvc3Q6IFR1aVRleHRmaWVsZEhvc3QsXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFR1aUlkU2VydmljZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpZFNlcnZpY2U6IFR1aUlkU2VydmljZSxcbiAgICApIHtcbiAgICAgICAgdGhpcy5ob3N0LnByb2Nlc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgaWRgKVxuICAgIGdldCBpZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaWQgfHwgdGhpcy5pZFNlcnZpY2UuZ2VuZXJhdGUoKTtcbiAgICB9XG59XG4iXX0=
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUtdGV4dGZpZWxkL3RleHRmaWVsZC90ZXh0ZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUNILDZCQUE2QixFQUM3QixnQ0FBZ0MsR0FFbkMsTUFBTSwyQkFBMkIsQ0FBQztBQUVuQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQWtCekQsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixZQUN5QyxJQUFzQixFQUVsRCxVQUFrQyxFQUNOLFVBQXdDLEVBRTVELFNBQXVCO1FBTEgsU0FBSSxHQUFKLElBQUksQ0FBa0I7UUFFbEQsZUFBVSxHQUFWLFVBQVUsQ0FBd0I7UUFDTixlQUFVLEdBQVYsVUFBVSxDQUE4QjtRQUU1RCxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBRXhDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELElBQ0ksRUFBRTtRQUNGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDekUsQ0FBQzs7bUhBZlEscUJBQXFCLGtCQUVsQixrQkFBa0IsYUFDbEIsZ0NBQWdDLGFBRWhDLFVBQVUsYUFDVixZQUFZO3VHQU5mLHFCQUFxQiw4WEFibkIsQ0FBQyw2QkFBNkIsQ0FBQywwQkFEaEMsRUFBRTs0RkFjSCxxQkFBcUI7a0JBaEJqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSw2Q0FBNkM7b0JBQ3ZELFFBQVEsRUFBRSxFQUFFO29CQUNaLFNBQVMsRUFBRSxDQUFDLDZCQUE2QixDQUFDO29CQUMxQyxJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLE1BQU07d0JBQ1oscUJBQXFCLEVBQUUsY0FBYzt3QkFDckMsaUJBQWlCLEVBQUUsdUJBQXVCO3dCQUMxQyxZQUFZLEVBQUUseUJBQXlCO3dCQUN2QyxZQUFZLEVBQUUsZUFBZTt3QkFDN0IsU0FBUyxFQUFFLFlBQVk7d0JBQ3ZCLFNBQVMsRUFBRSx5Q0FBeUM7cUJBQ3ZEO29CQUNELFNBQVMsRUFBRSxDQUFDLHdCQUF3QixDQUFDO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7OzBCQUdRLE1BQU07MkJBQUMsa0JBQWtCOzswQkFDekIsTUFBTTsyQkFBQyxnQ0FBZ0M7OzBCQUV2QyxNQUFNOzJCQUFDLFVBQVU7OzBCQUNqQixNQUFNOzJCQUFDLFlBQVk7NENBT3BCLEVBQUU7c0JBREwsV0FBVzt1QkFBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUdWlJZFNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBURVhURklFTERfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBUVUlfVEVYVEZJRUxEX1dBVENIRURfQ09OVFJPTExFUixcbiAgICBUdWlUZXh0ZmllbGRDb250cm9sbGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzJztcbmltcG9ydCB7VHVpVGV4dGZpZWxkSG9zdH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9URVhURklFTERfSE9TVH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdpbnB1dFt0dWlUZXh0ZmllbGRdLCB0ZXh0YXJlYVt0dWlUZXh0ZmllbGRdJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgcHJvdmlkZXJzOiBbVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVJdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgICAnW2F0dHIuYXJpYS1pbnZhbGlkXSc6ICdob3N0LmludmFsaWQnLFxuICAgICAgICAnW2F0dHIuZGlzYWJsZWRdJzogJ2hvc3QuZGlzYWJsZWQgfHwgbnVsbCcsXG4gICAgICAgICdbdGFiSW5kZXhdJzogJ2hvc3QuZm9jdXNhYmxlID8gMCA6IC0xJyxcbiAgICAgICAgJ1tyZWFkT25seV0nOiAnaG9zdC5yZWFkT25seScsXG4gICAgICAgICdbdmFsdWVdJzogJ2hvc3QudmFsdWUnLFxuICAgICAgICAnKGlucHV0KSc6ICdob3N0Lm9uVmFsdWVDaGFuZ2UoJGV2ZW50LnRhcmdldC52YWx1ZSknLFxuICAgIH0sXG4gICAgc3R5bGVVcmxzOiBbJy4vdGV4dGZpZWxkLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpVGV4dGZpZWxkQ29tcG9uZW50IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX0hPU1QpIHJlYWRvbmx5IGhvc3Q6IFR1aVRleHRmaWVsZEhvc3QsXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9XQVRDSEVEX0NPTlRST0xMRVIpXG4gICAgICAgIHJlYWRvbmx5IGNvbnRyb2xsZXI6IFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KFR1aUlkU2VydmljZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpZFNlcnZpY2U6IFR1aUlkU2VydmljZSxcbiAgICApIHtcbiAgICAgICAgdGhpcy5ob3N0LnByb2Nlc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnaWQnKVxuICAgIGdldCBpZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaWQgfHwgdGhpcy5pZFNlcnZpY2UuZ2VuZXJhdGUoKTtcbiAgICB9XG59XG4iXX0=
@@ -6,8 +6,8 @@ import * as i0 from "@angular/core";
6
6
  export class TuiValueDecorationComponent {
7
7
  constructor(textfield) {
8
8
  this.textfield = textfield;
9
- this.prefix$ = new BehaviorSubject(``);
10
- this.pre$ = this.prefix$.pipe(delay(0), filter(() => { var _a; return !!((_a = this.pre) === null || _a === void 0 ? void 0 : _a.nativeElement.isConnected); }), distinctUntilChanged(), map(() => { var _a; return ((_a = this.pre) === null || _a === void 0 ? void 0 : _a.nativeElement.offsetWidth) || 0; }));
9
+ this.prefix$ = new BehaviorSubject('');
10
+ this.pre$ = this.prefix$.pipe(delay(0), filter(() => { var _a; return !!((_a = this.pre) === null || _a === void 0 ? void 0 : _a.nativeElement.isConnected); }), map(() => { var _a; return ((_a = this.pre) === null || _a === void 0 ? void 0 : _a.nativeElement.offsetWidth) || 0; }), distinctUntilChanged());
11
11
  }
12
12
  get isContextTable() {
13
13
  return this.textfield.appearance === "table" /* Table */;
@@ -18,25 +18,25 @@ export class TuiValueDecorationComponent {
18
18
  get filler() {
19
19
  const { focused, placeholder, exampleText, value, textfield } = this;
20
20
  if (placeholder && exampleText) {
21
- return ``;
21
+ return '';
22
22
  }
23
- return focused ? exampleText || textfield.filler.slice(value.length) : ``;
23
+ return focused ? exampleText || textfield.filler.slice(value.length) : '';
24
24
  }
25
25
  get prefix() {
26
- return this.decorationsVisible ? this.textfield.prefix : ``;
26
+ return this.decorationsVisible ? this.textfield.prefix : '';
27
27
  }
28
28
  get postfix() {
29
- return this.decorationsVisible ? this.computedPostfix : ``;
29
+ return this.decorationsVisible ? this.computedPostfix : '';
30
30
  }
31
31
  ngDoCheck() {
32
32
  this.prefix$.next(this.prefix);
33
33
  }
34
34
  get placeholder() {
35
35
  var _a;
36
- return ((_a = this.textfield.nativeFocusableElement) === null || _a === void 0 ? void 0 : _a.placeholder) || ``;
36
+ return ((_a = this.textfield.nativeFocusableElement) === null || _a === void 0 ? void 0 : _a.placeholder) || '';
37
37
  }
38
38
  get exampleText() {
39
- return !this.value && this.focused ? this.placeholder : ``;
39
+ return !this.value && this.focused ? this.placeholder : '';
40
40
  }
41
41
  get decorationsVisible() {
42
42
  return !!this.value || this.focused;
@@ -55,9 +55,9 @@ TuiValueDecorationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.
55
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiValueDecorationComponent, decorators: [{
56
56
  type: Component,
57
57
  args: [{
58
- selector: `tui-value-decoration`,
59
- templateUrl: `./value-decoration.template.html`,
60
- styleUrls: [`./value-decoration.style.less`],
58
+ selector: 'tui-value-decoration',
59
+ templateUrl: './value-decoration.template.html',
60
+ styleUrls: ['./value-decoration.style.less'],
61
61
  // It follows Change Detection of PrimitiveTextfield
62
62
  changeDetection: ChangeDetectionStrategy.Default,
63
63
  }]
@@ -66,12 +66,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
66
66
  args: [TUI_FOCUSABLE_ITEM_ACCESSOR]
67
67
  }] }]; }, propDecorators: { pre: [{
68
68
  type: ViewChild,
69
- args: [`pre`, { read: ElementRef, static: true }]
69
+ args: ['pre', { read: ElementRef, static: true }]
70
70
  }], isContextTable: [{
71
71
  type: HostBinding,
72
- args: [`class._table`]
72
+ args: ['class._table']
73
73
  }], ngDoCheck: [{
74
74
  type: HostListener,
75
- args: [`animationstart`]
75
+ args: ['animationstart']
76
76
  }] } });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtZGVjb3JhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcHJpbWl0aXZlLXRleHRmaWVsZC92YWx1ZS1kZWNvcmF0aW9uL3ZhbHVlLWRlY29yYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3ByaW1pdGl2ZS10ZXh0ZmllbGQvdmFsdWUtZGVjb3JhdGlvbi92YWx1ZS1kZWNvcmF0aW9uLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBRVQsVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFMUQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUMsS0FBSyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFXeEUsTUFBTSxPQUFPLDJCQUEyQjtJQWFwQyxZQUVxQixTQUFnQztRQUFoQyxjQUFTLEdBQVQsU0FBUyxDQUF1QjtRQVhwQyxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFMUMsU0FBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUM3QixLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ1IsTUFBTSxDQUFDLEdBQUcsRUFBRSxXQUFDLE9BQUEsQ0FBQyxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsR0FBRywwQ0FBRSxhQUFhLENBQUMsV0FBVyxDQUFBLENBQUEsRUFBQSxDQUFDLEVBQ25ELG9CQUFvQixFQUFF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LFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQWtCOUMsY0FBYztzQkFEakIsV0FBVzt1QkFBQyxjQUFjO2dCQTRCM0IsU0FBUztzQkFEUixZQUFZO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIERvQ2hlY2ssXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aUFwcGVhcmFuY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2VudW1zJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVsYXksIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1R1aVByaW1pdGl2ZVRleHRmaWVsZH0gZnJvbSAnLi4vcHJpbWl0aXZlLXRleHRmaWVsZC10eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLXZhbHVlLWRlY29yYXRpb25gLFxuICAgIHRlbXBsYXRlVXJsOiBgLi92YWx1ZS1kZWNvcmF0aW9uLnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL3ZhbHVlLWRlY29yYXRpb24uc3R5bGUubGVzc2BdLFxuICAgIC8vIEl0IGZvbGxvd3MgQ2hhbmdlIERldGVjdGlvbiBvZiBQcmltaXRpdmVUZXh0ZmllbGRcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG59KVxuZXhwb3J0IGNsYXNzIFR1aVZhbHVlRGVjb3JhdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIERvQ2hlY2sge1xuICAgIEBWaWV3Q2hpbGQoYHByZWAsIHtyZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWV9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJlPzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHByZWZpeCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGBgKTtcblxuICAgIHJlYWRvbmx5IHByZSQgPSB0aGlzLnByZWZpeCQucGlwZShcbiAgICAgICAgZGVsYXkoMCksXG4gICAgICAgIGZpbHRlcigoKSA9PiAhIXRoaXMucHJlPy5uYXRpdmVFbGVtZW50LmlzQ29ubmVjdGVkKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgbWFwKCgpID0+IHRoaXMucHJlPy5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIHx8IDApLFxuICAgICk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdGV4dGZpZWxkOiBUdWlQcmltaXRpdmVUZXh0ZmllbGQsXG4gICAgKSB7fVxuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5fdGFibGVgKVxuICAgIGdldCBpc0NvbnRleHRUYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dGZpZWxkLmFwcGVhcmFuY2UgPT09IFR1aUFwcGVhcmFuY2UuVGFibGU7XG4gICAgfVxuXG4gICAgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZC52YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgZmlsbGVyKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHtmb2N1c2VkLCBwbGFjZWhvbGRlciwgZXhhbXBsZVRleHQsIHZhbHVlLCB0ZXh0ZmllbGR9ID0gdGhpcztcblxuICAgICAgICBpZiAocGxhY2Vob2xkZXIgJiYgZXhhbXBsZVRleHQpIHtcbiAgICAgICAgICAgIHJldHVybiBgYDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmb2N1c2VkID8gZXhhbXBsZVRleHQgfHwgdGV4dGZpZWxkLmZpbGxlci5zbGljZSh2YWx1ZS5sZW5ndGgpIDogYGA7XG4gICAgfVxuXG4gICAgZ2V0IHByZWZpeCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kZWNvcmF0aW9uc1Zpc2libGUgPyB0aGlzLnRleHRmaWVsZC5wcmVmaXggOiBgYDtcbiAgICB9XG5cbiAgICBnZXQgcG9zdGZpeCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kZWNvcmF0aW9uc1Zpc2libGUgPyB0aGlzLmNvbXB1dGVkUG9zdGZpeCA6IGBgO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYGFuaW1hdGlvbnN0YXJ0YClcbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJlZml4JC5uZXh0KHRoaXMucHJlZml4KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBwbGFjZWhvbGRlcigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy50ZXh0ZmllbGQubmF0aXZlRm9jdXNhYmxlRWxlbWVudD8ucGxhY2Vob2xkZXIgfHwgYGA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgZXhhbXBsZVRleHQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLnZhbHVlICYmIHRoaXMuZm9jdXNlZCA/IHRoaXMucGxhY2Vob2xkZXIgOiBgYDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBkZWNvcmF0aW9uc1Zpc2libGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudmFsdWUgfHwgdGhpcy5mb2N1c2VkO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZC5jb21wdXRlZEZvY3VzZWQgJiYgIXRoaXMudGV4dGZpZWxkLnJlYWRPbmx5O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXB1dGVkUG9zdGZpeCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy50ZXh0ZmllbGQucG9zdGZpeCAmJiAodGhpcy5maWxsZXIgfHwgdGhpcy52YWx1ZSlcbiAgICAgICAgICAgID8gYCAke3RoaXMudGV4dGZpZWxkLnBvc3RmaXh9YFxuICAgICAgICAgICAgOiB0aGlzLnRleHRmaWVsZC5wb3N0Zml4O1xuICAgIH1cbn1cbiIsIjxzcGFuXG4gICAgI3ByZVxuICAgIGNsYXNzPVwidC1wcmVmaXggdC1pbmxpbmVcIlxuICAgIFt0ZXh0Q29udGVudF09XCJwcmVmaXhcIlxuPjwvc3Bhbj5cbjxzcGFuXG4gICAgY2xhc3M9XCJ0LWdob3N0IHQtaW5saW5lXCJcbiAgICBbdGV4dENvbnRlbnRdPVwidmFsdWVcIlxuPjwvc3Bhbj5cbjxzcGFuXG4gICAgY2xhc3M9XCJ0LWZpbGxlciB0LWlubGluZVwiXG4gICAgW3RleHRDb250ZW50XT1cImZpbGxlclwiXG4+PC9zcGFuPlxuPHNwYW5cbiAgICBjbGFzcz1cInQtcG9zdGZpeCB0LWlubGluZVwiXG4gICAgW3RleHRDb250ZW50XT1cInBvc3RmaXhcIlxuPjwvc3Bhbj5cbiJdfQ==
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtZGVjb3JhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvcHJpbWl0aXZlLXRleHRmaWVsZC92YWx1ZS1kZWNvcmF0aW9uL3ZhbHVlLWRlY29yYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3ByaW1pdGl2ZS10ZXh0ZmllbGQvdmFsdWUtZGVjb3JhdGlvbi92YWx1ZS1kZWNvcmF0aW9uLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBRVQsVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFMUQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUMsS0FBSyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFXeEUsTUFBTSxPQUFPLDJCQUEyQjtJQWFwQyxZQUVxQixTQUFnQztRQUFoQyxjQUFTLEdBQVQsU0FBUyxDQUF1QjtRQVhwQyxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFMUMsU0FBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUM3QixLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ1IsTUFBTSxDQUFDLEdBQUcsRUFBRSxXQUFDLE9BQUEsQ0FBQyxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsR0FBRywwQ0FBRSxhQUFhLENBQUMsV0FBVyxDQUFBLENBQUEsRUFBQSxDQUFDLEVBQ25ELEdBQUcsQ0FBQyxH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LFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQWtCOUMsY0FBYztzQkFEakIsV0FBVzt1QkFBQyxjQUFjO2dCQTRCM0IsU0FBUztzQkFEUixZQUFZO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIERvQ2hlY2ssXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aUFwcGVhcmFuY2V9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2VudW1zJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVsYXksIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1R1aVByaW1pdGl2ZVRleHRmaWVsZH0gZnJvbSAnLi4vcHJpbWl0aXZlLXRleHRmaWVsZC10eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXZhbHVlLWRlY29yYXRpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi92YWx1ZS1kZWNvcmF0aW9uLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3ZhbHVlLWRlY29yYXRpb24uc3R5bGUubGVzcyddLFxuICAgIC8vIEl0IGZvbGxvd3MgQ2hhbmdlIERldGVjdGlvbiBvZiBQcmltaXRpdmVUZXh0ZmllbGRcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG59KVxuZXhwb3J0IGNsYXNzIFR1aVZhbHVlRGVjb3JhdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIERvQ2hlY2sge1xuICAgIEBWaWV3Q2hpbGQoJ3ByZScsIHtyZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWV9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJlPzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHByZWZpeCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KCcnKTtcblxuICAgIHJlYWRvbmx5IHByZSQgPSB0aGlzLnByZWZpeCQucGlwZShcbiAgICAgICAgZGVsYXkoMCksXG4gICAgICAgIGZpbHRlcigoKSA9PiAhIXRoaXMucHJlPy5uYXRpdmVFbGVtZW50LmlzQ29ubmVjdGVkKSxcbiAgICAgICAgbWFwKCgpID0+IHRoaXMucHJlPy5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIHx8IDApLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdGV4dGZpZWxkOiBUdWlQcmltaXRpdmVUZXh0ZmllbGQsXG4gICAgKSB7fVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fdGFibGUnKVxuICAgIGdldCBpc0NvbnRleHRUYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dGZpZWxkLmFwcGVhcmFuY2UgPT09IFR1aUFwcGVhcmFuY2UuVGFibGU7XG4gICAgfVxuXG4gICAgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZC52YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgZmlsbGVyKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHtmb2N1c2VkLCBwbGFjZWhvbGRlciwgZXhhbXBsZVRleHQsIHZhbHVlLCB0ZXh0ZmllbGR9ID0gdGhpcztcblxuICAgICAgICBpZiAocGxhY2Vob2xkZXIgJiYgZXhhbXBsZVRleHQpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmb2N1c2VkID8gZXhhbXBsZVRleHQgfHwgdGV4dGZpZWxkLmZpbGxlci5zbGljZSh2YWx1ZS5sZW5ndGgpIDogJyc7XG4gICAgfVxuXG4gICAgZ2V0IHByZWZpeCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kZWNvcmF0aW9uc1Zpc2libGUgPyB0aGlzLnRleHRmaWVsZC5wcmVmaXggOiAnJztcbiAgICB9XG5cbiAgICBnZXQgcG9zdGZpeCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kZWNvcmF0aW9uc1Zpc2libGUgPyB0aGlzLmNvbXB1dGVkUG9zdGZpeCA6ICcnO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2FuaW1hdGlvbnN0YXJ0JylcbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJlZml4JC5uZXh0KHRoaXMucHJlZml4KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBwbGFjZWhvbGRlcigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy50ZXh0ZmllbGQubmF0aXZlRm9jdXNhYmxlRWxlbWVudD8ucGxhY2Vob2xkZXIgfHwgJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgZXhhbXBsZVRleHQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLnZhbHVlICYmIHRoaXMuZm9jdXNlZCA/IHRoaXMucGxhY2Vob2xkZXIgOiAnJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBkZWNvcmF0aW9uc1Zpc2libGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudmFsdWUgfHwgdGhpcy5mb2N1c2VkO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRmaWVsZC5jb21wdXRlZEZvY3VzZWQgJiYgIXRoaXMudGV4dGZpZWxkLnJlYWRPbmx5O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXB1dGVkUG9zdGZpeCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy50ZXh0ZmllbGQucG9zdGZpeCAmJiAodGhpcy5maWxsZXIgfHwgdGhpcy52YWx1ZSlcbiAgICAgICAgICAgID8gYCAke3RoaXMudGV4dGZpZWxkLnBvc3RmaXh9YFxuICAgICAgICAgICAgOiB0aGlzLnRleHRmaWVsZC5wb3N0Zml4O1xuICAgIH1cbn1cbiIsIjxzcGFuXG4gICAgI3ByZVxuICAgIGNsYXNzPVwidC1wcmVmaXggdC1pbmxpbmVcIlxuICAgIFt0ZXh0Q29udGVudF09XCJwcmVmaXhcIlxuPjwvc3Bhbj5cbjxzcGFuXG4gICAgY2xhc3M9XCJ0LWdob3N0IHQtaW5saW5lXCJcbiAgICBbdGV4dENvbnRlbnRdPVwidmFsdWVcIlxuPjwvc3Bhbj5cbjxzcGFuXG4gICAgY2xhc3M9XCJ0LWZpbGxlciB0LWlubGluZVwiXG4gICAgW3RleHRDb250ZW50XT1cImZpbGxlclwiXG4+PC9zcGFuPlxuPHNwYW5cbiAgICBjbGFzcz1cInQtcG9zdGZpeCB0LWlubGluZVwiXG4gICAgW3RleHRDb250ZW50XT1cInBvc3RmaXhcIlxuPjwvc3Bhbj5cbiJdfQ==
@@ -143,9 +143,9 @@ __decorate([
143
143
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiPrimitiveYearPickerComponent, decorators: [{
144
144
  type: Component,
145
145
  args: [{
146
- selector: `tui-primitive-year-picker`,
147
- templateUrl: `./primitive-year-picker.template.html`,
148
- styleUrls: [`./primitive-year-picker.style.less`],
146
+ selector: 'tui-primitive-year-picker',
147
+ templateUrl: './primitive-year-picker.template.html',
148
+ styleUrls: ['./primitive-year-picker.style.less'],
149
149
  changeDetection: ChangeDetectionStrategy.OnPush,
150
150
  }]
151
151
  }], propDecorators: { value: [{
@@ -162,6 +162,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
162
162
  type: Output
163
163
  }], isSingle: [{
164
164
  type: HostBinding,
165
- args: [`class._single`]
165
+ args: ['class._single']
166
166
  }] } });
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXllYXItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUteWVhci1waWNrZXIvcHJpbWl0aXZlLXllYXItcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUteWVhci1waWNrZXIvcHJpbWl0aXZlLXllYXItcGlja2VyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixZQUFZLEVBR1osY0FBYyxFQUNkLFVBQVUsRUFDVixRQUFRLEVBQ1IsYUFBYSxFQUNiLE9BQU8sR0FDVixNQUFNLGVBQWUsQ0FBQzs7OztBQUd2QixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUM7QUFDbEIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBUXZCLE1BQU0sT0FBTywrQkFBK0I7SUFONUM7UUFPWSxnQkFBVyxHQUFrQixJQUFJLENBQUM7UUFDbEMsZ0JBQVcsR0FBa0IsSUFBSSxDQUFDO1FBQ3pCLGdCQUFXLEdBQUcsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQztRQUk1RCxVQUFLLEdBQWlELElBQUksQ0FBQztRQUkzRCxnQkFBVyxHQUFZLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUkvQyxRQUFHLEdBQVksYUFBYSxDQUFDO1FBSTdCLFFBQUcsR0FBWSxZQUFZLENBQUM7UUFJNUIsd0JBQW1CLEdBQThCLG9CQUFvQixDQUFDO1FBRzdELGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxD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QUM7SUFDM0MsQ0FBQztJQUVPLGlCQUFpQixDQUFDLE9BQWdCLEVBQUUsSUFBWTtRQUNwRCxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDN0MsQ0FBQztJQUVPLGlCQUFpQixDQUFDLE9BQWdCLEVBQUUsSUFBWTtRQUNwRCxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDN0MsQ0FBQzs7NkhBN0tRLCtCQUErQjtpSEFBL0IsK0JBQStCLDhSQy9CNUMsNjVCQXVCQTtBRGVJO0lBREMsY0FBYyxFQUFFOzhEQUMwQztBQUkzRDtJQURDLGNBQWMsRUFBRTtvRUFDOEI7QUFJL0M7SUFEQyxjQUFjLEVBQUU7NERBQ1k7QUFJN0I7SUFEQyxjQUFjLEVBQUU7NERBQ1c7QUFJNUI7SUFEQyxjQUFjLEVBQUU7NEVBQ3FEOzRGQXZCN0QsK0JBQStCO2tCQU4zQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFdBQVcsRUFBRSx1Q0FBdUM7b0JBQ3BELFNBQVMsRUFBRSxDQUFDLG9DQUFvQyxDQUFDO29CQUNqRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7OEJBUUcsS0FBSztzQkFGSixLQUFLO2dCQU1OLFdBQVc7c0JBRlYsS0FBSztnQkFNTixHQUFHO3NCQUZGLEtBQUs7Z0JBTU4sR0FBRztzQkFGRixLQUFLO2dCQU1OLG1CQUFtQjtzQkFGbEIsS0FBSztnQkFLRyxTQUFTO3NCQURqQixNQUFNO2dCQUlILFFBQVE7c0JBRFgsV0FBVzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSLFxuICAgIFRVSV9GSVJTVF9EQVksXG4gICAgVFVJX0xBU1RfREFZLFxuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIFR1aURheVJhbmdlLFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIHR1aUluUmFuZ2UsXG4gICAgVHVpTW9udGgsXG4gICAgVHVpTW9udGhSYW5nZSxcbiAgICBUdWlZZWFyLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpSW50ZXJhY3RpdmVTdGF0ZSwgVHVpUmFuZ2VTdGF0ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZW51bXMnO1xuXG5jb25zdCBMSU1JVCA9IDEwMDtcbmNvbnN0IElURU1TX0lOX1JPVyA9IDQ7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLXByaW1pdGl2ZS15ZWFyLXBpY2tlcmAsXG4gICAgdGVtcGxhdGVVcmw6IGAuL3ByaW1pdGl2ZS15ZWFyLXBpY2tlci50ZW1wbGF0ZS5odG1sYCxcbiAgICBzdHlsZVVybHM6IFtgLi9wcmltaXRpdmUteWVhci1waWNrZXIuc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlQcmltaXRpdmVZZWFyUGlja2VyQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIGhvdmVyZWRJdGVtOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBwcml2YXRlIHByZXNzZWRJdGVtOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGN1cnJlbnRZZWFyID0gVHVpTW9udGguY3VycmVudExvY2FsKCkueWVhcjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB2YWx1ZTogVHVpRGF5UmFuZ2UgfCBUdWlNb250aFJhbmdlIHwgVHVpWWVhciB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGluaXRpYWxJdGVtOiBUdWlZZWFyID0gVHVpTW9udGguY3VycmVudExvY2FsKCk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWluOiBUdWlZZWFyID0gVFVJX0ZJUlNUX0RBWTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBtYXg6IFR1aVllYXIgPSBUVUlfTEFTVF9EQVk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXI8bnVtYmVyPiA9IEFMV0FZU19GQUxTRV9IQU5ETEVSO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgeWVhckNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlZZWFyPigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKGBjbGFzcy5fc2luZ2xlYClcbiAgICBnZXQgaXNTaW5nbGUoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHt2YWx1ZX0gPSB0aGlzO1xuXG4gICAgICAgIHJldHVybiAhIXZhbHVlICYmIHRoaXMuaXNSYW5nZSh2YWx1ZSkgJiYgdmFsdWUuZnJvbS55ZWFyU2FtZSh2YWx1ZS50byk7XG4gICAgfVxuXG4gICAgZ2V0IHJvd3MoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE1hdGguY2VpbCgodGhpcy5jYWxjdWxhdGVkTWF4IC0gdGhpcy5jYWxjdWxhdGVkTWluKSAvIElURU1TX0lOX1JPVyk7XG4gICAgfVxuXG4gICAgZ2V0IGNhbGN1bGF0ZWRNaW4oKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgaW5pdGlhbCA9IHRoaXMuaW5pdGlhbEl0ZW0ueWVhciAtIExJTUlUO1xuXG4gICAgICAgIHJldHVybiB0aGlzLm1pbi55ZWFyID4gaW5pdGlhbCA/IHRoaXMubWluLnllYXIgOiBpbml0aWFsO1xuICAgIH1cblxuICAgIGdldCBjYWxjdWxhdGVkTWF4KCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGluaXRpYWwgPSB0aGlzLmluaXRpYWxJdGVtLnllYXIgKyBMSU1JVDtcblxuICAgICAgICByZXR1cm4gdGhpcy5tYXgueWVhciA8IGluaXRpYWwgPyB0aGlzLm1heC55ZWFyICsgMSA6IGluaXRpYWw7XG4gICAgfVxuXG4gICAgaXNSYW5nZShpdGVtOiBUdWlNb250aFJhbmdlIHwgVHVpWWVhcik6IGl0ZW0gaXMgVHVpTW9udGhSYW5nZSB7XG4gICAgICAgIHJldHVybiBpdGVtIGluc3RhbmNlb2YgVHVpTW9udGhSYW5nZTtcbiAgICB9XG5cbiAgICBzY3JvbGxJdGVtSW50b1ZpZXcoaXRlbTogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmluaXRpYWxJdGVtLnllYXIgPT09IGl0ZW07XG4gICAgfVxuXG4gICAgZ2V0SXRlbShyb3dJbmRleDogbnVtYmVyLCBjb2xJbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHJvd0luZGV4ICogSVRFTVNfSU5fUk9XICsgY29sSW5kZXggKyB0aGlzLmNhbGN1bGF0ZWRNaW47XG4gICAgfVxuXG4gICAgZ2V0SXRlbVN0YXRlKGl0ZW06IG51bWJlcik6IFR1aUludGVyYWN0aXZlU3RhdGUgfCBudWxsIHtcbiAgICAgICAgY29uc3Qge2Rpc2FibGVkSXRlbUhhbmRsZXIsIG1heCwgcHJlc3NlZEl0ZW0sIGhvdmVyZWRJdGVtfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgbWF4LnllYXIgPCBpdGVtIHx8XG4gICAgICAgICAgICAoZGlzYWJsZWRJdGVtSGFuZGxlciAhPT0gQUxXQVlTX0ZBTFNFX0hBTkRMRVIgJiYgZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpSW50ZXJhY3RpdmVTdGF0ZS5EaXNhYmxlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwcmVzc2VkSXRlbSA9PT0gaXRlbSkge1xuICAgICAgICAgICAgcmV0dXJuIFR1aUludGVyYWN0aXZlU3RhdGUuQWN0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGhvdmVyZWRJdGVtID09PSBpdGVtKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpSW50ZXJhY3RpdmVTdGF0ZS5Ib3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjb21wbGV4aXR5XG4gICAgZ2V0SXRlbVJhbmdlKGl0ZW06IG51bWJlcik6IFR1aVJhbmdlU3RhdGUgfCBudWxsIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlLCBob3ZlcmVkSXRlbX0gPSB0aGlzO1xuXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBUdWlZZWFyKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUueWVhciA9PT0gaXRlbSA/IFR1aVJhbmdlU3RhdGUuU2luZ2xlIDogbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICh2YWx1ZS5mcm9tLnllYXIgPT09IGl0ZW0gJiYgIXZhbHVlLmZyb20ueWVhclNhbWUodmFsdWUudG8pKSB8fFxuICAgICAgICAgICAgKGhvdmVyZWRJdGVtICE9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgaG92ZXJlZEl0ZW0gPiB2YWx1ZS5mcm9tLnllYXIgJiZcbiAgICAgICAgICAgICAgICB2YWx1ZS5mcm9tLnllYXIgPT09IGl0ZW0gJiZcbiAgICAgICAgICAgICAgICB2YWx1ZS5mcm9tLnllYXJTYW1lKHZhbHVlLnRvKSkgfHxcbiAgICAgICAgICAgIChob3ZlcmVkSXRlbSAhPT0gbnVsbCAmJlxuICAgICAgICAgICAgICAgIGhvdmVyZWRJdGVtID09PSBpdGVtICYmXG4gICAgICAgICAgICAgICAgaG92ZXJlZEl0ZW0gPCB2YWx1ZS5mcm9tLnllYXIgJiZcbiAgICAgICAgICAgICAgICB2YWx1ZS5mcm9tLnllYXJTYW1lKHZhbHVlLnRvKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpUmFuZ2VTdGF0ZS5TdGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICh2YWx1ZS50by55ZWFyID09PSBpdGVtICYmICF2YWx1ZS5mcm9tLnllYXJTYW1lKHZhbHVlLnRvKSkgfHxcbiAgICAgICAgICAgIChob3ZlcmVkSXRlbSAhPT0gbnVsbCAmJlxuICAgICAgICAgICAgICAgIGhvdmVyZWRJdGVtIDwgdmFsdWUuZnJvbS55ZWFyICYmXG4gICAgICAgICAgICAgICAgdmFsdWUuZnJvbS55ZWFyID09PSBpdGVtICYmXG4gICAgICAgICAgICAgICAgdmFsdWUuZnJvbS55ZWFyU2FtZSh2YWx1ZS50bykpIHx8XG4gICAgICAgICAgICAoaG92ZXJlZEl0ZW0gIT09IG51bGwgJiZcbiAgICAgICAgICAgICAgICBob3ZlcmVkSXRlbSA9PT0gaXRlbSAmJlxuICAgICAgICAgICAgICAgIGhvdmVyZWRJdGVtID4gdmFsdWUuZnJvbS55ZWFyICYmXG4gICAgICAgICAgICAgICAgdmFsdWUuZnJvbS55ZWFyU2FtZSh2YWx1ZS50bykpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIFR1aVJhbmdlU3RhdGUuRW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHZhbHVlLmZyb20ueWVhclNhbWUodmFsdWUudG8pICYmIHZhbHVlLmZyb20ueWVhciA9PT0gaXRlbVxuICAgICAgICAgICAgPyBUdWlSYW5nZVN0YXRlLlNpbmdsZVxuICAgICAgICAgICAgOiBudWxsO1xuICAgIH1cblxuICAgIGl0ZW1Jc1RvZGF5KGl0ZW06IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50WWVhciA9PT0gaXRlbTtcbiAgICB9XG5cbiAgICBpdGVtSXNJbnRlcnZhbChpdGVtOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlLCBob3ZlcmVkSXRlbX0gPSB0aGlzO1xuXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCAhdGhpcy5pc1JhbmdlKHZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF2YWx1ZS5mcm9tLnllYXJTYW1lKHZhbHVlLnRvKSkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlLmZyb20ueWVhciA8PSBpdGVtICYmIHZhbHVlLnRvLnllYXIgPiBpdGVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGhvdmVyZWRJdGVtID09PSBudWxsIHx8IHZhbHVlLmZyb20ueWVhciA9PT0gaG92ZXJlZEl0ZW0pIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0dWlJblJhbmdlKFxuICAgICAgICAgICAgaXRlbSxcbiAgICAgICAgICAgIE1hdGgubWluKHZhbHVlLmZyb20ueWVhciwgaG92ZXJlZEl0ZW0pLFxuICAgICAgICAgICAgTWF0aC5tYXgodmFsdWUuZnJvbS55ZWFyLCBob3ZlcmVkSXRlbSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgb25JdGVtSG92ZXJlZChob3ZlcmVkOiBib29sZWFuLCBpdGVtOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkSXRlbShob3ZlcmVkLCBpdGVtKTtcbiAgICB9XG5cbiAgICBvbkl0ZW1QcmVzc2VkKHByZXNzZWQ6IGJvb2xlYW4sIGl0ZW06IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVByZXNzZWRJdGVtKHByZXNzZWQsIGl0ZW0pO1xuICAgIH1cblxuICAgIG9uSXRlbUNsaWNrKGl0ZW06IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnllYXJDbGljay5lbWl0KG5ldyBUdWlZZWFyKGl0ZW0pKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUhvdmVyZWRJdGVtKGhvdmVyZWQ6IGJvb2xlYW4sIGl0ZW06IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLmhvdmVyZWRJdGVtID0gaG92ZXJlZCA/IGl0ZW0gOiBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlUHJlc3NlZEl0ZW0ocHJlc3NlZDogYm9vbGVhbiwgaXRlbTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJlc3NlZEl0ZW0gPSBwcmVzc2VkID8gaXRlbSA6IG51bGw7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICp0dWlSZXBlYXRUaW1lcz1cImxldCByb3dJbmRleCBvZiByb3dzXCJcbiAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS15ZWFyLXBpY2tlcl9fcm93XCJcbiAgICBjbGFzcz1cInQtcm93XCJcbj5cbiAgICA8bmctY29udGFpbmVyICp0dWlSZXBlYXRUaW1lcz1cImxldCBjb2xJbmRleCBvZiA0XCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICp0dWlMZXQ9XCJnZXRJdGVtKHJvd0luZGV4LCBjb2xJbmRleCkgYXMgaXRlbVwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS15ZWFyLXBpY2tlcl9fY2VsbFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtY2VsbFwiXG4gICAgICAgICAgICBbY2xhc3MudC1jZWxsX3RvZGF5XT1cIml0ZW1Jc1RvZGF5KGl0ZW0pXCJcbiAgICAgICAgICAgIFtjbGFzcy50LWNlbGxfaW50ZXJ2YWxdPVwiaXRlbUlzSW50ZXJ2YWwoaXRlbSlcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS1yYW5nZV09XCJnZXRJdGVtUmFuZ2UoaXRlbSlcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS1zdGF0ZV09XCJnZXRJdGVtU3RhdGUoaXRlbSlcIlxuICAgICAgICAgICAgW3R1aVNjcm9sbEludG9WaWV3XT1cInNjcm9sbEl0ZW1JbnRvVmlldyhpdGVtKVwiXG4gICAgICAgICAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkl0ZW1Ib3ZlcmVkKCRldmVudCwgaXRlbSlcIlxuICAgICAgICAgICAgKHR1aVByZXNzZWRDaGFuZ2UpPVwib25JdGVtUHJlc3NlZCgkZXZlbnQsIGl0ZW0pXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljayhpdGVtKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LWl0ZW1cIj57eyBpdGVtIH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
167
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLXllYXItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUteWVhci1waWNrZXIvcHJpbWl0aXZlLXllYXItcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9wcmltaXRpdmUteWVhci1waWNrZXIvcHJpbWl0aXZlLXllYXItcGlja2VyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixZQUFZLEVBR1osY0FBYyxFQUNkLFVBQVUsRUFDVixRQUFRLEVBQ1IsYUFBYSxFQUNiLE9BQU8sR0FDVixNQUFNLGVBQWUsQ0FBQzs7OztBQUd2QixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUM7QUFDbEIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBUXZCLE1BQU0sT0FBTywrQkFBK0I7SUFONUM7UUFPWSxnQkFBVyxHQUFrQixJQUFJLENBQUM7UUFDbEMsZ0JBQVcsR0FBa0IsSUFBSSxDQUFDO1FBQ3pCLGdCQUFXLEdBQUcsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQztRQUk1RCxVQUFLLEdBQWlELElBQUksQ0FBQztRQUkzRCxnQkFBVyxHQUFZLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUkvQyxRQUFHLEdBQVksYUFBYSxDQUFDO1FBSTdCLFFBQUcsR0FBWSxZQUFZLENBQUM7UUFJNUIsd0JBQW1CLEdBQThCLG9CQUFvQixDQUFDO1FBRzdELGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxD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QUM7SUFDM0MsQ0FBQztJQUVPLGlCQUFpQixDQUFDLE9BQWdCLEVBQUUsSUFBWTtRQUNwRCxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDN0MsQ0FBQztJQUVPLGlCQUFpQixDQUFDLE9BQWdCLEVBQUUsSUFBWTtRQUNwRCxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDN0MsQ0FBQzs7NkhBN0tRLCtCQUErQjtpSEFBL0IsK0JBQStCLDhSQy9CNUMsNjVCQXVCQTtBRGVJO0lBREMsY0FBYyxFQUFFOzhEQUMwQztBQUkzRDtJQURDLGNBQWMsRUFBRTtvRUFDOEI7QUFJL0M7SUFEQyxjQUFjLEVBQUU7NERBQ1k7QUFJN0I7SUFEQyxjQUFjLEVBQUU7NERBQ1c7QUFJNUI7SUFEQyxjQUFjLEVBQUU7NEVBQ3FEOzRGQXZCN0QsK0JBQStCO2tCQU4zQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFdBQVcsRUFBRSx1Q0FBdUM7b0JBQ3BELFNBQVMsRUFBRSxDQUFDLG9DQUFvQyxDQUFDO29CQUNqRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7OEJBUUcsS0FBSztzQkFGSixLQUFLO2dCQU1OLFdBQVc7c0JBRlYsS0FBSztnQkFNTixHQUFHO3NCQUZGLEtBQUs7Z0JBTU4sR0FBRztzQkFGRixLQUFLO2dCQU1OLG1CQUFtQjtzQkFGbEIsS0FBSztnQkFLRyxTQUFTO3NCQURqQixNQUFNO2dCQUlILFFBQVE7c0JBRFgsV0FBVzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFMV0FZU19GQUxTRV9IQU5ETEVSLFxuICAgIFRVSV9GSVJTVF9EQVksXG4gICAgVFVJX0xBU1RfREFZLFxuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIFR1aURheVJhbmdlLFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIHR1aUluUmFuZ2UsXG4gICAgVHVpTW9udGgsXG4gICAgVHVpTW9udGhSYW5nZSxcbiAgICBUdWlZZWFyLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpSW50ZXJhY3RpdmVTdGF0ZSwgVHVpUmFuZ2VTdGF0ZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZW51bXMnO1xuXG5jb25zdCBMSU1JVCA9IDEwMDtcbmNvbnN0IElURU1TX0lOX1JPVyA9IDQ7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLXByaW1pdGl2ZS15ZWFyLXBpY2tlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3ByaW1pdGl2ZS15ZWFyLXBpY2tlci50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wcmltaXRpdmUteWVhci1waWNrZXIuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlQcmltaXRpdmVZZWFyUGlja2VyQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIGhvdmVyZWRJdGVtOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBwcml2YXRlIHByZXNzZWRJdGVtOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGN1cnJlbnRZZWFyID0gVHVpTW9udGguY3VycmVudExvY2FsKCkueWVhcjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB2YWx1ZTogVHVpRGF5UmFuZ2UgfCBUdWlNb250aFJhbmdlIHwgVHVpWWVhciB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGluaXRpYWxJdGVtOiBUdWlZZWFyID0gVHVpTW9udGguY3VycmVudExvY2FsKCk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWluOiBUdWlZZWFyID0gVFVJX0ZJUlNUX0RBWTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBtYXg6IFR1aVllYXIgPSBUVUlfTEFTVF9EQVk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZGlzYWJsZWRJdGVtSGFuZGxlcjogVHVpQm9vbGVhbkhhbmRsZXI8bnVtYmVyPiA9IEFMV0FZU19GQUxTRV9IQU5ETEVSO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgeWVhckNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxUdWlZZWFyPigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5fc2luZ2xlJylcbiAgICBnZXQgaXNTaW5nbGUoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHt2YWx1ZX0gPSB0aGlzO1xuXG4gICAgICAgIHJldHVybiAhIXZhbHVlICYmIHRoaXMuaXNSYW5nZSh2YWx1ZSkgJiYgdmFsdWUuZnJvbS55ZWFyU2FtZSh2YWx1ZS50byk7XG4gICAgfVxuXG4gICAgZ2V0IHJvd3MoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE1hdGguY2VpbCgodGhpcy5jYWxjdWxhdGVkTWF4IC0gdGhpcy5jYWxjdWxhdGVkTWluKSAvIElURU1TX0lOX1JPVyk7XG4gICAgfVxuXG4gICAgZ2V0IGNhbGN1bGF0ZWRNaW4oKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgaW5pdGlhbCA9IHRoaXMuaW5pdGlhbEl0ZW0ueWVhciAtIExJTUlUO1xuXG4gICAgICAgIHJldHVybiB0aGlzLm1pbi55ZWFyID4gaW5pdGlhbCA/IHRoaXMubWluLnllYXIgOiBpbml0aWFsO1xuICAgIH1cblxuICAgIGdldCBjYWxjdWxhdGVkTWF4KCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGluaXRpYWwgPSB0aGlzLmluaXRpYWxJdGVtLnllYXIgKyBMSU1JVDtcblxuICAgICAgICByZXR1cm4gdGhpcy5tYXgueWVhciA8IGluaXRpYWwgPyB0aGlzLm1heC55ZWFyICsgMSA6IGluaXRpYWw7XG4gICAgfVxuXG4gICAgaXNSYW5nZShpdGVtOiBUdWlNb250aFJhbmdlIHwgVHVpWWVhcik6IGl0ZW0gaXMgVHVpTW9udGhSYW5nZSB7XG4gICAgICAgIHJldHVybiBpdGVtIGluc3RhbmNlb2YgVHVpTW9udGhSYW5nZTtcbiAgICB9XG5cbiAgICBzY3JvbGxJdGVtSW50b1ZpZXcoaXRlbTogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmluaXRpYWxJdGVtLnllYXIgPT09IGl0ZW07XG4gICAgfVxuXG4gICAgZ2V0SXRlbShyb3dJbmRleDogbnVtYmVyLCBjb2xJbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHJvd0luZGV4ICogSVRFTVNfSU5fUk9XICsgY29sSW5kZXggKyB0aGlzLmNhbGN1bGF0ZWRNaW47XG4gICAgfVxuXG4gICAgZ2V0SXRlbVN0YXRlKGl0ZW06IG51bWJlcik6IFR1aUludGVyYWN0aXZlU3RhdGUgfCBudWxsIHtcbiAgICAgICAgY29uc3Qge2Rpc2FibGVkSXRlbUhhbmRsZXIsIG1heCwgcHJlc3NlZEl0ZW0sIGhvdmVyZWRJdGVtfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgbWF4LnllYXIgPCBpdGVtIHx8XG4gICAgICAgICAgICAoZGlzYWJsZWRJdGVtSGFuZGxlciAhPT0gQUxXQVlTX0ZBTFNFX0hBTkRMRVIgJiYgZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpSW50ZXJhY3RpdmVTdGF0ZS5EaXNhYmxlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwcmVzc2VkSXRlbSA9PT0gaXRlbSkge1xuICAgICAgICAgICAgcmV0dXJuIFR1aUludGVyYWN0aXZlU3RhdGUuQWN0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGhvdmVyZWRJdGVtID09PSBpdGVtKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpSW50ZXJhY3RpdmVTdGF0ZS5Ib3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjb21wbGV4aXR5XG4gICAgZ2V0SXRlbVJhbmdlKGl0ZW06IG51bWJlcik6IFR1aVJhbmdlU3RhdGUgfCBudWxsIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlLCBob3ZlcmVkSXRlbX0gPSB0aGlzO1xuXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBUdWlZZWFyKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUueWVhciA9PT0gaXRlbSA/IFR1aVJhbmdlU3RhdGUuU2luZ2xlIDogbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICh2YWx1ZS5mcm9tLnllYXIgPT09IGl0ZW0gJiYgIXZhbHVlLmZyb20ueWVhclNhbWUodmFsdWUudG8pKSB8fFxuICAgICAgICAgICAgKGhvdmVyZWRJdGVtICE9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgaG92ZXJlZEl0ZW0gPiB2YWx1ZS5mcm9tLnllYXIgJiZcbiAgICAgICAgICAgICAgICB2YWx1ZS5mcm9tLnllYXIgPT09IGl0ZW0gJiZcbiAgICAgICAgICAgICAgICB2YWx1ZS5mcm9tLnllYXJTYW1lKHZhbHVlLnRvKSkgfHxcbiAgICAgICAgICAgIChob3ZlcmVkSXRlbSAhPT0gbnVsbCAmJlxuICAgICAgICAgICAgICAgIGhvdmVyZWRJdGVtID09PSBpdGVtICYmXG4gICAgICAgICAgICAgICAgaG92ZXJlZEl0ZW0gPCB2YWx1ZS5mcm9tLnllYXIgJiZcbiAgICAgICAgICAgICAgICB2YWx1ZS5mcm9tLnllYXJTYW1lKHZhbHVlLnRvKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gVHVpUmFuZ2VTdGF0ZS5TdGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICh2YWx1ZS50by55ZWFyID09PSBpdGVtICYmICF2YWx1ZS5mcm9tLnllYXJTYW1lKHZhbHVlLnRvKSkgfHxcbiAgICAgICAgICAgIChob3ZlcmVkSXRlbSAhPT0gbnVsbCAmJlxuICAgICAgICAgICAgICAgIGhvdmVyZWRJdGVtIDwgdmFsdWUuZnJvbS55ZWFyICYmXG4gICAgICAgICAgICAgICAgdmFsdWUuZnJvbS55ZWFyID09PSBpdGVtICYmXG4gICAgICAgICAgICAgICAgdmFsdWUuZnJvbS55ZWFyU2FtZSh2YWx1ZS50bykpIHx8XG4gICAgICAgICAgICAoaG92ZXJlZEl0ZW0gIT09IG51bGwgJiZcbiAgICAgICAgICAgICAgICBob3ZlcmVkSXRlbSA9PT0gaXRlbSAmJlxuICAgICAgICAgICAgICAgIGhvdmVyZWRJdGVtID4gdmFsdWUuZnJvbS55ZWFyICYmXG4gICAgICAgICAgICAgICAgdmFsdWUuZnJvbS55ZWFyU2FtZSh2YWx1ZS50bykpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIFR1aVJhbmdlU3RhdGUuRW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHZhbHVlLmZyb20ueWVhclNhbWUodmFsdWUudG8pICYmIHZhbHVlLmZyb20ueWVhciA9PT0gaXRlbVxuICAgICAgICAgICAgPyBUdWlSYW5nZVN0YXRlLlNpbmdsZVxuICAgICAgICAgICAgOiBudWxsO1xuICAgIH1cblxuICAgIGl0ZW1Jc1RvZGF5KGl0ZW06IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50WWVhciA9PT0gaXRlbTtcbiAgICB9XG5cbiAgICBpdGVtSXNJbnRlcnZhbChpdGVtOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3ZhbHVlLCBob3ZlcmVkSXRlbX0gPSB0aGlzO1xuXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCAhdGhpcy5pc1JhbmdlKHZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF2YWx1ZS5mcm9tLnllYXJTYW1lKHZhbHVlLnRvKSkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlLmZyb20ueWVhciA8PSBpdGVtICYmIHZhbHVlLnRvLnllYXIgPiBpdGVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGhvdmVyZWRJdGVtID09PSBudWxsIHx8IHZhbHVlLmZyb20ueWVhciA9PT0gaG92ZXJlZEl0ZW0pIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0dWlJblJhbmdlKFxuICAgICAgICAgICAgaXRlbSxcbiAgICAgICAgICAgIE1hdGgubWluKHZhbHVlLmZyb20ueWVhciwgaG92ZXJlZEl0ZW0pLFxuICAgICAgICAgICAgTWF0aC5tYXgodmFsdWUuZnJvbS55ZWFyLCBob3ZlcmVkSXRlbSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgb25JdGVtSG92ZXJlZChob3ZlcmVkOiBib29sZWFuLCBpdGVtOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkSXRlbShob3ZlcmVkLCBpdGVtKTtcbiAgICB9XG5cbiAgICBvbkl0ZW1QcmVzc2VkKHByZXNzZWQ6IGJvb2xlYW4sIGl0ZW06IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVByZXNzZWRJdGVtKHByZXNzZWQsIGl0ZW0pO1xuICAgIH1cblxuICAgIG9uSXRlbUNsaWNrKGl0ZW06IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnllYXJDbGljay5lbWl0KG5ldyBUdWlZZWFyKGl0ZW0pKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUhvdmVyZWRJdGVtKGhvdmVyZWQ6IGJvb2xlYW4sIGl0ZW06IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLmhvdmVyZWRJdGVtID0gaG92ZXJlZCA/IGl0ZW0gOiBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlUHJlc3NlZEl0ZW0ocHJlc3NlZDogYm9vbGVhbiwgaXRlbTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJlc3NlZEl0ZW0gPSBwcmVzc2VkID8gaXRlbSA6IG51bGw7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICp0dWlSZXBlYXRUaW1lcz1cImxldCByb3dJbmRleCBvZiByb3dzXCJcbiAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS15ZWFyLXBpY2tlcl9fcm93XCJcbiAgICBjbGFzcz1cInQtcm93XCJcbj5cbiAgICA8bmctY29udGFpbmVyICp0dWlSZXBlYXRUaW1lcz1cImxldCBjb2xJbmRleCBvZiA0XCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICp0dWlMZXQ9XCJnZXRJdGVtKHJvd0luZGV4LCBjb2xJbmRleCkgYXMgaXRlbVwiXG4gICAgICAgICAgICBhdXRvbWF0aW9uLWlkPVwidHVpLXByaW1pdGl2ZS15ZWFyLXBpY2tlcl9fY2VsbFwiXG4gICAgICAgICAgICBjbGFzcz1cInQtY2VsbFwiXG4gICAgICAgICAgICBbY2xhc3MudC1jZWxsX3RvZGF5XT1cIml0ZW1Jc1RvZGF5KGl0ZW0pXCJcbiAgICAgICAgICAgIFtjbGFzcy50LWNlbGxfaW50ZXJ2YWxdPVwiaXRlbUlzSW50ZXJ2YWwoaXRlbSlcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS1yYW5nZV09XCJnZXRJdGVtUmFuZ2UoaXRlbSlcIlxuICAgICAgICAgICAgW2F0dHIuZGF0YS1zdGF0ZV09XCJnZXRJdGVtU3RhdGUoaXRlbSlcIlxuICAgICAgICAgICAgW3R1aVNjcm9sbEludG9WaWV3XT1cInNjcm9sbEl0ZW1JbnRvVmlldyhpdGVtKVwiXG4gICAgICAgICAgICAodHVpSG92ZXJlZENoYW5nZSk9XCJvbkl0ZW1Ib3ZlcmVkKCRldmVudCwgaXRlbSlcIlxuICAgICAgICAgICAgKHR1aVByZXNzZWRDaGFuZ2UpPVwib25JdGVtUHJlc3NlZCgkZXZlbnQsIGl0ZW0pXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljayhpdGVtKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LWl0ZW1cIj57eyBpdGVtIH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=