@theseam/ui-common 0.2.16 → 0.3.1

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 (97) hide show
  1. package/breadcrumbs/_breadcrumbs-theme.scss +3 -0
  2. package/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +10 -0
  3. package/breadcrumbs/styles/_utilities.scss +3 -0
  4. package/breadcrumbs/styles/_variables.scss +1 -0
  5. package/breadcrumbs/theseam-ui-common-breadcrumbs.metadata.json +1 -1
  6. package/bundles/theseam-ui-common-breadcrumbs.umd.js +2 -1
  7. package/bundles/theseam-ui-common-breadcrumbs.umd.js.map +1 -1
  8. package/bundles/theseam-ui-common-datatable.umd.js.map +1 -1
  9. package/bundles/theseam-ui-common-framework.umd.js +18 -15
  10. package/bundles/theseam-ui-common-framework.umd.js.map +1 -1
  11. package/bundles/theseam-ui-common-scrollbar.umd.js +1 -1
  12. package/bundles/theseam-ui-common-scrollbar.umd.js.map +1 -1
  13. package/bundles/theseam-ui-common-table-cell-types.umd.js +89 -4
  14. package/bundles/theseam-ui-common-table-cell-types.umd.js.map +1 -1
  15. package/bundles/theseam-ui-common-tel-input.umd.js +59 -7
  16. package/bundles/theseam-ui-common-tel-input.umd.js.map +1 -1
  17. package/bundles/theseam-ui-common-testing.umd.js.map +1 -1
  18. package/bundles/theseam-ui-common-utils.umd.js.map +1 -1
  19. package/bundles/theseam-ui-common-viewers.umd.js +269 -4
  20. package/bundles/theseam-ui-common-viewers.umd.js.map +1 -1
  21. package/bundles/theseam-ui-common-widget.umd.js +1 -1
  22. package/esm2015/breadcrumbs/breadcrumbs/breadcrumbs.component.js +4 -3
  23. package/esm2015/datatable/models/columns-alteration.js +1 -1
  24. package/esm2015/datatable/models/columns-alterations/hide-column.columns-alteration.js +1 -1
  25. package/esm2015/datatable/models/columns-alterations/sort.columns-alteration.js +1 -1
  26. package/esm2015/datatable/models/columns-alterations/width.columns-alteration.js +1 -1
  27. package/esm2015/datatable/models/internal-column-props.js +1 -1
  28. package/esm2015/datatable/services/columns-alterations-manager.service.js +1 -1
  29. package/esm2015/datatable/utils/map-columns-alterations-states.js +1 -1
  30. package/esm2015/framework/base-layout/base-layout.component.js +3 -3
  31. package/esm2015/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.js +5 -5
  32. package/esm2015/framework/top-bar/top-bar-title/top-bar-title.component.js +4 -3
  33. package/esm2015/framework/top-bar/top-bar.component.js +10 -8
  34. package/esm2015/graphql/models/gql-datatable-accessor.js +1 -1
  35. package/esm2015/scrollbar/overlay-scrollbar.directive.js +2 -2
  36. package/esm2015/table-cell-types/table-cell-type-currency/table-cell-type-currency-config.js +1 -1
  37. package/esm2015/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.js +17 -2
  38. package/esm2015/table-cell-types/table-cell-type-decimal/table-cell-type-decimal-config.js +1 -1
  39. package/esm2015/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.js +16 -2
  40. package/esm2015/table-cell-types/table-cell-type-integer/table-cell-type-integer-config.js +1 -1
  41. package/esm2015/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.js +16 -2
  42. package/esm2015/table-cell-types/table-cell-type-string/table-cell-type-string-config.js +1 -1
  43. package/esm2015/table-cell-types/table-cell-type-string/table-cell-type-string.component.js +32 -4
  44. package/esm2015/tel-input/tel-input/tel-input.component.js +10 -2
  45. package/esm2015/tel-input/tel-input.directive.js +50 -5
  46. package/esm2015/testing/current-tick-time.js +1 -1
  47. package/esm2015/utils/array-move.js +1 -1
  48. package/esm2015/utils/router/is-empty-url-route.js +1 -1
  49. package/esm2015/viewers/html-template-viewer/html-template-viewer.component.js +219 -0
  50. package/esm2015/viewers/html-template-viewer/html-template-viewer.module.js +23 -0
  51. package/esm2015/viewers/html-template-viewer/index.js +3 -0
  52. package/esm2015/viewers/public-api.js +2 -1
  53. package/esm2015/widget/widget/widget.component.js +1 -1
  54. package/fesm2015/theseam-ui-common-breadcrumbs.js +3 -2
  55. package/fesm2015/theseam-ui-common-breadcrumbs.js.map +1 -1
  56. package/fesm2015/theseam-ui-common-datatable.js.map +1 -1
  57. package/fesm2015/theseam-ui-common-framework.js +15 -12
  58. package/fesm2015/theseam-ui-common-framework.js.map +1 -1
  59. package/fesm2015/theseam-ui-common-scrollbar.js +1 -1
  60. package/fesm2015/theseam-ui-common-scrollbar.js.map +1 -1
  61. package/fesm2015/theseam-ui-common-table-cell-types.js +74 -5
  62. package/fesm2015/theseam-ui-common-table-cell-types.js.map +1 -1
  63. package/fesm2015/theseam-ui-common-tel-input.js +58 -6
  64. package/fesm2015/theseam-ui-common-tel-input.js.map +1 -1
  65. package/fesm2015/theseam-ui-common-testing.js.map +1 -1
  66. package/fesm2015/theseam-ui-common-utils.js.map +1 -1
  67. package/fesm2015/theseam-ui-common-viewers.js +237 -2
  68. package/fesm2015/theseam-ui-common-viewers.js.map +1 -1
  69. package/fesm2015/theseam-ui-common-widget.js +1 -1
  70. package/framework/base-layout/base-layout.component.scss +14 -0
  71. package/framework/base-layout/styles/_variables.scss +14 -0
  72. package/framework/theseam-ui-common-framework.metadata.json +1 -1
  73. package/framework/top-bar/_top-bar-theme.scss +5 -0
  74. package/framework/top-bar/styles/_utilities.scss +3 -0
  75. package/framework/top-bar/styles/_variables.scss +18 -0
  76. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +3 -1
  77. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.scss +15 -0
  78. package/framework/top-bar/top-bar-title/top-bar-title.component.scss +6 -0
  79. package/framework/top-bar/top-bar.component.d.ts +3 -0
  80. package/framework/top-bar/top-bar.component.scss +39 -0
  81. package/package.json +1 -1
  82. package/table-cell-types/table-cell-type-currency/table-cell-type-currency-config.d.ts +5 -0
  83. package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal-config.d.ts +5 -0
  84. package/table-cell-types/table-cell-type-integer/table-cell-type-integer-config.d.ts +5 -0
  85. package/table-cell-types/table-cell-type-string/table-cell-type-string-config.d.ts +8 -0
  86. package/table-cell-types/table-cell-type-string/table-cell-type-string.component.d.ts +9 -0
  87. package/table-cell-types/theseam-ui-common-table-cell-types.metadata.json +1 -1
  88. package/tel-input/tel-input.directive.d.ts +7 -3
  89. package/tel-input/theseam-ui-common-tel-input.metadata.json +1 -1
  90. package/viewers/html-template-viewer/html-template-viewer.component.d.ts +67 -0
  91. package/viewers/html-template-viewer/html-template-viewer.module.d.ts +2 -0
  92. package/viewers/html-template-viewer/index.d.ts +2 -0
  93. package/viewers/public-api.d.ts +1 -0
  94. package/viewers/theseam-ui-common-viewers.metadata.json +1 -1
  95. package/widget/styles/_variables.scss +2 -0
  96. package/widget/theseam-ui-common-widget.metadata.json +1 -1
  97. package/widget/widget/widget.component.scss +2 -0
@@ -3,6 +3,8 @@ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, O
3
3
  import { Subject } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
5
  import { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type';
6
+ import { isNumeric, notNullOrUndefined } from '@theseam/ui-common/utils';
7
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
6
8
  export class TableCellTypeCurrencyComponent {
7
9
  // TODO: implement
8
10
  // titleAttr?: string
@@ -41,11 +43,24 @@ export class TableCellTypeCurrencyComponent {
41
43
  _formatCurrency(currentValue, tableData) {
42
44
  var _a;
43
45
  const config = (_a = tableData === null || tableData === void 0 ? void 0 : tableData.colData) === null || _a === void 0 ? void 0 : _a.cellTypeConfig;
46
+ const defaultToEmpty = notNullOrUndefined(config === null || config === void 0 ? void 0 : config.defaultToEmpty) ?
47
+ this._parseConfigValue(coerceBooleanProperty(config === null || config === void 0 ? void 0 : config.defaultToEmpty), tableData) : true;
48
+ const valueIsNumeric = isNumeric(currentValue);
49
+ if (!valueIsNumeric) {
50
+ if (defaultToEmpty) {
51
+ // return empty string instead of $0 when currentValue is empty or unparseable
52
+ return '';
53
+ }
54
+ else {
55
+ // set non-numeric value to 0 so it can be formatted the same as other numbers
56
+ currentValue = 0;
57
+ }
58
+ }
44
59
  const locale = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.locale, tableData) || 'en-US';
45
60
  const currency = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.currency, tableData) || '$';
46
61
  const currencyCode = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.currencyCode, tableData) || 'USD';
47
62
  const minIntegerDigits = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.minIntegerDigits, tableData) || 1;
48
- const minFractionDigits = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.minFractionDigits, tableData) || 0;
63
+ const minFractionDigits = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.minFractionDigits, tableData) || 2;
49
64
  const maxFractionDigits = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.maxFractionDigits, tableData) || 2;
50
65
  const format = `${minIntegerDigits}.${minFractionDigits}-${maxFractionDigits}`;
51
66
  return formatCurrency(currentValue, locale, currency, currencyCode, format);
@@ -71,4 +86,4 @@ TableCellTypeCurrencyComponent.ctorParameters = () => [
71
86
  TableCellTypeCurrencyComponent.propDecorators = {
72
87
  value: [{ type: Input }]
73
88
  };
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWN1cnJlbmN5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90YWJsZS1jZWxsLXR5cGVzL3RhYmxlLWNlbGwtdHlwZS1jdXJyZW5jeS90YWJsZS1jZWxsLXR5cGUtY3VycmVuY3kuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNqSSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsZUFBZSxFQUFzQixNQUFNLG9DQUFvQyxDQUFBO0FBV3RILE1BQU0sT0FBTyw4QkFBOEI7SUFVekMsa0JBQWtCO0lBQ2xCLHFCQUFxQjtJQUVyQixZQUNVLElBQXVCLEVBQ3ZCLHFCQUFtRCxFQUN0QixVQUFtRTs7UUFGaEcsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdkIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUE4QjtRQWI1QyxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUE7UUFnQjdDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQTtRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDMUUsSUFBSSxDQUFDLEdBQUcsR0FBRyxTQUFTLElBQUksU0FBUyxDQUFDLEdBQUcsQ0FBQTtRQUNyQyxJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFBO1FBQy9DLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUE7UUFDN0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBQSxNQUFBLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRSxPQUFPLDBDQUFFLGNBQWMsMENBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxJQUFJLE9BQU8sQ0FBQTtRQUM1RyxrSEFBa0g7UUFFbEgsSUFBSSxTQUFTLEVBQUU7WUFDYixTQUFTLENBQUMsT0FBTztpQkFDZCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztpQkFDcEMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNiLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ3JDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLENBQUE7b0JBQzFFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUE7aUJBQ3pCO2dCQUVELElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ3ZDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFBO29CQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFBO2lCQUN6QjtZQUNILENBQUMsQ0FBQyxDQUFBO1NBQ0w7SUFDSCxDQUFDO0lBRUQsUUFBUSxLQUFJLENBQUM7SUFFYixXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ2hDLENBQUM7SUFFTyxlQUFlLENBQUMsWUFBa0IsRUFBRSxTQUFrRTs7UUFDMUcsTUFBTSxNQUFNLEdBQUcsTUFBQSxTQUFTLGFBQVQsU0FBUyx1QkFBVCxTQUFTLENBQUUsT0FBTywwQ0FBRSxjQUFjLENBQUE7UUFDakQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksT0FBTyxDQUFBO1FBQzNFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQTtRQUMzRSxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFlBQVksRUFBRSxTQUFTLENBQUMsSUFBSSxLQUFLLENBQUE7UUFDckYsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLGdCQUFnQixFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUN6RixNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQzNGLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxpQkFBaUIsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDM0YsTUFBTSxNQUFNLEdBQUcsR0FBSSxnQkFBaUIsSUFBSyxpQkFBa0IsSUFBSyxpQkFBa0IsRUFBRSxDQUFBO1FBRXBGLE9BQU8sY0FBYyxDQUFDLFlBQVksRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxNQUFNLENBQUUsQ0FBQTtJQUNoRixDQUFDO0lBRU8saUJBQWlCLENBQUMsR0FBUyxFQUFFLFNBQWtFO1FBQ3JHLE1BQU0sU0FBUyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBQ2xGLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDbEUsQ0FBQzs7O1lBeEVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsK0JBQStCO2dCQUN6QyxxUEFBd0Q7Z0JBRXhELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNoRDs7O1lBZGlDLGlCQUFpQjtZQUkxQyw0QkFBNEI7NENBMkJoQyxRQUFRLFlBQUksTUFBTSxTQUFDLGVBQWU7OztvQkFacEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcm1hdEN1cnJlbmN5IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBUYWJsZUNlbGxUeXBlc0hlbHBlcnNTZXJ2aWNlLCBUQUJMRV9DRUxMX0RBVEEsIFRoZVNlYW1UYWJsZUNvbHVtbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi90YWJsZS1jZWxsLXR5cGUnXG5pbXBvcnQgdHlwZSB7IFRhYmxlQ2VsbERhdGEgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuXG5pbXBvcnQgeyBUYWJsZUNlbGxUeXBlQ29uZmlnQ3VycmVuY3kgfSBmcm9tICcuL3RhYmxlLWNlbGwtdHlwZS1jdXJyZW5jeS1jb25maWcnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGFibGUtY2VsbC10eXBlLWN1cnJlbmN5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLWNlbGwtdHlwZS1jdXJyZW5jeS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLWNlbGwtdHlwZS1jdXJyZW5jeS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNlbGxUeXBlQ3VycmVuY3lDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KClcblxuICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZFxuXG4gIHJvdz86IGFueVxuICByb3dJbmRleD86IG51bWJlclxuICBjb2xEYXRhPzogVGhlU2VhbVRhYmxlQ29sdW1uPCdjdXJyZW5jeScsIFRhYmxlQ2VsbFR5cGVDb25maWdDdXJyZW5jeT5cbiAgdGV4dEFsaWduPzogJ2xlZnQnIHwgJ2NlbnRlcicgfCAncmlnaHQnXG4gIC8vIFRPRE86IGltcGxlbWVudFxuICAvLyB0aXRsZUF0dHI/OiBzdHJpbmdcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9jZGY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgX3RhYmxlQ2VsbFR5cGVIZWxwZXJzOiBUYWJsZUNlbGxUeXBlc0hlbHBlcnNTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVEFCTEVfQ0VMTF9EQVRBKSBfdGFibGVEYXRhPzogVGFibGVDZWxsRGF0YTwnY3VycmVuY3knLCBUYWJsZUNlbGxUeXBlQ29uZmlnQ3VycmVuY3k+XG4gICkge1xuICAgIGNvbnN0IHRhYmxlRGF0YSA9IF90YWJsZURhdGFcbiAgICB0aGlzLnZhbHVlID0gdGFibGVEYXRhICYmIHRoaXMuX2Zvcm1hdEN1cnJlbmN5KHRhYmxlRGF0YS52YWx1ZSwgdGFibGVEYXRhKVxuICAgIHRoaXMucm93ID0gdGFibGVEYXRhICYmIHRhYmxlRGF0YS5yb3dcbiAgICB0aGlzLnJvd0luZGV4ID0gdGFibGVEYXRhICYmIHRhYmxlRGF0YS5yb3dJbmRleFxuICAgIHRoaXMuY29sRGF0YSA9IHRhYmxlRGF0YSAmJiB0YWJsZURhdGEuY29sRGF0YVxuICAgIHRoaXMudGV4dEFsaWduID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZSh0YWJsZURhdGE/LmNvbERhdGE/LmNlbGxUeXBlQ29uZmlnPy50ZXh0QWxpZ24sIHRhYmxlRGF0YSkgfHwgJ3JpZ2h0J1xuICAgIC8vIHRoaXMudGl0bGVBdHRyID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZSh0YWJsZURhdGE/LmNvbERhdGE/LmNlbGxUeXBlQ29uZmlnPy50aXRsZUF0dHIsIHRhYmxlRGF0YSkgfHwgdGhpcy52YWx1ZVxuXG4gICAgaWYgKHRhYmxlRGF0YSkge1xuICAgICAgdGFibGVEYXRhLmNoYW5nZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKHYgPT4ge1xuICAgICAgICAgIGlmICh2LmNoYW5nZXMuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLl9mb3JtYXRDdXJyZW5jeSh2LmNoYW5nZXMudmFsdWUuY3VycmVudFZhbHVlLCB0YWJsZURhdGEpXG4gICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodi5jaGFuZ2VzLmhhc093blByb3BlcnR5KCdjb2xEYXRhJykpIHtcbiAgICAgICAgICAgIHRoaXMuY29sRGF0YSA9IHYuY2hhbmdlcy5jb2xEYXRhLmN1cnJlbnRWYWx1ZVxuICAgICAgICAgICAgdGhpcy5fY2RmLm1hcmtGb3JDaGVjaygpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge31cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgcHJpdmF0ZSBfZm9ybWF0Q3VycmVuY3koY3VycmVudFZhbHVlPzogYW55LCB0YWJsZURhdGE/OiBUYWJsZUNlbGxEYXRhPCdjdXJyZW5jeScsIFRhYmxlQ2VsbFR5cGVDb25maWdDdXJyZW5jeT4pOiBzdHJpbmcge1xuICAgICAgY29uc3QgY29uZmlnID0gdGFibGVEYXRhPy5jb2xEYXRhPy5jZWxsVHlwZUNvbmZpZ1xuICAgICAgY29uc3QgbG9jYWxlID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWc/LmxvY2FsZSwgdGFibGVEYXRhKSB8fCAnZW4tVVMnXG4gICAgICBjb25zdCBjdXJyZW5jeSA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnPy5jdXJyZW5jeSwgdGFibGVEYXRhKSB8fCAnJCdcbiAgICAgIGNvbnN0IGN1cnJlbmN5Q29kZSA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnPy5jdXJyZW5jeUNvZGUsIHRhYmxlRGF0YSkgfHwgJ1VTRCdcbiAgICAgIGNvbnN0IG1pbkludGVnZXJEaWdpdHMgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZz8ubWluSW50ZWdlckRpZ2l0cywgdGFibGVEYXRhKSB8fCAxXG4gICAgICBjb25zdCBtaW5GcmFjdGlvbkRpZ2l0cyA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnPy5taW5GcmFjdGlvbkRpZ2l0cywgdGFibGVEYXRhKSB8fCAwXG4gICAgICBjb25zdCBtYXhGcmFjdGlvbkRpZ2l0cyA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnPy5tYXhGcmFjdGlvbkRpZ2l0cywgdGFibGVEYXRhKSB8fCAyXG4gICAgICBjb25zdCBmb3JtYXQgPSBgJHsgbWluSW50ZWdlckRpZ2l0cyB9LiR7IG1pbkZyYWN0aW9uRGlnaXRzIH0tJHsgbWF4RnJhY3Rpb25EaWdpdHMgfWBcblxuICAgICAgcmV0dXJuIGZvcm1hdEN1cnJlbmN5KGN1cnJlbnRWYWx1ZSwgbG9jYWxlLCBjdXJyZW5jeSwgY3VycmVuY3lDb2RlLCBmb3JtYXQgKVxuICB9XG5cbiAgcHJpdmF0ZSBfcGFyc2VDb25maWdWYWx1ZSh2YWw/OiBhbnksIHRhYmxlRGF0YT86IFRhYmxlQ2VsbERhdGE8J2N1cnJlbmN5JywgVGFibGVDZWxsVHlwZUNvbmZpZ0N1cnJlbmN5Pikge1xuICAgIGNvbnN0IGNvbnRleHRGbiA9ICgpID0+IHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLmdldFZhbHVlQ29udGV4dCh2YWwsIHRhYmxlRGF0YSlcbiAgICByZXR1cm4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMucGFyc2VWYWx1ZVByb3AodmFsLCBjb250ZXh0Rm4pXG4gIH1cblxufVxuIl19
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWN1cnJlbmN5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90YWJsZS1jZWxsLXR5cGVzL3RhYmxlLWNlbGwtdHlwZS1jdXJyZW5jeS90YWJsZS1jZWxsLXR5cGUtY3VycmVuY3kuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNqSSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsZUFBZSxFQUFzQixNQUFNLG9DQUFvQyxDQUFBO0FBRXRILE9BQU8sRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUV4RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQVU3RCxNQUFNLE9BQU8sOEJBQThCO0lBVXpDLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFFckIsWUFDVSxJQUF1QixFQUN2QixxQkFBbUQsRUFDdEIsVUFBbUU7O1FBRmhHLFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ3ZCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBOEI7UUFiNUMsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO1FBZ0I3QyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUE7UUFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFF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LEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXRDdXJyZW5jeSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgVGFibGVDZWxsVHlwZXNIZWxwZXJzU2VydmljZSwgVEFCTEVfQ0VMTF9EQVRBLCBUaGVTZWFtVGFibGVDb2x1bW4gfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuaW1wb3J0IHR5cGUgeyBUYWJsZUNlbGxEYXRhIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZSdcbmltcG9ydCB7IGlzTnVtZXJpYywgbm90TnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3V0aWxzJ1xuXG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5cbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVDb25maWdDdXJyZW5jeSB9IGZyb20gJy4vdGFibGUtY2VsbC10eXBlLWN1cnJlbmN5LWNvbmZpZydcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VhbS10YWJsZS1jZWxsLXR5cGUtY3VycmVuY3knLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUtY2VsbC10eXBlLWN1cnJlbmN5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUtY2VsbC10eXBlLWN1cnJlbmN5LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlQ2VsbFR5cGVDdXJyZW5jeUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKVxuXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkXG5cbiAgcm93PzogYW55XG4gIHJvd0luZGV4PzogbnVtYmVyXG4gIGNvbERhdGE/OiBUaGVTZWFtVGFibGVDb2x1bW48J2N1cnJlbmN5JywgVGFibGVDZWxsVHlwZUNvbmZpZ0N1cnJlbmN5PlxuICB0ZXh0QWxpZ24/OiAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCdcbiAgLy8gVE9ETzogaW1wbGVtZW50XG4gIC8vIHRpdGxlQXR0cj86IHN0cmluZ1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NkZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfdGFibGVDZWxsVHlwZUhlbHBlcnM6IFRhYmxlQ2VsbFR5cGVzSGVscGVyc1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChUQUJMRV9DRUxMX0RBVEEpIF90YWJsZURhdGE/OiBUYWJsZUNlbGxEYXRhPCdjdXJyZW5jeScsIFRhYmxlQ2VsbFR5cGVDb25maWdDdXJyZW5jeT5cbiAgKSB7XG4gICAgY29uc3QgdGFibGVEYXRhID0gX3RhYmxlRGF0YVxuICAgIHRoaXMudmFsdWUgPSB0YWJsZURhdGEgJiYgdGhpcy5fZm9ybWF0Q3VycmVuY3kodGFibGVEYXRhLnZhbHVlLCB0YWJsZURhdGEpXG4gICAgdGhpcy5yb3cgPSB0YWJsZURhdGEgJiYgdGFibGVEYXRhLnJvd1xuICAgIHRoaXMucm93SW5kZXggPSB0YWJsZURhdGEgJiYgdGFibGVEYXRhLnJvd0luZGV4XG4gICAgdGhpcy5jb2xEYXRhID0gdGFibGVEYXRhICYmIHRhYmxlRGF0YS5jb2xEYXRhXG4gICAgdGhpcy50ZXh0QWxpZ24gPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKHRhYmxlRGF0YT8uY29sRGF0YT8uY2VsbFR5cGVDb25maWc/LnRleHRBbGlnbiwgdGFibGVEYXRhKSB8fCAncmlnaHQnXG4gICAgLy8gdGhpcy50aXRsZUF0dHIgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKHRhYmxlRGF0YT8uY29sRGF0YT8uY2VsbFR5cGVDb25maWc/LnRpdGxlQXR0ciwgdGFibGVEYXRhKSB8fCB0aGlzLnZhbHVlXG5cbiAgICBpZiAodGFibGVEYXRhKSB7XG4gICAgICB0YWJsZURhdGEuY2hhbmdlZFxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUodiA9PiB7XG4gICAgICAgICAgaWYgKHYuY2hhbmdlcy5oYXNPd25Qcm9wZXJ0eSgndmFsdWUnKSkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuX2Zvcm1hdEN1cnJlbmN5KHYuY2hhbmdlcy52YWx1ZS5jdXJyZW50VmFsdWUsIHRhYmxlRGF0YSlcbiAgICAgICAgICAgIHRoaXMuX2NkZi5tYXJrRm9yQ2hlY2soKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh2LmNoYW5nZXMuaGFzT3duUHJvcGVydHkoJ2NvbERhdGEnKSkge1xuICAgICAgICAgICAgdGhpcy5jb2xEYXRhID0gdi5jaGFuZ2VzLmNvbERhdGEuY3VycmVudFZhbHVlXG4gICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpXG4gIH1cblxuICBwcml2YXRlIF9mb3JtYXRDdXJyZW5jeShjdXJyZW50VmFsdWU/OiBhbnksIHRhYmxlRGF0YT86IFRhYmxlQ2VsbERhdGE8J2N1cnJlbmN5JywgVGFibGVDZWxsVHlwZUNvbmZpZ0N1cnJlbmN5Pik6IHN0cmluZyB7XG4gICAgICBjb25zdCBjb25maWcgPSB0YWJsZURhdGE/LmNvbERhdGE/LmNlbGxUeXBlQ29uZmlnXG4gICAgICBjb25zdCBkZWZhdWx0VG9FbXB0eSA9IG5vdE51bGxPclVuZGVmaW5lZChjb25maWc/LmRlZmF1bHRUb0VtcHR5KSA/XG4gICAgICAgIHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29lcmNlQm9vbGVhblByb3BlcnR5KGNvbmZpZz8uZGVmYXVsdFRvRW1wdHkpLCB0YWJsZURhdGEpIDogdHJ1ZVxuICAgICAgY29uc3QgdmFsdWVJc051bWVyaWMgPSBpc051bWVyaWMoY3VycmVudFZhbHVlKVxuXG4gICAgICBpZiAoIXZhbHVlSXNOdW1lcmljKSB7XG4gICAgICAgIGlmIChkZWZhdWx0VG9FbXB0eSkge1xuICAgICAgICAgIC8vIHJldHVybiBlbXB0eSBzdHJpbmcgaW5zdGVhZCBvZiAkMCB3aGVuIGN1cnJlbnRWYWx1ZSBpcyBlbXB0eSBvciB1bnBhcnNlYWJsZVxuICAgICAgICAgIHJldHVybiAnJ1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIHNldCBub24tbnVtZXJpYyB2YWx1ZSB0byAwIHNvIGl0IGNhbiBiZSBmb3JtYXR0ZWQgdGhlIHNhbWUgYXMgb3RoZXIgbnVtYmVyc1xuICAgICAgICAgIGN1cnJlbnRWYWx1ZSA9IDBcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBsb2NhbGUgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZz8ubG9jYWxlLCB0YWJsZURhdGEpIHx8ICdlbi1VUydcbiAgICAgIGNvbnN0IGN1cnJlbmN5ID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWc/LmN1cnJlbmN5LCB0YWJsZURhdGEpIHx8ICckJ1xuICAgICAgY29uc3QgY3VycmVuY3lDb2RlID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWc/LmN1cnJlbmN5Q29kZSwgdGFibGVEYXRhKSB8fCAnVVNEJ1xuXG4gICAgICBjb25zdCBtaW5JbnRlZ2VyRGlnaXRzID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWc/Lm1pbkludGVnZXJEaWdpdHMsIHRhYmxlRGF0YSkgfHwgMVxuICAgICAgY29uc3QgbWluRnJhY3Rpb25EaWdpdHMgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZz8ubWluRnJhY3Rpb25EaWdpdHMsIHRhYmxlRGF0YSkgfHwgMlxuICAgICAgY29uc3QgbWF4RnJhY3Rpb25EaWdpdHMgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZz8ubWF4RnJhY3Rpb25EaWdpdHMsIHRhYmxlRGF0YSkgfHwgMlxuICAgICAgY29uc3QgZm9ybWF0ID0gYCR7IG1pbkludGVnZXJEaWdpdHMgfS4keyBtaW5GcmFjdGlvbkRpZ2l0cyB9LSR7IG1heEZyYWN0aW9uRGlnaXRzIH1gXG5cbiAgICAgIHJldHVybiBmb3JtYXRDdXJyZW5jeShjdXJyZW50VmFsdWUsIGxvY2FsZSwgY3VycmVuY3ksIGN1cnJlbmN5Q29kZSwgZm9ybWF0IClcbiAgfVxuXG4gIHByaXZhdGUgX3BhcnNlQ29uZmlnVmFsdWUodmFsPzogYW55LCB0YWJsZURhdGE/OiBUYWJsZUNlbGxEYXRhPCdjdXJyZW5jeScsIFRhYmxlQ2VsbFR5cGVDb25maWdDdXJyZW5jeT4pIHtcbiAgICBjb25zdCBjb250ZXh0Rm4gPSAoKSA9PiB0aGlzLl90YWJsZUNlbGxUeXBlSGVscGVycy5nZXRWYWx1ZUNvbnRleHQodmFsLCB0YWJsZURhdGEpXG4gICAgcmV0dXJuIHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLnBhcnNlVmFsdWVQcm9wKHZhbCwgY29udGV4dEZuKVxuICB9XG5cbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWRlY2ltYWwtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLWRlY2ltYWwvdGFibGUtY2VsbC10eXBlLWRlY2ltYWwtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEeW5hbWljQWN0aW9uTGlua0RlZiwgRHluYW1pY0FjdGlvbk1vZGFsRGVmLCBEeW5hbWljVmFsdWUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZHluYW1pYydcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVDb25maWcgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuXG5leHBvcnQgdHlwZSBUYWJsZUNlbGxUeXBlRGVjaW1hbENvbmZpZ0FjdGlvbiA9XG4gIER5bmFtaWNBY3Rpb25MaW5rRGVmIHxcbiAgRHluYW1pY0FjdGlvbk1vZGFsRGVmXG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVDZWxsVHlwZUNvbmZpZ0RlY2ltYWwgZXh0ZW5kcyBUYWJsZUNlbGxUeXBlQ29uZmlnPCdkZWNpbWFsJz4ge1xuICBhY3Rpb24/OiBUYWJsZUNlbGxUeXBlRGVjaW1hbENvbmZpZ0FjdGlvblxuXG4gIC8qKlxuICAgKiBFbGVtZW50IHRpdGxlIGF0dHJpYnV0ZS5cbiAgICovXG4gIC8vIHRpdGxlQXR0cj86IER5bmFtaWNWYWx1ZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIEEgbG9jYWxlIGNvZGUgZm9yIHRoZSBsb2NhbGUgZm9ybWF0IHJ1bGVzIHRvIHVzZS4gRGVmYXVsdHMgdG8gYGVuLVVTYC5cbiAgICovXG4gIGxvY2FsZT86IER5bmFtaWNWYWx1ZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSwgcGlwZSBpbnB1dCB0aHJvdWdoIEFuZ3VsYXIgYG51bWJlcmAgcGlwZS4gRGVmYXVsdCBpcyBgdHJ1ZWAuXG4gICAqL1xuICAgZm9ybWF0TnVtYmVyPzogRHluYW1pY1ZhbHVlPGJvb2xlYW4+XG5cbiAgLyoqXG4gICAqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnRlZ2VyIGRpZ2l0cyBiZWZvcmUgdGhlIGRlY2ltYWwgcG9pbnQuIERlZmF1bHQgaXMgMS5cbiAgICovXG4gIG1pbkludGVnZXJEaWdpdHM/OiBEeW5hbWljVmFsdWU8bnVtYmVyPlxuXG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBudW1iZXIgb2YgZGlnaXRzIGFmdGVyIHRoZSBkZWNpbWFsIHBvaW50LiBEZWZhdWx0IGlzIDAuXG4gICAqL1xuICBtaW5GcmFjdGlvbkRpZ2l0cz86IER5bmFtaWNWYWx1ZTxudW1iZXI+XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBkaWdpdHMgYWZ0ZXIgdGhlIGRlY2ltYWwgcG9pbnQuIERlZmF1bHQgaXMgMy5cbiAgICovXG4gIG1heEZyYWN0aW9uRGlnaXRzPzogRHluYW1pY1ZhbHVlPG51bWJlcj5cblxuICAvKipcbiAgICogRGVmYXVsdCBpcyAncmlnaHQnLlxuICAgKi9cbiAgdGV4dEFsaWduPzogRHluYW1pY1ZhbHVlPCdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0Jz5cbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWRlY2ltYWwtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLWRlY2ltYWwvdGFibGUtY2VsbC10eXBlLWRlY2ltYWwtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEeW5hbWljQWN0aW9uTGlua0RlZiwgRHluYW1pY0FjdGlvbk1vZGFsRGVmLCBEeW5hbWljVmFsdWUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZHluYW1pYydcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVDb25maWcgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuXG5leHBvcnQgdHlwZSBUYWJsZUNlbGxUeXBlRGVjaW1hbENvbmZpZ0FjdGlvbiA9XG4gIER5bmFtaWNBY3Rpb25MaW5rRGVmIHxcbiAgRHluYW1pY0FjdGlvbk1vZGFsRGVmXG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVDZWxsVHlwZUNvbmZpZ0RlY2ltYWwgZXh0ZW5kcyBUYWJsZUNlbGxUeXBlQ29uZmlnPCdkZWNpbWFsJz4ge1xuICBhY3Rpb24/OiBUYWJsZUNlbGxUeXBlRGVjaW1hbENvbmZpZ0FjdGlvblxuXG4gIC8qKlxuICAgKiBFbGVtZW50IHRpdGxlIGF0dHJpYnV0ZS5cbiAgICovXG4gIHRpdGxlQXR0cj86IER5bmFtaWNWYWx1ZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIEEgbG9jYWxlIGNvZGUgZm9yIHRoZSBsb2NhbGUgZm9ybWF0IHJ1bGVzIHRvIHVzZS4gRGVmYXVsdHMgdG8gYGVuLVVTYC5cbiAgICovXG4gIGxvY2FsZT86IER5bmFtaWNWYWx1ZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSwgcGlwZSBpbnB1dCB0aHJvdWdoIEFuZ3VsYXIgYG51bWJlcmAgcGlwZS4gRGVmYXVsdCBpcyBgdHJ1ZWAuXG4gICAqL1xuICBmb3JtYXROdW1iZXI/OiBEeW5hbWljVmFsdWU8Ym9vbGVhbj5cblxuICAvKipcbiAgICogV2hlbiB0cnVlLCBhbiBlbXB0eSBvciB1bnBhcnNlYWJsZSB2YWx1ZSBkZWZhdWx0cyB0byBhbiBlbXB0eSBzdHJpbmcsIG90aGVyd2lzZSBkZWZhdWx0cyB0byAwLiBEZWZhdWx0IGlzIGB0cnVlYC5cbiAgICovXG4gIGRlZmF1bHRUb0VtcHR5PzogRHluYW1pY1ZhbHVlPGJvb2xlYW4+XG5cbiAgLyoqXG4gICAqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnRlZ2VyIGRpZ2l0cyBiZWZvcmUgdGhlIGRlY2ltYWwgcG9pbnQuIERlZmF1bHQgaXMgMS5cbiAgICovXG4gIG1pbkludGVnZXJEaWdpdHM/OiBEeW5hbWljVmFsdWU8bnVtYmVyPlxuXG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBudW1iZXIgb2YgZGlnaXRzIGFmdGVyIHRoZSBkZWNpbWFsIHBvaW50LiBEZWZhdWx0IGlzIDAuXG4gICAqL1xuICBtaW5GcmFjdGlvbkRpZ2l0cz86IER5bmFtaWNWYWx1ZTxudW1iZXI+XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBkaWdpdHMgYWZ0ZXIgdGhlIGRlY2ltYWwgcG9pbnQuIERlZmF1bHQgaXMgMy5cbiAgICovXG4gIG1heEZyYWN0aW9uRGlnaXRzPzogRHluYW1pY1ZhbHVlPG51bWJlcj5cblxuICAvKipcbiAgICogRGVmYXVsdCBpcyAncmlnaHQnLlxuICAgKi9cbiAgdGV4dEFsaWduPzogRHluYW1pY1ZhbHVlPCdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0Jz5cbn1cbiJdfQ==
@@ -3,7 +3,7 @@ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, O
3
3
  import { Subject } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
5
  import { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type';
6
- import { notNullOrUndefined } from '@theseam/ui-common/utils';
6
+ import { isNumeric, notNullOrUndefined } from '@theseam/ui-common/utils';
7
7
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
8
8
  export class TableCellTypeDecimalComponent {
9
9
  constructor(_cdf, _tableCellTypeHelpers, _tableData) {
@@ -40,8 +40,22 @@ export class TableCellTypeDecimalComponent {
40
40
  _formatDecimal(currentValue, tableData) {
41
41
  var _a;
42
42
  const config = (_a = tableData === null || tableData === void 0 ? void 0 : tableData.colData) === null || _a === void 0 ? void 0 : _a.cellTypeConfig;
43
+ const defaultToEmpty = notNullOrUndefined(config === null || config === void 0 ? void 0 : config.defaultToEmpty) ?
44
+ this._parseConfigValue(coerceBooleanProperty(config === null || config === void 0 ? void 0 : config.defaultToEmpty), tableData) : true;
43
45
  const formatDecimal = notNullOrUndefined(config === null || config === void 0 ? void 0 : config.formatNumber) ?
44
46
  this._parseConfigValue(coerceBooleanProperty(config === null || config === void 0 ? void 0 : config.formatNumber), tableData) : true;
47
+ const valueIsNumeric = isNumeric(currentValue);
48
+ // unparseable values are OK to return as long as we're not trying to format them
49
+ if (!valueIsNumeric && formatDecimal) {
50
+ if (defaultToEmpty) {
51
+ // return empty string instead of 0 when currentValue is empty or unparseable
52
+ return '';
53
+ }
54
+ else {
55
+ // set non-numeric value to 0 so it can be formatted the same as other numbers
56
+ currentValue = 0;
57
+ }
58
+ }
45
59
  const locale = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.locale, tableData) || 'en-US';
46
60
  const minIntegerDigits = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.minIntegerDigits, tableData) || 1;
47
61
  const minFractionDigits = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.minFractionDigits, tableData) || 0;
@@ -70,4 +84,4 @@ TableCellTypeDecimalComponent.ctorParameters = () => [
70
84
  TableCellTypeDecimalComponent.propDecorators = {
71
85
  value: [{ type: Input }]
72
86
  };
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWRlY2ltYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLWRlY2ltYWwvdGFibGUtY2VsbC10eXBlLWRlY2ltYWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNqSSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsZUFBZSxFQUFzQixNQUFNLG9DQUFvQyxDQUFBO0FBRXRILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBRTdELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBUzdELE1BQU0sT0FBTyw2QkFBNkI7SUFXeEMsWUFDVSxJQUF1QixFQUN2QixxQkFBbUQsRUFDdEIsVUFBaUU7O1FBRjlGLFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ3ZCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBOEI7UUFYNUMsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO1FBYzdDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQTtRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDekUsSUFBSSxDQUFDLEdBQUcsR0FB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QyxDQUFDLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQTtJQUNsRixDQUFDO0lBRU8saUJBQWlCLENBQUMsR0FBUyxFQUFFLFNBQWdFO1FBQ25HLE1BQU0sU0FBUyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBQ2xGLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDbEUsQ0FBQzs7O1lBckVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsOEJBQThCO2dCQUN4QyxxUEFBdUQ7Z0JBRXZELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNoRDs7O1lBaEJpQyxpQkFBaUI7WUFJMUMsNEJBQTRCOzRDQTJCaEMsUUFBUSxZQUFJLE1BQU0sU0FBQyxlQUFlOzs7b0JBVnBDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXROdW1iZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVzSGVscGVyc1NlcnZpY2UsIFRBQkxFX0NFTExfREFUQSwgVGhlU2VhbVRhYmxlQ29sdW1uIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZSdcbmltcG9ydCB0eXBlIHsgVGFibGVDZWxsRGF0YSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi90YWJsZS1jZWxsLXR5cGUnXG5pbXBvcnQgeyBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVDb25maWdEZWNpbWFsIH0gZnJvbSAnLi90YWJsZS1jZWxsLXR5cGUtZGVjaW1hbC1jb25maWcnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGFibGUtY2VsbC10eXBlLWRlY2ltYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUtY2VsbC10eXBlLWRlY2ltYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS1jZWxsLXR5cGUtZGVjaW1hbC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNlbGxUeXBlRGVjaW1hbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKVxuXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgcm93PzogYW55XG4gIHJvd0luZGV4PzogbnVtYmVyXG4gIGNvbERhdGE/OiBUaGVTZWFtVGFibGVDb2x1bW48J2RlY2ltYWwnLCBUYWJsZUNlbGxUeXBlQ29uZmlnRGVjaW1hbD5cbiAgdGV4dEFsaWduPzogJ2xlZnQnIHwgJ2NlbnRlcicgfCAncmlnaHQnXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfY2RmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIF90YWJsZUNlbGxUeXBlSGVscGVyczogVGFibGVDZWxsVHlwZXNIZWxwZXJzU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRBQkxFX0NFTExfREFUQSkgX3RhYmxlRGF0YT86IFRhYmxlQ2VsbERhdGE8J2RlY2ltYWwnLCBUYWJsZUNlbGxUeXBlQ29uZmlnRGVjaW1hbD5cbiAgKSB7XG4gICAgY29uc3QgdGFibGVEYXRhID0gX3RhYmxlRGF0YVxuICAgIHRoaXMudmFsdWUgPSB0YWJsZURhdGEgJiYgdGhpcy5fZm9ybWF0RGVjaW1hbCh0YWJsZURhdGEudmFsdWUsIHRhYmxlRGF0YSlcbiAgICB0aGlzLnJvdyA9IHRhYmxlRGF0YSAmJiB0YWJsZURhdGEucm93XG4gICAgdGhpcy5yb3dJbmRleCA9IHRhYmxlRGF0YSAmJiB0YWJsZURhdGEucm93SW5kZXhcbiAgICB0aGlzLmNvbERhdGEgPSB0YWJsZURhdGEgJiYgdGFibGVEYXRhLmNvbERhdGFcbiAgICB0aGlzLnRleHRBbGlnbiA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUodGFibGVEYXRhPy5jb2xEYXRhPy5jZWxsVHlwZUNvbmZpZz8udGV4dEFsaWduLCB0YWJsZURhdGEpIHx8ICdyaWdodCdcblxuICAgIGlmICh0YWJsZURhdGEpIHtcbiAgICAgIHRhYmxlRGF0YS5jaGFuZ2VkXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSh2ID0+IHtcbiAgICAgICAgICBpZiAodi5jaGFuZ2VzLmhhc093blByb3BlcnR5KCd2YWx1ZScpKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5fZm9ybWF0RGVjaW1hbCh2LmNoYW5nZXMudmFsdWUuY3VycmVudFZhbHVlLCB0YWJsZURhdGEpXG4gICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodi5jaGFuZ2VzLmhhc093blByb3BlcnR5KCdjb2xEYXRhJykpIHtcbiAgICAgICAgICAgIHRoaXMuY29sRGF0YSA9IHYuY2hhbmdlcy5jb2xEYXRhLmN1cnJlbnRWYWx1ZVxuICAgICAgICAgICAgdGhpcy5fY2RmLm1hcmtGb3JDaGVjaygpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge31cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgcHJpdmF0ZSBfZm9ybWF0RGVjaW1hbChjdXJyZW50VmFsdWU/OiBhbnksIHRhYmxlRGF0YT86IFRhYmxlQ2VsbERhdGE8J2RlY2ltYWwnLCBUYWJsZUNlbGxUeXBlQ29uZmlnRGVjaW1hbD4gfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRhYmxlRGF0YT8uY29sRGF0YT8uY2VsbFR5cGVDb25maWdcbiAgICBjb25zdCBmb3JtYXREZWNpbWFsID0gbm90TnVsbE9yVW5kZWZpbmVkKGNvbmZpZz8uZm9ybWF0TnVtYmVyKSA/XG4gICAgICB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShjb25maWc/LmZvcm1hdE51bWJlciksIHRhYmxlRGF0YSkgOiB0cnVlXG4gICAgY29uc3QgbG9jYWxlID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWc/LmxvY2FsZSwgdGFibGVEYXRhKSB8fCAnZW4tVVMnXG4gICAgY29uc3QgbWluSW50ZWdlckRpZ2l0cyA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnPy5taW5JbnRlZ2VyRGlnaXRzLCB0YWJsZURhdGEpIHx8IDFcbiAgICBjb25zdCBtaW5GcmFjdGlvbkRpZ2l0cyA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnPy5taW5GcmFjdGlvbkRpZ2l0cywgdGFibGVEYXRhKSB8fCAwXG4gICAgY29uc3QgbWF4RnJhY3Rpb25EaWdpdHMgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZz8ubWF4RnJhY3Rpb25EaWdpdHMsIHRhYmxlRGF0YSkgfHwgM1xuICAgIGNvbnN0IGZvcm1hdCA9IGAkeyBtaW5JbnRlZ2VyRGlnaXRzIH0uJHsgbWluRnJhY3Rpb25EaWdpdHMgfS0keyBtYXhGcmFjdGlvbkRpZ2l0cyB9YFxuXG4gICAgcmV0dXJuIGZvcm1hdERlY2ltYWwgPyBmb3JtYXROdW1iZXIoY3VycmVudFZhbHVlLCBsb2NhbGUsIGZvcm1hdCkgOiBjdXJyZW50VmFsdWVcbiAgfVxuXG4gIHByaXZhdGUgX3BhcnNlQ29uZmlnVmFsdWUodmFsPzogYW55LCB0YWJsZURhdGE/OiBUYWJsZUNlbGxEYXRhPCdkZWNpbWFsJywgVGFibGVDZWxsVHlwZUNvbmZpZ0RlY2ltYWw+KSB7XG4gICAgY29uc3QgY29udGV4dEZuID0gKCkgPT4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMuZ2V0VmFsdWVDb250ZXh0KHZhbCwgdGFibGVEYXRhKVxuICAgIHJldHVybiB0aGlzLl90YWJsZUNlbGxUeXBlSGVscGVycy5wYXJzZVZhbHVlUHJvcCh2YWwsIGNvbnRleHRGbilcbiAgfVxuXG59XG4iXX0=
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWRlY2ltYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLWRlY2ltYWwvdGFibGUtY2VsbC10eXBlLWRlY2ltYWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNqSSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsZUFBZSxFQUFzQixNQUFNLG9DQUFvQyxDQUFBO0FBRXRILE9BQU8sRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUV4RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQVM3RCxNQUFNLE9BQU8sNkJBQTZCO0lBV3hDLFlBQ1UsSUFBdUIsRUFDdkIscUJBQW1ELEVBQ3RCLFVBQWlFOztRQUY5RixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQThCO1FBWDVDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQWM3QyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUE7UUFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBQ3pFLElBQUksQ0FB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ZXNDb250ZW50IjpbImltcG9ydCB7IGZvcm1hdE51bWJlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgVGFibGVDZWxsVHlwZXNIZWxwZXJzU2VydmljZSwgVEFCTEVfQ0VMTF9EQVRBLCBUaGVTZWFtVGFibGVDb2x1bW4gfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuaW1wb3J0IHR5cGUgeyBUYWJsZUNlbGxEYXRhIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZSdcbmltcG9ydCB7IGlzTnVtZXJpYywgbm90TnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3V0aWxzJ1xuXG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBUYWJsZUNlbGxUeXBlQ29uZmlnRGVjaW1hbCB9IGZyb20gJy4vdGFibGUtY2VsbC10eXBlLWRlY2ltYWwtY29uZmlnJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXRhYmxlLWNlbGwtdHlwZS1kZWNpbWFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLWNlbGwtdHlwZS1kZWNpbWFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUtY2VsbC10eXBlLWRlY2ltYWwuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVDZWxsVHlwZURlY2ltYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KClcblxuICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbFxuXG4gIHJvdz86IGFueVxuICByb3dJbmRleD86IG51bWJlclxuICBjb2xEYXRhPzogVGhlU2VhbVRhYmxlQ29sdW1uPCdkZWNpbWFsJywgVGFibGVDZWxsVHlwZUNvbmZpZ0RlY2ltYWw+XG4gIHRleHRBbGlnbj86ICdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0J1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NkZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfdGFibGVDZWxsVHlwZUhlbHBlcnM6IFRhYmxlQ2VsbFR5cGVzSGVscGVyc1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChUQUJMRV9DRUxMX0RBVEEpIF90YWJsZURhdGE/OiBUYWJsZUNlbGxEYXRhPCdkZWNpbWFsJywgVGFibGVDZWxsVHlwZUNvbmZpZ0RlY2ltYWw+XG4gICkge1xuICAgIGNvbnN0IHRhYmxlRGF0YSA9IF90YWJsZURhdGFcbiAgICB0aGlzLnZhbHVlID0gdGFibGVEYXRhICYmIHRoaXMuX2Zvcm1hdERlY2ltYWwodGFibGVEYXRhLnZhbHVlLCB0YWJsZURhdGEpXG4gICAgdGhpcy5yb3cgPSB0YWJsZURhdGEgJiYgdGFibGVEYXRhLnJvd1xuICAgIHRoaXMucm93SW5kZXggPSB0YWJsZURhdGEgJiYgdGFibGVEYXRhLnJvd0luZGV4XG4gICAgdGhpcy5jb2xEYXRhID0gdGFibGVEYXRhICYmIHRhYmxlRGF0YS5jb2xEYXRhXG4gICAgdGhpcy50ZXh0QWxpZ24gPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKHRhYmxlRGF0YT8uY29sRGF0YT8uY2VsbFR5cGVDb25maWc/LnRleHRBbGlnbiwgdGFibGVEYXRhKSB8fCAncmlnaHQnXG5cbiAgICBpZiAodGFibGVEYXRhKSB7XG4gICAgICB0YWJsZURhdGEuY2hhbmdlZFxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUodiA9PiB7XG4gICAgICAgICAgaWYgKHYuY2hhbmdlcy5oYXNPd25Qcm9wZXJ0eSgndmFsdWUnKSkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuX2Zvcm1hdERlY2ltYWwodi5jaGFuZ2VzLnZhbHVlLmN1cnJlbnRWYWx1ZSwgdGFibGVEYXRhKVxuICAgICAgICAgICAgdGhpcy5fY2RmLm1hcmtGb3JDaGVjaygpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHYuY2hhbmdlcy5oYXNPd25Qcm9wZXJ0eSgnY29sRGF0YScpKSB7XG4gICAgICAgICAgICB0aGlzLmNvbERhdGEgPSB2LmNoYW5nZXMuY29sRGF0YS5jdXJyZW50VmFsdWVcbiAgICAgICAgICAgIHRoaXMuX2NkZi5tYXJrRm9yQ2hlY2soKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgfVxuXG4gIHByaXZhdGUgX2Zvcm1hdERlY2ltYWwoY3VycmVudFZhbHVlPzogYW55LCB0YWJsZURhdGE/OiBUYWJsZUNlbGxEYXRhPCdkZWNpbWFsJywgVGFibGVDZWxsVHlwZUNvbmZpZ0RlY2ltYWw+IHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb25maWcgPSB0YWJsZURhdGE/LmNvbERhdGE/LmNlbGxUeXBlQ29uZmlnXG4gICAgY29uc3QgZGVmYXVsdFRvRW1wdHkgPSBub3ROdWxsT3JVbmRlZmluZWQoY29uZmlnPy5kZWZhdWx0VG9FbXB0eSkgP1xuICAgICAgdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb2VyY2VCb29sZWFuUHJvcGVydHkoY29uZmlnPy5kZWZhdWx0VG9FbXB0eSksIHRhYmxlRGF0YSkgOiB0cnVlXG4gICAgY29uc3QgZm9ybWF0RGVjaW1hbCA9IG5vdE51bGxPclVuZGVmaW5lZChjb25maWc/LmZvcm1hdE51bWJlcikgP1xuICAgICAgdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb2VyY2VCb29sZWFuUHJvcGVydHkoY29uZmlnPy5mb3JtYXROdW1iZXIpLCB0YWJsZURhdGEpIDogdHJ1ZVxuICAgIGNvbnN0IHZhbHVlSXNOdW1lcmljID0gaXNOdW1lcmljKGN1cnJlbnRWYWx1ZSlcblxuICAgIC8vIHVucGFyc2VhYmxlIHZhbHVlcyBhcmUgT0sgdG8gcmV0dXJuIGFzIGxvbmcgYXMgd2UncmUgbm90IHRyeWluZyB0byBmb3JtYXQgdGhlbVxuICAgIGlmICghdmFsdWVJc051bWVyaWMgJiYgZm9ybWF0RGVjaW1hbCkge1xuICAgICAgaWYgKGRlZmF1bHRUb0VtcHR5KSB7XG4gICAgICAgIC8vIHJldHVybiBlbXB0eSBzdHJpbmcgaW5zdGVhZCBvZiAwIHdoZW4gY3VycmVudFZhbHVlIGlzIGVtcHR5IG9yIHVucGFyc2VhYmxlXG4gICAgICAgIHJldHVybiAnJ1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gc2V0IG5vbi1udW1lcmljIHZhbHVlIHRvIDAgc28gaXQgY2FuIGJlIGZvcm1hdHRlZCB0aGUgc2FtZSBhcyBvdGhlciBudW1iZXJzXG4gICAgICAgIGN1cnJlbnRWYWx1ZSA9IDBcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBsb2NhbGUgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZz8ubG9jYWxlLCB0YWJsZURhdGEpIHx8ICdlbi1VUydcbiAgICBjb25zdCBtaW5JbnRlZ2VyRGlnaXRzID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWc/Lm1pbkludGVnZXJEaWdpdHMsIHRhYmxlRGF0YSkgfHwgMVxuICAgIGNvbnN0IG1pbkZyYWN0aW9uRGlnaXRzID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWc/Lm1pbkZyYWN0aW9uRGlnaXRzLCB0YWJsZURhdGEpIHx8IDBcbiAgICBjb25zdCBtYXhGcmFjdGlvbkRpZ2l0cyA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnPy5tYXhGcmFjdGlvbkRpZ2l0cywgdGFibGVEYXRhKSB8fCAzXG4gICAgY29uc3QgZm9ybWF0ID0gYCR7IG1pbkludGVnZXJEaWdpdHMgfS4keyBtaW5GcmFjdGlvbkRpZ2l0cyB9LSR7IG1heEZyYWN0aW9uRGlnaXRzIH1gXG5cbiAgICByZXR1cm4gZm9ybWF0RGVjaW1hbCA/IGZvcm1hdE51bWJlcihjdXJyZW50VmFsdWUsIGxvY2FsZSwgZm9ybWF0KSA6IGN1cnJlbnRWYWx1ZVxuICB9XG5cbiAgcHJpdmF0ZSBfcGFyc2VDb25maWdWYWx1ZSh2YWw/OiBhbnksIHRhYmxlRGF0YT86IFRhYmxlQ2VsbERhdGE8J2RlY2ltYWwnLCBUYWJsZUNlbGxUeXBlQ29uZmlnRGVjaW1hbD4pIHtcbiAgICBjb25zdCBjb250ZXh0Rm4gPSAoKSA9PiB0aGlzLl90YWJsZUNlbGxUeXBlSGVscGVycy5nZXRWYWx1ZUNvbnRleHQodmFsLCB0YWJsZURhdGEpXG4gICAgcmV0dXJuIHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLnBhcnNlVmFsdWVQcm9wKHZhbCwgY29udGV4dEZuKVxuICB9XG5cbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWludGVnZXItY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLWludGVnZXIvdGFibGUtY2VsbC10eXBlLWludGVnZXItY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEeW5hbWljQWN0aW9uTGlua0RlZiwgRHluYW1pY0FjdGlvbk1vZGFsRGVmLCBEeW5hbWljVmFsdWUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZHluYW1pYydcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVDb25maWcgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuXG5leHBvcnQgdHlwZSBUYWJsZUNlbGxUeXBlSW50ZWdlckNvbmZpZ0FjdGlvbiA9XG4gIER5bmFtaWNBY3Rpb25MaW5rRGVmIHxcbiAgRHluYW1pY0FjdGlvbk1vZGFsRGVmXG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVDZWxsVHlwZUNvbmZpZ0ludGVnZXIgZXh0ZW5kcyBUYWJsZUNlbGxUeXBlQ29uZmlnPCdpbnRlZ2VyJz4ge1xuICBhY3Rpb24/OiBUYWJsZUNlbGxUeXBlSW50ZWdlckNvbmZpZ0FjdGlvblxuXG4gIC8qKlxuICAgKiBFbGVtZW50IHRpdGxlIGF0dHJpYnV0ZS5cbiAgICovXG4gIC8vIHRpdGxlQXR0cj86IER5bmFtaWNWYWx1ZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIEEgbG9jYWxlIGNvZGUgZm9yIHRoZSBsb2NhbGUgZm9ybWF0IHJ1bGVzIHRvIHVzZS4gRGVmYXVsdHMgdG8gYGVuLVVTYC5cbiAgICovXG4gIGxvY2FsZT86IER5bmFtaWNWYWx1ZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSwgcGlwZSBpbnB1dCB0aHJvdWdoIEFuZ3VsYXIgYG51bWJlcmAgcGlwZS4gRGVmYXVsdCBpcyBgdHJ1ZWAuXG4gICAqL1xuICBmb3JtYXROdW1iZXI/OiBEeW5hbWljVmFsdWU8Ym9vbGVhbj5cblxuICAvKipcbiAgICogSWYgYGZvcm1hdE51bWJlciA9PT0gdHJ1ZWAsIHRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnRlZ2VyIGRpZ2l0cyBiZWZvcmUgdGhlIGRlY2ltYWwgcG9pbnQuIERlZmF1bHQgaXMgMS5cbiAgICovXG4gICBtaW5JbnRlZ2VyRGlnaXRzPzogRHluYW1pY1ZhbHVlPG51bWJlcj5cblxuICAgLyoqXG4gICAgKiBEZWZhdWx0IGlzIGByaWdodGAuXG4gICAgKi9cbiAgIHRleHRBbGlnbj86IER5bmFtaWNWYWx1ZTwnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCc+XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWludGVnZXItY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLWludGVnZXIvdGFibGUtY2VsbC10eXBlLWludGVnZXItY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEeW5hbWljQWN0aW9uTGlua0RlZiwgRHluYW1pY0FjdGlvbk1vZGFsRGVmLCBEeW5hbWljVmFsdWUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZHluYW1pYydcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVDb25maWcgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuXG5leHBvcnQgdHlwZSBUYWJsZUNlbGxUeXBlSW50ZWdlckNvbmZpZ0FjdGlvbiA9XG4gIER5bmFtaWNBY3Rpb25MaW5rRGVmIHxcbiAgRHluYW1pY0FjdGlvbk1vZGFsRGVmXG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVDZWxsVHlwZUNvbmZpZ0ludGVnZXIgZXh0ZW5kcyBUYWJsZUNlbGxUeXBlQ29uZmlnPCdpbnRlZ2VyJz4ge1xuICBhY3Rpb24/OiBUYWJsZUNlbGxUeXBlSW50ZWdlckNvbmZpZ0FjdGlvblxuXG4gIC8qKlxuICAgKiBFbGVtZW50IHRpdGxlIGF0dHJpYnV0ZS5cbiAgICovXG4gIHRpdGxlQXR0cj86IER5bmFtaWNWYWx1ZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIEEgbG9jYWxlIGNvZGUgZm9yIHRoZSBsb2NhbGUgZm9ybWF0IHJ1bGVzIHRvIHVzZS4gRGVmYXVsdHMgdG8gYGVuLVVTYC5cbiAgICovXG4gIGxvY2FsZT86IER5bmFtaWNWYWx1ZTxzdHJpbmc+XG5cbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSwgcGlwZSBpbnB1dCB0aHJvdWdoIEFuZ3VsYXIgYG51bWJlcmAgcGlwZS4gRGVmYXVsdCBpcyBgdHJ1ZWAuXG4gICAqL1xuICBmb3JtYXROdW1iZXI/OiBEeW5hbWljVmFsdWU8Ym9vbGVhbj5cblxuICAvKipcbiAgICogV2hlbiB0cnVlLCBhbiBlbXB0eSBvciB1bnBhcnNlYWJsZSB2YWx1ZSBkZWZhdWx0cyB0byBhbiBlbXB0eSBzdHJpbmcsIG90aGVyd2lzZSBkZWZhdWx0cyB0byAwLiBEZWZhdWx0IGlzIGB0cnVlYC5cbiAgICovXG4gIGRlZmF1bHRUb0VtcHR5PzogRHluYW1pY1ZhbHVlPGJvb2xlYW4+XG5cbiAgLyoqXG4gICAqIElmIGBmb3JtYXROdW1iZXIgPT09IHRydWVgLCB0aGUgbWluaW11bSBudW1iZXIgb2YgaW50ZWdlciBkaWdpdHMgYmVmb3JlIHRoZSBkZWNpbWFsIHBvaW50LiBEZWZhdWx0IGlzIDEuXG4gICAqL1xuICAgbWluSW50ZWdlckRpZ2l0cz86IER5bmFtaWNWYWx1ZTxudW1iZXI+XG5cbiAgIC8qKlxuICAgICogRGVmYXVsdCBpcyBgcmlnaHRgLlxuICAgICovXG4gICB0ZXh0QWxpZ24/OiBEeW5hbWljVmFsdWU8J2xlZnQnIHwgJ2NlbnRlcicgfCAncmlnaHQnPlxufVxuIl19
@@ -3,7 +3,7 @@ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, O
3
3
  import { Subject } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
5
  import { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type';
6
- import { notNullOrUndefined } from '@theseam/ui-common/utils';
6
+ import { isNumeric, notNullOrUndefined } from '@theseam/ui-common/utils';
7
7
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
8
8
  export class TableCellTypeIntegerComponent {
9
9
  constructor(_cdf, _tableCellTypeHelpers, _tableData) {
@@ -40,8 +40,22 @@ export class TableCellTypeIntegerComponent {
40
40
  _formatInteger(currentValue, tableData) {
41
41
  var _a;
42
42
  const config = (_a = tableData === null || tableData === void 0 ? void 0 : tableData.colData) === null || _a === void 0 ? void 0 : _a.cellTypeConfig;
43
+ const defaultToEmpty = notNullOrUndefined(config === null || config === void 0 ? void 0 : config.defaultToEmpty) ?
44
+ this._parseConfigValue(coerceBooleanProperty(config === null || config === void 0 ? void 0 : config.defaultToEmpty), tableData) : true;
43
45
  const formatInteger = notNullOrUndefined(config === null || config === void 0 ? void 0 : config.formatNumber) ?
44
46
  this._parseConfigValue(coerceBooleanProperty(config === null || config === void 0 ? void 0 : config.formatNumber), tableData) : true;
47
+ const valueIsNumeric = isNumeric(currentValue);
48
+ // unparseable values are OK to return as long as we're not trying to format them
49
+ if (!valueIsNumeric && formatInteger) {
50
+ if (defaultToEmpty) {
51
+ // return empty string instead of 0 when currentValue is empty or unparseable
52
+ return '';
53
+ }
54
+ else {
55
+ // set non-numeric value to 0 so it can be formatted the same as other numbers
56
+ currentValue = 0;
57
+ }
58
+ }
45
59
  const locale = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.locale, tableData) || 'en-US';
46
60
  const minIntegerDigits = this._parseConfigValue(config === null || config === void 0 ? void 0 : config.minIntegerDigits, tableData) || 1;
47
61
  const format = `${minIntegerDigits}.0-0`;
@@ -68,4 +82,4 @@ TableCellTypeIntegerComponent.ctorParameters = () => [
68
82
  TableCellTypeIntegerComponent.propDecorators = {
69
83
  value: [{ type: Input }]
70
84
  };
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWludGVnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLWludGVnZXIvdGFibGUtY2VsbC10eXBlLWludGVnZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNqSSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsZUFBZSxFQUFzQixNQUFNLG9DQUFvQyxDQUFBO0FBRXRILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBRTdELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBUzdELE1BQU0sT0FBTyw2QkFBNkI7SUFXeEMsWUFDVSxJQUF1QixFQUN2QixxQkFBbUQsRUFDdEIsVUFBaUU7O1FBRjlGLFNBQUksR0FBSixJQUFJLENBQW1CO1FBQ3ZCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBOEI7UUFYNUMsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFBO1FBYzdDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQTtRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDekUsSUFBSSxDQUFDLEdBQUcsR0FBRyxTQUFTLElBQUksU0FBUyxDQUFDLEdBQUcsQ0FBQTtRQUNyQyxJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFBO1FBQy9DLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUE7UUFDN0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBQSxNQUFBLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRSxPQUFPLDBDQUFFLGNBQWMsMENBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxJQUFJLE9BQU8sQ0FBQTtRQUU1RyxJQUFJLFNBQVMsRUFBRTtZQUNiLFNBQVMsQ0FBQyxPQUFPO2lCQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2lCQUNwQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFDckMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMsQ0FBQTtvQkFDekUsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQTtpQkFDekI7Z0JBRUQsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRTtvQkFDdkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUE7b0JBQzdDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUE7aUJBQ3pCO1lBQ0gsQ0FBQyxDQUFDLENBQUE7U0FDTDtJQUNILENBQUM7SUFFRCxRQUFRLEtBQUksQ0FBQztJQUViLFdBQVc7UUFDVCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFBO1FBQzFCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDaEMsQ0FBQztJQUVPLGNBQWMsQ0FBQyxZQUFrQixFQUFFLFNBQTRFOztRQUNySCxNQUFNLE1BQU0sR0FBRyxNQUFBLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRSxPQUFPLDBDQUFFLGNBQWMsQ0FBQTtRQUNqRCxNQUFNLGFBQWEsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUM5RCxJQUFJLENBQUMsaUJBQWlCLENBQUMscUJBQXFCLENBQUMsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFlBQVksQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7UUFDdkYsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUksT0FBTyxDQUFBO1FBQzNFLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxnQkFBZ0IsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDekYsTUFBTSxNQUFNLEdBQUcsR0FBSSxnQkFBaUIsTUFBTSxDQUFBO1FBRTFDLE9BQU8sYUFBYSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFBO0lBQ25GLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxHQUFTLEVBQUUsU0FBZ0U7UUFDbkcsTUFBTSxTQUFTLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDbEYsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQTtJQUNsRSxDQUFDOzs7WUFuRUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw4QkFBOEI7Z0JBQ3hDLHFQQUF1RDtnQkFFdkQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7WUFoQmlDLGlCQUFpQjtZQUkxQyw0QkFBNEI7NENBMkJoQyxRQUFRLFlBQUksTUFBTSxTQUFDLGVBQWU7OztvQkFWcEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcm1hdE51bWJlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHsgVGFibGVDZWxsVHlwZXNIZWxwZXJzU2VydmljZSwgVEFCTEVfQ0VMTF9EQVRBLCBUaGVTZWFtVGFibGVDb2x1bW4gfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuaW1wb3J0IHR5cGUgeyBUYWJsZUNlbGxEYXRhIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZSdcbmltcG9ydCB7IG5vdE51bGxPclVuZGVmaW5lZCB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi91dGlscydcblxuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJ1xuaW1wb3J0IHsgVGFibGVDZWxsVHlwZUNvbmZpZ0ludGVnZXIgfSBmcm9tICcuL3RhYmxlLWNlbGwtdHlwZS1pbnRlZ2VyLWNvbmZpZydcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VhbS10YWJsZS1jZWxsLXR5cGUtaW50ZWdlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJsZS1jZWxsLXR5cGUtaW50ZWdlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLWNlbGwtdHlwZS1pbnRlZ2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlQ2VsbFR5cGVJbnRlZ2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpXG5cbiAgQElucHV0KCkgdmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWRcblxuICByb3c/OiBhbnlcbiAgcm93SW5kZXg/OiBudW1iZXJcbiAgY29sRGF0YT86IFRoZVNlYW1UYWJsZUNvbHVtbjwnaW50ZWdlcicsIFRhYmxlQ2VsbFR5cGVDb25maWdJbnRlZ2VyPlxuICB0ZXh0QWxpZ24/OiAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCdcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9jZGY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgX3RhYmxlQ2VsbFR5cGVIZWxwZXJzOiBUYWJsZUNlbGxUeXBlc0hlbHBlcnNTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVEFCTEVfQ0VMTF9EQVRBKSBfdGFibGVEYXRhPzogVGFibGVDZWxsRGF0YTwnaW50ZWdlcicsIFRhYmxlQ2VsbFR5cGVDb25maWdJbnRlZ2VyPlxuICApIHtcbiAgICBjb25zdCB0YWJsZURhdGEgPSBfdGFibGVEYXRhXG4gICAgdGhpcy52YWx1ZSA9IHRhYmxlRGF0YSAmJiB0aGlzLl9mb3JtYXRJbnRlZ2VyKHRhYmxlRGF0YS52YWx1ZSwgdGFibGVEYXRhKVxuICAgIHRoaXMucm93ID0gdGFibGVEYXRhICYmIHRhYmxlRGF0YS5yb3dcbiAgICB0aGlzLnJvd0luZGV4ID0gdGFibGVEYXRhICYmIHRhYmxlRGF0YS5yb3dJbmRleFxuICAgIHRoaXMuY29sRGF0YSA9IHRhYmxlRGF0YSAmJiB0YWJsZURhdGEuY29sRGF0YVxuICAgIHRoaXMudGV4dEFsaWduID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZSh0YWJsZURhdGE/LmNvbERhdGE/LmNlbGxUeXBlQ29uZmlnPy50ZXh0QWxpZ24sIHRhYmxlRGF0YSkgfHwgJ3JpZ2h0J1xuXG4gICAgaWYgKHRhYmxlRGF0YSkge1xuICAgICAgdGFibGVEYXRhLmNoYW5nZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKHYgPT4ge1xuICAgICAgICAgIGlmICh2LmNoYW5nZXMuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLl9mb3JtYXRJbnRlZ2VyKHYuY2hhbmdlcy52YWx1ZS5jdXJyZW50VmFsdWUsIHRhYmxlRGF0YSlcbiAgICAgICAgICAgIHRoaXMuX2NkZi5tYXJrRm9yQ2hlY2soKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh2LmNoYW5nZXMuaGFzT3duUHJvcGVydHkoJ2NvbERhdGEnKSkge1xuICAgICAgICAgICAgdGhpcy5jb2xEYXRhID0gdi5jaGFuZ2VzLmNvbERhdGEuY3VycmVudFZhbHVlXG4gICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpXG4gIH1cblxuICBwcml2YXRlIF9mb3JtYXRJbnRlZ2VyKGN1cnJlbnRWYWx1ZT86IGFueSwgdGFibGVEYXRhPzogVGFibGVDZWxsRGF0YTwnaW50ZWdlcicsIFRhYmxlQ2VsbFR5cGVDb25maWdJbnRlZ2VyPiB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gICAgY29uc3QgY29uZmlnID0gdGFibGVEYXRhPy5jb2xEYXRhPy5jZWxsVHlwZUNvbmZpZ1xuICAgIGNvbnN0IGZvcm1hdEludGVnZXIgPSBub3ROdWxsT3JVbmRlZmluZWQoY29uZmlnPy5mb3JtYXROdW1iZXIpID9cbiAgICAgIHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29lcmNlQm9vbGVhblByb3BlcnR5KGNvbmZpZz8uZm9ybWF0TnVtYmVyKSwgdGFibGVEYXRhKSA6IHRydWVcbiAgICBjb25zdCBsb2NhbGUgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZz8ubG9jYWxlLCB0YWJsZURhdGEpIHx8ICdlbi1VUydcbiAgICBjb25zdCBtaW5JbnRlZ2VyRGlnaXRzID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWc/Lm1pbkludGVnZXJEaWdpdHMsIHRhYmxlRGF0YSkgfHwgMVxuICAgIGNvbnN0IGZvcm1hdCA9IGAkeyBtaW5JbnRlZ2VyRGlnaXRzIH0uMC0wYFxuXG4gICAgcmV0dXJuIGZvcm1hdEludGVnZXIgPyBmb3JtYXROdW1iZXIoY3VycmVudFZhbHVlLCBsb2NhbGUsIGZvcm1hdCApIDogY3VycmVudFZhbHVlXG4gIH1cblxuICBwcml2YXRlIF9wYXJzZUNvbmZpZ1ZhbHVlKHZhbD86IGFueSwgdGFibGVEYXRhPzogVGFibGVDZWxsRGF0YTwnaW50ZWdlcicsIFRhYmxlQ2VsbFR5cGVDb25maWdJbnRlZ2VyPikge1xuICAgIGNvbnN0IGNvbnRleHRGbiA9ICgpID0+IHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLmdldFZhbHVlQ29udGV4dCh2YWwsIHRhYmxlRGF0YSlcbiAgICByZXR1cm4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMucGFyc2VWYWx1ZVByb3AodmFsLCBjb250ZXh0Rm4pXG4gIH1cblxufVxuIl19
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLWludGVnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3RhYmxlLWNlbGwtdHlwZXMvdGFibGUtY2VsbC10eXBlLWludGVnZXIvdGFibGUtY2VsbC10eXBlLWludGVnZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNqSSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsZUFBZSxFQUFzQixNQUFNLG9DQUFvQyxDQUFBO0FBRXRILE9BQU8sRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUV4RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQVM3RCxNQUFNLE9BQU8sNkJBQTZCO0lBV3hDLFlBQ1UsSUFBdUIsRUFDdkIscUJBQW1ELEVBQ3RCLFVBQWlFOztRQUY5RixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQThCO1FBWDVDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQWM3QyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUE7UUFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBQ3pFLElBQUksQ0FB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QUE7UUFDM0UsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLGdCQUFnQixFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUN6RixNQUFNLE1BQU0sR0FBRyxHQUFJLGdCQUFpQixNQUFNLENBQUE7UUFFMUMsT0FBTyxhQUFhLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUE7SUFDbkYsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEdBQVMsRUFBRSxTQUFnRTtRQUNuRyxNQUFNLFNBQVMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQTtRQUNsRixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQ2xFLENBQUM7OztZQWxGRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDhCQUE4QjtnQkFDeEMscVBBQXVEO2dCQUV2RCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQWhCaUMsaUJBQWlCO1lBSTFDLDRCQUE0Qjs0Q0EyQmhDLFFBQVEsWUFBSSxNQUFNLFNBQUMsZUFBZTs7O29CQVZwQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZm9ybWF0TnVtYmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBUYWJsZUNlbGxUeXBlc0hlbHBlcnNTZXJ2aWNlLCBUQUJMRV9DRUxMX0RBVEEsIFRoZVNlYW1UYWJsZUNvbHVtbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi90YWJsZS1jZWxsLXR5cGUnXG5pbXBvcnQgdHlwZSB7IFRhYmxlQ2VsbERhdGEgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuaW1wb3J0IHsgaXNOdW1lcmljLCBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVDb25maWdJbnRlZ2VyIH0gZnJvbSAnLi90YWJsZS1jZWxsLXR5cGUtaW50ZWdlci1jb25maWcnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGFibGUtY2VsbC10eXBlLWludGVnZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUtY2VsbC10eXBlLWludGVnZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS1jZWxsLXR5cGUtaW50ZWdlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNlbGxUeXBlSW50ZWdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKVxuXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkXG5cbiAgcm93PzogYW55XG4gIHJvd0luZGV4PzogbnVtYmVyXG4gIGNvbERhdGE/OiBUaGVTZWFtVGFibGVDb2x1bW48J2ludGVnZXInLCBUYWJsZUNlbGxUeXBlQ29uZmlnSW50ZWdlcj5cbiAgdGV4dEFsaWduPzogJ2xlZnQnIHwgJ2NlbnRlcicgfCAncmlnaHQnXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfY2RmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIF90YWJsZUNlbGxUeXBlSGVscGVyczogVGFibGVDZWxsVHlwZXNIZWxwZXJzU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRBQkxFX0NFTExfREFUQSkgX3RhYmxlRGF0YT86IFRhYmxlQ2VsbERhdGE8J2ludGVnZXInLCBUYWJsZUNlbGxUeXBlQ29uZmlnSW50ZWdlcj5cbiAgKSB7XG4gICAgY29uc3QgdGFibGVEYXRhID0gX3RhYmxlRGF0YVxuICAgIHRoaXMudmFsdWUgPSB0YWJsZURhdGEgJiYgdGhpcy5fZm9ybWF0SW50ZWdlcih0YWJsZURhdGEudmFsdWUsIHRhYmxlRGF0YSlcbiAgICB0aGlzLnJvdyA9IHRhYmxlRGF0YSAmJiB0YWJsZURhdGEucm93XG4gICAgdGhpcy5yb3dJbmRleCA9IHRhYmxlRGF0YSAmJiB0YWJsZURhdGEucm93SW5kZXhcbiAgICB0aGlzLmNvbERhdGEgPSB0YWJsZURhdGEgJiYgdGFibGVEYXRhLmNvbERhdGFcbiAgICB0aGlzLnRleHRBbGlnbiA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUodGFibGVEYXRhPy5jb2xEYXRhPy5jZWxsVHlwZUNvbmZpZz8udGV4dEFsaWduLCB0YWJsZURhdGEpIHx8ICdyaWdodCdcblxuICAgIGlmICh0YWJsZURhdGEpIHtcbiAgICAgIHRhYmxlRGF0YS5jaGFuZ2VkXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSh2ID0+IHtcbiAgICAgICAgICBpZiAodi5jaGFuZ2VzLmhhc093blByb3BlcnR5KCd2YWx1ZScpKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5fZm9ybWF0SW50ZWdlcih2LmNoYW5nZXMudmFsdWUuY3VycmVudFZhbHVlLCB0YWJsZURhdGEpXG4gICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodi5jaGFuZ2VzLmhhc093blByb3BlcnR5KCdjb2xEYXRhJykpIHtcbiAgICAgICAgICAgIHRoaXMuY29sRGF0YSA9IHYuY2hhbmdlcy5jb2xEYXRhLmN1cnJlbnRWYWx1ZVxuICAgICAgICAgICAgdGhpcy5fY2RmLm1hcmtGb3JDaGVjaygpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge31cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgcHJpdmF0ZSBfZm9ybWF0SW50ZWdlcihjdXJyZW50VmFsdWU/OiBhbnksIHRhYmxlRGF0YT86IFRhYmxlQ2VsbERhdGE8J2ludGVnZXInLCBUYWJsZUNlbGxUeXBlQ29uZmlnSW50ZWdlcj4gfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRhYmxlRGF0YT8uY29sRGF0YT8uY2VsbFR5cGVDb25maWdcbiAgICBjb25zdCBkZWZhdWx0VG9FbXB0eSA9IG5vdE51bGxPclVuZGVmaW5lZChjb25maWc/LmRlZmF1bHRUb0VtcHR5KSA/XG4gICAgICB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShjb25maWc/LmRlZmF1bHRUb0VtcHR5KSwgdGFibGVEYXRhKSA6IHRydWVcbiAgICBjb25zdCBmb3JtYXRJbnRlZ2VyID0gbm90TnVsbE9yVW5kZWZpbmVkKGNvbmZpZz8uZm9ybWF0TnVtYmVyKSA/XG4gICAgICB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShjb25maWc/LmZvcm1hdE51bWJlciksIHRhYmxlRGF0YSkgOiB0cnVlXG4gICAgY29uc3QgdmFsdWVJc051bWVyaWMgPSBpc051bWVyaWMoY3VycmVudFZhbHVlKVxuXG4gICAgLy8gdW5wYXJzZWFibGUgdmFsdWVzIGFyZSBPSyB0byByZXR1cm4gYXMgbG9uZyBhcyB3ZSdyZSBub3QgdHJ5aW5nIHRvIGZvcm1hdCB0aGVtXG4gICAgaWYgKCF2YWx1ZUlzTnVtZXJpYyAmJiBmb3JtYXRJbnRlZ2VyKSB7XG4gICAgICBpZiAoZGVmYXVsdFRvRW1wdHkpIHtcbiAgICAgICAgLy8gcmV0dXJuIGVtcHR5IHN0cmluZyBpbnN0ZWFkIG9mIDAgd2hlbiBjdXJyZW50VmFsdWUgaXMgZW1wdHkgb3IgdW5wYXJzZWFibGVcbiAgICAgICAgcmV0dXJuICcnXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBzZXQgbm9uLW51bWVyaWMgdmFsdWUgdG8gMCBzbyBpdCBjYW4gYmUgZm9ybWF0dGVkIHRoZSBzYW1lIGFzIG90aGVyIG51bWJlcnNcbiAgICAgICAgY3VycmVudFZhbHVlID0gMFxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGxvY2FsZSA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnPy5sb2NhbGUsIHRhYmxlRGF0YSkgfHwgJ2VuLVVTJ1xuICAgIGNvbnN0IG1pbkludGVnZXJEaWdpdHMgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZz8ubWluSW50ZWdlckRpZ2l0cywgdGFibGVEYXRhKSB8fCAxXG4gICAgY29uc3QgZm9ybWF0ID0gYCR7IG1pbkludGVnZXJEaWdpdHMgfS4wLTBgXG5cbiAgICByZXR1cm4gZm9ybWF0SW50ZWdlciA/IGZvcm1hdE51bWJlcihjdXJyZW50VmFsdWUsIGxvY2FsZSwgZm9ybWF0ICkgOiBjdXJyZW50VmFsdWVcbiAgfVxuXG4gIHByaXZhdGUgX3BhcnNlQ29uZmlnVmFsdWUodmFsPzogYW55LCB0YWJsZURhdGE/OiBUYWJsZUNlbGxEYXRhPCdpbnRlZ2VyJywgVGFibGVDZWxsVHlwZUNvbmZpZ0ludGVnZXI+KSB7XG4gICAgY29uc3QgY29udGV4dEZuID0gKCkgPT4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMuZ2V0VmFsdWVDb250ZXh0KHZhbCwgdGFibGVEYXRhKVxuICAgIHJldHVybiB0aGlzLl90YWJsZUNlbGxUeXBlSGVscGVycy5wYXJzZVZhbHVlUHJvcCh2YWwsIGNvbnRleHRGbilcbiAgfVxuXG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLXN0cmluZy1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGFibGUtY2VsbC10eXBlcy90YWJsZS1jZWxsLXR5cGUtc3RyaW5nL3RhYmxlLWNlbGwtdHlwZS1zdHJpbmctY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEeW5hbWljQWN0aW9uTGlua0RlZiwgRHluYW1pY0FjdGlvbk1vZGFsRGVmLCBEeW5hbWljVmFsdWUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZHluYW1pYydcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVDb25maWcgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuXG5leHBvcnQgdHlwZSBUYWJsZUNlbGxUeXBlU3RyaW5nQ29uZmlnQWN0aW9uID1cbiAgRHluYW1pY0FjdGlvbkxpbmtEZWYgfFxuICBEeW5hbWljQWN0aW9uTW9kYWxEZWZcblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nIGV4dGVuZHMgVGFibGVDZWxsVHlwZUNvbmZpZzwnc3RyaW5nJz4ge1xuICBhY3Rpb24/OiBUYWJsZUNlbGxUeXBlU3RyaW5nQ29uZmlnQWN0aW9uXG5cbiAgLyoqXG4gICAqIEVsZW1lbnQgdGl0bGUgYXR0cmlidXRlLlxuICAgKi9cbiAgdGl0bGVBdHRyPzogRHluYW1pY1ZhbHVlPHN0cmluZz5cbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLXN0cmluZy1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGFibGUtY2VsbC10eXBlcy90YWJsZS1jZWxsLXR5cGUtc3RyaW5nL3RhYmxlLWNlbGwtdHlwZS1zdHJpbmctY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEeW5hbWljQWN0aW9uTGlua0RlZiwgRHluYW1pY0FjdGlvbk1vZGFsRGVmLCBEeW5hbWljVmFsdWUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZHluYW1pYydcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVDb25maWcgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdGFibGUtY2VsbC10eXBlJ1xuXG5leHBvcnQgdHlwZSBUYWJsZUNlbGxUeXBlU3RyaW5nQ29uZmlnQWN0aW9uID1cbiAgRHluYW1pY0FjdGlvbkxpbmtEZWYgfFxuICBEeW5hbWljQWN0aW9uTW9kYWxEZWZcblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nIGV4dGVuZHMgVGFibGVDZWxsVHlwZUNvbmZpZzwnc3RyaW5nJz4ge1xuICBhY3Rpb24/OiBUYWJsZUNlbGxUeXBlU3RyaW5nQ29uZmlnQWN0aW9uXG5cbiAgLyoqXG4gICAqIEVsZW1lbnQgdGl0bGUgYXR0cmlidXRlLlxuICAgKi9cbiAgdGl0bGVBdHRyPzogRHluYW1pY1ZhbHVlPHN0cmluZz5cblxuICAvKipcbiAgICogU3R5bGVzIGFkZGVkIHRvIHRoZSByb290IGNlbGwgZWxlbWVudHMgYHN0eWxlYCBhdHRyaWJ1dGUuXG4gICAqL1xuICAvLyBUT0RPOiByZWZhY3RvciBUYWJsZUNlbGxUeXBlQ29uZmlnIHN0eWxlcyBvYmogdG8gYmUgZHluYW1pYz9cbiAgc3R5bGVBdHRyPzogRHluYW1pY1ZhbHVlPHN0cmluZyB8IHN0cmluZ1tdPlxuXG4gIC8qKlxuICAgKiBDbGFzc2VzIGFkZGVkIHRvIHRoZSByb290IGNlbGwgZWxlbWVudHMgYGNsYXNzYCBhdHRyaWJ1dGUuXG4gICAqL1xuICAvLyBUT0RPOiByZWZhY3RvciBUYWJsZUNlbGxUeXBlQ29uZmlnIGNzc0NsYXNzIG9iaiB0byBiZSBkeW5hbWljP1xuICBjbGFzc0F0dHI/OiBEeW5hbWljVmFsdWU8c3RyaW5nIHwgc3RyaW5nW10+XG5cbn1cbiJdfQ==
@@ -39,12 +39,18 @@ export class TableCellTypeStringComponent {
39
39
  set config(value) {
40
40
  this._config = value;
41
41
  if (value) {
42
- this.setAction(value.action);
42
+ this.setConfig(value);
43
43
  }
44
44
  }
45
- set title(value) { this.title = value; }
45
+ set title(value) { this._title = value; }
46
46
  get title() { return this._title; }
47
47
  get _titleAttr() { return this.title || this.value; }
48
+ set style(value) { this._style = value; }
49
+ get style() { return this._style; }
50
+ get _styleAttr() { return this.style; }
51
+ set classAttr(value) { this._class = value; }
52
+ get classAttr() { return this._class; }
53
+ get _classAttr() { return this.classAttr; }
48
54
  ngOnInit() {
49
55
  const _data = this._tableData;
50
56
  if (_data) {
@@ -105,6 +111,24 @@ export class TableCellTypeStringComponent {
105
111
  this._detectMimeContent = detectMimeContent;
106
112
  this._queryParams = queryParams;
107
113
  }
114
+ setConfig(config) {
115
+ if (!config) {
116
+ return;
117
+ }
118
+ const title = this._parseConfigValue(config.titleAttr);
119
+ if (title) {
120
+ this.title = title;
121
+ }
122
+ const style = this._parseConfigValue(config.styleAttr);
123
+ if (style) {
124
+ this.style = style;
125
+ }
126
+ const classAttr = this._parseConfigValue(config.classAttr);
127
+ if (classAttr) {
128
+ this.classAttr = classAttr;
129
+ }
130
+ this.setAction(config.action);
131
+ }
108
132
  _parseConfigValue(val) {
109
133
  const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, this._tableCellData);
110
134
  return this._tableCellTypeHelpers.parseValueProp(val, contextFn);
@@ -145,6 +169,10 @@ TableCellTypeStringComponent.propDecorators = {
145
169
  value: [{ type: Input }],
146
170
  config: [{ type: Input }],
147
171
  title: [{ type: Input }],
148
- _titleAttr: [{ type: HostBinding, args: ['attr.title',] }]
172
+ _titleAttr: [{ type: HostBinding, args: ['attr.title',] }],
173
+ style: [{ type: Input }],
174
+ _styleAttr: [{ type: HostBinding, args: ['attr.style',] }],
175
+ classAttr: [{ type: Input }],
176
+ _classAttr: [{ type: HostBinding, args: ['class',] }]
149
177
  };
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLXN0cmluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGFibGUtY2VsbC10eXBlcy90YWJsZS1jZWxsLXR5cGUtc3RyaW5nL3RhYmxlLWNlbGwtdHlwZS1zdHJpbmcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1QsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUM5QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFMUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQWVsRyxNQUFNLE9BQU8sNEJBQTRCO0lBbUR2QyxZQUNtQixJQUF1QixFQUN2QixxQkFBbUQsRUFDaEQsVUFBK0IsRUFDL0IsTUFBdUIsRUFDRyxVQUErRDtRQUo1RixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQThCO1FBQ2hELGVBQVUsR0FBVixVQUFVLENBQXFCO1FBQy9CLFdBQU0sR0FBTixNQUFNLENBQWlCO1FBQ0csZUFBVSxHQUFWLFVBQVUsQ0FBcUQ7UUF0RDlGLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQTBCL0MsYUFBUSxHQUF1QixTQUFTLENBQUE7UUFxQnhDLGVBQVUsR0FBRyxLQUFLLENBQUE7UUFTaEIsTUFBTSxLQUFLLEdBQUcsVUFB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QyxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFDekIsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQ25DLENBQUE7U0FDSjtJQUNILENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsMkJBQTJCLEVBQUUsQ0FBQTtTQUM5QzthQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLDJCQUEyQixFQUFFLENBQUE7U0FDMUM7SUFDSCxDQUFDOzs7WUFwS0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw2QkFBNkI7Z0JBQ3ZDLGdxREFBc0Q7Z0JBRXRELElBQUksRUFBRSxFQUFHO2dCQUNULGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNoRDs7O1lBNUJDLGlCQUFpQjtZQWNWLDRCQUE0QjtZQUY1QixrQkFBa0IsdUJBdUV0QixRQUFRO1lBdEVKLGNBQWMsdUJBdUVsQixRQUFROzRDQUNSLFFBQVEsWUFBSSxNQUFNLFNBQUMsZUFBZTs7O29CQXBEcEMsS0FBSztxQkFjTCxLQUFLO29CQXlCTCxLQUFLO3lCQUlMLFdBQVcsU0FBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IERhdGF0YWJsZUNvbXBvbmVudCB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9kYXRhdGFibGUnXG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi90YWJsZSdcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVzSGVscGVyc1NlcnZpY2UsIFRBQkxFX0NFTExfREFUQSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi90YWJsZS1jZWxsLXR5cGUnXG5pbXBvcnQgdHlwZSB7IFRhYmxlQ2VsbERhdGEsIFRoZVNlYW1UYWJsZUNvbHVtbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi90YWJsZS1jZWxsLXR5cGUnXG5cblxuaW1wb3J0IHsgVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZywgVGFibGVDZWxsVHlwZVN0cmluZ0NvbmZpZ0FjdGlvbiB9IGZyb20gJy4vdGFibGUtY2VsbC10eXBlLXN0cmluZy1jb25maWcnXG5cbmV4cG9ydCB0eXBlIFN0cmluZ1RlbXBsYXRlVHlwZSA9ICdkZWZhdWx0JyB8ICdsaW5rJyB8ICdsaW5rLWV4dGVybmFsJyB8ICdsaW5rLWVuY3J5cHRlZCcgfCAnYnV0dG9uJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXRhYmxlLWNlbGwtdHlwZS1zdHJpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUtY2VsbC10eXBlLXN0cmluZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLWNlbGwtdHlwZS1zdHJpbmcuY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDogeyB9LFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNlbGxUeXBlU3RyaW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpXG5cbiAgQElucHV0KClcbiAgZ2V0IHZhbHVlKCkgeyByZXR1cm4gdGhpcy5fdmFsdWUgfVxuICBzZXQgdmFsdWUodmFsOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWxcbiAgICAvLyBUT0RPOiBUaGlzIGlzIHRlbXBvcmFyeSB0byB0ZXN0IHRoZSBmZWF0dXJlIGFuZCB3aWxsIGJlIGZpeGVkIHdoZW4gdGhlXG4gICAgLy8gZHluYW1pYyBjb2x1bW4gZGF0YSBpcyBmaXhlZC4gVGhlIHBsYW4gaXMgdG8gYWRkIGEgY29uZmlnIHRvZ2dsZSB0b1xuICAgIC8vIGFsd2F5cyBlbmFibGUgYW5kIGRlcGVuZGluZyBvbiBwZXJmb3JtYW5jZSBpdCBjb3VsZCB0cnkgdG8gZGVjaWRlIG9uIGl0c1xuICAgIC8vIG93biBiYXNlZCBvbiBjb250ZW50IHNpemUuXG4gICAgaWYgKHRoaXMudmFsdWUgJiYgdGhpcy52YWx1ZS5sZW5ndGggPiAzMCkge1xuICAgICAgdGhpcy5jYW5Qb3BvdmVyID0gdHJ1ZVxuICAgIH1cbiAgfVxuICBfdmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWRcblxuICBASW5wdXQoKVxuICBnZXQgY29uZmlnKCkgeyByZXR1cm4gdGhpcy5fY29uZmlnIH1cbiAgc2V0IGNvbmZpZyh2YWx1ZTogVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpIHtcbiAgICB0aGlzLl9jb25maWcgPSB2YWx1ZVxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zZXRBY3Rpb24odmFsdWUuYWN0aW9uKVxuICAgIH1cbiAgfVxuICBwcml2YXRlIF9jb25maWc6IFRhYmxlQ2VsbFR5cGVDb25maWdTdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgX3RwbFR5cGU6IFN0cmluZ1RlbXBsYXRlVHlwZSA9ICdkZWZhdWx0J1xuICBfbGluaz86IHN0cmluZ1xuICBfdGl0bGU/OiBzdHJpbmdcbiAgX3F1ZXJ5UGFyYW1zPzogeyBbazogc3RyaW5nXTogYW55IH1cblxuICBfYnV0dG9uQWN0aW9uPzogVGFibGVDZWxsVHlwZVN0cmluZ0NvbmZpZ0FjdGlvblxuXG4gIF90YWJsZUNlbGxEYXRhPzogVGFibGVDZWxsRGF0YTwnc3RyaW5nJywgVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZz5cbiAgX3Jvdz86IGFueVxuICBfcm93SW5kZXg/OiBudW1iZXJcbiAgX2NvbERhdGE/OiBUaGVTZWFtVGFibGVDb2x1bW48J3N0cmluZycsIFRhYmxlQ2VsbFR5cGVDb25maWdTdHJpbmc+XG5cbiAgX2Rvd25sb2FkPzogYm9vbGVhblxuICBfZGV0ZWN0TWltZUNvbnRlbnQ/OiBib29sZWFuXG5cbiAgQElucHV0KClcbiAgc2V0IHRpdGxlKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHsgdGhpcy50aXRsZSA9IHZhbHVlIH1cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7IHJldHVybiB0aGlzLl90aXRsZSB9XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRpdGxlJykgZ2V0IF90aXRsZUF0dHIoKSB7IHJldHVybiB0aGlzLnRpdGxlIHx8IHRoaXMudmFsdWUgfVxuXG4gIGNhblBvcG92ZXIgPSBmYWxzZVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2NkZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfdGFibGVDZWxsVHlwZUhlbHBlcnM6IFRhYmxlQ2VsbFR5cGVzSGVscGVyc1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfZGF0YXRhYmxlPzogRGF0YXRhYmxlQ29tcG9uZW50LFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX3RhYmxlPzogVGFibGVDb21wb25lbnQsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChUQUJMRV9DRUxMX0RBVEEpIHJlYWRvbmx5IF90YWJsZURhdGE/OiBUYWJsZUNlbGxEYXRhPCdzdHJpbmcnLCBUYWJsZUNlbGxUeXBlQ29uZmlnU3RyaW5nPlxuICApIHtcbiAgICBjb25zdCBfZGF0YSA9IF90YWJsZURhdGFcbiAgICB0aGlzLl90YWJsZUNlbGxEYXRhID0gX3RhYmxlRGF0YVxuXG4gICAgdGhpcy5fcm93ID0gX2RhdGEgJiYgX2RhdGEucm93XG4gICAgdGhpcy5fcm93SW5kZXggPSBfZGF0YSAmJiBfZGF0YS5yb3dJbmRleFxuXG4gICAgdGhpcy52YWx1ZSA9IF9kYXRhICYmIF9kYXRhLnZhbHVlXG4gICAgdGhpcy5fY29sRGF0YSA9IF9kYXRhICYmIF9kYXRhLmNvbERhdGFcbiAgICBpZiAoX2RhdGEgJiYgX2RhdGEuY29sRGF0YSAmJiAoPGFueT5fZGF0YS5jb2xEYXRhKS5jZWxsVHlwZUNvbmZpZykge1xuICAgICAgdGhpcy5jb25maWcgPSAoPGFueT5fZGF0YS5jb2xEYXRhKS5jZWxsVHlwZUNvbmZpZ1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IF9kYXRhID0gdGhpcy5fdGFibGVEYXRhXG4gICAgaWYgKF9kYXRhKSB7XG4gICAgICBfZGF0YS5jaGFuZ2VkXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSh2ID0+IHtcbiAgICAgICAgICBpZiAodi5jaGFuZ2VzLmhhc093blByb3BlcnR5KCd2YWx1ZScpKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gdi5jaGFuZ2VzLnZhbHVlLmN1cnJlbnRWYWx1ZVxuICAgICAgICAgICAgdGhpcy5fY2RmLm1hcmtGb3JDaGVjaygpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHYuY2hhbmdlcy5oYXNPd25Qcm9wZXJ0eSgnY29sRGF0YScpKSB7XG4gICAgICAgICAgICBjb25zdCBjb2xEYXRhID0gdi5jaGFuZ2VzLmNvbERhdGEuY3VycmVudFZhbHVlXG4gICAgICAgICAgICBpZiAoY29sRGF0YSAmJiBjb2xEYXRhLmNlbGxUeXBlQ29uZmlnICE9PSB0aGlzLmNvbmZpZykge1xuICAgICAgICAgICAgICB0aGlzLmNvbmZpZyA9IGNvbERhdGEuY2VsbFR5cGVDb25maWdcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuY29uZmlnID0gdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHYuY2hhbmdlcy5oYXNPd25Qcm9wZXJ0eSgncm93JykpIHtcbiAgICAgICAgICAgICAgdGhpcy5jb25maWcgPSB0aGlzLmNvbmZpZ1xuICAgICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgfVxuXG4gIHB1YmxpYyBzZXRBY3Rpb24oY29uZmlnQWN0aW9uPzogVGFibGVDZWxsVHlwZVN0cmluZ0NvbmZpZ0FjdGlvbikge1xuICAgIGxldCBuZXdUcGxUeXBlOiBTdHJpbmdUZW1wbGF0ZVR5cGUgPSAnZGVmYXVsdCdcbiAgICBsZXQgbGluazogc3RyaW5nIHwgdW5kZWZpbmVkXG4gICAgbGV0IGRvd25sb2FkOiBib29sZWFuID0gZmFsc2VcbiAgICBsZXQgZGV0ZWN0TWltZUNvbnRlbnQgPSBmYWxzZVxuICAgIGxldCBxdWVyeVBhcmFtczogeyBbazogc3RyaW5nXTogYW55IH0gfCB1bmRlZmluZWRcblxuICAgIGlmIChjb25maWdBY3Rpb24pIHtcbiAgICAgIGlmIChjb25maWdBY3Rpb24udHlwZSA9PT0gJ2xpbmsnKSB7XG4gICAgICAgIGxpbmsgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5saW5rKVxuICAgICAgICBpZiAobGluayAhPT0gdW5kZWZpbmVkICYmIGxpbmsgIT09IG51bGwpIHtcbiAgICAgICAgICBuZXdUcGxUeXBlID0gdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWdBY3Rpb24uYXNzZXQpID8gJ2xpbmstZW5jcnlwdGVkJyA6ICdsaW5rJ1xuICAgICAgICAgIGRvd25sb2FkID0gISF0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5kb3dubG9hZClcbiAgICAgICAgICBkZXRlY3RNaW1lQ29udGVudCA9ICEhdGhpcy5fcGFyc2VDb25maWdWYWx1ZShjb25maWdBY3Rpb24uZGV0ZWN0TWltZUNvbnRlbnQpXG4gICAgICAgICAgcXVlcnlQYXJhbXMgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5xdWVyeVBhcmFtcylcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChjb25maWdBY3Rpb24udHlwZSA9PT0gJ21vZGFsJykge1xuICAgICAgICBuZXdUcGxUeXBlID0gJ2J1dHRvbidcbiAgICAgICAgdGhpcy5fYnV0dG9uQWN0aW9uID0gY29uZmlnQWN0aW9uXG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fdHBsVHlwZSA9IG5ld1RwbFR5cGVcbiAgICB0aGlzLl9saW5rID0gbGlua1xuICAgIHRoaXMuX2Rvd25sb2FkID0gZG93bmxvYWRcbiAgICB0aGlzLl9kZXRlY3RNaW1lQ29udGVudCA9IGRldGVjdE1pbWVDb250ZW50XG4gICAgdGhpcy5fcXVlcnlQYXJhbXMgPSBxdWVyeVBhcmFtc1xuICB9XG5cbiAgcHJpdmF0ZSBfcGFyc2VDb25maWdWYWx1ZSh2YWw6IGFueSkge1xuICAgIGNvbnN0IGNvbnRleHRGbiA9ICgpID0+IHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLmdldFZhbHVlQ29udGV4dCh2YWwsIHRoaXMuX3RhYmxlQ2VsbERhdGEpXG4gICAgcmV0dXJuIHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLnBhcnNlVmFsdWVQcm9wKHZhbCwgY29udGV4dEZuKVxuICB9XG5cbiAgX2RvQnV0dG9uQWN0aW9uKCkge1xuICAgIGlmICh0aGlzLl9idXR0b25BY3Rpb24gJiYgdGhpcy5fYnV0dG9uQWN0aW9uLnR5cGUgPT09ICdtb2RhbCcpIHtcbiAgICAgIGNvbnN0IGNvbnRleHRGbiA9ICgpID0+IHRoaXMuX3RhYmxlQ2VsbFR5cGVIZWxwZXJzLmdldFZhbHVlQ29udGV4dCh0aGlzLnZhbHVlLCB0aGlzLl90YWJsZUNlbGxEYXRhKVxuICAgICAgdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMuaGFuZGxlTW9kYWxBY3Rpb24odGhpcy5fYnV0dG9uQWN0aW9uLCBjb250ZXh0Rm4pXG4gICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgciA9PiB7fSxcbiAgICAgICAgICBlcnIgPT4gY29uc29sZS5lcnJvcihlcnIpLFxuICAgICAgICAgICgpID0+IHRoaXMuX2FjdGlvblJlZnJlc2hSZXF1ZXN0KClcbiAgICAgICAgKVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2FjdGlvblJlZnJlc2hSZXF1ZXN0KCkge1xuICAgIGlmICh0aGlzLl9kYXRhdGFibGUpIHtcbiAgICAgIHRoaXMuX2RhdGF0YWJsZS50cmlnZ2VyQWN0aW9uUmVmcmVzaFJlcXVlc3QoKVxuICAgIH0gZWxzZSBpZiAodGhpcy5fdGFibGUpIHtcbiAgICAgIHRoaXMuX3RhYmxlLnRyaWdnZXJBY3Rpb25SZWZyZXNoUmVxdWVzdCgpXG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC10eXBlLXN0cmluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGFibGUtY2VsbC10eXBlcy90YWJsZS1jZWxsLXR5cGUtc3RyaW5nL3RhYmxlLWNlbGwtdHlwZS1zdHJpbmcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1QsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUM5QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFMUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQTtBQWVsRyxNQUFNLE9BQU8sNEJBQTRCO0lBa0V2QyxZQUNtQixJQUF1QixFQUN2QixxQkFBbUQsRUFDaEQsVUFBK0IsRUFDL0IsTUFBdUIsRUFDRyxVQUErRDtRQUo1RixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQThCO1FBQ2hELGVBQVUsR0FBVixVQUFVLENBQXFCO1FBQy9CLFdBQU0sR0FBTixNQUFNLENBQWlCO1FBQ0csZUFBVSxHQUFWLFVBQVUsQ0FBcUQ7UUFyRTlGLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQTBCL0MsYUFBUSxHQUF1QixTQUFTLENBQUE7UUFvQ3hDLGVBQVUsR0FBRyxLQUFLLENBQUE7UUFTaEIsTUFBTSxLQUFLLEdBQUcsVUFB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Q0FBQyxHQUFHLENBQUMsRUFDekIsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQ25DLENBQUE7U0FDSjtJQUNILENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsMkJBQTJCLEVBQUUsQ0FBQTtTQUM5QzthQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLDJCQUEyQixFQUFFLENBQUE7U0FDMUM7SUFDSCxDQUFDOzs7WUF4TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw2QkFBNkI7Z0JBQ3ZDLGdxREFBc0Q7Z0JBRXRELElBQUksRUFBRSxFQUFHO2dCQUNULGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNoRDs7O1lBNUJDLGlCQUFpQjtZQWNWLDRCQUE0QjtZQUY1QixrQkFBa0IsdUJBc0Z0QixRQUFRO1lBckZKLGNBQWMsdUJBc0ZsQixRQUFROzRDQUNSLFFBQVEsWUFBSSxNQUFNLFNBQUMsZUFBZTs7O29CQW5FcEMsS0FBSztxQkFjTCxLQUFLO29CQTRCTCxLQUFLO3lCQUlMLFdBQVcsU0FBQyxZQUFZO29CQUV4QixLQUFLO3lCQUlMLFdBQVcsU0FBQyxZQUFZO3dCQUV4QixLQUFLO3lCQUlMLFdBQVcsU0FBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IERhdGF0YWJsZUNvbXBvbmVudCB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9kYXRhdGFibGUnXG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi90YWJsZSdcbmltcG9ydCB7IFRhYmxlQ2VsbFR5cGVzSGVscGVyc1NlcnZpY2UsIFRBQkxFX0NFTExfREFUQSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi90YWJsZS1jZWxsLXR5cGUnXG5pbXBvcnQgdHlwZSB7IFRhYmxlQ2VsbERhdGEsIFRoZVNlYW1UYWJsZUNvbHVtbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi90YWJsZS1jZWxsLXR5cGUnXG5cblxuaW1wb3J0IHsgVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZywgVGFibGVDZWxsVHlwZVN0cmluZ0NvbmZpZ0FjdGlvbiB9IGZyb20gJy4vdGFibGUtY2VsbC10eXBlLXN0cmluZy1jb25maWcnXG5cbmV4cG9ydCB0eXBlIFN0cmluZ1RlbXBsYXRlVHlwZSA9ICdkZWZhdWx0JyB8ICdsaW5rJyB8ICdsaW5rLWV4dGVybmFsJyB8ICdsaW5rLWVuY3J5cHRlZCcgfCAnYnV0dG9uJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXRhYmxlLWNlbGwtdHlwZS1zdHJpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUtY2VsbC10eXBlLXN0cmluZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RhYmxlLWNlbGwtdHlwZS1zdHJpbmcuY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDogeyB9LFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNlbGxUeXBlU3RyaW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpXG5cbiAgQElucHV0KClcbiAgZ2V0IHZhbHVlKCkgeyByZXR1cm4gdGhpcy5fdmFsdWUgfVxuICBzZXQgdmFsdWUodmFsOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWxcbiAgICAvLyBUT0RPOiBUaGlzIGlzIHRlbXBvcmFyeSB0byB0ZXN0IHRoZSBmZWF0dXJlIGFuZCB3aWxsIGJlIGZpeGVkIHdoZW4gdGhlXG4gICAgLy8gZHluYW1pYyBjb2x1bW4gZGF0YSBpcyBmaXhlZC4gVGhlIHBsYW4gaXMgdG8gYWRkIGEgY29uZmlnIHRvZ2dsZSB0b1xuICAgIC8vIGFsd2F5cyBlbmFibGUgYW5kIGRlcGVuZGluZyBvbiBwZXJmb3JtYW5jZSBpdCBjb3VsZCB0cnkgdG8gZGVjaWRlIG9uIGl0c1xuICAgIC8vIG93biBiYXNlZCBvbiBjb250ZW50IHNpemUuXG4gICAgaWYgKHRoaXMudmFsdWUgJiYgdGhpcy52YWx1ZS5sZW5ndGggPiAzMCkge1xuICAgICAgdGhpcy5jYW5Qb3BvdmVyID0gdHJ1ZVxuICAgIH1cbiAgfVxuICBfdmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWRcblxuICBASW5wdXQoKVxuICBnZXQgY29uZmlnKCkgeyByZXR1cm4gdGhpcy5fY29uZmlnIH1cbiAgc2V0IGNvbmZpZyh2YWx1ZTogVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwpIHtcbiAgICB0aGlzLl9jb25maWcgPSB2YWx1ZVxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zZXRDb25maWcodmFsdWUpXG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2NvbmZpZzogVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcblxuICBfdHBsVHlwZTogU3RyaW5nVGVtcGxhdGVUeXBlID0gJ2RlZmF1bHQnXG4gIF9saW5rPzogc3RyaW5nXG4gIF90aXRsZT86IHN0cmluZ1xuICBfcXVlcnlQYXJhbXM/OiB7IFtrOiBzdHJpbmddOiBhbnkgfVxuXG4gIF9zdHlsZT86IHN0cmluZ1xuICBfY2xhc3M/OiBzdHJpbmdcblxuICBfYnV0dG9uQWN0aW9uPzogVGFibGVDZWxsVHlwZVN0cmluZ0NvbmZpZ0FjdGlvblxuXG4gIF90YWJsZUNlbGxEYXRhPzogVGFibGVDZWxsRGF0YTwnc3RyaW5nJywgVGFibGVDZWxsVHlwZUNvbmZpZ1N0cmluZz5cbiAgX3Jvdz86IGFueVxuICBfcm93SW5kZXg/OiBudW1iZXJcbiAgX2NvbERhdGE/OiBUaGVTZWFtVGFibGVDb2x1bW48J3N0cmluZycsIFRhYmxlQ2VsbFR5cGVDb25maWdTdHJpbmc+XG5cbiAgX2Rvd25sb2FkPzogYm9vbGVhblxuICBfZGV0ZWN0TWltZUNvbnRlbnQ/OiBib29sZWFuXG5cbiAgQElucHV0KClcbiAgc2V0IHRpdGxlKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHsgdGhpcy5fdGl0bGUgPSB2YWx1ZSB9XG4gIGdldCB0aXRsZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQgeyByZXR1cm4gdGhpcy5fdGl0bGUgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci50aXRsZScpIGdldCBfdGl0bGVBdHRyKCkgeyByZXR1cm4gdGhpcy50aXRsZSB8fCB0aGlzLnZhbHVlIH1cblxuICBASW5wdXQoKVxuICBzZXQgc3R5bGUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgeyB0aGlzLl9zdHlsZSA9IHZhbHVlIH1cbiAgZ2V0IHN0eWxlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7IHJldHVybiB0aGlzLl9zdHlsZSB9XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnN0eWxlJykgZ2V0IF9zdHlsZUF0dHIoKSB7IHJldHVybiB0aGlzLnN0eWxlIH1cblxuICBASW5wdXQoKVxuICBzZXQgY2xhc3NBdHRyKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHsgdGhpcy5fY2xhc3MgPSB2YWx1ZSB9XG4gIGdldCBjbGFzc0F0dHIoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHsgcmV0dXJuIHRoaXMuX2NsYXNzIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgZ2V0IF9jbGFzc0F0dHIoKSB7IHJldHVybiB0aGlzLmNsYXNzQXR0ciB9XG5cbiAgY2FuUG9wb3ZlciA9IGZhbHNlXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfY2RmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF90YWJsZUNlbGxUeXBlSGVscGVyczogVGFibGVDZWxsVHlwZXNIZWxwZXJzU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9kYXRhdGFibGU/OiBEYXRhdGFibGVDb21wb25lbnQsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfdGFibGU/OiBUYWJsZUNvbXBvbmVudCxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRBQkxFX0NFTExfREFUQSkgcmVhZG9ubHkgX3RhYmxlRGF0YT86IFRhYmxlQ2VsbERhdGE8J3N0cmluZycsIFRhYmxlQ2VsbFR5cGVDb25maWdTdHJpbmc+XG4gICkge1xuICAgIGNvbnN0IF9kYXRhID0gX3RhYmxlRGF0YVxuICAgIHRoaXMuX3RhYmxlQ2VsbERhdGEgPSBfdGFibGVEYXRhXG5cbiAgICB0aGlzLl9yb3cgPSBfZGF0YSAmJiBfZGF0YS5yb3dcbiAgICB0aGlzLl9yb3dJbmRleCA9IF9kYXRhICYmIF9kYXRhLnJvd0luZGV4XG5cbiAgICB0aGlzLnZhbHVlID0gX2RhdGEgJiYgX2RhdGEudmFsdWVcbiAgICB0aGlzLl9jb2xEYXRhID0gX2RhdGEgJiYgX2RhdGEuY29sRGF0YVxuICAgIGlmIChfZGF0YSAmJiBfZGF0YS5jb2xEYXRhICYmICg8YW55Pl9kYXRhLmNvbERhdGEpLmNlbGxUeXBlQ29uZmlnKSB7XG4gICAgICB0aGlzLmNvbmZpZyA9ICg8YW55Pl9kYXRhLmNvbERhdGEpLmNlbGxUeXBlQ29uZmlnXG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgX2RhdGEgPSB0aGlzLl90YWJsZURhdGFcbiAgICBpZiAoX2RhdGEpIHtcbiAgICAgIF9kYXRhLmNoYW5nZWRcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKHYgPT4ge1xuICAgICAgICAgIGlmICh2LmNoYW5nZXMuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSB2LmNoYW5nZXMudmFsdWUuY3VycmVudFZhbHVlXG4gICAgICAgICAgICB0aGlzLl9jZGYubWFya0ZvckNoZWNrKClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodi5jaGFuZ2VzLmhhc093blByb3BlcnR5KCdjb2xEYXRhJykpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbERhdGEgPSB2LmNoYW5nZXMuY29sRGF0YS5jdXJyZW50VmFsdWVcbiAgICAgICAgICAgIGlmIChjb2xEYXRhICYmIGNvbERhdGEuY2VsbFR5cGVDb25maWcgIT09IHRoaXMuY29uZmlnKSB7XG4gICAgICAgICAgICAgIHRoaXMuY29uZmlnID0gY29sRGF0YS5jZWxsVHlwZUNvbmZpZ1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgdGhpcy5jb25maWcgPSB1bmRlZmluZWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuX2NkZi5tYXJrRm9yQ2hlY2soKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodi5jaGFuZ2VzLmhhc093blByb3BlcnR5KCdyb3cnKSkge1xuICAgICAgICAgICAgICB0aGlzLmNvbmZpZyA9IHRoaXMuY29uZmlnXG4gICAgICAgICAgICAgIHRoaXMuX2NkZi5tYXJrRm9yQ2hlY2soKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgcHVibGljIHNldEFjdGlvbihjb25maWdBY3Rpb24/OiBUYWJsZUNlbGxUeXBlU3RyaW5nQ29uZmlnQWN0aW9uKSB7XG4gICAgbGV0IG5ld1RwbFR5cGU6IFN0cmluZ1RlbXBsYXRlVHlwZSA9ICdkZWZhdWx0J1xuICAgIGxldCBsaW5rOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICBsZXQgZG93bmxvYWQ6IGJvb2xlYW4gPSBmYWxzZVxuICAgIGxldCBkZXRlY3RNaW1lQ29udGVudCA9IGZhbHNlXG4gICAgbGV0IHF1ZXJ5UGFyYW1zOiB7IFtrOiBzdHJpbmddOiBhbnkgfSB8IHVuZGVmaW5lZFxuXG4gICAgaWYgKGNvbmZpZ0FjdGlvbikge1xuICAgICAgaWYgKGNvbmZpZ0FjdGlvbi50eXBlID09PSAnbGluaycpIHtcbiAgICAgICAgbGluayA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnQWN0aW9uLmxpbmspXG4gICAgICAgIGlmIChsaW5rICE9PSB1bmRlZmluZWQgJiYgbGluayAhPT0gbnVsbCkge1xuICAgICAgICAgIG5ld1RwbFR5cGUgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5hc3NldCkgPyAnbGluay1lbmNyeXB0ZWQnIDogJ2xpbmsnXG4gICAgICAgICAgZG93bmxvYWQgPSAhIXRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnQWN0aW9uLmRvd25sb2FkKVxuICAgICAgICAgIGRldGVjdE1pbWVDb250ZW50ID0gISF0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZ0FjdGlvbi5kZXRlY3RNaW1lQ29udGVudClcbiAgICAgICAgICBxdWVyeVBhcmFtcyA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnQWN0aW9uLnF1ZXJ5UGFyYW1zKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGNvbmZpZ0FjdGlvbi50eXBlID09PSAnbW9kYWwnKSB7XG4gICAgICAgIG5ld1RwbFR5cGUgPSAnYnV0dG9uJ1xuICAgICAgICB0aGlzLl9idXR0b25BY3Rpb24gPSBjb25maWdBY3Rpb25cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLl90cGxUeXBlID0gbmV3VHBsVHlwZVxuICAgIHRoaXMuX2xpbmsgPSBsaW5rXG4gICAgdGhpcy5fZG93bmxvYWQgPSBkb3dubG9hZFxuICAgIHRoaXMuX2RldGVjdE1pbWVDb250ZW50ID0gZGV0ZWN0TWltZUNvbnRlbnRcbiAgICB0aGlzLl9xdWVyeVBhcmFtcyA9IHF1ZXJ5UGFyYW1zXG4gIH1cblxuICBwdWJsaWMgc2V0Q29uZmlnKGNvbmZpZz86IFRhYmxlQ2VsbFR5cGVDb25maWdTdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIWNvbmZpZykgeyByZXR1cm4gfVxuXG4gICAgY29uc3QgdGl0bGUgPSB0aGlzLl9wYXJzZUNvbmZpZ1ZhbHVlKGNvbmZpZy50aXRsZUF0dHIpXG4gICAgaWYgKHRpdGxlKSB7XG4gICAgICB0aGlzLnRpdGxlID0gdGl0bGVcbiAgICB9XG5cbiAgICBjb25zdCBzdHlsZSA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnLnN0eWxlQXR0cilcbiAgICBpZiAoc3R5bGUpIHtcbiAgICAgIHRoaXMuc3R5bGUgPSBzdHlsZVxuICAgIH1cblxuICAgIGNvbnN0IGNsYXNzQXR0ciA9IHRoaXMuX3BhcnNlQ29uZmlnVmFsdWUoY29uZmlnLmNsYXNzQXR0cilcbiAgICBpZiAoY2xhc3NBdHRyKSB7XG4gICAgICB0aGlzLmNsYXNzQXR0ciA9IGNsYXNzQXR0clxuICAgIH1cblxuICAgIHRoaXMuc2V0QWN0aW9uKGNvbmZpZy5hY3Rpb24pXG4gIH1cblxuICBwcml2YXRlIF9wYXJzZUNvbmZpZ1ZhbHVlKHZhbDogYW55KSB7XG4gICAgY29uc3QgY29udGV4dEZuID0gKCkgPT4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMuZ2V0VmFsdWVDb250ZXh0KHZhbCwgdGhpcy5fdGFibGVDZWxsRGF0YSlcbiAgICByZXR1cm4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMucGFyc2VWYWx1ZVByb3AodmFsLCBjb250ZXh0Rm4pXG4gIH1cblxuICBfZG9CdXR0b25BY3Rpb24oKSB7XG4gICAgaWYgKHRoaXMuX2J1dHRvbkFjdGlvbiAmJiB0aGlzLl9idXR0b25BY3Rpb24udHlwZSA9PT0gJ21vZGFsJykge1xuICAgICAgY29uc3QgY29udGV4dEZuID0gKCkgPT4gdGhpcy5fdGFibGVDZWxsVHlwZUhlbHBlcnMuZ2V0VmFsdWVDb250ZXh0KHRoaXMudmFsdWUsIHRoaXMuX3RhYmxlQ2VsbERhdGEpXG4gICAgICB0aGlzLl90YWJsZUNlbGxUeXBlSGVscGVycy5oYW5kbGVNb2RhbEFjdGlvbih0aGlzLl9idXR0b25BY3Rpb24sIGNvbnRleHRGbilcbiAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICByID0+IHt9LFxuICAgICAgICAgIGVyciA9PiBjb25zb2xlLmVycm9yKGVyciksXG4gICAgICAgICAgKCkgPT4gdGhpcy5fYWN0aW9uUmVmcmVzaFJlcXVlc3QoKVxuICAgICAgICApXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfYWN0aW9uUmVmcmVzaFJlcXVlc3QoKSB7XG4gICAgaWYgKHRoaXMuX2RhdGF0YWJsZSkge1xuICAgICAgdGhpcy5fZGF0YXRhYmxlLnRyaWdnZXJBY3Rpb25SZWZyZXNoUmVxdWVzdCgpXG4gICAgfSBlbHNlIGlmICh0aGlzLl90YWJsZSkge1xuICAgICAgdGhpcy5fdGFibGUudHJpZ2dlckFjdGlvblJlZnJlc2hSZXF1ZXN0KClcbiAgICB9XG4gIH1cblxufVxuIl19
@@ -53,6 +53,14 @@ export class TheSeamTelInputComponent {
53
53
  get disabled() { return this._disabled; }
54
54
  set disabled(value) {
55
55
  const newValue = coerceBooleanProperty(value);
56
+ if (this._control.disabled !== newValue) {
57
+ if (newValue) {
58
+ this._control.disable();
59
+ }
60
+ else {
61
+ this._control.enable();
62
+ }
63
+ }
56
64
  if (newValue !== this.disabled) {
57
65
  this._disabled = newValue;
58
66
  this._changeDetectorRef.markForCheck();
@@ -138,7 +146,7 @@ TheSeamTelInputComponent.decorators = [
138
146
  multi: true
139
147
  }],
140
148
  changeDetection: ChangeDetectionStrategy.OnPush,
141
- styles: [":host{display:block}\n"]
149
+ styles: [":host{display:block}:host[disabled] ::ng-deep .iti--allow-dropdown .iti__flag-container:hover,:host[disabled] ::ng-deep .iti--allow-dropdown .iti__flag-container:hover{cursor:default}:host[disabled] ::ng-deep .iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag,:host[disabled] ::ng-deep .iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag{background-color:transparent}:host[disabled] ::ng-deep .iti--allow-dropdown .iti__arrow{display:none}\n"]
142
150
  },] }
143
151
  ];
144
152
  TheSeamTelInputComponent.ctorParameters = () => [
@@ -164,4 +172,4 @@ TheSeamTelInputComponent.propDecorators = {
164
172
  __decorate([
165
173
  InputBoolean()
166
174
  ], TheSeamTelInputComponent.prototype, "required", void 0);
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZWwtaW5wdXQvdGVsLWlucHV0L3RlbC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQWUsTUFBTSxtQkFBbUIsQ0FBQTtBQUM3RCxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDakcsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osV0FBVyxFQUNYLFFBQVEsRUFDUixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQXdCLFdBQVcsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNoRyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUN2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUU5RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUVqRSxrQkFBa0I7QUFDbEIscUJBQXFCO0FBY3JCLE1BQU0sT0FBTyx3QkFBd0I7SUFzRm5DLFlBQ21CLGtCQUFxQyxFQUNyQyxTQUFtQixFQUNuQixXQUF1QixFQUN2QixhQUEyQjtR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QkFBaUI7d0JBQzFCLGtEQUFrRDt3QkFDbEQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzt3QkFDdkQsS0FBSyxFQUFFLElBQUk7cUJBQ1osQ0FBQztnQkFDRixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQXRDQyxpQkFBaUI7WUFRakIsUUFBUTtZQU5SLFVBQVU7WUFOSCxZQUFZOzs7dUJBeURsQixLQUFLO3VCQUVMLEtBQUs7dUJBa0JMLEtBQUs7NEJBS0wsV0FBVyxTQUFDLGVBQWU7NEJBRzNCLFdBQVcsU0FBQyxlQUFlO21CQUkzQixLQUFLO29CQUdMLEtBQUs7cUJBR0wsTUFBTTtpQ0FNTixTQUFTLFNBQUMsd0JBQXdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFOzhCQU1wRCxTQUFTLFNBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTsrQkFNMUMsU0FBUyxTQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7dUJBRW5DLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBRSxRQUFRLENBQUU7O0FBMURWO0lBQWYsWUFBWSxFQUFFOzBEQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvY3VzTW9uaXRvciwgRm9jdXNPcmlnaW4gfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSdcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdEZsYWdzLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sLCBOZ0NvbnRyb2wsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBkZWZlciwgZnJvbUV2ZW50LCBtZXJnZSwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgYXVkaXRUaW1lLCBtYXAsIHN3aXRjaE1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuaW1wb3J0IHsgSW5wdXREaXJlY3RpdmUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZm9ybS1maWVsZCdcblxuaW1wb3J0IHsgVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi4vdGVsLWlucHV0LmRpcmVjdGl2ZSdcblxuLy8gVE9ETzogRml4IGZvY3VzXG4vLyBUT0RPOiBGaXggZGlzYWJsZWRcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VhbS10ZWwtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVsLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGVsLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLXVzZS1iZWZvcmUtZGVjbGFyZVxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9yZXF1aXJlZDogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KClcblxuICAvKiogQGlnbm9yZSAqL1xuICByZWFkb25seSBfY29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgpXG5cbiAgcHJpdmF0ZSBfZm9jdXNPcmlnaW46IEZvY3VzT3JpZ2luID0gbnVsbFxuXG4gIF9oYXNJbnZhbGlkQ3NzJDogT2JzZXJ2YWJsZTxib29sZWFuPlxuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlXG5cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGlzYWJsZWQgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSlcblxuICAgIGlmIChuZXdWYWx1ZSAhPT0gdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5fZGlzYWJsZWQgPSBuZXdWYWx1ZVxuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRhYiBpbmRleCB0byBgLTFgIHRvIGFsbG93IHRoZSByb290IGVsZW1lbnQgb2YgdGhlXG4gICAqIGNvbXBvbmVudCB0byByZWNlaXZlIGBmb2N1c2AgZXZlbnQgZnJvbSBqYXZhc2NyaXB0LCBidXQgbm90IGdldCBmb2N1c2VkIGJ5XG4gICAqIGtleWJvYXJkIG5hdmlnYXRpb24uXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgdGFiSW5kZXgodmFsdWU6IG51bWJlcikgeyB0aGlzLl90YWJJbmRleCA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKSB9XG4gIGdldCB0YWJJbmRleCgpOiBudW1iZXIgeyByZXR1cm4gdGhpcy5fdGFiSW5kZXggfVxuICBwcml2YXRlIF90YWJJbmRleCA9IC0xXG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRpc2FibGVkJylcbiAgZ2V0IF9hdHRyRGlzYWJsZWQoKSB7IHJldHVybiB0aGlzLmRpc2FibGVkIHx8IG51bGwgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpXG4gIGdldCBfYXR0clRhYkluZGV4KCkgeyByZXR1cm4gdGhpcy5kaXNhYmxlZCA/IC0xIDogKHRoaXMudGFiSW5kZXggfHwgMCkgfVxuXG4gIC8qKiBOYW1lIHZhbHVlIHdpbGwgYmUgYXBwbGllZCB0byB0aGUgaW5wdXQgZWxlbWVudCBpZiBwcmVzZW50ICovXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwgPSBudWxsXG5cbiAgLyoqIFRoZSB2YWx1ZSBhdHRyaWJ1dGUgb2YgdGhlIG5hdGl2ZSBpbnB1dCBlbGVtZW50ICovXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgXCJ0ZWxcIiBpbnB1dCB2YWx1ZSBjaGFuZ2VzLiAqL1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KClcblxuICAvKipcbiAgICogVGhlIHRlbElucHV0IGRpcmVjdGl2ZVxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKFRoZVNlYW1UZWxJbnB1dERpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSkgX3RlbElucHV0RGlyZWN0aXZlPzogVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlXG5cbiAgLyoqXG4gICAqIFRoZSB0ZWxJbnB1dCBkaXJlY3RpdmVcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQFZpZXdDaGlsZChJbnB1dERpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSkgX2lucHV0RGlyZWN0aXZlPzogSW5wdXREaXJlY3RpdmVcblxuICAvKipcbiAgICogVGhlIG5hdGl2ZSBgPGlucHV0IHR5cGU9XCJ0ZWxcIj5gIGVsZW1lbnRcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQFZpZXdDaGlsZCgnaW5wdXQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBfaW5wdXRFbGVtZW50UmVmPzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PlxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJywgWyAnJGV2ZW50JyBdKVxuICBfb25Gb2N1cygpIHtcbiAgICB0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZT8uZm9jdXMoKVxuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIHRoZSBjaGVja2JveCBpcyBibHVycmVkLiBOZWVkZWQgdG8gcHJvcGVybHkgaW1wbGVtZW50IENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBfb25Ub3VjaGVkOiAoKSA9PiBhbnkgPSAoKSA9PiB7fVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX2NvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm46ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge31cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3JcbiAgKSB7XG4gICAgY29uc3QgdGVsSW5wdXRCbHVyRXZlbnQkID0gdGhpcy5fdGVsSW5wdXREaXJlY3RpdmVcbiAgICAgID8gZnJvbUV2ZW50KHRoaXMuX3RlbElucHV0RGlyZWN0aXZlLmdldEhvc3RFbGVtZW50KCksICdibHVyJylcbiAgICAgIDogb2Y8RXZlbnQ+KClcblxuICAgIHRoaXMuX2hhc0ludmFsaWRDc3MkID0gZGVmZXIoKCkgPT4gb2YoKHRoaXMuX2luamVjdG9yLmdldChOZ0NvbnRyb2wsIG51bGwsIEluamVjdEZsYWdzLlNlbGYpPy5jb250cm9sKSB8fCB1bmRlZmluZWQpKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKGNvbnRyb2wgPT4ge1xuICAgICAgICBpZiAoY29udHJvbCkge1xuICAgICAgICAgIHJldHVybiBtZXJnZShcbiAgICAgICAgICAgIGNvbnRyb2wudmFsdWVDaGFuZ2VzLFxuICAgICAgICAgICAgY29udHJvbC5zdGF0dXNDaGFuZ2VzLFxuICAgICAgICAgICAgdGVsSW5wdXRCbHVyRXZlbnQkXG4gICAgICAgICAgKS5waXBlKFxuICAgICAgICAgICAgYXVkaXRUaW1lKDApLFxuICAgICAgICAgICAgbWFwKCgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgaW5wdXRDb250cm9sID0gdGhpcy5faW5wdXREaXJlY3RpdmU/Lm5nQ29udHJvbFxuICAgICAgICAgICAgICByZXR1cm4gY29udHJvbC5pbnZhbGlkICYmIChpbnB1dENvbnRyb2w/LmRpcnR5IGFzIGJvb2xlYW4gfHwgaW5wdXRDb250cm9sPy50b3VjaGVkIGFzIGJvb2xlYW4pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb2YoZmFsc2UpXG4gICAgICB9KVxuICAgIClcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX2ZvY3VzTW9uaXRvci5tb25pdG9yKHRoaXMuX2VsZW1lbnRSZWYsIHRydWUpLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICApLnN1YnNjcmliZShvcmlnaW4gPT4gdGhpcy5fZm9jdXNPcmlnaW4gPSBvcmlnaW4pXG5cbiAgICB0aGlzLl9jb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpXG4gICAgKS5zdWJzY3JpYmUodiA9PiB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuX3RlbElucHV0RGlyZWN0aXZlPy5nZXRGdWxsTnVtYmVyKClcbiAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZVxuICAgICAgaWYgKHRoaXMuX2NvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm4pIHtcbiAgICAgICAgdGhpcy5fY29udHJvbFZhbHVlQWNjZXNzb3JDaGFuZ2VGbih2YWx1ZSlcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuX2VsZW1lbnRSZWYpXG5cbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKVxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlXG4gICAgaWYgKHRoaXMuX3RlbElucHV0RGlyZWN0aXZlKSB7XG4gICAgICB0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZS52YWx1ZSA9IHZhbHVlXG4gICAgICB0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZS51cGRhdGVWYWx1ZSgpXG4gICAgfVxuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcbiAgICB0aGlzLl9jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuID0gZm5cbiAgfVxuXG4gIC8vIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gIC8qKiBAaWdub3JlICovXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcbiAgICB0aGlzLl9vblRvdWNoZWQgPSBmblxuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWRcbiAgfVxuXG4gIC8qKiBGb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuX3RlbElucHV0RGlyZWN0aXZlPy5mb2N1cygpXG4gIH1cblxuICAvKiogVW5mb2N1c2VzIHRoZSBpbnB1dC4gKi9cbiAgcHVibGljIGJsdXIoKTogdm9pZCB7XG4gICAgdGhpcy5fdGVsSW5wdXREaXJlY3RpdmU/LmJsdXIoKVxuICB9XG5cbiAgcHVibGljIGhhc0ZvY3VzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mb2N1c09yaWdpbiAhPT0gbnVsbCAmJiB0aGlzLl9mb2N1c09yaWdpbiAhPT0gdW5kZWZpbmVkXG4gIH1cblxufVxuIl19
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZWwtaW5wdXQvdGVsLWlucHV0L3RlbC1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQWUsTUFBTSxtQkFBbUIsQ0FBQTtBQUM3RCxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDakcsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osV0FBVyxFQUNYLFFBQVEsRUFDUixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQXdCLFdBQVcsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNoRyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUN2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUU5RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUVqRSxrQkFBa0I7QUFDbEIscUJBQXFCO0FBY3JCLE1BQU0sT0FBTyx3QkFBd0I7SUE4Rm5DLFlBQ21CLGtCQUFxQyxFQUNyQyxTQUFtQixFQUNuQixXQUF1QixFQUN2QixhQUEyQjtR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UTtRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxTQUFTLENBQUE7SUFDdEUsQ0FBQzs7O1lBek1GLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQiw4SEFBeUM7Z0JBRXpDLFNBQVMsRUFBRSxDQUFDO3dCQUNWLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLGtEQUFrRDt3QkFDbEQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzt3QkFDdkQsS0FBSyxFQUFFLElBQUk7cUJBQ1osQ0FBQztnQkFDRixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQXRDQyxpQkFBaUI7WUFRakIsUUFBUTtZQU5SLFVBQVU7WUFOSCxZQUFZOzs7dUJBeURsQixLQUFLO3VCQUVMLEtBQUs7dUJBMEJMLEtBQUs7NEJBS0wsV0FBVyxTQUFDLGVBQWU7NEJBRzNCLFdBQVcsU0FBQyxlQUFlO21CQUkzQixLQUFLO29CQUdMLEtBQUs7cUJBR0wsTUFBTTtpQ0FNTixTQUFTLFNBQUMsd0JBQXdCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFOzhCQU1wRCxTQUFTLFNBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTsrQkFNMUMsU0FBUyxTQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7dUJBRW5DLFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBRSxRQUFRLENBQUU7O0FBbEVWO0lBQWYsWUFBWSxFQUFFOzBEQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvY3VzTW9uaXRvciwgRm9jdXNPcmlnaW4gfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSdcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdEZsYWdzLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sLCBOZ0NvbnRyb2wsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBkZWZlciwgZnJvbUV2ZW50LCBtZXJnZSwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgYXVkaXRUaW1lLCBtYXAsIHN3aXRjaE1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuaW1wb3J0IHsgSW5wdXREaXJlY3RpdmUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZm9ybS1maWVsZCdcblxuaW1wb3J0IHsgVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi4vdGVsLWlucHV0LmRpcmVjdGl2ZSdcblxuLy8gVE9ETzogRml4IGZvY3VzXG4vLyBUT0RPOiBGaXggZGlzYWJsZWRcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VhbS10ZWwtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVsLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGVsLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLXVzZS1iZWZvcmUtZGVjbGFyZVxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1UZWxJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9yZXF1aXJlZDogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KClcblxuICAvKiogQGlnbm9yZSAqL1xuICByZWFkb25seSBfY29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgpXG5cbiAgcHJpdmF0ZSBfZm9jdXNPcmlnaW46IEZvY3VzT3JpZ2luID0gbnVsbFxuXG4gIF9oYXNJbnZhbGlkQ3NzJDogT2JzZXJ2YWJsZTxib29sZWFuPlxuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlXG5cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGlzYWJsZWQgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSlcblxuICAgIGlmICh0aGlzLl9jb250cm9sLmRpc2FibGVkICE9PSBuZXdWYWx1ZSkge1xuICAgICAgaWYgKG5ld1ZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2NvbnRyb2wuZGlzYWJsZSgpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9jb250cm9sLmVuYWJsZSgpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG5ld1ZhbHVlICE9PSB0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IG5ld1ZhbHVlXG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgfVxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlXG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdGFiIGluZGV4IHRvIGAtMWAgdG8gYWxsb3cgdGhlIHJvb3QgZWxlbWVudCBvZiB0aGVcbiAgICogY29tcG9uZW50IHRvIHJlY2VpdmUgYGZvY3VzYCBldmVudCBmcm9tIGphdmFzY3JpcHQsIGJ1dCBub3QgZ2V0IGZvY3VzZWQgYnlcbiAgICoga2V5Ym9hcmQgbmF2aWdhdGlvbi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCB0YWJJbmRleCh2YWx1ZTogbnVtYmVyKSB7IHRoaXMuX3RhYkluZGV4ID0gY29lcmNlTnVtYmVyUHJvcGVydHkodmFsdWUpIH1cbiAgZ2V0IHRhYkluZGV4KCk6IG51bWJlciB7IHJldHVybiB0aGlzLl90YWJJbmRleCB9XG4gIHByaXZhdGUgX3RhYkluZGV4ID0gLTFcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGlzYWJsZWQnKVxuICBnZXQgX2F0dHJEaXNhYmxlZCgpIHsgcmV0dXJuIHRoaXMuZGlzYWJsZWQgfHwgbnVsbCB9XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JylcbiAgZ2V0IF9hdHRyVGFiSW5kZXgoKSB7IHJldHVybiB0aGlzLmRpc2FibGVkID8gLTEgOiAodGhpcy50YWJJbmRleCB8fCAwKSB9XG5cbiAgLyoqIE5hbWUgdmFsdWUgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBpbnB1dCBlbGVtZW50IGlmIHByZXNlbnQgKi9cbiAgQElucHV0KCkgbmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCA9IG51bGxcblxuICAvKiogVGhlIHZhbHVlIGF0dHJpYnV0ZSBvZiB0aGUgbmF0aXZlIGlucHV0IGVsZW1lbnQgKi9cbiAgQElucHV0KCkgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcblxuICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBcInRlbFwiIGlucHV0IHZhbHVlIGNoYW5nZXMuICovXG4gIEBPdXRwdXQoKSByZWFkb25seSBjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKVxuXG4gIC8qKlxuICAgKiBUaGUgdGVsSW5wdXQgZGlyZWN0aXZlXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBWaWV3Q2hpbGQoVGhlU2VhbVRlbElucHV0RGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBfdGVsSW5wdXREaXJlY3RpdmU/OiBUaGVTZWFtVGVsSW5wdXREaXJlY3RpdmVcblxuICAvKipcbiAgICogVGhlIHRlbElucHV0IGRpcmVjdGl2ZVxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKElucHV0RGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBfaW5wdXREaXJlY3RpdmU/OiBJbnB1dERpcmVjdGl2ZVxuXG4gIC8qKlxuICAgKiBUaGUgbmF0aXZlIGA8aW5wdXQgdHlwZT1cInRlbFwiPmAgZWxlbWVudFxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKCdpbnB1dCcsIHsgc3RhdGljOiB0cnVlIH0pIF9pbnB1dEVsZW1lbnRSZWY/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+XG5cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnLCBbICckZXZlbnQnIF0pXG4gIF9vbkZvY3VzKCkge1xuICAgIHRoaXMuX3RlbElucHV0RGlyZWN0aXZlPy5mb2N1cygpXG4gIH1cblxuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIGNoZWNrYm94IGlzIGJsdXJyZWQuIE5lZWRlZCB0byBwcm9wZXJseSBpbXBsZW1lbnQgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIF9vblRvdWNoZWQ6ICgpID0+IGFueSA9ICgpID0+IHt9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfY29udHJvbFZhbHVlQWNjZXNzb3JDaGFuZ2VGbjogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9mb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvclxuICApIHtcbiAgICBjb25zdCB0ZWxJbnB1dEJsdXJFdmVudCQgPSB0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZVxuICAgICAgPyBmcm9tRXZlbnQodGhpcy5fdGVsSW5wdXREaXJlY3RpdmUuZ2V0SG9zdEVsZW1lbnQoKSwgJ2JsdXInKVxuICAgICAgOiBvZjxFdmVudD4oKVxuXG4gICAgdGhpcy5faGFzSW52YWxpZENzcyQgPSBkZWZlcigoKSA9PiBvZigodGhpcy5faW5qZWN0b3IuZ2V0KE5nQ29udHJvbCwgbnVsbCwgSW5qZWN0RmxhZ3MuU2VsZik/LmNvbnRyb2wpIHx8IHVuZGVmaW5lZCkpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoY29udHJvbCA9PiB7XG4gICAgICAgIGlmIChjb250cm9sKSB7XG4gICAgICAgICAgcmV0dXJuIG1lcmdlKFxuICAgICAgICAgICAgY29udHJvbC52YWx1ZUNoYW5nZXMsXG4gICAgICAgICAgICBjb250cm9sLnN0YXR1c0NoYW5nZXMsXG4gICAgICAgICAgICB0ZWxJbnB1dEJsdXJFdmVudCRcbiAgICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICBhdWRpdFRpbWUoMCksXG4gICAgICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBpbnB1dENvbnRyb2wgPSB0aGlzLl9pbnB1dERpcmVjdGl2ZT8ubmdDb250cm9sXG4gICAgICAgICAgICAgIHJldHVybiBjb250cm9sLmludmFsaWQgJiYgKGlucHV0Q29udHJvbD8uZGlydHkgYXMgYm9vbGVhbiB8fCBpbnB1dENvbnRyb2w/LnRvdWNoZWQgYXMgYm9vbGVhbilcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvZihmYWxzZSlcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLm1vbml0b3IodGhpcy5fZWxlbWVudFJlZiwgdHJ1ZSkucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKVxuICAgICkuc3Vic2NyaWJlKG9yaWdpbiA9PiB0aGlzLl9mb2N1c09yaWdpbiA9IG9yaWdpbilcblxuICAgIHRoaXMuX2NvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSlcbiAgICApLnN1YnNjcmliZSh2ID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5fdGVsSW5wdXREaXJlY3RpdmU/LmdldEZ1bGxOdW1iZXIoKVxuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlXG4gICAgICBpZiAodGhpcy5fY29udHJvbFZhbHVlQWNjZXNzb3JDaGFuZ2VGbikge1xuICAgICAgICB0aGlzLl9jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuKHZhbHVlKVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9mb2N1c01vbml0b3Iuc3RvcE1vbml0b3JpbmcodGhpcy5fZWxlbWVudFJlZilcblxuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgICBpZiAodGhpcy5fdGVsSW5wdXREaXJlY3RpdmUpIHtcbiAgICAgIHRoaXMuX3RlbElucHV0RGlyZWN0aXZlLnZhbHVlID0gdmFsdWVcbiAgICAgIHRoaXMuX3RlbElucHV0RGlyZWN0aXZlLnVwZGF0ZVZhbHVlKClcbiAgICB9XG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuICAgIHRoaXMuX2NvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm4gPSBmblxuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuICAgIHRoaXMuX29uVG91Y2hlZCA9IGZuXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZFxuICB9XG5cbiAgLyoqIEZvY3VzZXMgdGhlIGlucHV0LiAqL1xuICBwdWJsaWMgZm9jdXMoKTogdm9pZCB7XG4gICAgdGhpcy5fdGVsSW5wdXREaXJlY3RpdmU/LmZvY3VzKClcbiAgfVxuXG4gIC8qKiBVbmZvY3VzZXMgdGhlIGlucHV0LiAqL1xuICBwdWJsaWMgYmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLl90ZWxJbnB1dERpcmVjdGl2ZT8uYmx1cigpXG4gIH1cblxuICBwdWJsaWMgaGFzRm9jdXMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2ZvY3VzT3JpZ2luICE9PSBudWxsICYmIHRoaXMuX2ZvY3VzT3JpZ2luICE9PSB1bmRlZmluZWRcbiAgfVxuXG59XG4iXX0=