carbon-components-angular 5.47.2 → 5.49.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 (84) hide show
  1. package/docs/documentation/classes/NumberChange.html +34 -0
  2. package/docs/documentation/components/ListRow.html +67 -236
  3. package/docs/documentation/components/NumberComponent.html +48 -14
  4. package/docs/documentation/components/PaginationNav.html +262 -33
  5. package/docs/documentation/components/ProgressIndicator.html +2 -2
  6. package/docs/documentation/components/StructuredList.html +1 -1
  7. package/docs/documentation/coverage.html +7 -7
  8. package/docs/documentation/interfaces/PaginationNavTranslations.html +20 -2
  9. package/docs/documentation/js/search/search_index.js +2 -2
  10. package/docs/documentation/modules/ComboBoxModule/dependencies.svg +4 -4
  11. package/docs/documentation/modules/ComboBoxModule.html +4 -4
  12. package/docs/documentation/modules/DatePickerInputModule/dependencies.svg +38 -34
  13. package/docs/documentation/modules/DatePickerInputModule.html +38 -34
  14. package/docs/documentation/modules/DatePickerModule/dependencies.svg +56 -52
  15. package/docs/documentation/modules/DatePickerModule.html +56 -52
  16. package/docs/documentation/modules/FileUploaderModule/dependencies.svg +35 -35
  17. package/docs/documentation/modules/FileUploaderModule.html +35 -35
  18. package/docs/documentation/modules/InlineLoadingModule/dependencies.svg +4 -4
  19. package/docs/documentation/modules/InlineLoadingModule.html +4 -4
  20. package/docs/documentation/modules/ProgressBarModule/dependencies.svg +4 -4
  21. package/docs/documentation/modules/ProgressBarModule.html +4 -4
  22. package/docs/documentation/modules/RadioModule/dependencies.svg +35 -35
  23. package/docs/documentation/modules/RadioModule.html +35 -35
  24. package/docs/documentation/modules/SearchModule/dependencies.svg +4 -4
  25. package/docs/documentation/modules/SearchModule.html +4 -4
  26. package/docs/documentation/modules/SelectModule/dependencies.svg +60 -60
  27. package/docs/documentation/modules/SelectModule.html +60 -60
  28. package/docs/documentation/modules/SliderModule/dependencies.svg +4 -4
  29. package/docs/documentation/modules/SliderModule.html +4 -4
  30. package/docs/documentation/modules/TableModule/dependencies.svg +4 -4
  31. package/docs/documentation/modules/TableModule.html +4 -4
  32. package/docs/documentation/modules/TabsModule/dependencies.svg +68 -68
  33. package/docs/documentation/modules/TabsModule.html +68 -68
  34. package/docs/documentation/modules/TagModule/dependencies.svg +28 -28
  35. package/docs/documentation/modules/TagModule.html +28 -28
  36. package/docs/documentation/modules/ThemeModule/dependencies.svg +4 -4
  37. package/docs/documentation/modules/ThemeModule.html +4 -4
  38. package/docs/documentation/modules/TimePickerSelectModule/dependencies.svg +4 -4
  39. package/docs/documentation/modules/TimePickerSelectModule.html +4 -4
  40. package/docs/documentation/modules/ToggleModule/dependencies.svg +38 -42
  41. package/docs/documentation/modules/ToggleModule.html +38 -42
  42. package/docs/documentation/modules/TooltipModule/dependencies.svg +28 -28
  43. package/docs/documentation/modules/TooltipModule.html +28 -28
  44. package/docs/documentation/modules/TreeviewModule/dependencies.svg +32 -32
  45. package/docs/documentation/modules/TreeviewModule.html +32 -32
  46. package/docs/documentation.json +188 -170
  47. package/docs/storybook/{8341.2bf88948.iframe.bundle.js → 8341.d095fdee.iframe.bundle.js} +1 -1
  48. package/docs/storybook/iframe.html +2 -2
  49. package/docs/storybook/main.11fd86ca.iframe.bundle.js +1 -0
  50. package/docs/storybook/main.css +3007 -2790
  51. package/docs/storybook/{number-input-number-stories.6aba5a3d.iframe.bundle.js → number-input-number-stories.8d02c22f.iframe.bundle.js} +1 -1
  52. package/docs/storybook/pagination-pagination-nav-stories.7b305bf2.iframe.bundle.js +1 -0
  53. package/docs/storybook/patterns-filtering-multiple-categories-stories.17085244.iframe.bundle.js +1 -0
  54. package/docs/storybook/project.json +1 -1
  55. package/docs/storybook/{runtime~main.14d57f59.iframe.bundle.js → runtime~main.807a23cc.iframe.bundle.js} +1 -1
  56. package/docs/storybook/{structured-list-structured-list-stories.c86ef32b.iframe.bundle.js → structured-list-structured-list-stories.e6a4535e.iframe.bundle.js} +1 -1
  57. package/esm2020/number-input/number.component.mjs +31 -1
  58. package/esm2020/pagination/pagination-nav/pagination-nav.component.mjs +32 -5
  59. package/esm2020/progress-indicator/progress-indicator.component.mjs +2 -2
  60. package/esm2020/structured-list/list-row.component.mjs +14 -20
  61. package/esm2020/structured-list/structured-list.component.mjs +2 -2
  62. package/fesm2015/carbon-components-angular-number-input.mjs +30 -0
  63. package/fesm2015/carbon-components-angular-number-input.mjs.map +1 -1
  64. package/fesm2015/carbon-components-angular-pagination.mjs +31 -4
  65. package/fesm2015/carbon-components-angular-pagination.mjs.map +1 -1
  66. package/fesm2015/carbon-components-angular-progress-indicator.mjs +1 -1
  67. package/fesm2015/carbon-components-angular-progress-indicator.mjs.map +1 -1
  68. package/fesm2015/carbon-components-angular-structured-list.mjs +14 -20
  69. package/fesm2015/carbon-components-angular-structured-list.mjs.map +1 -1
  70. package/fesm2020/carbon-components-angular-number-input.mjs +30 -0
  71. package/fesm2020/carbon-components-angular-number-input.mjs.map +1 -1
  72. package/fesm2020/carbon-components-angular-pagination.mjs +31 -4
  73. package/fesm2020/carbon-components-angular-pagination.mjs.map +1 -1
  74. package/fesm2020/carbon-components-angular-progress-indicator.mjs +1 -1
  75. package/fesm2020/carbon-components-angular-progress-indicator.mjs.map +1 -1
  76. package/fesm2020/carbon-components-angular-structured-list.mjs +14 -20
  77. package/fesm2020/carbon-components-angular-structured-list.mjs.map +1 -1
  78. package/package.json +1 -1
  79. package/pagination/pagination-nav/pagination-nav.component.d.ts +8 -1
  80. package/progress-indicator/progress-indicator.component.d.ts +1 -1
  81. package/structured-list/list-row.component.d.ts +1 -3
  82. package/docs/storybook/main.ca52fea9.iframe.bundle.js +0 -1
  83. package/docs/storybook/pagination-pagination-nav-stories.ace8938b.iframe.bundle.js +0 -1
  84. package/docs/storybook/patterns-filtering-multiple-categories-stories.487f9487.iframe.bundle.js +0 -1
@@ -166,6 +166,21 @@ export class NumberComponent {
166
166
  * Adds `step` to the current `value`.
167
167
  */
168
168
  onIncrement() {
169
+ // if max is set and value + step is greater than max, set value to max
170
+ // example: max = 100, step = 10, value = 95 , value + step = 105, value will be set to 100 (max) instead of 105
171
+ if (this.max !== null && this.value + this.step > this.max) {
172
+ this.value = this.max;
173
+ this.emitChangeEvent();
174
+ return;
175
+ }
176
+ // if min is set and value + step is less than min, set value to min
177
+ // example: min = 5, step = 2, value = 0, value + step = 2, value will be set to 5 (min) instead of 2
178
+ if (this.min !== null && this.value + this.step < this.min) {
179
+ this.value = this.min;
180
+ this.emitChangeEvent();
181
+ return;
182
+ }
183
+ // if max is not set or value + step is less than max, increment value by step
169
184
  if (this.max === null || this.value + this.step <= this.max) {
170
185
  this.value += this.step;
171
186
  this.value = parseFloat(this.value.toPrecision(this.precision));
@@ -176,6 +191,21 @@ export class NumberComponent {
176
191
  * Subtracts `step` to the current `value`.
177
192
  */
178
193
  onDecrement() {
194
+ // if max is set and value - step is greater than max, set value to max
195
+ // example: max = 15, step = 2, value = 20, value - step = 18, value will be set to 15 (max) instead of 18
196
+ if (this.max !== null && this.value - this.step > this.max) {
197
+ this.value = this.max;
198
+ this.emitChangeEvent();
199
+ return;
200
+ }
201
+ // if min is set and value - step is less than min, set value to min
202
+ // example: min = 5, step = 2, value = 6, value - step = 4, value will be set to 5 (min) instead of 4
203
+ if (this.min !== null && this.value - this.step < this.min) {
204
+ this.value = this.min;
205
+ this.emitChangeEvent();
206
+ return;
207
+ }
208
+ // if min is not set or value - step is greater than min, decrement value by step
179
209
  if (this.min === null || this.value - this.step >= this.min) {
180
210
  this.value -= this.step;
181
211
  this.value = parseFloat(this.value.toPrecision(this.precision));
@@ -513,4 +543,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
513
543
  args: ["focusout"]
514
544
  }] } });
515
545
  export { NumberComponent as Number };
516
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9udW1iZXItaW5wdXQvbnVtYmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULEtBQUssRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFLekU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBWTtDQVN4QjtBQUVEOzs7Ozs7OztHQVFHO0FBZ0hILE1BQU0sT0FBTyxlQUFlO0lBc0ozQjs7T0FFRztJQUNILFlBQXNCLElBQVU7UUFBVixTQUFJLEdBQUosSUFBSSxDQUFNO1FBbkpLLG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBRTNEOztXQUVHO1FBQ2tELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEU7OztXQUdHO1FBQ00sVUFBSyxHQUFxQixNQUFNLENBQUM7UUFDMUM7O1dBRUc7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzFCOztXQUVHO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztRQUMxQjs7V0FFRztRQUNNLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDekI7O1dBRUc7UUFDTSxPQUFFLEdBQUcsVUFBVSxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEQ7O1dBRUc7UUFDTSxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUMxQjs7V0FFRztRQUNNLFNBQUksR0FBdUIsSUFBSSxDQUFDO1FBbUJ6Qzs7V0FFRztRQUNNLFFBQUcsR0FBRyxJQUFJLENBQUM7UUFDcEI7O1dBRUc7UUFDTSxRQUFHLEdBQUcsSUFBSSxDQUFDO1FBYXBCOztXQUVHO1FBQ00sU0FBSSxHQUFHLENBQUMsQ0FBQztRQUtsQjs7V0FFRztRQUNNLFNB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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENvbXBvbmVudCxcblx0SW5wdXQsXG5cdEhvc3RCaW5kaW5nLFxuXHRFdmVudEVtaXR0ZXIsXG5cdE91dHB1dCxcblx0VGVtcGxhdGVSZWYsXG5cdEhvc3RMaXN0ZW5lclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5cbmltcG9ydCB7IEkxOG4sIE92ZXJyaWRhYmxlIH0gZnJvbSBcImNhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXIvaTE4blwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5cbi8qKlxuICogVXNlZCB0byBlbWl0IGNoYW5nZXMgcGVyZm9ybWVkIG9uIG51bWJlciBpbnB1dCBjb21wb25lbnRzLlxuICovXG5leHBvcnQgY2xhc3MgTnVtYmVyQ2hhbmdlIHtcblx0LyoqXG5cdCAqIENvbnRhaW5zIHRoZSBgTnVtYmVyYCB0aGF0IGhhcyBiZWVuIGNoYW5nZWQuXG5cdCAqL1xuXHRzb3VyY2U6IE51bWJlckNvbXBvbmVudDtcblx0LyoqXG5cdCAqIFRoZSB2YWx1ZSBvZiB0aGUgYE51bWJlcmAgZmllbGQgZW5jb21wYXNzZWQgaW4gdGhlIGBOdW1iZXJDaGFuZ2VgIGNsYXNzLlxuXHQgKi9cblx0dmFsdWU6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBHZXQgc3RhcnRlZCB3aXRoIGltcG9ydGluZyB0aGUgbW9kdWxlOlxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IE51bWJlck1vZHVsZSB9IGZyb20gJ2NhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXInO1xuICogYGBgXG4gKlxuICogW1NlZSBkZW1vXSguLi8uLi8/cGF0aD0vc3RvcnkvY29tcG9uZW50cy1udW1iZXItLWJhc2ljKVxuICovXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6IFwiY2RzLW51bWJlciwgaWJtLW51bWJlclwiLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxsYWJlbCAqbmdJZj1cInNrZWxldG9uICYmIGxhYmVsXCIgY2xhc3M9XCJjZHMtLWxhYmVsIGNkcy0tc2tlbGV0b25cIj48L2xhYmVsPlxuXHRcdDxkaXZcblx0XHRcdGRhdGEtbnVtYmVyaW5wdXRcblx0XHRcdFthdHRyLmRhdGEtaW52YWxpZF09XCIoaW52YWxpZCA/IHRydWUgOiBudWxsKVwiXG5cdFx0XHRjbGFzcz1cImNkcy0tbnVtYmVyXCJcblx0XHRcdFtuZ0NsYXNzXT1cIntcblx0XHRcdFx0J2Nkcy0tbnVtYmVyLS1saWdodCc6IHRoZW1lID09PSAnbGlnaHQnLFxuXHRcdFx0XHQnY2RzLS1udW1iZXItLW5vbGFiZWwnOiAhbGFiZWwsXG5cdFx0XHRcdCdjZHMtLW51bWJlci0taGVscGVydGV4dCc6IGhlbHBlclRleHQsXG5cdFx0XHRcdCdjZHMtLXNrZWxldG9uJyA6IHNrZWxldG9uLFxuXHRcdFx0XHQnY2RzLS1udW1iZXItLXNtJzogc2l6ZSA9PT0gJ3NtJyxcblx0XHRcdFx0J2Nkcy0tbnVtYmVyLS1tZCc6IHNpemUgPT09ICdtZCcsXG5cdFx0XHRcdCdjZHMtLW51bWJlci0tbGcnOiBzaXplID09PSAnbGcnXG5cdFx0XHR9XCI+XG5cdFx0XHQ8bGFiZWxcblx0XHRcdFx0Km5nSWY9XCIhc2tlbGV0b24gJiYgbGFiZWxcIlxuXHRcdFx0XHRbZm9yXT1cImlkXCJcblx0XHRcdFx0Y2xhc3M9XCJjZHMtLWxhYmVsXCJcblx0XHRcdFx0W25nQ2xhc3NdPVwieydjZHMtLWxhYmVsLS1kaXNhYmxlZCc6IGRpc2FibGVkfVwiPlxuXHRcdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzVGVtcGxhdGUobGFiZWwpXCI+e3tsYWJlbH19PC9uZy1jb250YWluZXI+XG5cdFx0XHRcdDxuZy10ZW1wbGF0ZSAqbmdJZj1cImlzVGVtcGxhdGUobGFiZWwpXCIgW25nVGVtcGxhdGVPdXRsZXRdPVwibGFiZWxcIj48L25nLXRlbXBsYXRlPlxuXHRcdFx0PC9sYWJlbD5cblx0XHRcdDxkaXZcblx0XHRcdFx0Y2xhc3M9XCJjZHMtLW51bWJlcl9faW5wdXQtd3JhcHBlclwiXG5cdFx0XHRcdFtuZ0NsYXNzXT1cIntcblx0XHRcdFx0XHQnY2RzLS1udW1iZXJfX2lucHV0LXdyYXBwZXItLXdhcm5pbmcnOiB3YXJuXG5cdFx0XHRcdH1cIj5cblx0XHRcdFx0PGlucHV0XG5cdFx0XHRcdFx0dHlwZT1cIm51bWJlclwiXG5cdFx0XHRcdFx0W2lkXT1cImlkXCJcblx0XHRcdFx0XHRbdmFsdWVdPVwidmFsdWVcIlxuXHRcdFx0XHRcdFthdHRyLm1pbl09XCJtaW5cIlxuXHRcdFx0XHRcdFthdHRyLm1heF09XCJtYXhcIlxuXHRcdFx0XHRcdFthdHRyLnN0ZXBdPVwic3RlcFwiXG5cdFx0XHRcdFx0W2Rpc2FibGVkXT1cImRpc2FibGVkXCJcblx0XHRcdFx0XHRbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuXHRcdFx0XHRcdFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG5cdFx0XHRcdFx0W2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxcIlxuXHRcdFx0XHRcdFthdHRyLmRhdGEtaW52YWxpZF09XCJpbnZhbGlkID8gaW52YWxpZCA6IG51bGxcIlxuXHRcdFx0XHRcdFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG5cdFx0XHRcdFx0KGZvY3VzKT1cImZsdWlkID8gaGFuZGxlRm9jdXMoJGV2ZW50KTogbnVsbFwiXG5cdFx0XHRcdFx0KGJsdXIpPVwiZmx1aWQgPyBoYW5kbGVGb2N1cygkZXZlbnQpOiBudWxsXCJcblx0XHRcdFx0XHQoY2hhbmdlKT1cIm9uTnVtYmVySW5wdXRDaGFuZ2UoJGV2ZW50KVwiLz5cblx0XHRcdFx0PHN2Z1xuXHRcdFx0XHRcdCpuZ0lmPVwiIXNrZWxldG9uICYmIGludmFsaWRcIlxuXHRcdFx0XHRcdGNkc0ljb249XCJ3YXJuaW5nLS1maWxsZWRcIlxuXHRcdFx0XHRcdHNpemU9XCIxNlwiXG5cdFx0XHRcdFx0Y2xhc3M9XCJjZHMtLW51bWJlcl9faW52YWxpZFwiPlxuXHRcdFx0XHQ8L3N2Zz5cblx0XHRcdFx0PHN2Z1xuXHRcdFx0XHRcdCpuZ0lmPVwiIXNrZWxldG9uICYmICFpbnZhbGlkICYmIHdhcm5cIlxuXHRcdFx0XHRcdGNkc0ljb249XCJ3YXJuaW5nLS1hbHQtLWZpbGxlZFwiXG5cdFx0XHRcdFx0c2l6ZT1cIjE2XCJcblx0XHRcdFx0XHRjbGFzcz1cImNkcy0tbnVtYmVyX19pbnZhbGlkIGNkcy0tbnVtYmVyX19pbnZhbGlkLS13YXJuaW5nXCI+XG5cdFx0XHRcdDwvc3ZnPlxuXHRcdFx0XHQ8ZGl2ICpuZ0lmPVwiIXNrZWxldG9uXCIgY2xhc3M9XCJjZHMtLW51bWJlcl9fY29udHJvbHNcIj5cblx0XHRcdFx0XHQ8YnV0dG9uXG5cdFx0XHRcdFx0XHRjbGFzcz1cImNkcy0tbnVtYmVyX19jb250cm9sLWJ0biBkb3duLWljb25cIlxuXHRcdFx0XHRcdFx0dHlwZT1cImJ1dHRvblwiXG5cdFx0XHRcdFx0XHRbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/IHRydWUgOiBudWxsXCJcblx0XHRcdFx0XHRcdGFyaWEtbGl2ZT1cInBvbGl0ZVwiXG5cdFx0XHRcdFx0XHRhcmlhLWF0b21pYz1cInRydWVcIlxuXHRcdFx0XHRcdFx0W2F0dHIuYXJpYS1sYWJlbF09XCJnZXREZWNyZW1lbnRMYWJlbCgpIHwgYXN5bmNcIlxuXHRcdFx0XHRcdFx0KGNsaWNrKT1cIm9uRGVjcmVtZW50KClcIj5cblx0XHRcdFx0XHRcdDxzdmcgY2RzSWNvbj1cInN1YnRyYWN0XCIgc2l6ZT1cIjE2XCI+PC9zdmc+XG5cdFx0XHRcdFx0PC9idXR0b24+XG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImNkcy0tbnVtYmVyX19ydWxlLWRpdmlkZXJcIj48L2Rpdj5cblx0XHRcdFx0XHQ8YnV0dG9uXG5cdFx0XHRcdFx0XHRjbGFzcz1cImNkcy0tbnVtYmVyX19jb250cm9sLWJ0biB1cC1pY29uXCJcblx0XHRcdFx0XHRcdHR5cGU9XCJidXR0b25cIlxuXHRcdFx0XHRcdFx0W2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgPyB0cnVlIDogbnVsbFwiXG5cdFx0XHRcdFx0XHRhcmlhLWxpdmU9XCJwb2xpdGVcIlxuXHRcdFx0XHRcdFx0YXJpYS1hdG9taWM9XCJ0cnVlXCJcblx0XHRcdFx0XHRcdFthdHRyLmFyaWEtbGFiZWxdPVwiZ2V0SW5jcmVtZW50TGFiZWwoKSB8IGFzeW5jXCJcblx0XHRcdFx0XHRcdChjbGljayk9XCJvbkluY3JlbWVudCgpXCI+XG5cdFx0XHRcdFx0XHQ8c3ZnIGNkc0ljb249XCJhZGRcIiBzaXplPVwiMTZcIj48L3N2Zz5cblx0XHRcdFx0XHQ8L2J1dHRvbj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiY2RzLS1udW1iZXJfX3J1bGUtZGl2aWRlclwiPjwvZGl2PlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGhyICpuZ0lmPVwiZmx1aWRcIiBjbGFzcz1cImNkcy0tbnVtYmVyLWlucHV0X19kaXZpZGVyXCIgLz5cblx0XHRcdDxkaXZcblx0XHRcdFx0Km5nSWY9XCJoZWxwZXJUZXh0ICYmICFpbnZhbGlkICYmICF3YXJuICYmICFmbHVpZFwiXG5cdFx0XHRcdGNsYXNzPVwiY2RzLS1mb3JtX19oZWxwZXItdGV4dFwiXG5cdFx0XHRcdFtuZ0NsYXNzXT1cIntcblx0XHRcdFx0XHQnY2RzLS1mb3JtX19oZWxwZXItdGV4dC0tZGlzYWJsZWQnOiBkaXNhYmxlZFxuXHRcdFx0XHR9XCI+XG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNUZW1wbGF0ZShoZWxwZXJUZXh0KVwiPnt7aGVscGVyVGV4dH19PC9uZy1jb250YWluZXI+XG5cdFx0XHRcdDxuZy10ZW1wbGF0ZSAqbmdJZj1cImlzVGVtcGxhdGUoaGVscGVyVGV4dClcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJoZWxwZXJUZXh0XCI+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiAqbmdJZj1cImludmFsaWRcIiBjbGFzcz1cImNkcy0tZm9ybS1yZXF1aXJlbWVudFwiPlxuXHRcdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzVGVtcGxhdGUoaW52YWxpZFRleHQpXCI+e3tpbnZhbGlkVGV4dH19PC9uZy1jb250YWluZXI+XG5cdFx0XHRcdDxuZy10ZW1wbGF0ZSAqbmdJZj1cImlzVGVtcGxhdGUoaW52YWxpZFRleHQpXCIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaW52YWxpZFRleHRcIj48L25nLXRlbXBsYXRlPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2ICpuZ0lmPVwiIWludmFsaWQgJiYgd2FyblwiIGNsYXNzPVwiY2RzLS1mb3JtLXJlcXVpcmVtZW50XCI+XG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNUZW1wbGF0ZSh3YXJuVGV4dClcIj57e3dhcm5UZXh0fX08L25nLWNvbnRhaW5lcj5cblx0XHRcdFx0PG5nLXRlbXBsYXRlICpuZ0lmPVwiaXNUZW1wbGF0ZSh3YXJuVGV4dClcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJ3YXJuVGV4dFwiPjwvbmctdGVtcGxhdGU+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0YCxcblx0cHJvdmlkZXJzOiBbXG5cdFx0e1xuXHRcdFx0cHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG5cdFx0XHR1c2VFeGlzdGluZzogTnVtYmVyQ29tcG9uZW50LFxuXHRcdFx0bXVsdGk6IHRydWVcblx0XHR9XG5cdF1cbn0pXG5leHBvcnQgY2xhc3MgTnVtYmVyQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXHQvKipcblx0ICogVmFyaWFibGUgdXNlZCBmb3IgY3JlYXRpbmcgdW5pcXVlIGlkcyBmb3IgbnVtYmVyIGlucHV0IGNvbXBvbmVudHMuXG5cdCAqL1xuXHRzdGF0aWMgbnVtYmVyQ291bnQgPSAwO1xuXG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tZm9ybS1pdGVtXCIpIGNvbnRhaW5lckNsYXNzID0gdHJ1ZTtcblxuXHQvKipcblx0ICogU2V0IHRvIGB0cnVlYCBmb3IgcmVhZG9ubHkgc3RhdGUuXG5cdCAqL1xuXHRASW5wdXQoKSBASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLW51bWJlci0tcmVhZG9ubHlcIikgcmVhZG9ubHkgPSBmYWxzZTtcblx0LyoqXG5cdCAqIEBkZXByZWNhdGVkIHNpbmNlIHY1IC0gVXNlIGBjZHNMYXllcmAgZGlyZWN0aXZlIGluc3RlYWRcblx0ICogYGxpZ2h0YCBvciBgZGFya2AgbnVtYmVyIGlucHV0IHRoZW1lLlxuXHQgKi9cblx0QElucHV0KCkgdGhlbWU6IFwibGlnaHRcIiB8IFwiZGFya1wiID0gXCJkYXJrXCI7XG5cdC8qKlxuXHQgKiBTZXQgdG8gYHRydWVgIGZvciBhIGRpc2FibGVkIG51bWJlciBpbnB1dC5cblx0ICovXG5cdEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cdC8qKlxuXHQgKiBTZXQgdG8gYHRydWVgIGZvciBhIGxvYWRpbmcgbnVtYmVyIGNvbXBvbmVudC5cblx0ICovXG5cdEBJbnB1dCgpIHNrZWxldG9uID0gZmFsc2U7XG5cdC8qKlxuXHQgKiBTZXQgdG8gYHRydWVgIGZvciBhbiBpbnZhbGlkIG51bWJlciBjb21wb25lbnQuXG5cdCAqL1xuXHRASW5wdXQoKSBpbnZhbGlkID0gZmFsc2U7XG5cdC8qKlxuXHQgKiBUaGUgdW5pcXVlIGlkIGZvciB0aGUgbnVtYmVyIGNvbXBvbmVudC5cblx0ICovXG5cdEBJbnB1dCgpIGlkID0gYG51bWJlci0ke051bWJlckNvbXBvbmVudC5udW1iZXJDb3VudH1gO1xuXHQvKipcblx0ICogU2V0cyB0aGUgcGxhY2Vob2xkZXIgYXR0cmlidXRlIG9uIHRoZSBgaW5wdXRgIGVsZW1lbnQuXG5cdCAqL1xuXHRASW5wdXQoKSBwbGFjZWhvbGRlciA9IFwiXCI7XG5cdC8qKlxuXHQgKiBOdW1iZXIgaW5wdXQgZmllbGQgcmVuZGVyIHNpemVcblx0ICovXG5cdEBJbnB1dCgpIHNpemU6IFwic21cIiB8IFwibWRcIiB8IFwibGdcIiA9IFwibWRcIjtcblx0LyoqXG5cdCAqIFJlZmxlY3RzIHRoZSByZXF1aXJlZCBhdHRyaWJ1dGUgb2YgdGhlIGBpbnB1dGAgZWxlbWVudC5cblx0ICovXG5cdEBJbnB1dCgpIHJlcXVpcmVkOiBib29sZWFuO1xuXHQvKipcblx0ICogU2V0cyB0aGUgdmFsdWUgYXR0cmlidXRlIG9uIHRoZSBgaW5wdXRgIGVsZW1lbnQuXG5cdCAqL1xuXHRASW5wdXQoKSBzZXQgdmFsdWUodjogYW55KSB7XG5cdFx0aWYgKHYgPT09IFwiXCIgfHwgdiA9PT0gbnVsbCkge1xuXHRcdFx0dGhpcy5fdmFsdWUgPSBudWxsO1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblx0XHR0aGlzLl92YWx1ZSA9IE51bWJlcih2KTtcblx0fVxuXG5cdGdldCB2YWx1ZSgpIHtcblx0XHRyZXR1cm4gdGhpcy5fdmFsdWU7XG5cdH1cblx0LyoqXG5cdCAqIFNldHMgdGhlIG1pbiBhdHRyaWJ1dGUgb24gdGhlIGBpbnB1dGAgZWxlbWVudC5cblx0ICovXG5cdEBJbnB1dCgpIG1pbiA9IG51bGw7XG5cdC8qKlxuXHQgKiBTZXRzIHRoZSBtYXggYXR0cmlidXRlIG9uIHRoZSBgaW5wdXRgIGVsZW1lbnQuXG5cdCAqL1xuXHRASW5wdXQoKSBtYXggPSBudWxsO1xuXHQvKipcblx0ICogU2V0cyB0aGUgdGV4dCBpbnNpZGUgdGhlIGBsYWJlbGAgdGFnLlxuXHQgKi9cblx0QElucHV0KCkgbGFiZWw6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG5cdC8qKlxuXHQgKiBTZXRzIHRoZSBvcHRpb25hbCBoZWxwZXIgdGV4dC5cblx0ICovXG5cdEBJbnB1dCgpIGhlbHBlclRleHQ6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG5cdC8qKlxuXHQgKiBTZXRzIHRoZSBpbnZhbGlkIHRleHQuXG5cdCAqL1xuXHRASW5wdXQoKSBpbnZhbGlkVGV4dDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pjtcblx0LyoqXG5cdCAqIFNldHMgdGhlIGFtb3VudCB0aGUgbnVtYmVyIGNvbnRyb2xzIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ5LlxuXHQgKi9cblx0QElucHV0KCkgc3RlcCA9IDE7XG5cdC8qKlxuXHQgKiBJZiBgc3RlcGAgaXMgYSBkZWNpbWFsLCB3ZSBtYXkgd2FudCBwcmVjaXNpb24gdG8gYmUgc2V0IHRvIGdvIGFyb3VuZCBmbG9hdGluZyBwb2ludCBwcmVjaXNpb24uXG5cdCAqL1xuXHRASW5wdXQoKSBwcmVjaXNpb246IG51bWJlcjtcblx0LyoqXG5cdCAqIFNldCB0byBgdHJ1ZWAgdG8gc2hvdyBhIHdhcm5pbmcgKGNvbnRlbnRzIHNldCBieSB3YXJuaW5nVGV4dClcblx0ICovXG5cdEBJbnB1dCgpIHdhcm4gPSBmYWxzZTtcblx0LyoqXG5cdCAqIFNldHMgdGhlIHdhcm5pbmcgdGV4dFxuXHQgKi9cblx0QElucHV0KCkgd2FyblRleHQ6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG5cdC8qKlxuXHQgKiBTZXRzIHRoZSBhcmlhbGFiZWwgZm9yIGlucHV0XG5cdCAqL1xuXHRASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcblx0LyoqXG5cdCAqIEVtaXRzIGV2ZW50IG5vdGlmeWluZyBvdGhlciBjbGFzc2VzIHdoZW4gYSBjaGFuZ2UgaW4gc3RhdGUgb2NjdXJzIGluIHRoZSBpbnB1dC5cblx0ICovXG5cdEBPdXRwdXQoKSBjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE51bWJlckNoYW5nZT4oKTtcblxuXHRASW5wdXQoKVxuXHRzZXQgZGVjcmVtZW50TGFiZWwodmFsdWU6IHN0cmluZyB8IE9ic2VydmFibGU8c3RyaW5nPikge1xuXHRcdHRoaXMuX2RlY3JlbWVudExhYmVsLm92ZXJyaWRlKHZhbHVlKTtcblx0fVxuXG5cdGdldCBkZWNyZW1lbnRMYWJlbCgpIHtcblx0XHRyZXR1cm4gdGhpcy5fZGVjcmVtZW50TGFiZWwudmFsdWU7XG5cdH1cblxuXHRASW5wdXQoKVxuXHRzZXQgaW5jcmVtZW50TGFiZWwodmFsdWU6IHN0cmluZyB8IE9ic2VydmFibGU8c3RyaW5nPikge1xuXHRcdHRoaXMuX2luY3JlbWVudExhYmVsLm92ZXJyaWRlKHZhbHVlKTtcblx0fVxuXG5cdGdldCBpbmNyZW1lbnRMYWJlbCgpIHtcblx0XHRyZXR1cm4gdGhpcy5faW5jcmVtZW50TGFiZWwudmFsdWU7XG5cdH1cblxuXHQvKipcblx0ICogRXhwZXJpbWVudGFsOiBlbmFibGUgZmx1aWQgc3RhdGVcblx0ICovXG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbnVtYmVyLWlucHV0LS1mbHVpZFwiKSBASW5wdXQoKSBmbHVpZCA9IGZhbHNlO1xuXG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbnVtYmVyLWlucHV0LS1mbHVpZC0taW52YWxpZFwiKSBnZXQgZmx1aWRJbnZhbGlkKCkge1xuXHRcdHJldHVybiB0aGlzLmZsdWlkICYmIHRoaXMuaW52YWxpZDtcblx0fVxuXG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbnVtYmVyLWlucHV0LS1mbHVpZC0tZGlzYWJsZWRcIikgZ2V0IGZsdWlkRGlzYWJsZWQoKSB7XG5cdFx0cmV0dXJuIHRoaXMuZmx1aWQgJiYgdGhpcy5kaXNhYmxlZDtcblx0fVxuXG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbnVtYmVyLWlucHV0LS1mbHVpZC0tZm9jdXNcIikgZ2V0IGZsdWlkRm9jdXMoKSB7XG5cdFx0cmV0dXJuIHRoaXMuZmx1aWQgJiYgdGhpcy5faXNGb2N1c2VkO1xuXHR9XG5cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS10ZXh0LWlucHV0LS1mbHVpZF9fc2tlbGV0b25cIikgZ2V0IGZsdWlkU2tlbGV0b24oKSB7XG5cdFx0cmV0dXJuIHRoaXMuZmx1aWQgJiYgdGhpcy5za2VsZXRvbjtcblx0fVxuXG5cdHByb3RlY3RlZCBfaXNGb2N1c2VkID0gZmFsc2U7XG5cblx0cHJvdGVjdGVkIF92YWx1ZSA9IDA7XG5cblx0cHJvdGVjdGVkIF9kZWNyZW1lbnRMYWJlbDogT3ZlcnJpZGFibGUgPSB0aGlzLmkxOG4uZ2V0T3ZlcnJpZGFibGUoXCJOVU1CRVIuREVDUkVNRU5UXCIpO1xuXHRwcm90ZWN0ZWQgX2luY3JlbWVudExhYmVsOiBPdmVycmlkYWJsZSA9IHRoaXMuaTE4bi5nZXRPdmVycmlkYWJsZShcIk5VTUJFUi5JTkNSRU1FTlRcIik7XG5cblx0LyoqXG5cdCAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgYE51bWJlcmAuXG5cdCAqL1xuXHRjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaTE4bjogSTE4bikge1xuXHRcdE51bWJlckNvbXBvbmVudC5udW1iZXJDb3VudCsrO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoaXMgaXMgdGhlIGluaXRpYWwgdmFsdWUgc2V0IHRvIHRoZSBjb21wb25lbnRcblx0ICogQHBhcmFtIHZhbHVlIFRoZSBpbnB1dCB2YWx1ZS5cblx0ICovXG5cdHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcblx0XHR0aGlzLnZhbHVlID0gdmFsdWU7XG5cdH1cblxuXHQvKipcblx0ICogU2V0cyBhIG1ldGhvZCBpbiBvcmRlciB0byBwcm9wYWdhdGUgY2hhbmdlcyBiYWNrIHRvIHRoZSBmb3JtLlxuXHQgKi9cblx0cHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuXHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XG5cdH1cblxuXHQvKipcblx0ICogUmVnaXN0ZXJzIGEgY2FsbGJhY2sgdG8gYmUgdHJpZ2dlcmVkIHdoZW4gdGhlIGNvbnRyb2wgaGFzIGJlZW4gdG91Y2hlZC5cblx0ICogQHBhcmFtIGZuIENhbGxiYWNrIHRvIGJlIHRyaWdnZXJlZCB3aGVuIHRoZSBudW1iZXIgaW5wdXQgaXMgdG91Y2hlZC5cblx0ICovXG5cdHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG5cdFx0dGhpcy5vblRvdWNoZWQgPSBmbjtcblx0fVxuXG5cdEBIb3N0TGlzdGVuZXIoXCJmb2N1c291dFwiKVxuXHRmb2N1c091dCgpIHtcblx0XHR0aGlzLm9uVG91Y2hlZCgpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIHRocm91Z2ggdGhlIG1vZGVsXG5cdCAqL1xuXHRzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcblx0XHR0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBDYWxsZWQgd2hlbiBudW1iZXIgaW5wdXQgaXMgYmx1cnJlZC4gTmVlZGVkIHRvIHByb3Blcmx5IGltcGxlbWVudCBgQ29udHJvbFZhbHVlQWNjZXNzb3JgLlxuXHQgKi9cblx0b25Ub3VjaGVkOiAoKSA9PiBhbnkgPSAoKSA9PiB7IH07XG5cblx0LyoqXG5cdCAqIE1ldGhvZCBzZXQgaW4gYHJlZ2lzdGVyT25DaGFuZ2VgIHRvIHByb3BhZ2F0ZSBjaGFuZ2VzIGJhY2sgdG8gdGhlIGZvcm0uXG5cdCAqL1xuXHRwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7IH07XG5cblx0LyoqXG5cdCAqIEFkZHMgYHN0ZXBgIHRvIHRoZSBjdXJyZW50IGB2YWx1ZWAuXG5cdCAqL1xuXHRvbkluY3JlbWVudCgpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5tYXggPT09IG51bGwgfHwgdGhpcy52YWx1ZSArIHRoaXMuc3RlcCA8PSB0aGlzLm1heCkge1xuXHRcdFx0dGhpcy52YWx1ZSArPSB0aGlzLnN0ZXA7XG5cdFx0XHR0aGlzLnZhbHVlID0gcGFyc2VGbG9hdCh0aGlzLnZhbHVlLnRvUHJlY2lzaW9uKHRoaXMucHJlY2lzaW9uKSk7XG5cdFx0XHR0aGlzLmVtaXRDaGFuZ2VFdmVudCgpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBTdWJ0cmFjdHMgYHN0ZXBgIHRvIHRoZSBjdXJyZW50IGB2YWx1ZWAuXG5cdCAqL1xuXHRvbkRlY3JlbWVudCgpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5taW4gPT09IG51bGwgfHwgdGhpcy52YWx1ZSAtIHRoaXMuc3RlcCA+PSB0aGlzLm1pbikge1xuXHRcdFx0dGhpcy52YWx1ZSAtPSB0aGlzLnN0ZXA7XG5cdFx0XHR0aGlzLnZhbHVlID0gcGFyc2VGbG9hdCh0aGlzLnZhbHVlLnRvUHJlY2lzaW9uKHRoaXMucHJlY2lzaW9uKSk7XG5cdFx0XHR0aGlzLmVtaXRDaGFuZ2VFdmVudCgpO1xuXHRcdH1cblx0fVxuXG5cdGdldERlY3JlbWVudExhYmVsKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG5cdFx0cmV0dXJuIHRoaXMuX2RlY3JlbWVudExhYmVsLnN1YmplY3Q7XG5cdH1cblxuXHRnZXRJbmNyZW1lbnRMYWJlbCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuXHRcdHJldHVybiB0aGlzLl9pbmNyZW1lbnRMYWJlbC5zdWJqZWN0O1xuXHR9XG5cblx0LyoqXG5cdCAqIENyZWF0ZXMgYSBjbGFzcyBvZiBgTnVtYmVyQ2hhbmdlYCB0byBlbWl0IHRoZSBjaGFuZ2UgaW4gdGhlIGBOdW1iZXJgLlxuXHQgKi9cblx0ZW1pdENoYW5nZUV2ZW50KCk6IHZvaWQge1xuXHRcdGxldCBldmVudCA9IG5ldyBOdW1iZXJDaGFuZ2UoKTtcblx0XHRldmVudC5zb3VyY2UgPSB0aGlzO1xuXHRcdGV2ZW50LnZhbHVlID0gdGhpcy52YWx1ZTtcblx0XHR0aGlzLmNoYW5nZS5lbWl0KGV2ZW50KTtcblx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcblx0fVxuXG5cdG9uTnVtYmVySW5wdXRDaGFuZ2UoZXZlbnQpIHtcblx0XHR0aGlzLnZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuXHRcdHRoaXMuZW1pdENoYW5nZUV2ZW50KCk7XG5cdH1cblxuXHRwdWJsaWMgaXNUZW1wbGF0ZSh2YWx1ZSkge1xuXHRcdHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmO1xuXHR9XG5cblx0aGFuZGxlRm9jdXMoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcblx0XHRpZiAoXCJ0eXBlXCIgaW4gZXZlbnQudGFyZ2V0ICYmICg8SFRNTElucHV0RWxlbWVudD5ldmVudC50YXJnZXQpLnR5cGUgPT09IFwiYnV0dG9uXCIpIHtcblx0XHRcdHRoaXMuX2lzRm9jdXNlZCA9IGZhbHNlO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLl9pc0ZvY3VzZWQgPSBldmVudC50eXBlID09PSBcImZvY3VzXCI7XG5cdFx0fVxuXHR9XG59XG5leHBvcnQgeyBOdW1iZXJDb21wb25lbnQgYXMgTnVtYmVyIH07XG4iXX0=
546
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9udW1iZXItaW5wdXQvbnVtYmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULEtBQUssRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFLekU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBWTtDQVN4QjtBQUVEOzs7Ozs7OztHQVFHO0FBZ0hILE1BQU0sT0FBTyxlQUFlO0lBc0ozQjs7T0FFRztJQUNILFlBQXNCLElBQVU7UUFBVixTQUFJLEdBQUosSUFBSSxDQUFNO1FBbkpLLG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBRTNEOztXQUVHO1FBQ2tELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEU7OztXQUdHO1FBQ00sVUFBSyxHQUFxQixNQUFNLENBQUM7UUFDMUM7O1dBRUc7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzFCOztXQUVHO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztRQUMxQjs7V0FFRztRQUNNLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDekI7O1dBRUc7UUFDTSxPQUFFLEdBQUcsVUFBVSxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEQ7O1dBRUc7UUFDTSxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUMxQjs7V0FFRztRQUNNLFNBQUksR0FBdUIsSUFBSSxDQUFDO1FBbUJ6Qzs7V0FFRztRQUNNLFFBQUcsR0FBRyxJQUFJLENBQUM7UUFDcEI7O1dBRUc7UUFDTSxRQUFHLEdBQUcsSUFBSSxDQUFDO1FBYXBCOztXQUVHO1FBQ00sU0FBSSxHQUFHLENBQUMsQ0FBQztRQUtsQjs7V0FFRztRQUNNLFNB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Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0Q29tcG9uZW50LFxuXHRJbnB1dCxcblx0SG9zdEJpbmRpbmcsXG5cdEV2ZW50RW1pdHRlcixcblx0T3V0cHV0LFxuXHRUZW1wbGF0ZVJlZixcblx0SG9zdExpc3RlbmVyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcblxuaW1wb3J0IHsgSTE4biwgT3ZlcnJpZGFibGUgfSBmcm9tIFwiY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhci9pMThuXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcblxuLyoqXG4gKiBVc2VkIHRvIGVtaXQgY2hhbmdlcyBwZXJmb3JtZWQgb24gbnVtYmVyIGlucHV0IGNvbXBvbmVudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBOdW1iZXJDaGFuZ2Uge1xuXHQvKipcblx0ICogQ29udGFpbnMgdGhlIGBOdW1iZXJgIHRoYXQgaGFzIGJlZW4gY2hhbmdlZC5cblx0ICovXG5cdHNvdXJjZTogTnVtYmVyQ29tcG9uZW50O1xuXHQvKipcblx0ICogVGhlIHZhbHVlIG9mIHRoZSBgTnVtYmVyYCBmaWVsZCBlbmNvbXBhc3NlZCBpbiB0aGUgYE51bWJlckNoYW5nZWAgY2xhc3MuXG5cdCAqL1xuXHR2YWx1ZTogbnVtYmVyO1xufVxuXG4vKipcbiAqIEdldCBzdGFydGVkIHdpdGggaW1wb3J0aW5nIHRoZSBtb2R1bGU6XG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgTnVtYmVyTW9kdWxlIH0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG4gKiBgYGBcbiAqXG4gKiBbU2VlIGRlbW9dKC4uLy4uLz9wYXRoPS9zdG9yeS9jb21wb25lbnRzLW51bWJlci0tYmFzaWMpXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtbnVtYmVyLCBpYm0tbnVtYmVyXCIsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PGxhYmVsICpuZ0lmPVwic2tlbGV0b24gJiYgbGFiZWxcIiBjbGFzcz1cImNkcy0tbGFiZWwgY2RzLS1za2VsZXRvblwiPjwvbGFiZWw+XG5cdFx0PGRpdlxuXHRcdFx0ZGF0YS1udW1iZXJpbnB1dFxuXHRcdFx0W2F0dHIuZGF0YS1pbnZhbGlkXT1cIihpbnZhbGlkID8gdHJ1ZSA6IG51bGwpXCJcblx0XHRcdGNsYXNzPVwiY2RzLS1udW1iZXJcIlxuXHRcdFx0W25nQ2xhc3NdPVwie1xuXHRcdFx0XHQnY2RzLS1udW1iZXItLWxpZ2h0JzogdGhlbWUgPT09ICdsaWdodCcsXG5cdFx0XHRcdCdjZHMtLW51bWJlci0tbm9sYWJlbCc6ICFsYWJlbCxcblx0XHRcdFx0J2Nkcy0tbnVtYmVyLS1oZWxwZXJ0ZXh0JzogaGVscGVyVGV4dCxcblx0XHRcdFx0J2Nkcy0tc2tlbGV0b24nIDogc2tlbGV0b24sXG5cdFx0XHRcdCdjZHMtLW51bWJlci0tc20nOiBzaXplID09PSAnc20nLFxuXHRcdFx0XHQnY2RzLS1udW1iZXItLW1kJzogc2l6ZSA9PT0gJ21kJyxcblx0XHRcdFx0J2Nkcy0tbnVtYmVyLS1sZyc6IHNpemUgPT09ICdsZydcblx0XHRcdH1cIj5cblx0XHRcdDxsYWJlbFxuXHRcdFx0XHQqbmdJZj1cIiFza2VsZXRvbiAmJiBsYWJlbFwiXG5cdFx0XHRcdFtmb3JdPVwiaWRcIlxuXHRcdFx0XHRjbGFzcz1cImNkcy0tbGFiZWxcIlxuXHRcdFx0XHRbbmdDbGFzc109XCJ7J2Nkcy0tbGFiZWwtLWRpc2FibGVkJzogZGlzYWJsZWR9XCI+XG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNUZW1wbGF0ZShsYWJlbClcIj57e2xhYmVsfX08L25nLWNvbnRhaW5lcj5cblx0XHRcdFx0PG5nLXRlbXBsYXRlICpuZ0lmPVwiaXNUZW1wbGF0ZShsYWJlbClcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJsYWJlbFwiPjwvbmctdGVtcGxhdGU+XG5cdFx0XHQ8L2xhYmVsPlxuXHRcdFx0PGRpdlxuXHRcdFx0XHRjbGFzcz1cImNkcy0tbnVtYmVyX19pbnB1dC13cmFwcGVyXCJcblx0XHRcdFx0W25nQ2xhc3NdPVwie1xuXHRcdFx0XHRcdCdjZHMtLW51bWJlcl9faW5wdXQtd3JhcHBlci0td2FybmluZyc6IHdhcm5cblx0XHRcdFx0fVwiPlxuXHRcdFx0XHQ8aW5wdXRcblx0XHRcdFx0XHR0eXBlPVwibnVtYmVyXCJcblx0XHRcdFx0XHRbaWRdPVwiaWRcIlxuXHRcdFx0XHRcdFt2YWx1ZV09XCJ2YWx1ZVwiXG5cdFx0XHRcdFx0W2F0dHIubWluXT1cIm1pblwiXG5cdFx0XHRcdFx0W2F0dHIubWF4XT1cIm1heFwiXG5cdFx0XHRcdFx0W2F0dHIuc3RlcF09XCJzdGVwXCJcblx0XHRcdFx0XHRbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuXHRcdFx0XHRcdFtyZWFkb25seV09XCJyZWFkb25seVwiXG5cdFx0XHRcdFx0W3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcblx0XHRcdFx0XHRbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG5cdFx0XHRcdFx0W2F0dHIuZGF0YS1pbnZhbGlkXT1cImludmFsaWQgPyBpbnZhbGlkIDogbnVsbFwiXG5cdFx0XHRcdFx0W3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcblx0XHRcdFx0XHQoZm9jdXMpPVwiZmx1aWQgPyBoYW5kbGVGb2N1cygkZXZlbnQpOiBudWxsXCJcblx0XHRcdFx0XHQoYmx1cik9XCJmbHVpZCA/IGhhbmRsZUZvY3VzKCRldmVudCk6IG51bGxcIlxuXHRcdFx0XHRcdChjaGFuZ2UpPVwib25OdW1iZXJJbnB1dENoYW5nZSgkZXZlbnQpXCIvPlxuXHRcdFx0XHQ8c3ZnXG5cdFx0XHRcdFx0Km5nSWY9XCIhc2tlbGV0b24gJiYgaW52YWxpZFwiXG5cdFx0XHRcdFx0Y2RzSWNvbj1cIndhcm5pbmctLWZpbGxlZFwiXG5cdFx0XHRcdFx0c2l6ZT1cIjE2XCJcblx0XHRcdFx0XHRjbGFzcz1cImNkcy0tbnVtYmVyX19pbnZhbGlkXCI+XG5cdFx0XHRcdDwvc3ZnPlxuXHRcdFx0XHQ8c3ZnXG5cdFx0XHRcdFx0Km5nSWY9XCIhc2tlbGV0b24gJiYgIWludmFsaWQgJiYgd2FyblwiXG5cdFx0XHRcdFx0Y2RzSWNvbj1cIndhcm5pbmctLWFsdC0tZmlsbGVkXCJcblx0XHRcdFx0XHRzaXplPVwiMTZcIlxuXHRcdFx0XHRcdGNsYXNzPVwiY2RzLS1udW1iZXJfX2ludmFsaWQgY2RzLS1udW1iZXJfX2ludmFsaWQtLXdhcm5pbmdcIj5cblx0XHRcdFx0PC9zdmc+XG5cdFx0XHRcdDxkaXYgKm5nSWY9XCIhc2tlbGV0b25cIiBjbGFzcz1cImNkcy0tbnVtYmVyX19jb250cm9sc1wiPlxuXHRcdFx0XHRcdDxidXR0b25cblx0XHRcdFx0XHRcdGNsYXNzPVwiY2RzLS1udW1iZXJfX2NvbnRyb2wtYnRuIGRvd24taWNvblwiXG5cdFx0XHRcdFx0XHR0eXBlPVwiYnV0dG9uXCJcblx0XHRcdFx0XHRcdFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gdHJ1ZSA6IG51bGxcIlxuXHRcdFx0XHRcdFx0YXJpYS1saXZlPVwicG9saXRlXCJcblx0XHRcdFx0XHRcdGFyaWEtYXRvbWljPVwidHJ1ZVwiXG5cdFx0XHRcdFx0XHRbYXR0ci5hcmlhLWxhYmVsXT1cImdldERlY3JlbWVudExhYmVsKCkgfCBhc3luY1wiXG5cdFx0XHRcdFx0XHQoY2xpY2spPVwib25EZWNyZW1lbnQoKVwiPlxuXHRcdFx0XHRcdFx0PHN2ZyBjZHNJY29uPVwic3VidHJhY3RcIiBzaXplPVwiMTZcIj48L3N2Zz5cblx0XHRcdFx0XHQ8L2J1dHRvbj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiY2RzLS1udW1iZXJfX3J1bGUtZGl2aWRlclwiPjwvZGl2PlxuXHRcdFx0XHRcdDxidXR0b25cblx0XHRcdFx0XHRcdGNsYXNzPVwiY2RzLS1udW1iZXJfX2NvbnRyb2wtYnRuIHVwLWljb25cIlxuXHRcdFx0XHRcdFx0dHlwZT1cImJ1dHRvblwiXG5cdFx0XHRcdFx0XHRbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/IHRydWUgOiBudWxsXCJcblx0XHRcdFx0XHRcdGFyaWEtbGl2ZT1cInBvbGl0ZVwiXG5cdFx0XHRcdFx0XHRhcmlhLWF0b21pYz1cInRydWVcIlxuXHRcdFx0XHRcdFx0W2F0dHIuYXJpYS1sYWJlbF09XCJnZXRJbmNyZW1lbnRMYWJlbCgpIHwgYXN5bmNcIlxuXHRcdFx0XHRcdFx0KGNsaWNrKT1cIm9uSW5jcmVtZW50KClcIj5cblx0XHRcdFx0XHRcdDxzdmcgY2RzSWNvbj1cImFkZFwiIHNpemU9XCIxNlwiPjwvc3ZnPlxuXHRcdFx0XHRcdDwvYnV0dG9uPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjZHMtLW51bWJlcl9fcnVsZS1kaXZpZGVyXCI+PC9kaXY+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8aHIgKm5nSWY9XCJmbHVpZFwiIGNsYXNzPVwiY2RzLS1udW1iZXItaW5wdXRfX2RpdmlkZXJcIiAvPlxuXHRcdFx0PGRpdlxuXHRcdFx0XHQqbmdJZj1cImhlbHBlclRleHQgJiYgIWludmFsaWQgJiYgIXdhcm4gJiYgIWZsdWlkXCJcblx0XHRcdFx0Y2xhc3M9XCJjZHMtLWZvcm1fX2hlbHBlci10ZXh0XCJcblx0XHRcdFx0W25nQ2xhc3NdPVwie1xuXHRcdFx0XHRcdCdjZHMtLWZvcm1fX2hlbHBlci10ZXh0LS1kaXNhYmxlZCc6IGRpc2FibGVkXG5cdFx0XHRcdH1cIj5cblx0XHRcdFx0PG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc1RlbXBsYXRlKGhlbHBlclRleHQpXCI+e3toZWxwZXJUZXh0fX08L25nLWNvbnRhaW5lcj5cblx0XHRcdFx0PG5nLXRlbXBsYXRlICpuZ0lmPVwiaXNUZW1wbGF0ZShoZWxwZXJUZXh0KVwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImhlbHBlclRleHRcIj48L25nLXRlbXBsYXRlPlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2ICpuZ0lmPVwiaW52YWxpZFwiIGNsYXNzPVwiY2RzLS1mb3JtLXJlcXVpcmVtZW50XCI+XG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNUZW1wbGF0ZShpbnZhbGlkVGV4dClcIj57e2ludmFsaWRUZXh0fX08L25nLWNvbnRhaW5lcj5cblx0XHRcdFx0PG5nLXRlbXBsYXRlICpuZ0lmPVwiaXNUZW1wbGF0ZShpbnZhbGlkVGV4dClcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJpbnZhbGlkVGV4dFwiPjwvbmctdGVtcGxhdGU+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgKm5nSWY9XCIhaW52YWxpZCAmJiB3YXJuXCIgY2xhc3M9XCJjZHMtLWZvcm0tcmVxdWlyZW1lbnRcIj5cblx0XHRcdFx0PG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc1RlbXBsYXRlKHdhcm5UZXh0KVwiPnt7d2FyblRleHR9fTwvbmctY29udGFpbmVyPlxuXHRcdFx0XHQ8bmctdGVtcGxhdGUgKm5nSWY9XCJpc1RlbXBsYXRlKHdhcm5UZXh0KVwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIndhcm5UZXh0XCI+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHRgLFxuXHRwcm92aWRlcnM6IFtcblx0XHR7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0XHRcdHVzZUV4aXN0aW5nOiBOdW1iZXJDb21wb25lbnQsXG5cdFx0XHRtdWx0aTogdHJ1ZVxuXHRcdH1cblx0XVxufSlcbmV4cG9ydCBjbGFzcyBOdW1iZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cdC8qKlxuXHQgKiBWYXJpYWJsZSB1c2VkIGZvciBjcmVhdGluZyB1bmlxdWUgaWRzIGZvciBudW1iZXIgaW5wdXQgY29tcG9uZW50cy5cblx0ICovXG5cdHN0YXRpYyBudW1iZXJDb3VudCA9IDA7XG5cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1mb3JtLWl0ZW1cIikgY29udGFpbmVyQ2xhc3MgPSB0cnVlO1xuXG5cdC8qKlxuXHQgKiBTZXQgdG8gYHRydWVgIGZvciByZWFkb25seSBzdGF0ZS5cblx0ICovXG5cdEBJbnB1dCgpIEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbnVtYmVyLS1yZWFkb25seVwiKSByZWFkb25seSA9IGZhbHNlO1xuXHQvKipcblx0ICogQGRlcHJlY2F0ZWQgc2luY2UgdjUgLSBVc2UgYGNkc0xheWVyYCBkaXJlY3RpdmUgaW5zdGVhZFxuXHQgKiBgbGlnaHRgIG9yIGBkYXJrYCBudW1iZXIgaW5wdXQgdGhlbWUuXG5cdCAqL1xuXHRASW5wdXQoKSB0aGVtZTogXCJsaWdodFwiIHwgXCJkYXJrXCIgPSBcImRhcmtcIjtcblx0LyoqXG5cdCAqIFNldCB0byBgdHJ1ZWAgZm9yIGEgZGlzYWJsZWQgbnVtYmVyIGlucHV0LlxuXHQgKi9cblx0QElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblx0LyoqXG5cdCAqIFNldCB0byBgdHJ1ZWAgZm9yIGEgbG9hZGluZyBudW1iZXIgY29tcG9uZW50LlxuXHQgKi9cblx0QElucHV0KCkgc2tlbGV0b24gPSBmYWxzZTtcblx0LyoqXG5cdCAqIFNldCB0byBgdHJ1ZWAgZm9yIGFuIGludmFsaWQgbnVtYmVyIGNvbXBvbmVudC5cblx0ICovXG5cdEBJbnB1dCgpIGludmFsaWQgPSBmYWxzZTtcblx0LyoqXG5cdCAqIFRoZSB1bmlxdWUgaWQgZm9yIHRoZSBudW1iZXIgY29tcG9uZW50LlxuXHQgKi9cblx0QElucHV0KCkgaWQgPSBgbnVtYmVyLSR7TnVtYmVyQ29tcG9uZW50Lm51bWJlckNvdW50fWA7XG5cdC8qKlxuXHQgKiBTZXRzIHRoZSBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgb24gdGhlIGBpbnB1dGAgZWxlbWVudC5cblx0ICovXG5cdEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gXCJcIjtcblx0LyoqXG5cdCAqIE51bWJlciBpbnB1dCBmaWVsZCByZW5kZXIgc2l6ZVxuXHQgKi9cblx0QElucHV0KCkgc2l6ZTogXCJzbVwiIHwgXCJtZFwiIHwgXCJsZ1wiID0gXCJtZFwiO1xuXHQvKipcblx0ICogUmVmbGVjdHMgdGhlIHJlcXVpcmVkIGF0dHJpYnV0ZSBvZiB0aGUgYGlucHV0YCBlbGVtZW50LlxuXHQgKi9cblx0QElucHV0KCkgcmVxdWlyZWQ6IGJvb2xlYW47XG5cdC8qKlxuXHQgKiBTZXRzIHRoZSB2YWx1ZSBhdHRyaWJ1dGUgb24gdGhlIGBpbnB1dGAgZWxlbWVudC5cblx0ICovXG5cdEBJbnB1dCgpIHNldCB2YWx1ZSh2OiBhbnkpIHtcblx0XHRpZiAodiA9PT0gXCJcIiB8fCB2ID09PSBudWxsKSB7XG5cdFx0XHR0aGlzLl92YWx1ZSA9IG51bGw7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdHRoaXMuX3ZhbHVlID0gTnVtYmVyKHYpO1xuXHR9XG5cblx0Z2V0IHZhbHVlKCkge1xuXHRcdHJldHVybiB0aGlzLl92YWx1ZTtcblx0fVxuXHQvKipcblx0ICogU2V0cyB0aGUgbWluIGF0dHJpYnV0ZSBvbiB0aGUgYGlucHV0YCBlbGVtZW50LlxuXHQgKi9cblx0QElucHV0KCkgbWluID0gbnVsbDtcblx0LyoqXG5cdCAqIFNldHMgdGhlIG1heCBhdHRyaWJ1dGUgb24gdGhlIGBpbnB1dGAgZWxlbWVudC5cblx0ICovXG5cdEBJbnB1dCgpIG1heCA9IG51bGw7XG5cdC8qKlxuXHQgKiBTZXRzIHRoZSB0ZXh0IGluc2lkZSB0aGUgYGxhYmVsYCB0YWcuXG5cdCAqL1xuXHRASW5wdXQoKSBsYWJlbDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pjtcblx0LyoqXG5cdCAqIFNldHMgdGhlIG9wdGlvbmFsIGhlbHBlciB0ZXh0LlxuXHQgKi9cblx0QElucHV0KCkgaGVscGVyVGV4dDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pjtcblx0LyoqXG5cdCAqIFNldHMgdGhlIGludmFsaWQgdGV4dC5cblx0ICovXG5cdEBJbnB1dCgpIGludmFsaWRUZXh0OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuXHQvKipcblx0ICogU2V0cyB0aGUgYW1vdW50IHRoZSBudW1iZXIgY29udHJvbHMgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnkuXG5cdCAqL1xuXHRASW5wdXQoKSBzdGVwID0gMTtcblx0LyoqXG5cdCAqIElmIGBzdGVwYCBpcyBhIGRlY2ltYWwsIHdlIG1heSB3YW50IHByZWNpc2lvbiB0byBiZSBzZXQgdG8gZ28gYXJvdW5kIGZsb2F0aW5nIHBvaW50IHByZWNpc2lvbi5cblx0ICovXG5cdEBJbnB1dCgpIHByZWNpc2lvbjogbnVtYmVyO1xuXHQvKipcblx0ICogU2V0IHRvIGB0cnVlYCB0byBzaG93IGEgd2FybmluZyAoY29udGVudHMgc2V0IGJ5IHdhcm5pbmdUZXh0KVxuXHQgKi9cblx0QElucHV0KCkgd2FybiA9IGZhbHNlO1xuXHQvKipcblx0ICogU2V0cyB0aGUgd2FybmluZyB0ZXh0XG5cdCAqL1xuXHRASW5wdXQoKSB3YXJuVGV4dDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pjtcblx0LyoqXG5cdCAqIFNldHMgdGhlIGFyaWFsYWJlbCBmb3IgaW5wdXRcblx0ICovXG5cdEBJbnB1dCgpIGFyaWFMYWJlbDogc3RyaW5nO1xuXHQvKipcblx0ICogRW1pdHMgZXZlbnQgbm90aWZ5aW5nIG90aGVyIGNsYXNzZXMgd2hlbiBhIGNoYW5nZSBpbiBzdGF0ZSBvY2N1cnMgaW4gdGhlIGlucHV0LlxuXHQgKi9cblx0QE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TnVtYmVyQ2hhbmdlPigpO1xuXG5cdEBJbnB1dCgpXG5cdHNldCBkZWNyZW1lbnRMYWJlbCh2YWx1ZTogc3RyaW5nIHwgT2JzZXJ2YWJsZTxzdHJpbmc+KSB7XG5cdFx0dGhpcy5fZGVjcmVtZW50TGFiZWwub3ZlcnJpZGUodmFsdWUpO1xuXHR9XG5cblx0Z2V0IGRlY3JlbWVudExhYmVsKCkge1xuXHRcdHJldHVybiB0aGlzLl9kZWNyZW1lbnRMYWJlbC52YWx1ZTtcblx0fVxuXG5cdEBJbnB1dCgpXG5cdHNldCBpbmNyZW1lbnRMYWJlbCh2YWx1ZTogc3RyaW5nIHwgT2JzZXJ2YWJsZTxzdHJpbmc+KSB7XG5cdFx0dGhpcy5faW5jcmVtZW50TGFiZWwub3ZlcnJpZGUodmFsdWUpO1xuXHR9XG5cblx0Z2V0IGluY3JlbWVudExhYmVsKCkge1xuXHRcdHJldHVybiB0aGlzLl9pbmNyZW1lbnRMYWJlbC52YWx1ZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBFeHBlcmltZW50YWw6IGVuYWJsZSBmbHVpZCBzdGF0ZVxuXHQgKi9cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1udW1iZXItaW5wdXQtLWZsdWlkXCIpIEBJbnB1dCgpIGZsdWlkID0gZmFsc2U7XG5cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1udW1iZXItaW5wdXQtLWZsdWlkLS1pbnZhbGlkXCIpIGdldCBmbHVpZEludmFsaWQoKSB7XG5cdFx0cmV0dXJuIHRoaXMuZmx1aWQgJiYgdGhpcy5pbnZhbGlkO1xuXHR9XG5cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1udW1iZXItaW5wdXQtLWZsdWlkLS1kaXNhYmxlZFwiKSBnZXQgZmx1aWREaXNhYmxlZCgpIHtcblx0XHRyZXR1cm4gdGhpcy5mbHVpZCAmJiB0aGlzLmRpc2FibGVkO1xuXHR9XG5cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1udW1iZXItaW5wdXQtLWZsdWlkLS1mb2N1c1wiKSBnZXQgZmx1aWRGb2N1cygpIHtcblx0XHRyZXR1cm4gdGhpcy5mbHVpZCAmJiB0aGlzLl9pc0ZvY3VzZWQ7XG5cdH1cblxuXHRASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLXRleHQtaW5wdXQtLWZsdWlkX19za2VsZXRvblwiKSBnZXQgZmx1aWRTa2VsZXRvbigpIHtcblx0XHRyZXR1cm4gdGhpcy5mbHVpZCAmJiB0aGlzLnNrZWxldG9uO1xuXHR9XG5cblx0cHJvdGVjdGVkIF9pc0ZvY3VzZWQgPSBmYWxzZTtcblxuXHRwcm90ZWN0ZWQgX3ZhbHVlID0gMDtcblxuXHRwcm90ZWN0ZWQgX2RlY3JlbWVudExhYmVsOiBPdmVycmlkYWJsZSA9IHRoaXMuaTE4bi5nZXRPdmVycmlkYWJsZShcIk5VTUJFUi5ERUNSRU1FTlRcIik7XG5cdHByb3RlY3RlZCBfaW5jcmVtZW50TGFiZWw6IE92ZXJyaWRhYmxlID0gdGhpcy5pMThuLmdldE92ZXJyaWRhYmxlKFwiTlVNQkVSLklOQ1JFTUVOVFwiKTtcblxuXHQvKipcblx0ICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBgTnVtYmVyYC5cblx0ICovXG5cdGNvbnN0cnVjdG9yKHByb3RlY3RlZCBpMThuOiBJMThuKSB7XG5cdFx0TnVtYmVyQ29tcG9uZW50Lm51bWJlckNvdW50Kys7XG5cdH1cblxuXHQvKipcblx0ICogVGhpcyBpcyB0aGUgaW5pdGlhbCB2YWx1ZSBzZXQgdG8gdGhlIGNvbXBvbmVudFxuXHQgKiBAcGFyYW0gdmFsdWUgVGhlIGlucHV0IHZhbHVlLlxuXHQgKi9cblx0cHVibGljIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuXHRcdHRoaXMudmFsdWUgPSB2YWx1ZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBTZXRzIGEgbWV0aG9kIGluIG9yZGVyIHRvIHByb3BhZ2F0ZSBjaGFuZ2VzIGJhY2sgdG8gdGhlIGZvcm0uXG5cdCAqL1xuXHRwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XG5cdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZWdpc3RlcnMgYSBjYWxsYmFjayB0byBiZSB0cmlnZ2VyZWQgd2hlbiB0aGUgY29udHJvbCBoYXMgYmVlbiB0b3VjaGVkLlxuXHQgKiBAcGFyYW0gZm4gQ2FsbGJhY2sgdG8gYmUgdHJpZ2dlcmVkIHdoZW4gdGhlIG51bWJlciBpbnB1dCBpcyB0b3VjaGVkLlxuXHQgKi9cblx0cHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcblx0XHR0aGlzLm9uVG91Y2hlZCA9IGZuO1xuXHR9XG5cblx0QEhvc3RMaXN0ZW5lcihcImZvY3Vzb3V0XCIpXG5cdGZvY3VzT3V0KCkge1xuXHRcdHRoaXMub25Ub3VjaGVkKCk7XG5cdH1cblxuXHQvKipcblx0ICogU2V0cyB0aGUgZGlzYWJsZWQgc3RhdGUgdGhyb3VnaCB0aGUgbW9kZWxcblx0ICovXG5cdHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuXHRcdHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuXHR9XG5cblx0LyoqXG5cdCAqIENhbGxlZCB3aGVuIG51bWJlciBpbnB1dCBpcyBibHVycmVkLiBOZWVkZWQgdG8gcHJvcGVybHkgaW1wbGVtZW50IGBDb250cm9sVmFsdWVBY2Nlc3NvcmAuXG5cdCAqL1xuXHRvblRvdWNoZWQ6ICgpID0+IGFueSA9ICgpID0+IHsgfTtcblxuXHQvKipcblx0ICogTWV0aG9kIHNldCBpbiBgcmVnaXN0ZXJPbkNoYW5nZWAgdG8gcHJvcGFnYXRlIGNoYW5nZXMgYmFjayB0byB0aGUgZm9ybS5cblx0ICovXG5cdHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHsgfTtcblxuXHQvKipcblx0ICogQWRkcyBgc3RlcGAgdG8gdGhlIGN1cnJlbnQgYHZhbHVlYC5cblx0ICovXG5cdG9uSW5jcmVtZW50KCk6IHZvaWQge1xuXHRcdC8vIGlmIG1heCBpcyBzZXQgYW5kIHZhbHVlICsgc3RlcCBpcyBncmVhdGVyIHRoYW4gbWF4LCBzZXQgdmFsdWUgdG8gbWF4XG5cdFx0Ly8gZXhhbXBsZTogbWF4ID0gMTAwLCBzdGVwID0gMTAsIHZhbHVlID0gOTUgLCB2YWx1ZSArIHN0ZXAgPSAxMDUsIHZhbHVlIHdpbGwgYmUgc2V0IHRvIDEwMCAobWF4KSBpbnN0ZWFkIG9mIDEwNVxuXHRcdGlmICh0aGlzLm1heCAhPT0gbnVsbCAmJiB0aGlzLnZhbHVlICsgdGhpcy5zdGVwID4gdGhpcy5tYXgpIHtcblx0XHRcdHRoaXMudmFsdWUgPSB0aGlzLm1heDtcblx0XHRcdHRoaXMuZW1pdENoYW5nZUV2ZW50KCk7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Ly8gaWYgbWluIGlzIHNldCBhbmQgdmFsdWUgKyBzdGVwIGlzIGxlc3MgdGhhbiBtaW4sIHNldCB2YWx1ZSB0byBtaW5cblx0XHQvLyBleGFtcGxlOiBtaW4gPSA1LCBzdGVwID0gMiwgdmFsdWUgPSAwLCB2YWx1ZSArIHN0ZXAgPSAyLCB2YWx1ZSB3aWxsIGJlIHNldCB0byA1IChtaW4pIGluc3RlYWQgb2YgMlxuXHRcdGlmICh0aGlzLm1pbiAhPT0gbnVsbCAmJiB0aGlzLnZhbHVlICsgdGhpcy5zdGVwIDwgdGhpcy5taW4pIHtcblx0XHRcdHRoaXMudmFsdWUgPSB0aGlzLm1pbjtcblx0XHRcdHRoaXMuZW1pdENoYW5nZUV2ZW50KCk7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Ly8gaWYgbWF4IGlzIG5vdCBzZXQgb3IgdmFsdWUgKyBzdGVwIGlzIGxlc3MgdGhhbiBtYXgsIGluY3JlbWVudCB2YWx1ZSBieSBzdGVwXG5cdFx0aWYgKHRoaXMubWF4ID09PSBudWxsIHx8IHRoaXMudmFsdWUgKyB0aGlzLnN0ZXAgPD0gdGhpcy5tYXgpIHtcblx0XHRcdHRoaXMudmFsdWUgKz0gdGhpcy5zdGVwO1xuXHRcdFx0dGhpcy52YWx1ZSA9IHBhcnNlRmxvYXQodGhpcy52YWx1ZS50b1ByZWNpc2lvbih0aGlzLnByZWNpc2lvbikpO1xuXHRcdFx0dGhpcy5lbWl0Q2hhbmdlRXZlbnQoKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogU3VidHJhY3RzIGBzdGVwYCB0byB0aGUgY3VycmVudCBgdmFsdWVgLlxuXHQgKi9cblx0b25EZWNyZW1lbnQoKTogdm9pZCB7XG5cdFx0Ly8gaWYgbWF4IGlzIHNldCBhbmQgdmFsdWUgLSBzdGVwIGlzIGdyZWF0ZXIgdGhhbiBtYXgsIHNldCB2YWx1ZSB0byBtYXhcblx0XHQvLyBleGFtcGxlOiBtYXggPSAxNSwgc3RlcCA9IDIsIHZhbHVlID0gMjAsIHZhbHVlIC0gc3RlcCA9IDE4LCB2YWx1ZSB3aWxsIGJlIHNldCB0byAxNSAobWF4KSBpbnN0ZWFkIG9mIDE4XG5cdFx0aWYgKHRoaXMubWF4ICE9PSBudWxsICYmIHRoaXMudmFsdWUgLSB0aGlzLnN0ZXAgPiB0aGlzLm1heCkge1xuXHRcdFx0dGhpcy52YWx1ZSA9IHRoaXMubWF4O1xuXHRcdFx0dGhpcy5lbWl0Q2hhbmdlRXZlbnQoKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHQvLyBpZiBtaW4gaXMgc2V0IGFuZCB2YWx1ZSAtIHN0ZXAgaXMgbGVzcyB0aGFuIG1pbiwgc2V0IHZhbHVlIHRvIG1pblxuXHRcdC8vIGV4YW1wbGU6IG1pbiA9IDUsIHN0ZXAgPSAyLCB2YWx1ZSA9IDYsIHZhbHVlIC0gc3RlcCA9IDQsIHZhbHVlIHdpbGwgYmUgc2V0IHRvIDUgKG1pbikgaW5zdGVhZCBvZiA0XG5cdFx0aWYgKHRoaXMubWluICE9PSBudWxsICYmIHRoaXMudmFsdWUgLSB0aGlzLnN0ZXAgPCB0aGlzLm1pbikge1xuXHRcdFx0dGhpcy52YWx1ZSA9IHRoaXMubWluO1xuXHRcdFx0dGhpcy5lbWl0Q2hhbmdlRXZlbnQoKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHQvLyBpZiBtaW4gaXMgbm90IHNldCBvciB2YWx1ZSAtIHN0ZXAgaXMgZ3JlYXRlciB0aGFuIG1pbiwgZGVjcmVtZW50IHZhbHVlIGJ5IHN0ZXBcblx0XHRpZiAodGhpcy5taW4gPT09IG51bGwgfHwgdGhpcy52YWx1ZSAtIHRoaXMuc3RlcCA+PSB0aGlzLm1pbikge1xuXHRcdFx0dGhpcy52YWx1ZSAtPSB0aGlzLnN0ZXA7XG5cdFx0XHR0aGlzLnZhbHVlID0gcGFyc2VGbG9hdCh0aGlzLnZhbHVlLnRvUHJlY2lzaW9uKHRoaXMucHJlY2lzaW9uKSk7XG5cdFx0XHR0aGlzLmVtaXRDaGFuZ2VFdmVudCgpO1xuXHRcdH1cblx0fVxuXG5cdGdldERlY3JlbWVudExhYmVsKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG5cdFx0cmV0dXJuIHRoaXMuX2RlY3JlbWVudExhYmVsLnN1YmplY3Q7XG5cdH1cblxuXHRnZXRJbmNyZW1lbnRMYWJlbCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuXHRcdHJldHVybiB0aGlzLl9pbmNyZW1lbnRMYWJlbC5zdWJqZWN0O1xuXHR9XG5cblx0LyoqXG5cdCAqIENyZWF0ZXMgYSBjbGFzcyBvZiBgTnVtYmVyQ2hhbmdlYCB0byBlbWl0IHRoZSBjaGFuZ2UgaW4gdGhlIGBOdW1iZXJgLlxuXHQgKi9cblx0ZW1pdENoYW5nZUV2ZW50KCk6IHZvaWQge1xuXHRcdGxldCBldmVudCA9IG5ldyBOdW1iZXJDaGFuZ2UoKTtcblx0XHRldmVudC5zb3VyY2UgPSB0aGlzO1xuXHRcdGV2ZW50LnZhbHVlID0gdGhpcy52YWx1ZTtcblx0XHR0aGlzLmNoYW5nZS5lbWl0KGV2ZW50KTtcblx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcblx0fVxuXG5cdG9uTnVtYmVySW5wdXRDaGFuZ2UoZXZlbnQpIHtcblx0XHR0aGlzLnZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuXHRcdHRoaXMuZW1pdENoYW5nZUV2ZW50KCk7XG5cdH1cblxuXHRwdWJsaWMgaXNUZW1wbGF0ZSh2YWx1ZSkge1xuXHRcdHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmO1xuXHR9XG5cblx0aGFuZGxlRm9jdXMoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcblx0XHRpZiAoXCJ0eXBlXCIgaW4gZXZlbnQudGFyZ2V0ICYmICg8SFRNTElucHV0RWxlbWVudD5ldmVudC50YXJnZXQpLnR5cGUgPT09IFwiYnV0dG9uXCIpIHtcblx0XHRcdHRoaXMuX2lzRm9jdXNlZCA9IGZhbHNlO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLl9pc0ZvY3VzZWQgPSBldmVudC50eXBlID09PSBcImZvY3VzXCI7XG5cdFx0fVxuXHR9XG59XG5leHBvcnQgeyBOdW1iZXJDb21wb25lbnQgYXMgTnVtYmVyIH07XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { Component, Input, Output, EventEmitter } from "@angular/core";
1
+ import { Component, Input, Output, EventEmitter, HostBinding } from "@angular/core";
2
2
  import { merge } from "carbon-components-angular/utils";
3
3
  import { range } from "carbon-components-angular/common";
4
4
  import * as i0 from "@angular/core";
@@ -47,6 +47,10 @@ export class PaginationNav {
47
47
  * Number of items to show in pagination. Minimum is 4.
48
48
  */
49
49
  this.numOfItemsToShow = 4;
50
+ /**
51
+ * Sets the pagination nav size
52
+ */
53
+ this.size = "lg";
50
54
  /**
51
55
  * Emits the new page number.
52
56
  *
@@ -72,6 +76,16 @@ export class PaginationNav {
72
76
  this.nextItemText.override(valueWithDefaults.NEXT);
73
77
  this.previousItemText.override(valueWithDefaults.PREVIOUS);
74
78
  }
79
+ // Size
80
+ get smallLayoutSize() {
81
+ return this.size === "sm";
82
+ }
83
+ get mediumLayoutSize() {
84
+ return this.size === "md";
85
+ }
86
+ get largeLayoutSize() {
87
+ return this.size === "lg";
88
+ }
75
89
  get totalNumbersArray() {
76
90
  return range(this.totalDataLength + 1, 1);
77
91
  }
@@ -151,14 +165,14 @@ export class PaginationNav {
151
165
  }
152
166
  PaginationNav.paginationCounter = 0;
153
167
  PaginationNav.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: PaginationNav, deps: [{ token: i1.I18n }, { token: i2.ExperimentalService }], target: i0.ɵɵFactoryTarget.Component });
154
- PaginationNav.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PaginationNav, selector: "cds-pagination-nav, ibm-pagination-navm", inputs: { model: "model", disabled: "disabled", numOfItemsToShow: "numOfItemsToShow", translations: "translations" }, outputs: { selectPage: "selectPage" }, ngImport: i0, template: `
168
+ PaginationNav.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: PaginationNav, selector: "cds-pagination-nav, ibm-pagination-navm", inputs: { model: "model", disabled: "disabled", numOfItemsToShow: "numOfItemsToShow", translations: "translations", size: "size" }, outputs: { selectPage: "selectPage" }, host: { properties: { "class.cds--layout--size-sm": "this.smallLayoutSize", "class.cds--layout--size-md": "this.mediumLayoutSize", "class.cds--layout--size-lg": "this.largeLayoutSize" } }, ngImport: i0, template: `
155
169
  <div>
156
170
  <div class="cds--pagination-nav">
157
171
  <ul class="cds--pagination-nav__list">
158
172
  <li class="cds--pagination-nav__list-item">
159
173
  <cds-icon-button
160
174
  kind="ghost"
161
- size="md"
175
+ [size]="size"
162
176
  (click)="jumpToPrevious()"
163
177
  [disabled]="leftArrowDisabled"
164
178
  [description]="previousItemText.subject | async">
@@ -202,6 +216,7 @@ PaginationNav.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
202
216
  <li class="cds--pagination-nav__list-item">
203
217
  <cds-icon-button
204
218
  kind="ghost"
219
+ [size]="size"
205
220
  (click)="jumpToNext()"
206
221
  [disabled]="rightArrowDisabled"
207
222
  [description]="nextItemText.subject | async">
@@ -227,7 +242,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
227
242
  <li class="cds--pagination-nav__list-item">
228
243
  <cds-icon-button
229
244
  kind="ghost"
230
- size="md"
245
+ [size]="size"
231
246
  (click)="jumpToPrevious()"
232
247
  [disabled]="leftArrowDisabled"
233
248
  [description]="previousItemText.subject | async">
@@ -271,6 +286,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
271
286
  <li class="cds--pagination-nav__list-item">
272
287
  <cds-icon-button
273
288
  kind="ghost"
289
+ [size]="size"
274
290
  (click)="jumpToNext()"
275
291
  [disabled]="rightArrowDisabled"
276
292
  [description]="nextItemText.subject | async">
@@ -294,7 +310,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
294
310
  type: Input
295
311
  }], translations: [{
296
312
  type: Input
313
+ }], size: [{
314
+ type: Input
315
+ }], smallLayoutSize: [{
316
+ type: HostBinding,
317
+ args: ["class.cds--layout--size-sm"]
318
+ }], mediumLayoutSize: [{
319
+ type: HostBinding,
320
+ args: ["class.cds--layout--size-md"]
321
+ }], largeLayoutSize: [{
322
+ type: HostBinding,
323
+ args: ["class.cds--layout--size-lg"]
297
324
  }], selectPage: [{
298
325
  type: Output
299
326
  }] } });
300
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhZ2luYXRpb24vcGFnaW5hdGlvbi1uYXYvcGFnaW5hdGlvbi1uYXYuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7O0FBT3pEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBeUJHO0FBcUVILE1BQU0sT0FBTyxhQUFhO0lBbUZ6QixZQUFzQixJQUFVLEVBQVksWUFBaUM7UUFBdkQsU0FBSSxHQUFKLElBQUksQ0FBTTtRQUFZLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQTdFN0U7O1dBRUc7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzFCOztXQUVHO1FBQ00scUJBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBa0I5Qjs7Ozs7V0FLRztRQUNPLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBMkNsRCxpQkFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDM0QscUJBQWdCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUdsRSxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBdEVEOzs7Ozs7OztPQVFHO0lBQ0gsSUFDSSxZQUFZLENBQUMsS0FBZ0M7UUFDaEQsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBVUQsSUFBSSxpQkFBaUI7UUFDcEIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksV0FBVztRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksV0FBVyxDQUFDLEtBQUs7UUFDcEIsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0QiwyREFBMkQ7UUFDM0QsdUNBQXVDO1FBQ3ZDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDbEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1osTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzVCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1gsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzVCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDcEIsT0FBTyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNyQixPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ25FLENBQUM7SUFTRCx1QkFBdUIsQ0FBQyxJQUFJO1FBQzNCLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQzdCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1NBQ3hCO0lBQ0YsQ0FBQztJQUVNLFVBQVU7UUFDaEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzFHLENBQUM7SUFFTSxjQUFjO1FBQ3BCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVNLFFBQVE7UUFDZCxJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxFQUFFO1lBQzlCLE9BQU8sSUFBSSxDQUFDO1NBQ1o7UUFDRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDNUIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxRixDQUFDO0lBRU8sT0FBTyxDQUFDLFVBQVUsR0FBRyxJQUFJO1FBQ2hDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDeEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBRTNDLElBQUksWUFBWSxJQUFJLFVBQVUsRUFBRTtZQUMvQixPQUFPO2dCQUNOLEtBQUssRUFBRSxDQUFDO2dCQUNSLElBQUksRUFBRSxDQUFDO2FBQ1AsQ0FBQztTQUNGO1FBQ0QsTUFBTSxLQUFLLEdBQUcsVUFBVSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1RCxJQUFJLFdBQVcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUNuQyxJQUFJLFVBQVUsR0FBRyxVQUFVLEdBQUcsSUFBSSxHQUFHLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVoRSxJQUFJLFdBQVcsSUFBSSxDQUFDLEVBQUU7WUFDckIsVUFBVSxJQUFJLFdBQVcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0QsV0FBVyxHQUFHLENBQUMsQ0FBQztTQUNoQjtRQUNELElBQUksVUFBVSxJQUFJLENBQUMsRUFBRTtZQUNwQixXQUFXLElBQUksVUFBVSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5RCxVQUFVLEdBQUcsQ0FBQyxDQUFDO1NBQ2Y7UUFDRCxPQUFPO1lBQ04sS0FBSyxFQUFFLFdBQVc7WUFDbEIsSUFBSSxFQUFFLFVBQVU7U0FDaEIsQ0FBQztJQUNILENBQUM7O0FBdklNLCtCQUFpQixHQUFHLENBQUMsQ0FBQzswR0FEakIsYUFBYTs4RkFBYixhQUFhLDRPQWxFZjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWdFVDsyRkFFVyxhQUFhO2tCQXBFekIsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUseUNBQXlDO29CQUNuRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFnRVQ7aUJBQ0Q7NkhBTVMsS0FBSztzQkFBYixLQUFLO2dCQUlHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBSUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQVlGLFlBQVk7c0JBRGYsS0FBSztnQkFhSSxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFnaW5hdGlvbk1vZGVsIH0gZnJvbSBcIi4uL3BhZ2luYXRpb24tbW9kZWwuY2xhc3NcIjtcbmltcG9ydCB7XG5cdENvbXBvbmVudCxcblx0SW5wdXQsXG5cdE91dHB1dCxcblx0RXZlbnRFbWl0dGVyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IEkxOG4sIE92ZXJyaWRhYmxlIH0gZnJvbSBcImNhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXIvaTE4blwiO1xuaW1wb3J0IHsgRXhwZXJpbWVudGFsU2VydmljZSB9IGZyb20gXCJjYXJib24tY29tcG9uZW50cy1hbmd1bGFyL2V4cGVyaW1lbnRhbFwiO1xuaW1wb3J0IHsgbWVyZ2UgfSBmcm9tIFwiY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhci91dGlsc1wiO1xuaW1wb3J0IHsgcmFuZ2UgfSBmcm9tIFwiY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhci9jb21tb25cIjtcblxuZXhwb3J0IGludGVyZmFjZSBQYWdpbmF0aW9uTmF2VHJhbnNsYXRpb25zIHtcblx0TkVYVDogc3RyaW5nO1xuXHRQUkVWSU9VUzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFVzZSBwYWdpbmF0aW9uIHdoZW4geW91IGhhdmUgbXVsdGlwbGUgcGFnZXMgb2YgZGF0YSB0byBoYW5kbGUuIEdldCBzdGFydGVkIHdpdGggaW1wb3J0aW5nIHRoZSBtb2R1bGU6XG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgUGFnaW5hdGlvbk1vZHVsZSB9IGZyb20gJ2NhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXInO1xuICogYGBgXG4gKlxuICogYGBgaHRtbFxuICogPGNkcy1wYWdpbmF0aW9uLW5hdiBbbW9kZWxdPVwibW9kZWxcIiAoc2VsZWN0UGFnZSk9XCJzZWxlY3RQYWdlKCRldmVudClcIj48L2Nkcy1wYWdpbmF0aW9uLW5hdj5cbiAqIGBgYFxuICpcbiAqIEluIHlvdXIgYHNlbGVjdFBhZ2UoKWAgbWV0aG9kIHNldCB0aGUgYG1vZGVsLmN1cnJlbnRQYWdlYCB0byBzZWxlY3RlZCBwYWdlLCBfYWZ0ZXJfXG4gKiB5b3UgbG9hZCB0aGUgcGFnZS5cbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBzZWxlY3RQYWdlKHBhZ2UpIHtcbiAqIFx0Ly8gLi4uIHlvdXIgY29kZSB0byBsb2FkIHRoZSBwYWdlIGdvZXMgaGVyZVxuICpcbiAqIFx0dGhpcy5tb2RlbC5jdXJyZW50UGFnZSA9IHBhZ2U7XG4gKlxuICogXHQvLyAuLi4gYW55dGhpbmcgeW91IHdhbnQgdG8gZG8gYWZ0ZXIgcGFnZSBzZWxlY3Rpb24gY2hhbmdlcyBnb2VzIGhlcmVcbiAqIH1cbiAqIGBgYFxuICpcbiAqIFtTZWUgZGVtb10oLi4vLi4vP3BhdGg9L3N0b3J5L2NvbXBvbmVudHMtcGFnaW5hdGlvbi1uYXYtLWJhc2ljKVxuICovXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6IFwiY2RzLXBhZ2luYXRpb24tbmF2LCBpYm0tcGFnaW5hdGlvbi1uYXZtXCIsXG5cdHRlbXBsYXRlOiBgXG5cdDxkaXY+XG5cdFx0PGRpdiBjbGFzcz1cImNkcy0tcGFnaW5hdGlvbi1uYXZcIj5cblx0XHRcdDx1bCBjbGFzcz1cImNkcy0tcGFnaW5hdGlvbi1uYXZfX2xpc3RcIj5cblx0XHRcdFx0PGxpIGNsYXNzPVwiY2RzLS1wYWdpbmF0aW9uLW5hdl9fbGlzdC1pdGVtXCI+XG5cdFx0XHRcdFx0PGNkcy1pY29uLWJ1dHRvblxuXHRcdFx0XHRcdFx0a2luZD1cImdob3N0XCJcblx0XHRcdFx0XHRcdHNpemU9XCJtZFwiXG5cdFx0XHRcdFx0XHQoY2xpY2spPVwianVtcFRvUHJldmlvdXMoKVwiXG5cdFx0XHRcdFx0XHRbZGlzYWJsZWRdPVwibGVmdEFycm93RGlzYWJsZWRcIlxuXHRcdFx0XHRcdFx0W2Rlc2NyaXB0aW9uXT1cInByZXZpb3VzSXRlbVRleHQuc3ViamVjdCB8IGFzeW5jXCI+XG5cdFx0XHRcdFx0XHQ8c3ZnXG5cdFx0XHRcdFx0XHRcdGNkc0ljb249XCJjYXJldC0tbGVmdFwiXG5cdFx0XHRcdFx0XHRcdHNpemU9XCIxNlwiXG5cdFx0XHRcdFx0XHRcdGNsYXNzPVwiY2RzLS1idG5fX2ljb25cIj5cblx0XHRcdFx0XHRcdDwvc3ZnPlxuXHRcdFx0XHRcdDwvY2RzLWljb24tYnV0dG9uPlxuXHRcdFx0XHQ8L2xpPlxuXHRcdFx0XHQ8Y2RzLXBhZ2luYXRpb24tbmF2LWl0ZW1cblx0XHRcdFx0XHQqbmdJZj1cInRoaXMubnVtT2ZJdGVtc1RvU2hvdyA+PSA1IHx8ICh0aGlzLm51bU9mSXRlbXNUb1Nob3cgPD0gNCAmJiBjdXJyZW50UGFnZSA8PSAxKVwiXG5cdFx0XHRcdFx0cGFnZT1cIjFcIlxuXHRcdFx0XHRcdChjbGljayk9XCJjdXJyZW50UGFnZSA9IDFcIlxuXHRcdFx0XHRcdFtpc0FjdGl2ZV09XCJjdXJyZW50UGFnZSA9PSAxXCI+XG5cdFx0XHRcdDwvY2RzLXBhZ2luYXRpb24tbmF2LWl0ZW0+XG5cdFx0XHRcdDxjZHMtcGFnaW5hdGlvbi1vdmVyZmxvd1xuXHRcdFx0XHRcdCpuZ0lmPVwiZnJvbnRDdXRzXCJcblx0XHRcdFx0XHRbY291bnRdPVwiZnJvbnRDdXRzXCJcblx0XHRcdFx0XHRbZnJvbUluZGV4XT1cInN0YXJ0T2Zmc2V0XCJcblx0XHRcdFx0XHQoY2hhbmdlKT1cImhhbmRsZU92ZXJmbG93U2VsZWN0aW9uKCRldmVudClcIj5cblx0XHRcdFx0PC9jZHMtcGFnaW5hdGlvbi1vdmVyZmxvdz5cblx0XHRcdFx0PGNkcy1wYWdpbmF0aW9uLW5hdi1pdGVtXG5cdFx0XHRcdFx0Km5nRm9yPVwibGV0IHBhZ2Ugb2YgZ2V0UGFnZXMoKTtcIlxuXHRcdFx0XHRcdFtwYWdlXT1cInBhZ2VcIlxuXHRcdFx0XHRcdChjbGljayk9XCJjdXJyZW50UGFnZSA9IHBhZ2VcIlxuXHRcdFx0XHRcdFtpc0FjdGl2ZV09XCJjdXJyZW50UGFnZSA9PSBwYWdlXCI+XG5cdFx0XHRcdDwvY2RzLXBhZ2luYXRpb24tbmF2LWl0ZW0+XG5cdFx0XHRcdDxjZHMtcGFnaW5hdGlvbi1vdmVyZmxvd1xuXHRcdFx0XHRcdCpuZ0lmPVwiYmFja0N1dHNcIlxuXHRcdFx0XHRcdFtjb3VudF09XCJiYWNrQ3V0c1wiXG5cdFx0XHRcdFx0W2Zyb21JbmRleF09XCJ0b3RhbE51bWJlcnNBcnJheS5sZW5ndGggLSBiYWNrQ3V0cyAtIDFcIlxuXHRcdFx0XHRcdChjaGFuZ2UpPVwiaGFuZGxlT3ZlcmZsb3dTZWxlY3Rpb24oJGV2ZW50KVwiPlxuXHRcdFx0XHQ8L2Nkcy1wYWdpbmF0aW9uLW92ZXJmbG93PlxuXHRcdFx0XHQ8Y2RzLXBhZ2luYXRpb24tbmF2LWl0ZW1cblx0XHRcdFx0XHQqbmdJZj1cInRvdGFsRGF0YUxlbmd0aCA+IDFcIlxuXHRcdFx0XHRcdFtwYWdlXT1cInRvdGFsTnVtYmVyc0FycmF5Lmxlbmd0aFwiXG5cdFx0XHRcdFx0KGNsaWNrKT1cImN1cnJlbnRQYWdlID0gdG90YWxOdW1iZXJzQXJyYXkubGVuZ3RoXCJcblx0XHRcdFx0XHRbaXNBY3RpdmVdPVwiY3VycmVudFBhZ2UgPT0gdG90YWxOdW1iZXJzQXJyYXkubGVuZ3RoXCI+XG5cdFx0XHRcdDwvY2RzLXBhZ2luYXRpb24tbmF2LWl0ZW0+XG5cdFx0XHRcdDxsaSBjbGFzcz1cImNkcy0tcGFnaW5hdGlvbi1uYXZfX2xpc3QtaXRlbVwiPlxuXHRcdFx0XHRcdDxjZHMtaWNvbi1idXR0b25cblx0XHRcdFx0XHRcdGtpbmQ9XCJnaG9zdFwiXG5cdFx0XHRcdFx0XHQoY2xpY2spPVwianVtcFRvTmV4dCgpXCJcblx0XHRcdFx0XHRcdFtkaXNhYmxlZF09XCJyaWdodEFycm93RGlzYWJsZWRcIlxuXHRcdFx0XHRcdFx0W2Rlc2NyaXB0aW9uXT1cIm5leHRJdGVtVGV4dC5zdWJqZWN0IHwgYXN5bmNcIj5cblx0XHRcdFx0XHRcdDxzdmdcblx0XHRcdFx0XHRcdFx0Y2RzSWNvbj1cImNhcmV0LS1yaWdodFwiXG5cdFx0XHRcdFx0XHRcdHNpemU9XCIxNlwiXG5cdFx0XHRcdFx0XHRcdGNsYXNzPVwiY2RzLS1idG5fX2ljb25cIj5cblx0XHRcdFx0XHRcdDwvc3ZnPlxuXHRcdFx0XHRcdDwvY2RzLWljb24tYnV0dG9uPlxuXHRcdFx0XHQ8L2xpPlxuXHRcdFx0PC91bD5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG5cdGBcbn0pXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbk5hdiB7XG5cdHN0YXRpYyBwYWdpbmF0aW9uQ291bnRlciA9IDA7XG5cdC8qKlxuXHQgKiBgUGFnaW5hdGlvbk5hdk1vZGVsYCB3aXRoIHRoZSBpbmZvcm1hdGlvbiBhYm91dCBwYWdlcyB5b3UncmUgY29udHJvbGxpbmcuXG5cdCAqL1xuXHRASW5wdXQoKSBtb2RlbDogUGFnaW5hdGlvbk1vZGVsO1xuXHQvKipcblx0ICAgKiBTZXQgdG8gYHRydWVgIHRvIGRpc2FibGUgdGhlIGJhY2t3YXJkL2ZvcndhcmQgYnV0dG9ucy5cblx0ICovXG5cdEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cdC8qKlxuXHQgKiBOdW1iZXIgb2YgaXRlbXMgdG8gc2hvdyBpbiBwYWdpbmF0aW9uLiBNaW5pbXVtIGlzIDQuXG5cdCAqL1xuXHRASW5wdXQoKSBudW1PZkl0ZW1zVG9TaG93ID0gNDtcblxuXHQvKipcblx0ICogRXhwZWN0cyBhbiBvYmplY3QgdGhhdCBjb250YWlucyBzb21lIG9yIGFsbCBvZjpcblx0ICogYGBgXG5cdCAqIHtcblx0ICpcdFx0XCJORVhUXCI6IFwiTmV4dFwiLFxuXHQgKlx0XHRcIlBSRVZJT1VTXCI6IFwiUHJldmlvdXNcIixcblx0ICogfVxuXHQgKiBgYGBcblx0ICovXG5cdEBJbnB1dCgpXG5cdHNldCB0cmFuc2xhdGlvbnModmFsdWU6IFBhZ2luYXRpb25OYXZUcmFuc2xhdGlvbnMpIHtcblx0XHRjb25zdCB2YWx1ZVdpdGhEZWZhdWx0cyA9IG1lcmdlKHRoaXMuaTE4bi5nZXRNdWx0aXBsZShcIlBBR0lOQVRJT05cIiksIHZhbHVlKTtcblx0XHR0aGlzLm5leHRJdGVtVGV4dC5vdmVycmlkZSh2YWx1ZVdpdGhEZWZhdWx0cy5ORVhUKTtcblx0XHR0aGlzLnByZXZpb3VzSXRlbVRleHQub3ZlcnJpZGUodmFsdWVXaXRoRGVmYXVsdHMuUFJFVklPVVMpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEVtaXRzIHRoZSBuZXcgcGFnZSBudW1iZXIuXG5cdCAqXG5cdCAqIFlvdSBzaG91bGQgdGllIGludG8gdGhpcyBhbmQgdXBkYXRlIGBtb2RlbC5jdXJyZW50UGFnZWAgb25jZSB0aGUgZnJlc2hcblx0ICogZGF0YSBpcyBmaW5hbGx5IGxvYWRlZC5cblx0ICovXG5cdEBPdXRwdXQoKSBzZWxlY3RQYWdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cblx0Z2V0IHRvdGFsTnVtYmVyc0FycmF5KCkge1xuXHRcdHJldHVybiByYW5nZSh0aGlzLnRvdGFsRGF0YUxlbmd0aCArIDEsIDEpO1xuXHR9XG5cblx0Z2V0IGN1cnJlbnRQYWdlKCkge1xuXHRcdHJldHVybiB0aGlzLm1vZGVsLmN1cnJlbnRQYWdlO1xuXHR9XG5cblx0c2V0IGN1cnJlbnRQYWdlKHZhbHVlKSB7XG5cdFx0dmFsdWUgPSBOdW1iZXIodmFsdWUpO1xuXHRcdC8vIGVtaXRzIHRoZSB2YWx1ZSB0byBhbGxvdyB0aGUgdXNlciB0byB1cGRhdGUgY3VycmVudCBwYWdlXG5cdFx0Ly8gaW4gdGhlIG1vZGVsIG9uY2UgdGhlIHBhZ2UgaXMgbG9hZGVkXG5cdFx0dGhpcy5zZWxlY3RQYWdlLmVtaXQodmFsdWUpO1xuXHR9XG5cblx0Z2V0IHRvdGFsRGF0YUxlbmd0aCgpIHtcblx0XHRyZXR1cm4gdGhpcy5tb2RlbC50b3RhbERhdGFMZW5ndGg7XG5cdH1cblxuXHRnZXQgc3RhcnRPZmZzZXQoKSB7XG5cdFx0cmV0dXJuIHRoaXMubnVtT2ZJdGVtc1RvU2hvdyA8PSA0ICYmIHRoaXMuY3VycmVudFBhZ2UgPiAxID8gMCA6IDE7XG5cdH1cblxuXHRnZXQgZnJvbnRDdXRzKCkge1xuXHRcdGNvbnN0IGN1dHMgPSB0aGlzLmdldEN1dHMoKTtcblx0XHRyZXR1cm4gY3V0cy5mcm9udDtcblx0fVxuXG5cdGdldCBiYWNrQ3V0cygpIHtcblx0XHRjb25zdCBjdXRzID0gdGhpcy5nZXRDdXRzKCk7XG5cdFx0cmV0dXJuIGN1dHMuYmFjaztcblx0fVxuXG5cdGdldCBsZWZ0QXJyb3dEaXNhYmxlZCgpIHtcblx0XHRyZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCB0aGlzLmN1cnJlbnRQYWdlID09PSAxO1xuXHR9XG5cblx0Z2V0IHJpZ2h0QXJyb3dEaXNhYmxlZCgpIHtcblx0XHRyZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCB0aGlzLmN1cnJlbnRQYWdlID09PSB0aGlzLnRvdGFsRGF0YUxlbmd0aDtcblx0fVxuXG5cdG5leHRJdGVtVGV4dCA9IHRoaXMuaTE4bi5nZXRPdmVycmlkYWJsZShcIlBBR0lOQVRJT04uTkVYVFwiKTtcblx0cHJldmlvdXNJdGVtVGV4dCA9IHRoaXMuaTE4bi5nZXRPdmVycmlkYWJsZShcIlBBR0lOQVRJT04uUFJFVklPVVNcIik7XG5cblx0Y29uc3RydWN0b3IocHJvdGVjdGVkIGkxOG46IEkxOG4sIHByb3RlY3RlZCBleHBlcmltZW50YWw6IEV4cGVyaW1lbnRhbFNlcnZpY2UpIHtcblx0XHRQYWdpbmF0aW9uTmF2LnBhZ2luYXRpb25Db3VudGVyKys7XG5cdH1cblxuXHRoYW5kbGVPdmVyZmxvd1NlbGVjdGlvbihwYWdlKSB7XG5cdFx0aWYgKHR5cGVvZiBwYWdlID09PSBcIm51bWJlclwiKSB7XG5cdFx0XHR0aGlzLmN1cnJlbnRQYWdlID0gcGFnZTtcblx0XHR9XG5cdH1cblxuXHRwdWJsaWMganVtcFRvTmV4dCgpIHtcblx0XHR0aGlzLmN1cnJlbnRQYWdlID0gdGhpcy5jdXJyZW50UGFnZSA8IHRoaXMudG90YWxEYXRhTGVuZ3RoID8gdGhpcy5jdXJyZW50UGFnZSArIDEgOiB0aGlzLnRvdGFsRGF0YUxlbmd0aDtcblx0fVxuXG5cdHB1YmxpYyBqdW1wVG9QcmV2aW91cygpIHtcblx0XHR0aGlzLmN1cnJlbnRQYWdlID0gdGhpcy5jdXJyZW50UGFnZSA+IDEgPyB0aGlzLmN1cnJlbnRQYWdlIC0gMSA6IDE7XG5cdH1cblxuXHRwdWJsaWMgZ2V0UGFnZXMoKSB7XG5cdFx0aWYgKHRoaXMudG90YWxEYXRhTGVuZ3RoIDw9IDEpIHtcblx0XHRcdHJldHVybiBudWxsO1xuXHRcdH1cblx0XHRjb25zdCBjdXRzID0gdGhpcy5nZXRDdXRzKCk7XG5cdFx0cmV0dXJuIHRoaXMudG90YWxOdW1iZXJzQXJyYXkuc2xpY2UodGhpcy5zdGFydE9mZnNldCArIGN1dHMuZnJvbnQsICgxICsgY3V0cy5iYWNrKSAqIC0xKTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0Q3V0cyhzcGxpdFBvaW50ID0gbnVsbCkge1xuXHRcdGNvbnN0IHBhZ2UgPSB0aGlzLmN1cnJlbnRQYWdlIC0gMTtcblx0XHRjb25zdCB0b3RhbEl0ZW1zID0gdGhpcy50b3RhbERhdGFMZW5ndGg7XG5cdFx0Y29uc3QgaXRlbXNUaGF0Rml0ID0gdGhpcy5udW1PZkl0ZW1zVG9TaG93O1xuXG5cdFx0aWYgKGl0ZW1zVGhhdEZpdCA+PSB0b3RhbEl0ZW1zKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRmcm9udDogMCxcblx0XHRcdFx0YmFjazogMFxuXHRcdFx0fTtcblx0XHR9XG5cdFx0Y29uc3Qgc3BsaXQgPSBzcGxpdFBvaW50IHx8IE1hdGguY2VpbChpdGVtc1RoYXRGaXQgLyAyKSAtIDE7XG5cdFx0bGV0IGZyb250SGlkZGVuID0gcGFnZSArIDEgLSBzcGxpdDtcblx0XHRsZXQgYmFja0hpZGRlbiA9IHRvdGFsSXRlbXMgLSBwYWdlIC0gKGl0ZW1zVGhhdEZpdCAtIHNwbGl0KSArIDE7XG5cblx0XHRpZiAoZnJvbnRIaWRkZW4gPD0gMSkge1xuXHRcdFx0YmFja0hpZGRlbiAtPSBmcm9udEhpZGRlbiA8PSAwID8gTWF0aC5hYnMoZnJvbnRIaWRkZW4pICsgMSA6IDA7XG5cdFx0XHRmcm9udEhpZGRlbiA9IDA7XG5cdFx0fVxuXHRcdGlmIChiYWNrSGlkZGVuIDw9IDEpIHtcblx0XHRcdGZyb250SGlkZGVuIC09IGJhY2tIaWRkZW4gPD0gMCA/IE1hdGguYWJzKGJhY2tIaWRkZW4pICsgMSA6IDA7XG5cdFx0XHRiYWNrSGlkZGVuID0gMDtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdGZyb250OiBmcm9udEhpZGRlbixcblx0XHRcdGJhY2s6IGJhY2tIaWRkZW5cblx0XHR9O1xuXHR9XG59XG4iXX0=
327
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhZ2luYXRpb24vcGFnaW5hdGlvbi1uYXYvcGFnaW5hdGlvbi1uYXYuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7OztBQU96RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlCRztBQXNFSCxNQUFNLE9BQU8sYUFBYTtJQW1HekIsWUFBc0IsSUFBVSxFQUFZLFlBQWlDO1FBQXZELFNBQUksR0FBSixJQUFJLENBQU07UUFBWSxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUE3RjdFOztXQUVHO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztRQUMxQjs7V0FFRztRQUNNLHFCQUFnQixHQUFHLENBQUMsQ0FBQztRQWtCOUI7O1dBRUc7UUFDTSxTQUFJLEdBQXVCLElBQUksQ0FBQztRQWF6Qzs7Ozs7V0FLRztRQUNPLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBMkNsRCxpQkFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDM0QscUJBQWdCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUdsRSxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBdEZEOzs7Ozs7OztPQVFHO0lBQ0gsSUFDSSxZQUFZLENBQUMsS0FBZ0M7UUFDaEQsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLENB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QUFXLElBQUksVUFBVSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5RCxVQUFVLEdBQUcsQ0FBQyxDQUFDO1NBQ2Y7UUFDRCxPQUFPO1lBQ04sS0FBSyxFQUFFLFdBQVc7WUFDbEIsSUFBSSxFQUFFLFVBQVU7U0FDaEIsQ0FBQztJQUNILENBQUM7O0FBdkpNLCtCQUFpQixHQUFHLENBQUMsQ0FBQzswR0FEakIsYUFBYTs4RkFBYixhQUFhLHViQW5FZjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpRVQ7MkZBRVcsYUFBYTtrQkFyRXpCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLHlDQUF5QztvQkFDbkQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWlFVDtpQkFDRDs2SEFNUyxLQUFLO3NCQUFiLEtBQUs7Z0JBSUcsUUFBUTtzQkFBaEIsS0FBSztnQkFJRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBWUYsWUFBWTtzQkFEZixLQUFLO2dCQVVHLElBQUk7c0JBQVosS0FBSztnQkFHeUMsZUFBZTtzQkFBN0QsV0FBVzt1QkFBQyw0QkFBNEI7Z0JBR00sZ0JBQWdCO3NCQUE5RCxXQUFXO3VCQUFDLDRCQUE0QjtnQkFHTSxlQUFlO3NCQUE3RCxXQUFXO3VCQUFDLDRCQUE0QjtnQkFVL0IsVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhZ2luYXRpb25Nb2RlbCB9IGZyb20gXCIuLi9wYWdpbmF0aW9uLW1vZGVsLmNsYXNzXCI7XG5pbXBvcnQge1xuXHRDb21wb25lbnQsXG5cdElucHV0LFxuXHRPdXRwdXQsXG5cdEV2ZW50RW1pdHRlcixcblx0SG9zdEJpbmRpbmdcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuaW1wb3J0IHsgSTE4biwgT3ZlcnJpZGFibGUgfSBmcm9tIFwiY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhci9pMThuXCI7XG5pbXBvcnQgeyBFeHBlcmltZW50YWxTZXJ2aWNlIH0gZnJvbSBcImNhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXIvZXhwZXJpbWVudGFsXCI7XG5pbXBvcnQgeyBtZXJnZSB9IGZyb20gXCJjYXJib24tY29tcG9uZW50cy1hbmd1bGFyL3V0aWxzXCI7XG5pbXBvcnQgeyByYW5nZSB9IGZyb20gXCJjYXJib24tY29tcG9uZW50cy1hbmd1bGFyL2NvbW1vblwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2luYXRpb25OYXZUcmFuc2xhdGlvbnMge1xuXHRORVhUOiBzdHJpbmc7XG5cdFBSRVZJT1VTOiBzdHJpbmc7XG59XG5cbi8qKlxuICogVXNlIHBhZ2luYXRpb24gd2hlbiB5b3UgaGF2ZSBtdWx0aXBsZSBwYWdlcyBvZiBkYXRhIHRvIGhhbmRsZS4gR2V0IHN0YXJ0ZWQgd2l0aCBpbXBvcnRpbmcgdGhlIG1vZHVsZTpcbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBQYWdpbmF0aW9uTW9kdWxlIH0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG4gKiBgYGBcbiAqXG4gKiBgYGBodG1sXG4gKiA8Y2RzLXBhZ2luYXRpb24tbmF2IFttb2RlbF09XCJtb2RlbFwiIChzZWxlY3RQYWdlKT1cInNlbGVjdFBhZ2UoJGV2ZW50KVwiPjwvY2RzLXBhZ2luYXRpb24tbmF2PlxuICogYGBgXG4gKlxuICogSW4geW91ciBgc2VsZWN0UGFnZSgpYCBtZXRob2Qgc2V0IHRoZSBgbW9kZWwuY3VycmVudFBhZ2VgIHRvIHNlbGVjdGVkIHBhZ2UsIF9hZnRlcl9cbiAqIHlvdSBsb2FkIHRoZSBwYWdlLlxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIHNlbGVjdFBhZ2UocGFnZSkge1xuICogXHQvLyAuLi4geW91ciBjb2RlIHRvIGxvYWQgdGhlIHBhZ2UgZ29lcyBoZXJlXG4gKlxuICogXHR0aGlzLm1vZGVsLmN1cnJlbnRQYWdlID0gcGFnZTtcbiAqXG4gKiBcdC8vIC4uLiBhbnl0aGluZyB5b3Ugd2FudCB0byBkbyBhZnRlciBwYWdlIHNlbGVjdGlvbiBjaGFuZ2VzIGdvZXMgaGVyZVxuICogfVxuICogYGBgXG4gKlxuICogW1NlZSBkZW1vXSguLi8uLi8/cGF0aD0vc3RvcnkvY29tcG9uZW50cy1wYWdpbmF0aW9uLW5hdi0tYmFzaWMpXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtcGFnaW5hdGlvbi1uYXYsIGlibS1wYWdpbmF0aW9uLW5hdm1cIixcblx0dGVtcGxhdGU6IGBcblx0PGRpdj5cblx0XHQ8ZGl2IGNsYXNzPVwiY2RzLS1wYWdpbmF0aW9uLW5hdlwiPlxuXHRcdFx0PHVsIGNsYXNzPVwiY2RzLS1wYWdpbmF0aW9uLW5hdl9fbGlzdFwiPlxuXHRcdFx0XHQ8bGkgY2xhc3M9XCJjZHMtLXBhZ2luYXRpb24tbmF2X19saXN0LWl0ZW1cIj5cblx0XHRcdFx0XHQ8Y2RzLWljb24tYnV0dG9uXG5cdFx0XHRcdFx0XHRraW5kPVwiZ2hvc3RcIlxuXHRcdFx0XHRcdFx0W3NpemVdPVwic2l6ZVwiXG5cdFx0XHRcdFx0XHQoY2xpY2spPVwianVtcFRvUHJldmlvdXMoKVwiXG5cdFx0XHRcdFx0XHRbZGlzYWJsZWRdPVwibGVmdEFycm93RGlzYWJsZWRcIlxuXHRcdFx0XHRcdFx0W2Rlc2NyaXB0aW9uXT1cInByZXZpb3VzSXRlbVRleHQuc3ViamVjdCB8IGFzeW5jXCI+XG5cdFx0XHRcdFx0XHQ8c3ZnXG5cdFx0XHRcdFx0XHRcdGNkc0ljb249XCJjYXJldC0tbGVmdFwiXG5cdFx0XHRcdFx0XHRcdHNpemU9XCIxNlwiXG5cdFx0XHRcdFx0XHRcdGNsYXNzPVwiY2RzLS1idG5fX2ljb25cIj5cblx0XHRcdFx0XHRcdDwvc3ZnPlxuXHRcdFx0XHRcdDwvY2RzLWljb24tYnV0dG9uPlxuXHRcdFx0XHQ8L2xpPlxuXHRcdFx0XHQ8Y2RzLXBhZ2luYXRpb24tbmF2LWl0ZW1cblx0XHRcdFx0XHQqbmdJZj1cInRoaXMubnVtT2ZJdGVtc1RvU2hvdyA+PSA1IHx8ICh0aGlzLm51bU9mSXRlbXNUb1Nob3cgPD0gNCAmJiBjdXJyZW50UGFnZSA8PSAxKVwiXG5cdFx0XHRcdFx0cGFnZT1cIjFcIlxuXHRcdFx0XHRcdChjbGljayk9XCJjdXJyZW50UGFnZSA9IDFcIlxuXHRcdFx0XHRcdFtpc0FjdGl2ZV09XCJjdXJyZW50UGFnZSA9PSAxXCI+XG5cdFx0XHRcdDwvY2RzLXBhZ2luYXRpb24tbmF2LWl0ZW0+XG5cdFx0XHRcdDxjZHMtcGFnaW5hdGlvbi1vdmVyZmxvd1xuXHRcdFx0XHRcdCpuZ0lmPVwiZnJvbnRDdXRzXCJcblx0XHRcdFx0XHRbY291bnRdPVwiZnJvbnRDdXRzXCJcblx0XHRcdFx0XHRbZnJvbUluZGV4XT1cInN0YXJ0T2Zmc2V0XCJcblx0XHRcdFx0XHQoY2hhbmdlKT1cImhhbmRsZU92ZXJmbG93U2VsZWN0aW9uKCRldmVudClcIj5cblx0XHRcdFx0PC9jZHMtcGFnaW5hdGlvbi1vdmVyZmxvdz5cblx0XHRcdFx0PGNkcy1wYWdpbmF0aW9uLW5hdi1pdGVtXG5cdFx0XHRcdFx0Km5nRm9yPVwibGV0IHBhZ2Ugb2YgZ2V0UGFnZXMoKTtcIlxuXHRcdFx0XHRcdFtwYWdlXT1cInBhZ2VcIlxuXHRcdFx0XHRcdChjbGljayk9XCJjdXJyZW50UGFnZSA9IHBhZ2VcIlxuXHRcdFx0XHRcdFtpc0FjdGl2ZV09XCJjdXJyZW50UGFnZSA9PSBwYWdlXCI+XG5cdFx0XHRcdDwvY2RzLXBhZ2luYXRpb24tbmF2LWl0ZW0+XG5cdFx0XHRcdDxjZHMtcGFnaW5hdGlvbi1vdmVyZmxvd1xuXHRcdFx0XHRcdCpuZ0lmPVwiYmFja0N1dHNcIlxuXHRcdFx0XHRcdFtjb3VudF09XCJiYWNrQ3V0c1wiXG5cdFx0XHRcdFx0W2Zyb21JbmRleF09XCJ0b3RhbE51bWJlcnNBcnJheS5sZW5ndGggLSBiYWNrQ3V0cyAtIDFcIlxuXHRcdFx0XHRcdChjaGFuZ2UpPVwiaGFuZGxlT3ZlcmZsb3dTZWxlY3Rpb24oJGV2ZW50KVwiPlxuXHRcdFx0XHQ8L2Nkcy1wYWdpbmF0aW9uLW92ZXJmbG93PlxuXHRcdFx0XHQ8Y2RzLXBhZ2luYXRpb24tbmF2LWl0ZW1cblx0XHRcdFx0XHQqbmdJZj1cInRvdGFsRGF0YUxlbmd0aCA+IDFcIlxuXHRcdFx0XHRcdFtwYWdlXT1cInRvdGFsTnVtYmVyc0FycmF5Lmxlbmd0aFwiXG5cdFx0XHRcdFx0KGNsaWNrKT1cImN1cnJlbnRQYWdlID0gdG90YWxOdW1iZXJzQXJyYXkubGVuZ3RoXCJcblx0XHRcdFx0XHRbaXNBY3RpdmVdPVwiY3VycmVudFBhZ2UgPT0gdG90YWxOdW1iZXJzQXJyYXkubGVuZ3RoXCI+XG5cdFx0XHRcdDwvY2RzLXBhZ2luYXRpb24tbmF2LWl0ZW0+XG5cdFx0XHRcdDxsaSBjbGFzcz1cImNkcy0tcGFnaW5hdGlvbi1uYXZfX2xpc3QtaXRlbVwiPlxuXHRcdFx0XHRcdDxjZHMtaWNvbi1idXR0b25cblx0XHRcdFx0XHRcdGtpbmQ9XCJnaG9zdFwiXG5cdFx0XHRcdFx0XHRbc2l6ZV09XCJzaXplXCJcblx0XHRcdFx0XHRcdChjbGljayk9XCJqdW1wVG9OZXh0KClcIlxuXHRcdFx0XHRcdFx0W2Rpc2FibGVkXT1cInJpZ2h0QXJyb3dEaXNhYmxlZFwiXG5cdFx0XHRcdFx0XHRbZGVzY3JpcHRpb25dPVwibmV4dEl0ZW1UZXh0LnN1YmplY3QgfCBhc3luY1wiPlxuXHRcdFx0XHRcdFx0PHN2Z1xuXHRcdFx0XHRcdFx0XHRjZHNJY29uPVwiY2FyZXQtLXJpZ2h0XCJcblx0XHRcdFx0XHRcdFx0c2l6ZT1cIjE2XCJcblx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJjZHMtLWJ0bl9faWNvblwiPlxuXHRcdFx0XHRcdFx0PC9zdmc+XG5cdFx0XHRcdFx0PC9jZHMtaWNvbi1idXR0b24+XG5cdFx0XHRcdDwvbGk+XG5cdFx0XHQ8L3VsPlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cblx0YFxufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uTmF2IHtcblx0c3RhdGljIHBhZ2luYXRpb25Db3VudGVyID0gMDtcblx0LyoqXG5cdCAqIGBQYWdpbmF0aW9uTmF2TW9kZWxgIHdpdGggdGhlIGluZm9ybWF0aW9uIGFib3V0IHBhZ2VzIHlvdSdyZSBjb250cm9sbGluZy5cblx0ICovXG5cdEBJbnB1dCgpIG1vZGVsOiBQYWdpbmF0aW9uTW9kZWw7XG5cdC8qKlxuXHQgICAqIFNldCB0byBgdHJ1ZWAgdG8gZGlzYWJsZSB0aGUgYmFja3dhcmQvZm9yd2FyZCBidXR0b25zLlxuXHQgKi9cblx0QElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblx0LyoqXG5cdCAqIE51bWJlciBvZiBpdGVtcyB0byBzaG93IGluIHBhZ2luYXRpb24uIE1pbmltdW0gaXMgNC5cblx0ICovXG5cdEBJbnB1dCgpIG51bU9mSXRlbXNUb1Nob3cgPSA0O1xuXG5cdC8qKlxuXHQgKiBFeHBlY3RzIGFuIG9iamVjdCB0aGF0IGNvbnRhaW5zIHNvbWUgb3IgYWxsIG9mOlxuXHQgKiBgYGBcblx0ICoge1xuXHQgKlx0XHRcIk5FWFRcIjogXCJOZXh0XCIsXG5cdCAqXHRcdFwiUFJFVklPVVNcIjogXCJQcmV2aW91c1wiLFxuXHQgKiB9XG5cdCAqIGBgYFxuXHQgKi9cblx0QElucHV0KClcblx0c2V0IHRyYW5zbGF0aW9ucyh2YWx1ZTogUGFnaW5hdGlvbk5hdlRyYW5zbGF0aW9ucykge1xuXHRcdGNvbnN0IHZhbHVlV2l0aERlZmF1bHRzID0gbWVyZ2UodGhpcy5pMThuLmdldE11bHRpcGxlKFwiUEFHSU5BVElPTlwiKSwgdmFsdWUpO1xuXHRcdHRoaXMubmV4dEl0ZW1UZXh0Lm92ZXJyaWRlKHZhbHVlV2l0aERlZmF1bHRzLk5FWFQpO1xuXHRcdHRoaXMucHJldmlvdXNJdGVtVGV4dC5vdmVycmlkZSh2YWx1ZVdpdGhEZWZhdWx0cy5QUkVWSU9VUyk7XG5cdH1cblxuXHQvKipcblx0ICogU2V0cyB0aGUgcGFnaW5hdGlvbiBuYXYgc2l6ZVxuXHQgKi9cblx0QElucHV0KCkgc2l6ZTogXCJzbVwiIHwgXCJtZFwiIHwgXCJsZ1wiID0gXCJsZ1wiO1xuXG5cdC8vIFNpemVcblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1sYXlvdXQtLXNpemUtc21cIikgZ2V0IHNtYWxsTGF5b3V0U2l6ZSgpIHtcblx0XHRyZXR1cm4gdGhpcy5zaXplID09PSBcInNtXCI7XG5cdH1cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1sYXlvdXQtLXNpemUtbWRcIikgZ2V0IG1lZGl1bUxheW91dFNpemUoKSB7XG5cdFx0cmV0dXJuIHRoaXMuc2l6ZSA9PT0gXCJtZFwiO1xuXHR9XG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbGF5b3V0LS1zaXplLWxnXCIpIGdldCBsYXJnZUxheW91dFNpemUoKSB7XG5cdFx0cmV0dXJuIHRoaXMuc2l6ZSA9PT0gXCJsZ1wiO1xuXHR9XG5cblx0LyoqXG5cdCAqIEVtaXRzIHRoZSBuZXcgcGFnZSBudW1iZXIuXG5cdCAqXG5cdCAqIFlvdSBzaG91bGQgdGllIGludG8gdGhpcyBhbmQgdXBkYXRlIGBtb2RlbC5jdXJyZW50UGFnZWAgb25jZSB0aGUgZnJlc2hcblx0ICogZGF0YSBpcyBmaW5hbGx5IGxvYWRlZC5cblx0ICovXG5cdEBPdXRwdXQoKSBzZWxlY3RQYWdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cblx0Z2V0IHRvdGFsTnVtYmVyc0FycmF5KCkge1xuXHRcdHJldHVybiByYW5nZSh0aGlzLnRvdGFsRGF0YUxlbmd0aCArIDEsIDEpO1xuXHR9XG5cblx0Z2V0IGN1cnJlbnRQYWdlKCkge1xuXHRcdHJldHVybiB0aGlzLm1vZGVsLmN1cnJlbnRQYWdlO1xuXHR9XG5cblx0c2V0IGN1cnJlbnRQYWdlKHZhbHVlKSB7XG5cdFx0dmFsdWUgPSBOdW1iZXIodmFsdWUpO1xuXHRcdC8vIGVtaXRzIHRoZSB2YWx1ZSB0byBhbGxvdyB0aGUgdXNlciB0byB1cGRhdGUgY3VycmVudCBwYWdlXG5cdFx0Ly8gaW4gdGhlIG1vZGVsIG9uY2UgdGhlIHBhZ2UgaXMgbG9hZGVkXG5cdFx0dGhpcy5zZWxlY3RQYWdlLmVtaXQodmFsdWUpO1xuXHR9XG5cblx0Z2V0IHRvdGFsRGF0YUxlbmd0aCgpIHtcblx0XHRyZXR1cm4gdGhpcy5tb2RlbC50b3RhbERhdGFMZW5ndGg7XG5cdH1cblxuXHRnZXQgc3RhcnRPZmZzZXQoKSB7XG5cdFx0cmV0dXJuIHRoaXMubnVtT2ZJdGVtc1RvU2hvdyA8PSA0ICYmIHRoaXMuY3VycmVudFBhZ2UgPiAxID8gMCA6IDE7XG5cdH1cblxuXHRnZXQgZnJvbnRDdXRzKCkge1xuXHRcdGNvbnN0IGN1dHMgPSB0aGlzLmdldEN1dHMoKTtcblx0XHRyZXR1cm4gY3V0cy5mcm9udDtcblx0fVxuXG5cdGdldCBiYWNrQ3V0cygpIHtcblx0XHRjb25zdCBjdXRzID0gdGhpcy5nZXRDdXRzKCk7XG5cdFx0cmV0dXJuIGN1dHMuYmFjaztcblx0fVxuXG5cdGdldCBsZWZ0QXJyb3dEaXNhYmxlZCgpIHtcblx0XHRyZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCB0aGlzLmN1cnJlbnRQYWdlID09PSAxO1xuXHR9XG5cblx0Z2V0IHJpZ2h0QXJyb3dEaXNhYmxlZCgpIHtcblx0XHRyZXR1cm4gdGhpcy5kaXNhYmxlZCB8fCB0aGlzLmN1cnJlbnRQYWdlID09PSB0aGlzLnRvdGFsRGF0YUxlbmd0aDtcblx0fVxuXG5cdG5leHRJdGVtVGV4dCA9IHRoaXMuaTE4bi5nZXRPdmVycmlkYWJsZShcIlBBR0lOQVRJT04uTkVYVFwiKTtcblx0cHJldmlvdXNJdGVtVGV4dCA9IHRoaXMuaTE4bi5nZXRPdmVycmlkYWJsZShcIlBBR0lOQVRJT04uUFJFVklPVVNcIik7XG5cblx0Y29uc3RydWN0b3IocHJvdGVjdGVkIGkxOG46IEkxOG4sIHByb3RlY3RlZCBleHBlcmltZW50YWw6IEV4cGVyaW1lbnRhbFNlcnZpY2UpIHtcblx0XHRQYWdpbmF0aW9uTmF2LnBhZ2luYXRpb25Db3VudGVyKys7XG5cdH1cblxuXHRoYW5kbGVPdmVyZmxvd1NlbGVjdGlvbihwYWdlKSB7XG5cdFx0aWYgKHR5cGVvZiBwYWdlID09PSBcIm51bWJlclwiKSB7XG5cdFx0XHR0aGlzLmN1cnJlbnRQYWdlID0gcGFnZTtcblx0XHR9XG5cdH1cblxuXHRwdWJsaWMganVtcFRvTmV4dCgpIHtcblx0XHR0aGlzLmN1cnJlbnRQYWdlID0gdGhpcy5jdXJyZW50UGFnZSA8IHRoaXMudG90YWxEYXRhTGVuZ3RoID8gdGhpcy5jdXJyZW50UGFnZSArIDEgOiB0aGlzLnRvdGFsRGF0YUxlbmd0aDtcblx0fVxuXG5cdHB1YmxpYyBqdW1wVG9QcmV2aW91cygpIHtcblx0XHR0aGlzLmN1cnJlbnRQYWdlID0gdGhpcy5jdXJyZW50UGFnZSA+IDEgPyB0aGlzLmN1cnJlbnRQYWdlIC0gMSA6IDE7XG5cdH1cblxuXHRwdWJsaWMgZ2V0UGFnZXMoKSB7XG5cdFx0aWYgKHRoaXMudG90YWxEYXRhTGVuZ3RoIDw9IDEpIHtcblx0XHRcdHJldHVybiBudWxsO1xuXHRcdH1cblx0XHRjb25zdCBjdXRzID0gdGhpcy5nZXRDdXRzKCk7XG5cdFx0cmV0dXJuIHRoaXMudG90YWxOdW1iZXJzQXJyYXkuc2xpY2UodGhpcy5zdGFydE9mZnNldCArIGN1dHMuZnJvbnQsICgxICsgY3V0cy5iYWNrKSAqIC0xKTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0Q3V0cyhzcGxpdFBvaW50ID0gbnVsbCkge1xuXHRcdGNvbnN0IHBhZ2UgPSB0aGlzLmN1cnJlbnRQYWdlIC0gMTtcblx0XHRjb25zdCB0b3RhbEl0ZW1zID0gdGhpcy50b3RhbERhdGFMZW5ndGg7XG5cdFx0Y29uc3QgaXRlbXNUaGF0Rml0ID0gdGhpcy5udW1PZkl0ZW1zVG9TaG93O1xuXG5cdFx0aWYgKGl0ZW1zVGhhdEZpdCA+PSB0b3RhbEl0ZW1zKSB7XG5cdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRmcm9udDogMCxcblx0XHRcdFx0YmFjazogMFxuXHRcdFx0fTtcblx0XHR9XG5cdFx0Y29uc3Qgc3BsaXQgPSBzcGxpdFBvaW50IHx8IE1hdGguY2VpbChpdGVtc1RoYXRGaXQgLyAyKSAtIDE7XG5cdFx0bGV0IGZyb250SGlkZGVuID0gcGFnZSArIDEgLSBzcGxpdDtcblx0XHRsZXQgYmFja0hpZGRlbiA9IHRvdGFsSXRlbXMgLSBwYWdlIC0gKGl0ZW1zVGhhdEZpdCAtIHNwbGl0KSArIDE7XG5cblx0XHRpZiAoZnJvbnRIaWRkZW4gPD0gMSkge1xuXHRcdFx0YmFja0hpZGRlbiAtPSBmcm9udEhpZGRlbiA8PSAwID8gTWF0aC5hYnMoZnJvbnRIaWRkZW4pICsgMSA6IDA7XG5cdFx0XHRmcm9udEhpZGRlbiA9IDA7XG5cdFx0fVxuXHRcdGlmIChiYWNrSGlkZGVuIDw9IDEpIHtcblx0XHRcdGZyb250SGlkZGVuIC09IGJhY2tIaWRkZW4gPD0gMCA/IE1hdGguYWJzKGJhY2tIaWRkZW4pICsgMSA6IDA7XG5cdFx0XHRiYWNrSGlkZGVuID0gMDtcblx0XHR9XG5cdFx0cmV0dXJuIHtcblx0XHRcdGZyb250OiBmcm9udEhpZGRlbixcblx0XHRcdGJhY2s6IGJhY2tIaWRkZW5cblx0XHR9O1xuXHR9XG59XG4iXX0=
@@ -7,7 +7,7 @@ import * as i3 from "carbon-components-angular/icon";
7
7
  * Get started with importing the module:
8
8
  *
9
9
  * ```typescript
10
- * import { ProgressIndictorModule } from 'carbon-components-angular';
10
+ * import { ProgressIndicatorModule } from 'carbon-components-angular';
11
11
  * ```
12
12
  *
13
13
  * [See demo](../../?path=/story/components-progress-indicator--basic)
@@ -209,4 +209,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
209
209
  }], spacing: [{
210
210
  type: Input
211
211
  }] } });
212
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtaW5kaWNhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm9ncmVzcy1pbmRpY2F0b3IvcHJvZ3Jlc3MtaW5kaWNhdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLE1BQU0sZUFBZSxDQUFDOzs7OztBQUl2Qjs7Ozs7Ozs7R0FRRztBQXNESCxNQUFNLE9BQU8saUJBQWlCO0lBbUM3QixZQUFzQixJQUFVO1FBQVYsU0FBSSxHQUFKLElBQUksQ0FBTTtRQWpCdEIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBaUMsQ0FBQztRQUVsRSxpQkFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsa0JBQWtCLENBQUM7UUFDbEQsZ0JBQVcsR0FBOEIsWUFBWSxDQUFDO1FBQ3RELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsWUFBTyxHQUF3QixTQUFTLENBQUM7UUFFbEQsdUNBQXVDO1FBQzlCLGdCQUFXLEdBQUc7WUFDdEIsT0FBTyxFQUFFLFlBQVk7WUFDckIsUUFBUSxFQUFFLG9CQUFvQjtZQUM5QixPQUFPLEVBQUUsU0FBUztZQUNsQixVQUFVLEVBQUUsYUFBYTtTQUN6QixDQUFDO0lBSWtDLENBQUM7SUFsQ3JDLElBQWEsT0FBTztRQUNuQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdEIsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLE9BQWU7UUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUNELE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBaUI7UUFDckMsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbkMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1NBQ2hDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZCxDQUFDO0lBc0JEOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsS0FBYTtRQUNwQixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLEtBQUssVUFBVSxFQUFFO1lBQzlFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDNUI7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxlQUFlLENBQUMsS0FBYTtRQUM1QixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQzNCLE9BQU8sU0FBUyxDQUFDO1NBQ2pCO2FBQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sRUFBRTtZQUNyQyxPQUFPLFNBQVMsQ0FBQztTQUNqQjthQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUU7WUFDdEMsT0FBTyxVQUFVLENBQUM7U0FDbEI7UUFFRCxPQUFPLFlBQVksQ0FBQztJQUNyQixDQUFDO0lBRU8sMEJBQTBCO1FBQ2pDLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDN0IsT0FBTztTQUNQO1FBRUQsb0VBQW9FO1FBQ3BFLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBVSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ3hDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO2FBQ3JCO2lCQUFNO2dCQUNOLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2FBQ3RCO1FBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDOzs4R0FsRlcsaUJBQWlCO2tHQUFqQixpQkFBaUIscVJBbkRuQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWlEVDsyRkFFVyxpQkFBaUI7a0JBckQ3QixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxnREFBZ0Q7b0JBQzFELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWlEVDtpQkFDRDsyRkFFYSxPQUFPO3NCQUFuQixLQUFLO2dCQWdCRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0ksWUFBWTtzQkFBckIsTUFBTTtnQkFFRSxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRDb21wb25lbnQsXG5cdElucHV0LFxuXHRPdXRwdXQsXG5cdEV2ZW50RW1pdHRlclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSTE4biB9IGZyb20gXCJjYXJib24tY29tcG9uZW50cy1hbmd1bGFyL2kxOG5cIjtcbmltcG9ydCB7IFN0ZXAgfSBmcm9tIFwiLi9wcm9ncmVzcy1pbmRpY2F0b3Itc3RlcC5pbnRlcmZhY2VcIjtcblxuLyoqXG4gKiBHZXQgc3RhcnRlZCB3aXRoIGltcG9ydGluZyB0aGUgbW9kdWxlOlxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IFByb2dyZXNzSW5kaWN0b3JNb2R1bGUgfSBmcm9tICdjYXJib24tY29tcG9uZW50cy1hbmd1bGFyJztcbiAqIGBgYFxuICpcbiAqIFtTZWUgZGVtb10oLi4vLi4vP3BhdGg9L3N0b3J5L2NvbXBvbmVudHMtcHJvZ3Jlc3MtaW5kaWNhdG9yLS1iYXNpYylcbiAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiBcImNkcy1wcm9ncmVzcy1pbmRpY2F0b3IsIGlibS1wcm9ncmVzcy1pbmRpY2F0b3JcIixcblx0dGVtcGxhdGU6IGBcblx0PHVsXG5cdFx0ZGF0YS1wcm9ncmVzc1xuXHRcdGRhdGEtcHJvZ3Jlc3MtY3VycmVudFxuXHRcdGNsYXNzPVwiY2RzLS1wcm9ncmVzc1wiXG5cdFx0W25nQ2xhc3NdPVwie1xuXHRcdFx0J2Nkcy0tc2tlbGV0b24nOiBza2VsZXRvbixcblx0XHRcdCdjZHMtLXByb2dyZXNzLS12ZXJ0aWNhbCc6IChvcmllbnRhdGlvbiA9PT0gJ3ZlcnRpY2FsJyksXG5cdFx0XHQnY2RzLS1wcm9ncmVzcy0tc3BhY2UtZXF1YWwnOiBzcGFjaW5nID09PSAnZXF1YWwnICYmIG9yaWVudGF0aW9uICE9PSAndmVydGljYWwnXG5cdFx0fVwiPlxuXHRcdDxsaVxuXHRcdFx0Y2xhc3M9XCJjZHMtLXByb2dyZXNzLXN0ZXBcIlxuXHRcdFx0Km5nRm9yPVwibGV0IHN0ZXAgb2Ygc3RlcHM7IGxldCBpID0gaW5kZXhcIlxuXHRcdFx0W25nQ2xhc3NdPVwie1xuXHRcdFx0XHQnY2RzLS1wcm9ncmVzcy1zdGVwLS1kaXNhYmxlZCcgOiBzdGVwLmRpc2FibGVkLFxuXHRcdFx0XHQnY2RzLS1wcm9ncmVzcy1zdGVwLS1jb21wbGV0ZScgOiBzdGVwLmNvbXBsZXRlLFxuXHRcdFx0XHQnY2RzLS1wcm9ncmVzcy1zdGVwLS1pbmNvbXBsZXRlJyA6ICFzdGVwLmNvbXBsZXRlICYmIGkgIT09IGN1cnJlbnQsXG5cdFx0XHRcdCdjZHMtLXByb2dyZXNzLXN0ZXAtLWN1cnJlbnQnOiBpID09PSBjdXJyZW50XG5cdFx0XHR9XCI+XG5cdFx0XHQ8YnV0dG9uXG5cdFx0XHRcdHR5cGU9XCJidXR0b25cIlxuXHRcdFx0XHRjbGFzcz1cImNkcy0tcHJvZ3Jlc3Mtc3RlcC1idXR0b25cIlxuXHRcdFx0XHRbbmdDbGFzc109XCJ7XG5cdFx0XHRcdFx0J2Nkcy0tcHJvZ3Jlc3Mtc3RlcC1idXR0b24tLXVuY2xpY2thYmxlJzogIXN0ZXAub25DbGljayB8fCBjdXJyZW50ID09PSBpXG5cdFx0XHRcdH1cIlxuXHRcdFx0XHRbZGlzYWJsZWRdPVwic3RlcC5kaXNhYmxlZFwiXG5cdFx0XHRcdFthdHRyLmFyaWEtZGlzYWJsZWRdPVwic3RlcC5kaXNhYmxlZFwiXG5cdFx0XHRcdFt0YWJpbmRleF09XCIoY3VycmVudCAhPT0gaSAmJiBzdGVwLm9uQ2xpY2sgJiYgIXN0ZXAuZGlzYWJsZWQpID8gMCA6IC0xXCJcblx0XHRcdFx0W3RpdGxlXT1cInN0ZXAubGFiZWxcIlxuXHRcdFx0XHQoY2xpY2spPVwib25DbGljayhpKVwiPlxuXHRcdFx0XHQ8c3BhbiBjbGFzcz1cImNkcy0tYXNzaXN0aXZlLXRleHRcIj5cblx0XHRcdFx0XHR7e3RoaXMudHJhbnNsYXRpb25zW2dldEN1cnJlbnRTdGF0ZShpKT8udG9VcHBlckNhc2UoKV19fVxuXHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdDxzdmdcblx0XHRcdFx0XHRbY2RzSWNvbl09XCJzdGF0dXNJY29uc1tnZXRDdXJyZW50U3RhdGUoaSldXCJcblx0XHRcdFx0XHRzaXplPVwiMTZcIlxuXHRcdFx0XHRcdFtuZ0NsYXNzXT1cIntcblx0XHRcdFx0XHRcdCdjZHMtLXByb2dyZXNzX193YXJuaW5nJzogc3RlcC5pbnZhbGlkICYmIGkgIT09IGN1cnJlbnRcblx0XHRcdFx0XHR9XCI+XG5cdFx0XHRcdFx0PHRpdGxlICpuZ0lmPVwic3RlcC5kZXNjcmlwdGlvblwiPnt7c3RlcC5kZXNjcmlwdGlvbn19PC90aXRsZT5cblx0XHRcdFx0PC9zdmc+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJjZHMtLXByb2dyZXNzLXRleHRcIj5cblx0XHRcdFx0XHQ8cCBjbGFzcz1cImNkcy0tcHJvZ3Jlc3MtbGFiZWxcIj57e3N0ZXAubGFiZWx9fTwvcD5cblx0XHRcdFx0XHQ8cCAqbmdJZj1cInN0ZXAuc2Vjb25kYXJ5TGFiZWxcIiBjbGFzcz1cImNkcy0tcHJvZ3Jlc3Mtb3B0aW9uYWxcIj57e3N0ZXAuc2Vjb25kYXJ5TGFiZWx9fTwvcD5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDxzcGFuIGNsYXNzPVwiY2RzLS1wcm9ncmVzcy1saW5lXCI+PC9zcGFuPlxuXHRcdFx0PC9idXR0b24+XG5cdFx0PC9saT5cblx0PC91bD5cblx0YFxufSlcbmV4cG9ydCBjbGFzcyBQcm9ncmVzc0luZGljYXRvciB7XG5cdEBJbnB1dCgpIGdldCBjdXJyZW50KCkge1xuXHRcdHJldHVybiB0aGlzLl9jdXJyZW50O1xuXHR9XG5cdHNldCBjdXJyZW50KGN1cnJlbnQ6IG51bWJlcikge1xuXHRcdHRoaXMuX2N1cnJlbnQgPSBjdXJyZW50O1xuXHRcdHRoaXMuc2V0UHJvZ3Jlc3NJbmRpY2F0b3JTdGF0ZXMoKTtcblx0fVxuXHRzdGF0aWMgc2tlbGV0b25TdGVwcyhzdGVwQ291bnQ6IG51bWJlcikge1xuXHRcdGNvbnN0IHN0ZXBzID0gW107XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBzdGVwQ291bnQ7IGkrKykge1xuXHRcdFx0c3RlcHMucHVzaCh7IGNvbXBsZXRlOiBmYWxzZSB9KTtcblx0XHR9XG5cblx0XHRyZXR1cm4gc3RlcHM7XG5cdH1cblxuXHRASW5wdXQoKSBzdGVwczogQXJyYXk8U3RlcD47XG5cdEBPdXRwdXQoKSBzdGVwU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHsgc3RlcDogU3RlcCwgaW5kZXg6IG51bWJlciB9PigpO1xuXG5cdEBJbnB1dCgpIHRyYW5zbGF0aW9ucyA9IHRoaXMuaTE4bi5nZXQoKS5QUk9HUkVTU19JTkRJQ0FUT1I7XG5cdEBJbnB1dCgpIG9yaWVudGF0aW9uOiBcImhvcml6b250YWxcIiB8IFwidmVydGljYWxcIiA9IFwiaG9yaXpvbnRhbFwiO1xuXHRASW5wdXQoKSBza2VsZXRvbiA9IGZhbHNlO1xuXHRASW5wdXQoKSBzcGFjaW5nOiBcImRlZmF1bHRcIiB8IFwiZXF1YWxcIiA9IFwiZGVmYXVsdFwiO1xuXG5cdC8vIEdldCBpY29uIG5hbWVzIGJhc2VkIGZvciBlYWNoIHN0YXR1c1xuXHRyZWFkb25seSBzdGF0dXNJY29ucyA9IHtcblx0XHRjdXJyZW50OiBcImluY29tcGxldGVcIixcblx0XHRjb21wbGV0ZTogXCJjaGVja21hcmstLW91dGxpbmVcIixcblx0XHRpbnZhbGlkOiBcIndhcm5pbmdcIixcblx0XHRpbmNvbXBsZXRlOiBcImNpcmNsZS1kYXNoXCJcblx0fTtcblxuXHRwcml2YXRlIF9jdXJyZW50OiBudW1iZXI7XG5cblx0Y29uc3RydWN0b3IocHJvdGVjdGVkIGkxOG46IEkxOG4pIHsgfVxuXG5cdC8qKlxuXHQgKiBFeGVjdXRlcyBjbGljayBmdW5jdGlvbiBpZiBgb25DbGlja2AgZXhpc3RzIGZvciBzdGVwXG5cdCAqIGBDdXJyZW50YCBzdGVwIGZ1bmN0aW9ucyB3aWxsIG5vdCBiZSBleGVjdXRlZFxuXHQgKiBAcGFyYW0gaW5kZXggbnVtYmVyXG5cdCAqL1xuXHRvbkNsaWNrKGluZGV4OiBudW1iZXIpIHtcblx0XHRpZiAoaW5kZXggIT09IHRoaXMuY3VycmVudCAmJiB0eXBlb2YgdGhpcy5zdGVwc1tpbmRleF0ub25DbGljayA9PT0gXCJmdW5jdGlvblwiKSB7XG5cdFx0XHR0aGlzLnN0ZXBzW2luZGV4XS5vbkNsaWNrKCk7XG5cdFx0fVxuXHRcdHRoaXMuc3RlcFNlbGVjdGVkLmVtaXQoeyBzdGVwOiB0aGlzLnN0ZXBzW2luZGV4XSwgaW5kZXggfSk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0cyBjdXJyZW50IHN0YXRlIGJhc2VkIG9uIHdlaWdodCBvZiB0aGUgc3RhdGVcblx0ICogV2VpZ2h0IG9mIHN0YXRlIGdvZXMgZnJvbSBlcnJvciwgaW5jb21wbGV0ZSwgY3VycmVudCwgYW5kIGNvbXBsZXRlXG5cdCAqXG5cdCAqIFRoaXMgZnVuY3Rpb24gaXMgdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggaWNvbiAmIHRyYW5zbGF0aW9uIHN0cmluZyB0byBkaXNwbGF5XG5cdCAqIEBwYXJhbSBpbmRleCBudW1iZXJcblx0ICogQHJldHVybnMgc3RyaW5nXG5cdCAqL1xuXHRnZXRDdXJyZW50U3RhdGUoaW5kZXg6IG51bWJlcikge1xuXHRcdGlmIChpbmRleCA9PT0gdGhpcy5jdXJyZW50KSB7XG5cdFx0XHRyZXR1cm4gXCJjdXJyZW50XCI7XG5cdFx0fSBlbHNlIGlmICh0aGlzLnN0ZXBzW2luZGV4XS5pbnZhbGlkKSB7XG5cdFx0XHRyZXR1cm4gXCJpbnZhbGlkXCI7XG5cdFx0fSBlbHNlIGlmICh0aGlzLnN0ZXBzW2luZGV4XS5jb21wbGV0ZSkge1xuXHRcdFx0cmV0dXJuIFwiY29tcGxldGVcIjtcblx0XHR9XG5cblx0XHRyZXR1cm4gXCJpbmNvbXBsZXRlXCI7XG5cdH1cblxuXHRwcml2YXRlIHNldFByb2dyZXNzSW5kaWNhdG9yU3RhdGVzKCkge1xuXHRcdGlmICh0aGlzLnN0ZXBzID09PSB1bmRlZmluZWQpIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cblx0XHQvLyBTZXQgYWxsIHByZWNlZGluZyBzdGVwcyB0byBgY29tcGxldGVgICYgZm9sbG93aW5nIHRvIGBpbmNvbXBsZXRlYFxuXHRcdHRoaXMuc3RlcHMuZm9yRWFjaCgoc3RlcDogU3RlcCwgaW5kZXgpID0+IHtcblx0XHRcdGlmIChpbmRleCA8IHRoaXMuY3VycmVudCkge1xuXHRcdFx0XHRzdGVwLmNvbXBsZXRlID0gdHJ1ZTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHN0ZXAuY29tcGxldGUgPSBmYWxzZTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxufVxuIl19
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtaW5kaWNhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm9ncmVzcy1pbmRpY2F0b3IvcHJvZ3Jlc3MtaW5kaWNhdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLE1BQU0sZUFBZSxDQUFDOzs7OztBQUl2Qjs7Ozs7Ozs7R0FRRztBQXNESCxNQUFNLE9BQU8saUJBQWlCO0lBbUM3QixZQUFzQixJQUFVO1FBQVYsU0FBSSxHQUFKLElBQUksQ0FBTTtRQWpCdEIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBaUMsQ0FBQztRQUVsRSxpQkFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsa0JBQWtCLENBQUM7UUFDbEQsZ0JBQVcsR0FBOEIsWUFBWSxDQUFDO1FBQ3RELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsWUFBTyxHQUF3QixTQUFTLENBQUM7UUFFbEQsdUNBQXVDO1FBQzlCLGdCQUFXLEdBQUc7WUFDdEIsT0FBTyxFQUFFLFlBQVk7WUFDckIsUUFBUSxFQUFFLG9CQUFvQjtZQUM5QixPQUFPLEVBQUUsU0FBUztZQUNsQixVQUFVLEVBQUUsYUFBYTtTQUN6QixDQUFDO0lBSWtDLENBQUM7SUFsQ3JDLElBQWEsT0FBTztRQUNuQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdEIsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLE9BQWU7UUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUNELE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBaUI7UUFDckMsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbkMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1NBQ2hDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZCxDQUFDO0lBc0JEOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsS0FBYTtRQUNwQixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLEtBQUssVUFBVSxFQUFFO1lBQzlFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDNUI7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxlQUFlLENBQUMsS0FBYTtRQUM1QixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQzNCLE9BQU8sU0FBUyxDQUFDO1NBQ2pCO2FBQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sRUFBRTtZQUNyQyxPQUFPLFNBQVMsQ0FBQztTQUNqQjthQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUU7WUFDdEMsT0FBTyxVQUFVLENBQUM7U0FDbEI7UUFFRCxPQUFPLFlBQVksQ0FBQztJQUNyQixDQUFDO0lBRU8sMEJBQTBCO1FBQ2pDLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDN0IsT0FBTztTQUNQO1FBRUQsb0VBQW9FO1FBQ3BFLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBVSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ3hDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO2FBQ3JCO2lCQUFNO2dCQUNOLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2FBQ3RCO1FBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDOzs4R0FsRlcsaUJBQWlCO2tHQUFqQixpQkFBaUIscVJBbkRuQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWlEVDsyRkFFVyxpQkFBaUI7a0JBckQ3QixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxnREFBZ0Q7b0JBQzFELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWlEVDtpQkFDRDsyRkFFYSxPQUFPO3NCQUFuQixLQUFLO2dCQWdCRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0ksWUFBWTtzQkFBckIsTUFBTTtnQkFFRSxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRDb21wb25lbnQsXG5cdElucHV0LFxuXHRPdXRwdXQsXG5cdEV2ZW50RW1pdHRlclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSTE4biB9IGZyb20gXCJjYXJib24tY29tcG9uZW50cy1hbmd1bGFyL2kxOG5cIjtcbmltcG9ydCB7IFN0ZXAgfSBmcm9tIFwiLi9wcm9ncmVzcy1pbmRpY2F0b3Itc3RlcC5pbnRlcmZhY2VcIjtcblxuLyoqXG4gKiBHZXQgc3RhcnRlZCB3aXRoIGltcG9ydGluZyB0aGUgbW9kdWxlOlxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IFByb2dyZXNzSW5kaWNhdG9yTW9kdWxlIH0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG4gKiBgYGBcbiAqXG4gKiBbU2VlIGRlbW9dKC4uLy4uLz9wYXRoPS9zdG9yeS9jb21wb25lbnRzLXByb2dyZXNzLWluZGljYXRvci0tYmFzaWMpXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtcHJvZ3Jlc3MtaW5kaWNhdG9yLCBpYm0tcHJvZ3Jlc3MtaW5kaWNhdG9yXCIsXG5cdHRlbXBsYXRlOiBgXG5cdDx1bFxuXHRcdGRhdGEtcHJvZ3Jlc3Ncblx0XHRkYXRhLXByb2dyZXNzLWN1cnJlbnRcblx0XHRjbGFzcz1cImNkcy0tcHJvZ3Jlc3NcIlxuXHRcdFtuZ0NsYXNzXT1cIntcblx0XHRcdCdjZHMtLXNrZWxldG9uJzogc2tlbGV0b24sXG5cdFx0XHQnY2RzLS1wcm9ncmVzcy0tdmVydGljYWwnOiAob3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCcpLFxuXHRcdFx0J2Nkcy0tcHJvZ3Jlc3MtLXNwYWNlLWVxdWFsJzogc3BhY2luZyA9PT0gJ2VxdWFsJyAmJiBvcmllbnRhdGlvbiAhPT0gJ3ZlcnRpY2FsJ1xuXHRcdH1cIj5cblx0XHQ8bGlcblx0XHRcdGNsYXNzPVwiY2RzLS1wcm9ncmVzcy1zdGVwXCJcblx0XHRcdCpuZ0Zvcj1cImxldCBzdGVwIG9mIHN0ZXBzOyBsZXQgaSA9IGluZGV4XCJcblx0XHRcdFtuZ0NsYXNzXT1cIntcblx0XHRcdFx0J2Nkcy0tcHJvZ3Jlc3Mtc3RlcC0tZGlzYWJsZWQnIDogc3RlcC5kaXNhYmxlZCxcblx0XHRcdFx0J2Nkcy0tcHJvZ3Jlc3Mtc3RlcC0tY29tcGxldGUnIDogc3RlcC5jb21wbGV0ZSxcblx0XHRcdFx0J2Nkcy0tcHJvZ3Jlc3Mtc3RlcC0taW5jb21wbGV0ZScgOiAhc3RlcC5jb21wbGV0ZSAmJiBpICE9PSBjdXJyZW50LFxuXHRcdFx0XHQnY2RzLS1wcm9ncmVzcy1zdGVwLS1jdXJyZW50JzogaSA9PT0gY3VycmVudFxuXHRcdFx0fVwiPlxuXHRcdFx0PGJ1dHRvblxuXHRcdFx0XHR0eXBlPVwiYnV0dG9uXCJcblx0XHRcdFx0Y2xhc3M9XCJjZHMtLXByb2dyZXNzLXN0ZXAtYnV0dG9uXCJcblx0XHRcdFx0W25nQ2xhc3NdPVwie1xuXHRcdFx0XHRcdCdjZHMtLXByb2dyZXNzLXN0ZXAtYnV0dG9uLS11bmNsaWNrYWJsZSc6ICFzdGVwLm9uQ2xpY2sgfHwgY3VycmVudCA9PT0gaVxuXHRcdFx0XHR9XCJcblx0XHRcdFx0W2Rpc2FibGVkXT1cInN0ZXAuZGlzYWJsZWRcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWRpc2FibGVkXT1cInN0ZXAuZGlzYWJsZWRcIlxuXHRcdFx0XHRbdGFiaW5kZXhdPVwiKGN1cnJlbnQgIT09IGkgJiYgc3RlcC5vbkNsaWNrICYmICFzdGVwLmRpc2FibGVkKSA/IDAgOiAtMVwiXG5cdFx0XHRcdFt0aXRsZV09XCJzdGVwLmxhYmVsXCJcblx0XHRcdFx0KGNsaWNrKT1cIm9uQ2xpY2soaSlcIj5cblx0XHRcdFx0PHNwYW4gY2xhc3M9XCJjZHMtLWFzc2lzdGl2ZS10ZXh0XCI+XG5cdFx0XHRcdFx0e3t0aGlzLnRyYW5zbGF0aW9uc1tnZXRDdXJyZW50U3RhdGUoaSk/LnRvVXBwZXJDYXNlKCldfX1cblx0XHRcdFx0PC9zcGFuPlxuXHRcdFx0XHQ8c3ZnXG5cdFx0XHRcdFx0W2Nkc0ljb25dPVwic3RhdHVzSWNvbnNbZ2V0Q3VycmVudFN0YXRlKGkpXVwiXG5cdFx0XHRcdFx0c2l6ZT1cIjE2XCJcblx0XHRcdFx0XHRbbmdDbGFzc109XCJ7XG5cdFx0XHRcdFx0XHQnY2RzLS1wcm9ncmVzc19fd2FybmluZyc6IHN0ZXAuaW52YWxpZCAmJiBpICE9PSBjdXJyZW50XG5cdFx0XHRcdFx0fVwiPlxuXHRcdFx0XHRcdDx0aXRsZSAqbmdJZj1cInN0ZXAuZGVzY3JpcHRpb25cIj57e3N0ZXAuZGVzY3JpcHRpb259fTwvdGl0bGU+XG5cdFx0XHRcdDwvc3ZnPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiY2RzLS1wcm9ncmVzcy10ZXh0XCI+XG5cdFx0XHRcdFx0PHAgY2xhc3M9XCJjZHMtLXByb2dyZXNzLWxhYmVsXCI+e3tzdGVwLmxhYmVsfX08L3A+XG5cdFx0XHRcdFx0PHAgKm5nSWY9XCJzdGVwLnNlY29uZGFyeUxhYmVsXCIgY2xhc3M9XCJjZHMtLXByb2dyZXNzLW9wdGlvbmFsXCI+e3tzdGVwLnNlY29uZGFyeUxhYmVsfX08L3A+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8c3BhbiBjbGFzcz1cImNkcy0tcHJvZ3Jlc3MtbGluZVwiPjwvc3Bhbj5cblx0XHRcdDwvYnV0dG9uPlxuXHRcdDwvbGk+XG5cdDwvdWw+XG5cdGBcbn0pXG5leHBvcnQgY2xhc3MgUHJvZ3Jlc3NJbmRpY2F0b3Ige1xuXHRASW5wdXQoKSBnZXQgY3VycmVudCgpIHtcblx0XHRyZXR1cm4gdGhpcy5fY3VycmVudDtcblx0fVxuXHRzZXQgY3VycmVudChjdXJyZW50OiBudW1iZXIpIHtcblx0XHR0aGlzLl9jdXJyZW50ID0gY3VycmVudDtcblx0XHR0aGlzLnNldFByb2dyZXNzSW5kaWNhdG9yU3RhdGVzKCk7XG5cdH1cblx0c3RhdGljIHNrZWxldG9uU3RlcHMoc3RlcENvdW50OiBudW1iZXIpIHtcblx0XHRjb25zdCBzdGVwcyA9IFtdO1xuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgc3RlcENvdW50OyBpKyspIHtcblx0XHRcdHN0ZXBzLnB1c2goeyBjb21wbGV0ZTogZmFsc2UgfSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHN0ZXBzO1xuXHR9XG5cblx0QElucHV0KCkgc3RlcHM6IEFycmF5PFN0ZXA+O1xuXHRAT3V0cHV0KCkgc3RlcFNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjx7IHN0ZXA6IFN0ZXAsIGluZGV4OiBudW1iZXIgfT4oKTtcblxuXHRASW5wdXQoKSB0cmFuc2xhdGlvbnMgPSB0aGlzLmkxOG4uZ2V0KCkuUFJPR1JFU1NfSU5ESUNBVE9SO1xuXHRASW5wdXQoKSBvcmllbnRhdGlvbjogXCJob3Jpem9udGFsXCIgfCBcInZlcnRpY2FsXCIgPSBcImhvcml6b250YWxcIjtcblx0QElucHV0KCkgc2tlbGV0b24gPSBmYWxzZTtcblx0QElucHV0KCkgc3BhY2luZzogXCJkZWZhdWx0XCIgfCBcImVxdWFsXCIgPSBcImRlZmF1bHRcIjtcblxuXHQvLyBHZXQgaWNvbiBuYW1lcyBiYXNlZCBmb3IgZWFjaCBzdGF0dXNcblx0cmVhZG9ubHkgc3RhdHVzSWNvbnMgPSB7XG5cdFx0Y3VycmVudDogXCJpbmNvbXBsZXRlXCIsXG5cdFx0Y29tcGxldGU6IFwiY2hlY2ttYXJrLS1vdXRsaW5lXCIsXG5cdFx0aW52YWxpZDogXCJ3YXJuaW5nXCIsXG5cdFx0aW5jb21wbGV0ZTogXCJjaXJjbGUtZGFzaFwiXG5cdH07XG5cblx0cHJpdmF0ZSBfY3VycmVudDogbnVtYmVyO1xuXG5cdGNvbnN0cnVjdG9yKHByb3RlY3RlZCBpMThuOiBJMThuKSB7IH1cblxuXHQvKipcblx0ICogRXhlY3V0ZXMgY2xpY2sgZnVuY3Rpb24gaWYgYG9uQ2xpY2tgIGV4aXN0cyBmb3Igc3RlcFxuXHQgKiBgQ3VycmVudGAgc3RlcCBmdW5jdGlvbnMgd2lsbCBub3QgYmUgZXhlY3V0ZWRcblx0ICogQHBhcmFtIGluZGV4IG51bWJlclxuXHQgKi9cblx0b25DbGljayhpbmRleDogbnVtYmVyKSB7XG5cdFx0aWYgKGluZGV4ICE9PSB0aGlzLmN1cnJlbnQgJiYgdHlwZW9mIHRoaXMuc3RlcHNbaW5kZXhdLm9uQ2xpY2sgPT09IFwiZnVuY3Rpb25cIikge1xuXHRcdFx0dGhpcy5zdGVwc1tpbmRleF0ub25DbGljaygpO1xuXHRcdH1cblx0XHR0aGlzLnN0ZXBTZWxlY3RlZC5lbWl0KHsgc3RlcDogdGhpcy5zdGVwc1tpbmRleF0sIGluZGV4IH0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldHMgY3VycmVudCBzdGF0ZSBiYXNlZCBvbiB3ZWlnaHQgb2YgdGhlIHN0YXRlXG5cdCAqIFdlaWdodCBvZiBzdGF0ZSBnb2VzIGZyb20gZXJyb3IsIGluY29tcGxldGUsIGN1cnJlbnQsIGFuZCBjb21wbGV0ZVxuXHQgKlxuXHQgKiBUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIGljb24gJiB0cmFuc2xhdGlvbiBzdHJpbmcgdG8gZGlzcGxheVxuXHQgKiBAcGFyYW0gaW5kZXggbnVtYmVyXG5cdCAqIEByZXR1cm5zIHN0cmluZ1xuXHQgKi9cblx0Z2V0Q3VycmVudFN0YXRlKGluZGV4OiBudW1iZXIpIHtcblx0XHRpZiAoaW5kZXggPT09IHRoaXMuY3VycmVudCkge1xuXHRcdFx0cmV0dXJuIFwiY3VycmVudFwiO1xuXHRcdH0gZWxzZSBpZiAodGhpcy5zdGVwc1tpbmRleF0uaW52YWxpZCkge1xuXHRcdFx0cmV0dXJuIFwiaW52YWxpZFwiO1xuXHRcdH0gZWxzZSBpZiAodGhpcy5zdGVwc1tpbmRleF0uY29tcGxldGUpIHtcblx0XHRcdHJldHVybiBcImNvbXBsZXRlXCI7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIFwiaW5jb21wbGV0ZVwiO1xuXHR9XG5cblx0cHJpdmF0ZSBzZXRQcm9ncmVzc0luZGljYXRvclN0YXRlcygpIHtcblx0XHRpZiAodGhpcy5zdGVwcyA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Ly8gU2V0IGFsbCBwcmVjZWRpbmcgc3RlcHMgdG8gYGNvbXBsZXRlYCAmIGZvbGxvd2luZyB0byBgaW5jb21wbGV0ZWBcblx0XHR0aGlzLnN0ZXBzLmZvckVhY2goKHN0ZXA6IFN0ZXAsIGluZGV4KSA9PiB7XG5cdFx0XHRpZiAoaW5kZXggPCB0aGlzLmN1cnJlbnQpIHtcblx0XHRcdFx0c3RlcC5jb21wbGV0ZSA9IHRydWU7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRzdGVwLmNvbXBsZXRlID0gZmFsc2U7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cbn1cbiJdfQ==
@@ -37,7 +37,6 @@ export class ListRow {
37
37
  */
38
38
  this.name = "list";
39
39
  this.wrapper = true;
40
- this.tabindex = this.selection ? "0" : null;
41
40
  this.role = "row";
42
41
  this.isFocused = false;
43
42
  }
@@ -55,28 +54,31 @@ export class ListRow {
55
54
  this.input.nativeElement.click();
56
55
  }
57
56
  }
58
- onfocus() {
59
- this.isFocused = true;
60
- }
61
- onblur() {
62
- this.isFocused = false;
63
- }
64
57
  onChange(event) {
65
58
  this.change.emit(event);
66
59
  }
60
+ handleFocus(isFocused) {
61
+ if (this.selection) {
62
+ this.isFocused = isFocused;
63
+ if (this.isFocused) {
64
+ this.input.nativeElement.click();
65
+ }
66
+ }
67
+ }
67
68
  }
68
69
  ListRow.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ListRow, deps: [], target: i0.ɵɵFactoryTarget.Component });
69
- ListRow.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ListRow, selector: "cds-list-row, ibm-list-row", inputs: { selected: "selected", label: "label", value: "value" }, outputs: { change: "change" }, host: { listeners: { "click": "onclick()", "focus": "onfocus()", "blur": "onblur()" }, properties: { "class.cds--structured-list-row--focused-within": "this.focusClass", "class.cds--structured-list-row--selected": "this.selected", "attr.aria-label": "this.label", "class.cds--structured-list-row": "this.wrapper", "attr.tabindex": "this.tabindex", "attr.role": "this.role" } }, queries: [{ propertyName: "columns", predicate: ListColumn }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: `
70
+ ListRow.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ListRow, selector: "cds-list-row, ibm-list-row", inputs: { selected: "selected", label: "label", value: "value" }, outputs: { change: "change" }, host: { listeners: { "click": "onclick()" }, properties: { "class.cds--structured-list-row--focused-within": "this.focusClass", "class.cds--structured-list-row--selected": "this.selected", "attr.aria-label": "this.label", "class.cds--structured-list-row": "this.wrapper", "attr.role": "this.role" } }, queries: [{ propertyName: "columns", predicate: ListColumn }], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: `
70
71
  <ng-content></ng-content>
71
72
  <ng-container *ngIf="selection">
72
73
  <input
73
74
  #input
74
- tabindex="-1"
75
75
  class="cds--structured-list-input cds--visually-hidden"
76
76
  type="radio"
77
77
  [value]="value"
78
78
  [name]="name"
79
79
  [title]="label"
80
+ (focus)="handleFocus(true)"
81
+ (blur)="handleFocus(false)"
80
82
  (change)="onChange($event)"
81
83
  [checked]="selected"/>
82
84
  <div class="cds--structured-list-td">
@@ -93,12 +95,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
93
95
  <ng-container *ngIf="selection">
94
96
  <input
95
97
  #input
96
- tabindex="-1"
97
98
  class="cds--structured-list-input cds--visually-hidden"
98
99
  type="radio"
99
100
  [value]="value"
100
101
  [name]="name"
101
102
  [title]="label"
103
+ (focus)="handleFocus(true)"
104
+ (blur)="handleFocus(false)"
102
105
  (change)="onChange($event)"
103
106
  [checked]="selected"/>
104
107
  <div class="cds--structured-list-td">
@@ -127,9 +130,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
127
130
  }], wrapper: [{
128
131
  type: HostBinding,
129
132
  args: ["class.cds--structured-list-row"]
130
- }], tabindex: [{
131
- type: HostBinding,
132
- args: ["attr.tabindex"]
133
133
  }], role: [{
134
134
  type: HostBinding,
135
135
  args: ["attr.role"]
@@ -142,11 +142,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
142
142
  }], onclick: [{
143
143
  type: HostListener,
144
144
  args: ["click"]
145
- }], onfocus: [{
146
- type: HostListener,
147
- args: ["focus"]
148
- }], onblur: [{
149
- type: HostListener,
150
- args: ["blur"]
151
145
  }] } });
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0cnVjdHVyZWQtbGlzdC9saXN0LXJvdy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsZUFBZSxFQUdmLEtBQUssRUFDTCxZQUFZLEVBQ1osU0FBUyxFQUVULFlBQVksRUFDWixNQUFNLEVBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7O0FBRXJEOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQXNCSCxNQUFNLE9BQU8sT0FBTztJQXJCcEI7UUF5Qm1FLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFTbkY7O1dBRUc7UUFDTyxXQUFNLEdBQXdCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFM0Q7O1dBRUc7UUFDSCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCOztXQUVHO1FBQ0gsU0FBSSxHQUFHLE1BQU0sQ0FBQztRQUVpQyxZQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ2hDLGFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUMzQyxTQUFJLEdBQUcsS0FBSyxDQUFDO1FBTS9CLGNBQVMsR0FBRyxLQUFLLENBQUM7S0E2QjFCO0lBL0RBLElBQW1FLFVBQVU7UUFDNUUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3ZCLENBQUM7SUFrQ0Qsa0JBQWtCO1FBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQzdCLE1BQU0sQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQzNCLE1BQU0sQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUdELE9BQU87UUFDTixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDakM7SUFDRixDQUFDO0lBR0QsT0FBTztRQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO0lBQ3ZCLENBQUM7SUFHRCxNQUFNO1FBQ0wsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFLO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQzs7b0dBL0RXLE9BQU87d0ZBQVAsT0FBTyxxakJBK0JGLFVBQVUsNkhBbERqQjs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQlQ7MkZBRVcsT0FBTztrQkFyQm5CLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCVDtpQkFDRDs4QkFFbUUsVUFBVTtzQkFBNUUsV0FBVzt1QkFBQyxnREFBZ0Q7Z0JBR0ssUUFBUTtzQkFBekUsS0FBSzs7c0JBQUksV0FBVzt1QkFBQywwQ0FBMEM7Z0JBSXZCLEtBQUs7c0JBQTdDLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUk5QixLQUFLO3NCQUFiLEtBQUs7Z0JBSUksTUFBTTtzQkFBZixNQUFNO2dCQVd3QyxPQUFPO3NCQUFyRCxXQUFXO3VCQUFDLGdDQUFnQztnQkFDZixRQUFRO3NCQUFyQyxXQUFXO3VCQUFDLGVBQWU7Z0JBQ0YsSUFBSTtzQkFBN0IsV0FBVzt1QkFBQyxXQUFXO2dCQUVLLE9BQU87c0JBQW5DLGVBQWU7dUJBQUMsVUFBVTtnQkFFUCxLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU87Z0JBWWxCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPO2dCQVFyQixPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTztnQkFNckIsTUFBTTtzQkFETCxZQUFZO3VCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRDb21wb25lbnQsXG5cdEhvc3RCaW5kaW5nLFxuXHRDb250ZW50Q2hpbGRyZW4sXG5cdFF1ZXJ5TGlzdCxcblx0QWZ0ZXJDb250ZW50SW5pdCxcblx0SW5wdXQsXG5cdEhvc3RMaXN0ZW5lcixcblx0Vmlld0NoaWxkLFxuXHRFbGVtZW50UmVmLFxuXHRFdmVudEVtaXR0ZXIsXG5cdE91dHB1dFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTGlzdENvbHVtbiB9IGZyb20gXCIuL2xpc3QtY29sdW1uLmNvbXBvbmVudFwiO1xuXG4vKipcbiAqIGBMaXN0Um93YCBwcm92aWRlcyBhIGNvbnRhaW5lciBmb3IgdGhlIGBMaXN0Q29sdW1uYHMgdGhhdCBtYWtlIHVwIHRoZSBib2R5IG9mIGEgc3RydWN0dXJlZCBsaXN0LlxuICpcbiAqIEV4YW1wbGU6XG4gKiBgYGBodG1sXG4gKiBcdDxjZHMtbGlzdC1yb3c+XG4gKlx0XHQ8Y2RzLWxpc3QtY29sdW1uPlJvdyAxPC9jZHMtbGlzdC1jb2x1bW4+XG4gKlx0XHQ8Y2RzLWxpc3QtY29sdW1uIG5vd3JhcD1cInRydWVcIj5Sb3cgT25lPC9jZHMtbGlzdC1jb2x1bW4+XG4gKlx0XHQ8Y2RzLWxpc3QtY29sdW1uPlxuICpcdFx0XHRMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCxcbiAqXHRcdFx0Y29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBOdW5jIGR1aSBtYWduYSxcbiAqXHRcdFx0ZmluaWJ1cyBpZCB0b3J0b3Igc2VkLCBhbGlxdWV0IGJpYmVuZHVtIGF1Z3VlLlxuICpcdFx0XHRBZW5lYW4gcG9zdWVyZSBzZW0gdmVsIGV1aXNtb2QgZGlnbmlzc2ltLiBOdWxsYSB1dCBjdXJzdXMgZG9sb3IuXG4gKlx0XHRcdFBlbGxlbnRlc3F1ZSB2dWxwdXRhdGUgbmlzbCBhIHBvcnR0aXRvciBpbnRlcmR1bS5cbiAqXHRcdDwvY2RzLWxpc3QtY29sdW1uPlxuICpcdDwvY2RzLWxpc3Qtcm93PlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtbGlzdC1yb3csIGlibS1saXN0LXJvd1wiLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0aW9uXCI+XG5cdFx0XHQ8aW5wdXRcblx0XHRcdFx0I2lucHV0XG5cdFx0XHRcdHRhYmluZGV4PVwiLTFcIlxuXHRcdFx0XHRjbGFzcz1cImNkcy0tc3RydWN0dXJlZC1saXN0LWlucHV0IGNkcy0tdmlzdWFsbHktaGlkZGVuXCJcblx0XHRcdFx0dHlwZT1cInJhZGlvXCJcblx0XHRcdFx0W3ZhbHVlXT1cInZhbHVlXCJcblx0XHRcdFx0W25hbWVdPVwibmFtZVwiXG5cdFx0XHRcdFt0aXRsZV09XCJsYWJlbFwiXG5cdFx0XHRcdChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG5cdFx0XHRcdFtjaGVja2VkXT1cInNlbGVjdGVkXCIvPlxuXHRcdFx0PGRpdiBjbGFzcz1cImNkcy0tc3RydWN0dXJlZC1saXN0LXRkXCI+XG5cdFx0XHRcdDxzdmcgY2RzSWNvbj1cImNoZWNrbWFyay0tZmlsbGVkXCIgc2l6ZT1cIjE2XCIgY2xhc3M9XCJjZHMtLXN0cnVjdHVyZWQtbGlzdC1zdmdcIj48L3N2Zz5cblx0XHRcdDwvZGl2PlxuXHRcdDwvbmctY29udGFpbmVyPlxuXHRgXG59KVxuZXhwb3J0IGNsYXNzIExpc3RSb3cgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1zdHJ1Y3R1cmVkLWxpc3Qtcm93LS1mb2N1c2VkLXdpdGhpblwiKSBnZXQgZm9jdXNDbGFzcygpIHtcblx0XHRyZXR1cm4gdGhpcy5pc0ZvY3VzZWQ7XG5cdH1cblx0QElucHV0KCkgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1zdHJ1Y3R1cmVkLWxpc3Qtcm93LS1zZWxlY3RlZFwiKSBzZWxlY3RlZCA9IGZhbHNlO1xuXHQvKipcblx0ICogQXBwbGllcyBhbiBhY2Nlc3NpYmxlIGxhYmVsIHRvIHRoZSByb3cuIERlZmF1bHRzIHRvIG5vIGxhYmVsLlxuXHQgKi9cblx0QElucHV0KCkgQEhvc3RCaW5kaW5nKFwiYXR0ci5hcmlhLWxhYmVsXCIpIGxhYmVsO1xuXHQvKipcblx0ICogVGhlIHZhbHVlIGZvciB0aGUgcm93LiBSZXR1cm5lZCB2aWEgYG5nTW9kZWxgIG9yIGBzZWxlY3RlZGAgZXZlbnQgb24gdGhlIGNvbnRhaW5pbmcgYFN0cnVjdHVyZWRMaXN0YC5cblx0ICovXG5cdEBJbnB1dCgpIHZhbHVlO1xuXHQvKipcblx0ICogSW50ZXJuYWwgZXZlbnQgdXNlZCB0byBub3RpZnkgdGhlIGNvbnRhaW5pbmcgYFN0cnVjdHVyZWRMaXN0YCBvZiBjaGFuZ2VzLlxuXHQgKi9cblx0QE91dHB1dCgpIGNoYW5nZTogRXZlbnRFbWl0dGVyPEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuXHQvKipcblx0ICogU2V0IGJ5IHRoZSBjb250YWluaW5nIGBTdHJ1Y3R1cmVkTGlzdGAuIEVuYWJsZXMgb3IgZGlzYWJsZXMgcm93IGxldmVsIHNlbGVjdGlvbiBmZWF0dXJlcy5cblx0ICovXG5cdHNlbGVjdGlvbiA9IGZhbHNlO1xuXHQvKipcblx0ICogU2V0IGJ5IHRoZSBjb250YWluaW5nIGBTdHJ1Y3R1cmVkTGlzdGAuIFdoZW4gYHNlbGVjdGlvbiA9IHRydWVgLCB1c2VkIGZvciB0aGUgYG5hbWVgIHByb3BlcnR5IG9uIHRoZSByYWRpbyBpbnB1dC5cblx0ICovXG5cdG5hbWUgPSBcImxpc3RcIjtcblxuXHRASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLXN0cnVjdHVyZWQtbGlzdC1yb3dcIikgd3JhcHBlciA9IHRydWU7XG5cdEBIb3N0QmluZGluZyhcImF0dHIudGFiaW5kZXhcIikgdGFiaW5kZXggPSB0aGlzLnNlbGVjdGlvbiA/IFwiMFwiIDogbnVsbDtcblx0QEhvc3RCaW5kaW5nKFwiYXR0ci5yb2xlXCIpIHJvbGUgPSBcInJvd1wiO1xuXG5cdEBDb250ZW50Q2hpbGRyZW4oTGlzdENvbHVtbikgY29sdW1uczogUXVlcnlMaXN0PExpc3RDb2x1bW4+O1xuXG5cdEBWaWV3Q2hpbGQoXCJpbnB1dFwiKSBpbnB1dDogRWxlbWVudFJlZjtcblxuXHRwcml2YXRlIGlzRm9jdXNlZCA9IGZhbHNlO1xuXG5cdG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcblx0XHR0aGlzLmNvbHVtbnMuZm9yRWFjaChjb2x1bW4gPT4ge1xuXHRcdFx0Y29sdW1uLmlzQm9keUNvbHVtbiA9IHRydWU7XG5cdFx0XHRjb2x1bW4uaXNIZWFkZXJDb2x1bW4gPSBmYWxzZTtcblx0XHR9KTtcblx0fVxuXG5cdEBIb3N0TGlzdGVuZXIoXCJjbGlja1wiKVxuXHRvbmNsaWNrKCkge1xuXHRcdGlmICh0aGlzLnNlbGVjdGlvbikge1xuXHRcdFx0dGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmNsaWNrKCk7XG5cdFx0fVxuXHR9XG5cblx0QEhvc3RMaXN0ZW5lcihcImZvY3VzXCIpXG5cdG9uZm9jdXMoKSB7XG5cdFx0dGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xuXHR9XG5cblx0QEhvc3RMaXN0ZW5lcihcImJsdXJcIilcblx0b25ibHVyKCkge1xuXHRcdHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG5cdH1cblxuXHRvbkNoYW5nZShldmVudCkge1xuXHRcdHRoaXMuY2hhbmdlLmVtaXQoZXZlbnQpO1xuXHR9XG59XG4iXX0=
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0cnVjdHVyZWQtbGlzdC9saXN0LXJvdy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsZUFBZSxFQUdmLEtBQUssRUFDTCxZQUFZLEVBQ1osU0FBUyxFQUVULFlBQVksRUFDWixNQUFNLEVBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7O0FBRXJEOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQXVCSCxNQUFNLE9BQU8sT0FBTztJQXRCcEI7UUEwQm1FLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFTbkY7O1dBRUc7UUFDTyxXQUFNLEdBQXdCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFM0Q7O1dBRUc7UUFDSCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCOztXQUVHO1FBQ0gsU0FBSSxHQUFHLE1BQU0sQ0FBQztRQUVpQyxZQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BDLFNBQUksR0FBRyxLQUFLLENBQUM7UUFNL0IsY0FBUyxHQUFHLEtBQUssQ0FBQztLQTRCMUI7SUE3REEsSUFBbUUsVUFBVTtRQUM1RSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDdkIsQ0FBQztJQWlDRCxrQkFBa0I7UUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDN0IsTUFBTSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7WUFDM0IsTUFBTSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBR0QsT0FBTztRQUNOLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNqQztJQUNGLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBSztRQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXLENBQUMsU0FBUztRQUNwQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7WUFDM0IsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNqQztTQUNEO0lBQ0YsQ0FBQzs7b0dBN0RXLE9BQU87d0ZBQVAsT0FBTyx5ZUE4QkYsVUFBVSw2SEFsRGpCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFrQlQ7MkZBRVcsT0FBTztrQkF0Qm5CLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFrQlQ7aUJBQ0Q7OEJBRW1FLFVBQVU7c0JBQTVFLFdBQVc7dUJBQUMsZ0RBQWdEO2dCQUdLLFFBQVE7c0JBQXpFLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsMENBQTBDO2dCQUl2QixLQUFLO3NCQUE3QyxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLGlCQUFpQjtnQkFJOUIsS0FBSztzQkFBYixLQUFLO2dCQUlJLE1BQU07c0JBQWYsTUFBTTtnQkFXd0MsT0FBTztzQkFBckQsV0FBVzt1QkFBQyxnQ0FBZ0M7Z0JBQ25CLElBQUk7c0JBQTdCLFdBQVc7dUJBQUMsV0FBVztnQkFFSyxPQUFPO3NCQUFuQyxlQUFlO3VCQUFDLFVBQVU7Z0JBRVAsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPO2dCQVlsQixPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENvbXBvbmVudCxcblx0SG9zdEJpbmRpbmcsXG5cdENvbnRlbnRDaGlsZHJlbixcblx0UXVlcnlMaXN0LFxuXHRBZnRlckNvbnRlbnRJbml0LFxuXHRJbnB1dCxcblx0SG9zdExpc3RlbmVyLFxuXHRWaWV3Q2hpbGQsXG5cdEVsZW1lbnRSZWYsXG5cdEV2ZW50RW1pdHRlcixcblx0T3V0cHV0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBMaXN0Q29sdW1uIH0gZnJvbSBcIi4vbGlzdC1jb2x1bW4uY29tcG9uZW50XCI7XG5cbi8qKlxuICogYExpc3RSb3dgIHByb3ZpZGVzIGEgY29udGFpbmVyIGZvciB0aGUgYExpc3RDb2x1bW5gcyB0aGF0IG1ha2UgdXAgdGhlIGJvZHkgb2YgYSBzdHJ1Y3R1cmVkIGxpc3QuXG4gKlxuICogRXhhbXBsZTpcbiAqIGBgYGh0bWxcbiAqIFx0PGNkcy1saXN0LXJvdz5cbiAqXHRcdDxjZHMtbGlzdC1jb2x1bW4+Um93IDE8L2Nkcy1saXN0LWNvbHVtbj5cbiAqXHRcdDxjZHMtbGlzdC1jb2x1bW4gbm93cmFwPVwidHJ1ZVwiPlJvdyBPbmU8L2Nkcy1saXN0LWNvbHVtbj5cbiAqXHRcdDxjZHMtbGlzdC1jb2x1bW4+XG4gKlx0XHRcdExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LFxuICpcdFx0XHRjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIE51bmMgZHVpIG1hZ25hLFxuICpcdFx0XHRmaW5pYnVzIGlkIHRvcnRvciBzZWQsIGFsaXF1ZXQgYmliZW5kdW0gYXVndWUuXG4gKlx0XHRcdEFlbmVhbiBwb3N1ZXJlIHNlbSB2ZWwgZXVpc21vZCBkaWduaXNzaW0uIE51bGxhIHV0IGN1cnN1cyBkb2xvci5cbiAqXHRcdFx0UGVsbGVudGVzcXVlIHZ1bHB1dGF0ZSBuaXNsIGEgcG9ydHRpdG9yIGludGVyZHVtLlxuICpcdFx0PC9jZHMtbGlzdC1jb2x1bW4+XG4gKlx0PC9jZHMtbGlzdC1yb3c+XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiBcImNkcy1saXN0LXJvdywgaWJtLWxpc3Qtcm93XCIsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWxlY3Rpb25cIj5cblx0XHRcdDxpbnB1dFxuXHRcdFx0XHQjaW5wdXRcblx0XHRcdFx0Y2xhc3M9XCJjZHMtLXN0cnVjdHVyZWQtbGlzdC1pbnB1dCBjZHMtLXZpc3VhbGx5LWhpZGRlblwiXG5cdFx0XHRcdHR5cGU9XCJyYWRpb1wiXG5cdFx0XHRcdFt2YWx1ZV09XCJ2YWx1ZVwiXG5cdFx0XHRcdFtuYW1lXT1cIm5hbWVcIlxuXHRcdFx0XHRbdGl0bGVdPVwibGFiZWxcIlxuXHRcdFx0XHQoZm9jdXMpPVwiaGFuZGxlRm9jdXModHJ1ZSlcIlxuXHRcdFx0XHQoYmx1cik9XCJoYW5kbGVGb2N1cyhmYWxzZSlcIlxuXHRcdFx0XHQoY2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudClcIlxuXHRcdFx0XHRbY2hlY2tlZF09XCJzZWxlY3RlZFwiLz5cblx0XHRcdDxkaXYgY2xhc3M9XCJjZHMtLXN0cnVjdHVyZWQtbGlzdC10ZFwiPlxuXHRcdFx0XHQ8c3ZnIGNkc0ljb249XCJjaGVja21hcmstLWZpbGxlZFwiIHNpemU9XCIxNlwiIGNsYXNzPVwiY2RzLS1zdHJ1Y3R1cmVkLWxpc3Qtc3ZnXCI+PC9zdmc+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L25nLWNvbnRhaW5lcj5cblx0YFxufSlcbmV4cG9ydCBjbGFzcyBMaXN0Um93IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tc3RydWN0dXJlZC1saXN0LXJvdy0tZm9jdXNlZC13aXRoaW5cIikgZ2V0IGZvY3VzQ2xhc3MoKSB7XG5cdFx0cmV0dXJuIHRoaXMuaXNGb2N1c2VkO1xuXHR9XG5cdEBJbnB1dCgpIEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tc3RydWN0dXJlZC1saXN0LXJvdy0tc2VsZWN0ZWRcIikgc2VsZWN0ZWQgPSBmYWxzZTtcblx0LyoqXG5cdCAqIEFwcGxpZXMgYW4gYWNjZXNzaWJsZSBsYWJlbCB0byB0aGUgcm93LiBEZWZhdWx0cyB0byBubyBsYWJlbC5cblx0ICovXG5cdEBJbnB1dCgpIEBIb3N0QmluZGluZyhcImF0dHIuYXJpYS1sYWJlbFwiKSBsYWJlbDtcblx0LyoqXG5cdCAqIFRoZSB2YWx1ZSBmb3IgdGhlIHJvdy4gUmV0dXJuZWQgdmlhIGBuZ01vZGVsYCBvciBgc2VsZWN0ZWRgIGV2ZW50IG9uIHRoZSBjb250YWluaW5nIGBTdHJ1Y3R1cmVkTGlzdGAuXG5cdCAqL1xuXHRASW5wdXQoKSB2YWx1ZTtcblx0LyoqXG5cdCAqIEludGVybmFsIGV2ZW50IHVzZWQgdG8gbm90aWZ5IHRoZSBjb250YWluaW5nIGBTdHJ1Y3R1cmVkTGlzdGAgb2YgY2hhbmdlcy5cblx0ICovXG5cdEBPdXRwdXQoKSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cblx0LyoqXG5cdCAqIFNldCBieSB0aGUgY29udGFpbmluZyBgU3RydWN0dXJlZExpc3RgLiBFbmFibGVzIG9yIGRpc2FibGVzIHJvdyBsZXZlbCBzZWxlY3Rpb24gZmVhdHVyZXMuXG5cdCAqL1xuXHRzZWxlY3Rpb24gPSBmYWxzZTtcblx0LyoqXG5cdCAqIFNldCBieSB0aGUgY29udGFpbmluZyBgU3RydWN0dXJlZExpc3RgLiBXaGVuIGBzZWxlY3Rpb24gPSB0cnVlYCwgdXNlZCBmb3IgdGhlIGBuYW1lYCBwcm9wZXJ0eSBvbiB0aGUgcmFkaW8gaW5wdXQuXG5cdCAqL1xuXHRuYW1lID0gXCJsaXN0XCI7XG5cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1zdHJ1Y3R1cmVkLWxpc3Qtcm93XCIpIHdyYXBwZXIgPSB0cnVlO1xuXHRASG9zdEJpbmRpbmcoXCJhdHRyLnJvbGVcIikgcm9sZSA9IFwicm93XCI7XG5cblx0QENvbnRlbnRDaGlsZHJlbihMaXN0Q29sdW1uKSBjb2x1bW5zOiBRdWVyeUxpc3Q8TGlzdENvbHVtbj47XG5cblx0QFZpZXdDaGlsZChcImlucHV0XCIpIGlucHV0OiBFbGVtZW50UmVmO1xuXG5cdHByaXZhdGUgaXNGb2N1c2VkID0gZmFsc2U7XG5cblx0bmdBZnRlckNvbnRlbnRJbml0KCkge1xuXHRcdHRoaXMuY29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiB7XG5cdFx0XHRjb2x1bW4uaXNCb2R5Q29sdW1uID0gdHJ1ZTtcblx0XHRcdGNvbHVtbi5pc0hlYWRlckNvbHVtbiA9IGZhbHNlO1xuXHRcdH0pO1xuXHR9XG5cblx0QEhvc3RMaXN0ZW5lcihcImNsaWNrXCIpXG5cdG9uY2xpY2soKSB7XG5cdFx0aWYgKHRoaXMuc2VsZWN0aW9uKSB7XG5cdFx0XHR0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcblx0XHR9XG5cdH1cblx0XG5cdG9uQ2hhbmdlKGV2ZW50KSB7XG5cdFx0dGhpcy5jaGFuZ2UuZW1pdChldmVudCk7XG5cdH1cblxuXHRoYW5kbGVGb2N1cyhpc0ZvY3VzZWQpIHtcblx0XHRpZiAodGhpcy5zZWxlY3Rpb24pIHtcblx0XHRcdHRoaXMuaXNGb2N1c2VkID0gaXNGb2N1c2VkO1xuXHRcdFx0aWYgKHRoaXMuaXNGb2N1c2VkKSB7XG5cdFx0XHRcdHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5jbGljaygpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIl19
@@ -105,7 +105,6 @@ export class StructuredList {
105
105
  this.rows.forEach(row => {
106
106
  setSelection(row);
107
107
  row.name = this.name;
108
- row.tabindex = this.selection ? "0" : null;
109
108
  row.change.subscribe(() => {
110
109
  this.selected.emit({
111
110
  value: row.value,
@@ -113,6 +112,7 @@ export class StructuredList {
113
112
  name: this.name
114
113
  });
115
114
  this.onChange(row.value);
115
+ this.writeValue(row.value);
116
116
  });
117
117
  });
118
118
  this.updateChildren();
@@ -216,4 +216,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
216
216
  type: ContentChildren,
217
217
  args: [ListHeader]
218
218
  }] } });
219
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RydWN0dXJlZC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdHJ1Y3R1cmVkLWxpc3Qvc3RydWN0dXJlZC1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULEtBQUssRUFDTCxlQUFlLEVBR2YsTUFBTSxFQUNOLFlBQVksRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRXpFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRDRztBQTJCSCxNQUFNLE9BQU8sY0FBYztJQTFCM0I7UUErQkM7O1dBRUc7UUFDTSxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQzNCOztXQUVHO1FBQ00sWUFBTyxHQUFHLEtBQUssQ0FBQztRQUN6Qjs7V0FFRztRQUNNLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDM0I7O1dBRUc7UUFDTSxTQUFJLEdBQUcsbUJBQW1CLGNBQWMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO1FBa0JoRTs7Ozs7Ozs7Ozs7V0FXRztRQUNPLGFBQVEsR0FBbUUsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUs5RixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRTVCLGFBQVEsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRTNCLGNBQVMsR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7S0FnRHRCO0lBckZBOztPQUVHO0lBQ0gsSUFDSSxRQUFRLENBQUMsS0FBVTtRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJ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QUFTO3NCQUFqQixLQUFLO2dCQUlHLE9BQU87c0JBQWYsS0FBSztnQkFJRyxTQUFTO3NCQUFqQixLQUFLO2dCQUlHLElBQUk7c0JBQVosS0FBSztnQkFNRixRQUFRO3NCQURYLEtBQUs7Z0JBeUJJLFFBQVE7c0JBQWpCLE1BQU07Z0JBRW1CLElBQUk7c0JBQTdCLGVBQWU7dUJBQUMsT0FBTztnQkFDSyxPQUFPO3NCQUFuQyxlQUFlO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRDb21wb25lbnQsXG5cdElucHV0LFxuXHRDb250ZW50Q2hpbGRyZW4sXG5cdFF1ZXJ5TGlzdCxcblx0QWZ0ZXJDb250ZW50SW5pdCxcblx0T3V0cHV0LFxuXHRFdmVudEVtaXR0ZXJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IExpc3RSb3cgfSBmcm9tIFwiLi9saXN0LXJvdy5jb21wb25lbnRcIjtcbmltcG9ydCB7IExpc3RIZWFkZXIgfSBmcm9tIFwiLi9saXN0LWhlYWRlci5jb21wb25lbnRcIjtcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuXG4vKipcbiAqIFN0cnVjdHVyZWQgTGlzdHMgcmVwcmVzZW50IHJlbGF0ZWQgdGFidWxhciBkYXRhLiBGb3IgbGFyZ2VyIGRhdGFzZXRzIGNvbnNpZGVyIGEgZnVsbCBgVGFibGVgLlxuICpcbiAqIFNlZSBbc3RydWN0dXJlZC1saXN0L3VzYWdlXShodHRwczovL3d3dy5jYXJib25kZXNpZ25zeXN0ZW0uY29tL2NvbXBvbmVudHMvc3RydWN0dXJlZC1saXN0L3VzYWdlKSBmb3IgdXNhZ2UgZ3VpZGFuY2UuXG4gKlxuICogR2V0IHN0YXJ0ZWQgd2l0aCBpbXBvcnRpbmcgdGhlIG1vZHVsZTpcbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBTdHJ1Y3R1cmVkTGlzdE1vZHVsZSB9IGZyb20gJ2NhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXInO1xuICogYGBgXG4gKlxuICogYGBgaHRtbFxuICpcdDxjZHMtc3RydWN0dXJlZC1saXN0PlxuICpcdFx0PGNkcy1saXN0LWhlYWRlcj5cbiAqXHRcdFx0PGNkcy1saXN0LWNvbHVtbiBub3dyYXA9XCJ0cnVlXCI+Q29sdW1uIDE8L2Nkcy1saXN0LWNvbHVtbj5cbiAqXHRcdFx0PGNkcy1saXN0LWNvbHVtbiBub3dyYXA9XCJ0cnVlXCI+Q29sdW1uIDI8L2Nkcy1saXN0LWNvbHVtbj5cbiAqXHRcdFx0PGNkcy1saXN0LWNvbHVtbj5Db2x1bW4gMzwvY2RzLWxpc3QtY29sdW1uPlxuICpcdFx0PC9jZHMtbGlzdC1oZWFkZXI+XG4gKlx0XHQ8Y2RzLWxpc3Qtcm93PlxuICpcdFx0XHQ8Y2RzLWxpc3QtY29sdW1uPlJvdyAxPC9jZHMtbGlzdC1jb2x1bW4+XG4gKlx0XHRcdDxjZHMtbGlzdC1jb2x1bW4gbm93cmFwPVwidHJ1ZVwiPlJvdyBPbmU8L2Nkcy1saXN0LWNvbHVtbj5cbiAqXHRcdFx0PGNkcy1saXN0LWNvbHVtbj5cbiAqXHRcdFx0XHRMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCxcbiAqXHRcdFx0XHRjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIE51bmMgZHVpIG1hZ25hLFxuICpcdFx0XHRcdGZpbmlidXMgaWQgdG9ydG9yIHNlZCwgYWxpcXVldCBiaWJlbmR1bSBhdWd1ZS5cbiAqXHRcdFx0XHRBZW5lYW4gcG9zdWVyZSBzZW0gdmVsIGV1aXNtb2QgZGlnbmlzc2ltLiBOdWxsYSB1dCBjdXJzdXMgZG9sb3IuXG4gKlx0XHRcdFx0UGVsbGVudGVzcXVlIHZ1bHB1dGF0ZSBuaXNsIGEgcG9ydHRpdG9yIGludGVyZHVtLlxuICpcdFx0XHQ8L2Nkcy1saXN0LWNvbHVtbj5cbiAqXHRcdDwvY2RzLWxpc3Qtcm93PlxuICpcdFx0PGNkcy1saXN0LXJvdz5cbiAqXHRcdFx0PGNkcy1saXN0LWNvbHVtbj5Sb3cgMjwvY2RzLWxpc3QtY29sdW1uPlxuICpcdFx0XHQ8Y2RzLWxpc3QtY29sdW1uIG5vd3JhcD1cInRydWVcIj5Sb3cgVHdvPC9jZHMtbGlzdC1jb2x1bW4+XG4gKlx0XHRcdDxjZHMtbGlzdC1jb2x1bW4+XG4gKlx0XHRcdFx0TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsXG4gKlx0XHRcdFx0Y29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBOdW5jIGR1aSBtYWduYSxcbiAqXHRcdFx0XHRmaW5pYnVzIGlkIHRvcnRvciBzZWQsIGFsaXF1ZXQgYmliZW5kdW0gYXVndWUuXG4gKlx0XHRcdFx0QWVuZWFuIHBvc3VlcmUgc2VtIHZlbCBldWlzbW9kIGRpZ25pc3NpbS4gTnVsbGEgdXQgY3Vyc3VzIGRvbG9yLlxuICpcdFx0XHRcdFBlbGxlbnRlc3F1ZSB2dWxwdXRhdGUgbmlzbCBhIHBvcnR0aXRvciBpbnRlcmR1bS5cbiAqXHRcdFx0PC9jZHMtbGlzdC1jb2x1bW4+XG4gKlx0XHQ8L2Nkcy1saXN0LXJvdz5cbiAqXHQ8L2Nkcy1zdHJ1Y3R1cmVkLWxpc3Q+XG4gKiBgYGBcbiAqXG4gKiBbU2VlIGRlbW9dKC4uLy4uLz9wYXRoPS9zdG9yeS9jb21wb25lbnRzLXN0cnVjdHVyZWQtbGlzdC0tYmFzaWMpXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtc3RydWN0dXJlZC1saXN0LCBpYm0tc3RydWN0dXJlZC1saXN0XCIsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PGRpdlxuXHRcdFx0Y2xhc3M9XCJjZHMtLXN0cnVjdHVyZWQtbGlzdFwiXG5cdFx0XHRyb2xlPVwidGFibGVcIlxuXHRcdFx0W25nQ2xhc3NdPVwie1xuXHRcdFx0XHQnY2RzLS1zdHJ1Y3R1cmVkLWxpc3QtLWZsdXNoJzogZmx1c2hlZCxcblx0XHRcdFx0J2Nkcy0tc3RydWN0dXJlZC1saXN0LS1zZWxlY3Rpb24nOiBzZWxlY3Rpb24sXG5cdFx0XHRcdCdjZHMtLXN0cnVjdHVyZWQtbGlzdC0tY29uZGVuc2VkJzogY29uZGVuc2VkLFxuXHRcdFx0XHQnY2RzLS1za2VsZXRvbic6IHNrZWxldG9uXG5cdFx0XHR9XCI+XG5cdFx0XHQ8bmctY29udGVudCBzZWxlY3Q9XCJjZHMtbGlzdC1oZWFkZXIsaWJtLWxpc3QtaGVhZGVyXCI+PC9uZy1jb250ZW50PlxuXHRcdFx0PGRpdiBjbGFzcz1cImNkcy0tc3RydWN0dXJlZC1saXN0LXRib2R5XCIgcm9sZT1cInJvd2dyb3VwXCI+XG5cdFx0XHRcdDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHRgLFxuXHRwcm92aWRlcnM6IFtcblx0XHR7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0XHRcdHVzZUV4aXN0aW5nOiBTdHJ1Y3R1cmVkTGlzdCxcblx0XHRcdG11bHRpOiB0cnVlXG5cdFx0fVxuXHRdXG59KVxuZXhwb3J0IGNsYXNzIFN0cnVjdHVyZWRMaXN0IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXHQvKipcblx0ICogQSBjb3VudGVyIHRvIHByb3ZpZGUgdW5pcXVlIGRlZmF1bHQgdmFsdWVzLlxuXHQgKi9cblx0c3RhdGljIGxpc3RDb3VudCA9IDA7XG5cdC8qKlxuXHQgKiBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSByYWRpbyBsaWtlIHNlbGVjdGlvbiBvZiB0aGUgcm93cy5cblx0ICovXG5cdEBJbnB1dCgpIHNlbGVjdGlvbiA9IGZhbHNlO1xuXHQvKipcblx0ICogU2V0IHRvIGB0cnVlYCB0byBhbGlnbiBjb250ZW50IHdpdGggbWFyZ2luXG5cdCAqL1xuXHRASW5wdXQoKSBmbHVzaGVkID0gZmFsc2U7XG5cdC8qKlxuXHQgKiBTZXQgdG8gYHRydWVgIHRvIGFwcGx5IGEgY29uZGVuc2VkIHN0eWxlIHRvIHRoZSBoZWFkZXJzIGFuZCByb3dzLlxuXHQgKi9cblx0QElucHV0KCkgY29uZGVuc2VkID0gZmFsc2U7XG5cdC8qKlxuXHQgKiBVc2VkIHdoZW4gYHNlbGVjdGlvbiA9IHRydWVgIGFzIHRoZSByb3cgcmFkaW8gZ3JvdXAgYG5hbWVgXG5cdCAqL1xuXHRASW5wdXQoKSBuYW1lID0gYHN0cnVjdHVyZWQtbGlzdC0ke1N0cnVjdHVyZWRMaXN0Lmxpc3RDb3VudCsrfWA7XG5cblx0LyoqXG5cdCAqIFNldHMgdGhlIHNrZWxldG9uIHZhbHVlIGZvciBhbGwgYExpc3RIZWFkZXJgIHRvIHRoZSBza2VsZXRvbiB2YWx1ZSBvZiBgU3RydWN0dXJlZExpc3RgLlxuXHQgKi9cblx0QElucHV0KClcblx0c2V0IHNrZWxldG9uKHZhbHVlOiBhbnkpIHtcblx0XHR0aGlzLl9za2VsZXRvbiA9IHZhbHVlO1xuXHRcdHRoaXMudXBkYXRlQ2hpbGRyZW4oKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXR1cm5zIHRoZSBza2VsZXRvbiB2YWx1ZSBpbiB0aGUgYFN0cnVjdHVyZWRMaXN0YCBpZiB0aGVyZSBpcyBvbmUuXG5cdCAqL1xuXHRnZXQgc2tlbGV0b24oKTogYW55IHtcblx0XHRyZXR1cm4gdGhpcy5fc2tlbGV0b247XG5cdH1cblxuXHQvKipcblx0ICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgcm93IHNlbGVjdGlvbiBjaGFuZ2VzLlxuXHQgKlxuXHQgKiBFbWl0cyBhbiBvYmplY3QgdGhhdCBsb29rcyBsaWtlOlxuXHQgKiBgYGBqYXZhc2NyaXB0XG5cdCAqIHtcblx0ICogXHR2YWx1ZTogXCJzb21ldGhpbmdcIixcblx0ICogXHRzZWxlY3RlZDogdHJ1ZSxcblx0ICogXHRuYW1lOiBcInN0cnVjdHVyZWQtbGlzdC0xXCJcblx0ICogfVxuXHQgKiBgYGBcblx0ICovXG5cdEBPdXRwdXQoKSBzZWxlY3RlZDogRXZlbnRFbWl0dGVyPHt2YWx1ZTogc3RyaW5nLCBzZWxlY3RlZDogYm9vbGVhbiwgbmFtZTogc3RyaW5nfT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cblx0QENvbnRlbnRDaGlsZHJlbihMaXN0Um93KSByb3dzOiBRdWVyeUxpc3Q8TGlzdFJvdz47XG5cdEBDb250ZW50Q2hpbGRyZW4oTGlzdEhlYWRlcikgaGVhZGVyczogUXVlcnlMaXN0PExpc3RIZWFkZXI+O1xuXG5cdHByb3RlY3RlZCBfc2tlbGV0b24gPSBmYWxzZTtcblxuXHRvbkNoYW5nZSA9IChfOiBhbnkpID0+IHsgfTtcblxuXHRvblRvdWNoZWQgPSAoKSA9PiB7IH07XG5cblx0bmdBZnRlckNvbnRlbnRJbml0KCkge1xuXHRcdGNvbnN0IHNldFNlbGVjdGlvbiA9IChyb3dPckhlYWRlcjogTGlzdFJvdyB8IExpc3RIZWFkZXIpID0+IHtcblx0XHRcdHJvd09ySGVhZGVyLnNlbGVjdGlvbiA9IHRoaXMuc2VsZWN0aW9uO1xuXHRcdH07XG5cblx0XHR0aGlzLmhlYWRlcnMuZm9yRWFjaChzZXRTZWxlY3Rpb24pO1xuXHRcdHRoaXMucm93cy5mb3JFYWNoKHJvdyA9PiB7XG5cdFx0XHRzZXRTZWxlY3Rpb24ocm93KTtcblx0XHRcdHJvdy5uYW1lID0gdGhpcy5uYW1lO1xuXHRcdFx0cm93LnRhYmluZGV4ID0gdGhpcy5zZWxlY3Rpb24gPyBcIjBcIiA6IG51bGw7XG5cdFx0XHRyb3cuY2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWQuZW1pdCh7XG5cdFx0XHRcdFx0dmFsdWU6IHJvdy52YWx1ZSxcblx0XHRcdFx0XHRzZWxlY3RlZDogcm93LnNlbGVjdGVkLFxuXHRcdFx0XHRcdG5hbWU6IHRoaXMubmFtZVxuXHRcdFx0XHR9KTtcblx0XHRcdFx0dGhpcy5vbkNoYW5nZShyb3cudmFsdWUpO1xuXHRcdFx0fSk7XG5cdFx0fSk7XG5cdFx0dGhpcy51cGRhdGVDaGlsZHJlbigpO1xuXHR9XG5cblx0d3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG5cdFx0aWYgKCF0aGlzLnJvd3MpIHsgcmV0dXJuOyB9XG5cdFx0dGhpcy5yb3dzLmZvckVhY2gocm93ID0+IHtcblx0XHRcdGlmIChyb3cudmFsdWUgPT09IHZhbHVlKSB7XG5cdFx0XHRcdHJvdy5zZWxlY3RlZCA9IHRydWU7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRyb3cuc2VsZWN0ZWQgPSBmYWxzZTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxuXG5cdHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuXHRcdHRoaXMub25DaGFuZ2UgPSBmbjtcblx0fVxuXG5cdHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcblx0XHR0aGlzLm9uVG91Y2hlZCA9IGZuO1xuXHR9XG5cblx0cHJvdGVjdGVkIHVwZGF0ZUNoaWxkcmVuKCkge1xuXHRcdGlmICh0aGlzLmhlYWRlcnMpIHtcblx0XHRcdHRoaXMuaGVhZGVycy50b0FycmF5KCkuZm9yRWFjaChjaGlsZCA9PiBjaGlsZC5za2VsZXRvbiA9IHRoaXMuc2tlbGV0b24pO1xuXHRcdH1cblx0fVxufVxuIl19
219
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RydWN0dXJlZC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdHJ1Y3R1cmVkLWxpc3Qvc3RydWN0dXJlZC1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULEtBQUssRUFDTCxlQUFlLEVBR2YsTUFBTSxFQUNOLFlBQVksRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRXpFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRDRztBQTJCSCxNQUFNLE9BQU8sY0FBYztJQTFCM0I7UUErQkM7O1dBRUc7UUFDTSxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQzNCOztXQUVHO1FBQ00sWUFBTyxHQUFHLEtBQUssQ0FBQztRQUN6Qjs7V0FFRztRQUNNLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDM0I7O1dBRUc7UUFDTSxTQUFJLEdBQUcsbUJBQW1CLGNBQWMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO1FBa0JoRTs7Ozs7Ozs7Ozs7V0FXRztRQUNPLGFBQVEsR0FBbUUsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUs5RixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRTVCLGFBQVEsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRTNCLGNBQVMsR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7S0FnRHRCO0lBckZBOztPQUVHO0lBQ0gsSUFDSSxRQUFRLENBQUMsS0FBVTtRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJ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QUFLO2dCQUlHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBSUcsSUFBSTtzQkFBWixLQUFLO2dCQU1GLFFBQVE7c0JBRFgsS0FBSztnQkF5QkksUUFBUTtzQkFBakIsTUFBTTtnQkFFbUIsSUFBSTtzQkFBN0IsZUFBZTt1QkFBQyxPQUFPO2dCQUNLLE9BQU87c0JBQW5DLGVBQWU7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENvbXBvbmVudCxcblx0SW5wdXQsXG5cdENvbnRlbnRDaGlsZHJlbixcblx0UXVlcnlMaXN0LFxuXHRBZnRlckNvbnRlbnRJbml0LFxuXHRPdXRwdXQsXG5cdEV2ZW50RW1pdHRlclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTGlzdFJvdyB9IGZyb20gXCIuL2xpc3Qtcm93LmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgTGlzdEhlYWRlciB9IGZyb20gXCIuL2xpc3QtaGVhZGVyLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5cbi8qKlxuICogU3RydWN0dXJlZCBMaXN0cyByZXByZXNlbnQgcmVsYXRlZCB0YWJ1bGFyIGRhdGEuIEZvciBsYXJnZXIgZGF0YXNldHMgY29uc2lkZXIgYSBmdWxsIGBUYWJsZWAuXG4gKlxuICogU2VlIFtzdHJ1Y3R1cmVkLWxpc3QvdXNhZ2VdKGh0dHBzOi8vd3d3LmNhcmJvbmRlc2lnbnN5c3RlbS5jb20vY29tcG9uZW50cy9zdHJ1Y3R1cmVkLWxpc3QvdXNhZ2UpIGZvciB1c2FnZSBndWlkYW5jZS5cbiAqXG4gKiBHZXQgc3RhcnRlZCB3aXRoIGltcG9ydGluZyB0aGUgbW9kdWxlOlxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IFN0cnVjdHVyZWRMaXN0TW9kdWxlIH0gZnJvbSAnY2FyYm9uLWNvbXBvbmVudHMtYW5ndWxhcic7XG4gKiBgYGBcbiAqXG4gKiBgYGBodG1sXG4gKlx0PGNkcy1zdHJ1Y3R1cmVkLWxpc3Q+XG4gKlx0XHQ8Y2RzLWxpc3QtaGVhZGVyPlxuICpcdFx0XHQ8Y2RzLWxpc3QtY29sdW1uIG5vd3JhcD1cInRydWVcIj5Db2x1bW4gMTwvY2RzLWxpc3QtY29sdW1uPlxuICpcdFx0XHQ8Y2RzLWxpc3QtY29sdW1uIG5vd3JhcD1cInRydWVcIj5Db2x1bW4gMjwvY2RzLWxpc3QtY29sdW1uPlxuICpcdFx0XHQ8Y2RzLWxpc3QtY29sdW1uPkNvbHVtbiAzPC9jZHMtbGlzdC1jb2x1bW4+XG4gKlx0XHQ8L2Nkcy1saXN0LWhlYWRlcj5cbiAqXHRcdDxjZHMtbGlzdC1yb3c+XG4gKlx0XHRcdDxjZHMtbGlzdC1jb2x1bW4+Um93IDE8L2Nkcy1saXN0LWNvbHVtbj5cbiAqXHRcdFx0PGNkcy1saXN0LWNvbHVtbiBub3dyYXA9XCJ0cnVlXCI+Um93IE9uZTwvY2RzLWxpc3QtY29sdW1uPlxuICpcdFx0XHQ8Y2RzLWxpc3QtY29sdW1uPlxuICpcdFx0XHRcdExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LFxuICpcdFx0XHRcdGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gTnVuYyBkdWkgbWFnbmEsXG4gKlx0XHRcdFx0ZmluaWJ1cyBpZCB0b3J0b3Igc2VkLCBhbGlxdWV0IGJpYmVuZHVtIGF1Z3VlLlxuICpcdFx0XHRcdEFlbmVhbiBwb3N1ZXJlIHNlbSB2ZWwgZXVpc21vZCBkaWduaXNzaW0uIE51bGxhIHV0IGN1cnN1cyBkb2xvci5cbiAqXHRcdFx0XHRQZWxsZW50ZXNxdWUgdnVscHV0YXRlIG5pc2wgYSBwb3J0dGl0b3IgaW50ZXJkdW0uXG4gKlx0XHRcdDwvY2RzLWxpc3QtY29sdW1uPlxuICpcdFx0PC9jZHMtbGlzdC1yb3c+XG4gKlx0XHQ8Y2RzLWxpc3Qtcm93PlxuICpcdFx0XHQ8Y2RzLWxpc3QtY29sdW1uPlJvdyAyPC9jZHMtbGlzdC1jb2x1bW4+XG4gKlx0XHRcdDxjZHMtbGlzdC1jb2x1bW4gbm93cmFwPVwidHJ1ZVwiPlJvdyBUd288L2Nkcy1saXN0LWNvbHVtbj5cbiAqXHRcdFx0PGNkcy1saXN0LWNvbHVtbj5cbiAqXHRcdFx0XHRMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCxcbiAqXHRcdFx0XHRjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIE51bmMgZHVpIG1hZ25hLFxuICpcdFx0XHRcdGZpbmlidXMgaWQgdG9ydG9yIHNlZCwgYWxpcXVldCBiaWJlbmR1bSBhdWd1ZS5cbiAqXHRcdFx0XHRBZW5lYW4gcG9zdWVyZSBzZW0gdmVsIGV1aXNtb2QgZGlnbmlzc2ltLiBOdWxsYSB1dCBjdXJzdXMgZG9sb3IuXG4gKlx0XHRcdFx0UGVsbGVudGVzcXVlIHZ1bHB1dGF0ZSBuaXNsIGEgcG9ydHRpdG9yIGludGVyZHVtLlxuICpcdFx0XHQ8L2Nkcy1saXN0LWNvbHVtbj5cbiAqXHRcdDwvY2RzLWxpc3Qtcm93PlxuICpcdDwvY2RzLXN0cnVjdHVyZWQtbGlzdD5cbiAqIGBgYFxuICpcbiAqIFtTZWUgZGVtb10oLi4vLi4vP3BhdGg9L3N0b3J5L2NvbXBvbmVudHMtc3RydWN0dXJlZC1saXN0LS1iYXNpYylcbiAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiBcImNkcy1zdHJ1Y3R1cmVkLWxpc3QsIGlibS1zdHJ1Y3R1cmVkLWxpc3RcIixcblx0dGVtcGxhdGU6IGBcblx0XHQ8ZGl2XG5cdFx0XHRjbGFzcz1cImNkcy0tc3RydWN0dXJlZC1saXN0XCJcblx0XHRcdHJvbGU9XCJ0YWJsZVwiXG5cdFx0XHRbbmdDbGFzc109XCJ7XG5cdFx0XHRcdCdjZHMtLXN0cnVjdHVyZWQtbGlzdC0tZmx1c2gnOiBmbHVzaGVkLFxuXHRcdFx0XHQnY2RzLS1zdHJ1Y3R1cmVkLWxpc3QtLXNlbGVjdGlvbic6IHNlbGVjdGlvbixcblx0XHRcdFx0J2Nkcy0tc3RydWN0dXJlZC1saXN0LS1jb25kZW5zZWQnOiBjb25kZW5zZWQsXG5cdFx0XHRcdCdjZHMtLXNrZWxldG9uJzogc2tlbGV0b25cblx0XHRcdH1cIj5cblx0XHRcdDxuZy1jb250ZW50IHNlbGVjdD1cImNkcy1saXN0LWhlYWRlcixpYm0tbGlzdC1oZWFkZXJcIj48L25nLWNvbnRlbnQ+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiY2RzLS1zdHJ1Y3R1cmVkLWxpc3QtdGJvZHlcIiByb2xlPVwicm93Z3JvdXBcIj5cblx0XHRcdFx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdGAsXG5cdHByb3ZpZGVyczogW1xuXHRcdHtcblx0XHRcdHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuXHRcdFx0dXNlRXhpc3Rpbmc6IFN0cnVjdHVyZWRMaXN0LFxuXHRcdFx0bXVsdGk6IHRydWVcblx0XHR9XG5cdF1cbn0pXG5leHBvcnQgY2xhc3MgU3RydWN0dXJlZExpc3QgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cdC8qKlxuXHQgKiBBIGNvdW50ZXIgdG8gcHJvdmlkZSB1bmlxdWUgZGVmYXVsdCB2YWx1ZXMuXG5cdCAqL1xuXHRzdGF0aWMgbGlzdENvdW50ID0gMDtcblx0LyoqXG5cdCAqIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHJhZGlvIGxpa2Ugc2VsZWN0aW9uIG9mIHRoZSByb3dzLlxuXHQgKi9cblx0QElucHV0KCkgc2VsZWN0aW9uID0gZmFsc2U7XG5cdC8qKlxuXHQgKiBTZXQgdG8gYHRydWVgIHRvIGFsaWduIGNvbnRlbnQgd2l0aCBtYXJnaW5cblx0ICovXG5cdEBJbnB1dCgpIGZsdXNoZWQgPSBmYWxzZTtcblx0LyoqXG5cdCAqIFNldCB0byBgdHJ1ZWAgdG8gYXBwbHkgYSBjb25kZW5zZWQgc3R5bGUgdG8gdGhlIGhlYWRlcnMgYW5kIHJvd3MuXG5cdCAqL1xuXHRASW5wdXQoKSBjb25kZW5zZWQgPSBmYWxzZTtcblx0LyoqXG5cdCAqIFVzZWQgd2hlbiBgc2VsZWN0aW9uID0gdHJ1ZWAgYXMgdGhlIHJvdyByYWRpbyBncm91cCBgbmFtZWBcblx0ICovXG5cdEBJbnB1dCgpIG5hbWUgPSBgc3RydWN0dXJlZC1saXN0LSR7U3RydWN0dXJlZExpc3QubGlzdENvdW50Kyt9YDtcblxuXHQvKipcblx0ICogU2V0cyB0aGUgc2tlbGV0b24gdmFsdWUgZm9yIGFsbCBgTGlzdEhlYWRlcmAgdG8gdGhlIHNrZWxldG9uIHZhbHVlIG9mIGBTdHJ1Y3R1cmVkTGlzdGAuXG5cdCAqL1xuXHRASW5wdXQoKVxuXHRzZXQgc2tlbGV0b24odmFsdWU6IGFueSkge1xuXHRcdHRoaXMuX3NrZWxldG9uID0gdmFsdWU7XG5cdFx0dGhpcy51cGRhdGVDaGlsZHJlbigpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHVybnMgdGhlIHNrZWxldG9uIHZhbHVlIGluIHRoZSBgU3RydWN0dXJlZExpc3RgIGlmIHRoZXJlIGlzIG9uZS5cblx0ICovXG5cdGdldCBza2VsZXRvbigpOiBhbnkge1xuXHRcdHJldHVybiB0aGlzLl9za2VsZXRvbjtcblx0fVxuXG5cdC8qKlxuXHQgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSByb3cgc2VsZWN0aW9uIGNoYW5nZXMuXG5cdCAqXG5cdCAqIEVtaXRzIGFuIG9iamVjdCB0aGF0IGxvb2tzIGxpa2U6XG5cdCAqIGBgYGphdmFzY3JpcHRcblx0ICoge1xuXHQgKiBcdHZhbHVlOiBcInNvbWV0aGluZ1wiLFxuXHQgKiBcdHNlbGVjdGVkOiB0cnVlLFxuXHQgKiBcdG5hbWU6IFwic3RydWN0dXJlZC1saXN0LTFcIlxuXHQgKiB9XG5cdCAqIGBgYFxuXHQgKi9cblx0QE91dHB1dCgpIHNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8e3ZhbHVlOiBzdHJpbmcsIHNlbGVjdGVkOiBib29sZWFuLCBuYW1lOiBzdHJpbmd9PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuXHRAQ29udGVudENoaWxkcmVuKExpc3RSb3cpIHJvd3M6IFF1ZXJ5TGlzdDxMaXN0Um93Pjtcblx0QENvbnRlbnRDaGlsZHJlbihMaXN0SGVhZGVyKSBoZWFkZXJzOiBRdWVyeUxpc3Q8TGlzdEhlYWRlcj47XG5cblx0cHJvdGVjdGVkIF9za2VsZXRvbiA9IGZhbHNlO1xuXG5cdG9uQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xuXG5cdG9uVG91Y2hlZCA9ICgpID0+IHsgfTtcblxuXHRuZ0FmdGVyQ29udGVudEluaXQoKSB7XG5cdFx0Y29uc3Qgc2V0U2VsZWN0aW9uID0gKHJvd09ySGVhZGVyOiBMaXN0Um93IHwgTGlzdEhlYWRlcikgPT4ge1xuXHRcdFx0cm93T3JIZWFkZXIuc2VsZWN0aW9uID0gdGhpcy5zZWxlY3Rpb247XG5cdFx0fTtcblxuXHRcdHRoaXMuaGVhZGVycy5mb3JFYWNoKHNldFNlbGVjdGlvbik7XG5cdFx0dGhpcy5yb3dzLmZvckVhY2gocm93ID0+IHtcblx0XHRcdHNldFNlbGVjdGlvbihyb3cpO1xuXHRcdFx0cm93Lm5hbWUgPSB0aGlzLm5hbWU7XG5cdFx0XHRyb3cuY2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWQuZW1pdCh7XG5cdFx0XHRcdFx0dmFsdWU6IHJvdy52YWx1ZSxcblx0XHRcdFx0XHRzZWxlY3RlZDogcm93LnNlbGVjdGVkLFxuXHRcdFx0XHRcdG5hbWU6IHRoaXMubmFtZVxuXHRcdFx0XHR9KTtcblx0XHRcdFx0dGhpcy5vbkNoYW5nZShyb3cudmFsdWUpO1xuXHRcdFx0XHR0aGlzLndyaXRlVmFsdWUocm93LnZhbHVlKTtcblx0XHRcdH0pO1xuXHRcdH0pO1xuXHRcdHRoaXMudXBkYXRlQ2hpbGRyZW4oKTtcblx0fVxuXG5cdHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuXHRcdGlmICghdGhpcy5yb3dzKSB7IHJldHVybjsgfVxuXHRcdHRoaXMucm93cy5mb3JFYWNoKHJvdyA9PiB7XG5cdFx0XHRpZiAocm93LnZhbHVlID09PSB2YWx1ZSkge1xuXHRcdFx0XHRyb3cuc2VsZWN0ZWQgPSB0cnVlO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cm93LnNlbGVjdGVkID0gZmFsc2U7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHRyZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcblx0XHR0aGlzLm9uQ2hhbmdlID0gZm47XG5cdH1cblxuXHRyZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG5cdFx0dGhpcy5vblRvdWNoZWQgPSBmbjtcblx0fVxuXG5cdHByb3RlY3RlZCB1cGRhdGVDaGlsZHJlbigpIHtcblx0XHRpZiAodGhpcy5oZWFkZXJzKSB7XG5cdFx0XHR0aGlzLmhlYWRlcnMudG9BcnJheSgpLmZvckVhY2goY2hpbGQgPT4gY2hpbGQuc2tlbGV0b24gPSB0aGlzLnNrZWxldG9uKTtcblx0XHR9XG5cdH1cbn1cbiJdfQ==
@@ -170,6 +170,21 @@ class NumberComponent {
170
170
  * Adds `step` to the current `value`.
171
171
  */
172
172
  onIncrement() {
173
+ // if max is set and value + step is greater than max, set value to max
174
+ // example: max = 100, step = 10, value = 95 , value + step = 105, value will be set to 100 (max) instead of 105
175
+ if (this.max !== null && this.value + this.step > this.max) {
176
+ this.value = this.max;
177
+ this.emitChangeEvent();
178
+ return;
179
+ }
180
+ // if min is set and value + step is less than min, set value to min
181
+ // example: min = 5, step = 2, value = 0, value + step = 2, value will be set to 5 (min) instead of 2
182
+ if (this.min !== null && this.value + this.step < this.min) {
183
+ this.value = this.min;
184
+ this.emitChangeEvent();
185
+ return;
186
+ }
187
+ // if max is not set or value + step is less than max, increment value by step
173
188
  if (this.max === null || this.value + this.step <= this.max) {
174
189
  this.value += this.step;
175
190
  this.value = parseFloat(this.value.toPrecision(this.precision));
@@ -180,6 +195,21 @@ class NumberComponent {
180
195
  * Subtracts `step` to the current `value`.
181
196
  */
182
197
  onDecrement() {
198
+ // if max is set and value - step is greater than max, set value to max
199
+ // example: max = 15, step = 2, value = 20, value - step = 18, value will be set to 15 (max) instead of 18
200
+ if (this.max !== null && this.value - this.step > this.max) {
201
+ this.value = this.max;
202
+ this.emitChangeEvent();
203
+ return;
204
+ }
205
+ // if min is set and value - step is less than min, set value to min
206
+ // example: min = 5, step = 2, value = 6, value - step = 4, value will be set to 5 (min) instead of 4
207
+ if (this.min !== null && this.value - this.step < this.min) {
208
+ this.value = this.min;
209
+ this.emitChangeEvent();
210
+ return;
211
+ }
212
+ // if min is not set or value - step is greater than min, decrement value by step
183
213
  if (this.min === null || this.value - this.step >= this.min) {
184
214
  this.value -= this.step;
185
215
  this.value = parseFloat(this.value.toPrecision(this.precision));