@taiga-ui/cdk 3.54.0-canary.e1ba43c → 3.55.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/bundles/taiga-ui-cdk-components-dialog-host.umd.js +2 -2
  2. package/bundles/taiga-ui-cdk-components-dialog-host.umd.js.map +1 -1
  3. package/bundles/taiga-ui-cdk-components-scroll-controls.umd.js +10 -10
  4. package/bundles/taiga-ui-cdk-components-scroll-controls.umd.js.map +1 -1
  5. package/bundles/taiga-ui-cdk-constants.umd.js +75 -75
  6. package/bundles/taiga-ui-cdk-constants.umd.js.map +1 -1
  7. package/bundles/taiga-ui-cdk-date-time.umd.js +2 -4
  8. package/bundles/taiga-ui-cdk-date-time.umd.js.map +1 -1
  9. package/bundles/taiga-ui-cdk-decorators.umd.js +12 -12
  10. package/bundles/taiga-ui-cdk-decorators.umd.js.map +1 -1
  11. package/bundles/taiga-ui-cdk-services.umd.js +10 -10
  12. package/bundles/taiga-ui-cdk-services.umd.js.map +1 -1
  13. package/bundles/taiga-ui-cdk-tokens.umd.js +23 -23
  14. package/bundles/taiga-ui-cdk-tokens.umd.js.map +1 -1
  15. package/bundles/taiga-ui-cdk-utils-color.umd.js +12 -12
  16. package/bundles/taiga-ui-cdk-utils-color.umd.js.map +1 -1
  17. package/bundles/taiga-ui-cdk-utils-dom.umd.js +5 -5
  18. package/bundles/taiga-ui-cdk-utils-dom.umd.js.map +1 -1
  19. package/bundles/taiga-ui-cdk-utils-math.umd.js +16 -16
  20. package/bundles/taiga-ui-cdk-utils-math.umd.js.map +1 -1
  21. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js +3 -3
  22. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js.map +1 -1
  23. package/bundles/taiga-ui-cdk-utils-svg.umd.js +23 -23
  24. package/bundles/taiga-ui-cdk-utils-svg.umd.js.map +1 -1
  25. package/constants/version.d.ts +1 -1
  26. package/constants/version.js +1 -1
  27. package/esm2015/components/dialog-host/dialog-host.component.js +3 -3
  28. package/esm2015/components/scroll-controls/scrollbar.directive.js +7 -7
  29. package/esm2015/constants/empty.js +9 -9
  30. package/esm2015/constants/matcher.js +4 -4
  31. package/esm2015/constants/used-icons.js +64 -64
  32. package/esm2015/constants/version.js +2 -2
  33. package/esm2015/date-time/day-range.js +2 -4
  34. package/esm2015/date-time/day.js +2 -2
  35. package/esm2015/decorators/default-prop.js +10 -10
  36. package/esm2015/decorators/required-setter.js +4 -4
  37. package/esm2015/services/scroll.service.js +11 -11
  38. package/esm2015/tokens/active-element.js +14 -14
  39. package/esm2015/utils/color/hex-to-rgba.js +9 -9
  40. package/esm2015/utils/color/hsv-to-rgb.js +5 -5
  41. package/esm2015/utils/dom/can-scroll.js +6 -6
  42. package/esm2015/utils/math/round.js +13 -13
  43. package/esm2015/utils/miscellaneous/clean-object.js +4 -4
  44. package/esm2015/utils/svg/svg-linear-gradient-processor.js +24 -24
  45. package/fesm2015/taiga-ui-cdk-components-dialog-host.js +2 -2
  46. package/fesm2015/taiga-ui-cdk-components-dialog-host.js.map +1 -1
  47. package/fesm2015/taiga-ui-cdk-components-scroll-controls.js +6 -6
  48. package/fesm2015/taiga-ui-cdk-components-scroll-controls.js.map +1 -1
  49. package/fesm2015/taiga-ui-cdk-constants.js +75 -75
  50. package/fesm2015/taiga-ui-cdk-constants.js.map +1 -1
  51. package/fesm2015/taiga-ui-cdk-date-time.js +2 -4
  52. package/fesm2015/taiga-ui-cdk-date-time.js.map +1 -1
  53. package/fesm2015/taiga-ui-cdk-decorators.js +12 -12
  54. package/fesm2015/taiga-ui-cdk-decorators.js.map +1 -1
  55. package/fesm2015/taiga-ui-cdk-services.js +10 -10
  56. package/fesm2015/taiga-ui-cdk-services.js.map +1 -1
  57. package/fesm2015/taiga-ui-cdk-tokens.js +15 -15
  58. package/fesm2015/taiga-ui-cdk-tokens.js.map +1 -1
  59. package/fesm2015/taiga-ui-cdk-utils-color.js +12 -12
  60. package/fesm2015/taiga-ui-cdk-utils-color.js.map +1 -1
  61. package/fesm2015/taiga-ui-cdk-utils-dom.js +5 -5
  62. package/fesm2015/taiga-ui-cdk-utils-dom.js.map +1 -1
  63. package/fesm2015/taiga-ui-cdk-utils-math.js +12 -12
  64. package/fesm2015/taiga-ui-cdk-utils-math.js.map +1 -1
  65. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js +3 -3
  66. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js.map +1 -1
  67. package/fesm2015/taiga-ui-cdk-utils-svg.js +23 -23
  68. package/fesm2015/taiga-ui-cdk-utils-svg.js.map +1 -1
  69. package/package.json +68 -68
  70. package/schematics/ng-add/index.js +10 -10
  71. package/schematics/ng-add/steps/add-taiga-modules.js +32 -32
  72. package/schematics/ng-add/steps/wrap-with-tui-root.js +21 -21
  73. package/schematics/ng-update/steps/rename-types.js +8 -8
  74. package/schematics/ng-update/steps/replace-enums.js +8 -8
  75. package/schematics/ng-update/steps/replace-services.js +8 -8
  76. package/schematics/ng-update/steps/show-warnings.js +4 -4
  77. package/schematics/ng-update/v3/index.js +17 -17
  78. package/schematics/ng-update/v3/steps/migrate-date-time.js +92 -92
  79. package/schematics/ng-update/v3/steps/migrate-polymorpheus.js +35 -35
  80. package/schematics/ng-update/v3/steps/migrate-progress.d.ts +4 -0
  81. package/schematics/ng-update/v3/steps/migrate-progress.js +15 -13
  82. package/schematics/ng-update/v3/steps/migrate-sliders/migrate-input-range.js +44 -44
  83. package/schematics/ng-update/v3/steps/migrate-sliders/migrate-input-slider.js +28 -28
  84. package/schematics/ng-update/v3/steps/migrate-templates.js +37 -36
  85. package/schematics/ng-update/v3/steps/migrate-textfield-controller.js +21 -21
  86. package/schematics/ng-update/v3/steps/miscellaneous.js +32 -32
  87. package/schematics/ng-update/v3/steps/replace-functions.js +18 -18
  88. package/schematics/ng-update/v3-30/index.js +3 -3
  89. package/schematics/ng-update/v3-35/index.js +3 -3
  90. package/schematics/ng-update/v3-40/index.js +9 -9
  91. package/schematics/ng-update/v3-5/steps/migrate-expand-templates.js +17 -17
  92. package/schematics/ng-update/v4/index.js +12 -12
  93. package/schematics/ng-update/v4/steps/migrate-templates.js +3 -3
  94. package/schematics/ng-update/v4/steps/restore-tui-mapper.js +6 -6
  95. package/schematics/ng-update/v4/steps/restore-tui-matcher.js +6 -6
  96. package/schematics/ng-update/v4/steps/templates/migrate-avatar.js +24 -24
  97. package/schematics/utils/angular-json-manipulations.js +8 -8
  98. package/schematics/utils/templates/get-component-templates.js +8 -8
@@ -15,12 +15,12 @@ import * as i3 from "@taiga-ui/cdk/directives";
15
15
  import * as i4 from "@tinkoff/ng-polymorpheus";
16
16
  import * as i5 from "rxjs";
17
17
  import * as i6 from "@angular/platform-browser";
18
+ const FAKE_HISTORY_STATE = { label: 'ignoreMe' };
19
+ const isFakeHistoryState = (historyState) => (historyState === null || historyState === void 0 ? void 0 : historyState.label) === FAKE_HISTORY_STATE.label;
18
20
  /**
19
21
  * Is closing dialog on browser backward navigation enabled
20
22
  */
21
23
  export const TUI_DIALOG_CLOSES_ON_BACK = tuiCreateToken(of(false));
22
- const FAKE_HISTORY_STATE = { label: 'ignoreMe' };
23
- const isFakeHistoryState = (historyState) => (historyState === null || historyState === void 0 ? void 0 : historyState.label) === FAKE_HISTORY_STATE.label;
24
24
  export class TuiDialogHostComponent {
25
25
  constructor(isMobile, isDialogClosesOnBack$, dialogsByType, historyRef, titleService, destroy$, cdr, doc) {
26
26
  this.isMobile = isMobile;
@@ -134,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
134
134
  type: Inject,
135
135
  args: [DOCUMENT]
136
136
  }] }]; } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWhvc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2NvbXBvbmVudHMvZGlhbG9nLWhvc3QvZGlhbG9nLWhvc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2NvbXBvbmVudHMvZGlhbG9nLWhvc3QvZGlhbG9nLWhvc3QudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BGLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsTUFBTSxFQUVOLElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDaEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxXQUFXLEVBQUUsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFaEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxhQUFhLEVBQWMsRUFBRSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7O0FBRTlDOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsY0FBYyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBRW5FLE1BQU0s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RSxDQUFDLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUM7NkJBQzFELENBQUM7NEJBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDakIsS0FBSyxDQUFDLEVBQUMsUUFBUSxFQUFFLE1BQU0sRUFBQyxDQUFDO2dDQUN6QixLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUMsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQzs2QkFDMUQsQ0FBQzt5QkFDTCxDQUFDO3FCQUNMO2lCQUNKOzswQkFPUSxNQUFNOzJCQUFDLGFBQWE7OzBCQUNwQixNQUFNOzJCQUFDLHlCQUF5Qjs4QkFHRCxLQUFLOzBCQURwQyxNQUFNOzJCQUFDLFdBQVc7OEJBRTJCLE9BQU87MEJBQXBELE1BQU07MkJBQUMsT0FBTzs7MEJBQ2QsTUFBTTsyQkFBQyxLQUFLOzswQkFDWixJQUFJOzswQkFBSSxNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ2hDLE1BQU07MkJBQUMsaUJBQWlCOzhCQUNlLFFBQVE7MEJBQS9DLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7YW5pbWF0ZUNoaWxkLCBxdWVyeSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXJ9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEluamVjdCxcbiAgICBPbkluaXQsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RpdGxlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7SElTVE9SWX0gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1R1aURlc3Ryb3lTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3NlcnZpY2VzJztcbmltcG9ydCB7VFVJX0RJQUxPR1MsIFRVSV9JU19NT0JJTEV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7VHVpRGlhbG9nfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcbmltcG9ydCB7dHVpQ3JlYXRlVG9rZW59IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8qKlxuICogSXMgY2xvc2luZyBkaWFsb2cgb24gYnJvd3NlciBiYWNrd2FyZCBuYXZpZ2F0aW9uIGVuYWJsZWRcbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9ESUFMT0dfQ0xPU0VTX09OX0JBQ0sgPSB0dWlDcmVhdGVUb2tlbihvZihmYWxzZSkpO1xuXG5jb25zdCBGQUtFX0hJU1RPUllfU1RBVEUgPSB7bGFiZWw6ICdpZ25vcmVNZSd9IGFzIGNvbnN0O1xuY29uc3QgaXNGYWtlSGlzdG9yeVN0YXRlID0gKFxuICAgIGhpc3RvcnlTdGF0ZTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4pOiBoaXN0b3J5U3RhdGUgaXMgdHlwZW9mIEZBS0VfSElTVE9SWV9TVEFURSA9PlxuICAgIGhpc3RvcnlTdGF0ZT8ubGFiZWwgPT09IEZBS0VfSElTVE9SWV9TVEFURS5sYWJlbDtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktZGlhbG9nLWhvc3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2ctaG9zdC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kaWFsb2ctaG9zdC5zdHlsZS5sZXNzJ10sXG4gICAgLy8gU28gdGhhdCB3ZSBkbyBub3QgZm9yY2UgT25QdXNoIG9uIGN1c3RvbSBkaWFsb2dzXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9wcmVmZXItb24tcHVzaC1jb21wb25lbnQtY2hhbmdlLWRldGVjdGlvblxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG4gICAgYW5pbWF0aW9uczogW1xuICAgICAgICB0cmlnZ2VyKCdob3N0JywgW1xuICAgICAgICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICAgICAgICAgIHN0eWxlKHtvdmVyZmxvdzogJ2NsaXAnfSksXG4gICAgICAgICAgICAgICAgcXVlcnkoJzpzY29wZSA+IConLCBbYW5pbWF0ZUNoaWxkKCldLCB7b3B0aW9uYWw6IHRydWV9KSxcbiAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICAgICAgICAgIHN0eWxlKHtvdmVyZmxvdzogJ2NsaXAnfSksXG4gICAgICAgICAgICAgICAgcXVlcnkoJzpzY29wZSA+IConLCBbYW5pbWF0ZUNoaWxkKCldLCB7b3B0aW9uYWw6IHRydWV9KSxcbiAgICAgICAgICAgIF0pLFxuICAgICAgICBdKSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEaWFsb2dIb3N0Q29tcG9uZW50PFQgZXh0ZW5kcyBUdWlEaWFsb2c8dW5rbm93biwgdW5rbm93bj4+XG4gICAgaW1wbGVtZW50cyBPbkluaXRcbntcbiAgICBkaWFsb2dzOiByZWFkb25seSBUW10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFRVSV9JU19NT0JJTEUpIHJlYWRvbmx5IGlzTW9iaWxlOiBib29sZWFuLFxuICAgICAgICBASW5qZWN0KFRVSV9ESUFMT0dfQ0xPU0VTX09OX0JBQ0spXG4gICAgICAgIHJlYWRvbmx5IGlzRGlhbG9nQ2xvc2VzT25CYWNrJDogT2JzZXJ2YWJsZTxib29sZWFuPixcbiAgICAgICAgQEluamVjdChUVUlfRElBTE9HUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2dzQnlUeXBlOiBBcnJheTxPYnNlcnZhYmxlPHJlYWRvbmx5IFRbXT4+LFxuICAgICAgICBASW5qZWN0KEhJU1RPUlkpIHByaXZhdGUgcmVhZG9ubHkgaGlzdG9yeVJlZjogSGlzdG9yeSxcbiAgICAgICAgQEluamVjdChUaXRsZSkgcHJpdmF0ZSByZWFkb25seSB0aXRsZVNlcnZpY2U6IFRpdGxlLFxuICAgICAgICBAU2VsZigpIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpIHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2M6IERvY3VtZW50LFxuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBEdWUgdG8gdGhpcyB2aWV3IGJlaW5nIHBhcmFsbGVsIHRvIGFwcCBjb250ZW50LCBgbWFya0ZvckNoZWNrYCBmcm9tIGBhc3luY2AgcGlwZVxuICAgICAgICAvLyBjYW4gaGFwcGVuIGFmdGVyIHZpZXcgd2FzIGNoZWNrZWQsIHNvIGNhbGxpbmcgYGRldGVjdENoYW5nZXNgIGluc3RlYWRcbiAgICAgICAgY29tYmluZUxhdGVzdCh0aGlzLmRpYWxvZ3NCeVR5cGUpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoYXJyID0+XG4gICAgICAgICAgICAgICAgICAgIChbXSBhcyByZWFkb25seSBUW10pXG4gICAgICAgICAgICAgICAgICAgICAgICAuY29uY2F0KC4uLmFycilcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLmNyZWF0ZWRBdCAtIGIuY3JlYXRlZEF0KSxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoZGlhbG9ncyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dzID0gZGlhbG9ncztcbiAgICAgICAgICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgICAgICAgICAgIHRoaXMuZG9jLmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QudG9nZ2xlKFxuICAgICAgICAgICAgICAgICAgICAndC1vdmVyc2Nyb2xsLW5vbmUnLFxuICAgICAgICAgICAgICAgICAgICAhIWRpYWxvZ3MubGVuZ3RoLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBjbG9zZUxhc3QoZGlhbG9nczogcmVhZG9ubHkgVFtdLCBpc0RpYWxvZ0Nsb3Nlc09uQmFjazogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAoIWlzRGlhbG9nQ2xvc2VzT25CYWNrKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBbbGFzdF0gPSBkaWFsb2dzLnNsaWNlKC0xKTtcblxuICAgICAgICBpZiAoIWxhc3QpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkaWFsb2dzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIHRoaXMuaGlzdG9yeVJlZi5wdXNoU3RhdGUoRkFLRV9ISVNUT1JZX1NUQVRFLCB0aGlzLnRpdGxlU2VydmljZS5nZXRUaXRsZSgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhc3QuJGltcGxpY2l0LmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgb25EaWFsb2coXG4gICAgICAgIHtwcm9wZXJ0eU5hbWV9OiBUcmFuc2l0aW9uRXZlbnQsXG4gICAgICAgIHBvcHVwT3BlbmVkOiBib29sZWFuLFxuICAgICAgICBpc0RpYWxvZ0Nsb3Nlc09uQmFjazogYm9vbGVhbixcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKCFpc0RpYWxvZ0Nsb3Nlc09uQmFjayB8fCBwcm9wZXJ0eU5hbWUgIT09ICdsZXR0ZXItc3BhY2luZycpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwb3B1cE9wZW5lZCkge1xuICAgICAgICAgICAgdGhpcy5oaXN0b3J5UmVmLnB1c2hTdGF0ZShGQUtFX0hJU1RPUllfU1RBVEUsIHRoaXMudGl0bGVTZXJ2aWNlLmdldFRpdGxlKCkpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzRmFrZUhpc3RvcnlTdGF0ZSh0aGlzLmhpc3RvcnlSZWYuc3RhdGUpKSB7XG4gICAgICAgICAgICB0aGlzLmhpc3RvcnlSZWYuYmFjaygpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPHNlY3Rpb25cbiAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkaWFsb2dzXCJcbiAgICBhcmlhLW1vZGFsPVwidHJ1ZVwiXG4gICAgcm9sZT1cImRpYWxvZ1wiXG4gICAgdHVpRm9jdXNUcmFwXG4gICAgdHVpT3ZlcnNjcm9sbD1cImFsbFwiXG4gICAgdHVpU2Nyb2xsUmVmXG4gICAgY2xhc3M9XCJ0LWRpYWxvZ1wiXG4gICAgQGhvc3RcbiAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiaXRlbS5pZFwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaXRlbS5jb21wb25lbnQ7IGNvbnRleHQ6IGl0ZW1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8dHVpLXNjcm9sbC1jb250cm9sc1xuICAgICAgICAqbmdJZj1cIiFpc01vYmlsZVwiXG4gICAgICAgIGNsYXNzPVwidC1zY3JvbGxiYXJzXCJcbiAgICA+PC90dWktc2Nyb2xsLWNvbnRyb2xzPlxuPC9zZWN0aW9uPlxuPGRpdlxuICAgICp0dWlMZXQ9XCJpc0RpYWxvZ0Nsb3Nlc09uQmFjayQgfCBhc3luYyBhcyBpc0RpYWxvZ0Nsb3Nlc09uQmFja1wiXG4gICAgY2xhc3M9XCJ0LW92ZXJsYXlcIlxuICAgIFtjbGFzcy50LW92ZXJsYXlfdmlzaWJsZV09XCJkaWFsb2dzLmxlbmd0aFwiXG4gICAgKHRyYW5zaXRpb25lbmQpPVwib25EaWFsb2coJGV2ZW50LCAhIWRpYWxvZ3MubGVuZ3RoLCAhIWlzRGlhbG9nQ2xvc2VzT25CYWNrKVwiXG4gICAgKHdpbmRvdzpwb3BzdGF0ZSk9XCJjbG9zZUxhc3QoZGlhbG9ncywgISFpc0RpYWxvZ0Nsb3Nlc09uQmFjaylcIlxuPjwvZGl2PlxuIl19
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWhvc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2NvbXBvbmVudHMvZGlhbG9nLWhvc3QvZGlhbG9nLWhvc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2NvbXBvbmVudHMvZGlhbG9nLWhvc3QvZGlhbG9nLWhvc3QudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BGLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsTUFBTSxFQUVOLElBQUksR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDaEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxXQUFXLEVBQUUsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFaEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxhQUFhLEVBQWMsRUFBRSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7O0FBRTlDLE1BQU0sa0JBQWtCLEdBQUcsRUFBQyxLQUFLLEVBQUUsVUFBVSxFQUFVLENBQUM7QUFFeEQsTUFBTSxrQkFBa0IsR0FBRyxDQUN2QixZQUFxQyxFQUNJLEVB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RSxDQUFDLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUM7NkJBQzFELENBQUM7NEJBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDakIsS0FBSyxDQUFDLEVBQUMsUUFBUSxFQUFFLE1BQU0sRUFBQyxDQUFDO2dDQUN6QixLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUMsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQzs2QkFDMUQsQ0FBQzt5QkFDTCxDQUFDO3FCQUNMO2lCQUNKOzswQkFPUSxNQUFNOzJCQUFDLGFBQWE7OzBCQUNwQixNQUFNOzJCQUFDLHlCQUF5Qjs4QkFHRCxLQUFLOzBCQURwQyxNQUFNOzJCQUFDLFdBQVc7OEJBRTJCLE9BQU87MEJBQXBELE1BQU07MkJBQUMsT0FBTzs7MEJBQ2QsTUFBTTsyQkFBQyxLQUFLOzswQkFDWixJQUFJOzswQkFBSSxNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ2hDLE1BQU07MkJBQUMsaUJBQWlCOzhCQUNlLFFBQVE7MEJBQS9DLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7YW5pbWF0ZUNoaWxkLCBxdWVyeSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXJ9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEluamVjdCxcbiAgICBPbkluaXQsXG4gICAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RpdGxlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7SElTVE9SWX0gZnJvbSAnQG5nLXdlYi1hcGlzL2NvbW1vbic7XG5pbXBvcnQge1R1aURlc3Ryb3lTZXJ2aWNlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3NlcnZpY2VzJztcbmltcG9ydCB7VFVJX0RJQUxPR1MsIFRVSV9JU19NT0JJTEV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7VHVpRGlhbG9nfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcbmltcG9ydCB7dHVpQ3JlYXRlVG9rZW59IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmNvbnN0IEZBS0VfSElTVE9SWV9TVEFURSA9IHtsYWJlbDogJ2lnbm9yZU1lJ30gYXMgY29uc3Q7XG5cbmNvbnN0IGlzRmFrZUhpc3RvcnlTdGF0ZSA9IChcbiAgICBoaXN0b3J5U3RhdGU6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuKTogaGlzdG9yeVN0YXRlIGlzIHR5cGVvZiBGQUtFX0hJU1RPUllfU1RBVEUgPT5cbiAgICBoaXN0b3J5U3RhdGU/LmxhYmVsID09PSBGQUtFX0hJU1RPUllfU1RBVEUubGFiZWw7XG5cbi8qKlxuICogSXMgY2xvc2luZyBkaWFsb2cgb24gYnJvd3NlciBiYWNrd2FyZCBuYXZpZ2F0aW9uIGVuYWJsZWRcbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9ESUFMT0dfQ0xPU0VTX09OX0JBQ0sgPSB0dWlDcmVhdGVUb2tlbihvZihmYWxzZSkpO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1kaWFsb2ctaG9zdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RpYWxvZy1ob3N0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RpYWxvZy1ob3N0LnN0eWxlLmxlc3MnXSxcbiAgICAvLyBTbyB0aGF0IHdlIGRvIG5vdCBmb3JjZSBPblB1c2ggb24gY3VzdG9tIGRpYWxvZ3NcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L3ByZWZlci1vbi1wdXNoLWNvbXBvbmVudC1jaGFuZ2UtZGV0ZWN0aW9uXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIHByb3ZpZGVyczogW1R1aURlc3Ryb3lTZXJ2aWNlXSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ2hvc3QnLCBbXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgICAgICAgICAgc3R5bGUoe292ZXJmbG93OiAnY2xpcCd9KSxcbiAgICAgICAgICAgICAgICBxdWVyeSgnOnNjb3BlID4gKicsIFthbmltYXRlQ2hpbGQoKV0sIHtvcHRpb25hbDogdHJ1ZX0pLFxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXG4gICAgICAgICAgICAgICAgc3R5bGUoe292ZXJmbG93OiAnY2xpcCd9KSxcbiAgICAgICAgICAgICAgICBxdWVyeSgnOnNjb3BlID4gKicsIFthbmltYXRlQ2hpbGQoKV0sIHtvcHRpb25hbDogdHJ1ZX0pLFxuICAgICAgICAgICAgXSksXG4gICAgICAgIF0pLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURpYWxvZ0hvc3RDb21wb25lbnQ8VCBleHRlbmRzIFR1aURpYWxvZzx1bmtub3duLCB1bmtub3duPj5cbiAgICBpbXBsZW1lbnRzIE9uSW5pdFxue1xuICAgIGRpYWxvZ3M6IHJlYWRvbmx5IFRbXSA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVFVJX0lTX01PQklMRSkgcmVhZG9ubHkgaXNNb2JpbGU6IGJvb2xlYW4sXG4gICAgICAgIEBJbmplY3QoVFVJX0RJQUxPR19DTE9TRVNfT05fQkFDSylcbiAgICAgICAgcmVhZG9ubHkgaXNEaWFsb2dDbG9zZXNPbkJhY2skOiBPYnNlcnZhYmxlPGJvb2xlYW4+LFxuICAgICAgICBASW5qZWN0KFRVSV9ESUFMT0dTKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZ3NCeVR5cGU6IEFycmF5PE9ic2VydmFibGU8cmVhZG9ubHkgVFtdPj4sXG4gICAgICAgIEBJbmplY3QoSElTVE9SWSkgcHJpdmF0ZSByZWFkb25seSBoaXN0b3J5UmVmOiBIaXN0b3J5LFxuICAgICAgICBASW5qZWN0KFRpdGxlKSBwcml2YXRlIHJlYWRvbmx5IHRpdGxlU2VydmljZTogVGl0bGUsXG4gICAgICAgIEBTZWxmKCkgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JDogT2JzZXJ2YWJsZTx2b2lkPixcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvYzogRG9jdW1lbnQsXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIER1ZSB0byB0aGlzIHZpZXcgYmVpbmcgcGFyYWxsZWwgdG8gYXBwIGNvbnRlbnQsIGBtYXJrRm9yQ2hlY2tgIGZyb20gYGFzeW5jYCBwaXBlXG4gICAgICAgIC8vIGNhbiBoYXBwZW4gYWZ0ZXIgdmlldyB3YXMgY2hlY2tlZCwgc28gY2FsbGluZyBgZGV0ZWN0Q2hhbmdlc2AgaW5zdGVhZFxuICAgICAgICBjb21iaW5lTGF0ZXN0KHRoaXMuZGlhbG9nc0J5VHlwZSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChhcnIgPT5cbiAgICAgICAgICAgICAgICAgICAgKFtdIGFzIHJlYWRvbmx5IFRbXSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jb25jYXQoLi4uYXJyKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnNvcnQoKGEsIGIpID0+IGEuY3JlYXRlZEF0IC0gYi5jcmVhdGVkQXQpLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShkaWFsb2dzID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ3MgPSBkaWFsb2dzO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5kb2MuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC50b2dnbGUoXG4gICAgICAgICAgICAgICAgICAgICd0LW92ZXJzY3JvbGwtbm9uZScsXG4gICAgICAgICAgICAgICAgICAgICEhZGlhbG9ncy5sZW5ndGgsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNsb3NlTGFzdChkaWFsb2dzOiByZWFkb25seSBUW10sIGlzRGlhbG9nQ2xvc2VzT25CYWNrOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICghaXNEaWFsb2dDbG9zZXNPbkJhY2spIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IFtsYXN0XSA9IGRpYWxvZ3Muc2xpY2UoLTEpO1xuXG4gICAgICAgIGlmICghbGFzdCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRpYWxvZ3MubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgdGhpcy5oaXN0b3J5UmVmLnB1c2hTdGF0ZShGQUtFX0hJU1RPUllfU1RBVEUsIHRoaXMudGl0bGVTZXJ2aWNlLmdldFRpdGxlKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGFzdC4kaW1wbGljaXQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBvbkRpYWxvZyhcbiAgICAgICAge3Byb3BlcnR5TmFtZX06IFRyYW5zaXRpb25FdmVudCxcbiAgICAgICAgcG9wdXBPcGVuZWQ6IGJvb2xlYW4sXG4gICAgICAgIGlzRGlhbG9nQ2xvc2VzT25CYWNrOiBib29sZWFuLFxuICAgICk6IHZvaWQge1xuICAgICAgICBpZiAoIWlzRGlhbG9nQ2xvc2VzT25CYWNrIHx8IHByb3BlcnR5TmFtZSAhPT0gJ2xldHRlci1zcGFjaW5nJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHBvcHVwT3BlbmVkKSB7XG4gICAgICAgICAgICB0aGlzLmhpc3RvcnlSZWYucHVzaFN0YXRlKEZBS0VfSElTVE9SWV9TVEFURSwgdGhpcy50aXRsZVNlcnZpY2UuZ2V0VGl0bGUoKSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNGYWtlSGlzdG9yeVN0YXRlKHRoaXMuaGlzdG9yeVJlZi5zdGF0ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuaGlzdG9yeVJlZi5iYWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8c2VjdGlvblxuICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRpYWxvZ3NcIlxuICAgIGFyaWEtbW9kYWw9XCJ0cnVlXCJcbiAgICByb2xlPVwiZGlhbG9nXCJcbiAgICB0dWlGb2N1c1RyYXBcbiAgICB0dWlPdmVyc2Nyb2xsPVwiYWxsXCJcbiAgICB0dWlTY3JvbGxSZWZcbiAgICBjbGFzcz1cInQtZGlhbG9nXCJcbiAgICBAaG9zdFxuICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJpdGVtLmlkXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpwb2x5bW9ycGhldXNPdXRsZXQ9XCJpdGVtLmNvbXBvbmVudDsgY29udGV4dDogaXRlbVwiPjwvbmctY29udGFpbmVyPlxuICAgIDx0dWktc2Nyb2xsLWNvbnRyb2xzXG4gICAgICAgICpuZ0lmPVwiIWlzTW9iaWxlXCJcbiAgICAgICAgY2xhc3M9XCJ0LXNjcm9sbGJhcnNcIlxuICAgID48L3R1aS1zY3JvbGwtY29udHJvbHM+XG48L3NlY3Rpb24+XG48ZGl2XG4gICAgKnR1aUxldD1cImlzRGlhbG9nQ2xvc2VzT25CYWNrJCB8IGFzeW5jIGFzIGlzRGlhbG9nQ2xvc2VzT25CYWNrXCJcbiAgICBjbGFzcz1cInQtb3ZlcmxheVwiXG4gICAgW2NsYXNzLnQtb3ZlcmxheV92aXNpYmxlXT1cImRpYWxvZ3MubGVuZ3RoXCJcbiAgICAodHJhbnNpdGlvbmVuZCk9XCJvbkRpYWxvZygkZXZlbnQsICEhZGlhbG9ncy5sZW5ndGgsICEhaXNEaWFsb2dDbG9zZXNPbkJhY2spXCJcbiAgICAod2luZG93OnBvcHN0YXRlKT1cImNsb3NlTGFzdChkaWFsb2dzLCAhIWlzRGlhbG9nQ2xvc2VzT25CYWNrKVwiXG4+PC9kaXY+XG4iXX0=
@@ -10,6 +10,12 @@ import { map, switchMap, takeUntil, throttleTime } from 'rxjs/operators';
10
10
  import * as i0 from "@angular/core";
11
11
  import * as i1 from "rxjs";
12
12
  const MIN_WIDTH = 24;
13
+ function getOffsetVertical({ clientY }, { top, height }) {
14
+ return (clientY - top) / height;
15
+ }
16
+ function getOffsetHorizontal({ clientX }, { left, width }) {
17
+ return (clientX - left) / width;
18
+ }
13
19
  export class TuiScrollbarDirective {
14
20
  constructor(zone, destroy$, animationFrame$, container, doc, el) {
15
21
  this.container = container;
@@ -124,10 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
124
130
  }] }]; }, propDecorators: { tuiScrollbar: [{
125
131
  type: Input
126
132
  }] } });
127
- function getOffsetVertical({ clientY }, { top, height }) {
128
- return (clientY - top) / height;
129
- }
130
- function getOffsetHorizontal({ clientX }, { left, width }) {
131
- return (clientX - left) / width;
132
- }
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb21wb25lbnRzL3Njcm9sbC1jb250cm9scy9zY3JvbGxiYXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakYsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQ0gsYUFBYSxFQUNiLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsV0FBVyxHQUNkLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxLQUFLLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7QUFFdkUsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDO0FBTXJCLE1BQU0sT0FBTyxxQkFBcUI7SUFJOUIsWUFDb0IsSUFBWSxFQUNPLFFBQTBCLEVBQ3BDLGVBQW1DLEVBQ25CLFNBQWtDLEVBQ3hDLEdBQWEsRUFDWCxFQUEyQjtRQUZ2QixjQUFTLEdBQVQsU0FBUyxDQUF5QjtRQUN4QyxRQUFHLEdBQUgsR0FBRyxDQUFVO1FBQ1gsT0FBRSxHQUFGLEVBQUUsQ0FBeUI7UUFScEUsaUJBQVksR0FBOEIsVUFBVSxDQUFDO1FBVWpELE1BQU0sRUFBQyxhQUFhLEVBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNqRSxNQUFNLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzVELE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDeEQsTUFBTSxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRXZFLEtBQUssQ0FDRCxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFDdkUsVUFBVSxDQUFDLElBQUksQ0FDWCxrQkFBa0IsRUFBRSxFQUNwQixTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDZCxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUNuRCxNQUFNLFFBQVEsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDaEQsTUFBTSxVQUFVLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBRXBELE9BQU8sVUFBVSxDQUFDLElBQUksQ0FDbEIsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDLEVBQzNELFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FDdEIsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUNMLENBQ0o7YUFDSSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM1QyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxVQUFVLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQzthQUN0QztpQkFBTTtnQkFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7YUFDeEM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVQLEtBQUssQ0FDRCxlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUNoRCxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUM5QjthQUNJLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzVDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssVUFBVSxFQUFFO2dCQUNsQyxhQUFhLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxHQUFHLENBQUM7Z0JBQ2pELGFBQWEsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLEdBQUcsQ0FBQzthQUN0RDtpQkFBTTtnQkFDSCxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxHQUFHLENBQUM7Z0JBQ2xELGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLEdBQUcsQ0FBQzthQUNyRDtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELElBQVksT0FBTztRQUNmLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYyxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFZLFFBQVE7UUFDaEIsTUFBTSxFQUNGLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsV0FBVyxHQUNkLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUVqQixPQUFPLElBQUksQ0FBQyxZQUFZLEtBQUssVUFBVTtZQUNuQyxDQUFDLENBQUMsU0FBUyxHQUFHLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztZQUMzQyxDQUFDLENBQUMsVUFBVSxHQUFHLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxJQUFZLFlBQVk7UUFDcEIsTUFBTSxFQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFNUUsSUFDSSxDQUFDLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxHQUFHLFlBQVksR0FBRyxTQUFTO1lBQ3JELElBQUksQ0FBQyxZQUFZLEtBQUssVUFBVSxDQUFDO1lBQ3JDLENBQUMsQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLEdBQUcsV0FBVyxHQUFHLFNBQVM7Z0JBQ2xELElBQUksQ0FBQyxZQUFZLEtBQUssWUFBWSxDQUFDLEVBQ3pDO1lBQ0UsT0FBTyxDQUFDLENBQUM7U0FDWjtRQUVELE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxVQUFVO1lBQ25DLENBQUMsQ0FBQyxTQUFTLEdBQUcsWUFBWTtZQUMxQixDQUFDLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBWSxLQUFLO1FBQ2IsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO1FBRXBELE9BQU8sSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBWSxJQUFJO1FBQ1osTUFBTSxFQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFNUUsT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFVBQVU7WUFDbkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRztZQUN0RCxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQVksT0FBTztRQUNmLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUM7SUFDeEMsQ0FBQztJQUVPLFdBQVcsQ0FDZixFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQWEsRUFDOUIsY0FBc0IsRUFDdEIsZ0JBQXdCO1FBRXhCLE1BQU0sRUFBQyxZQUFZLEVBQUUsV0FBVyxFQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFDMUQsTUFBTSxFQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUV4RSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUM7UUFDbEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ2pELE1BQU0sV0FBVyxHQUNiLENBQUMsT0FBTyxHQUFHLEdBQUcsR0FBRyxZQUFZLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsWUFBWSxDQUFDLENBQUM7UUFDOUUsTUFBTSxZQUFZLEdBQ2QsQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLFdBQVcsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxDQUFDO1FBRTlFLE9BQU8sQ0FBQyxNQUFNLEdBQUcsV0FBVyxFQUFFLE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQztJQUMxRCxDQUFDOzttSEFqSVEscUJBQXFCLGtCQUtsQixNQUFNLGFBQ0UsaUJBQWlCLHlCQUN6QixlQUFlLGFBQ2YsY0FBYyxhQUNkLFFBQVEsYUFDUixVQUFVO3VHQVZiLHFCQUFxQixtRkFGbkIsQ0FBQyxpQkFBaUIsQ0FBQzs0RkFFckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUNqQzs7MEJBTVEsTUFBTTsyQkFBQyxNQUFNOzswQkFDYixJQUFJOzswQkFBSSxNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ2hDLE1BQU07MkJBQUMsZUFBZTs7MEJBQ3RCLE1BQU07MkJBQUMsY0FBYzs4QkFDa0IsUUFBUTswQkFBL0MsTUFBTTsyQkFBQyxRQUFROzswQkFDZixNQUFNOzJCQUFDLFVBQVU7NENBUnRCLFlBQVk7c0JBRFgsS0FBSzs7QUFtSVYsU0FBUyxpQkFBaUIsQ0FBQyxFQUFDLE9BQU8sRUFBYSxFQUFFLEVBQUMsR0FBRyxFQUFFLE1BQU0sRUFBYTtJQUN2RSxPQUFPLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztBQUNwQyxDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FBQyxFQUFDLE9BQU8sRUFBYSxFQUFFLEVBQUMsSUFBSSxFQUFFLEtBQUssRUFBYTtJQUN6RSxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQztBQUNwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIFNlbGZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUV9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtQT0xMSU5HX1RJTUV9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7XG4gICAgdHVpU2Nyb2xsRnJvbSxcbiAgICB0dWlTdG9wUHJvcGFnYXRpb24sXG4gICAgdHVpVHlwZWRGcm9tRXZlbnQsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHtUdWlEZXN0cm95U2VydmljZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9zZXJ2aWNlcyc7XG5pbXBvcnQge1RVSV9TQ1JPTExfUkVGfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3Rva2Vucyc7XG5pbXBvcnQge21lcmdlLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGhyb3R0bGVUaW1lfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmNvbnN0IE1JTl9XSURUSCA9IDI0O1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0dWlTY3JvbGxiYXJdJyxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVNjcm9sbGJhckRpcmVjdGl2ZSB7XG4gICAgQElucHV0KClcbiAgICB0dWlTY3JvbGxiYXI6ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCcgPSAndmVydGljYWwnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoTmdab25lKSB6b25lOiBOZ1pvbmUsXG4gICAgICAgIEBTZWxmKCkgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoQU5JTUFUSU9OX0ZSQU1FKSBhbmltYXRpb25GcmFtZSQ6IE9ic2VydmFibGU8bnVtYmVyPixcbiAgICAgICAgQEluamVjdChUVUlfU0NST0xMX1JFRikgcHJpdmF0ZSByZWFkb25seSBjb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvYzogRG9jdW1lbnQsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgKSB7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMuZWw7XG4gICAgICAgIGNvbnN0IG1vdXNlZG93biQgPSB0dWlUeXBlZEZyb21FdmVudChuYXRpdmVFbGVtZW50LCAnbW91c2Vkb3duJyk7XG4gICAgICAgIGNvbnN0IG1vdXNlbW92ZSQgPSB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmRvYywgJ21vdXNlbW92ZScpO1xuICAgICAgICBjb25zdCBtb3VzZXVwJCA9IHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZG9jLCAnbW91c2V1cCcpO1xuICAgICAgICBjb25zdCBtb3VzZWRvd25XcmFwcGVyJCA9IHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMud3JhcHBlciwgJ21vdXNlZG93bicpO1xuXG4gICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgbW91c2Vkb3duV3JhcHBlciQucGlwZShtYXAoZXZlbnQgPT4gdGhpcy5nZXRTY3JvbGxlZChldmVudCwgMC41LCAwLjUpKSksXG4gICAgICAgICAgICBtb3VzZWRvd24kLnBpcGUoXG4gICAgICAgICAgICAgICAgdHVpU3RvcFByb3BhZ2F0aW9uKCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVjdCA9IG5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZlcnRpY2FsID0gZ2V0T2Zmc2V0VmVydGljYWwoZXZlbnQsIHJlY3QpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBob3Jpem9udGFsID0gZ2V0T2Zmc2V0SG9yaXpvbnRhbChldmVudCwgcmVjdCk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG1vdXNlbW92ZSQucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcChldmVudCA9PiB0aGlzLmdldFNjcm9sbGVkKGV2ZW50LCB2ZXJ0aWNhbCwgaG9yaXpvbnRhbCkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKG1vdXNldXAkKSxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKHR1aVpvbmVmcmVlKHpvbmUpLCB0YWtlVW50aWwoZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoW3Njcm9sbFRvcCwgc2Nyb2xsTGVmdF0pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCcpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LnNjcm9sbFRvcCA9IHNjcm9sbFRvcDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuc2Nyb2xsTGVmdCA9IHNjcm9sbExlZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICBhbmltYXRpb25GcmFtZSQucGlwZSh0aHJvdHRsZVRpbWUoUE9MTElOR19USU1FKSksXG4gICAgICAgICAgICB0dWlTY3JvbGxGcm9tKHRoaXMuZWxlbWVudCksXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKHR1aVpvbmVmcmVlKHpvbmUpLCB0YWtlVW50aWwoZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnKSB7XG4gICAgICAgICAgICAgICAgICAgIG5hdGl2ZUVsZW1lbnQuc3R5bGUudG9wID0gYCR7dGhpcy50aHVtYiAqIDEwMH0lYDtcbiAgICAgICAgICAgICAgICAgICAgbmF0aXZlRWxlbWVudC5zdHlsZS5oZWlnaHQgPSBgJHt0aGlzLnZpZXcgKiAxMDB9JWA7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbmF0aXZlRWxlbWVudC5zdHlsZS5sZWZ0ID0gYCR7dGhpcy50aHVtYiAqIDEwMH0lYDtcbiAgICAgICAgICAgICAgICAgICAgbmF0aXZlRWxlbWVudC5zdHlsZS53aWR0aCA9IGAke3RoaXMudmlldyAqIDEwMH0lYDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCB3cmFwcGVyKCk6IEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQhO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHNjcm9sbGVkKCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgIHNjcm9sbFRvcCxcbiAgICAgICAgICAgIHNjcm9sbEhlaWdodCxcbiAgICAgICAgICAgIGNsaWVudEhlaWdodCxcbiAgICAgICAgICAgIHNjcm9sbExlZnQsXG4gICAgICAgICAgICBzY3JvbGxXaWR0aCxcbiAgICAgICAgICAgIGNsaWVudFdpZHRoLFxuICAgICAgICB9ID0gdGhpcy5lbGVtZW50O1xuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBzY3JvbGxUb3AgLyAoc2Nyb2xsSGVpZ2h0IC0gY2xpZW50SGVpZ2h0KVxuICAgICAgICAgICAgOiBzY3JvbGxMZWZ0IC8gKHNjcm9sbFdpZHRoIC0gY2xpZW50V2lkdGgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNvbXBlbnNhdGlvbigpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7Y2xpZW50SGVpZ2h0LCBzY3JvbGxIZWlnaHQsIGNsaWVudFdpZHRoLCBzY3JvbGxXaWR0aH0gPSB0aGlzLmVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgKChjbGllbnRIZWlnaHQgKiBjbGllbnRIZWlnaHQpIC8gc2Nyb2xsSGVpZ2h0ID4gTUlOX1dJRFRIICYmXG4gICAgICAgICAgICAgICAgdGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCcpIHx8XG4gICAgICAgICAgICAoKGNsaWVudFdpZHRoICogY2xpZW50V2lkdGgpIC8gc2Nyb2xsV2lkdGggPiBNSU5fV0lEVEggJiZcbiAgICAgICAgICAgICAgICB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ2hvcml6b250YWwnKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnXG4gICAgICAgICAgICA/IE1JTl9XSURUSCAvIGNsaWVudEhlaWdodFxuICAgICAgICAgICAgOiBNSU5fV0lEVEggLyBjbGllbnRXaWR0aDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCB0aHVtYigpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBjb21wZW5zYXRpb24gPSB0aGlzLmNvbXBlbnNhdGlvbiB8fCB0aGlzLnZpZXc7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc2Nyb2xsZWQgKiAoMSAtIGNvbXBlbnNhdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgdmlldygpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7Y2xpZW50SGVpZ2h0LCBzY3JvbGxIZWlnaHQsIGNsaWVudFdpZHRoLCBzY3JvbGxXaWR0aH0gPSB0aGlzLmVsZW1lbnQ7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnXG4gICAgICAgICAgICA/IE1hdGguY2VpbCgoY2xpZW50SGVpZ2h0IC8gc2Nyb2xsSGVpZ2h0KSAqIDEwMCkgLyAxMDBcbiAgICAgICAgICAgIDogTWF0aC5jZWlsKChjbGllbnRXaWR0aCAvIHNjcm9sbFdpZHRoKSAqIDEwMCkgLyAxMDA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgZWxlbWVudCgpOiBFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTY3JvbGxlZChcbiAgICAgICAge2NsaWVudFksIGNsaWVudFh9OiBNb3VzZUV2ZW50LFxuICAgICAgICBvZmZzZXRWZXJ0aWNhbDogbnVtYmVyLFxuICAgICAgICBvZmZzZXRIb3Jpem9udGFsOiBudW1iZXIsXG4gICAgKTogW251bWJlciwgbnVtYmVyXSB7XG4gICAgICAgIGNvbnN0IHtvZmZzZXRIZWlnaHQsIG9mZnNldFdpZHRofSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3Qge3RvcCwgbGVmdCwgd2lkdGgsIGhlaWdodH0gPSB0aGlzLndyYXBwZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgY29uc3QgbWF4VG9wID0gdGhpcy5lbGVtZW50LnNjcm9sbEhlaWdodCAtIGhlaWdodDtcbiAgICAgICAgY29uc3QgbWF4TGVmdCA9IHRoaXMuZWxlbWVudC5zY3JvbGxXaWR0aCAtIHdpZHRoO1xuICAgICAgICBjb25zdCBzY3JvbGxlZFRvcCA9XG4gICAgICAgICAgICAoY2xpZW50WSAtIHRvcCAtIG9mZnNldEhlaWdodCAqIG9mZnNldFZlcnRpY2FsKSAvIChoZWlnaHQgLSBvZmZzZXRIZWlnaHQpO1xuICAgICAgICBjb25zdCBzY3JvbGxlZExlZnQgPVxuICAgICAgICAgICAgKGNsaWVudFggLSBsZWZ0IC0gb2Zmc2V0V2lkdGggKiBvZmZzZXRIb3Jpem9udGFsKSAvICh3aWR0aCAtIG9mZnNldFdpZHRoKTtcblxuICAgICAgICByZXR1cm4gW21heFRvcCAqIHNjcm9sbGVkVG9wLCBtYXhMZWZ0ICogc2Nyb2xsZWRMZWZ0XTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGdldE9mZnNldFZlcnRpY2FsKHtjbGllbnRZfTogTW91c2VFdmVudCwge3RvcCwgaGVpZ2h0fTogQ2xpZW50UmVjdCk6IG51bWJlciB7XG4gICAgcmV0dXJuIChjbGllbnRZIC0gdG9wKSAvIGhlaWdodDtcbn1cblxuZnVuY3Rpb24gZ2V0T2Zmc2V0SG9yaXpvbnRhbCh7Y2xpZW50WH06IE1vdXNlRXZlbnQsIHtsZWZ0LCB3aWR0aH06IENsaWVudFJlY3QpOiBudW1iZXIge1xuICAgIHJldHVybiAoY2xpZW50WCAtIGxlZnQpIC8gd2lkdGg7XG59XG4iXX0=
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb21wb25lbnRzL3Njcm9sbC1jb250cm9scy9zY3JvbGxiYXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakYsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQ0gsYUFBYSxFQUNiLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsV0FBVyxHQUNkLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxLQUFLLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7QUFFdkUsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDO0FBRXJCLFNBQVMsaUJBQWlCLENBQUMsRUFBQyxPQUFPLEVBQWEsRUFBRSxFQUFDLEdBQUcsRUFBRSxNQUFNLEVBQWE7SUFDdkUsT0FBTyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUM7QUFDcEMsQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQUMsRUFBQyxPQUFPLEVBQWEsRUFBRSxFQUFDLElBQUksRUFBRSxLQUFL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QUFNLENBQUM7UUFDbEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ2pELE1BQU0sV0FBVyxHQUNiLENBQUMsT0FBTyxHQUFHLEdBQUcsR0FBRyxZQUFZLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsWUFBWSxDQUFDLENBQUM7UUFDOUUsTUFBTSxZQUFZLEdBQ2QsQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLFdBQVcsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxDQUFDO1FBRTlFLE9BQU8sQ0FBQyxNQUFNLEdBQUcsV0FBVyxFQUFFLE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQztJQUMxRCxDQUFDOzttSEFqSVEscUJBQXFCLGtCQUtsQixNQUFNLGFBQ0UsaUJBQWlCLHlCQUN6QixlQUFlLGFBQ2YsY0FBYyxhQUNkLFFBQVEsYUFDUixVQUFVO3VHQVZiLHFCQUFxQixtRkFGbkIsQ0FBQyxpQkFBaUIsQ0FBQzs0RkFFckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFNBQVMsRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUNqQzs7MEJBTVEsTUFBTTsyQkFBQyxNQUFNOzswQkFDYixJQUFJOzswQkFBSSxNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ2hDLE1BQU07MkJBQUMsZUFBZTs7MEJBQ3RCLE1BQU07MkJBQUMsY0FBYzs4QkFDa0IsUUFBUTswQkFBL0MsTUFBTTsyQkFBQyxRQUFROzswQkFDZixNQUFNOzJCQUFDLFVBQVU7NENBUnRCLFlBQVk7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5qZWN0LCBJbnB1dCwgTmdab25lLCBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QU5JTUFUSU9OX0ZSQU1FfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7UE9MTElOR19USU1FfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICAgIHR1aVNjcm9sbEZyb20sXG4gICAgdHVpU3RvcFByb3BhZ2F0aW9uLFxuICAgIHR1aVR5cGVkRnJvbUV2ZW50LFxuICAgIHR1aVpvbmVmcmVlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrL29ic2VydmFibGVzJztcbmltcG9ydCB7VHVpRGVzdHJveVNlcnZpY2V9IGZyb20gJ0B0YWlnYS11aS9jZGsvc2VydmljZXMnO1xuaW1wb3J0IHtUVUlfU0NST0xMX1JFRn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHttZXJnZSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRocm90dGxlVGltZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5jb25zdCBNSU5fV0lEVEggPSAyNDtcblxuZnVuY3Rpb24gZ2V0T2Zmc2V0VmVydGljYWwoe2NsaWVudFl9OiBNb3VzZUV2ZW50LCB7dG9wLCBoZWlnaHR9OiBDbGllbnRSZWN0KTogbnVtYmVyIHtcbiAgICByZXR1cm4gKGNsaWVudFkgLSB0b3ApIC8gaGVpZ2h0O1xufVxuXG5mdW5jdGlvbiBnZXRPZmZzZXRIb3Jpem9udGFsKHtjbGllbnRYfTogTW91c2VFdmVudCwge2xlZnQsIHdpZHRofTogQ2xpZW50UmVjdCk6IG51bWJlciB7XG4gICAgcmV0dXJuIChjbGllbnRYIC0gbGVmdCkgLyB3aWR0aDtcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdHVpU2Nyb2xsYmFyXScsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlTY3JvbGxiYXJEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpXG4gICAgdHVpU2Nyb2xsYmFyOiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnID0gJ3ZlcnRpY2FsJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgem9uZTogTmdab25lLFxuICAgICAgICBAU2VsZigpIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPHZvaWQ+LFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgICAgIEBJbmplY3QoVFVJX1NDUk9MTF9SRUYpIHByaXZhdGUgcmVhZG9ubHkgY29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2M6IERvY3VtZW50LFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICkge1xuICAgICAgICBjb25zdCB7bmF0aXZlRWxlbWVudH0gPSB0aGlzLmVsO1xuICAgICAgICBjb25zdCBtb3VzZWRvd24kID0gdHVpVHlwZWRGcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgJ21vdXNlZG93bicpO1xuICAgICAgICBjb25zdCBtb3VzZW1vdmUkID0gdHVpVHlwZWRGcm9tRXZlbnQodGhpcy5kb2MsICdtb3VzZW1vdmUnKTtcbiAgICAgICAgY29uc3QgbW91c2V1cCQgPSB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmRvYywgJ21vdXNldXAnKTtcbiAgICAgICAgY29uc3QgbW91c2Vkb3duV3JhcHBlciQgPSB0dWlUeXBlZEZyb21FdmVudCh0aGlzLndyYXBwZXIsICdtb3VzZWRvd24nKTtcblxuICAgICAgICBtZXJnZShcbiAgICAgICAgICAgIG1vdXNlZG93bldyYXBwZXIkLnBpcGUobWFwKGV2ZW50ID0+IHRoaXMuZ2V0U2Nyb2xsZWQoZXZlbnQsIDAuNSwgMC41KSkpLFxuICAgICAgICAgICAgbW91c2Vkb3duJC5waXBlKFxuICAgICAgICAgICAgICAgIHR1aVN0b3BQcm9wYWdhdGlvbigpLFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChldmVudCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlY3QgPSBuYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB2ZXJ0aWNhbCA9IGdldE9mZnNldFZlcnRpY2FsKGV2ZW50LCByZWN0KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaG9yaXpvbnRhbCA9IGdldE9mZnNldEhvcml6b250YWwoZXZlbnQsIHJlY3QpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBtb3VzZW1vdmUkLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAoZXZlbnQgPT4gdGhpcy5nZXRTY3JvbGxlZChldmVudCwgdmVydGljYWwsIGhvcml6b250YWwpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbChtb3VzZXVwJCksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICApXG4gICAgICAgICAgICAucGlwZSh0dWlab25lZnJlZSh6b25lKSwgdGFrZVVudGlsKGRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKFtzY3JvbGxUb3AsIHNjcm9sbExlZnRdKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5zY3JvbGxUb3AgPSBzY3JvbGxUb3A7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50LnNjcm9sbExlZnQgPSBzY3JvbGxMZWZ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgYW5pbWF0aW9uRnJhbWUkLnBpcGUodGhyb3R0bGVUaW1lKFBPTExJTkdfVElNRSkpLFxuICAgICAgICAgICAgdHVpU2Nyb2xsRnJvbSh0aGlzLmVsZW1lbnQpLFxuICAgICAgICApXG4gICAgICAgICAgICAucGlwZSh0dWlab25lZnJlZSh6b25lKSwgdGFrZVVudGlsKGRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICAgICAgICAgICAgICBuYXRpdmVFbGVtZW50LnN0eWxlLnRvcCA9IGAke3RoaXMudGh1bWIgKiAxMDB9JWA7XG4gICAgICAgICAgICAgICAgICAgIG5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gYCR7dGhpcy52aWV3ICogMTAwfSVgO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIG5hdGl2ZUVsZW1lbnQuc3R5bGUubGVmdCA9IGAke3RoaXMudGh1bWIgKiAxMDB9JWA7XG4gICAgICAgICAgICAgICAgICAgIG5hdGl2ZUVsZW1lbnQuc3R5bGUud2lkdGggPSBgJHt0aGlzLnZpZXcgKiAxMDB9JWA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgd3JhcHBlcigpOiBFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWwubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50ITtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBzY3JvbGxlZCgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICBzY3JvbGxUb3AsXG4gICAgICAgICAgICBzY3JvbGxIZWlnaHQsXG4gICAgICAgICAgICBjbGllbnRIZWlnaHQsXG4gICAgICAgICAgICBzY3JvbGxMZWZ0LFxuICAgICAgICAgICAgc2Nyb2xsV2lkdGgsXG4gICAgICAgICAgICBjbGllbnRXaWR0aCxcbiAgICAgICAgfSA9IHRoaXMuZWxlbWVudDtcblxuICAgICAgICByZXR1cm4gdGhpcy50dWlTY3JvbGxiYXIgPT09ICd2ZXJ0aWNhbCdcbiAgICAgICAgICAgID8gc2Nyb2xsVG9wIC8gKHNjcm9sbEhlaWdodCAtIGNsaWVudEhlaWdodClcbiAgICAgICAgICAgIDogc2Nyb2xsTGVmdCAvIChzY3JvbGxXaWR0aCAtIGNsaWVudFdpZHRoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBjb21wZW5zYXRpb24oKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qge2NsaWVudEhlaWdodCwgc2Nyb2xsSGVpZ2h0LCBjbGllbnRXaWR0aCwgc2Nyb2xsV2lkdGh9ID0gdGhpcy5lbGVtZW50O1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICgoY2xpZW50SGVpZ2h0ICogY2xpZW50SGVpZ2h0KSAvIHNjcm9sbEhlaWdodCA+IE1JTl9XSURUSCAmJlxuICAgICAgICAgICAgICAgIHRoaXMudHVpU2Nyb2xsYmFyID09PSAndmVydGljYWwnKSB8fFxuICAgICAgICAgICAgKChjbGllbnRXaWR0aCAqIGNsaWVudFdpZHRoKSAvIHNjcm9sbFdpZHRoID4gTUlOX1dJRFRIICYmXG4gICAgICAgICAgICAgICAgdGhpcy50dWlTY3JvbGxiYXIgPT09ICdob3Jpem9udGFsJylcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBNSU5fV0lEVEggLyBjbGllbnRIZWlnaHRcbiAgICAgICAgICAgIDogTUlOX1dJRFRIIC8gY2xpZW50V2lkdGg7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgdGh1bWIoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgY29tcGVuc2F0aW9uID0gdGhpcy5jb21wZW5zYXRpb24gfHwgdGhpcy52aWV3O1xuXG4gICAgICAgIHJldHVybiB0aGlzLnNjcm9sbGVkICogKDEgLSBjb21wZW5zYXRpb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IHZpZXcoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3Qge2NsaWVudEhlaWdodCwgc2Nyb2xsSGVpZ2h0LCBjbGllbnRXaWR0aCwgc2Nyb2xsV2lkdGh9ID0gdGhpcy5lbGVtZW50O1xuXG4gICAgICAgIHJldHVybiB0aGlzLnR1aVNjcm9sbGJhciA9PT0gJ3ZlcnRpY2FsJ1xuICAgICAgICAgICAgPyBNYXRoLmNlaWwoKGNsaWVudEhlaWdodCAvIHNjcm9sbEhlaWdodCkgKiAxMDApIC8gMTAwXG4gICAgICAgICAgICA6IE1hdGguY2VpbCgoY2xpZW50V2lkdGggLyBzY3JvbGxXaWR0aCkgKiAxMDApIC8gMTAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGVsZW1lbnQoKTogRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U2Nyb2xsZWQoXG4gICAgICAgIHtjbGllbnRZLCBjbGllbnRYfTogTW91c2VFdmVudCxcbiAgICAgICAgb2Zmc2V0VmVydGljYWw6IG51bWJlcixcbiAgICAgICAgb2Zmc2V0SG9yaXpvbnRhbDogbnVtYmVyLFxuICAgICk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgICAgICBjb25zdCB7b2Zmc2V0SGVpZ2h0LCBvZmZzZXRXaWR0aH0gPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHt0b3AsIGxlZnQsIHdpZHRoLCBoZWlnaHR9ID0gdGhpcy53cmFwcGVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIGNvbnN0IG1heFRvcCA9IHRoaXMuZWxlbWVudC5zY3JvbGxIZWlnaHQgLSBoZWlnaHQ7XG4gICAgICAgIGNvbnN0IG1heExlZnQgPSB0aGlzLmVsZW1lbnQuc2Nyb2xsV2lkdGggLSB3aWR0aDtcbiAgICAgICAgY29uc3Qgc2Nyb2xsZWRUb3AgPVxuICAgICAgICAgICAgKGNsaWVudFkgLSB0b3AgLSBvZmZzZXRIZWlnaHQgKiBvZmZzZXRWZXJ0aWNhbCkgLyAoaGVpZ2h0IC0gb2Zmc2V0SGVpZ2h0KTtcbiAgICAgICAgY29uc3Qgc2Nyb2xsZWRMZWZ0ID1cbiAgICAgICAgICAgIChjbGllbnRYIC0gbGVmdCAtIG9mZnNldFdpZHRoICogb2Zmc2V0SG9yaXpvbnRhbCkgLyAod2lkdGggLSBvZmZzZXRXaWR0aCk7XG5cbiAgICAgICAgcmV0dXJuIFttYXhUb3AgKiBzY3JvbGxlZFRvcCwgbWF4TGVmdCAqIHNjcm9sbGVkTGVmdF07XG4gICAgfVxufVxuIl19
@@ -1,12 +1,4 @@
1
1
  import { QueryList } from '@angular/core';
2
- /**
3
- * For type safety when using @ContentChildren and @ViewChildren
4
- *
5
- * NOTE: Be careful subscribing to 'changes'
6
- */
7
- export const EMPTY_QUERY = new QueryList();
8
- export const EMPTY_ARRAY = [];
9
- export const EMPTY_FUNCTION = () => { };
10
2
  const rect = {
11
3
  bottom: 0,
12
4
  height: 0,
@@ -17,7 +9,15 @@ const rect = {
17
9
  x: 0,
18
10
  y: 0,
19
11
  };
12
+ /**
13
+ * For type safety when using @ContentChildren and @ViewChildren
14
+ *
15
+ * NOTE: Be careful subscribing to 'changes'
16
+ */
17
+ export const EMPTY_QUERY = new QueryList();
18
+ export const EMPTY_ARRAY = [];
19
+ export const EMPTY_FUNCTION = () => { };
20
20
  export const EMPTY_CLIENT_RECT = Object.assign(Object.assign({}, rect), { toJSON() {
21
21
  return rect;
22
22
  } });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvY29uc3RhbnRzL2VtcHR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFeEM7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxJQUFJLFNBQVMsRUFBTyxDQUFDO0FBQ2hELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBTyxFQUFFLENBQUM7QUFDbEMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUE2QixHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7QUFFakUsTUFBTSxJQUFJLEdBQUc7SUFDVCxNQUFNLEVBQUUsQ0FBQztJQUNULE1BQU0sRUFBRSxDQUFDO0lBQ1QsSUFBSSxFQUFFLENBQUM7SUFDUCxLQUFLLEVBQUUsQ0FBQztJQUNSLEdBQUcsRUFBRSxDQUFDO0lBQ04sS0FBSyxFQUFFLENBQUM7SUFDUixDQUFDLEVBQUUsQ0FBQztJQUNKLENBQUMsRUFBRSxDQUFDO0NBQ0UsQ0FBQztBQUVYLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixtQ0FDdkIsSUFBSSxLQUNQLE1BQU07UUFDRixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDLEdBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UXVlcnlMaXN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBGb3IgdHlwZSBzYWZldHkgd2hlbiB1c2luZyBAQ29udGVudENoaWxkcmVuIGFuZCBAVmlld0NoaWxkcmVuXG4gKlxuICogTk9URTogQmUgY2FyZWZ1bCBzdWJzY3JpYmluZyB0byAnY2hhbmdlcydcbiAqL1xuZXhwb3J0IGNvbnN0IEVNUFRZX1FVRVJZID0gbmV3IFF1ZXJ5TGlzdDxhbnk+KCk7XG5leHBvcnQgY29uc3QgRU1QVFlfQVJSQVk6IFtdID0gW107XG5leHBvcnQgY29uc3QgRU1QVFlfRlVOQ1RJT046ICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG5jb25zdCByZWN0ID0ge1xuICAgIGJvdHRvbTogMCxcbiAgICBoZWlnaHQ6IDAsXG4gICAgbGVmdDogMCxcbiAgICByaWdodDogMCxcbiAgICB0b3A6IDAsXG4gICAgd2lkdGg6IDAsXG4gICAgeDogMCxcbiAgICB5OiAwLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IGNvbnN0IEVNUFRZX0NMSUVOVF9SRUNUOiBET01SZWN0ID0ge1xuICAgIC4uLnJlY3QsXG4gICAgdG9KU09OKCkge1xuICAgICAgICByZXR1cm4gcmVjdDtcbiAgICB9LFxufTtcbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvY29uc3RhbnRzL2VtcHR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFeEMsTUFBTSxJQUFJLEdBQUc7SUFDVCxNQUFNLEVBQUUsQ0FBQztJQUNULE1BQU0sRUFBRSxDQUFDO0lBQ1QsSUFBSSxFQUFFLENBQUM7SUFDUCxLQUFLLEVBQUUsQ0FBQztJQUNSLEdBQUcsRUFBRSxDQUFDO0lBQ04sS0FBSyxFQUFFLENBQUM7SUFDUixDQUFDLEVBQUUsQ0FBQztJQUNKLENBQUMsRUFBRSxDQUFDO0NBQ0UsQ0FBQztBQUVYOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsSUFBSSxTQUFTLEVBQU8sQ0FBQztBQUNoRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQU8sRUFBRSxDQUFDO0FBQ2xDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBNkIsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0FBQ2pFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixtQ0FDdkIsSUFBSSxLQUNQLE1BQU07UUFDRixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDLEdBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UXVlcnlMaXN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuY29uc3QgcmVjdCA9IHtcbiAgICBib3R0b206IDAsXG4gICAgaGVpZ2h0OiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgcmlnaHQ6IDAsXG4gICAgdG9wOiAwLFxuICAgIHdpZHRoOiAwLFxuICAgIHg6IDAsXG4gICAgeTogMCxcbn0gYXMgY29uc3Q7XG5cbi8qKlxuICogRm9yIHR5cGUgc2FmZXR5IHdoZW4gdXNpbmcgQENvbnRlbnRDaGlsZHJlbiBhbmQgQFZpZXdDaGlsZHJlblxuICpcbiAqIE5PVEU6IEJlIGNhcmVmdWwgc3Vic2NyaWJpbmcgdG8gJ2NoYW5nZXMnXG4gKi9cbmV4cG9ydCBjb25zdCBFTVBUWV9RVUVSWSA9IG5ldyBRdWVyeUxpc3Q8YW55PigpO1xuZXhwb3J0IGNvbnN0IEVNUFRZX0FSUkFZOiBbXSA9IFtdO1xuZXhwb3J0IGNvbnN0IEVNUFRZX0ZVTkNUSU9OOiAoLi4uYXJnczogYW55W10pID0+IHZvaWQgPSAoKSA9PiB7fTtcbmV4cG9ydCBjb25zdCBFTVBUWV9DTElFTlRfUkVDVDogRE9NUmVjdCA9IHtcbiAgICAuLi5yZWN0LFxuICAgIHRvSlNPTigpIHtcbiAgICAgICAgcmV0dXJuIHJlY3Q7XG4gICAgfSxcbn07XG4iXX0=
@@ -1,4 +1,7 @@
1
1
  import { TUI_DEFAULT_STRINGIFY } from './stringify';
2
+ function bothEmpty(item1, item2) {
3
+ return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;
4
+ }
2
5
  /**
3
6
  * Default handler for matching stringified version of an item and a search query
4
7
  * @param item arbitrary element to match with a string
@@ -21,7 +24,4 @@ export const TUI_STRICT_MATCHER = (item, search, stringify = TUI_DEFAULT_STRINGI
21
24
  * @param item2 second element
22
25
  */
23
26
  export const TUI_DEFAULT_IDENTITY_MATCHER = (item1, item2) => item1 === item2 || bothEmpty(item1, item2);
24
- function bothEmpty(item1, item2) {
25
- return Array.isArray(item1) && Array.isArray(item2) && !item1.length && !item2.length;
26
- }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb25zdGFudHMvbWF0Y2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFFbEQ7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUMvQixJQUFPLEVBQ1AsTUFBYyxFQUNkLFlBQW1DLHFCQUFxQixFQUNqRCxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUUzRTs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQzlCLElBQU8sRUFDUCxNQUFjLEVBQ2QsWUFBbUMscUJBQXFCLEVBQ2pELEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEtBQUssTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO0FBRXJFOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFnQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUN0RixLQUFLLEtBQUssS0FBSyxJQUFJLFNBQVMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFFL0MsU0FBUyxTQUFTLENBQUMsS0FBYyxFQUFFLEtBQWM7SUFDN0MsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztBQUMxRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUdWlIYW5kbGVyLCBUdWlJZGVudGl0eU1hdGNoZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuXG5pbXBvcnQge1RVSV9ERUZBVUxUX1NUUklOR0lGWX0gZnJvbSAnLi9zdHJpbmdpZnknO1xuXG4vKipcbiAqIERlZmF1bHQgaGFuZGxlciBmb3IgbWF0Y2hpbmcgc3RyaW5naWZpZWQgdmVyc2lvbiBvZiBhbiBpdGVtIGFuZCBhIHNlYXJjaCBxdWVyeVxuICogQHBhcmFtIGl0ZW0gYXJiaXRyYXJ5IGVsZW1lbnQgdG8gbWF0Y2ggd2l0aCBhIHN0cmluZ1xuICogQHBhcmFtIHNlYXJjaCBzZWFyY2ggcXVlcnlcbiAqIEBwYXJhbSBzdHJpbmdpZnkgaGFuZGxlciB0byB0dXJuIGl0ZW0gaW50byBhIHN0cmluZ1xuICovXG5leHBvcnQgY29uc3QgVFVJX0RFRkFVTFRfTUFUQ0hFUiA9IDxUPihcbiAgICBpdGVtOiBULFxuICAgIHNlYXJjaDogc3RyaW5nLFxuICAgIHN0cmluZ2lmeTogVHVpSGFuZGxlcjxULCBzdHJpbmc+ID0gVFVJX0RFRkFVTFRfU1RSSU5HSUZZLFxuKTogYm9vbGVhbiA9PiBzdHJpbmdpZnkoaXRlbSkudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2gudG9Mb3dlckNhc2UoKSk7XG5cbi8qKlxuICogRGVmYXVsdCBoYW5kbGVyIGZvciBzdHJpY3QgbWF0Y2hpbmcgc3RyaW5naWZpZWQgdmVyc2lvbiBvZiBhbiBpdGVtIGFuZCBhIHNlYXJjaCBxdWVyeVxuICogQHBhcmFtIGl0ZW0gYXJiaXRyYXJ5IGVsZW1lbnQgdG8gbWF0Y2ggd2l0aCBhIHN0cmluZ1xuICogQHBhcmFtIHNlYXJjaCBzZWFyY2ggcXVlcnlcbiAqIEBwYXJhbSBzdHJpbmdpZnkgaGFuZGxlciB0byB0dXJuIGl0ZW0gaW50byBhIHN0cmluZ1xuICovXG5leHBvcnQgY29uc3QgVFVJX1NUUklDVF9NQVRDSEVSID0gPFQ+KFxuICAgIGl0ZW06IFQsXG4gICAgc2VhcmNoOiBzdHJpbmcsXG4gICAgc3RyaW5naWZ5OiBUdWlIYW5kbGVyPFQsIHN0cmluZz4gPSBUVUlfREVGQVVMVF9TVFJJTkdJRlksXG4pOiBib29sZWFuID0+IHN0cmluZ2lmeShpdGVtKS50b0xvd2VyQ2FzZSgpID09PSBzZWFyY2gudG9Mb3dlckNhc2UoKTtcblxuLyoqXG4gKiBEZWZhdWx0IGhhbmRsZXIgdG8gbWF0Y2ggZXF1YWxpdHkgb2YgdHdvIGVsZW1lbnRzXG4gKiBBVFRFTlRJT046IGNvbnNpZGVycyB0d28gZW1wdHkgYXJyYXlzIGVxdWFsXG4gKlxuICogQHBhcmFtIGl0ZW0xIGZpcnN0IGVsZW1lbnRcbiAqIEBwYXJhbSBpdGVtMiBzZWNvbmQgZWxlbWVudFxuICovXG5leHBvcnQgY29uc3QgVFVJX0RFRkFVTFRfSURFTlRJVFlfTUFUQ0hFUjogVHVpSWRlbnRpdHlNYXRjaGVyPHVua25vd24+ID0gKGl0ZW0xLCBpdGVtMikgPT5cbiAgICBpdGVtMSA9PT0gaXRlbTIgfHwgYm90aEVtcHR5KGl0ZW0xLCBpdGVtMik7XG5cbmZ1bmN0aW9uIGJvdGhFbXB0eShpdGVtMTogdW5rbm93biwgaXRlbTI6IHVua25vd24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShpdGVtMSkgJiYgQXJyYXkuaXNBcnJheShpdGVtMikgJiYgIWl0ZW0xLmxlbmd0aCAmJiAhaXRlbTIubGVuZ3RoO1xufVxuIl19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb25zdGFudHMvbWF0Y2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFFbEQsU0FBUyxTQUFTLENBQUMsS0FBYyxFQUFFLEtBQWM7SUFDN0MsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztBQUMxRixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUMvQixJQUFPLEVBQ1AsTUFBYyxFQUNkLFlBQW1DLHFCQUFxQixFQUNqRCxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUUzRTs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQzlCLElBQU8sRUFDUCxNQUFjLEVBQ2QsWUFBbUMscUJBQXFCLEVBQ2pELEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEtBQUssTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO0FBRXJFOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFnQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUN0RixLQUFLLEtBQUssS0FBSyxJQUFJLFNBQVMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R1aUhhbmRsZXIsIFR1aUlkZW50aXR5TWF0Y2hlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay90eXBlcyc7XG5cbmltcG9ydCB7VFVJX0RFRkFVTFRfU1RSSU5HSUZZfSBmcm9tICcuL3N0cmluZ2lmeSc7XG5cbmZ1bmN0aW9uIGJvdGhFbXB0eShpdGVtMTogdW5rbm93biwgaXRlbTI6IHVua25vd24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShpdGVtMSkgJiYgQXJyYXkuaXNBcnJheShpdGVtMikgJiYgIWl0ZW0xLmxlbmd0aCAmJiAhaXRlbTIubGVuZ3RoO1xufVxuXG4vKipcbiAqIERlZmF1bHQgaGFuZGxlciBmb3IgbWF0Y2hpbmcgc3RyaW5naWZpZWQgdmVyc2lvbiBvZiBhbiBpdGVtIGFuZCBhIHNlYXJjaCBxdWVyeVxuICogQHBhcmFtIGl0ZW0gYXJiaXRyYXJ5IGVsZW1lbnQgdG8gbWF0Y2ggd2l0aCBhIHN0cmluZ1xuICogQHBhcmFtIHNlYXJjaCBzZWFyY2ggcXVlcnlcbiAqIEBwYXJhbSBzdHJpbmdpZnkgaGFuZGxlciB0byB0dXJuIGl0ZW0gaW50byBhIHN0cmluZ1xuICovXG5leHBvcnQgY29uc3QgVFVJX0RFRkFVTFRfTUFUQ0hFUiA9IDxUPihcbiAgICBpdGVtOiBULFxuICAgIHNlYXJjaDogc3RyaW5nLFxuICAgIHN0cmluZ2lmeTogVHVpSGFuZGxlcjxULCBzdHJpbmc+ID0gVFVJX0RFRkFVTFRfU1RSSU5HSUZZLFxuKTogYm9vbGVhbiA9PiBzdHJpbmdpZnkoaXRlbSkudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2gudG9Mb3dlckNhc2UoKSk7XG5cbi8qKlxuICogRGVmYXVsdCBoYW5kbGVyIGZvciBzdHJpY3QgbWF0Y2hpbmcgc3RyaW5naWZpZWQgdmVyc2lvbiBvZiBhbiBpdGVtIGFuZCBhIHNlYXJjaCBxdWVyeVxuICogQHBhcmFtIGl0ZW0gYXJiaXRyYXJ5IGVsZW1lbnQgdG8gbWF0Y2ggd2l0aCBhIHN0cmluZ1xuICogQHBhcmFtIHNlYXJjaCBzZWFyY2ggcXVlcnlcbiAqIEBwYXJhbSBzdHJpbmdpZnkgaGFuZGxlciB0byB0dXJuIGl0ZW0gaW50byBhIHN0cmluZ1xuICovXG5leHBvcnQgY29uc3QgVFVJX1NUUklDVF9NQVRDSEVSID0gPFQ+KFxuICAgIGl0ZW06IFQsXG4gICAgc2VhcmNoOiBzdHJpbmcsXG4gICAgc3RyaW5naWZ5OiBUdWlIYW5kbGVyPFQsIHN0cmluZz4gPSBUVUlfREVGQVVMVF9TVFJJTkdJRlksXG4pOiBib29sZWFuID0+IHN0cmluZ2lmeShpdGVtKS50b0xvd2VyQ2FzZSgpID09PSBzZWFyY2gudG9Mb3dlckNhc2UoKTtcblxuLyoqXG4gKiBEZWZhdWx0IGhhbmRsZXIgdG8gbWF0Y2ggZXF1YWxpdHkgb2YgdHdvIGVsZW1lbnRzXG4gKiBBVFRFTlRJT046IGNvbnNpZGVycyB0d28gZW1wdHkgYXJyYXlzIGVxdWFsXG4gKlxuICogQHBhcmFtIGl0ZW0xIGZpcnN0IGVsZW1lbnRcbiAqIEBwYXJhbSBpdGVtMiBzZWNvbmQgZWxlbWVudFxuICovXG5leHBvcnQgY29uc3QgVFVJX0RFRkFVTFRfSURFTlRJVFlfTUFUQ0hFUjogVHVpSWRlbnRpdHlNYXRjaGVyPHVua25vd24+ID0gKGl0ZW0xLCBpdGVtMikgPT5cbiAgICBpdGVtMSA9PT0gaXRlbTIgfHwgYm90aEVtcHR5KGl0ZW0xLCBpdGVtMik7XG4iXX0=
@@ -5,68 +5,68 @@
5
5
  * Array of icons used in taiga-ui components
6
6
  */
7
7
  export const TUI_USED_ICONS = [
8
- 'tuiIconMirMono',
9
- 'tuiIconVisaMono',
10
- 'tuiIconElectronMono',
11
- 'tuiIconMastercard',
12
- 'tuiIconMaestro',
13
- 'tuiIconAmex',
14
- 'tuiIconDinersClub',
15
- 'tuiIconDiscover',
16
- 'tuiIconHumo',
17
- 'tuiIconJCB',
18
- 'tuiIconRuPay',
19
- 'tuiIconUnionPay',
20
- 'tuiIconUzcard',
21
- 'tuiIconVerve',
22
- 'tuiIconCopyLarge',
23
- 'tuiIconCheckLarge',
24
- 'tuiIconLink',
25
- 'tuiIconSearch',
26
- 'tuiIconSun',
27
- 'tuiIconMoon',
28
- 'tuiIconCode',
29
- 'tuiIconMenuLarge',
30
- 'tuiIconRotate',
31
- 'tuiIconArrowLeft',
32
- 'tuiIconArrowRight',
33
- 'tuiIconPlus',
34
- 'tuiIconMinus',
35
- 'tuiIconMinimize',
36
- 'tuiIconEye',
37
- 'tuiIconEyeOff',
38
- 'tuiIconDrag',
39
- 'tuiIconSortAscending',
40
- 'tuiIconSortDescending',
41
- 'tuiIconSortOff',
42
- 'tuiIconCheck',
43
- 'tuiIconMinusLarge',
44
- 'tuiIconChevronUp',
45
- 'tuiIconHelpCircle',
46
- 'tuiIconClose',
47
- 'tuiIconAlertCircle',
48
- 'tuiIconChevronRight',
49
- 'tuiIconInfo',
50
- 'tuiIconCheckCircle',
51
- 'tuiIconXCircle',
52
- 'tuiIconChevronLeft',
53
- 'tuiIconStarLarge',
54
- 'tuiIconChevronDown',
55
- 'tuiIconChevronDownLarge',
56
- 'tuiIconFileLarge',
57
- 'tuiIconTrashLarge',
58
- 'tuiIconAlertCircleLarge',
59
- 'tuiIconCheckCircleLarge',
60
- 'tuiIconCopy',
61
- 'tuiIconEyeOffLarge',
62
- 'tuiIconEyeLarge',
63
- 'tuiIconClock',
64
- 'tuiIconClockLarge',
65
- 'tuiIconToggleOff',
66
- 'tuiIconToggleOffLarge',
67
- 'tuiIconToggleOn',
68
- 'tuiIconToggleOnLarge',
69
- 'tuiIconCalendar',
70
- 'tuiIconCalendarLarge',
8
+ `tuiIconMirMono`,
9
+ `tuiIconVisaMono`,
10
+ `tuiIconElectronMono`,
11
+ `tuiIconMastercard`,
12
+ `tuiIconMaestro`,
13
+ `tuiIconAmex`,
14
+ `tuiIconDinersClub`,
15
+ `tuiIconDiscover`,
16
+ `tuiIconHumo`,
17
+ `tuiIconJCB`,
18
+ `tuiIconRuPay`,
19
+ `tuiIconUnionPay`,
20
+ `tuiIconUzcard`,
21
+ `tuiIconVerve`,
22
+ `tuiIconCopyLarge`,
23
+ `tuiIconCheckLarge`,
24
+ `tuiIconLink`,
25
+ `tuiIconSearch`,
26
+ `tuiIconSun`,
27
+ `tuiIconMoon`,
28
+ `tuiIconCode`,
29
+ `tuiIconMenuLarge`,
30
+ `tuiIconRotate`,
31
+ `tuiIconArrowLeft`,
32
+ `tuiIconArrowRight`,
33
+ `tuiIconPlus`,
34
+ `tuiIconMinus`,
35
+ `tuiIconMinimize`,
36
+ `tuiIconEye`,
37
+ `tuiIconEyeOff`,
38
+ `tuiIconDrag`,
39
+ `tuiIconSortAscending`,
40
+ `tuiIconSortDescending`,
41
+ `tuiIconSortOff`,
42
+ `tuiIconCheck`,
43
+ `tuiIconMinusLarge`,
44
+ `tuiIconChevronUp`,
45
+ `tuiIconHelpCircle`,
46
+ `tuiIconClose`,
47
+ `tuiIconAlertCircle`,
48
+ `tuiIconChevronRight`,
49
+ `tuiIconInfo`,
50
+ `tuiIconCheckCircle`,
51
+ `tuiIconXCircle`,
52
+ `tuiIconChevronLeft`,
53
+ `tuiIconStarLarge`,
54
+ `tuiIconChevronDown`,
55
+ `tuiIconChevronDownLarge`,
56
+ `tuiIconFileLarge`,
57
+ `tuiIconTrashLarge`,
58
+ `tuiIconAlertCircleLarge`,
59
+ `tuiIconCheckCircleLarge`,
60
+ `tuiIconCopy`,
61
+ `tuiIconEyeOffLarge`,
62
+ `tuiIconEyeLarge`,
63
+ `tuiIconClock`,
64
+ `tuiIconClockLarge`,
65
+ `tuiIconToggleOff`,
66
+ `tuiIconToggleOffLarge`,
67
+ `tuiIconToggleOn`,
68
+ `tuiIconToggleOnLarge`,
69
+ `tuiIconCalendar`,
70
+ `tuiIconCalendarLarge`,
71
71
  ];
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlZC1pY29ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb25zdGFudHMvdXNlZC1pY29ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUMxQixnQkFBZ0I7SUFDaEIsaUJBQWlCO0lBQ2pCLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLGFBQWE7SUFDYixZQUFZO0lBQ1osY0FBYztJQUNkLGlCQUFpQjtJQUNqQixlQUFlO0lBQ2YsY0FBYztJQUNkLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLGVBQWU7SUFDZixZQUFZO0lBQ1osYUFBYTtJQUNiLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsWUFBWTtJQUNaLGVBQWU7SUFDZixhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QixnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLGNBQWM7SUFDZCxvQkFBb0I7SUFDcEIscUJBQXFCO0lBQ3JCLGFBQWE7SUFDYixvQkFBb0I7SUFDcEIsZ0JBQWdCO0lBQ2hCLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLHlCQUF5QjtJQUN6QixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLHlCQUF5QjtJQUN6Qix5QkFBeUI7SUFDekIsYUFBYTtJQUNiLG9CQUFvQjtJQUNwQixpQkFBaUI7SUFDakIsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIsdUJBQXVCO0lBQ3ZCLGlCQUFpQjtJQUNqQixzQkFBc0I7SUFDdEIsaUJBQWlCO0lBQ2pCLHNCQUFzQjtDQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZGVzY3JpcHRpb246XG4gKiBBVVRPR0VORVJBVEVEXG4gKlxuICogQXJyYXkgb2YgaWNvbnMgdXNlZCBpbiB0YWlnYS11aSBjb21wb25lbnRzXG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfVVNFRF9JQ09OUyA9IFtcbiAgICAndHVpSWNvbk1pck1vbm8nLFxuICAgICd0dWlJY29uVmlzYU1vbm8nLFxuICAgICd0dWlJY29uRWxlY3Ryb25Nb25vJyxcbiAgICAndHVpSWNvbk1hc3RlcmNhcmQnLFxuICAgICd0dWlJY29uTWFlc3RybycsXG4gICAgJ3R1aUljb25BbWV4JyxcbiAgICAndHVpSWNvbkRpbmVyc0NsdWInLFxuICAgICd0dWlJY29uRGlzY292ZXInLFxuICAgICd0dWlJY29uSHVtbycsXG4gICAgJ3R1aUljb25KQ0InLFxuICAgICd0dWlJY29uUnVQYXknLFxuICAgICd0dWlJY29uVW5pb25QYXknLFxuICAgICd0dWlJY29uVXpjYXJkJyxcbiAgICAndHVpSWNvblZlcnZlJyxcbiAgICAndHVpSWNvbkNvcHlMYXJnZScsXG4gICAgJ3R1aUljb25DaGVja0xhcmdlJyxcbiAgICAndHVpSWNvbkxpbmsnLFxuICAgICd0dWlJY29uU2VhcmNoJyxcbiAgICAndHVpSWNvblN1bicsXG4gICAgJ3R1aUljb25Nb29uJyxcbiAgICAndHVpSWNvbkNvZGUnLFxuICAgICd0dWlJY29uTWVudUxhcmdlJyxcbiAgICAndHVpSWNvblJvdGF0ZScsXG4gICAgJ3R1aUljb25BcnJvd0xlZnQnLFxuICAgICd0dWlJY29uQXJyb3dSaWdodCcsXG4gICAgJ3R1aUljb25QbHVzJyxcbiAgICAndHVpSWNvbk1pbnVzJyxcbiAgICAndHVpSWNvbk1pbmltaXplJyxcbiAgICAndHVpSWNvbkV5ZScsXG4gICAgJ3R1aUljb25FeWVPZmYnLFxuICAgICd0dWlJY29uRHJhZycsXG4gICAgJ3R1aUljb25Tb3J0QXNjZW5kaW5nJyxcbiAgICAndHVpSWNvblNvcnREZXNjZW5kaW5nJyxcbiAgICAndHVpSWNvblNvcnRPZmYnLFxuICAgICd0dWlJY29uQ2hlY2snLFxuICAgICd0dWlJY29uTWludXNMYXJnZScsXG4gICAgJ3R1aUljb25DaGV2cm9uVXAnLFxuICAgICd0dWlJY29uSGVscENpcmNsZScsXG4gICAgJ3R1aUljb25DbG9zZScsXG4gICAgJ3R1aUljb25BbGVydENpcmNsZScsXG4gICAgJ3R1aUljb25DaGV2cm9uUmlnaHQnLFxuICAgICd0dWlJY29uSW5mbycsXG4gICAgJ3R1aUljb25DaGVja0NpcmNsZScsXG4gICAgJ3R1aUljb25YQ2lyY2xlJyxcbiAgICAndHVpSWNvbkNoZXZyb25MZWZ0JyxcbiAgICAndHVpSWNvblN0YXJMYXJnZScsXG4gICAgJ3R1aUljb25DaGV2cm9uRG93bicsXG4gICAgJ3R1aUljb25DaGV2cm9uRG93bkxhcmdlJyxcbiAgICAndHVpSWNvbkZpbGVMYXJnZScsXG4gICAgJ3R1aUljb25UcmFzaExhcmdlJyxcbiAgICAndHVpSWNvbkFsZXJ0Q2lyY2xlTGFyZ2UnLFxuICAgICd0dWlJY29uQ2hlY2tDaXJjbGVMYXJnZScsXG4gICAgJ3R1aUljb25Db3B5JyxcbiAgICAndHVpSWNvbkV5ZU9mZkxhcmdlJyxcbiAgICAndHVpSWNvbkV5ZUxhcmdlJyxcbiAgICAndHVpSWNvbkNsb2NrJyxcbiAgICAndHVpSWNvbkNsb2NrTGFyZ2UnLFxuICAgICd0dWlJY29uVG9nZ2xlT2ZmJyxcbiAgICAndHVpSWNvblRvZ2dsZU9mZkxhcmdlJyxcbiAgICAndHVpSWNvblRvZ2dsZU9uJyxcbiAgICAndHVpSWNvblRvZ2dsZU9uTGFyZ2UnLFxuICAgICd0dWlJY29uQ2FsZW5kYXInLFxuICAgICd0dWlJY29uQ2FsZW5kYXJMYXJnZScsXG5dIGFzIGNvbnN0O1xuIl19
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlZC1pY29ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb25zdGFudHMvdXNlZC1pY29ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUMxQixnQkFBZ0I7SUFDaEIsaUJBQWlCO0lBQ2pCLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLGFBQWE7SUFDYixZQUFZO0lBQ1osY0FBYztJQUNkLGlCQUFpQjtJQUNqQixlQUFlO0lBQ2YsY0FBYztJQUNkLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLGVBQWU7SUFDZixZQUFZO0lBQ1osYUFBYTtJQUNiLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsWUFBWTtJQUNaLGVBQWU7SUFDZixhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QixnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLGNBQWM7SUFDZCxvQkFBb0I7SUFDcEIscUJBQXFCO0lBQ3JCLGFBQWE7SUFDYixvQkFBb0I7SUFDcEIsZ0JBQWdCO0lBQ2hCLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLHlCQUF5QjtJQUN6QixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLHlCQUF5QjtJQUN6Qix5QkFBeUI7SUFDekIsYUFBYTtJQUNiLG9CQUFvQjtJQUNwQixpQkFBaUI7SUFDakIsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIsdUJBQXVCO0lBQ3ZCLGlCQUFpQjtJQUNqQixzQkFBc0I7SUFDdEIsaUJBQWlCO0lBQ2pCLHNCQUFzQjtDQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZGVzY3JpcHRpb246XG4gKiBBVVRPR0VORVJBVEVEXG4gKlxuICogQXJyYXkgb2YgaWNvbnMgdXNlZCBpbiB0YWlnYS11aSBjb21wb25lbnRzXG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfVVNFRF9JQ09OUyA9IFtcbiAgICBgdHVpSWNvbk1pck1vbm9gLFxuICAgIGB0dWlJY29uVmlzYU1vbm9gLFxuICAgIGB0dWlJY29uRWxlY3Ryb25Nb25vYCxcbiAgICBgdHVpSWNvbk1hc3RlcmNhcmRgLFxuICAgIGB0dWlJY29uTWFlc3Ryb2AsXG4gICAgYHR1aUljb25BbWV4YCxcbiAgICBgdHVpSWNvbkRpbmVyc0NsdWJgLFxuICAgIGB0dWlJY29uRGlzY292ZXJgLFxuICAgIGB0dWlJY29uSHVtb2AsXG4gICAgYHR1aUljb25KQ0JgLFxuICAgIGB0dWlJY29uUnVQYXlgLFxuICAgIGB0dWlJY29uVW5pb25QYXlgLFxuICAgIGB0dWlJY29uVXpjYXJkYCxcbiAgICBgdHVpSWNvblZlcnZlYCxcbiAgICBgdHVpSWNvbkNvcHlMYXJnZWAsXG4gICAgYHR1aUljb25DaGVja0xhcmdlYCxcbiAgICBgdHVpSWNvbkxpbmtgLFxuICAgIGB0dWlJY29uU2VhcmNoYCxcbiAgICBgdHVpSWNvblN1bmAsXG4gICAgYHR1aUljb25Nb29uYCxcbiAgICBgdHVpSWNvbkNvZGVgLFxuICAgIGB0dWlJY29uTWVudUxhcmdlYCxcbiAgICBgdHVpSWNvblJvdGF0ZWAsXG4gICAgYHR1aUljb25BcnJvd0xlZnRgLFxuICAgIGB0dWlJY29uQXJyb3dSaWdodGAsXG4gICAgYHR1aUljb25QbHVzYCxcbiAgICBgdHVpSWNvbk1pbnVzYCxcbiAgICBgdHVpSWNvbk1pbmltaXplYCxcbiAgICBgdHVpSWNvbkV5ZWAsXG4gICAgYHR1aUljb25FeWVPZmZgLFxuICAgIGB0dWlJY29uRHJhZ2AsXG4gICAgYHR1aUljb25Tb3J0QXNjZW5kaW5nYCxcbiAgICBgdHVpSWNvblNvcnREZXNjZW5kaW5nYCxcbiAgICBgdHVpSWNvblNvcnRPZmZgLFxuICAgIGB0dWlJY29uQ2hlY2tgLFxuICAgIGB0dWlJY29uTWludXNMYXJnZWAsXG4gICAgYHR1aUljb25DaGV2cm9uVXBgLFxuICAgIGB0dWlJY29uSGVscENpcmNsZWAsXG4gICAgYHR1aUljb25DbG9zZWAsXG4gICAgYHR1aUljb25BbGVydENpcmNsZWAsXG4gICAgYHR1aUljb25DaGV2cm9uUmlnaHRgLFxuICAgIGB0dWlJY29uSW5mb2AsXG4gICAgYHR1aUljb25DaGVja0NpcmNsZWAsXG4gICAgYHR1aUljb25YQ2lyY2xlYCxcbiAgICBgdHVpSWNvbkNoZXZyb25MZWZ0YCxcbiAgICBgdHVpSWNvblN0YXJMYXJnZWAsXG4gICAgYHR1aUljb25DaGV2cm9uRG93bmAsXG4gICAgYHR1aUljb25DaGV2cm9uRG93bkxhcmdlYCxcbiAgICBgdHVpSWNvbkZpbGVMYXJnZWAsXG4gICAgYHR1aUljb25UcmFzaExhcmdlYCxcbiAgICBgdHVpSWNvbkFsZXJ0Q2lyY2xlTGFyZ2VgLFxuICAgIGB0dWlJY29uQ2hlY2tDaXJjbGVMYXJnZWAsXG4gICAgYHR1aUljb25Db3B5YCxcbiAgICBgdHVpSWNvbkV5ZU9mZkxhcmdlYCxcbiAgICBgdHVpSWNvbkV5ZUxhcmdlYCxcbiAgICBgdHVpSWNvbkNsb2NrYCxcbiAgICBgdHVpSWNvbkNsb2NrTGFyZ2VgLFxuICAgIGB0dWlJY29uVG9nZ2xlT2ZmYCxcbiAgICBgdHVpSWNvblRvZ2dsZU9mZkxhcmdlYCxcbiAgICBgdHVpSWNvblRvZ2dsZU9uYCxcbiAgICBgdHVpSWNvblRvZ2dsZU9uTGFyZ2VgLFxuICAgIGB0dWlJY29uQ2FsZW5kYXJgLFxuICAgIGB0dWlJY29uQ2FsZW5kYXJMYXJnZWAsXG5dIGFzIGNvbnN0O1xuIl19
@@ -1,2 +1,2 @@
1
- export const TUI_VERSION = `3.54.0`;
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb25zdGFudHMvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFRVSV9WRVJTSU9OID0gYDMuNTQuMGA7XG4iXX0=
1
+ export const TUI_VERSION = `3.55.0`;
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9jb25zdGFudHMvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFRVSV9WRVJTSU9OID0gYDMuNTUuMGA7XG4iXX0=
@@ -70,9 +70,7 @@ export class TuiDayRange extends TuiMonthRange {
70
70
  return `${from}${RANGE_SEPARATOR_CHAR}${to}`;
71
71
  }
72
72
  toString(dateFormat = `DMY`, dateSeparator = `.`) {
73
- const from = this.from.getFormattedDay(dateFormat, dateSeparator);
74
- const to = this.to.getFormattedDay(dateFormat, dateSeparator);
75
- return `${from}${RANGE_SEPARATOR_CHAR}${to}`;
73
+ return this.getFormattedDayRange(dateFormat, dateSeparator);
76
74
  }
77
75
  }
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5LXJhbmdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RhdGUtdGltZS9kYXktcmFuZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBR2hELE9BQU8sRUFBQyxrQkFBa0IsRUFBRSx3QkFBd0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUNqRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sT0FBTyxDQUFDO0FBQzdCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFNUM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sV0FBWSxTQUFRLGFBQWE7SUFDMUMsWUFDc0IsSUFBWSxFQUNaLEVBQVU7UUFFNUIsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUhFLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixPQUFFLEdBQUYsRUFBRSxDQUFRO1FBSTVCLFNBQVMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFVLElBQUksQ0FBQyxJQUFZLEVBQUUsSUFBWTtRQUMzQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO1lBQzdCLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO1lBQzdCLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxjQUFjLENBQ2pCLFdBQW1CLEVBQ25CLFdBQXdCLEtBQUs7UUFFN0IsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FDakMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLENBQUMsRUFDeEMsUUFBUSxDQUNYLENBQUM7UUFFRixJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsd0JBQXdCLEVBQUU7WUFDL0MsT0FBTyxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDNUM7UUFFRCxPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQ25CLE9BQU8sRUFDUCxNQUFNLENBQUMsY0FBYyxDQUNqQixXQUFXLENBQUMsS0FBSyxDQUFDLGtCQUFrQixHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxFQUNuRSxRQUFRLENBQ1gsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxPQUFvQjtRQUN4QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILFFBQVEsQ0FBQyxHQUFrQixFQUFFLEdBQWtCO1FBQzNDLE9BQU8sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQixDQUFDLFVBQXVCLEVBQUUsYUFBcUI7UUFDL0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUU5RCxPQUFPLEdBQUcsSUFBSSxHQUFHLG9CQUFvQixHQUFHLEVBQUUsRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFFUSxRQUFRLENBQ2IsYUFBMEIsS0FBSyxFQUMvQixnQkFBd0IsR0FBRztRQUUzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDbEUsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRTlELE9BQU8sR0FBRyxJQUFJLEdBQUcsb0JBQW9CLEdBQUcsRUFBRSxFQUFFLENBQUM7SUFDakQsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt0dWlBc3NlcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1R1aURhdGVNb2RlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcblxuaW1wb3J0IHtEQVRFX0ZJTExFUl9MRU5HVEgsIERBVEVfUkFOR0VfRklMTEVSX0xFTkdUSH0gZnJvbSAnLi9kYXRlLWZpbGxlcnMnO1xuaW1wb3J0IHtSQU5HRV9TRVBBUkFUT1JfQ0hBUn0gZnJvbSAnLi9kYXRlLXRpbWUnO1xuaW1wb3J0IHtUdWlEYXl9IGZyb20gJy4vZGF5JztcbmltcG9ydCB7VHVpTW9udGhSYW5nZX0gZnJvbSAnLi9tb250aC1yYW5nZSc7XG5cbi8qKlxuICogQW4gaW1tdXRhYmxlIHJhbmdlIG9mIHR3byB7QGxpbmsgVHVpRGF5fSBvYmplY3RzXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlEYXlSYW5nZSBleHRlbmRzIFR1aU1vbnRoUmFuZ2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBvdmVycmlkZSByZWFkb25seSBmcm9tOiBUdWlEYXksXG4gICAgICAgIG92ZXJyaWRlIHJlYWRvbmx5IHRvOiBUdWlEYXksXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGZyb20sIHRvKTtcblxuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChmcm9tLmRheVNhbWVPckJlZm9yZSh0bykpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgcmFuZ2UgZnJvbSB0d28gZGF5cyBhZnRlciBzb3J0aW5nIHRoZW1cbiAgICAgKlxuICAgICAqIEBwYXJhbSBkYXkxXG4gICAgICogQHBhcmFtIGRheTJcbiAgICAgKiBAcmV0dXJuIG5ldyByYW5nZSB3aXRoIHNvcnRlZCBkYXlzXG4gICAgICovXG4gICAgc3RhdGljIG92ZXJyaWRlIHNvcnQoZGF5MTogVHVpRGF5LCBkYXkyOiBUdWlEYXkpOiBUdWlEYXlSYW5nZSB7XG4gICAgICAgIHJldHVybiBkYXkxLmRheVNhbWVPckJlZm9yZShkYXkyKVxuICAgICAgICAgICAgPyBuZXcgVHVpRGF5UmFuZ2UoZGF5MSwgZGF5MilcbiAgICAgICAgICAgIDogbmV3IFR1aURheVJhbmdlKGRheTIsIGRheTEpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhcnNlIGFuZCBjb3JyZWN0IGEgZGF5IHJhbmdlIGluIHN0cmluZyBmb3JtYXRcbiAgICAgKlxuICAgICAqIEBwYXJhbSByYW5nZVN0cmluZyBhIHN0cmluZyBvZiBkYXRlcyBpbiBhIGZvcm1hdCBkZC5tbS55eXl5IC0gZGQubW0ueXl5eVxuICAgICAqIEBwYXJhbSBkYXRlTW9kZSB7QGxpbmsgVHVpRGF0ZU1vZGV9XG4gICAgICogQHJldHVybiBub3JtYWxpemVkIGRheSByYW5nZSBvYmplY3RcbiAgICAgKi9cbiAgICBzdGF0aWMgbm9ybWFsaXplUGFyc2UoXG4gICAgICAgIHJhbmdlU3RyaW5nOiBzdHJpbmcsXG4gICAgICAgIGRhdGVNb2RlOiBUdWlEYXRlTW9kZSA9IGBETVlgLFxuICAgICk6IFR1aURheVJhbmdlIHtcbiAgICAgICAgY29uc3QgbGVmdERheSA9IFR1aURheS5ub3JtYWxpemVQYXJzZShcbiAgICAgICAgICAgIHJhbmdlU3RyaW5nLnNsaWNlKDAsIERBVEVfRklMTEVSX0xFTkdUSCksXG4gICAgICAgICAgICBkYXRlTW9kZSxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAocmFuZ2VTdHJpbmcubGVuZ3RoIDwgREFURV9SQU5HRV9GSUxMRVJfTEVOR1RIKSB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IFR1aURheVJhbmdlKGxlZnREYXksIGxlZnREYXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFR1aURheVJhbmdlLnNvcnQoXG4gICAgICAgICAgICBsZWZ0RGF5LFxuICAgICAgICAgICAgVHVpRGF5Lm5vcm1hbGl6ZVBhcnNlKFxuICAgICAgICAgICAgICAgIHJhbmdlU3RyaW5nLnNsaWNlKERBVEVfRklMTEVSX0xFTkdUSCArIFJBTkdFX1NFUEFSQVRPUl9DSEFSLmxlbmd0aCksXG4gICAgICAgICAgICAgICAgZGF0ZU1vZGUsXG4gICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBpc1NpbmdsZURheSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZnJvbS5kYXlTYW1lKHRoaXMudG8pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRlc3RzIHJhbmdlcyBmb3IgaWRlbnRpdHlcbiAgICAgKlxuICAgICAqIEBwYXJhbSBhbm90aGVyIHNlY29uZCByYW5nZSB0byB0ZXN0IGFnYWluc3QgY3VycmVudFxuICAgICAqIEByZXR1cm4gYHRydWVgIGlmIGRheXMgYXJlIGlkZW50aWNhbFxuICAgICAqL1xuICAgIGRheVNhbWUoYW5vdGhlcjogVHVpRGF5UmFuZ2UpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZnJvbS5kYXlTYW1lKGFub3RoZXIuZnJvbSkgJiYgdGhpcy50by5kYXlTYW1lKGFub3RoZXIudG8pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvY2tzIHJhbmdlIGJldHdlZW4gdHdvIGRheXMgaW5jbHVkZWQsIG9yIGxpbWl0cyBmcm9tIG9uZSBzaWRlIGlmIHRoZSBvdGhlciBpcyBudWxsXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbWluXG4gICAgICogQHBhcmFtIG1heFxuICAgICAqIEByZXR1cm4gcmFuZ2Ug4oCUIGNsYW1wZWQgcmFuZ2VcbiAgICAgKi9cbiAgICBkYXlMaW1pdChtaW46IFR1aURheSB8IG51bGwsIG1heDogVHVpRGF5IHwgbnVsbCk6IFR1aURheVJhbmdlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXlSYW5nZSh0aGlzLmZyb20uZGF5TGltaXQobWluLCBtYXgpLCB0aGlzLnRvLmRheUxpbWl0KG1pbiwgbWF4KSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSHVtYW4gcmVhZGFibGUgZm9ybWF0LlxuICAgICAqL1xuICAgIGdldEZvcm1hdHRlZERheVJhbmdlKGRhdGVGb3JtYXQ6IFR1aURhdGVNb2RlLCBkYXRlU2VwYXJhdG9yOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBmcm9tID0gdGhpcy5mcm9tLmdldEZvcm1hdHRlZERheShkYXRlRm9ybWF0LCBkYXRlU2VwYXJhdG9yKTtcbiAgICAgICAgY29uc3QgdG8gPSB0aGlzLnRvLmdldEZvcm1hdHRlZERheShkYXRlRm9ybWF0LCBkYXRlU2VwYXJhdG9yKTtcblxuICAgICAgICByZXR1cm4gYCR7ZnJvbX0ke1JBTkdFX1NFUEFSQVRPUl9DSEFSfSR7dG99YDtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b1N0cmluZyhcbiAgICAgICAgZGF0ZUZvcm1hdDogVHVpRGF0ZU1vZGUgPSBgRE1ZYCxcbiAgICAgICAgZGF0ZVNlcGFyYXRvcjogc3RyaW5nID0gYC5gLFxuICAgICk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGZyb20gPSB0aGlzLmZyb20uZ2V0Rm9ybWF0dGVkRGF5KGRhdGVGb3JtYXQsIGRhdGVTZXBhcmF0b3IpO1xuICAgICAgICBjb25zdCB0byA9IHRoaXMudG8uZ2V0Rm9ybWF0dGVkRGF5KGRhdGVGb3JtYXQsIGRhdGVTZXBhcmF0b3IpO1xuXG4gICAgICAgIHJldHVybiBgJHtmcm9tfSR7UkFOR0VfU0VQQVJBVE9SX0NIQVJ9JHt0b31gO1xuICAgIH1cbn1cbiJdfQ==
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5LXJhbmdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RhdGUtdGltZS9kYXktcmFuZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBR2hELE9BQU8sRUFBQyxrQkFBa0IsRUFBRSx3QkFBd0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUNqRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sT0FBTyxDQUFDO0FBQzdCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFNUM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sV0FBWSxTQUFRLGFBQWE7SUFDMUMsWUFDc0IsSUFBWSxFQUNaLEVBQVU7UUFFNUIsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUhFLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixPQUFFLEdBQUYsRUFBRSxDQUFRO1FBSTVCLFNBQVMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFVLElBQUksQ0FBQyxJQUFZLEVBQUUsSUFBWTtRQUMzQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO1lBQzdCLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO1lBQzdCLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxjQUFjLENBQ2pCLFdBQW1CLEVBQ25CLFdBQXdCLEtBQUs7UUFFN0IsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FDakMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLENBQUMsRUFDeEMsUUFBUSxDQUNYLENBQUM7UUFFRixJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsd0JBQXdCLEVBQUU7WUFDL0MsT0FBTyxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7U0FDNUM7UUFFRCxPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQ25CLE9BQU8sRUFDUCxNQUFNLENBQUMsY0FBYyxDQUNqQixXQUFXLENBQUMsS0FBSyxDQUFDLGtCQUFrQixHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxFQUNuRSxRQUFRLENBQ1gsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxPQUFvQjtRQUN4QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILFFBQVEsQ0FBQyxHQUFrQixFQUFFLEdBQWtCO1FBQzNDLE9BQU8sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQixDQUFDLFVBQXVCLEVBQUUsYUFBcUI7UUFDL0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUU5RCxPQUFPLEdBQUcsSUFBSSxHQUFHLG9CQUFvQixHQUFHLEVBQUUsRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFFUSxRQUFRLENBQ2IsYUFBMEIsS0FBSyxFQUMvQixnQkFBd0IsR0FBRztRQUUzQixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDaEUsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt0dWlBc3NlcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1R1aURhdGVNb2RlfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcblxuaW1wb3J0IHtEQVRFX0ZJTExFUl9MRU5HVEgsIERBVEVfUkFOR0VfRklMTEVSX0xFTkdUSH0gZnJvbSAnLi9kYXRlLWZpbGxlcnMnO1xuaW1wb3J0IHtSQU5HRV9TRVBBUkFUT1JfQ0hBUn0gZnJvbSAnLi9kYXRlLXRpbWUnO1xuaW1wb3J0IHtUdWlEYXl9IGZyb20gJy4vZGF5JztcbmltcG9ydCB7VHVpTW9udGhSYW5nZX0gZnJvbSAnLi9tb250aC1yYW5nZSc7XG5cbi8qKlxuICogQW4gaW1tdXRhYmxlIHJhbmdlIG9mIHR3byB7QGxpbmsgVHVpRGF5fSBvYmplY3RzXG4gKi9cbmV4cG9ydCBjbGFzcyBUdWlEYXlSYW5nZSBleHRlbmRzIFR1aU1vbnRoUmFuZ2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBvdmVycmlkZSByZWFkb25seSBmcm9tOiBUdWlEYXksXG4gICAgICAgIG92ZXJyaWRlIHJlYWRvbmx5IHRvOiBUdWlEYXksXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGZyb20sIHRvKTtcblxuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChmcm9tLmRheVNhbWVPckJlZm9yZSh0bykpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgcmFuZ2UgZnJvbSB0d28gZGF5cyBhZnRlciBzb3J0aW5nIHRoZW1cbiAgICAgKlxuICAgICAqIEBwYXJhbSBkYXkxXG4gICAgICogQHBhcmFtIGRheTJcbiAgICAgKiBAcmV0dXJuIG5ldyByYW5nZSB3aXRoIHNvcnRlZCBkYXlzXG4gICAgICovXG4gICAgc3RhdGljIG92ZXJyaWRlIHNvcnQoZGF5MTogVHVpRGF5LCBkYXkyOiBUdWlEYXkpOiBUdWlEYXlSYW5nZSB7XG4gICAgICAgIHJldHVybiBkYXkxLmRheVNhbWVPckJlZm9yZShkYXkyKVxuICAgICAgICAgICAgPyBuZXcgVHVpRGF5UmFuZ2UoZGF5MSwgZGF5MilcbiAgICAgICAgICAgIDogbmV3IFR1aURheVJhbmdlKGRheTIsIGRheTEpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhcnNlIGFuZCBjb3JyZWN0IGEgZGF5IHJhbmdlIGluIHN0cmluZyBmb3JtYXRcbiAgICAgKlxuICAgICAqIEBwYXJhbSByYW5nZVN0cmluZyBhIHN0cmluZyBvZiBkYXRlcyBpbiBhIGZvcm1hdCBkZC5tbS55eXl5IC0gZGQubW0ueXl5eVxuICAgICAqIEBwYXJhbSBkYXRlTW9kZSB7QGxpbmsgVHVpRGF0ZU1vZGV9XG4gICAgICogQHJldHVybiBub3JtYWxpemVkIGRheSByYW5nZSBvYmplY3RcbiAgICAgKi9cbiAgICBzdGF0aWMgbm9ybWFsaXplUGFyc2UoXG4gICAgICAgIHJhbmdlU3RyaW5nOiBzdHJpbmcsXG4gICAgICAgIGRhdGVNb2RlOiBUdWlEYXRlTW9kZSA9IGBETVlgLFxuICAgICk6IFR1aURheVJhbmdlIHtcbiAgICAgICAgY29uc3QgbGVmdERheSA9IFR1aURheS5ub3JtYWxpemVQYXJzZShcbiAgICAgICAgICAgIHJhbmdlU3RyaW5nLnNsaWNlKDAsIERBVEVfRklMTEVSX0xFTkdUSCksXG4gICAgICAgICAgICBkYXRlTW9kZSxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAocmFuZ2VTdHJpbmcubGVuZ3RoIDwgREFURV9SQU5HRV9GSUxMRVJfTEVOR1RIKSB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IFR1aURheVJhbmdlKGxlZnREYXksIGxlZnREYXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFR1aURheVJhbmdlLnNvcnQoXG4gICAgICAgICAgICBsZWZ0RGF5LFxuICAgICAgICAgICAgVHVpRGF5Lm5vcm1hbGl6ZVBhcnNlKFxuICAgICAgICAgICAgICAgIHJhbmdlU3RyaW5nLnNsaWNlKERBVEVfRklMTEVSX0xFTkdUSCArIFJBTkdFX1NFUEFSQVRPUl9DSEFSLmxlbmd0aCksXG4gICAgICAgICAgICAgICAgZGF0ZU1vZGUsXG4gICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBpc1NpbmdsZURheSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZnJvbS5kYXlTYW1lKHRoaXMudG8pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRlc3RzIHJhbmdlcyBmb3IgaWRlbnRpdHlcbiAgICAgKlxuICAgICAqIEBwYXJhbSBhbm90aGVyIHNlY29uZCByYW5nZSB0byB0ZXN0IGFnYWluc3QgY3VycmVudFxuICAgICAqIEByZXR1cm4gYHRydWVgIGlmIGRheXMgYXJlIGlkZW50aWNhbFxuICAgICAqL1xuICAgIGRheVNhbWUoYW5vdGhlcjogVHVpRGF5UmFuZ2UpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZnJvbS5kYXlTYW1lKGFub3RoZXIuZnJvbSkgJiYgdGhpcy50by5kYXlTYW1lKGFub3RoZXIudG8pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvY2tzIHJhbmdlIGJldHdlZW4gdHdvIGRheXMgaW5jbHVkZWQsIG9yIGxpbWl0cyBmcm9tIG9uZSBzaWRlIGlmIHRoZSBvdGhlciBpcyBudWxsXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbWluXG4gICAgICogQHBhcmFtIG1heFxuICAgICAqIEByZXR1cm4gcmFuZ2Ug4oCUIGNsYW1wZWQgcmFuZ2VcbiAgICAgKi9cbiAgICBkYXlMaW1pdChtaW46IFR1aURheSB8IG51bGwsIG1heDogVHVpRGF5IHwgbnVsbCk6IFR1aURheVJhbmdlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXlSYW5nZSh0aGlzLmZyb20uZGF5TGltaXQobWluLCBtYXgpLCB0aGlzLnRvLmRheUxpbWl0KG1pbiwgbWF4KSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSHVtYW4gcmVhZGFibGUgZm9ybWF0LlxuICAgICAqL1xuICAgIGdldEZvcm1hdHRlZERheVJhbmdlKGRhdGVGb3JtYXQ6IFR1aURhdGVNb2RlLCBkYXRlU2VwYXJhdG9yOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBmcm9tID0gdGhpcy5mcm9tLmdldEZvcm1hdHRlZERheShkYXRlRm9ybWF0LCBkYXRlU2VwYXJhdG9yKTtcbiAgICAgICAgY29uc3QgdG8gPSB0aGlzLnRvLmdldEZvcm1hdHRlZERheShkYXRlRm9ybWF0LCBkYXRlU2VwYXJhdG9yKTtcblxuICAgICAgICByZXR1cm4gYCR7ZnJvbX0ke1JBTkdFX1NFUEFSQVRPUl9DSEFSfSR7dG99YDtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b1N0cmluZyhcbiAgICAgICAgZGF0ZUZvcm1hdDogVHVpRGF0ZU1vZGUgPSBgRE1ZYCxcbiAgICAgICAgZGF0ZVNlcGFyYXRvcjogc3RyaW5nID0gYC5gLFxuICAgICk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEZvcm1hdHRlZERheVJhbmdlKGRhdGVGb3JtYXQsIGRhdGVTZXBhcmF0b3IpO1xuICAgIH1cbn1cbiJdfQ==
@@ -95,8 +95,8 @@ export class TuiDay extends TuiMonth {
95
95
  month: parseInt(date.slice(0, 2), 10) - 1,
96
96
  year: parseInt(date.slice(6, 10), 10),
97
97
  };
98
- default:
99
98
  case `DMY`:
99
+ default:
100
100
  return {
101
101
  day: parseInt(date.slice(0, 2), 10),
102
102
  month: parseInt(date.slice(3, 5), 10) - 1,
@@ -285,4 +285,4 @@ export class TuiDay extends TuiMonth {
285
285
  return new Date(Date.UTC(this.year, this.month, this.day));
286
286
  }
287
287
  }
288
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RhdGUtdGltZS9kYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ2hELE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDakUsT0FBTyxFQUNILHNCQUFzQixFQUN0Qix3QkFBd0IsRUFDeEIsdUJBQXVCLEdBQzFCLE1BQU0sMEJBQTBCLENBQUM7QUFHbEMsT0FBTyxFQUFDLFVBQVUsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTdFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxPQUFPLEVBQUUsY0FBYyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ3BELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDakMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUUvQiw2QkFBNkI7QUFDN0I7O0dBRUc7QUFDSCxNQUFNLE9BQU8sTUFBTyxTQUFRLFFBQVE7SUFDaEMsWUFDSSxJQUFZLEVBQ1osS0FBYSxFQUNKLEdBQVc7UUFFcEIsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUZWLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFHcEIsU0FBUyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLG1CQUFtQixDQUFDLElBQVU7UUFDakMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFVO1FBQy9CLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBWSxFQUFFLEtBQWEsRUFBRSxHQUFXO1FBQ3RELE9BQU8sQ0FDSCxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUM7WUFDbEMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUM7WUFDckIsVUFBVSxDQUNOLEdBQUcsRUFDSCxPQUFPLEVBQ1AsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUNsRSxDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQVUsWUFBWTtRQUN4QixNQUFNLFVBQVUsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzlCLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN0QyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDcEMsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRWpDLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQVUsVUFBVTtRQUN0QixNQUFNLFVBQVUsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzlCLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN6QyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkMsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRXBDLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBWSxFQUFFLEtBQWEsRUFBRSxHQUFXO1FBQ3ZELE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2RCxNQUFNLGVBQWUsR0FBRyxRQUFRLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0QsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUN6QyxHQUFHLEVBQ0gsZUFBZSxFQUNmLGNBQWMsQ0FDakIsQ0FBQztRQUVGLE9BQU8sSUFBSSxNQUFNLENBQUMsY0FBYyxFQUFFLGVBQWUsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsTUFBTSxDQUFVLGFBQWEsQ0FBQyxJQUFZLEVBQUUsRUFBVTtRQUNsRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQ2IsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNuRSxDQUFDLElBQUksR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUM1QixDQUFDO0lBQ04sQ0FBQztJQUVELE1BQU0sQ0FBQyxrQkFBa0IsQ0FDckIsSUFBWSxFQUNaLFdBQXdCLEtBQUs7UUFFN0IsU0FBUztZQUNMLFNBQVMsQ0FBQyxNQUFNLENBQ1osSUFBSSxDQUFDLE1BQU0sS0FBSyxrQkFBa0IsRUFDbEMsZ0RBQWdELENBQ25ELENBQUM7UUFFTixRQUFRLFFBQVEsRUFBRTtZQUNkLEtBQUssS0FBSztnQkFDTixPQUFPO29CQUNILEdBQUcsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO29CQUNwQyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUM7b0JBQ3pDLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO2lCQUN2QyxDQUFDO1lBRU4sS0FBSyxLQUFLO2dCQUNOLE9BQU87b0JBQ0gsR0FBRyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7b0JBQ25DLEtBQUssRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQztvQkFDekMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7aUJBQ3hDLENBQUM7WUFFTixRQUFRO1lBQ1IsS0FBSyxLQUFLO2dCQUNOLE9BQU87b0JBQ0gsR0FBRyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7b0JBQ25DLEtBQUssRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQztvQkFDekMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7aUJBQ3hDLENBQUM7U0FDVDtJQUNMLENBQUM7SUFFRCwrREFBK0Q7SUFDL0Q7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFlLEVBQUUsV0FBd0IsS0FBSztRQUNoRSxNQUFNLEVBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRXRFLE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxTQUFTLENBQUMsa0JBQTBCO1FBQ3ZDLE1BQU0sRUFBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUU5RSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM1QixNQUFNLElBQUksdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDM0M7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDckMsTUFBTSxJQUFJLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzdDO1FBRUQsSUFDSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDO1lBQ3RCLENBQUMsVUFBVSxDQUNQLEdBQUcsRUFDSCxPQUFPLEVBQ1AsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUNsRSxFQUNIO1lBQ0UsTUFBTSxJQUFJLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3pDO1FBRUQsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFUyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsR0FBVyxFQUFFLEtBQWEsRUFBRSxJQUFZO1FBQ3RFLFNBQVMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFFbEUsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLGlCQUFpQixDQUM3QyxLQUFLLEVBQ0wsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FDM0IsQ0FBQztRQUVGLE9BQU8sdUJBQXVCLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDaEIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFeEMsT0FBTyxTQUFTLEtBQUssWUFBWSxDQUFDLFFBQVEsSUFBSSxTQUFTLEtBQUssWUFBWSxDQUFDLE1BQU0sQ0FBQztJQUNwRixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxTQUFTLENBQUMsa0JBQTJCLElBQUk7UUFDckMsTUFBTSxTQUFTLEdBQUcsZUFBZTtZQUM3QixDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQztZQUN2QyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFeEMsT0FBTyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTLENBQUMsT0FBZTtRQUNyQixPQUFPLENBQ0gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUM7WUFDekIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUN0RCxDQUFDO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZSxDQUFDLE9BQWU7UUFDM0IsT0FBTyxDQUNILElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO1lBQ3pCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FDdkQsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU8sQ0FBQyxPQUFlO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLE9BQU8sQ0FBQyxHQUFHLENBQUM7SUFDL0QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYyxDQUFDLE9BQWU7UUFDMUIsT0FBTyxDQUNILElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDO1lBQ3hCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FDdkQsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNILFFBQVEsQ0FBQyxPQUFlO1FBQ3BCLE9BQU8sQ0FDSCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztZQUN4QixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQ3RELENBQUM7SUFDTixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsUUFBUSxDQUFDLEdBQWtCLEVBQUUsR0FBa0I7UUFDM0MsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDckMsT0FBTyxHQUFHLENBQUM7U0FDZDtRQUVELElBQUksR0FBRyxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3BDLE9BQU8sR0FBRyxDQUFDO1NBQ2Q7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ00sTUFBTSxDQUFDLEVBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLEVBQWE7UUFDdEQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUM3RSxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUMsQ0FBQztRQUNyRCxJQUFJLE1BQU0sR0FBRyxXQUFXLEdBQUcsY0FBYyxDQUFDO1FBRTFDLElBQUksSUFBSSxHQUNKLElBQUksQ0FBQyxHQUFHLENBQ0osSUFBSSxDQUFDLEdBQUcsRUFDUixRQUFRLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDaEUsR0FBRyxHQUFHLENBQUM7UUFFWixPQUFPLElBQUksR0FBRyxRQUFRLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN6RSxJQUFJLElBQUksUUFBUSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFFdEUsSUFBSSxNQUFNLEtBQUssY0FBYyxDQUFDLFFBQVEsRUFBRTtnQkFDcEMsS0FBSyxFQUFFLENBQUM7Z0JBQ1IsTUFBTSxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUM7YUFDbkM7aUJBQU07Z0JBQ0gsTUFBTSxFQUFFLENBQUM7YUFDWjtTQUNKO1FBRUQsT0FBTyxJQUFJLEdBQUcsT0FBTyxFQUFFO1lBQ25CLElBQUksTUFBTSxLQUFLLGNBQWMsQ0FBQyxPQUFPLEVBQUU7Z0JBQ25DLEtBQUssRUFBRSxDQUFDO2dCQUNSLE1BQU0sR0FBRyxjQUFjLENBQUMsUUFBUSxDQUFDO2FBQ3BDO2lCQUFNO2dCQUNILE1BQU0sRUFBRSxDQUFDO2FBQ1o7WUFFRCxJQUFJLElBQUksUUFBUSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDekU7UUFFRCxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZSxDQUFDLFVBQXVCLEVBQUUsU0FBaUI7UUFDdEQsU0FBUztZQUNMLFNBQVMsQ0FBQyxNQUFNLENBQ1osU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQ3RCLDJDQUEyQyxDQUM5QyxDQUFDO1FBRU4sTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQ2pDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUNuQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBRWhDLFFBQVEsVUFBVSxFQUFFO1lBQ2hCLEtBQUssS0FBSztnQkFDTixPQUFPLEdBQUcsSUFBSSxHQUFHLFNBQVMsR0FBRyxFQUFFLEdBQUcsU0FBUyxHQUFHLEVBQUUsRUFBRSxDQUFDO1lBQ3ZELEtBQUssS0FBSztnQkFDTixPQUFPLEdBQUcsRUFBRSxHQUFHLFNBQVMsR0FBRyxFQUFFLEdBQUcsU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDO1lBQ3ZELEtBQUssS0FBSyxDQUFDO1lBQ1g7Z0JBQ0ksT0FBTyxHQUFHLEVBQUUsR0FBRyxTQUFTLEdBQUcsRUFBRSxHQUFHLFNBQVMsR0FBRyxJQUFJLEVBQUUsQ0FBQztTQUMxRDtJQUNMLENBQUM7SUFFUSxRQUFRLENBQUMsYUFBMEIsS0FBSyxFQUFFLFlBQW9CLEdBQUc7UUFDdEUsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRVEsTUFBTTtRQUNYLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUVEOztPQUVHO0lBQ00saUJBQWlCO1FBQ3RCLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7O09BRUc7SUFDTSxlQUFlO1FBQ3BCLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt0dWlBc3NlcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1R1aURheU9mV2VlaywgVHVpTW9udGhOdW1iZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvZW51bXMnO1xuaW1wb3J0IHtcbiAgICBUdWlJbnZhbGlkRGF5RXhjZXB0aW9uLFxuICAgIFR1aUludmFsaWRNb250aEV4Y2VwdGlvbixcbiAgICBUdWlJbnZhbGlkWWVhckV4Y2VwdGlvbixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9leGNlcHRpb25zJztcbmltcG9ydCB7VHVpRGF5TGlrZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpRGF0ZU1vZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlJblJhbmdlLCB0dWlOb3JtYWxpemVUb0ludE51bWJlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9tYXRoJztcblxuaW1wb3J0IHtEQVRFX0ZJTExFUl9MRU5HVEh9IGZyb20gJy4vZGF0ZS1maWxsZXJzJztcbmltcG9ydCB7TUlOX0RBWSwgTU9OVEhTX0lOX1lFQVJ9IGZyb20gJy4vZGF0ZS10aW1lJztcbmltcG9ydCB7VHVpTW9udGh9IGZyb20gJy4vbW9udGgnO1xuaW1wb3J0IHtUdWlZZWFyfSBmcm9tICcuL3llYXInO1xuXG4vLyBUT0RPOiBMb2NhbGl6ZWQgZm9ybWF0dGluZ1xuLyoqXG4gKiBJbW11dGFibGUgZGF0ZSBvYmplY3QsIGNvbnNpc3Rpbmcgb2YgZGF5LCBtb250aCBhbmQgeWVhclxuICovXG5leHBvcnQgY2xhc3MgVHVpRGF5IGV4dGVuZHMgVHVpTW9udGgge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICB5ZWFyOiBudW1iZXIsXG4gICAgICAgIG1vbnRoOiBudW1iZXIsXG4gICAgICAgIHJlYWRvbmx5IGRheTogbnVtYmVyLFxuICAgICkge1xuICAgICAgICBzdXBlcih5ZWFyLCBtb250aCk7XG4gICAgICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KFR1aURheS5pc1ZhbGlkRGF5KHllYXIsIG1vbnRoLCBkYXkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIHtAbGluayBUdWlEYXl9IGZyb20gbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBzdGF0aWMgZnJvbUxvY2FsTmF0aXZlRGF0ZShkYXRlOiBEYXRlKTogVHVpRGF5IHtcbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCksIGRhdGUuZ2V0RGF0ZSgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIHtAbGluayBUdWlEYXl9IGZyb20gbmF0aXZlIHtAbGluayBEYXRlfSB1c2luZyBVVENcbiAgICAgKi9cbiAgICBzdGF0aWMgZnJvbVV0Y05hdGl2ZURhdGUoZGF0ZTogRGF0ZSk6IFR1aURheSB7XG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KGRhdGUuZ2V0VVRDRnVsbFllYXIoKSwgZGF0ZS5nZXRVVENNb250aCgpLCBkYXRlLmdldFVUQ0RhdGUoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgdmFsaWRpdHkgb2YgeWVhciwgbW9udGggYW5kIGRheVxuICAgICAqXG4gICAgICogQHBhcmFtIHllYXJcbiAgICAgKiBAcGFyYW0gbW9udGhcbiAgICAgKiBAcGFyYW0gZGF5XG4gICAgICogQHJldHVybiBib29sZWFuIHZhbGlkaXR5XG4gICAgICovXG4gICAgc3RhdGljIGlzVmFsaWREYXkoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBkYXk6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgVHVpTW9udGguaXNWYWxpZE1vbnRoKHllYXIsIG1vbnRoKSAmJlxuICAgICAgICAgICAgTnVtYmVyLmlzSW50ZWdlcihkYXkpICYmXG4gICAgICAgICAgICB0dWlJblJhbmdlKFxuICAgICAgICAgICAgICAgIGRheSxcbiAgICAgICAgICAgICAgICBNSU5fREFZLFxuICAgICAgICAgICAgICAgIFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRoLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcikpICsgMSxcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDdXJyZW50IGRheSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY3VycmVudExvY2FsKCk6IFR1aURheSB7XG4gICAgICAgIGNvbnN0IG5hdGl2ZURhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBjb25zdCB5ZWFyID0gbmF0aXZlRGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgICBjb25zdCBtb250aCA9IG5hdGl2ZURhdGUuZ2V0TW9udGgoKTtcbiAgICAgICAgY29uc3QgZGF5ID0gbmF0aXZlRGF0ZS5nZXREYXRlKCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBjdXJyZW50IGRheSBiYXNlZCBvbiBVVENcbiAgICAgKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY3VycmVudFV0YygpOiBUdWlEYXkge1xuICAgICAgICBjb25zdCBuYXRpdmVEYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgY29uc3QgeWVhciA9IG5hdGl2ZURhdGUuZ2V0VVRDRnVsbFllYXIoKTtcbiAgICAgICAgY29uc3QgbW9udGggPSBuYXRpdmVEYXRlLmdldFVUQ01vbnRoKCk7XG4gICAgICAgIGNvbnN0IGRheSA9IG5hdGl2ZURhdGUuZ2V0VVRDRGF0ZSgpO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KHllYXIsIG1vbnRoLCBkYXkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZXMge0BsaW5rIFR1aURheX0gbm9ybWFsaXppbmcgeWVhciwgbW9udGggYW5kIGRheS4ge0BsaW5rIE5hTn0gaXMgdHVybmVkIGludG8gbWluaW1hbCB2YWx1ZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB5ZWFyIGFueSB5ZWFyIHZhbHVlLCBpbmNsdWRpbmcgaW52YWxpZFxuICAgICAqIEBwYXJhbSBtb250aCBhbnkgbW9udGggdmFsdWUsIGluY2x1ZGluZyBpbnZhbGlkIChtb250aHMgc3RhcnQgd2l0aCAwKVxuICAgICAqIEBwYXJhbSBkYXkgYW55IGRheSB2YWx1ZSwgaW5jbHVkaW5nIGludmFsaWRcbiAgICAgKiBAcmV0dXJuIG5vcm1hbGl6ZWQgZGF0ZVxuICAgICAqL1xuICAgIHN0YXRpYyBub3JtYWxpemVPZih5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGRheTogbnVtYmVyKTogVHVpRGF5IHtcbiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFllYXIgPSBUdWlZZWFyLm5vcm1hbGl6ZVllYXJQYXJ0KHllYXIpO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkTW9udGggPSBUdWlNb250aC5ub3JtYWxpemVNb250aFBhcnQobW9udGgpO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkRGF5ID0gVHVpRGF5Lm5vcm1hbGl6ZURheVBhcnQoXG4gICAgICAgICAgICBkYXksXG4gICAgICAgICAgICBub3JtYWxpemVkTW9udGgsXG4gICAgICAgICAgICBub3JtYWxpemVkWWVhcixcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aURheShub3JtYWxpemVkWWVhciwgbm9ybWFsaXplZE1vbnRoLCBub3JtYWxpemVkRGF5KTtcbiAgICB9XG5cbiAgICBzdGF0aWMgb3ZlcnJpZGUgbGVuZ3RoQmV0d2Vlbihmcm9tOiBUdWlEYXksIHRvOiBUdWlEYXkpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTWF0aC5yb3VuZChcbiAgICAgICAgICAgICh0by50b0xvY2FsTmF0aXZlRGF0ZSgpLmdldFRpbWUoKSAtIGZyb20udG9Mb2NhbE5hdGl2ZURhdGUoKS5nZXRUaW1lKCkpIC9cbiAgICAgICAgICAgICAgICAoMTAwMCAqIDYwICogNjAgKiAyNCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgc3RhdGljIHBhcnNlUmF3RGF0ZVN0cmluZyhcbiAgICAgICAgZGF0ZTogc3RyaW5nLFxuICAgICAgICBkYXRlTW9kZTogVHVpRGF0ZU1vZGUgPSBgRE1ZYCxcbiAgICApOiB7ZGF5OiBudW1iZXI7IG1vbnRoOiBudW1iZXI7IHllYXI6IG51bWJlcn0ge1xuICAgICAgICBuZ0Rldk1vZGUgJiZcbiAgICAgICAgICAgIHR1aUFzc2VydC5hc3NlcnQoXG4gICAgICAgICAgICAgICAgZGF0ZS5sZW5ndGggPT09IERBVEVfRklMTEVSX0xFTkdUSCxcbiAgICAgICAgICAgICAgICBgW3BhcnNlUmF3RGF0ZVN0cmluZ106IHdyb25nIGRhdGUgc3RyaW5nIGxlbmd0aGAsXG4gICAgICAgICAgICApO1xuXG4gICAgICAgIHN3aXRjaCAoZGF0ZU1vZGUpIHtcbiAgICAgICAgICAgIGNhc2UgYFlNRGA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgZGF5OiBwYXJzZUludChkYXRlLnNsaWNlKDgsIDEwKSwgMTApLFxuICAgICAgICAgICAgICAgICAgICBtb250aDogcGFyc2VJbnQoZGF0ZS5zbGljZSg1LCA3KSwgMTApIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgeWVhcjogcGFyc2VJbnQoZGF0ZS5zbGljZSgwLCA0KSwgMTApLFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNhc2UgYE1EWWA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgZGF5OiBwYXJzZUludChkYXRlLnNsaWNlKDMsIDUpLCAxMCksXG4gICAgICAgICAgICAgICAgICAgIG1vbnRoOiBwYXJzZUludChkYXRlLnNsaWNlKDAsIDIpLCAxMCkgLSAxLFxuICAgICAgICAgICAgICAgICAgICB5ZWFyOiBwYXJzZUludChkYXRlLnNsaWNlKDYsIDEwKSwgMTApLFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBjYXNlIGBETVlgOlxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGRheTogcGFyc2VJbnQoZGF0ZS5zbGljZSgwLCAyKSwgMTApLFxuICAgICAgICAgICAgICAgICAgICBtb250aDogcGFyc2VJbnQoZGF0ZS5zbGljZSgzLCA1KSwgMTApIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgeWVhcjogcGFyc2VJbnQoZGF0ZS5zbGljZSg2LCAxMCksIDEwKSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVE9ETzogTW92ZSBtb250aCBhbmQgeWVhciByZWxhdGVkIGNvZGUgY29ycmVzcG9uZGluZyBjbGFzc2VzXG4gICAgLyoqXG4gICAgICogUGFyc2luZyBhIHN0cmluZyB3aXRoIGRhdGUgd2l0aCBub3JtYWxpemF0aW9uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmF3RGF0ZSBkYXRlIHN0cmluZ1xuICAgICAqIEBwYXJhbSBkYXRlTW9kZSBkYXRlIGZvcm1hdCBvZiB0aGUgZGF0ZSBzdHJpbmcgKERNWSB8IE1EWSB8IFlNRClcbiAgICAgKiBAcmV0dXJuIG5vcm1hbGl6ZWQgZGF0ZVxuICAgICAqL1xuICAgIHN0YXRpYyBub3JtYWxpemVQYXJzZShyYXdEYXRlOiBzdHJpbmcsIGRhdGVNb2RlOiBUdWlEYXRlTW9kZSA9IGBETVlgKTogVHVpRGF5IHtcbiAgICAgICAgY29uc3Qge2RheSwgbW9udGgsIHllYXJ9ID0gdGhpcy5wYXJzZVJhd0RhdGVTdHJpbmcocmF3RGF0ZSwgZGF0ZU1vZGUpO1xuXG4gICAgICAgIHJldHVybiBUdWlEYXkubm9ybWFsaXplT2YoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFyc2luZyBhIGRhdGUgc3RyaW5naWZpZWQgaW4gYSB0b0pTT04gZm9ybWF0XG4gICAgICogQHBhcmFtIHllYXJNb250aERheVN0cmluZyBkYXRlIHN0cmluZyBpbiBmb3JtYXQgb2YgWVlZWS1NTS1ERFxuICAgICAqIEByZXR1cm4gZGF0ZVxuICAgICAqIEB0aHJvd3MgZXhjZXB0aW9ucyBpZiBhbnkgcGFydCBvZiB0aGUgZGF0ZSBpcyBpbnZhbGlkXG4gICAgICovXG4gICAgc3RhdGljIGpzb25QYXJzZSh5ZWFyTW9udGhEYXlTdHJpbmc6IHN0cmluZyk6IFR1aURheSB7XG4gICAgICAgIGNvbnN0IHtkYXksIG1vbnRoLCB5ZWFyfSA9IHRoaXMucGFyc2VSYXdEYXRlU3RyaW5nKHllYXJNb250aERheVN0cmluZywgYFlNRGApO1xuXG4gICAgICAgIGlmICghVHVpWWVhci5pc1ZhbGlkWWVhcih5ZWFyKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR1aUludmFsaWRZZWFyRXhjZXB0aW9uKHllYXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFUdWlNb250aC5pc1ZhbGlkTW9udGgoeWVhciwgbW9udGgpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHVpSW52YWxpZE1vbnRoRXhjZXB0aW9uKG1vbnRoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICFOdW1iZXIuaXNJbnRlZ2VyKGRheSkgfHxcbiAgICAgICAgICAgICF0dWlJblJhbmdlKFxuICAgICAgICAgICAgICAgIGRheSxcbiAgICAgICAgICAgICAgICBNSU5fREFZLFxuICAgICAgICAgICAgICAgIFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRoLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcikpICsgMSxcbiAgICAgICAgICAgIClcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHVpSW52YWxpZERheUV4Y2VwdGlvbihkYXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHN0YXRpYyBub3JtYWxpemVEYXlQYXJ0KGRheTogbnVtYmVyLCBtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChUdWlNb250aC5pc1ZhbGlkTW9udGgoeWVhciwgbW9udGgpKTtcblxuICAgICAgICBjb25zdCBtb250aERheXNDb3VudCA9IFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KFxuICAgICAgICAgICAgbW9udGgsXG4gICAgICAgICAgICBUdWlZZWFyLmlzTGVhcFllYXIoeWVhciksXG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIHR1aU5vcm1hbGl6ZVRvSW50TnVtYmVyKGRheSwgMSwgbW9udGhEYXlzQ291bnQpO1xuICAgIH1cblxuICAgIGdldCBmb3JtYXR0ZWREYXlQYXJ0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBTdHJpbmcodGhpcy5kYXkpLnBhZFN0YXJ0KDIsIGAwYCk7XG4gICAgfVxuXG4gICAgZ2V0IGlzV2Vla2VuZCgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgZGF5T2ZXZWVrID0gdGhpcy5kYXlPZldlZWsoZmFsc2UpO1xuXG4gICAgICAgIHJldHVybiBkYXlPZldlZWsgPT09IFR1aURheU9mV2Vlay5TYXR1cmRheSB8fCBkYXlPZldlZWsgPT09IFR1aURheU9mV2Vlay5TdW5kYXk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBkYXkgb2Ygd2Vla1xuICAgICAqXG4gICAgICogQHBhcmFtIHN0YXJ0RnJvbU1vbmRheSB3aGV0aGVyIHdlZWsgc3RhcnRzIGZyb20gTW9uZGF5IGFuZCBub3QgZnJvbSBTdW5kYXlcbiAgICAgKiBAcmV0dXJuIGRheSBvZiB3ZWVrIChmcm9tIDAgdG8gNilcbiAgICAgKi9cbiAgICBkYXlPZldlZWsoc3RhcnRGcm9tTW9uZGF5OiBib29sZWFuID0gdHJ1ZSk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGRheU9mV2VlayA9IHN0YXJ0RnJvbU1vbmRheVxuICAgICAgICAgICAgPyB0aGlzLnRvTG9jYWxOYXRpdmVEYXRlKCkuZ2V0RGF5KCkgLSAxXG4gICAgICAgICAgICA6IHRoaXMudG9Mb2NhbE5hdGl2ZURhdGUoKS5nZXREYXkoKTtcblxuICAgICAgICByZXR1cm4gZGF5T2ZXZWVrIDwgMCA/IDYgOiBkYXlPZldlZWs7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIGRhdGUgaXMgYWZ0ZXIgY3VycmVudFxuICAgICAqL1xuICAgIGRheUJlZm9yZShhbm90aGVyOiBUdWlEYXkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMubW9udGhCZWZvcmUoYW5vdGhlcikgfHxcbiAgICAgICAgICAgICh0aGlzLm1vbnRoU2FtZShhbm90aGVyKSAmJiB0aGlzLmRheSA8IGFub3RoZXIuZGF5KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBkYXRlIGlzIGFmdGVyIG9yIGVxdWFscyB0byBjdXJyZW50XG4gICAgICovXG4gICAgZGF5U2FtZU9yQmVmb3JlKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5tb250aEJlZm9yZShhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMubW9udGhTYW1lKGFub3RoZXIpICYmIHRoaXMuZGF5IDw9IGFub3RoZXIuZGF5KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBkYXRlIGlzIHRoZSBzYW1lIGFzIGN1cnJlbnRcbiAgICAgKi9cbiAgICBkYXlTYW1lKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tb250aFNhbWUoYW5vdGhlcikgJiYgdGhpcy5kYXkgPT09IGFub3RoZXIuZGF5O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBkYXRlIGlzIGVpdGhlciBiZWZvcmUgb3IgdGhlIHNhbWUgYXMgY3VycmVudFxuICAgICAqL1xuICAgIGRheVNhbWVPckFmdGVyKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5tb250aEFmdGVyKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy5tb250aFNhbWUoYW5vdGhlcikgJiYgdGhpcy5kYXkgPj0gYW5vdGhlci5kYXkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIGRhdGUgaXMgYmVmb3JlIGN1cnJlbnRcbiAgICAgKi9cbiAgICBkYXlBZnRlcihhbm90aGVyOiBUdWlEYXkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMubW9udGhBZnRlcihhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMubW9udGhTYW1lKGFub3RoZXIpICYmIHRoaXMuZGF5ID4gYW5vdGhlci5kYXkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2xhbXBpbmcgZGF0ZSBiZXR3ZWVuIHR3byBsaW1pdHNcbiAgICAgKlxuICAgICAqIEBwYXJhbSBtaW5cbiAgICAgKiBAcGFyYW0gbWF4XG4gICAgICogQHJldHVybiBjbGFtcGVkIGRhdGVcbiAgICAgKi9cbiAgICBkYXlMaW1pdChtaW46IFR1aURheSB8IG51bGwsIG1heDogVHVpRGF5IHwgbnVsbCk6IFR1aURheSB7XG4gICAgICAgIGlmIChtaW4gIT09IG51bGwgJiYgdGhpcy5kYXlCZWZvcmUobWluKSkge1xuICAgICAgICAgICAgcmV0dXJuIG1pbjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtYXggIT09IG51bGwgJiYgdGhpcy5kYXlBZnRlcihtYXgpKSB7XG4gICAgICAgICAgICByZXR1cm4gbWF4O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW1tdXRhYmx5IGFsdGVycyBjdXJyZW50IGRheSBieSBwYXNzZWQgb2Zmc2V0XG4gICAgICpcbiAgICAgKiBJZiByZXN1bHRpbmcgbW9udGggaGFzIG1vcmUgZGF5cyB0aGFuIG9yaWdpbmFsIG9uZSwgZGF0ZSBpcyByb3VuZGVkIHRvIHRoZSBtYXhpbXVtIGRheVxuICAgICAqIGluIHRoZSByZXN1bHRpbmcgbW9udGguIE9mZnNldCBvZiBkYXlzIHdpbGwgYmUgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgcmVzdWx0ZWQgeWVhciBhbmQgbW9udGhcbiAgICAgKiB0byBub3QgaW50ZXJmZXJlIHdpdGggcGFyZW50IGNsYXNzZXMgbWV0aG9kc1xuICAgICAqXG4gICAgICogQHBhcmFtIG9mZnNldFxuICAgICAqIEByZXR1cm4gbmV3IGRhdGUgb2JqZWN0IGFzIGEgcmVzdWx0IG9mIG9mZnNldHRpbmcgY3VycmVudFxuICAgICAqL1xuICAgIG92ZXJyaWRlIGFwcGVuZCh7eWVhciA9IDAsIG1vbnRoID0gMCwgZGF5ID0gMH06IFR1aURheUxpa2UpOiBUdWlEYXkge1xuICAgICAgICBjb25zdCB0b3RhbE1vbnRocyA9ICh0aGlzLnllYXIgKyB5ZWFyKSAqIE1PTlRIU19JTl9ZRUFSICsgdGhpcy5tb250aCArIG1vbnRoO1xuICAgICAgICBsZXQgeWVhcnMgPSBNYXRoLmZsb29yKHRvdGFsTW9udGhzIC8gTU9OVEhTX0lOX1lFQVIpO1xuICAgICAgICBsZXQgbW9udGhzID0gdG90YWxNb250aHMgJSBNT05USFNfSU5fWUVBUjtcblxuICAgICAgICBsZXQgZGF5cyA9XG4gICAgICAgICAgICBNYXRoLm1pbihcbiAgICAgICAgICAgICAgICB0aGlzLmRheSxcbiAgICAgICAgICAgICAgICBUdWlNb250aC5nZXRNb250aERheXNDb3VudChtb250aHMsIFR1aVllYXIuaXNMZWFwWWVhcih5ZWFycykpLFxuICAgICAgICAgICAgKSArIGRheTtcblxuICAgICAgICB3aGlsZSAoZGF5cyA+IFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRocywgVHVpWWVhci5pc0xlYXBZZWFyKHllYXJzKSkpIHtcbiAgICAgICAgICAgIGRheXMgLT0gVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQobW9udGhzLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcnMpKTtcblxuICAgICAgICAgICAgaWYgKG1vbnRocyA9PT0gVHVpTW9udGhOdW1iZXIuRGVjZW1iZXIpIHtcbiAgICAgICAgICAgICAgICB5ZWFycysrO1xuICAgICAgICAgICAgICAgIG1vbnRocyA9IFR1aU1vbnRoTnVtYmVyLkphbnVhcnk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG1vbnRocysrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgd2hpbGUgKGRheXMgPCBNSU5fREFZKSB7XG4gICAgICAgICAgICBpZiAobW9udGhzID09PSBUdWlNb250aE51bWJlci5KYW51YXJ5KSB7XG4gICAgICAgICAgICAgICAgeWVhcnMtLTtcbiAgICAgICAgICAgICAgICBtb250aHMgPSBUdWlNb250aE51bWJlci5EZWNlbWJlcjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbW9udGhzLS07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRheXMgKz0gVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQobW9udGhzLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcnMpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KHllYXJzLCBtb250aHMsIGRheXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgZm9ybWF0dGVkIHdob2xlIGRhdGVcbiAgICAgKi9cbiAgICBnZXRGb3JtYXR0ZWREYXkoZGF0ZUZvcm1hdDogVHVpRGF0ZU1vZGUsIHNlcGFyYXRvcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgbmdEZXZNb2RlICYmXG4gICAgICAgICAgICB0dWlBc3NlcnQuYXNzZXJ0KFxuICAgICAgICAgICAgICAgIHNlcGFyYXRvci5sZW5ndGggPT09IDEsXG4gICAgICAgICAgICAgICAgYFNlcGFyYXRvciBzaG91bGQgY29uc2lzdCBvZiBvbmx5IDEgc3ltYm9sYCxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgZGQgPSB0aGlzLmZvcm1hdHRlZERheVBhcnQ7XG4gICAgICAgIGNvbnN0IG1tID0gdGhpcy5mb3JtYXR0ZWRNb250aFBhcnQ7XG4gICAgICAgIGNvbnN0IHl5eXkgPSB0aGlzLmZvcm1hdHRlZFllYXI7XG5cbiAgICAgICAgc3dpdGNoIChkYXRlRm9ybWF0KSB7XG4gICAgICAgICAgICBjYXNlIGBZTURgOlxuICAgICAgICAgICAgICAgIHJldHVybiBgJHt5eXl5fSR7c2VwYXJhdG9yfSR7bW19JHtzZXBhcmF0b3J9JHtkZH1gO1xuICAgICAgICAgICAgY2FzZSBgTURZYDpcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7bW19JHtzZXBhcmF0b3J9JHtkZH0ke3NlcGFyYXRvcn0ke3l5eXl9YDtcbiAgICAgICAgICAgIGNhc2UgYERNWWA6XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBgJHtkZH0ke3NlcGFyYXRvcn0ke21tfSR7c2VwYXJhdG9yfSR7eXl5eX1gO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgdG9TdHJpbmcoZGF0ZUZvcm1hdDogVHVpRGF0ZU1vZGUgPSBgRE1ZYCwgc2VwYXJhdG9yOiBzdHJpbmcgPSBgLmApOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRGb3JtYXR0ZWREYXkoZGF0ZUZvcm1hdCwgc2VwYXJhdG9yKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b0pTT04oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3N1cGVyLnRvSlNPTigpfS0ke3RoaXMuZm9ybWF0dGVkRGF5UGFydH1gO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBvdmVycmlkZSB0b0xvY2FsTmF0aXZlRGF0ZSgpOiBEYXRlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMueWVhciwgdGhpcy5tb250aCwgdGhpcy5kYXkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBVVENcbiAgICAgKi9cbiAgICBvdmVycmlkZSB0b1V0Y05hdGl2ZURhdGUoKTogRGF0ZSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShEYXRlLlVUQyh0aGlzLnllYXIsIHRoaXMubW9udGgsIHRoaXMuZGF5KSk7XG4gICAgfVxufVxuIl19
288
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL2RhdGUtdGltZS9kYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ2hELE9BQU8sRUFBQyxZQUFZLEVBQUUsY0FBYyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDakUsT0FBTyxFQUNILHNCQUFzQixFQUN0Qix3QkFBd0IsRUFDeEIsdUJBQXVCLEdBQzFCLE1BQU0sMEJBQTBCLENBQUM7QUFHbEMsT0FBTyxFQUFDLFVBQVUsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTdFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxPQUFPLEVBQUUsY0FBYyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ3BELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDakMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUUvQiw2QkFBNkI7QUFDN0I7O0dBRUc7QUFDSCxNQUFNLE9BQU8sTUFBTyxTQUFRLFFBQVE7SUFDaEMsWUFDSSxJQUFZLEVBQ1osS0FBYSxFQUNKLEdBQVc7UUFFcEIsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUZWLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFHcEIsU0FBUyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLG1CQUFtQixDQUFDLElBQVU7UUFDakMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFB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QztTQUMxRDtJQUNMLENBQUM7SUFFUSxRQUFRLENBQUMsYUFBMEIsS0FBSyxFQUFFLFlBQW9CLEdBQUc7UUFDdEUsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRVEsTUFBTTtRQUNYLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUVEOztPQUVHO0lBQ00saUJBQWlCO1FBQ3RCLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7O09BRUc7SUFDTSxlQUFlO1FBQ3BCLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt0dWlBc3NlcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1R1aURheU9mV2VlaywgVHVpTW9udGhOdW1iZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvZW51bXMnO1xuaW1wb3J0IHtcbiAgICBUdWlJbnZhbGlkRGF5RXhjZXB0aW9uLFxuICAgIFR1aUludmFsaWRNb250aEV4Y2VwdGlvbixcbiAgICBUdWlJbnZhbGlkWWVhckV4Y2VwdGlvbixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9leGNlcHRpb25zJztcbmltcG9ydCB7VHVpRGF5TGlrZX0gZnJvbSAnQHRhaWdhLXVpL2Nkay9pbnRlcmZhY2VzJztcbmltcG9ydCB7VHVpRGF0ZU1vZGV9IGZyb20gJ0B0YWlnYS11aS9jZGsvdHlwZXMnO1xuaW1wb3J0IHt0dWlJblJhbmdlLCB0dWlOb3JtYWxpemVUb0ludE51bWJlcn0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9tYXRoJztcblxuaW1wb3J0IHtEQVRFX0ZJTExFUl9MRU5HVEh9IGZyb20gJy4vZGF0ZS1maWxsZXJzJztcbmltcG9ydCB7TUlOX0RBWSwgTU9OVEhTX0lOX1lFQVJ9IGZyb20gJy4vZGF0ZS10aW1lJztcbmltcG9ydCB7VHVpTW9udGh9IGZyb20gJy4vbW9udGgnO1xuaW1wb3J0IHtUdWlZZWFyfSBmcm9tICcuL3llYXInO1xuXG4vLyBUT0RPOiBMb2NhbGl6ZWQgZm9ybWF0dGluZ1xuLyoqXG4gKiBJbW11dGFibGUgZGF0ZSBvYmplY3QsIGNvbnNpc3Rpbmcgb2YgZGF5LCBtb250aCBhbmQgeWVhclxuICovXG5leHBvcnQgY2xhc3MgVHVpRGF5IGV4dGVuZHMgVHVpTW9udGgge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICB5ZWFyOiBudW1iZXIsXG4gICAgICAgIG1vbnRoOiBudW1iZXIsXG4gICAgICAgIHJlYWRvbmx5IGRheTogbnVtYmVyLFxuICAgICkge1xuICAgICAgICBzdXBlcih5ZWFyLCBtb250aCk7XG4gICAgICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KFR1aURheS5pc1ZhbGlkRGF5KHllYXIsIG1vbnRoLCBkYXkpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIHtAbGluayBUdWlEYXl9IGZyb20gbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBzdGF0aWMgZnJvbUxvY2FsTmF0aXZlRGF0ZShkYXRlOiBEYXRlKTogVHVpRGF5IHtcbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCksIGRhdGUuZ2V0RGF0ZSgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIHtAbGluayBUdWlEYXl9IGZyb20gbmF0aXZlIHtAbGluayBEYXRlfSB1c2luZyBVVENcbiAgICAgKi9cbiAgICBzdGF0aWMgZnJvbVV0Y05hdGl2ZURhdGUoZGF0ZTogRGF0ZSk6IFR1aURheSB7XG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KGRhdGUuZ2V0VVRDRnVsbFllYXIoKSwgZGF0ZS5nZXRVVENNb250aCgpLCBkYXRlLmdldFVUQ0RhdGUoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgdmFsaWRpdHkgb2YgeWVhciwgbW9udGggYW5kIGRheVxuICAgICAqXG4gICAgICogQHBhcmFtIHllYXJcbiAgICAgKiBAcGFyYW0gbW9udGhcbiAgICAgKiBAcGFyYW0gZGF5XG4gICAgICogQHJldHVybiBib29sZWFuIHZhbGlkaXR5XG4gICAgICovXG4gICAgc3RhdGljIGlzVmFsaWREYXkoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBkYXk6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgVHVpTW9udGguaXNWYWxpZE1vbnRoKHllYXIsIG1vbnRoKSAmJlxuICAgICAgICAgICAgTnVtYmVyLmlzSW50ZWdlcihkYXkpICYmXG4gICAgICAgICAgICB0dWlJblJhbmdlKFxuICAgICAgICAgICAgICAgIGRheSxcbiAgICAgICAgICAgICAgICBNSU5fREFZLFxuICAgICAgICAgICAgICAgIFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRoLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcikpICsgMSxcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDdXJyZW50IGRheSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY3VycmVudExvY2FsKCk6IFR1aURheSB7XG4gICAgICAgIGNvbnN0IG5hdGl2ZURhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBjb25zdCB5ZWFyID0gbmF0aXZlRGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgICBjb25zdCBtb250aCA9IG5hdGl2ZURhdGUuZ2V0TW9udGgoKTtcbiAgICAgICAgY29uc3QgZGF5ID0gbmF0aXZlRGF0ZS5nZXREYXRlKCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBjdXJyZW50IGRheSBiYXNlZCBvbiBVVENcbiAgICAgKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY3VycmVudFV0YygpOiBUdWlEYXkge1xuICAgICAgICBjb25zdCBuYXRpdmVEYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgY29uc3QgeWVhciA9IG5hdGl2ZURhdGUuZ2V0VVRDRnVsbFllYXIoKTtcbiAgICAgICAgY29uc3QgbW9udGggPSBuYXRpdmVEYXRlLmdldFVUQ01vbnRoKCk7XG4gICAgICAgIGNvbnN0IGRheSA9IG5hdGl2ZURhdGUuZ2V0VVRDRGF0ZSgpO1xuXG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KHllYXIsIG1vbnRoLCBkYXkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGN1bGF0ZXMge0BsaW5rIFR1aURheX0gbm9ybWFsaXppbmcgeWVhciwgbW9udGggYW5kIGRheS4ge0BsaW5rIE5hTn0gaXMgdHVybmVkIGludG8gbWluaW1hbCB2YWx1ZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB5ZWFyIGFueSB5ZWFyIHZhbHVlLCBpbmNsdWRpbmcgaW52YWxpZFxuICAgICAqIEBwYXJhbSBtb250aCBhbnkgbW9udGggdmFsdWUsIGluY2x1ZGluZyBpbnZhbGlkIChtb250aHMgc3RhcnQgd2l0aCAwKVxuICAgICAqIEBwYXJhbSBkYXkgYW55IGRheSB2YWx1ZSwgaW5jbHVkaW5nIGludmFsaWRcbiAgICAgKiBAcmV0dXJuIG5vcm1hbGl6ZWQgZGF0ZVxuICAgICAqL1xuICAgIHN0YXRpYyBub3JtYWxpemVPZih5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGRheTogbnVtYmVyKTogVHVpRGF5IHtcbiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFllYXIgPSBUdWlZZWFyLm5vcm1hbGl6ZVllYXJQYXJ0KHllYXIpO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkTW9udGggPSBUdWlNb250aC5ub3JtYWxpemVNb250aFBhcnQobW9udGgpO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkRGF5ID0gVHVpRGF5Lm5vcm1hbGl6ZURheVBhcnQoXG4gICAgICAgICAgICBkYXksXG4gICAgICAgICAgICBub3JtYWxpemVkTW9udGgsXG4gICAgICAgICAgICBub3JtYWxpemVkWWVhcixcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gbmV3IFR1aURheShub3JtYWxpemVkWWVhciwgbm9ybWFsaXplZE1vbnRoLCBub3JtYWxpemVkRGF5KTtcbiAgICB9XG5cbiAgICBzdGF0aWMgb3ZlcnJpZGUgbGVuZ3RoQmV0d2Vlbihmcm9tOiBUdWlEYXksIHRvOiBUdWlEYXkpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTWF0aC5yb3VuZChcbiAgICAgICAgICAgICh0by50b0xvY2FsTmF0aXZlRGF0ZSgpLmdldFRpbWUoKSAtIGZyb20udG9Mb2NhbE5hdGl2ZURhdGUoKS5nZXRUaW1lKCkpIC9cbiAgICAgICAgICAgICAgICAoMTAwMCAqIDYwICogNjAgKiAyNCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgc3RhdGljIHBhcnNlUmF3RGF0ZVN0cmluZyhcbiAgICAgICAgZGF0ZTogc3RyaW5nLFxuICAgICAgICBkYXRlTW9kZTogVHVpRGF0ZU1vZGUgPSBgRE1ZYCxcbiAgICApOiB7ZGF5OiBudW1iZXI7IG1vbnRoOiBudW1iZXI7IHllYXI6IG51bWJlcn0ge1xuICAgICAgICBuZ0Rldk1vZGUgJiZcbiAgICAgICAgICAgIHR1aUFzc2VydC5hc3NlcnQoXG4gICAgICAgICAgICAgICAgZGF0ZS5sZW5ndGggPT09IERBVEVfRklMTEVSX0xFTkdUSCxcbiAgICAgICAgICAgICAgICBgW3BhcnNlUmF3RGF0ZVN0cmluZ106IHdyb25nIGRhdGUgc3RyaW5nIGxlbmd0aGAsXG4gICAgICAgICAgICApO1xuXG4gICAgICAgIHN3aXRjaCAoZGF0ZU1vZGUpIHtcbiAgICAgICAgICAgIGNhc2UgYFlNRGA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgZGF5OiBwYXJzZUludChkYXRlLnNsaWNlKDgsIDEwKSwgMTApLFxuICAgICAgICAgICAgICAgICAgICBtb250aDogcGFyc2VJbnQoZGF0ZS5zbGljZSg1LCA3KSwgMTApIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgeWVhcjogcGFyc2VJbnQoZGF0ZS5zbGljZSgwLCA0KSwgMTApLFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNhc2UgYE1EWWA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgZGF5OiBwYXJzZUludChkYXRlLnNsaWNlKDMsIDUpLCAxMCksXG4gICAgICAgICAgICAgICAgICAgIG1vbnRoOiBwYXJzZUludChkYXRlLnNsaWNlKDAsIDIpLCAxMCkgLSAxLFxuICAgICAgICAgICAgICAgICAgICB5ZWFyOiBwYXJzZUludChkYXRlLnNsaWNlKDYsIDEwKSwgMTApLFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNhc2UgYERNWWA6XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGRheTogcGFyc2VJbnQoZGF0ZS5zbGljZSgwLCAyKSwgMTApLFxuICAgICAgICAgICAgICAgICAgICBtb250aDogcGFyc2VJbnQoZGF0ZS5zbGljZSgzLCA1KSwgMTApIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgeWVhcjogcGFyc2VJbnQoZGF0ZS5zbGljZSg2LCAxMCksIDEwKSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVE9ETzogTW92ZSBtb250aCBhbmQgeWVhciByZWxhdGVkIGNvZGUgY29ycmVzcG9uZGluZyBjbGFzc2VzXG4gICAgLyoqXG4gICAgICogUGFyc2luZyBhIHN0cmluZyB3aXRoIGRhdGUgd2l0aCBub3JtYWxpemF0aW9uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmF3RGF0ZSBkYXRlIHN0cmluZ1xuICAgICAqIEBwYXJhbSBkYXRlTW9kZSBkYXRlIGZvcm1hdCBvZiB0aGUgZGF0ZSBzdHJpbmcgKERNWSB8IE1EWSB8IFlNRClcbiAgICAgKiBAcmV0dXJuIG5vcm1hbGl6ZWQgZGF0ZVxuICAgICAqL1xuICAgIHN0YXRpYyBub3JtYWxpemVQYXJzZShyYXdEYXRlOiBzdHJpbmcsIGRhdGVNb2RlOiBUdWlEYXRlTW9kZSA9IGBETVlgKTogVHVpRGF5IHtcbiAgICAgICAgY29uc3Qge2RheSwgbW9udGgsIHllYXJ9ID0gdGhpcy5wYXJzZVJhd0RhdGVTdHJpbmcocmF3RGF0ZSwgZGF0ZU1vZGUpO1xuXG4gICAgICAgIHJldHVybiBUdWlEYXkubm9ybWFsaXplT2YoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFyc2luZyBhIGRhdGUgc3RyaW5naWZpZWQgaW4gYSB0b0pTT04gZm9ybWF0XG4gICAgICogQHBhcmFtIHllYXJNb250aERheVN0cmluZyBkYXRlIHN0cmluZyBpbiBmb3JtYXQgb2YgWVlZWS1NTS1ERFxuICAgICAqIEByZXR1cm4gZGF0ZVxuICAgICAqIEB0aHJvd3MgZXhjZXB0aW9ucyBpZiBhbnkgcGFydCBvZiB0aGUgZGF0ZSBpcyBpbnZhbGlkXG4gICAgICovXG4gICAgc3RhdGljIGpzb25QYXJzZSh5ZWFyTW9udGhEYXlTdHJpbmc6IHN0cmluZyk6IFR1aURheSB7XG4gICAgICAgIGNvbnN0IHtkYXksIG1vbnRoLCB5ZWFyfSA9IHRoaXMucGFyc2VSYXdEYXRlU3RyaW5nKHllYXJNb250aERheVN0cmluZywgYFlNRGApO1xuXG4gICAgICAgIGlmICghVHVpWWVhci5pc1ZhbGlkWWVhcih5ZWFyKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR1aUludmFsaWRZZWFyRXhjZXB0aW9uKHllYXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFUdWlNb250aC5pc1ZhbGlkTW9udGgoeWVhciwgbW9udGgpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHVpSW52YWxpZE1vbnRoRXhjZXB0aW9uKG1vbnRoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICFOdW1iZXIuaXNJbnRlZ2VyKGRheSkgfHxcbiAgICAgICAgICAgICF0dWlJblJhbmdlKFxuICAgICAgICAgICAgICAgIGRheSxcbiAgICAgICAgICAgICAgICBNSU5fREFZLFxuICAgICAgICAgICAgICAgIFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRoLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcikpICsgMSxcbiAgICAgICAgICAgIClcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHVpSW52YWxpZERheUV4Y2VwdGlvbihkYXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUdWlEYXkoeWVhciwgbW9udGgsIGRheSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHN0YXRpYyBub3JtYWxpemVEYXlQYXJ0KGRheTogbnVtYmVyLCBtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChUdWlNb250aC5pc1ZhbGlkTW9udGgoeWVhciwgbW9udGgpKTtcblxuICAgICAgICBjb25zdCBtb250aERheXNDb3VudCA9IFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KFxuICAgICAgICAgICAgbW9udGgsXG4gICAgICAgICAgICBUdWlZZWFyLmlzTGVhcFllYXIoeWVhciksXG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIHR1aU5vcm1hbGl6ZVRvSW50TnVtYmVyKGRheSwgMSwgbW9udGhEYXlzQ291bnQpO1xuICAgIH1cblxuICAgIGdldCBmb3JtYXR0ZWREYXlQYXJ0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBTdHJpbmcodGhpcy5kYXkpLnBhZFN0YXJ0KDIsIGAwYCk7XG4gICAgfVxuXG4gICAgZ2V0IGlzV2Vla2VuZCgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgZGF5T2ZXZWVrID0gdGhpcy5kYXlPZldlZWsoZmFsc2UpO1xuXG4gICAgICAgIHJldHVybiBkYXlPZldlZWsgPT09IFR1aURheU9mV2Vlay5TYXR1cmRheSB8fCBkYXlPZldlZWsgPT09IFR1aURheU9mV2Vlay5TdW5kYXk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBkYXkgb2Ygd2Vla1xuICAgICAqXG4gICAgICogQHBhcmFtIHN0YXJ0RnJvbU1vbmRheSB3aGV0aGVyIHdlZWsgc3RhcnRzIGZyb20gTW9uZGF5IGFuZCBub3QgZnJvbSBTdW5kYXlcbiAgICAgKiBAcmV0dXJuIGRheSBvZiB3ZWVrIChmcm9tIDAgdG8gNilcbiAgICAgKi9cbiAgICBkYXlPZldlZWsoc3RhcnRGcm9tTW9uZGF5OiBib29sZWFuID0gdHJ1ZSk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGRheU9mV2VlayA9IHN0YXJ0RnJvbU1vbmRheVxuICAgICAgICAgICAgPyB0aGlzLnRvTG9jYWxOYXRpdmVEYXRlKCkuZ2V0RGF5KCkgLSAxXG4gICAgICAgICAgICA6IHRoaXMudG9Mb2NhbE5hdGl2ZURhdGUoKS5nZXREYXkoKTtcblxuICAgICAgICByZXR1cm4gZGF5T2ZXZWVrIDwgMCA/IDYgOiBkYXlPZldlZWs7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIGRhdGUgaXMgYWZ0ZXIgY3VycmVudFxuICAgICAqL1xuICAgIGRheUJlZm9yZShhbm90aGVyOiBUdWlEYXkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMubW9udGhCZWZvcmUoYW5vdGhlcikgfHxcbiAgICAgICAgICAgICh0aGlzLm1vbnRoU2FtZShhbm90aGVyKSAmJiB0aGlzLmRheSA8IGFub3RoZXIuZGF5KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBkYXRlIGlzIGFmdGVyIG9yIGVxdWFscyB0byBjdXJyZW50XG4gICAgICovXG4gICAgZGF5U2FtZU9yQmVmb3JlKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5tb250aEJlZm9yZShhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMubW9udGhTYW1lKGFub3RoZXIpICYmIHRoaXMuZGF5IDw9IGFub3RoZXIuZGF5KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBkYXRlIGlzIHRoZSBzYW1lIGFzIGN1cnJlbnRcbiAgICAgKi9cbiAgICBkYXlTYW1lKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tb250aFNhbWUoYW5vdGhlcikgJiYgdGhpcy5kYXkgPT09IGFub3RoZXIuZGF5O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3NlZCBkYXRlIGlzIGVpdGhlciBiZWZvcmUgb3IgdGhlIHNhbWUgYXMgY3VycmVudFxuICAgICAqL1xuICAgIGRheVNhbWVPckFmdGVyKGFub3RoZXI6IFR1aURheSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5tb250aEFmdGVyKGFub3RoZXIpIHx8XG4gICAgICAgICAgICAodGhpcy5tb250aFNhbWUoYW5vdGhlcikgJiYgdGhpcy5kYXkgPj0gYW5vdGhlci5kYXkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFzc2VkIGRhdGUgaXMgYmVmb3JlIGN1cnJlbnRcbiAgICAgKi9cbiAgICBkYXlBZnRlcihhbm90aGVyOiBUdWlEYXkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMubW9udGhBZnRlcihhbm90aGVyKSB8fFxuICAgICAgICAgICAgKHRoaXMubW9udGhTYW1lKGFub3RoZXIpICYmIHRoaXMuZGF5ID4gYW5vdGhlci5kYXkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2xhbXBpbmcgZGF0ZSBiZXR3ZWVuIHR3byBsaW1pdHNcbiAgICAgKlxuICAgICAqIEBwYXJhbSBtaW5cbiAgICAgKiBAcGFyYW0gbWF4XG4gICAgICogQHJldHVybiBjbGFtcGVkIGRhdGVcbiAgICAgKi9cbiAgICBkYXlMaW1pdChtaW46IFR1aURheSB8IG51bGwsIG1heDogVHVpRGF5IHwgbnVsbCk6IFR1aURheSB7XG4gICAgICAgIGlmIChtaW4gIT09IG51bGwgJiYgdGhpcy5kYXlCZWZvcmUobWluKSkge1xuICAgICAgICAgICAgcmV0dXJuIG1pbjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtYXggIT09IG51bGwgJiYgdGhpcy5kYXlBZnRlcihtYXgpKSB7XG4gICAgICAgICAgICByZXR1cm4gbWF4O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW1tdXRhYmx5IGFsdGVycyBjdXJyZW50IGRheSBieSBwYXNzZWQgb2Zmc2V0XG4gICAgICpcbiAgICAgKiBJZiByZXN1bHRpbmcgbW9udGggaGFzIG1vcmUgZGF5cyB0aGFuIG9yaWdpbmFsIG9uZSwgZGF0ZSBpcyByb3VuZGVkIHRvIHRoZSBtYXhpbXVtIGRheVxuICAgICAqIGluIHRoZSByZXN1bHRpbmcgbW9udGguIE9mZnNldCBvZiBkYXlzIHdpbGwgYmUgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgcmVzdWx0ZWQgeWVhciBhbmQgbW9udGhcbiAgICAgKiB0byBub3QgaW50ZXJmZXJlIHdpdGggcGFyZW50IGNsYXNzZXMgbWV0aG9kc1xuICAgICAqXG4gICAgICogQHBhcmFtIG9mZnNldFxuICAgICAqIEByZXR1cm4gbmV3IGRhdGUgb2JqZWN0IGFzIGEgcmVzdWx0IG9mIG9mZnNldHRpbmcgY3VycmVudFxuICAgICAqL1xuICAgIG92ZXJyaWRlIGFwcGVuZCh7eWVhciA9IDAsIG1vbnRoID0gMCwgZGF5ID0gMH06IFR1aURheUxpa2UpOiBUdWlEYXkge1xuICAgICAgICBjb25zdCB0b3RhbE1vbnRocyA9ICh0aGlzLnllYXIgKyB5ZWFyKSAqIE1PTlRIU19JTl9ZRUFSICsgdGhpcy5tb250aCArIG1vbnRoO1xuICAgICAgICBsZXQgeWVhcnMgPSBNYXRoLmZsb29yKHRvdGFsTW9udGhzIC8gTU9OVEhTX0lOX1lFQVIpO1xuICAgICAgICBsZXQgbW9udGhzID0gdG90YWxNb250aHMgJSBNT05USFNfSU5fWUVBUjtcblxuICAgICAgICBsZXQgZGF5cyA9XG4gICAgICAgICAgICBNYXRoLm1pbihcbiAgICAgICAgICAgICAgICB0aGlzLmRheSxcbiAgICAgICAgICAgICAgICBUdWlNb250aC5nZXRNb250aERheXNDb3VudChtb250aHMsIFR1aVllYXIuaXNMZWFwWWVhcih5ZWFycykpLFxuICAgICAgICAgICAgKSArIGRheTtcblxuICAgICAgICB3aGlsZSAoZGF5cyA+IFR1aU1vbnRoLmdldE1vbnRoRGF5c0NvdW50KG1vbnRocywgVHVpWWVhci5pc0xlYXBZZWFyKHllYXJzKSkpIHtcbiAgICAgICAgICAgIGRheXMgLT0gVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQobW9udGhzLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcnMpKTtcblxuICAgICAgICAgICAgaWYgKG1vbnRocyA9PT0gVHVpTW9udGhOdW1iZXIuRGVjZW1iZXIpIHtcbiAgICAgICAgICAgICAgICB5ZWFycysrO1xuICAgICAgICAgICAgICAgIG1vbnRocyA9IFR1aU1vbnRoTnVtYmVyLkphbnVhcnk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG1vbnRocysrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgd2hpbGUgKGRheXMgPCBNSU5fREFZKSB7XG4gICAgICAgICAgICBpZiAobW9udGhzID09PSBUdWlNb250aE51bWJlci5KYW51YXJ5KSB7XG4gICAgICAgICAgICAgICAgeWVhcnMtLTtcbiAgICAgICAgICAgICAgICBtb250aHMgPSBUdWlNb250aE51bWJlci5EZWNlbWJlcjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbW9udGhzLS07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRheXMgKz0gVHVpTW9udGguZ2V0TW9udGhEYXlzQ291bnQobW9udGhzLCBUdWlZZWFyLmlzTGVhcFllYXIoeWVhcnMpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXcgVHVpRGF5KHllYXJzLCBtb250aHMsIGRheXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgZm9ybWF0dGVkIHdob2xlIGRhdGVcbiAgICAgKi9cbiAgICBnZXRGb3JtYXR0ZWREYXkoZGF0ZUZvcm1hdDogVHVpRGF0ZU1vZGUsIHNlcGFyYXRvcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgbmdEZXZNb2RlICYmXG4gICAgICAgICAgICB0dWlBc3NlcnQuYXNzZXJ0KFxuICAgICAgICAgICAgICAgIHNlcGFyYXRvci5sZW5ndGggPT09IDEsXG4gICAgICAgICAgICAgICAgYFNlcGFyYXRvciBzaG91bGQgY29uc2lzdCBvZiBvbmx5IDEgc3ltYm9sYCxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgZGQgPSB0aGlzLmZvcm1hdHRlZERheVBhcnQ7XG4gICAgICAgIGNvbnN0IG1tID0gdGhpcy5mb3JtYXR0ZWRNb250aFBhcnQ7XG4gICAgICAgIGNvbnN0IHl5eXkgPSB0aGlzLmZvcm1hdHRlZFllYXI7XG5cbiAgICAgICAgc3dpdGNoIChkYXRlRm9ybWF0KSB7XG4gICAgICAgICAgICBjYXNlIGBZTURgOlxuICAgICAgICAgICAgICAgIHJldHVybiBgJHt5eXl5fSR7c2VwYXJhdG9yfSR7bW19JHtzZXBhcmF0b3J9JHtkZH1gO1xuICAgICAgICAgICAgY2FzZSBgTURZYDpcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7bW19JHtzZXBhcmF0b3J9JHtkZH0ke3NlcGFyYXRvcn0ke3l5eXl9YDtcbiAgICAgICAgICAgIGNhc2UgYERNWWA6XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBgJHtkZH0ke3NlcGFyYXRvcn0ke21tfSR7c2VwYXJhdG9yfSR7eXl5eX1gO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgdG9TdHJpbmcoZGF0ZUZvcm1hdDogVHVpRGF0ZU1vZGUgPSBgRE1ZYCwgc2VwYXJhdG9yOiBzdHJpbmcgPSBgLmApOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRGb3JtYXR0ZWREYXkoZGF0ZUZvcm1hdCwgc2VwYXJhdG9yKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSB0b0pTT04oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3N1cGVyLnRvSlNPTigpfS0ke3RoaXMuZm9ybWF0dGVkRGF5UGFydH1gO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBsb2NhbCB0aW1lIHpvbmVcbiAgICAgKi9cbiAgICBvdmVycmlkZSB0b0xvY2FsTmF0aXZlRGF0ZSgpOiBEYXRlIHtcbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMueWVhciwgdGhpcy5tb250aCwgdGhpcy5kYXkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgbmF0aXZlIHtAbGluayBEYXRlfSBiYXNlZCBvbiBVVENcbiAgICAgKi9cbiAgICBvdmVycmlkZSB0b1V0Y05hdGl2ZURhdGUoKTogRGF0ZSB7XG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShEYXRlLlVUQyh0aGlzLnllYXIsIHRoaXMubW9udGgsIHRoaXMuZGF5KSk7XG4gICAgfVxufVxuIl19