taxtank-core 0.33.57 → 0.33.59

Sign up to get free protection for your applications and to get access to all the features.
Files changed (29) hide show
  1. package/esm2022/src/lib/forms/bank/bank-account/bank-account-add-manual.form.mjs +3 -4
  2. package/esm2022/src/lib/forms/bank/bank-account/bank-account-import.form.mjs +1 -1
  3. package/esm2022/src/lib/models/bank/bank-account.mjs +4 -6
  4. package/esm2022/src/lib/models/bank/index.mjs +1 -2
  5. package/esm2022/src/lib/models/dictionary/dictionary.mjs +2 -2
  6. package/esm2022/src/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.mjs +5 -4
  7. package/esm2022/src/lib/services/http/rest/http-error-messages.const.mjs +14 -0
  8. package/esm2022/src/lib/services/http/rest/index.mjs +2 -1
  9. package/esm2022/src/lib/services/http/rest/rest.service.mjs +37 -27
  10. package/esm2022/src/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.mjs +3 -1
  11. package/esm2022/src/lib/services/property/corelogic/corelogic-messages.enum.mjs +5 -0
  12. package/esm2022/src/lib/services/property/corelogic/corelogic.service.mjs +13 -7
  13. package/esm2022/src/lib/services/property/corelogic/index.mjs +2 -1
  14. package/fesm2022/taxtank-core.mjs +146 -127
  15. package/fesm2022/taxtank-core.mjs.map +1 -1
  16. package/package.json +1 -1
  17. package/src/lib/forms/bank/bank-account/bank-account-add-manual.form.d.ts +2 -3
  18. package/src/lib/models/bank/bank-account.d.ts +0 -2
  19. package/src/lib/models/bank/index.d.ts +0 -1
  20. package/src/lib/models/dictionary/dictionary.d.ts +1 -1
  21. package/src/lib/services/http/rest/http-error-messages.const.d.ts +13 -0
  22. package/src/lib/services/http/rest/index.d.ts +1 -0
  23. package/src/lib/services/http/rest/rest.service.d.ts +22 -0
  24. package/src/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.d.ts +3 -0
  25. package/src/lib/services/property/corelogic/corelogic-messages.enum.d.ts +3 -0
  26. package/src/lib/services/property/corelogic/corelogic.service.d.ts +3 -1
  27. package/src/lib/services/property/corelogic/index.d.ts +1 -0
  28. package/esm2022/src/lib/models/bank/bank-account-types.const.mjs +0 -14
  29. package/src/lib/models/bank/bank-account-types.const.d.ts +0 -7
@@ -1,9 +1,8 @@
1
+ import { Loan, TYPE_LOAN } from '../../../models';
1
2
  import { UntypedFormControl, Validators } from '@angular/forms';
2
3
  import { LoanForm } from '../../loan';
3
- import { BankAccountTypeEnum } from '../../../db/Enums/bank/bank-account-type.enum';
4
4
  import { BankAccountAllocationForm } from './bank-account-allocation.form';
5
5
  import { plainToClass } from 'class-transformer';
6
- import { Loan } from '../../../models/loan/loan';
7
6
  /**
8
7
  * Form is using for single manual bank account creation (not Basiq)
9
8
  */
@@ -27,7 +26,7 @@ export class BankAccountAddManualForm extends BankAccountAllocationForm {
27
26
  */
28
27
  listenTypeChanges() {
29
28
  this.get('type').valueChanges.subscribe((type) => {
30
- if (type === BankAccountTypeEnum.LOAN) {
29
+ if (TYPE_LOAN.includes(type)) {
31
30
  // Set prefilled term for bank account loan
32
31
  this.addControl('loan', new LoanForm(plainToClass(Loan, { bankAccount: this.model })));
33
32
  }
@@ -43,4 +42,4 @@ export class BankAccountAddManualForm extends BankAccountAllocationForm {
43
42
  return super.submit({ bankConnection: this.connection });
44
43
  }
45
44
  }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LWFkZC1tYW51YWwuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9iYW5rL2JhbmstYWNjb3VudC9iYW5rLWFjY291bnQtYWRkLW1hbnVhbC5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFJakQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEseUJBQXlCO2FBQzlELHlCQUFvQixHQUFHLDJCQUEyQixDQUFDO0lBRTFELFlBQ1UsVUFBMEI7UUFFbEMsS0FBSyxDQUNILElBQUksRUFDSjtZQUNFLElBQUksRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3ZELFdBQVcsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzlELGNBQWMsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2pFLGFBQWEsRUFBRSxJQUFJLGtCQUFrQixDQUNuQyxJQUFJLEVBQ0osQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUN6RjtTQUNGLENBQ0YsQ0FBQztRQWJNLGVBQVUsR0FBVixVQUFVLENBQWdCO0lBY3BDLENBQUM7SUFFRCxZQUFZO1FBQ1YsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNLLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUF5QixFQUFFLEVBQUU7WUFDcEUsSUFBSSxJQUFJLEtBQUssbUJBQW1CLENBQUMsSUFBSSxFQUFFO2dCQUNyQywyQ0FBMkM7Z0JBQzNDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsRUFBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3RGO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDNUI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU07UUFDSixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBQyxDQUFDLENBQUM7SUFDekQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhbmtBY2NvdW50IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50JztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJhbmtDb25uZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2JhbmsvYmFuay1jb25uZWN0aW9uJztcbmltcG9ydCB7IExvYW5Gb3JtIH0gZnJvbSAnLi4vLi4vbG9hbic7XG5pbXBvcnQgeyBCYW5rQWNjb3VudFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vZGIvRW51bXMvYmFuay9iYW5rLWFjY291bnQtdHlwZS5lbnVtJztcbmltcG9ydCB7IEJhbmtBY2NvdW50QWxsb2NhdGlvbkZvcm0gfSBmcm9tICcuL2JhbmstYWNjb3VudC1hbGxvY2F0aW9uLmZvcm0nO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgTG9hbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9sb2FuL2xvYW4nO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2V2ZW50LWxpc3RlbmVyLmludGVyZmFjZSc7XG5cblxuLyoqXG4gKiBGb3JtIGlzIHVzaW5nIGZvciBzaW5nbGUgbWFudWFsIGJhbmsgYWNjb3VudCBjcmVhdGlvbiAobm90IEJhc2lxKVxuICovXG5leHBvcnQgY2xhc3MgQmFua0FjY291bnRBZGRNYW51YWxGb3JtIGV4dGVuZHMgQmFua0FjY291bnRBbGxvY2F0aW9uRm9ybSBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgc3RhdGljIGFjY291bnROdW1iZXJQYXR0ZXJuID0gJ15bMC05XXs2fVsgXXsxfVswLTldezEsfSQnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY29ubmVjdGlvbjogQmFua0Nvbm5lY3Rpb25cbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBudWxsLFxuICAgICAge1xuICAgICAgICB0eXBlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICBhY2NvdW50TmFtZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgY3VycmVudEJhbGFuY2U6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICAgIGFjY291bnROdW1iZXI6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKEJhbmtBY2NvdW50QWRkTWFudWFsRm9ybS5hY2NvdW50TnVtYmVyUGF0dGVybildXG4gICAgICAgIClcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCkge1xuICAgIHN1cGVyLmxpc3RlbkV2ZW50cygpO1xuICAgIHRoaXMubGlzdGVuVHlwZUNoYW5nZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQvUmVtb3ZlIGxvYW4gZm9ybSBkZXBlbmRzIG9uIHNlbGVjdGVkIGJhbmsgYWNjb3VudCB0eXBlXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblR5cGVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0KCd0eXBlJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodHlwZTogQmFua0FjY291bnRUeXBlRW51bSkgPT4ge1xuICAgICAgaWYgKHR5cGUgPT09IEJhbmtBY2NvdW50VHlwZUVudW0uTE9BTikge1xuICAgICAgICAvLyBTZXQgcHJlZmlsbGVkIHRlcm0gZm9yIGJhbmsgYWNjb3VudCBsb2FuXG4gICAgICAgIHRoaXMuYWRkQ29udHJvbCgnbG9hbicsIG5ldyBMb2FuRm9ybShwbGFpblRvQ2xhc3MoTG9hbiwge2JhbmtBY2NvdW50OiB0aGlzLm1vZGVsfSkpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucmVtb3ZlQ29udHJvbCgnbG9hbicpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGFjaCBiYW5rIGNvbm5lY3Rpb24gdG8gbWFudWFsIGJhbmsgYWNjb3VudFxuICAgKi9cbiAgc3VibWl0KCk6IEJhbmtBY2NvdW50IHtcbiAgICByZXR1cm4gc3VwZXIuc3VibWl0KHtiYW5rQ29ubmVjdGlvbjogdGhpcy5jb25uZWN0aW9ufSk7XG4gIH1cbn1cbiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LWFkZC1tYW51YWwuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9iYW5rL2JhbmstYWNjb3VudC9iYW5rLWFjY291bnQtYWRkLW1hbnVhbC5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBK0IsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXRDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUlqRDs7R0FFRztBQUNILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSx5QkFBeUI7YUFDOUQseUJBQW9CLEdBQUcsMkJBQTJCLENBQUM7SUFFMUQsWUFBb0IsVUFBMEI7UUFDNUMsS0FBSyxDQUFDLElBQUksRUFBRTtZQUNWLElBQUksRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3ZELFdBQVcsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzlELGNBQWMsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2pFLGFBQWEsRUFBRSxJQUFJLGtCQUFrQixDQUNuQyxJQUFJLEVBQ0osQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUN6RjtTQUNGLENBQUMsQ0FBQztRQVRlLGVBQVUsR0FBVixVQUFVLENBQWdCO0lBVTlDLENBQUM7SUFFRCxZQUFZO1FBQ1YsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNLLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUF5QixFQUFFLEVBQUU7WUFDcEUsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUM1QiwyQ0FBMkM7Z0JBQzNDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3hGO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDNUI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU07UUFDSixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhbmtBY2NvdW50LCBCYW5rQ29ubmVjdGlvbiwgTG9hbiwgVFlQRV9MT0FOIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExvYW5Gb3JtIH0gZnJvbSAnLi4vLi4vbG9hbic7XG5pbXBvcnQgeyBCYW5rQWNjb3VudFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgQmFua0FjY291bnRBbGxvY2F0aW9uRm9ybSB9IGZyb20gJy4vYmFuay1hY2NvdW50LWFsbG9jYXRpb24uZm9ybSc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBJRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuXG5cbi8qKlxuICogRm9ybSBpcyB1c2luZyBmb3Igc2luZ2xlIG1hbnVhbCBiYW5rIGFjY291bnQgY3JlYXRpb24gKG5vdCBCYXNpcSlcbiAqL1xuZXhwb3J0IGNsYXNzIEJhbmtBY2NvdW50QWRkTWFudWFsRm9ybSBleHRlbmRzIEJhbmtBY2NvdW50QWxsb2NhdGlvbkZvcm0gaW1wbGVtZW50cyBJRXZlbnRMaXN0ZW5lciB7XG4gIHN0YXRpYyBhY2NvdW50TnVtYmVyUGF0dGVybiA9ICdeWzAtOV17Nn1bIF17MX1bMC05XXsxLH0kJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbm5lY3Rpb246IEJhbmtDb25uZWN0aW9uKSB7XG4gICAgc3VwZXIobnVsbCwge1xuICAgICAgdHlwZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGFjY291bnROYW1lOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgY3VycmVudEJhbGFuY2U6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBhY2NvdW50TnVtYmVyOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKFxuICAgICAgICBudWxsLFxuICAgICAgICBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKEJhbmtBY2NvdW50QWRkTWFudWFsRm9ybS5hY2NvdW50TnVtYmVyUGF0dGVybildXG4gICAgICApXG4gICAgfSk7XG4gIH1cblxuICBsaXN0ZW5FdmVudHMoKSB7XG4gICAgc3VwZXIubGlzdGVuRXZlbnRzKCk7XG4gICAgdGhpcy5saXN0ZW5UeXBlQ2hhbmdlcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZC9SZW1vdmUgbG9hbiBmb3JtIGRlcGVuZHMgb24gc2VsZWN0ZWQgYmFuayBhY2NvdW50IHR5cGVcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuVHlwZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5nZXQoJ3R5cGUnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh0eXBlOiBCYW5rQWNjb3VudFR5cGVFbnVtKSA9PiB7XG4gICAgICBpZiAoVFlQRV9MT0FOLmluY2x1ZGVzKHR5cGUpKSB7XG4gICAgICAgIC8vIFNldCBwcmVmaWxsZWQgdGVybSBmb3IgYmFuayBhY2NvdW50IGxvYW5cbiAgICAgICAgdGhpcy5hZGRDb250cm9sKCdsb2FuJywgbmV3IExvYW5Gb3JtKHBsYWluVG9DbGFzcyhMb2FuLCB7IGJhbmtBY2NvdW50OiB0aGlzLm1vZGVsIH0pKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlbW92ZUNvbnRyb2woJ2xvYW4nKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2ggYmFuayBjb25uZWN0aW9uIHRvIG1hbnVhbCBiYW5rIGFjY291bnRcbiAgICovXG4gIHN1Ym1pdCgpOiBCYW5rQWNjb3VudCB7XG4gICAgcmV0dXJuIHN1cGVyLnN1Ym1pdCh7IGJhbmtDb25uZWN0aW9uOiB0aGlzLmNvbm5lY3Rpb24gfSk7XG4gIH1cbn1cbiJdfQ==
@@ -21,4 +21,4 @@ export class BankAccountImportForm extends BankAccountAllocationForm {
21
21
  this.disable();
22
22
  }
23
23
  }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LWltcG9ydC5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2Zvcm1zL2JhbmsvYmFuay1hY2NvdW50L2JhbmstYWNjb3VudC1pbXBvcnQuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXRDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHlCQUF5QjtJQUVsRSxZQUNFLFdBQXdCO1FBRXhCLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVuQixJQUFJLFdBQVcsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN4QixtREFBbUQ7WUFDbkQsMEVBQTBFO1lBQzFFLE1BQU0sSUFBSSxHQUFTLFlBQVksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEVBQUMsV0FBVyxFQUFFLEVBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxTQUFTLEVBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQztZQUUxSCxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQzdDO1FBRUQsdUNBQXVDO1FBQ3ZDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXBDLHNFQUFzRTtRQUN0RSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9hbkZvcm0gfSBmcm9tICcuLi8uLi9sb2FuJztcbmltcG9ydCB7IEJhbmtBY2NvdW50IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50JztcbmltcG9ydCB7IEJhbmtBY2NvdW50QWxsb2NhdGlvbkZvcm0gfSBmcm9tICcuL2JhbmstYWNjb3VudC1hbGxvY2F0aW9uLmZvcm0nO1xuaW1wb3J0IHsgTG9hbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9sb2FuL2xvYW4nO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuXG4vKipcbiAqIEZvcm0gaXMgdXNpbmcgZm9yIGltcG9ydCBiYXNpcSBiYW5rIGFjY291bnRzLlxuICogQmFzaXEgYWNjb3VudHMgaGFzIGFsbCBkYXRhIGV4Y2VwdCB0YW5rIHR5cGUsIHByb3BlcnRpZXMgYW5kIGxvYW4gcGFydGlhbGx5XG4gKi9cbmV4cG9ydCBjbGFzcyBCYW5rQWNjb3VudEltcG9ydEZvcm0gZXh0ZW5kcyBCYW5rQWNjb3VudEFsbG9jYXRpb25Gb3JtIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBiYW5rQWNjb3VudDogQmFua0FjY291bnRcbiAgKSB7XG4gICAgc3VwZXIoYmFua0FjY291bnQpO1xuXG4gICAgaWYgKGJhbmtBY2NvdW50LmlzTG9hbigpKSB7XG4gICAgICAvLyBBdHRhY2ggYmFuayBhY2NvdW50IHRvIGxvYW4gZm9yIExvYW5Gb3JtJ3MgbG9naWNcbiAgICAgIC8vIEBUT0RPIEFsZXgvVmlrOiB3ZSBzaG91bGQgdXNlIHNlcGFyYXRlZCBBUEkgZm9yIGJhbmsgYWNjb3VudHMgYW5kIGxvYW5zXG4gICAgICBjb25zdCBsb2FuOiBMb2FuID0gcGxhaW5Ub0NsYXNzKExvYW4sIE9iamVjdC5hc3NpZ24oYmFua0FjY291bnQubG9hbiwge2JhbmtBY2NvdW50OiB7YWNjb3VudElkOiBiYW5rQWNjb3VudC5hY2NvdW50SWR9fSkpO1xuXG4gICAgICB0aGlzLmFkZENvbnRyb2woJ2xvYW4nLCBuZXcgTG9hbkZvcm0obG9hbikpO1xuICAgIH1cblxuICAgIC8vIGRvbid0IHByZXNlbGVjdCB0YW5rIHR5cGUgYnkgZGVmYXVsdFxuICAgIHRoaXMuZ2V0KCd0YW5rVHlwZScpLnNldFZhbHVlKG51bGwpO1xuXG4gICAgLy8gYmFzaXEgYWNjb3VudCBpbXBvcnQgZm9ybSBzaG91bGQgYmUgZGlzYWJsZWQgKHVuY2hlY2tlZCkgYnkgZGVmYXVsdFxuICAgIHRoaXMuZGlzYWJsZSgpO1xuICB9XG59XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LWltcG9ydC5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2Zvcm1zL2JhbmsvYmFuay1hY2NvdW50L2JhbmstYWNjb3VudC1pbXBvcnQuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXRDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHlCQUF5QjtJQUVsRSxZQUNFLFdBQXdCO1FBRXhCLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVuQixJQUFJLFdBQVcsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN4QixtREFBbUQ7WUFDbkQsMEVBQTBFO1lBQzFFLE1BQU0sSUFBSSxHQUFTLFlBQVksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUU5SCxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQzdDO1FBRUQsdUNBQXVDO1FBQ3ZDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXBDLHNFQUFzRTtRQUN0RSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9hbkZvcm0gfSBmcm9tICcuLi8uLi9sb2FuJztcbmltcG9ydCB7IEJhbmtBY2NvdW50IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50JztcbmltcG9ydCB7IEJhbmtBY2NvdW50QWxsb2NhdGlvbkZvcm0gfSBmcm9tICcuL2JhbmstYWNjb3VudC1hbGxvY2F0aW9uLmZvcm0nO1xuaW1wb3J0IHsgTG9hbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9sb2FuL2xvYW4nO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuXG4vKipcbiAqIEZvcm0gaXMgdXNpbmcgZm9yIGltcG9ydCBiYXNpcSBiYW5rIGFjY291bnRzLlxuICogQmFzaXEgYWNjb3VudHMgaGFzIGFsbCBkYXRhIGV4Y2VwdCB0YW5rIHR5cGUsIHByb3BlcnRpZXMgYW5kIGxvYW4gcGFydGlhbGx5XG4gKi9cbmV4cG9ydCBjbGFzcyBCYW5rQWNjb3VudEltcG9ydEZvcm0gZXh0ZW5kcyBCYW5rQWNjb3VudEFsbG9jYXRpb25Gb3JtIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBiYW5rQWNjb3VudDogQmFua0FjY291bnRcbiAgKSB7XG4gICAgc3VwZXIoYmFua0FjY291bnQpO1xuXG4gICAgaWYgKGJhbmtBY2NvdW50LmlzTG9hbigpKSB7XG4gICAgICAvLyBBdHRhY2ggYmFuayBhY2NvdW50IHRvIGxvYW4gZm9yIExvYW5Gb3JtJ3MgbG9naWNcbiAgICAgIC8vIEBUT0RPIEFsZXgvVmlrOiB3ZSBzaG91bGQgdXNlIHNlcGFyYXRlZCBBUEkgZm9yIGJhbmsgYWNjb3VudHMgYW5kIGxvYW5zXG4gICAgICBjb25zdCBsb2FuOiBMb2FuID0gcGxhaW5Ub0NsYXNzKExvYW4sIE9iamVjdC5hc3NpZ24oYmFua0FjY291bnQubG9hbiwgeyBiYW5rQWNjb3VudDogeyBhY2NvdW50SWQ6IGJhbmtBY2NvdW50LmFjY291bnRJZCB9IH0pKTtcblxuICAgICAgdGhpcy5hZGRDb250cm9sKCdsb2FuJywgbmV3IExvYW5Gb3JtKGxvYW4pKTtcbiAgICB9XG5cbiAgICAvLyBkb24ndCBwcmVzZWxlY3QgdGFuayB0eXBlIGJ5IGRlZmF1bHRcbiAgICB0aGlzLmdldCgndGFua1R5cGUnKS5zZXRWYWx1ZShudWxsKTtcblxuICAgIC8vIGJhc2lxIGFjY291bnQgaW1wb3J0IGZvcm0gc2hvdWxkIGJlIGRpc2FibGVkICh1bmNoZWNrZWQpIGJ5IGRlZmF1bHRcbiAgICB0aGlzLmRpc2FibGUoKTtcbiAgfVxufVxuIl19
@@ -6,8 +6,9 @@ import { BankAccountBalance } from '../../db/Models';
6
6
  import { FinancialYear } from '../financial-year';
7
7
  import { BankAccountProperty } from './bank-account-property';
8
8
  import { BankConnection } from './bank-connection';
9
- import { Transform, Type } from 'class-transformer';
9
+ import { Type } from 'class-transformer';
10
10
  import { SoleBusinessAllocation } from '../sole';
11
+ import { TYPE_LOAN } from './type-loan.const';
11
12
  export class BankAccount extends BankAccountBase {
12
13
  get bank() {
13
14
  return this.bankConnection.bank;
@@ -51,7 +52,7 @@ export class BankAccount extends BankAccountBase {
51
52
  * check if bank account type is Loan
52
53
  */
53
54
  isLoan() {
54
- return this.type === BankAccountTypeEnum.LOAN;
55
+ return TYPE_LOAN.includes(this.type);
55
56
  }
56
57
  /**
57
58
  * check if bank account type is Credit card
@@ -162,7 +163,4 @@ __decorate([
162
163
  __decorate([
163
164
  Type(() => BankConnection)
164
165
  ], BankAccount.prototype, "bankConnection", void 0);
165
- __decorate([
166
- Transform(({ value }) => value === 4 ? BankAccountTypeEnum.LOAN : value)
167
- ], BankAccount.prototype, "type", void 0);
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9iYW5rL2JhbmstYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFdBQVcsSUFBSSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRS9CLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHakQsTUFBTSxPQUFPLFdBQVksU0FBUSxlQUFlO0lBc0I5QyxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLG9CQUFv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SSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDO3dEQUNVO0FBRzdDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDOzZDQUNBO0FBSS9CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQzttREFDSTtBQUkvQjtJQURDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO3lDQUMvQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhbmtBY2NvdW50IGFzIEJhbmtBY2NvdW50QmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9iYW5rL2JhbmstYWNjb3VudCc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudFN0YXR1c0VudW0sIEJhbmtBY2NvdW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcyc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vbG9hbic7XG5pbXBvcnQgeyBUYW5rVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90YW5rLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudEJhbGFuY2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7IEJhbmtBY2NvdW50UHJvcGVydHkgfSBmcm9tICcuL2JhbmstYWNjb3VudC1wcm9wZXJ0eSc7XG5pbXBvcnQgeyBCYW5rQ29ubmVjdGlvbiB9IGZyb20gJy4vYmFuay1jb25uZWN0aW9uJztcbmltcG9ydCB7IFRyYW5zZm9ybSwgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFNvbGVCdXNpbmVzc0FsbG9jYXRpb24gfSBmcm9tICcuLi9zb2xlJztcbmltcG9ydCB7IEJhbmsgfSBmcm9tICcuL2JhbmsnO1xuXG5leHBvcnQgY2xhc3MgQmFua0FjY291bnQgZXh0ZW5kcyBCYW5rQWNjb3VudEJhc2Uge1xuICAvLyBsaXN0IG9mIHByb3BlcnRpZXMgcmVsYXRlZCB3aXRoIHRoaXMgYmFuayBhY2NvdW50XG4gIEBUeXBlKCgpID0+IEJhbmtBY2NvdW50UHJvcGVydHkpXG4gIGJhbmtBY2NvdW50UHJvcGVydGllczogQmFua0FjY291bnRQcm9wZXJ0eVtdO1xuXG4gIEBUeXBlKCgpID0+IFNvbGVCdXNpbmVzc0FsbG9jYXRpb24pXG4gIGJ1c2luZXNzQWxsb2NhdGlvbnM6IFNvbGVCdXNpbmVzc0FsbG9jYXRpb25bXVxuXG4gIEBUeXBlKCgpID0+IEJhbmtBY2NvdW50QmFsYW5jZSlcbiAgYmFsYW5jZXM6IEJhbmtBY2NvdW50QmFsYW5jZVtdO1xuXG4gIC8vIGJhbmsgYWNjb3VudCdzIGxvYW5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgbG9hbjogTG9hbjtcblxuICBAVHlwZSgoKSA9PiBCYW5rQ29ubmVjdGlvbilcbiAgYmFua0Nvbm5lY3Rpb246IEJhbmtDb25uZWN0aW9uO1xuXG4gIC8vIEBUT0RPIEFsZXg6IHRlbXAgaGFjazogcmVtb3ZlIHdoZW4gVFQtMjEwNyByZWFkeS4gQmFja2VuZCBzaG91ZCByZXR1cm4gTW9ydGdhZ2UgdHlwZSBhcyBMb2FuIHR5cGVcbiAgQFRyYW5zZm9ybSgoeyB2YWx1ZSB9KSA9PiB2YWx1ZSA9PT0gNCA/IEJhbmtBY2NvdW50VHlwZUVudW0uTE9BTiA6IHZhbHVlKVxuICB0eXBlOiBCYW5rQWNjb3VudFR5cGVFbnVtO1xuXG4gIGdldCBiYW5rKCk6IEJhbmsge1xuICAgIHJldHVybiB0aGlzLmJhbmtDb25uZWN0aW9uLmJhbms7XG4gIH1cblxuICBnZXQgYnNiKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYWNjb3VudE51bWJlci5zbGljZSgwLCA2KTtcbiAgfVxuXG4gIGdldCBudW1iZXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hY2NvdW50TnVtYmVyLnRyaW0oKS5zbGljZSg2KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbGFzdCBkaWdpdHMgb2YgYWNjb3VudCBudW1iZXJcbiAgICovXG4gIGdldCBwYXJ0aWFsQWNjb3VudE51bWJlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiBgeHh4eCR7dGhpcy5hY2NvdW50TnVtYmVyLnNsaWNlKC00KX1gO1xuICB9XG5cbiAgZ2V0IGJhbGFuY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gRmluYW5jaWFsWWVhci5pc0N1cnJlbnQoKSA/IHRoaXMuY3VycmVudEJhbGFuY2UgOiB0aGlzLmdldE9wZW5pbmdCYWxhbmNlKEZpbmFuY2lhbFllYXIueWVhciArIDEpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjdXJyZW50IG9wZW5pbmcgYmFsYW5jZSBhbW91bnRcbiAgICovXG4gIGdldE9wZW5pbmdCYWxhbmNlKHllYXI6IG51bWJlciA9IEZpbmFuY2lhbFllYXIueWVhcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QmFsYW5jZUJ5WWVhcih5ZWFyKT8ub3BlbmluZ0JhbGFuY2UgfHwgMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYmFuayBhY2NvdW50IGJhbGFuY2UgZm9yIGN1cnJlbnQgZmluYW5jaWFsIHllYXJcbiAgICovXG4gIGdldEJhbGFuY2VCeVllYXIoeWVhcjogbnVtYmVyKTogQmFua0FjY291bnRCYWxhbmNlIHtcbiAgICByZXR1cm4gdGhpcy5iYWxhbmNlcy5maW5kKChiYWxhbmNlOiBCYW5rQWNjb3VudEJhbGFuY2UpOiBib29sZWFuID0+IGJhbGFuY2UuZmluYW5jaWFsWWVhciA9PT0geWVhcik7XG4gIH1cblxuICAvKipcbiAgICogY2hlY2sgaWYgYmFuayBhY2NvdW50IHR5cGUgaXMgb25lIG9mIHNhdmluZ3MgYWNjb3VudHNcbiAgICovXG4gIGlzU2F2aW5nc0FjY291bnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gQmFua0FjY291bnRUeXBlRW51bS5JTlZFU1RNRU5UIHx8XG4gICAgICB0aGlzLnR5cGUgPT09IEJhbmtBY2NvdW50VHlwZUVudW0uVEVSTV9ERVBPU0lUIHx8XG4gICAgICB0aGlzLnR5cGUgPT09IEJhbmtBY2NvdW50VHlwZUVudW0uU0FWSU5HUztcbiAgfVxuXG4gIC8qKlxuICAgKiBjaGVjayBpZiBiYW5rIGFjY291bnQgdHlwZSBpcyBMb2FuXG4gICAqL1xuICBpc0xvYW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gQmFua0FjY291bnRUeXBlRW51bS5MT0FOO1xuICB9XG5cbiAgLyoqXG4gICAqIGNoZWNrIGlmIGJhbmsgYWNjb3VudCB0eXBlIGlzIENyZWRpdCBjYXJkXG4gICAqL1xuICBpc0NyZWRpdENhcmQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gQmFua0FjY291bnRUeXBlRW51bS5DUkVESVRfQ0FSRDtcbiAgfVxuXG4gIC8qKlxuICAgKiBjaGVjayBpZiBiYW5rIGFjY291bnQgcmVsYXRlZCB0byB3b3JrIHRhbmtcbiAgICovXG4gIGlzV29ya1RhbmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmlzUHJvcGVydHlUYW5rKCkgJiYgIXRoaXMuaXNTb2xlVGFuaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIGNoZWNrIGlmIGJhbmsgYWNjb3VudCByZWxhdGVkIHRvIHdvcmsgdGFua1xuICAgKi9cbiAgaXNQcm9wZXJ0eVRhbmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5iYW5rQWNjb3VudFByb3BlcnRpZXMubGVuZ3RoO1xuICB9XG5cbiAgLyoqXG4gICAqIGNoZWNrIGlmIGJhbmsgYWNjb3VudCByZWxhdGVkIHRvIHNvbGUgdGFua1xuICAgKi9cbiAgaXNTb2xlVGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmJ1c2luZXNzQWxsb2NhdGlvbnMubGVuZ3RoO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBCYW5rIGFjY291bnQgcHJvcGVydHkgYnkgaWRcbiAgICogQHBhcmFtIGlkIElkIG9mIHByb3BlcnR5XG4gICAqL1xuICBnZXRQcm9wZXJ0eUJ5SWQoaWQ6IG51bWJlcik6IEJhbmtBY2NvdW50UHJvcGVydHkge1xuICAgIHJldHVybiB0aGlzLmJhbmtBY2NvdW50UHJvcGVydGllcy5maW5kKChiYW5rQWNjb3VudFByb3BlcnR5OiBCYW5rQWNjb3VudFByb3BlcnR5KTogYm9vbGVhbiA9PiBiYW5rQWNjb3VudFByb3BlcnR5LnByb3BlcnR5LmlkID09PSBpZCk7XG4gIH1cblxuICAvKipcbiAgICogY2hlY2sgaWYgYmFuayBhY2NvdW50IGlzIHJlbGF0ZWQgd2l0aCBwYXNzZWQgcHJvcGVydHkgYnkgaWRcbiAgICogQHBhcmFtIHByb3BlcnR5SWQgUHJvcGVydHkgaWQgZm9yIGNoZWNraW5nXG4gICAqL1xuICBoYXNQcm9wZXJ0eShwcm9wZXJ0eUlkOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmdldFByb3BlcnR5QnlJZChwcm9wZXJ0eUlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZGVjaW1hbCBwZXJjZW50YWdlIGZvciBwcm9wZXJ0eVxuICAgKiBAcGFyYW0gcHJvcGVydHlJZCBJZCBvZiBwcm9wZXJ0eVxuICAgKi9cbiAgZ2V0UHJvcGVydHlQZXJjZW50YWdlKHByb3BlcnR5SWQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmhhc1Byb3BlcnR5KHByb3BlcnR5SWQpKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5nZXRQcm9wZXJ0eUJ5SWQocHJvcGVydHlJZCkucGVyY2VudCAvIDEwMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYmFsYW5jZSBhbW91bnQgZm9yIHByb3BlcnR5IGJ5IGlkXG4gICAqIEBwYXJhbSBwcm9wZXJ0eUlkIElkIG9mIHByb3BlcnR5XG4gICAqL1xuICBnZXRQcm9wZXJ0eUJhbGFuY2VBbW91bnQocHJvcGVydHlJZDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50QmFsYW5jZSAqIHRoaXMuZ2V0UHJvcGVydHlQZXJjZW50YWdlKHByb3BlcnR5SWQpO1xuICB9XG5cbiAgZ2V0TW9udGhseVJlcGF5bWVudEFtb3VudChwcm9wZXJ0eUlkOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmxvYW4gPyB0aGlzLmxvYW4ubW9udGhseVJlcGF5bWVudEFtb3VudCAqIHRoaXMuZ2V0UHJvcGVydHlQZXJjZW50YWdlKHByb3BlcnR5SWQpOiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGJhbmsgYWNjb3VudCBpcyBhY3RpdmUgZm9yIGN1cnJlbnQgZmluYW5jaWFsIHllYXIgKGhhcyAnYWN0aXZlJyBzdGF0dXMgb3IgaGFzbid0IGJlZW4gcGFpZCBvdXQvcmVmaW5hbmNlZClcbiAgICovXG4gIGlzQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNvbW1lbmNlbWVudERhdGUgPSB0aGlzLmxvYW4/LmNvbW1lbmNlbWVudERhdGU7XG4gICAgY29uc3QgZW5kRGF0ZSA9IG5ldyBGaW5hbmNpYWxZZWFyKCkuZW5kRGF0ZTtcblxuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gQmFua0FjY291bnRTdGF0dXNFbnVtLkFDVElWRSAmJiAoIWNvbW1lbmNlbWVudERhdGUgfHwgY29tbWVuY2VtZW50RGF0ZSA8PSBlbmREYXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBmaXJzdCBpbXBvcnQgKHRyYW5zYWN0aW9ucykgb2YgYmFzaXEgYWNjb3VudHNcbiAgICovXG4gIGlzRmlyc3RJbXBvcnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmxhc3RUcmFuc2FjdGlvbkRhdGUgJiYgIXRoaXMuaXNNYW51YWwoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBwYXNzZWQgdXNlciBpZCBpcyBvd25lciBvZiBiYW5rIGFjY291bnRcbiAgICovXG4gIGlzT3duZXIodXNlcklkOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5iYW5rQ29ubmVjdGlvbi51c2VyLmlkID09PSB1c2VySWQ7XG4gIH1cblxuICAvKipcbiAgICogTG9hbiBpcyBwYWlkIGlmIGl0IGhhcyBubyB1bmFsbG9jYXRlZCB0cmFuc2FjdGlvbnMgYW5kIHRoZSBiYW5rIGJhbGFuY2UgaXMgJDAuXG4gICAqL1xuICBpc0xvYW5QYWlkKHRheFRhbmtCYWxhbmNlOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBjb25zdCBzaG91bGRQYXlvdXRMb2FuQWNjb3VudDogYm9vbGVhbiA9IHRoaXMuaXNBY3RpdmUoKSAmJiB0aGlzLmlzTG9hbigpICYmIHRheFRhbmtCYWxhbmNlID09PSAwO1xuXG4gICAgLy8gd2UgZG9uJ3QgY2hlY2sgY3VycmVudCBiYWxhbmNlIGZvciBiYXNpcSBhY2NvdW50cywgYmVjYXVzZSBiYXNpcSBkb2Vzbid0IHByb3ZpZGUgdXMgbGFzdCB0cmFuc2FjdGlvbnMgKGNhbid0IGRvIGZvciBjbG9zZWQgYWNjb3VudHMpLFxuICAgIC8vIHRoYXQncyB3aHkgYmFsYW5jZSB3b24ndCBiZSAwICh1cGRhdGVkIGJ5IGJhc2lxKVxuICAgIGlmIChzaG91bGRQYXlvdXRMb2FuQWNjb3VudCAmJiB0aGlzLmlzTWFudWFsKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRCYWxhbmNlID09PSAwO1xuICAgIH1cblxuICAgIHJldHVybiBzaG91bGRQYXlvdXRMb2FuQWNjb3VudDtcbiAgfVxuXG4gIGlzTWFudWFsKCkge1xuICAgIHJldHVybiAhdGhpcy5hY2NvdW50SWQ7XG4gIH1cbn1cbiJdfQ==
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9iYW5rL2JhbmstYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFdBQVcsSUFBSSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRS9CLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFhLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFOUMsTUFBTSxPQUFPLFdBQVksU0FBUSxlQUFlO0lBa0I5QyxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1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QUFDLG1CQUFtQixDQUFDOzBEQUNhO0FBRzdDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDO3dEQUNVO0FBRzdDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDOzZDQUNBO0FBSS9CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQzttREFDSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhbmtBY2NvdW50IGFzIEJhbmtBY2NvdW50QmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9iYW5rL2JhbmstYWNjb3VudCc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudFN0YXR1c0VudW0sIEJhbmtBY2NvdW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcyc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vbG9hbic7XG5pbXBvcnQgeyBUYW5rVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90YW5rLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudEJhbGFuY2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7IEJhbmtBY2NvdW50UHJvcGVydHkgfSBmcm9tICcuL2JhbmstYWNjb3VudC1wcm9wZXJ0eSc7XG5pbXBvcnQgeyBCYW5rQ29ubmVjdGlvbiB9IGZyb20gJy4vYmFuay1jb25uZWN0aW9uJztcbmltcG9ydCB7IFRyYW5zZm9ybSwgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFNvbGVCdXNpbmVzc0FsbG9jYXRpb24gfSBmcm9tICcuLi9zb2xlJztcbmltcG9ydCB7IEJhbmsgfSBmcm9tICcuL2JhbmsnO1xuaW1wb3J0IHsgVFlQRV9MT0FOIH0gZnJvbSAnLi90eXBlLWxvYW4uY29uc3QnO1xuXG5leHBvcnQgY2xhc3MgQmFua0FjY291bnQgZXh0ZW5kcyBCYW5rQWNjb3VudEJhc2Uge1xuICAvLyBsaXN0IG9mIHByb3BlcnRpZXMgcmVsYXRlZCB3aXRoIHRoaXMgYmFuayBhY2NvdW50XG4gIEBUeXBlKCgpID0+IEJhbmtBY2NvdW50UHJvcGVydHkpXG4gIGJhbmtBY2NvdW50UHJvcGVydGllczogQmFua0FjY291bnRQcm9wZXJ0eVtdO1xuXG4gIEBUeXBlKCgpID0+IFNvbGVCdXNpbmVzc0FsbG9jYXRpb24pXG4gIGJ1c2luZXNzQWxsb2NhdGlvbnM6IFNvbGVCdXNpbmVzc0FsbG9jYXRpb25bXVxuXG4gIEBUeXBlKCgpID0+IEJhbmtBY2NvdW50QmFsYW5jZSlcbiAgYmFsYW5jZXM6IEJhbmtBY2NvdW50QmFsYW5jZVtdO1xuXG4gIC8vIGJhbmsgYWNjb3VudCdzIGxvYW5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgbG9hbjogTG9hbjtcblxuICBAVHlwZSgoKSA9PiBCYW5rQ29ubmVjdGlvbilcbiAgYmFua0Nvbm5lY3Rpb246IEJhbmtDb25uZWN0aW9uO1xuXG4gIGdldCBiYW5rKCk6IEJhbmsge1xuICAgIHJldHVybiB0aGlzLmJhbmtDb25uZWN0aW9uLmJhbms7XG4gIH1cblxuICBnZXQgYnNiKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYWNjb3VudE51bWJlci5zbGljZSgwLCA2KTtcbiAgfVxuXG4gIGdldCBudW1iZXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hY2NvdW50TnVtYmVyLnRyaW0oKS5zbGljZSg2KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbGFzdCBkaWdpdHMgb2YgYWNjb3VudCBudW1iZXJcbiAgICovXG4gIGdldCBwYXJ0aWFsQWNjb3VudE51bWJlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiBgeHh4eCR7dGhpcy5hY2NvdW50TnVtYmVyLnNsaWNlKC00KX1gO1xuICB9XG5cbiAgZ2V0IGJhbGFuY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gRmluYW5jaWFsWWVhci5pc0N1cnJlbnQoKSA/IHRoaXMuY3VycmVudEJhbGFuY2UgOiB0aGlzLmdldE9wZW5pbmdCYWxhbmNlKEZpbmFuY2lhbFllYXIueWVhciArIDEpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjdXJyZW50IG9wZW5pbmcgYmFsYW5jZSBhbW91bnRcbiAgICovXG4gIGdldE9wZW5pbmdCYWxhbmNlKHllYXI6IG51bWJlciA9IEZpbmFuY2lhbFllYXIueWVhcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QmFsYW5jZUJ5WWVhcih5ZWFyKT8ub3BlbmluZ0JhbGFuY2UgfHwgMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYmFuayBhY2NvdW50IGJhbGFuY2UgZm9yIGN1cnJlbnQgZmluYW5jaWFsIHllYXJcbiAgICovXG4gIGdldEJhbGFuY2VCeVllYXIoeWVhcjogbnVtYmVyKTogQmFua0FjY291bnRCYWxhbmNlIHtcbiAgICByZXR1cm4gdGhpcy5iYWxhbmNlcy5maW5kKChiYWxhbmNlOiBCYW5rQWNjb3VudEJhbGFuY2UpOiBib29sZWFuID0+IGJhbGFuY2UuZmluYW5jaWFsWWVhciA9PT0geWVhcik7XG4gIH1cblxuICAvKipcbiAgICogY2hlY2sgaWYgYmFuayBhY2NvdW50IHR5cGUgaXMgb25lIG9mIHNhdmluZ3MgYWNjb3VudHNcbiAgICovXG4gIGlzU2F2aW5nc0FjY291bnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gQmFua0FjY291bnRUeXBlRW51bS5JTlZFU1RNRU5UIHx8XG4gICAgICB0aGlzLnR5cGUgPT09IEJhbmtBY2NvdW50VHlwZUVudW0uVEVSTV9ERVBPU0lUIHx8XG4gICAgICB0aGlzLnR5cGUgPT09IEJhbmtBY2NvdW50VHlwZUVudW0uU0FWSU5HUztcbiAgfVxuXG4gIC8qKlxuICAgKiBjaGVjayBpZiBiYW5rIGFjY291bnQgdHlwZSBpcyBMb2FuXG4gICAqL1xuICBpc0xvYW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIFRZUEVfTE9BTi5pbmNsdWRlcyh0aGlzLnR5cGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIGNoZWNrIGlmIGJhbmsgYWNjb3VudCB0eXBlIGlzIENyZWRpdCBjYXJkXG4gICAqL1xuICBpc0NyZWRpdENhcmQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gQmFua0FjY291bnRUeXBlRW51bS5DUkVESVRfQ0FSRDtcbiAgfVxuXG4gIC8qKlxuICAgKiBjaGVjayBpZiBiYW5rIGFjY291bnQgcmVsYXRlZCB0byB3b3JrIHRhbmtcbiAgICovXG4gIGlzV29ya1RhbmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmlzUHJvcGVydHlUYW5rKCkgJiYgIXRoaXMuaXNTb2xlVGFuaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIGNoZWNrIGlmIGJhbmsgYWNjb3VudCByZWxhdGVkIHRvIHdvcmsgdGFua1xuICAgKi9cbiAgaXNQcm9wZXJ0eVRhbmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5iYW5rQWNjb3VudFByb3BlcnRpZXMubGVuZ3RoO1xuICB9XG5cbiAgLyoqXG4gICAqIGNoZWNrIGlmIGJhbmsgYWNjb3VudCByZWxhdGVkIHRvIHNvbGUgdGFua1xuICAgKi9cbiAgaXNTb2xlVGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmJ1c2luZXNzQWxsb2NhdGlvbnMubGVuZ3RoO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBCYW5rIGFjY291bnQgcHJvcGVydHkgYnkgaWRcbiAgICogQHBhcmFtIGlkIElkIG9mIHByb3BlcnR5XG4gICAqL1xuICBnZXRQcm9wZXJ0eUJ5SWQoaWQ6IG51bWJlcik6IEJhbmtBY2NvdW50UHJvcGVydHkge1xuICAgIHJldHVybiB0aGlzLmJhbmtBY2NvdW50UHJvcGVydGllcy5maW5kKChiYW5rQWNjb3VudFByb3BlcnR5OiBCYW5rQWNjb3VudFByb3BlcnR5KTogYm9vbGVhbiA9PiBiYW5rQWNjb3VudFByb3BlcnR5LnByb3BlcnR5LmlkID09PSBpZCk7XG4gIH1cblxuICAvKipcbiAgICogY2hlY2sgaWYgYmFuayBhY2NvdW50IGlzIHJlbGF0ZWQgd2l0aCBwYXNzZWQgcHJvcGVydHkgYnkgaWRcbiAgICogQHBhcmFtIHByb3BlcnR5SWQgUHJvcGVydHkgaWQgZm9yIGNoZWNraW5nXG4gICAqL1xuICBoYXNQcm9wZXJ0eShwcm9wZXJ0eUlkOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmdldFByb3BlcnR5QnlJZChwcm9wZXJ0eUlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZGVjaW1hbCBwZXJjZW50YWdlIGZvciBwcm9wZXJ0eVxuICAgKiBAcGFyYW0gcHJvcGVydHlJZCBJZCBvZiBwcm9wZXJ0eVxuICAgKi9cbiAgZ2V0UHJvcGVydHlQZXJjZW50YWdlKHByb3BlcnR5SWQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmhhc1Byb3BlcnR5KHByb3BlcnR5SWQpKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5nZXRQcm9wZXJ0eUJ5SWQocHJvcGVydHlJZCkucGVyY2VudCAvIDEwMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYmFsYW5jZSBhbW91bnQgZm9yIHByb3BlcnR5IGJ5IGlkXG4gICAqIEBwYXJhbSBwcm9wZXJ0eUlkIElkIG9mIHByb3BlcnR5XG4gICAqL1xuICBnZXRQcm9wZXJ0eUJhbGFuY2VBbW91bnQocHJvcGVydHlJZDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50QmFsYW5jZSAqIHRoaXMuZ2V0UHJvcGVydHlQZXJjZW50YWdlKHByb3BlcnR5SWQpO1xuICB9XG5cbiAgZ2V0TW9udGhseVJlcGF5bWVudEFtb3VudChwcm9wZXJ0eUlkOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmxvYW4gPyB0aGlzLmxvYW4ubW9udGhseVJlcGF5bWVudEFtb3VudCAqIHRoaXMuZ2V0UHJvcGVydHlQZXJjZW50YWdlKHByb3BlcnR5SWQpOiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGJhbmsgYWNjb3VudCBpcyBhY3RpdmUgZm9yIGN1cnJlbnQgZmluYW5jaWFsIHllYXIgKGhhcyAnYWN0aXZlJyBzdGF0dXMgb3IgaGFzbid0IGJlZW4gcGFpZCBvdXQvcmVmaW5hbmNlZClcbiAgICovXG4gIGlzQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNvbW1lbmNlbWVudERhdGUgPSB0aGlzLmxvYW4/LmNvbW1lbmNlbWVudERhdGU7XG4gICAgY29uc3QgZW5kRGF0ZSA9IG5ldyBGaW5hbmNpYWxZZWFyKCkuZW5kRGF0ZTtcblxuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gQmFua0FjY291bnRTdGF0dXNFbnVtLkFDVElWRSAmJiAoIWNvbW1lbmNlbWVudERhdGUgfHwgY29tbWVuY2VtZW50RGF0ZSA8PSBlbmREYXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBmaXJzdCBpbXBvcnQgKHRyYW5zYWN0aW9ucykgb2YgYmFzaXEgYWNjb3VudHNcbiAgICovXG4gIGlzRmlyc3RJbXBvcnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmxhc3RUcmFuc2FjdGlvbkRhdGUgJiYgIXRoaXMuaXNNYW51YWwoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBwYXNzZWQgdXNlciBpZCBpcyBvd25lciBvZiBiYW5rIGFjY291bnRcbiAgICovXG4gIGlzT3duZXIodXNlcklkOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5iYW5rQ29ubmVjdGlvbi51c2VyLmlkID09PSB1c2VySWQ7XG4gIH1cblxuICAvKipcbiAgICogTG9hbiBpcyBwYWlkIGlmIGl0IGhhcyBubyB1bmFsbG9jYXRlZCB0cmFuc2FjdGlvbnMgYW5kIHRoZSBiYW5rIGJhbGFuY2UgaXMgJDAuXG4gICAqL1xuICBpc0xvYW5QYWlkKHRheFRhbmtCYWxhbmNlOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBjb25zdCBzaG91bGRQYXlvdXRMb2FuQWNjb3VudDogYm9vbGVhbiA9IHRoaXMuaXNBY3RpdmUoKSAmJiB0aGlzLmlzTG9hbigpICYmIHRheFRhbmtCYWxhbmNlID09PSAwO1xuXG4gICAgLy8gd2UgZG9uJ3QgY2hlY2sgY3VycmVudCBiYWxhbmNlIGZvciBiYXNpcSBhY2NvdW50cywgYmVjYXVzZSBiYXNpcSBkb2Vzbid0IHByb3ZpZGUgdXMgbGFzdCB0cmFuc2FjdGlvbnMgKGNhbid0IGRvIGZvciBjbG9zZWQgYWNjb3VudHMpLFxuICAgIC8vIHRoYXQncyB3aHkgYmFsYW5jZSB3b24ndCBiZSAwICh1cGRhdGVkIGJ5IGJhc2lxKVxuICAgIGlmIChzaG91bGRQYXlvdXRMb2FuQWNjb3VudCAmJiB0aGlzLmlzTWFudWFsKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRCYWxhbmNlID09PSAwO1xuICAgIH1cblxuICAgIHJldHVybiBzaG91bGRQYXlvdXRMb2FuQWNjb3VudDtcbiAgfVxuXG4gIGlzTWFudWFsKCkge1xuICAgIHJldHVybiAhdGhpcy5hY2NvdW50SWQ7XG4gIH1cbn1cbiJdfQ==
@@ -4,11 +4,10 @@ export * from './bank';
4
4
  export * from './bank-account';
5
5
  export * from './bank-account-chart-data';
6
6
  export * from './bank-account-property';
7
- export * from './bank-account-types.const';
8
7
  export * from './bank-connection';
9
8
  export * from './bank-external-stats';
10
9
  export * from './bank-transaction';
11
10
  export * from './bank-transaction-chart-data';
12
11
  export * from './bank-transaction-summary-fields.enum';
13
12
  export * from './type-loan.const';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2JhbmsvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxTQUFTLENBQUM7QUFFeEIsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iYXNpcSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vYWxsb2NhdGlvbi1ncm91cCc7XG5leHBvcnQgKiBmcm9tICcuL2JhbmsnO1xuZXhwb3J0ICogZnJvbSAnLi9iYW5rLWFjY291bnQnO1xuZXhwb3J0ICogZnJvbSAnLi9iYW5rLWFjY291bnQtY2hhcnQtZGF0YSc7XG5leHBvcnQgKiBmcm9tICcuL2JhbmstYWNjb3VudC1wcm9wZXJ0eSc7XG5leHBvcnQgKiBmcm9tICcuL2JhbmstYWNjb3VudC10eXBlcy5jb25zdCc7XG5leHBvcnQgKiBmcm9tICcuL2JhbmstY29ubmVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2JhbmstZXh0ZXJuYWwtc3RhdHMnO1xuZXhwb3J0ICogZnJvbSAnLi9iYW5rLXRyYW5zYWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vYmFuay10cmFuc2FjdGlvbi1jaGFydC1kYXRhJztcbmV4cG9ydCAqIGZyb20gJy4vYmFuay10cmFuc2FjdGlvbi1zdW1tYXJ5LWZpZWxkcy5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZS1sb2FuLmNvbnN0JztcbiJdfQ==
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2JhbmsvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxTQUFTLENBQUM7QUFFeEIsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYmFzaXEnO1xuXG5leHBvcnQgKiBmcm9tICcuL2FsbG9jYXRpb24tZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi9iYW5rJztcbmV4cG9ydCAqIGZyb20gJy4vYmFuay1hY2NvdW50JztcbmV4cG9ydCAqIGZyb20gJy4vYmFuay1hY2NvdW50LWNoYXJ0LWRhdGEnO1xuZXhwb3J0ICogZnJvbSAnLi9iYW5rLWFjY291bnQtcHJvcGVydHknO1xuZXhwb3J0ICogZnJvbSAnLi9iYW5rLWNvbm5lY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9iYW5rLWV4dGVybmFsLXN0YXRzJztcbmV4cG9ydCAqIGZyb20gJy4vYmFuay10cmFuc2FjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2JhbmstdHJhbnNhY3Rpb24tY2hhcnQtZGF0YSc7XG5leHBvcnQgKiBmcm9tICcuL2JhbmstdHJhbnNhY3Rpb24tc3VtbWFyeS1maWVsZHMuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL3R5cGUtbG9hbi5jb25zdCc7XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import get from 'lodash/get';
2
2
  import hasIn from 'lodash/hasIn';
3
3
  /**
4
- * @TODO refactor with Map
4
+ * @TODO refactor with Map or Record
5
5
  * List of objects grouped by passed property
6
6
  */
7
7
  export class Dictionary {
@@ -47,4 +47,4 @@ export class Dictionary {
47
47
  return this.keys.length;
48
48
  }
49
49
  }
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGljdGlvbmFyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvZGljdGlvbmFyeS9kaWN0aW9uYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sR0FBRyxNQUFNLFlBQVksQ0FBQztBQUM3QixPQUFPLEtBQUssTUFBTSxjQUFjLENBQUM7QUFFakM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFHckIsWUFBWSxRQUFpQixFQUFFLEVBQUUsSUFBSSxHQUFHLElBQUk7UUFGNUMsVUFBSyxHQUE2QixFQUFFLENBQUM7UUFHbkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUFvQixFQUFFLEtBQVk7UUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7UUFFeEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsR0FBRyxDQUFDLEdBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNoRSxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQTZCO1FBQ2pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFNUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLFVBQVUsQ0FBQyxLQUFjLEVBQUUsSUFBWTtRQUM3Qyw0REFBNEQ7UUFDNUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3hDLE9BQU87U0FDUjtRQUVELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFXLEVBQVEsRUFBRTtZQUNsQyxJQUFJLEdBQUcsR0FBVyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBRWxDLDhFQUE4RTtZQUM5RSxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7Z0JBQ3JCLEdBQUcsR0FBRyxPQUFPLENBQUM7YUFDZjtZQUVELElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDMUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGdldCBmcm9tICdsb2Rhc2gvZ2V0JztcbmltcG9ydCBoYXNJbiBmcm9tICdsb2Rhc2gvaGFzSW4nO1xuXG4vKipcbiAqIEBUT0RPIHJlZmFjdG9yIHdpdGggTWFwXG4gKiBMaXN0IG9mIG9iamVjdHMgZ3JvdXBlZCBieSBwYXNzZWQgcHJvcGVydHlcbiAqL1xuZXhwb3J0IGNsYXNzIERpY3Rpb25hcnk8TW9kZWw+IHtcbiAgaXRlbXM6IHsgW2tleTogc3RyaW5nXTogTW9kZWwgfSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKGl0ZW1zOiBNb2RlbFtdID0gW10sIHBhdGggPSAnaWQnKSB7XG4gICAgaWYgKCFpdGVtcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmdyb3VwSXRlbXMoaXRlbXMsIHBhdGgpO1xuICB9XG5cbiAgYWRkKGtleTogc3RyaW5nIHwgbnVtYmVyLCB2YWx1ZTogTW9kZWwpOiBEaWN0aW9uYXJ5PE1vZGVsPiB7XG4gICAgdGhpcy5pdGVtc1trZXldID0gdmFsdWU7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGdldChrZXk6IHN0cmluZyB8IG51bWJlcik6IE1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtc1trZXldICE9PSB1bmRlZmluZWQgPyB0aGlzLml0ZW1zW2tleV0gOiBudWxsO1xuICB9XG5cbiAgbWVyZ2UoZGljdGlvbmFyeTogRGljdGlvbmFyeTxNb2RlbD4pOiB0aGlzIHtcbiAgICBPYmplY3QuYXNzaWduKHRoaXMuaXRlbXMsIGRpY3Rpb25hcnkuaXRlbXMpO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICB0b0FycmF5KCk6IE1vZGVsW10ge1xuICAgIHJldHVybiBPYmplY3QudmFsdWVzKHRoaXMuaXRlbXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBncm91cEl0ZW1zKGl0ZW1zOiBNb2RlbFtdLCBwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAvLyBEbyBub3RoaW5nIGlmIHByb3ZpZGVkIHBhdGggd2FzIG5vdCBmb3VuZCBpbiB0aGUgMXN0IGl0ZW1cbiAgICBpZiAoIWhhc0luKGl0ZW1zWzBdLCBwYXRoLnNwbGl0KCcuJylbMF0pKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaXRlbXMuZm9yRWFjaCgoaXRlbTogTW9kZWwpOiB2b2lkID0+IHtcbiAgICAgIGxldCBrZXk6IHN0cmluZyA9IGdldChpdGVtLCBwYXRoKTtcblxuICAgICAgLy8gaWYgb2JqZWN0IGRvZXMgbm90IGhhdmUgcHJvcGVydHkgZm9yIGdyb3VwaW5nIGl0IHdpbGwgYmUgZ3JvdXBlZCBhcyAnb3RoZXInXG4gICAgICBpZiAoa2V5ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAga2V5ID0gJ290aGVyJztcbiAgICAgIH1cblxuICAgICAgdGhpcy5pdGVtc1trZXldID0gaXRlbTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldCBrZXlzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5pdGVtcyk7XG4gIH1cblxuICBnZXQgbGVuZ3RoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMua2V5cy5sZW5ndGg7XG4gIH1cbn1cbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGljdGlvbmFyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvZGljdGlvbmFyeS9kaWN0aW9uYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sR0FBRyxNQUFNLFlBQVksQ0FBQztBQUM3QixPQUFPLEtBQUssTUFBTSxjQUFjLENBQUM7QUFFakM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFHckIsWUFBWSxRQUFpQixFQUFFLEVBQUUsSUFBSSxHQUFHLElBQUk7UUFGNUMsVUFBSyxHQUE2QixFQUFFLENBQUM7UUFHbkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUFvQixFQUFFLEtBQVk7UUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7UUFFeEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsR0FBRyxDQUFDLEdBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNoRSxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQTZCO1FBQ2pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFNUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLFVBQVUsQ0FBQyxLQUFjLEVBQUUsSUFBWTtRQUM3Qyw0REFBNEQ7UUFDNUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3hDLE9BQU87U0FDUjtRQUVELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFXLEVBQVEsRUFBRTtZQUNsQyxJQUFJLEdBQUcsR0FBVyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBRWxDLDhFQUE4RTtZQUM5RSxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7Z0JBQ3JCLEdBQUcsR0FBRyxPQUFPLENBQUM7YUFDZjtZQUVELElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDMUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGdldCBmcm9tICdsb2Rhc2gvZ2V0JztcbmltcG9ydCBoYXNJbiBmcm9tICdsb2Rhc2gvaGFzSW4nO1xuXG4vKipcbiAqIEBUT0RPIHJlZmFjdG9yIHdpdGggTWFwIG9yIFJlY29yZFxuICogTGlzdCBvZiBvYmplY3RzIGdyb3VwZWQgYnkgcGFzc2VkIHByb3BlcnR5XG4gKi9cbmV4cG9ydCBjbGFzcyBEaWN0aW9uYXJ5PE1vZGVsPiB7XG4gIGl0ZW1zOiB7IFtrZXk6IHN0cmluZ106IE1vZGVsIH0gPSB7fTtcblxuICBjb25zdHJ1Y3RvcihpdGVtczogTW9kZWxbXSA9IFtdLCBwYXRoID0gJ2lkJykge1xuICAgIGlmICghaXRlbXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5ncm91cEl0ZW1zKGl0ZW1zLCBwYXRoKTtcbiAgfVxuXG4gIGFkZChrZXk6IHN0cmluZyB8IG51bWJlciwgdmFsdWU6IE1vZGVsKTogRGljdGlvbmFyeTxNb2RlbD4ge1xuICAgIHRoaXMuaXRlbXNba2V5XSA9IHZhbHVlO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBnZXQoa2V5OiBzdHJpbmcgfCBudW1iZXIpOiBNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXNba2V5XSAhPT0gdW5kZWZpbmVkID8gdGhpcy5pdGVtc1trZXldIDogbnVsbDtcbiAgfVxuXG4gIG1lcmdlKGRpY3Rpb25hcnk6IERpY3Rpb25hcnk8TW9kZWw+KTogdGhpcyB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLml0ZW1zLCBkaWN0aW9uYXJ5Lml0ZW1zKTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgdG9BcnJheSgpOiBNb2RlbFtdIHtcbiAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyh0aGlzLml0ZW1zKTtcbiAgfVxuXG4gIHByaXZhdGUgZ3JvdXBJdGVtcyhpdGVtczogTW9kZWxbXSwgcGF0aDogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gRG8gbm90aGluZyBpZiBwcm92aWRlZCBwYXRoIHdhcyBub3QgZm91bmQgaW4gdGhlIDFzdCBpdGVtXG4gICAgaWYgKCFoYXNJbihpdGVtc1swXSwgcGF0aC5zcGxpdCgnLicpWzBdKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGl0ZW1zLmZvckVhY2goKGl0ZW06IE1vZGVsKTogdm9pZCA9PiB7XG4gICAgICBsZXQga2V5OiBzdHJpbmcgPSBnZXQoaXRlbSwgcGF0aCk7XG5cbiAgICAgIC8vIGlmIG9iamVjdCBkb2VzIG5vdCBoYXZlIHByb3BlcnR5IGZvciBncm91cGluZyBpdCB3aWxsIGJlIGdyb3VwZWQgYXMgJ290aGVyJ1xuICAgICAgaWYgKGtleSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGtleSA9ICdvdGhlcic7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaXRlbXNba2V5XSA9IGl0ZW07XG4gICAgfSk7XG4gIH1cblxuICBnZXQga2V5cygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuaXRlbXMpO1xuICB9XG5cbiAgZ2V0IGxlbmd0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmtleXMubGVuZ3RoO1xuICB9XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
- import { TAX_RETURN_CATEGORIES } from '../../../../../collections';
2
- import { BusinessChartAccountsEnum, ChartAccountsCategoryEnum, ChartAccountsHeadingListEnum, TaxReturnCategoryListEnum, TaxReturnItemEnum, } from '../../../../../db/Enums';
1
+ import { TAX_RETURN_CATEGORIES, TransactionCollection } from '../../../../../collections';
2
+ import { BusinessChartAccountsEnum, ChartAccountsCategoryEnum, ChartAccountsHeadingListEnum, TaxReturnItemEnum, } from '../../../../../db/Enums';
3
3
  import { TaxSummarySectionEnum } from '../../../../../db/Enums/tax-summary-section.enum';
4
4
  /**
5
5
  * Sole business information related to expense transactions (losses)
@@ -59,11 +59,12 @@ export class MyTaxBusinessLosses {
59
59
  this.deductionsForGeneralSmallBusinessPoolAmount = depreciations
60
60
  .getSBPDepreciations()
61
61
  .sumBy('claimAmount');
62
- this.currentYearNetNonPrimaryIncomeOrLossesAmount = taxSummary.sole.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.BUSINESS_INCOME_OR_LOSS], TaxSummarySectionEnum.SOLE_TANK);
62
+ this.currentYearNetNonPrimaryIncomeOrLossesAmount = new TransactionCollection(transactions.toArray(), depreciations.toArray())
63
+ .getBusinessClaimAmount();
63
64
  this.priorYearsNonPrimaryLossesAmount = businessLosses.sumBy('openBalance');
64
65
  this.netNonPrimaryIncomeOrLossesAmount = this.currentYearNetNonPrimaryIncomeOrLossesAmount -
65
66
  this.priorYearsNonPrimaryLossesAmount;
66
67
  this.deferredLossesAmount = taxSummary.sole.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.sole.lossCurrent, TaxSummarySectionEnum.SOLE_TANK);
67
68
  }
68
69
  }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktdGF4LWJ1c2luZXNzLWxvc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcmVwb3J0L215LXRheC9teS10YXgtYnVzaW5lc3MtaW5jb21lLW9yLWxvc3Nlcy9teS10YXgtYnVzaW5lc3MtbG9zc2VzL215LXRheC1idXNpbmVzcy1sb3NzZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHFCQUFxQixFQUV0QixNQUFNLDRCQUE0QixDQUFDO0FBQ3BDLE9BQU8sRUFDTCx5QkFBeUIsRUFDekIseUJBQXlCLEVBQ3pCLDRCQUE0QixFQUM1Qix5QkFBeUIsRUFDekIsaUJBQWlCLEdBQ2xCLE1BQU0seUJBQXlCLENBQUM7QUFHakMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFekY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLG1CQUFtQjtJQXNCOUIsWUFDRSxZQUFtQyxFQUNuQyxhQUFxQyxFQUNyQyxjQUEwQyxFQUMxQyxXQUE2QixFQUM3QixVQUFzQjtRQUV0QixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsNEJBQTRCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsc0JBQXNCLEVBQUU7YUFDL0UsUUFBUSxDQUFDLGtCQUFrQixFQUFFLHlCQUF5QixDQUFDLHlCQUF5QixDQUFDO2FBQ2pGLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyw4QkFBOEIsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsRUFBRTthQUNqRixRQUFRLENBQUMsa0JBQWtCLEVBQUUseUJBQXlCLENBQUMsMEJBQTBCLENBQUM7YUFDbEYsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7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QkFBMEIsRUFBRSw0QkFBNEIsQ0FBQyxxQkFBcUIsQ0FBQzthQUN4RixLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLGFBQWE7YUFDbEQsMEJBQTBCLEVBQUU7YUFDNUIsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQywyQ0FBMkMsR0FBRyxhQUFhO2FBQzdELG1CQUFtQixFQUFFO2FBQ3JCLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsNENBQTRDLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMseUJBQXlCLENBQ2pHLENBQUMseUJBQXlCLENBQUMsdUJBQXVCLENBQUMsRUFDbkQscUJBQXFCLENBQUMsU0FBUyxDQUNoQyxDQUFBO1FBQ0QsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLGlDQUFpQyxHQUFHLElBQUksQ0FBQyw0Q0FBNEM7WUFDeEYsSUFBSSxDQUFDLGdDQUFnQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsQ0FDekUscUJBQXFCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFDdEMscUJBQXFCLENBQUMsU0FBUyxDQUNoQyxDQUFBO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbixcbiAgU29sZUJ1c2luZXNzTG9zc0NvbGxlY3Rpb24sXG4gIFRBWF9SRVRVUk5fQ0FURUdPUklFUyxcbiAgVHJhbnNhY3Rpb25Db2xsZWN0aW9uXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7XG4gIEJ1c2luZXNzQ2hhcnRBY2NvdW50c0VudW0sXG4gIENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0sXG4gIENoYXJ0QWNjb3VudHNIZWFkaW5nTGlzdEVudW0sXG4gIFRheFJldHVybkNhdGVnb3J5TGlzdEVudW0sXG4gIFRheFJldHVybkl0ZW1FbnVtLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kYi9FbnVtcyc7XG5pbXBvcnQgeyBTb2xlQnVzaW5lc3NMb3NzIH0gZnJvbSAnLi4vLi4vLi4vLi4vc29sZSc7XG5pbXBvcnQgeyBUYXhTdW1tYXJ5IH0gZnJvbSAnLi4vLi4vLi4vLi4vdGF4LXN1bW1hcnkvdGF4LXN1bW1hcnknO1xuaW1wb3J0IHsgVGF4U3VtbWFyeVNlY3Rpb25FbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZGIvRW51bXMvdGF4LXN1bW1hcnktc2VjdGlvbi5lbnVtJztcblxuLyoqXG4gKiBTb2xlIGJ1c2luZXNzIGluZm9ybWF0aW9uIHJlbGF0ZWQgdG8gZXhwZW5zZSB0cmFuc2FjdGlvbnMgKGxvc3NlcylcbiAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvNDY0NDExMDQ2Ni9UYXgrUmV0dXJuK015VGF4Ky0rT25saW5lK0Zvcm0gKHNlY3Rpb24gXCJCdXNpbmVzcyBpbmNvbWUgb3IgbG9zc2VzXCIpXG4gKi9cbmV4cG9ydCBjbGFzcyBNeVRheEJ1c2luZXNzTG9zc2VzIHtcbiAgY3VycmVudExvc3M6IFNvbGVCdXNpbmVzc0xvc3M7XG4gIHB1cmNoYXNlc0FuZE90aGVyQ29zdHNBbW91bnQ6IG51bWJlcjtcbiAgY29udHJhY3RvcnNBbmRDb21taXNzaW9uQW1vdW50OiBudW1iZXI7XG4gIHN1cGVyYW5udWF0aW9uQW1vdW50OiBudW1iZXI7XG4gIGJhZERlYnRBbW91bnQ6IG51bWJlcjtcbiAgbGVhc2VFeHBlbnNlc0NvbW1lcmNpYWxBbW91bnQ6IG51bWJlcjtcbiAgcmVudEV4cGVuc2VzQ29tbWVyY2lhbFByZW1pc2VzQW1vdW50OiBudW1iZXI7XG4gIGludGVyZXN0RXhwZW5zZXNBdXN0cmFsaWFBbW91bnQ6IG51bWJlcjtcbiAgaW50ZXJlc3RFeHBlbnNlc092ZXJzZWFzQW1vdW50OiBudW1iZXI7XG4gIGttc1RyYXZlbGxlZEV4cGVuc2VzQW1vdW50OiBudW1iZXI7XG4gIGxvZ2Jvb2tFeHBlbnNlc0Ftb3VudDogbnVtYmVyO1xuICBvdGhlckV4cGVuc2VzQW1vdW50OiBudW1iZXI7XG4gIHRvdGFsTm9uUHJpbWFyeVByb2R1Y3Rpb25FeHBlbnNlc0Ftb3VudDogbnVtYmVyO1xuICBkZXByZWNpYXRpb25FeHBlbnNlc0Ftb3VudDogbnVtYmVyO1xuICBkZWR1Y3Rpb25zRm9yQ2VydGFpbkFzc2V0c0Ftb3VudDogbnVtYmVyO1xuICBkZWR1Y3Rpb25zRm9yR2VuZXJhbFNtYWxsQnVzaW5lc3NQb29sQW1vdW50OiBudW1iZXI7XG4gIHByaW9yWWVhcnNOb25QcmltYXJ5TG9zc2VzQW1vdW50OiBudW1iZXI7XG4gIG5ldE5vblByaW1hcnlJbmNvbWVPckxvc3Nlc0Ftb3VudDogbnVtYmVyO1xuICBjdXJyZW50WWVhck5ldE5vblByaW1hcnlJbmNvbWVPckxvc3Nlc0Ftb3VudDogbnVtYmVyO1xuICBkZWZlcnJlZExvc3Nlc0Ftb3VudDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uLFxuICAgIGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24sXG4gICAgYnVzaW5lc3NMb3NzZXM6IFNvbGVCdXNpbmVzc0xvc3NDb2xsZWN0aW9uLFxuICAgIGN1cnJlbnRMb3NzOiBTb2xlQnVzaW5lc3NMb3NzLFxuICAgIHRheFN1bW1hcnk6IFRheFN1bW1hcnlcbiAgKSB7XG4gICAgdGhpcy5jdXJyZW50TG9zcyA9IGN1cnJlbnRMb3NzO1xuICAgIHRoaXMucHVyY2hhc2VzQW5kT3RoZXJDb3N0c0Ftb3VudCA9IE1hdGguYWJzKHRyYW5zYWN0aW9ucy5nZXRFeHBlbnNlVHJhbnNhY3Rpb25zKClcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIEJ1c2luZXNzQ2hhcnRBY2NvdW50c0VudW0uUFVSQ0hBU0VTX1NUT0NLX0lOVkVOVE9SWSlcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5jb250cmFjdG9yc0FuZENvbW1pc3Npb25BbW91bnQgPSBNYXRoLmFicyh0cmFuc2FjdGlvbnMuZ2V0RXhwZW5zZVRyYW5zYWN0aW9ucygpXG4gICAgICAuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuaWQnLCBCdXNpbmVzc0NoYXJ0QWNjb3VudHNFbnVtLkNPTlRSQUNUT1JTX0FORF9DT01NSVNTSU9OKVxuICAgICAgLnN1bUJ5KCdjbGFpbUFtb3VudCcpKTtcbiAgICB0aGlzLnN1cGVyYW5udWF0aW9uQW1vdW50ID0gTWF0aC5hYnModHJhbnNhY3Rpb25zLmdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKVxuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5TVVBFUkFOTlVBVElPTilcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5iYWREZWJ0QW1vdW50ID0gTWF0aC5hYnModHJhbnNhY3Rpb25zLmdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKVxuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5CQURfREVCVClcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5sZWFzZUV4cGVuc2VzQ29tbWVyY2lhbEFtb3VudCA9IE1hdGguYWJzKHRyYW5zYWN0aW9ucy5nZXRFeHBlbnNlVHJhbnNhY3Rpb25zKClcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIEJ1c2luZXNzQ2hhcnRBY2NvdW50c0VudW0uTEVBU0VfRVhQRU5TRVNfQ09NTUVSQ0lBTClcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5yZW50RXhwZW5zZXNDb21tZXJjaWFsUHJlbWlzZXNBbW91bnQgPSBNYXRoLmFicyh0cmFuc2FjdGlvbnMuZ2V0RXhwZW5zZVRyYW5zYWN0aW9ucygpXG4gICAgICAuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuaWQnLCBCdXNpbmVzc0NoYXJ0QWNjb3VudHNFbnVtLlJFTlRfRVhQRU5TRVNfQ09NTUVSQ0lBTF9QUkVNSVNFUylcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5pbnRlcmVzdEV4cGVuc2VzQXVzdHJhbGlhQW1vdW50ID0gTWF0aC5hYnModHJhbnNhY3Rpb25zLmdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKVxuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5JTlRFUkVTVF9FWFBFTlNFU19BVVNUUkFMSUEpXG4gICAgICAuc3VtQnkoJ2NsYWltQW1vdW50JykpO1xuICAgIHRoaXMuaW50ZXJlc3RFeHBlbnNlc092ZXJzZWFzQW1vdW50ID0gTWF0aC5hYnModHJhbnNhY3Rpb25zLmdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKVxuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5JTlRFUkVTVF9FWFBFTlNFU19PVkVSU0VBUylcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5rbXNUcmF2ZWxsZWRFeHBlbnNlc0Ftb3VudCA9IE1hdGguYWJzKFxuICAgICAgdHJhbnNhY3Rpb25zXG4gICAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5jYXRlZ29yeScsIFtCdXNpbmVzc0NoYXJ0QWNjb3VudHNFbnVtLktNU19UUkFWRUxMRURdKVxuICAgICAgICAuc3VtQnkoJ2NsYWltQW1vdW50JykgK1xuICAgICAgZGVwcmVjaWF0aW9uc1xuICAgICAgICAuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuY2F0ZWdvcnknLCBbQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5LTVNfVFJBVkVMTEVEXSlcbiAgICAgICAgLnN1bUJ5KCdjbGFpbUFtb3VudCcpXG4gICAgKTtcbiAgICB0aGlzLmxvZ2Jvb2tFeHBlbnNlc0Ftb3VudCA9IE1hdGguYWJzKHRyYW5zYWN0aW9ucy5nZXRWZWhpY2xlVHJhbnNhY3Rpb25zKCkuc3VtQnkoJ2NsYWltQW1vdW50JykpICtcbiAgICAgIGRlcHJlY2lhdGlvbnMuZ2V0VmVoaWNsZURlcHJlY2lhdGlvbnMoKS5zdW1CeSgnY2xhaW1BbW91bnQnKTtcbiAgICB0aGlzLm90aGVyRXhwZW5zZXNBbW91bnQgPSBNYXRoLmFicyh0cmFuc2FjdGlvbnNcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy50YXhSZXR1cm5JdGVtLmlkJywgVGF4UmV0dXJuSXRlbUVudW0uQUxMX09USEVSX0VYUEVOU0VTKVxuICAgICAgLnN1bUJ5KCdjbGFpbUFtb3VudCcpKTtcbiAgICB0aGlzLnRvdGFsTm9uUHJpbWFyeVByb2R1Y3Rpb25FeHBlbnNlc0Ftb3VudCA9IE1hdGguYWJzKHRyYW5zYWN0aW9uc1xuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmNhdGVnb3J5JywgW0NoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uU09MRV9FWFBFTlNFXSlcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSkgK1xuICAgICAgZGVwcmVjaWF0aW9uc1xuICAgICAgICAuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuY2F0ZWdvcnknLCBbQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bS5TT0xFX0RFUFJFQ0lBVElPTl0pXG4gICAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKTtcbiAgICAvLyBkZXByZWNpYXRpb25zXG4gICAgdGhpcy5kZXByZWNpYXRpb25FeHBlbnNlc0Ftb3VudCA9IGRlcHJlY2lhdGlvbnNcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5oZWFkaW5nLmlkJywgQ2hhcnRBY2NvdW50c0hlYWRpbmdMaXN0RW51bS5ERVBSRUNJQVRJT05fRVhQRU5TRVMpXG4gICAgICAuc3VtQnkoJ2NsYWltQW1vdW50Jyk7XG4gICAgdGhpcy5kZWR1Y3Rpb25zRm9yQ2VydGFpbkFzc2V0c0Ftb3VudCA9IGRlcHJlY2lhdGlvbnNcbiAgICAgIC5nZXRXcml0dGVuT2ZmRGVwcmVjaWF0aW9ucygpXG4gICAgICAuc3VtQnkoJ2NsYWltQW1vdW50Jyk7XG4gICAgdGhpcy5kZWR1Y3Rpb25zRm9yR2VuZXJhbFNtYWxsQnVzaW5lc3NQb29sQW1vdW50ID0gZGVwcmVjaWF0aW9uc1xuICAgICAgLmdldFNCUERlcHJlY2lhdGlvbnMoKVxuICAgICAgLnN1bUJ5KCdjbGFpbUFtb3VudCcpO1xuICAgIHRoaXMuY3VycmVudFllYXJOZXROb25QcmltYXJ5SW5jb21lT3JMb3NzZXNBbW91bnQgPSB0YXhTdW1tYXJ5LnNvbGUuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihcbiAgICAgIFtUYXhSZXR1cm5DYXRlZ29yeUxpc3RFbnVtLkJVU0lORVNTX0lOQ09NRV9PUl9MT1NTXSxcbiAgICAgIFRheFN1bW1hcnlTZWN0aW9uRW51bS5TT0xFX1RBTktcbiAgICApXG4gICAgdGhpcy5wcmlvclllYXJzTm9uUHJpbWFyeUxvc3Nlc0Ftb3VudCA9IGJ1c2luZXNzTG9zc2VzLnN1bUJ5KCdvcGVuQmFsYW5jZScpO1xuICAgIHRoaXMubmV0Tm9uUHJpbWFyeUluY29tZU9yTG9zc2VzQW1vdW50ID0gdGhpcy5jdXJyZW50WWVhck5ldE5vblByaW1hcnlJbmNvbWVPckxvc3Nlc0Ftb3VudCAtXG4gICAgICB0aGlzLnByaW9yWWVhcnNOb25QcmltYXJ5TG9zc2VzQW1vdW50O1xuICAgIHRoaXMuZGVmZXJyZWRMb3NzZXNBbW91bnQgPSB0YXhTdW1tYXJ5LnNvbGUuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihcbiAgICAgIFRBWF9SRVRVUk5fQ0FURUdPUklFUy5zb2xlLmxvc3NDdXJyZW50LFxuICAgICAgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLlNPTEVfVEFOS1xuICAgIClcbiAgfVxufVxuIl19
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktdGF4LWJ1c2luZXNzLWxvc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcmVwb3J0L215LXRheC9teS10YXgtYnVzaW5lc3MtaW5jb21lLW9yLWxvc3Nlcy9teS10YXgtYnVzaW5lc3MtbG9zc2VzL215LXRheC1idXNpbmVzcy1sb3NzZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDdEIsTUFBTSw0QkFBNEIsQ0FBQztBQUNwQyxPQUFPLEVBQ0wseUJBQXlCLEVBQ3pCLHlCQUF5QixFQUN6Qiw0QkFBNEIsRUFFNUIsaUJBQWlCLEdBQ2xCLE1BQU0seUJBQXlCLENBQUM7QUFHakMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFekY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLG1CQUFtQjtJQXNCOUIsWUFDRSxZQUFtQyxFQUNuQyxhQUFxQyxFQUNyQyxjQUEwQyxFQUMxQyxXQUE2QixFQUM3QixVQUFzQjtRQUV0QixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsNEJBQTRCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsc0JBQXNCLEVBQUU7YUFDL0UsUUFBUSxDQUFDLGtCQUFrQixFQUFFLHlCQUF5QixDQUFDLHlCQUF5QixDQUFDO2FBQ2pGLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyw4QkFBOEIsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsRUFBRTthQUNqRixRQUFRLENBQUMsa0JBQWtCLEVBQUUseUJBQXlCLENBQUMsMEJBQTBCLENBQUM7YUFDbEYsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7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QkFBMEIsRUFBRSw0QkFBNEIsQ0FBQyxxQkFBcUIsQ0FBQzthQUN4RixLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLGFBQWE7YUFDbEQsMEJBQTBCLEVBQUU7YUFDNUIsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQywyQ0FBMkMsR0FBRyxhQUFhO2FBQzdELG1CQUFtQixFQUFFO2FBQ3JCLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsNENBQTRDLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQzNILHNCQUFzQixFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLGlDQUFpQyxHQUFHLElBQUksQ0FBQyw0Q0FBNEM7WUFDeEYsSUFBSSxDQUFDLGdDQUFnQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsQ0FDekUscUJBQXFCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFDdEMscUJBQXFCLENBQUMsU0FBUyxDQUNoQyxDQUFBO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbixcbiAgU29sZUJ1c2luZXNzTG9zc0NvbGxlY3Rpb24sXG4gIFRBWF9SRVRVUk5fQ0FURUdPUklFUyxcbiAgVHJhbnNhY3Rpb25Db2xsZWN0aW9uXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7XG4gIEJ1c2luZXNzQ2hhcnRBY2NvdW50c0VudW0sXG4gIENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0sXG4gIENoYXJ0QWNjb3VudHNIZWFkaW5nTGlzdEVudW0sXG4gIFRheFJldHVybkNhdGVnb3J5TGlzdEVudW0sXG4gIFRheFJldHVybkl0ZW1FbnVtLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kYi9FbnVtcyc7XG5pbXBvcnQgeyBTb2xlQnVzaW5lc3NMb3NzIH0gZnJvbSAnLi4vLi4vLi4vLi4vc29sZSc7XG5pbXBvcnQgeyBUYXhTdW1tYXJ5IH0gZnJvbSAnLi4vLi4vLi4vLi4vdGF4LXN1bW1hcnkvdGF4LXN1bW1hcnknO1xuaW1wb3J0IHsgVGF4U3VtbWFyeVNlY3Rpb25FbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZGIvRW51bXMvdGF4LXN1bW1hcnktc2VjdGlvbi5lbnVtJztcblxuLyoqXG4gKiBTb2xlIGJ1c2luZXNzIGluZm9ybWF0aW9uIHJlbGF0ZWQgdG8gZXhwZW5zZSB0cmFuc2FjdGlvbnMgKGxvc3NlcylcbiAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvNDY0NDExMDQ2Ni9UYXgrUmV0dXJuK015VGF4Ky0rT25saW5lK0Zvcm0gKHNlY3Rpb24gXCJCdXNpbmVzcyBpbmNvbWUgb3IgbG9zc2VzXCIpXG4gKi9cbmV4cG9ydCBjbGFzcyBNeVRheEJ1c2luZXNzTG9zc2VzIHtcbiAgY3VycmVudExvc3M6IFNvbGVCdXNpbmVzc0xvc3M7XG4gIHB1cmNoYXNlc0FuZE90aGVyQ29zdHNBbW91bnQ6IG51bWJlcjtcbiAgY29udHJhY3RvcnNBbmRDb21taXNzaW9uQW1vdW50OiBudW1iZXI7XG4gIHN1cGVyYW5udWF0aW9uQW1vdW50OiBudW1iZXI7XG4gIGJhZERlYnRBbW91bnQ6IG51bWJlcjtcbiAgbGVhc2VFeHBlbnNlc0NvbW1lcmNpYWxBbW91bnQ6IG51bWJlcjtcbiAgcmVudEV4cGVuc2VzQ29tbWVyY2lhbFByZW1pc2VzQW1vdW50OiBudW1iZXI7XG4gIGludGVyZXN0RXhwZW5zZXNBdXN0cmFsaWFBbW91bnQ6IG51bWJlcjtcbiAgaW50ZXJlc3RFeHBlbnNlc092ZXJzZWFzQW1vdW50OiBudW1iZXI7XG4gIGttc1RyYXZlbGxlZEV4cGVuc2VzQW1vdW50OiBudW1iZXI7XG4gIGxvZ2Jvb2tFeHBlbnNlc0Ftb3VudDogbnVtYmVyO1xuICBvdGhlckV4cGVuc2VzQW1vdW50OiBudW1iZXI7XG4gIHRvdGFsTm9uUHJpbWFyeVByb2R1Y3Rpb25FeHBlbnNlc0Ftb3VudDogbnVtYmVyO1xuICBkZXByZWNpYXRpb25FeHBlbnNlc0Ftb3VudDogbnVtYmVyO1xuICBkZWR1Y3Rpb25zRm9yQ2VydGFpbkFzc2V0c0Ftb3VudDogbnVtYmVyO1xuICBkZWR1Y3Rpb25zRm9yR2VuZXJhbFNtYWxsQnVzaW5lc3NQb29sQW1vdW50OiBudW1iZXI7XG4gIHByaW9yWWVhcnNOb25QcmltYXJ5TG9zc2VzQW1vdW50OiBudW1iZXI7XG4gIG5ldE5vblByaW1hcnlJbmNvbWVPckxvc3Nlc0Ftb3VudDogbnVtYmVyO1xuICBjdXJyZW50WWVhck5ldE5vblByaW1hcnlJbmNvbWVPckxvc3Nlc0Ftb3VudDogbnVtYmVyO1xuICBkZWZlcnJlZExvc3Nlc0Ftb3VudDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uLFxuICAgIGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24sXG4gICAgYnVzaW5lc3NMb3NzZXM6IFNvbGVCdXNpbmVzc0xvc3NDb2xsZWN0aW9uLFxuICAgIGN1cnJlbnRMb3NzOiBTb2xlQnVzaW5lc3NMb3NzLFxuICAgIHRheFN1bW1hcnk6IFRheFN1bW1hcnlcbiAgKSB7XG4gICAgdGhpcy5jdXJyZW50TG9zcyA9IGN1cnJlbnRMb3NzO1xuICAgIHRoaXMucHVyY2hhc2VzQW5kT3RoZXJDb3N0c0Ftb3VudCA9IE1hdGguYWJzKHRyYW5zYWN0aW9ucy5nZXRFeHBlbnNlVHJhbnNhY3Rpb25zKClcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIEJ1c2luZXNzQ2hhcnRBY2NvdW50c0VudW0uUFVSQ0hBU0VTX1NUT0NLX0lOVkVOVE9SWSlcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5jb250cmFjdG9yc0FuZENvbW1pc3Npb25BbW91bnQgPSBNYXRoLmFicyh0cmFuc2FjdGlvbnMuZ2V0RXhwZW5zZVRyYW5zYWN0aW9ucygpXG4gICAgICAuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuaWQnLCBCdXNpbmVzc0NoYXJ0QWNjb3VudHNFbnVtLkNPTlRSQUNUT1JTX0FORF9DT01NSVNTSU9OKVxuICAgICAgLnN1bUJ5KCdjbGFpbUFtb3VudCcpKTtcbiAgICB0aGlzLnN1cGVyYW5udWF0aW9uQW1vdW50ID0gTWF0aC5hYnModHJhbnNhY3Rpb25zLmdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKVxuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5TVVBFUkFOTlVBVElPTilcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5iYWREZWJ0QW1vdW50ID0gTWF0aC5hYnModHJhbnNhY3Rpb25zLmdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKVxuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5CQURfREVCVClcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5sZWFzZUV4cGVuc2VzQ29tbWVyY2lhbEFtb3VudCA9IE1hdGguYWJzKHRyYW5zYWN0aW9ucy5nZXRFeHBlbnNlVHJhbnNhY3Rpb25zKClcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIEJ1c2luZXNzQ2hhcnRBY2NvdW50c0VudW0uTEVBU0VfRVhQRU5TRVNfQ09NTUVSQ0lBTClcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5yZW50RXhwZW5zZXNDb21tZXJjaWFsUHJlbWlzZXNBbW91bnQgPSBNYXRoLmFicyh0cmFuc2FjdGlvbnMuZ2V0RXhwZW5zZVRyYW5zYWN0aW9ucygpXG4gICAgICAuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuaWQnLCBCdXNpbmVzc0NoYXJ0QWNjb3VudHNFbnVtLlJFTlRfRVhQRU5TRVNfQ09NTUVSQ0lBTF9QUkVNSVNFUylcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5pbnRlcmVzdEV4cGVuc2VzQXVzdHJhbGlhQW1vdW50ID0gTWF0aC5hYnModHJhbnNhY3Rpb25zLmdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKVxuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5JTlRFUkVTVF9FWFBFTlNFU19BVVNUUkFMSUEpXG4gICAgICAuc3VtQnkoJ2NsYWltQW1vdW50JykpO1xuICAgIHRoaXMuaW50ZXJlc3RFeHBlbnNlc092ZXJzZWFzQW1vdW50ID0gTWF0aC5hYnModHJhbnNhY3Rpb25zLmdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKVxuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5JTlRFUkVTVF9FWFBFTlNFU19PVkVSU0VBUylcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG4gICAgdGhpcy5rbXNUcmF2ZWxsZWRFeHBlbnNlc0Ftb3VudCA9IE1hdGguYWJzKFxuICAgICAgdHJhbnNhY3Rpb25zXG4gICAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5jYXRlZ29yeScsIFtCdXNpbmVzc0NoYXJ0QWNjb3VudHNFbnVtLktNU19UUkFWRUxMRURdKVxuICAgICAgICAuc3VtQnkoJ2NsYWltQW1vdW50JykgK1xuICAgICAgZGVwcmVjaWF0aW9uc1xuICAgICAgICAuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuY2F0ZWdvcnknLCBbQnVzaW5lc3NDaGFydEFjY291bnRzRW51bS5LTVNfVFJBVkVMTEVEXSlcbiAgICAgICAgLnN1bUJ5KCdjbGFpbUFtb3VudCcpXG4gICAgKTtcbiAgICB0aGlzLmxvZ2Jvb2tFeHBlbnNlc0Ftb3VudCA9IE1hdGguYWJzKHRyYW5zYWN0aW9ucy5nZXRWZWhpY2xlVHJhbnNhY3Rpb25zKCkuc3VtQnkoJ2NsYWltQW1vdW50JykpICtcbiAgICAgIGRlcHJlY2lhdGlvbnMuZ2V0VmVoaWNsZURlcHJlY2lhdGlvbnMoKS5zdW1CeSgnY2xhaW1BbW91bnQnKTtcbiAgICB0aGlzLm90aGVyRXhwZW5zZXNBbW91bnQgPSBNYXRoLmFicyh0cmFuc2FjdGlvbnNcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy50YXhSZXR1cm5JdGVtLmlkJywgVGF4UmV0dXJuSXRlbUVudW0uQUxMX09USEVSX0VYUEVOU0VTKVxuICAgICAgLnN1bUJ5KCdjbGFpbUFtb3VudCcpKTtcbiAgICB0aGlzLnRvdGFsTm9uUHJpbWFyeVByb2R1Y3Rpb25FeHBlbnNlc0Ftb3VudCA9IE1hdGguYWJzKHRyYW5zYWN0aW9uc1xuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmNhdGVnb3J5JywgW0NoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0uU09MRV9FWFBFTlNFXSlcbiAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKSkgK1xuICAgICAgZGVwcmVjaWF0aW9uc1xuICAgICAgICAuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuY2F0ZWdvcnknLCBbQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bS5TT0xFX0RFUFJFQ0lBVElPTl0pXG4gICAgICAgIC5zdW1CeSgnY2xhaW1BbW91bnQnKTtcbiAgICAvLyBkZXByZWNpYXRpb25zXG4gICAgdGhpcy5kZXByZWNpYXRpb25FeHBlbnNlc0Ftb3VudCA9IGRlcHJlY2lhdGlvbnNcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5oZWFkaW5nLmlkJywgQ2hhcnRBY2NvdW50c0hlYWRpbmdMaXN0RW51bS5ERVBSRUNJQVRJT05fRVhQRU5TRVMpXG4gICAgICAuc3VtQnkoJ2NsYWltQW1vdW50Jyk7XG4gICAgdGhpcy5kZWR1Y3Rpb25zRm9yQ2VydGFpbkFzc2V0c0Ftb3VudCA9IGRlcHJlY2lhdGlvbnNcbiAgICAgIC5nZXRXcml0dGVuT2ZmRGVwcmVjaWF0aW9ucygpXG4gICAgICAuc3VtQnkoJ2NsYWltQW1vdW50Jyk7XG4gICAgdGhpcy5kZWR1Y3Rpb25zRm9yR2VuZXJhbFNtYWxsQnVzaW5lc3NQb29sQW1vdW50ID0gZGVwcmVjaWF0aW9uc1xuICAgICAgLmdldFNCUERlcHJlY2lhdGlvbnMoKVxuICAgICAgLnN1bUJ5KCdjbGFpbUFtb3VudCcpO1xuICAgIHRoaXMuY3VycmVudFllYXJOZXROb25QcmltYXJ5SW5jb21lT3JMb3NzZXNBbW91bnQgPSBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKHRyYW5zYWN0aW9ucy50b0FycmF5KCksIGRlcHJlY2lhdGlvbnMudG9BcnJheSgpKVxuICAgICAgLmdldEJ1c2luZXNzQ2xhaW1BbW91bnQoKTtcbiAgICB0aGlzLnByaW9yWWVhcnNOb25QcmltYXJ5TG9zc2VzQW1vdW50ID0gYnVzaW5lc3NMb3NzZXMuc3VtQnkoJ29wZW5CYWxhbmNlJyk7XG4gICAgdGhpcy5uZXROb25QcmltYXJ5SW5jb21lT3JMb3NzZXNBbW91bnQgPSB0aGlzLmN1cnJlbnRZZWFyTmV0Tm9uUHJpbWFyeUluY29tZU9yTG9zc2VzQW1vdW50IC1cbiAgICAgIHRoaXMucHJpb3JZZWFyc05vblByaW1hcnlMb3NzZXNBbW91bnQ7XG4gICAgdGhpcy5kZWZlcnJlZExvc3Nlc0Ftb3VudCA9IHRheFN1bW1hcnkuc29sZS5pdGVtcy5zdW1CeUNhdGVnb3JpZXNBbmRTZWN0aW9uKFxuICAgICAgVEFYX1JFVFVSTl9DQVRFR09SSUVTLnNvbGUubG9zc0N1cnJlbnQsXG4gICAgICBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uU09MRV9UQU5LXG4gICAgKVxuICB9XG59XG4iXX0=
@@ -0,0 +1,14 @@
1
+ export const HTTP_ERROR_MESSAGES = {
2
+ 400: 'Bad Request – The request was invalid. Please check your data.',
3
+ 401: 'Unauthorized – Authentication is required. Please log in.',
4
+ 403: 'Forbidden – Access is denied. You do not have permission to perform this action.',
5
+ 404: 'Not Found – The requested resource could not be found. Check the URL or availability.',
6
+ 405: 'Method Not Allowed – The request method is not supported by the server. Please, connect with technical support',
7
+ 408: 'Request Timeout – The request took too long to complete. Please try again.',
8
+ 429: 'Too Many Requests – Too many requests were made. Please wait and try again later.',
9
+ 500: 'Internal Server Error – The server encountered an error. Please try again later.',
10
+ 502: 'Bad Gateway – The server received an invalid response. Please try again.',
11
+ 503: 'Service Unavailable – The server is currently unavailable. Please try again later.',
12
+ 504: 'Gateway Timeout – The server timed out waiting for a response. Please try again.'
13
+ };
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1lcnJvci1tZXNzYWdlcy5jb25zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9odHRwL3Jlc3QvaHR0cC1lcnJvci1tZXNzYWdlcy5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRztJQUNqQyxHQUFHLEVBQUUsZ0VBQWdFO0lBQ3JFLEdBQUcsRUFBRSwyREFBMkQ7SUFDaEUsR0FBRyxFQUFFLGtGQUFrRjtJQUN2RixHQUFHLEVBQUUsdUZBQXVGO0lBQzVGLEdBQUcsRUFBRSxnSEFBZ0g7SUFDckgsR0FBRyxFQUFFLDRFQUE0RTtJQUNqRixHQUFHLEVBQUUsbUZBQW1GO0lBQ3hGLEdBQUcsRUFBRSxrRkFBa0Y7SUFDdkYsR0FBRyxFQUFFLDBFQUEwRTtJQUMvRSxHQUFHLEVBQUUsb0ZBQW9GO0lBQ3pGLEdBQUcsRUFBRSxrRkFBa0Y7Q0FDeEYsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBIVFRQX0VSUk9SX01FU1NBR0VTID0ge1xuICA0MDA6ICdCYWQgUmVxdWVzdCDigJMgVGhlIHJlcXVlc3Qgd2FzIGludmFsaWQuIFBsZWFzZSBjaGVjayB5b3VyIGRhdGEuJyxcbiAgNDAxOiAnVW5hdXRob3JpemVkIOKAkyBBdXRoZW50aWNhdGlvbiBpcyByZXF1aXJlZC4gUGxlYXNlIGxvZyBpbi4nLFxuICA0MDM6ICdGb3JiaWRkZW4g4oCTIEFjY2VzcyBpcyBkZW5pZWQuIFlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIHBlcmZvcm0gdGhpcyBhY3Rpb24uJyxcbiAgNDA0OiAnTm90IEZvdW5kIOKAkyBUaGUgcmVxdWVzdGVkIHJlc291cmNlIGNvdWxkIG5vdCBiZSBmb3VuZC4gQ2hlY2sgdGhlIFVSTCBvciBhdmFpbGFiaWxpdHkuJyxcbiAgNDA1OiAnTWV0aG9kIE5vdCBBbGxvd2VkIOKAkyBUaGUgcmVxdWVzdCBtZXRob2QgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgc2VydmVyLiBQbGVhc2UsIGNvbm5lY3Qgd2l0aCB0ZWNobmljYWwgc3VwcG9ydCcsXG4gIDQwODogJ1JlcXVlc3QgVGltZW91dCDigJMgVGhlIHJlcXVlc3QgdG9vayB0b28gbG9uZyB0byBjb21wbGV0ZS4gUGxlYXNlIHRyeSBhZ2Fpbi4nLFxuICA0Mjk6ICdUb28gTWFueSBSZXF1ZXN0cyDigJMgVG9vIG1hbnkgcmVxdWVzdHMgd2VyZSBtYWRlLiBQbGVhc2Ugd2FpdCBhbmQgdHJ5IGFnYWluIGxhdGVyLicsXG4gIDUwMDogJ0ludGVybmFsIFNlcnZlciBFcnJvciDigJMgVGhlIHNlcnZlciBlbmNvdW50ZXJlZCBhbiBlcnJvci4gUGxlYXNlIHRyeSBhZ2FpbiBsYXRlci4nLFxuICA1MDI6ICdCYWQgR2F0ZXdheSDigJMgVGhlIHNlcnZlciByZWNlaXZlZCBhbiBpbnZhbGlkIHJlc3BvbnNlLiBQbGVhc2UgdHJ5IGFnYWluLicsXG4gIDUwMzogJ1NlcnZpY2UgVW5hdmFpbGFibGUg4oCTIFRoZSBzZXJ2ZXIgaXMgY3VycmVudGx5IHVuYXZhaWxhYmxlLiBQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLicsXG4gIDUwNDogJ0dhdGV3YXkgVGltZW91dCDigJMgVGhlIHNlcnZlciB0aW1lZCBvdXQgd2FpdGluZyBmb3IgYSByZXNwb25zZS4gUGxlYXNlIHRyeSBhZ2Fpbi4nXG59XG4iXX0=
@@ -1,4 +1,5 @@
1
1
  export * from './rest.service';
2
+ export * from './http-error-messages.const';
2
3
  export * from './rest-method.type';
3
4
  export * from './http-method.type';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9yZXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yZXN0LnNlcnZpY2UnXG5leHBvcnQgKiBmcm9tICcuL3Jlc3QtbWV0aG9kLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9odHRwLW1ldGhvZC50eXBlJztcbiJdfQ==
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9yZXN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Jlc3Quc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vaHR0cC1lcnJvci1tZXNzYWdlcy5jb25zdCc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc3QtbWV0aG9kLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9odHRwLW1ldGhvZC50eXBlJztcbiJdfQ==
@@ -1,7 +1,7 @@
1
1
  import { Inject, Injectable, inject } from '@angular/core';
2
- import { ReplaySubject, of } from 'rxjs';
2
+ import { ReplaySubject, throwError } from 'rxjs';
3
3
  import { catchError, first, map } from 'rxjs/operators';
4
- import { HttpClient } from '@angular/common/http';
4
+ import { HttpClient, HttpErrorResponse } from '@angular/common/http';
5
5
  import { EventDispatcherService, SseService } from '../../event';
6
6
  import { classToPlain } from 'class-transformer';
7
7
  import { ObservableModel } from '../../../db/Models';
@@ -13,6 +13,7 @@ import merge from 'lodash/merge';
13
13
  import intersection from 'lodash/intersection';
14
14
  import last from 'lodash/last';
15
15
  import cloneDeep from 'lodash/cloneDeep';
16
+ import { HTTP_ERROR_MESSAGES } from './http-error-messages.const';
16
17
  import * as i0 from "@angular/core";
17
18
  /**
18
19
  * @TODO refactor to behavior subject?
@@ -46,6 +47,16 @@ export class RestService extends DataService {
46
47
  */
47
48
  this.orderByDesc = false;
48
49
  this.roles = [];
50
+ /**
51
+ * flag to use error messages from api or default ones
52
+ * @TODO: TT-4642 check customHttpErrorMessages fix change to backend errors
53
+ */
54
+ this.useBackendError = false;
55
+ /**
56
+ * messages that can be redefined in other classes to customize httpErrorMessages
57
+ */
58
+ this.customHttpErrorMessages = {};
59
+ this.httpErrorMessages = { ...HTTP_ERROR_MESSAGES, ...this.customHttpErrorMessages };
49
60
  }
50
61
  get apiUrl() {
51
62
  return `${this.environment.apiV2}/${this.endpointUri}`;
@@ -84,10 +95,7 @@ export class RestService extends DataService {
84
95
  .pipe(map((response) => Array.isArray(response) ? response : toArray(response)), map((response) => {
85
96
  this.setCache(response, true);
86
97
  return this.cache;
87
- }), catchError(() => {
88
- this.toastService.error('An error occurred while fetching data');
89
- return of(this.cache);
90
- }));
98
+ }), catchError((error) => this.handleError(error)));
91
99
  }
92
100
  get(path = this.apiUrl) {
93
101
  if (!this.cache) {
@@ -123,10 +131,7 @@ export class RestService extends DataService {
123
131
  this.handleResponse([result], 'post');
124
132
  }
125
133
  return result;
126
- }), catchError(() => {
127
- this.toastService.error('An error occurred while posting data');
128
- return of(null);
129
- }));
134
+ }), catchError((error) => this.handleError(error)));
130
135
  }
131
136
  /**
132
137
  * Create multiple new Model instances in database
@@ -140,10 +145,7 @@ export class RestService extends DataService {
140
145
  this.handleResponse(result, 'post');
141
146
  }
142
147
  return result;
143
- }), catchError(() => {
144
- this.toastService.error('An error occurred while posting data');
145
- return of([]);
146
- }));
148
+ }), catchError((error) => this.handleError(error)));
147
149
  }
148
150
  /**
149
151
  * Change an existing Model instance in database
@@ -157,10 +159,7 @@ export class RestService extends DataService {
157
159
  this.handleResponse([result], 'put');
158
160
  }
159
161
  return result;
160
- }), catchError(() => {
161
- this.toastService.error('An error occurred while put data');
162
- return of(null);
163
- }));
162
+ }), catchError((error) => this.handleError(error)));
164
163
  }
165
164
  /**
166
165
  * Change multiple existing Model instances in database
@@ -186,10 +185,7 @@ export class RestService extends DataService {
186
185
  if (!this.mercureTopic) {
187
186
  this.handleResponse([model], 'delete');
188
187
  }
189
- }), catchError(() => {
190
- this.toastService.error('An error occurred while deleting data');
191
- return of(null);
192
- }));
188
+ }), catchError((error) => this.handleError(error)));
193
189
  }
194
190
  /**
195
191
  * Remove multiple Model instances from database
@@ -201,10 +197,24 @@ export class RestService extends DataService {
201
197
  if (!this.mercureTopic) {
202
198
  this.handleResponse(models, 'delete');
203
199
  }
204
- }), catchError(() => {
205
- this.toastService.error('An error occurred while deleting data');
206
- return of(null);
207
- }));
200
+ }), catchError((error) => this.handleError(error)));
201
+ }
202
+ /**
203
+ * Handle response errors - shows error in toast
204
+ * and throws error further
205
+ * @param error - any backend error
206
+ * @throws HttpErrorResponse | Error - Always throws the error further as an Observable<never>
207
+ */
208
+ handleError(error) {
209
+ if (error instanceof HttpErrorResponse) {
210
+ if (this.useBackendError) {
211
+ this.toastService.error(error.error.map((error) => error.message).join(' '));
212
+ }
213
+ else {
214
+ this.toastService.error(this.httpErrorMessages[error.status] || 'Unexpected error occurred.');
215
+ }
216
+ }
217
+ return throwError(() => error);
208
218
  }
209
219
  /**
210
220
  * Handle response data - update cache and dispatch event if it is needed
@@ -317,4 +327,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
317
327
  type: Inject,
318
328
  args: ['environment']
319
329
  }] }] });
320
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvcmVzdC9yZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBYyxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRCxPQUFPLEVBQWlCLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWpELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDM0MsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBQ2pDLE9BQU8sWUFBWSxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQztBQUMvQixPQUFPLFNBQVMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFekM7Ozs7Ozs7R0FPRztBQUlILE1BQU0sT0FBZ0IsV0FDcEIsU0FBUSxXQUE4QztJQStCdEQsWUFBNkMsV0FBZ0I7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QyxHQUFHLENBQUMsQ0FBQyxRQUFnQixFQUFFLEVBQUU7WUFDdkIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQy9DLElBQUksTUFBa0IsQ0FBQztZQUN2QixJQUFJLEtBQUssQ0FBQyxFQUFFLEVBQUU7Z0JBQ1osTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQzthQUNyRDtpQkFBTTtnQkFDTCxNQUFNLEdBQUcsUUFBUSxDQUFDO2dCQUNsQix3RkFBd0Y7Z0JBQ3hGLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDOUQ7WUFFRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUNILENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDcEQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOytHQS9XbUIsV0FBVyxrQkFnQ1gsYUFBYTttSEFoQ2IsV0FBVyxjQUZuQixNQUFNOzs0RkFFRSxXQUFXO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBaUNjLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0LCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlyc3QsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLCBTc2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZXZlbnQnO1xuaW1wb3J0IHsgY2xhc3NUb1BsYWluIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IEFic3RyYWN0TW9kZWwsIE9ic2VydmFibGVNb2RlbCB9IGZyb20gJy4uLy4uLy4uL2RiL01vZGVscyc7XG5pbXBvcnQgeyBBcHBFdmVudDIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgdG9BcnJheSB9IGZyb20gJy4uLy4uLy4uL2Z1bmN0aW9ucy9hcnJheSc7XG5pbXBvcnQgeyBSZXN0TWV0aG9kIH0gZnJvbSAnLi9yZXN0LW1ldGhvZC50eXBlJztcbmltcG9ydCB7IEh0dHBNZXRob2QgfSBmcm9tICcuL2h0dHAtbWV0aG9kLnR5cGUnO1xuaW1wb3J0IHsgRGF0YVNlcnZpY2UgfSBmcm9tICcuLi8uLi9kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXNlclJvbGVzRW51bSB9IGZyb20gJ3RheHRhbmstY29yZS9jb21tb24nO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9hc3QnO1xuaW1wb3J0IG1lcmdlIGZyb20gJ2xvZGFzaC9tZXJnZSc7XG5pbXBvcnQgaW50ZXJzZWN0aW9uIGZyb20gJ2xvZGFzaC9pbnRlcnNlY3Rpb24nO1xuaW1wb3J0IGxhc3QgZnJvbSAnbG9kYXNoL2xhc3QnO1xuaW1wb3J0IGNsb25lRGVlcCBmcm9tICdsb2Rhc2gvY2xvbmVEZWVwJztcblxuLyoqXG4gKiBAVE9ETyByZWZhY3RvciB0byBiZWhhdmlvciBzdWJqZWN0P1xuICogQWJzdHJhY3QgYmFzZSBzZXJ2aWNlIHRoYXQgaW1wbGVtZW50cyBjb21tb24gc2VydmljZXMgZnVuY3Rpb25hbGl0eVxuICogYW5kIGRlc2NyaWJlIGFic3RyYWN0IG1ldGhvZHMvcHJvcGVydGllcyB0aGF0IGhhdmUgdG8gYmUgaW1wbGVtZW50ZWQgaW4gY2hpbGQgc2VydmljZXNcbiAqIE1vZGVsIC0gZW50aXR5IHNlcnZpY2UgaXMgd29ya2luZyB3aXRoXG4gKiBCYXNlTW9kZWwgLSBiYXNlIGVudGl0eSBtb2RlbCB0aGF0IGV4dGVuZHMgYnkgTW9kZWxcbiAqIENvbGxlY3Rpb25Nb2RlbCAtIGVudGl0eSBjb2xsZWN0aW9uIGNsYXNzXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJlc3RTZXJ2aWNlPEJhc2VNb2RlbCwgTW9kZWwgZXh0ZW5kcyBBYnN0cmFjdE1vZGVsLCBDb2xsZWN0aW9uTW9kZWwgZXh0ZW5kcyBDb2xsZWN0aW9uPE1vZGVsPj5cbiAgZXh0ZW5kcyBEYXRhU2VydmljZTxCYXNlTW9kZWwsIE1vZGVsLCBDb2xsZWN0aW9uTW9kZWw+IHtcblxuICAvKipcbiAgICogVXJsIHBhcnQgZm9yIHNlcnZpY2UgZW50aXR5IEFQSVxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGVuZHBvaW50VXJpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFN1YmplY3QgZm9yIHNlcnZpY2UgY2FjaGVcbiAgICovXG4gIHByb3RlY3RlZCBjYWNoZVN1YmplY3Q6IFJlcGxheVN1YmplY3Q8Q29sbGVjdGlvbk1vZGVsPiA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIG1ldGhvZHMgdW5hdmFpbGFibGUgZm9yIGN1cnJlbnQgQVBJXG4gICAqIEBUT0RPIEFsZXg6IGFkZCBhbmQgaGFuZGxlIGVuYWJsZWQgbWV0aG9kcyB0b29cbiAgICogQFRPRE8gQWxleDogZGlzYWJsZSBiYXRjaCBieSBkZWZhdWx0XG4gICAqL1xuICBkaXNhYmxlZE1ldGhvZHM6IFJlc3RNZXRob2RbXSA9IFtdO1xuICBwcm90ZWN0ZWQgc3NlU2VydmljZTogU3NlU2VydmljZSA9IGluamVjdChTc2VTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHRvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlID0gaW5qZWN0KFRvYXN0U2VydmljZSk7XG4gIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50ID0gaW5qZWN0KEh0dHBDbGllbnQpO1xuICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSA9IGluamVjdChFdmVudERpc3BhdGNoZXJTZXJ2aWNlKTtcbiAgLyoqXG4gICAqIGFkZHMgbmV3IGVudGl0aWVzIHRvIHRoZSBiZWdpbm5pbmcgd2hlbiB0cnVlXG4gICAqIEBUT0RPIG1ha2UgdHJ1ZSBieSBkZWZhdWx0IHdoZW4gYWxsIHNlcnZpY2VzIHJlZmFjdG9yZWRcbiAgICovXG4gIHByb3RlY3RlZCBvcmRlckJ5RGVzYyA9IGZhbHNlO1xuXG4gIHJvbGVzOiBVc2VyUm9sZXNFbnVtW10gPSBbXTtcbiAgbWVyY3VyZVRvcGljOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgZW52aXJvbm1lbnQ6IGFueSkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IGFwaVVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMuZW5kcG9pbnRVcml9YDtcbiAgfVxuXG4gIHNldENhY2hlKGRhdGE6IGFueVtdLCBuZXh0ID0gZmFsc2UpOiB2b2lkIHtcbiAgICBzdXBlci5zZXRDYWNoZShkYXRhKTtcblxuICAgIGlmIChuZXh0KSB7XG4gICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZWZyZXNoIGNhY2hlIHdpdGggYWN0dWFsIGJhY2tlbmQgZGF0YVxuICAgKi9cbiAgcmVmcmVzaENhY2hlKCk6IHZvaWQge1xuICAgIHRoaXMuY2FjaGUgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5nZXQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBwZXJmb3JtIGEgc2hhbGxvdyBjb3B5IG9mIHRoZSBlbWl0dGVkIGRhdGEgdG8gbWFrZSBpdCBpbW11dGFibGVcbiAgICovXG4gIGdldENhY2hlU3ViamVjdE9ic2VydmFibGUoKTogT2JzZXJ2YWJsZTxDb2xsZWN0aW9uTW9kZWw+IHtcbiAgICByZXR1cm4gdGhpcy5jYWNoZVN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShtYXAoKGNhY2hlKSA9PiBjbG9uZURlZXAoY2FjaGUpKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGRhdGEgZnJvbSBiYWNrZW5kIGFuZCBmaWxsIHRoZSBjYWNoZVxuICAgKi9cbiAgcHJvdGVjdGVkIGZldGNoKHBhdGggPSB0aGlzLmFwaVVybCk6IE9ic2VydmFibGU8Q29sbGVjdGlvbk1vZGVsPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcignZ2V0Jyk7XG5cbiAgICBpZiAoIXRoaXMuaGFzUm9sZXMoKSkge1xuICAgICAgdGhpcy5zZXRDYWNoZShbXSwgdHJ1ZSk7XG4gICAgICByZXR1cm4gdGhpcy5nZXRDYWNoZVN1YmplY3RPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGNhY2hlIGFzIGVtcHR5IGNvbGxlY3Rpb24gdG8gYXZvaWQgbXVsdGlwbGUgcmVxdWVzdHMgYmVmb3JlIGNhY2hlIGZpbGxlZFxuICAgIHRoaXMuc2V0Q2FjaGUoW10pO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHBhdGgpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogb2JqZWN0IHwgb2JqZWN0W10pID0+IEFycmF5LmlzQXJyYXkocmVzcG9uc2UpID8gcmVzcG9uc2UgOiB0b0FycmF5KHJlc3BvbnNlKSksXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IEJhc2VNb2RlbFtdKSA9PiB7XG4gICAgICAgICAgdGhpcy5zZXRDYWNoZShyZXNwb25zZSwgdHJ1ZSk7XG5cbiAgICAgICAgICByZXR1cm4gdGhpcy5jYWNoZTtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmVycm9yKCdBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBmZXRjaGluZyBkYXRhJyk7XG4gICAgICAgICAgcmV0dXJuIG9mKHRoaXMuY2FjaGUpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIGdldChwYXRoOiBzdHJpbmcgPSB0aGlzLmFwaVVybCk6IE9ic2VydmFibGU8Q29sbGVjdGlvbk1vZGVsPiB7XG4gICAgaWYgKCF0aGlzLmNhY2hlKSB7XG4gICAgICB0aGlzLmZldGNoKHBhdGgpLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZ2V0Q2FjaGVTdWJqZWN0T2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0QnkocGF0aDogc3RyaW5nLCB2YWx1ZXM6IGFueSk6IE9ic2VydmFibGU8Q29sbGVjdGlvbk1vZGVsPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCkucGlwZShtYXAoKHByb2plY3RzKSA9PiBwcm9qZWN0cy5maWx0ZXJCeShwYXRoLCB2YWx1ZXMpKSk7XG4gIH1cblxuICBnZXRGaXJzdCgpOiBPYnNlcnZhYmxlPE1vZGVsPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcignZ2V0Jyk7XG5cbiAgICByZXR1cm4gdGhpcy5nZXQoKS5waXBlKFxuICAgICAgbWFwKChjb2xsZWN0aW9uOiBDb2xsZWN0aW9uTW9kZWwpID0+IGNvbGxlY3Rpb24uZmlyc3QpXG4gICAgKTtcbiAgfVxuXG4gIGhhc0luQ2FjaGUoaWQ6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuZ2V0Q2FjaGUoKT8uZmluZEJ5KCdpZCcsIGlkKTtcbiAgfVxuXG4gIGdldEFycmF5KCk6IE9ic2VydmFibGU8TW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmdldCgpLnBpcGUobWFwKChjb2xsZWN0aW9uOiBDb2xsZWN0aW9uTW9kZWwpID0+IGNvbGxlY3Rpb24udG9BcnJheSgpKSk7XG4gIH1cblxuICBnZXRBcnJheUJ5KHBhdGg6IHN0cmluZywgdmFsdWVzOiBhbnkpOiBPYnNlcnZhYmxlPE1vZGVsW10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRCeShwYXRoLCB2YWx1ZXMpLnBpcGUobWFwKChjb2xsZWN0aW9uOiBDb2xsZWN0aW9uTW9kZWwpID0+IGNvbGxlY3Rpb24udG9BcnJheSgpKSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IE1vZGVsIGluc3RhbmNlIGluIGRhdGFiYXNlXG4gICAqL1xuICBwb3N0KG1vZGVsOiBNb2RlbCwgcGF0aDogc3RyaW5nID0gdGhpcy5hcGlVcmwpOiBPYnNlcnZhYmxlPE1vZGVsPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcigncG9zdCcpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHBhdGgsIGNsYXNzVG9QbGFpbihtb2RlbCkpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogb2JqZWN0KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0OiBNb2RlbCA9IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZShyZXNwb25zZSk7XG4gICAgICAgICAgaWYgKCF0aGlzLm1lcmN1cmVUb3BpYykge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVSZXNwb25zZShbcmVzdWx0XSwgJ3Bvc3QnKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuZXJyb3IoJ0FuIGVycm9yIG9jY3VycmVkIHdoaWxlIHBvc3RpbmcgZGF0YScpO1xuICAgICAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIG11bHRpcGxlIG5ldyBNb2RlbCBpbnN0YW5jZXMgaW4gZGF0YWJhc2VcbiAgICovXG4gIHBvc3RCYXRjaChtb2RlbHM6IE1vZGVsW10pOiBPYnNlcnZhYmxlPE1vZGVsW10+IHtcbiAgICB0aGlzLmhhbmRsZUFjY2Vzc0Vycm9yKCdwb3N0QmF0Y2gnKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLmFwaVVybCwgY2xhc3NUb1BsYWluKG1vZGVscykpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogb2JqZWN0W10pID0+IHtcbiAgICAgICAgICBjb25zdCByZXN1bHQ6IE1vZGVsW10gPSByZXNwb25zZS5tYXAoKGl0ZW06IG9iamVjdCk6IE1vZGVsID0+IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZShpdGVtKSk7XG4gICAgICAgICAgaWYgKCF0aGlzLm1lcmN1cmVUb3BpYykge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVSZXNwb25zZShyZXN1bHQsICdwb3N0Jyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmVycm9yKCdBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBwb3N0aW5nIGRhdGEnKTtcbiAgICAgICAgICByZXR1cm4gb2YoW10pO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGFuZ2UgYW4gZXhpc3RpbmcgTW9kZWwgaW5zdGFuY2UgaW4gZGF0YWJhc2VcbiAgICovXG4gIHB1dChtb2RlbDogTW9kZWwsIHBhdGggPSBgJHt0aGlzLmFwaVVybH0vJHttb2RlbC5pZH1gKTogT2JzZXJ2YWJsZTxNb2RlbD4ge1xuICAgIHRoaXMuaGFuZGxlQWNjZXNzRXJyb3IoJ3B1dCcpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQocGF0aCwgY2xhc3NUb1BsYWluKG1vZGVsKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3QpID0+IHtcbiAgICAgICAgICBjb25zdCByZXN1bHQ6IE1vZGVsID0gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKHJlc3BvbnNlKTtcbiAgICAgICAgICBpZiAoIXRoaXMubWVyY3VyZVRvcGljKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKFtyZXN1bHRdLCAncHV0Jyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmVycm9yKCdBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBwdXQgZGF0YScpO1xuICAgICAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ2hhbmdlIG11bHRpcGxlIGV4aXN0aW5nIE1vZGVsIGluc3RhbmNlcyBpbiBkYXRhYmFzZVxuICAgKi9cbiAgcHV0QmF0Y2gobW9kZWxzOiBNb2RlbFtdKTogT2JzZXJ2YWJsZTxNb2RlbFtdPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcigncHV0QmF0Y2gnKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KHRoaXMuYXBpVXJsLCBjbGFzc1RvUGxhaW4obW9kZWxzKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3RbXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlc3VsdDogTW9kZWxbXSA9IHJlc3BvbnNlLm1hcCgoaXRlbTogb2JqZWN0KTogTW9kZWwgPT4gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKGl0ZW0pKTtcbiAgICAgICAgICBpZiAoIXRoaXMubWVyY3VyZVRvcGljKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKHJlc3VsdCwgJ3B1dCcpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhIE1vZGVsIGluc3RhbmNlIGZyb20gZGF0YWJhc2VcbiAgICovXG4gIGRlbGV0ZShtb2RlbDogTW9kZWwsIHBhdGggPSBgJHt0aGlzLmFwaVVybH0vJHttb2RlbC5pZH1gKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcignZGVsZXRlJyk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShwYXRoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgaWYgKCF0aGlzLm1lcmN1cmVUb3BpYykge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVSZXNwb25zZShbbW9kZWxdLCAnZGVsZXRlJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuZXJyb3IoJ0FuIGVycm9yIG9jY3VycmVkIHdoaWxlIGRlbGV0aW5nIGRhdGEnKTtcbiAgICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBtdWx0aXBsZSBNb2RlbCBpbnN0YW5jZXMgZnJvbSBkYXRhYmFzZVxuICAgKi9cbiAgZGVsZXRlQmF0Y2gobW9kZWxzOiBNb2RlbFtdKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcignZGVsZXRlQmF0Y2gnKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmFwaVVybH0vZGVsZXRlYCwgY2xhc3NUb1BsYWluKG1vZGVscykpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCgpID0+IHtcbiAgICAgICAgICBpZiAoIXRoaXMubWVyY3VyZVRvcGljKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKG1vZGVscywgJ2RlbGV0ZScpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmVycm9yKCdBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBkZWxldGluZyBkYXRhJyk7XG4gICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGUgcmVzcG9uc2UgZGF0YSAtIHVwZGF0ZSBjYWNoZSBhbmQgZGlzcGF0Y2ggZXZlbnQgaWYgaXQgaXMgbmVlZGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlUmVzcG9uc2UocmVzcG9uc2U6IE1vZGVsW10sIG1ldGhvZDogSHR0cE1ldGhvZCkge1xuICAgIGlmICh0aGlzLmdldENhY2hlKCkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy51cGRhdGVDYWNoZShyZXNwb25zZSwgbWV0aG9kKTtcbiAgICB9XG5cbiAgICAvLyBkaXNwYXRjaCBldmVudCBmb3IgaW50ZXJlc3RlZCBzZXJ2aWNlc1xuICAgIGlmIChyZXNwb25zZVswXSBpbnN0YW5jZW9mIE9ic2VydmFibGVNb2RlbCkge1xuICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KG1ldGhvZCwgcmVzcG9uc2UgYXMgdW5rbm93biBhcyBPYnNlcnZhYmxlTW9kZWxbXSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBjYWNoZSB3aXRoIHBhc3NlZCBpdGVtcy4gQWRkL1VwZGF0ZSBkZXRlY3RzIGF1dG9tYXRpY2FsbHksIERlbGV0ZSB2aWEgb3B0aW9uYWwgZmxhZ1xuICAgKi9cbiAgcHJvdGVjdGVkIHVwZGF0ZUNhY2hlKGl0ZW1zOiBNb2RlbFtdLCBtZXRob2Q6IEh0dHBNZXRob2QpOiB2b2lkIHtcbiAgICBsZXQgY2FjaGU6IENvbGxlY3Rpb25Nb2RlbDtcblxuICAgIHN3aXRjaCAobWV0aG9kKSB7XG4gICAgICBjYXNlICdwb3N0JzpcbiAgICAgICAgY2FjaGUgPSB0aGlzLm9yZGVyQnlEZXNjID8gdGhpcy5jYWNoZS51bnNoaWZ0KC4uLml0ZW1zKSA6IHRoaXMuY2FjaGUucHVzaCguLi5pdGVtcyk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdwdXQnOlxuICAgICAgICAvLyBAVE9ETyBBbGV4IG9sZCBpbnN0YW5jZVxuICAgICAgICBpdGVtcy5mb3JFYWNoKChpdGVtOiBNb2RlbCkgPT4ge1xuICAgICAgICAgIGNhY2hlID0gdGhpcy5jYWNoZS5yZXBsYWNlQnkoJ2lkJywgaXRlbS5pZCwgaXRlbSk7XG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnZGVsZXRlJzpcbiAgICAgICAgY2FjaGUgPSB0aGlzLmNhY2hlLnJlbW92ZUJ5KCdpZCcsIGl0ZW1zLm1hcCgoaXRlbTogTW9kZWwpID0+IGl0ZW0uaWQpKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ2dldCc6XG4gICAgICAgIGNhY2hlID0gdGhpcy5jcmVhdGVDb2xsZWN0aW9uSW5zdGFuY2UodGhpcy5jb2xsZWN0aW9uQ2xhc3MsIGl0ZW1zKTtcbiAgICB9XG5cbiAgICB0aGlzLnNldENhY2hlKGNhY2hlLnRvQXJyYXkoKSwgdHJ1ZSk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgYW5kIGRpc3BhdGNoIHJlc3QgZXZlbnRcbiAgICovXG4gIHByb3RlY3RlZCBkaXNwYXRjaEV2ZW50KG1ldGhvZDogSHR0cE1ldGhvZCwgaXRlbXM6IE9ic2VydmFibGVNb2RlbFtdKTogdm9pZCB7XG4gICAgY29uc3QgZXZlbnROYW1lOiBzdHJpbmcgPSB0aGlzLm1vZGVsQ2xhc3MuZ2V0RXZlbnROYW1lKG1ldGhvZCk7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoMihuZXcgQXBwRXZlbnQyKGV2ZW50TmFtZSwgaXRlbXMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBtZXRob2QgaXMgbm90IGRpc2FibGVkLiBUaHJvdyBleGNlcHRpb24gb3RoZXJ3aXNlLlxuICAgKiBTb21lIGVudGl0aWVzIGRvZXMgbm90IGhhdmUgZW5kcG9pbnRzIGZvciBhbGwgbWV0aG9kcy5cbiAgICovXG4gIHByaXZhdGUgaGFuZGxlQWNjZXNzRXJyb3IobWV0aG9kOiBSZXN0TWV0aG9kKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkTWV0aG9kcy5pbmNsdWRlcyhtZXRob2QpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKGBNZXRob2QgJHttZXRob2R9KCkgaXMgbm90IGFsbG93ZWQgZm9yICR7dGhpcy5jb25zdHJ1Y3Rvci5uYW1lfWApO1xuICB9XG5cbiAgLyoqXG4gICAqIFN1YnNjcmliZSB0byBodHRwIGV2ZW50cyBhbmQgcnVuIGNhbGxiYWNrLlxuICAgKiBDU0UgLSBDbGVpbnQgU2VudCBFdmVudHNcbiAgICogQHBhcmFtIG1vZGVsQ2xhc3NcbiAgICogQHBhcmFtIG1ldGhvZHMgVGhlIGxpc3Qgb2YgaHR0cCBtZXRob2RzIHNob3VsZCBiZSBsaXN0ZW5lZCBmb3JcbiAgICogQHBhcmFtIGNhbGxiYWNrIFRoZSBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiBldmVudCB0cmlnZ2VyZWRcbiAgICovXG4gIHByb3RlY3RlZCBsaXN0ZW5DU0UobW9kZWxDbGFzczogdHlwZW9mIE9ic2VydmFibGVNb2RlbCwgY2FsbGJhY2s6IEZ1bmN0aW9uLCBtZXRob2RzOiBIdHRwTWV0aG9kW10gPSBbJ3Bvc3QnLCAncHV0JywgJ2RlbGV0ZSddKTogdm9pZCB7XG4gICAgY2FsbGJhY2sgPSBjYWxsYmFjay5iaW5kKHRoaXMpO1xuXG4gICAgbWV0aG9kcy5mb3JFYWNoKChtZXRob2Q6IEh0dHBNZXRob2QpID0+IHtcbiAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbjIobW9kZWxDbGFzcy5nZXRFdmVudE5hbWUobWV0aG9kKSkuc3Vic2NyaWJlKChkYXRhOiBPYnNlcnZhYmxlTW9kZWxbXSkgPT4ge1xuICAgICAgICBjYWxsYmFjayhkYXRhKTtcbiAgICAgIH0pO1xuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogY2hlY2sgaWYgdXNlciBoYXMgc3Vic2NyaXB0aW9uIHJvbGUgdG8gYWNjZXNzIGFwaVxuICAgKi9cbiAgaGFzUm9sZXMoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLnJvbGVzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuICEhaW50ZXJzZWN0aW9uKEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3JvbGVzJykpLCB0aGlzLnJvbGVzKS5sZW5ndGg7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIGZvciBTZXJ2ZXItU2VudCBFdmVudHMgKFNTRSkgb24gdGhlIHNwZWNpZmllZCBNZXJjdXJlIHRvcGljXG4gICAqL1xuICBsaXN0ZW5TU0UoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm1lcmN1cmVUb3BpYykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc3NlU2VydmljZS5vbih0aGlzLm1lcmN1cmVUb3BpYykucGlwZShcbiAgICAgIG1hcCgocmVzcG9uc2U6IG9iamVjdCkgPT4ge1xuICAgICAgICBsZXQgbW9kZWwgPSB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UocmVzcG9uc2UpO1xuICAgICAgICBsZXQgbWV0aG9kOiBIdHRwTWV0aG9kO1xuICAgICAgICBpZiAobW9kZWwuaWQpIHtcbiAgICAgICAgICBtZXRob2QgPSB0aGlzLmhhc0luQ2FjaGUobW9kZWwuaWQpID8gJ3B1dCcgOiAncG9zdCc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbWV0aG9kID0gJ2RlbGV0ZSc7XG4gICAgICAgICAgLy8gd2UgZ290IGVtcHR5IGJvZHkgd2hlbiBpdGVtIGRlbGV0ZWQsIHNvIHdlIHNob3VsZCBnZXQgaWQgZnJvbSBBcGkgUGxhdGZvcm0gZGF0YSAoQGlkKVxuICAgICAgICAgIG1vZGVsID0gbWVyZ2UobW9kZWwsIHsgaWQ6ICtsYXN0KG1vZGVsWydAaWQnXS5zcGxpdCgnLycpKSB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7IG1ldGhvZCwgbW9kZWwgfTtcbiAgICAgIH0pXG4gICAgKS5zdWJzY3JpYmUoKGNoYW5nZSkgPT4ge1xuICAgICAgdGhpcy5oYW5kbGVSZXNwb25zZShbY2hhbmdlLm1vZGVsXSwgY2hhbmdlLm1ldGhvZClcbiAgICB9KTtcbiAgfVxufVxuIl19
330
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvcmVzdC9yZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBYyxhQUFhLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRCxPQUFPLEVBQWlCLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWpELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDM0MsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBQ2pDLE9BQU8sWUFBWSxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQztBQUMvQixPQUFPLFNBQVMsTUFBTSxrQkFBa0IsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFbEU7Ozs7Ozs7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LEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ3BELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0E5WG1CLFdBQVcsa0JBOENYLGFBQWE7bUhBOUNiLFdBQVcsY0FGbkIsTUFBTTs7NEZBRUUsV0FBVztrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQStDYyxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlyc3QsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgRXZlbnREaXNwYXRjaGVyU2VydmljZSwgU3NlU2VydmljZSB9IGZyb20gJy4uLy4uL2V2ZW50JztcbmltcG9ydCB7IGNsYXNzVG9QbGFpbiB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBBYnN0cmFjdE1vZGVsLCBPYnNlcnZhYmxlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgQXBwRXZlbnQyIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IHRvQXJyYXkgfSBmcm9tICcuLi8uLi8uLi9mdW5jdGlvbnMvYXJyYXknO1xuaW1wb3J0IHsgUmVzdE1ldGhvZCB9IGZyb20gJy4vcmVzdC1tZXRob2QudHlwZSc7XG5pbXBvcnQgeyBIdHRwTWV0aG9kIH0gZnJvbSAnLi9odHRwLW1ldGhvZC50eXBlJztcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZGF0YS5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJSb2xlc0VudW0gfSBmcm9tICd0YXh0YW5rLWNvcmUvY29tbW9uJztcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3RvYXN0JztcbmltcG9ydCBtZXJnZSBmcm9tICdsb2Rhc2gvbWVyZ2UnO1xuaW1wb3J0IGludGVyc2VjdGlvbiBmcm9tICdsb2Rhc2gvaW50ZXJzZWN0aW9uJztcbmltcG9ydCBsYXN0IGZyb20gJ2xvZGFzaC9sYXN0JztcbmltcG9ydCBjbG9uZURlZXAgZnJvbSAnbG9kYXNoL2Nsb25lRGVlcCc7XG5pbXBvcnQgeyBIVFRQX0VSUk9SX01FU1NBR0VTIH0gZnJvbSAnLi9odHRwLWVycm9yLW1lc3NhZ2VzLmNvbnN0JztcblxuLyoqXG4gKiBAVE9ETyByZWZhY3RvciB0byBiZWhhdmlvciBzdWJqZWN0P1xuICogQWJzdHJhY3QgYmFzZSBzZXJ2aWNlIHRoYXQgaW1wbGVtZW50cyBjb21tb24gc2VydmljZXMgZnVuY3Rpb25hbGl0eVxuICogYW5kIGRlc2NyaWJlIGFic3RyYWN0IG1ldGhvZHMvcHJvcGVydGllcyB0aGF0IGhhdmUgdG8gYmUgaW1wbGVtZW50ZWQgaW4gY2hpbGQgc2VydmljZXNcbiAqIE1vZGVsIC0gZW50aXR5IHNlcnZpY2UgaXMgd29ya2luZyB3aXRoXG4gKiBCYXNlTW9kZWwgLSBiYXNlIGVudGl0eSBtb2RlbCB0aGF0IGV4dGVuZHMgYnkgTW9kZWxcbiAqIENvbGxlY3Rpb25Nb2RlbCAtIGVudGl0eSBjb2xsZWN0aW9uIGNsYXNzXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJlc3RTZXJ2aWNlPEJhc2VNb2RlbCwgTW9kZWwgZXh0ZW5kcyBBYnN0cmFjdE1vZGVsLCBDb2xsZWN0aW9uTW9kZWwgZXh0ZW5kcyBDb2xsZWN0aW9uPE1vZGVsPj5cbiAgZXh0ZW5kcyBEYXRhU2VydmljZTxCYXNlTW9kZWwsIE1vZGVsLCBDb2xsZWN0aW9uTW9kZWw+IHtcblxuICAvKipcbiAgICogVXJsIHBhcnQgZm9yIHNlcnZpY2UgZW50aXR5IEFQSVxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGVuZHBvaW50VXJpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFN1YmplY3QgZm9yIHNlcnZpY2UgY2FjaGVcbiAgICovXG4gIHByb3RlY3RlZCBjYWNoZVN1YmplY3Q6IFJlcGxheVN1YmplY3Q8Q29sbGVjdGlvbk1vZGVsPiA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIG1ldGhvZHMgdW5hdmFpbGFibGUgZm9yIGN1cnJlbnQgQVBJXG4gICAqIEBUT0RPIEFsZXg6IGFkZCBhbmQgaGFuZGxlIGVuYWJsZWQgbWV0aG9kcyB0b29cbiAgICogQFRPRE8gQWxleDogZGlzYWJsZSBiYXRjaCBieSBkZWZhdWx0XG4gICAqL1xuICBkaXNhYmxlZE1ldGhvZHM6IFJlc3RNZXRob2RbXSA9IFtdO1xuICBwcm90ZWN0ZWQgc3NlU2VydmljZTogU3NlU2VydmljZSA9IGluamVjdChTc2VTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHRvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlID0gaW5qZWN0KFRvYXN0U2VydmljZSk7XG4gIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50ID0gaW5qZWN0KEh0dHBDbGllbnQpO1xuICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSA9IGluamVjdChFdmVudERpc3BhdGNoZXJTZXJ2aWNlKTtcbiAgLyoqXG4gICAqIGFkZHMgbmV3IGVudGl0aWVzIHRvIHRoZSBiZWdpbm5pbmcgd2hlbiB0cnVlXG4gICAqIEBUT0RPIG1ha2UgdHJ1ZSBieSBkZWZhdWx0IHdoZW4gYWxsIHNlcnZpY2VzIHJlZmFjdG9yZWRcbiAgICovXG4gIHByb3RlY3RlZCBvcmRlckJ5RGVzYyA9IGZhbHNlO1xuXG4gIHJvbGVzOiBVc2VyUm9sZXNFbnVtW10gPSBbXTtcbiAgbWVyY3VyZVRvcGljOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBmbGFnIHRvIHVzZSBlcnJvciBtZXNzYWdlcyBmcm9tIGFwaSBvciBkZWZhdWx0IG9uZXNcbiAgICogQFRPRE86IFRULTQ2NDIgY2hlY2sgY3VzdG9tSHR0cEVycm9yTWVzc2FnZXMgZml4IGNoYW5nZSB0byBiYWNrZW5kIGVycm9yc1xuICAgKi9cbiAgcHJvdGVjdGVkIHVzZUJhY2tlbmRFcnJvciA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBtZXNzYWdlcyB0aGF0IGNhbiBiZSByZWRlZmluZWQgaW4gb3RoZXIgY2xhc3NlcyB0byBjdXN0b21pemUgaHR0cEVycm9yTWVzc2FnZXNcbiAgICovXG4gIHByb3RlY3RlZCBjdXN0b21IdHRwRXJyb3JNZXNzYWdlcyA9IHt9O1xuICAvKipcbiAgICogbWFwcGluZyB3aXRoIEhUVFAgZXJyb3JzIGNvZGVzIGFuZCBnZW5lcmFsIG1lc3NhZ2VzXG4gICAqL1xuICBwcm90ZWN0ZWQgaHR0cEVycm9yTWVzc2FnZXM6IHtba2V5OiBudW1iZXJdOiBzdHJpbmd9O1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJvdGVjdGVkIGVudmlyb25tZW50OiBhbnkpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuaHR0cEVycm9yTWVzc2FnZXMgPSB7IC4uLkhUVFBfRVJST1JfTUVTU0FHRVMsIC4uLnRoaXMuY3VzdG9tSHR0cEVycm9yTWVzc2FnZXMgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgYXBpVXJsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy5lbmRwb2ludFVyaX1gO1xuICB9XG5cbiAgc2V0Q2FjaGUoZGF0YTogYW55W10sIG5leHQgPSBmYWxzZSk6IHZvaWQge1xuICAgIHN1cGVyLnNldENhY2hlKGRhdGEpO1xuXG4gICAgaWYgKG5leHQpIHtcbiAgICAgIHRoaXMuY2FjaGVTdWJqZWN0Lm5leHQodGhpcy5jYWNoZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlZnJlc2ggY2FjaGUgd2l0aCBhY3R1YWwgYmFja2VuZCBkYXRhXG4gICAqL1xuICByZWZyZXNoQ2FjaGUoKTogdm9pZCB7XG4gICAgdGhpcy5jYWNoZSA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmdldCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIHBlcmZvcm0gYSBzaGFsbG93IGNvcHkgb2YgdGhlIGVtaXR0ZWQgZGF0YSB0byBtYWtlIGl0IGltbXV0YWJsZVxuICAgKi9cbiAgZ2V0Q2FjaGVTdWJqZWN0T2JzZXJ2YWJsZSgpOiBPYnNlcnZhYmxlPENvbGxlY3Rpb25Nb2RlbD4ge1xuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKS5waXBlKG1hcCgoY2FjaGUpID0+IGNsb25lRGVlcChjYWNoZSkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZGF0YSBmcm9tIGJhY2tlbmQgYW5kIGZpbGwgdGhlIGNhY2hlXG4gICAqL1xuICBwcm90ZWN0ZWQgZmV0Y2gocGF0aCA9IHRoaXMuYXBpVXJsKTogT2JzZXJ2YWJsZTxDb2xsZWN0aW9uTW9kZWw+IHtcbiAgICB0aGlzLmhhbmRsZUFjY2Vzc0Vycm9yKCdnZXQnKTtcblxuICAgIGlmICghdGhpcy5oYXNSb2xlcygpKSB7XG4gICAgICB0aGlzLnNldENhY2hlKFtdLCB0cnVlKTtcbiAgICAgIHJldHVybiB0aGlzLmdldENhY2hlU3ViamVjdE9ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgY2FjaGUgYXMgZW1wdHkgY29sbGVjdGlvbiB0byBhdm9pZCBtdWx0aXBsZSByZXF1ZXN0cyBiZWZvcmUgY2FjaGUgZmlsbGVkXG4gICAgdGhpcy5zZXRDYWNoZShbXSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQocGF0aClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3QgfCBvYmplY3RbXSkgPT4gQXJyYXkuaXNBcnJheShyZXNwb25zZSkgPyByZXNwb25zZSA6IHRvQXJyYXkocmVzcG9uc2UpKSxcbiAgICAgICAgbWFwKChyZXNwb25zZTogQmFzZU1vZGVsW10pID0+IHtcbiAgICAgICAgICB0aGlzLnNldENhY2hlKHJlc3BvbnNlLCB0cnVlKTtcblxuICAgICAgICAgIHJldHVybiB0aGlzLmNhY2hlO1xuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IHVua25vd24pID0+IHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpKVxuICAgICAgKTtcbiAgfVxuXG4gIGdldChwYXRoOiBzdHJpbmcgPSB0aGlzLmFwaVVybCk6IE9ic2VydmFibGU8Q29sbGVjdGlvbk1vZGVsPiB7XG4gICAgaWYgKCF0aGlzLmNhY2hlKSB7XG4gICAgICB0aGlzLmZldGNoKHBhdGgpLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZ2V0Q2FjaGVTdWJqZWN0T2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0QnkocGF0aDogc3RyaW5nLCB2YWx1ZXM6IGFueSk6IE9ic2VydmFibGU8Q29sbGVjdGlvbk1vZGVsPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCkucGlwZShtYXAoKHByb2plY3RzKSA9PiBwcm9qZWN0cy5maWx0ZXJCeShwYXRoLCB2YWx1ZXMpKSk7XG4gIH1cblxuICBnZXRGaXJzdCgpOiBPYnNlcnZhYmxlPE1vZGVsPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcignZ2V0Jyk7XG5cbiAgICByZXR1cm4gdGhpcy5nZXQoKS5waXBlKFxuICAgICAgbWFwKChjb2xsZWN0aW9uOiBDb2xsZWN0aW9uTW9kZWwpID0+IGNvbGxlY3Rpb24uZmlyc3QpXG4gICAgKTtcbiAgfVxuXG4gIGhhc0luQ2FjaGUoaWQ6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuZ2V0Q2FjaGUoKT8uZmluZEJ5KCdpZCcsIGlkKTtcbiAgfVxuXG4gIGdldEFycmF5KCk6IE9ic2VydmFibGU8TW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmdldCgpLnBpcGUobWFwKChjb2xsZWN0aW9uOiBDb2xsZWN0aW9uTW9kZWwpID0+IGNvbGxlY3Rpb24udG9BcnJheSgpKSk7XG4gIH1cblxuICBnZXRBcnJheUJ5KHBhdGg6IHN0cmluZywgdmFsdWVzOiBhbnkpOiBPYnNlcnZhYmxlPE1vZGVsW10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRCeShwYXRoLCB2YWx1ZXMpLnBpcGUobWFwKChjb2xsZWN0aW9uOiBDb2xsZWN0aW9uTW9kZWwpID0+IGNvbGxlY3Rpb24udG9BcnJheSgpKSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IE1vZGVsIGluc3RhbmNlIGluIGRhdGFiYXNlXG4gICAqL1xuICBwb3N0KG1vZGVsOiBNb2RlbCwgcGF0aDogc3RyaW5nID0gdGhpcy5hcGlVcmwpOiBPYnNlcnZhYmxlPE1vZGVsPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcigncG9zdCcpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHBhdGgsIGNsYXNzVG9QbGFpbihtb2RlbCkpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogb2JqZWN0KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0OiBNb2RlbCA9IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZShyZXNwb25zZSk7XG4gICAgICAgICAgaWYgKCF0aGlzLm1lcmN1cmVUb3BpYykge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVSZXNwb25zZShbcmVzdWx0XSwgJ3Bvc3QnKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IHVua25vd24pID0+IHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgbXVsdGlwbGUgbmV3IE1vZGVsIGluc3RhbmNlcyBpbiBkYXRhYmFzZVxuICAgKi9cbiAgcG9zdEJhdGNoKG1vZGVsczogTW9kZWxbXSk6IE9ic2VydmFibGU8TW9kZWxbXT4ge1xuICAgIHRoaXMuaGFuZGxlQWNjZXNzRXJyb3IoJ3Bvc3RCYXRjaCcpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuYXBpVXJsLCBjbGFzc1RvUGxhaW4obW9kZWxzKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3RbXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlc3VsdDogTW9kZWxbXSA9IHJlc3BvbnNlLm1hcCgoaXRlbTogb2JqZWN0KTogTW9kZWwgPT4gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKGl0ZW0pKTtcbiAgICAgICAgICBpZiAoIXRoaXMubWVyY3VyZVRvcGljKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKHJlc3VsdCwgJ3Bvc3QnKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IHVua25vd24pID0+IHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGFuZ2UgYW4gZXhpc3RpbmcgTW9kZWwgaW5zdGFuY2UgaW4gZGF0YWJhc2VcbiAgICovXG4gIHB1dChtb2RlbDogTW9kZWwsIHBhdGggPSBgJHt0aGlzLmFwaVVybH0vJHttb2RlbC5pZH1gKTogT2JzZXJ2YWJsZTxNb2RlbD4ge1xuICAgIHRoaXMuaGFuZGxlQWNjZXNzRXJyb3IoJ3B1dCcpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQocGF0aCwgY2xhc3NUb1BsYWluKG1vZGVsKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3QpID0+IHtcbiAgICAgICAgICBjb25zdCByZXN1bHQ6IE1vZGVsID0gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKHJlc3BvbnNlKTtcbiAgICAgICAgICBpZiAoIXRoaXMubWVyY3VyZVRvcGljKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKFtyZXN1bHRdLCAncHV0Jyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiB1bmtub3duKSA9PiB0aGlzLmhhbmRsZUVycm9yKGVycm9yKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ2hhbmdlIG11bHRpcGxlIGV4aXN0aW5nIE1vZGVsIGluc3RhbmNlcyBpbiBkYXRhYmFzZVxuICAgKi9cbiAgcHV0QmF0Y2gobW9kZWxzOiBNb2RlbFtdKTogT2JzZXJ2YWJsZTxNb2RlbFtdPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcigncHV0QmF0Y2gnKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KHRoaXMuYXBpVXJsLCBjbGFzc1RvUGxhaW4obW9kZWxzKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3RbXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlc3VsdDogTW9kZWxbXSA9IHJlc3BvbnNlLm1hcCgoaXRlbTogb2JqZWN0KTogTW9kZWwgPT4gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKGl0ZW0pKTtcbiAgICAgICAgICBpZiAoIXRoaXMubWVyY3VyZVRvcGljKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKHJlc3VsdCwgJ3B1dCcpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhIE1vZGVsIGluc3RhbmNlIGZyb20gZGF0YWJhc2VcbiAgICovXG4gIGRlbGV0ZShtb2RlbDogTW9kZWwsIHBhdGggPSBgJHt0aGlzLmFwaVVybH0vJHttb2RlbC5pZH1gKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5oYW5kbGVBY2Nlc3NFcnJvcignZGVsZXRlJyk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShwYXRoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgaWYgKCF0aGlzLm1lcmN1cmVUb3BpYykge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVSZXNwb25zZShbbW9kZWxdLCAnZGVsZXRlJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IHVua25vd24pID0+IHRoaXMuaGFuZGxlRXJyb3IoZXJyb3IpKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgbXVsdGlwbGUgTW9kZWwgaW5zdGFuY2VzIGZyb20gZGF0YWJhc2VcbiAgICovXG4gIGRlbGV0ZUJhdGNoKG1vZGVsczogTW9kZWxbXSk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHRoaXMuaGFuZGxlQWNjZXNzRXJyb3IoJ2RlbGV0ZUJhdGNoJyk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5hcGlVcmx9L2RlbGV0ZWAsIGNsYXNzVG9QbGFpbihtb2RlbHMpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgaWYgKCF0aGlzLm1lcmN1cmVUb3BpYykge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVSZXNwb25zZShtb2RlbHMsICdkZWxldGUnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogdW5rbm93bikgPT4gdGhpcy5oYW5kbGVFcnJvcihlcnJvcikpXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSByZXNwb25zZSBlcnJvcnMgLSBzaG93cyBlcnJvciBpbiB0b2FzdFxuICAgKiBhbmQgdGhyb3dzIGVycm9yIGZ1cnRoZXJcbiAgICogQHBhcmFtIGVycm9yIC0gYW55IGJhY2tlbmQgZXJyb3JcbiAgICogQHRocm93cyBIdHRwRXJyb3JSZXNwb25zZSB8IEVycm9yIC0gQWx3YXlzIHRocm93cyB0aGUgZXJyb3IgZnVydGhlciBhcyBhbiBPYnNlcnZhYmxlPG5ldmVyPlxuICAgKi9cbiAgaGFuZGxlRXJyb3IoZXJyb3I6IHVua25vd24pIHtcbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xuICAgICAgaWYgKHRoaXMudXNlQmFja2VuZEVycm9yKSB7XG4gICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmVycm9yKGVycm9yLmVycm9yLm1hcCgoZXJyb3I6IHsgbWVzc2FnZTogc3RyaW5nIH0pID0+IGVycm9yLm1lc3NhZ2UpLmpvaW4oJyAnKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5lcnJvcih0aGlzLmh0dHBFcnJvck1lc3NhZ2VzW2Vycm9yLnN0YXR1c10gfHwgJ1VuZXhwZWN0ZWQgZXJyb3Igb2NjdXJyZWQuJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZSByZXNwb25zZSBkYXRhIC0gdXBkYXRlIGNhY2hlIGFuZCBkaXNwYXRjaCBldmVudCBpZiBpdCBpcyBuZWVkZWRcbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVSZXNwb25zZShyZXNwb25zZTogTW9kZWxbXSwgbWV0aG9kOiBIdHRwTWV0aG9kKSB7XG4gICAgaWYgKHRoaXMuZ2V0Q2FjaGUoKSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnVwZGF0ZUNhY2hlKHJlc3BvbnNlLCBtZXRob2QpO1xuICAgIH1cblxuICAgIC8vIGRpc3BhdGNoIGV2ZW50IGZvciBpbnRlcmVzdGVkIHNlcnZpY2VzXG4gICAgaWYgKHJlc3BvbnNlWzBdIGluc3RhbmNlb2YgT2JzZXJ2YWJsZU1vZGVsKSB7XG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobWV0aG9kLCByZXNwb25zZSBhcyB1bmtub3duIGFzIE9ic2VydmFibGVNb2RlbFtdKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGNhY2hlIHdpdGggcGFzc2VkIGl0ZW1zLiBBZGQvVXBkYXRlIGRldGVjdHMgYXV0b21hdGljYWxseSwgRGVsZXRlIHZpYSBvcHRpb25hbCBmbGFnXG4gICAqL1xuICBwcm90ZWN0ZWQgdXBkYXRlQ2FjaGUoaXRlbXM6IE1vZGVsW10sIG1ldGhvZDogSHR0cE1ldGhvZCk6IHZvaWQge1xuICAgIGxldCBjYWNoZTogQ29sbGVjdGlvbk1vZGVsO1xuXG4gICAgc3dpdGNoIChtZXRob2QpIHtcbiAgICAgIGNhc2UgJ3Bvc3QnOlxuICAgICAgICBjYWNoZSA9IHRoaXMub3JkZXJCeURlc2MgPyB0aGlzLmNhY2hlLnVuc2hpZnQoLi4uaXRlbXMpIDogdGhpcy5jYWNoZS5wdXNoKC4uLml0ZW1zKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ3B1dCc6XG4gICAgICAgIC8vIEBUT0RPIEFsZXggb2xkIGluc3RhbmNlXG4gICAgICAgIGl0ZW1zLmZvckVhY2goKGl0ZW06IE1vZGVsKSA9PiB7XG4gICAgICAgICAgY2FjaGUgPSB0aGlzLmNhY2hlLnJlcGxhY2VCeSgnaWQnLCBpdGVtLmlkLCBpdGVtKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdkZWxldGUnOlxuICAgICAgICBjYWNoZSA9IHRoaXMuY2FjaGUucmVtb3ZlQnkoJ2lkJywgaXRlbXMubWFwKChpdGVtOiBNb2RlbCkgPT4gaXRlbS5pZCkpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnZ2V0JzpcbiAgICAgICAgY2FjaGUgPSB0aGlzLmNyZWF0ZUNvbGxlY3Rpb25JbnN0YW5jZSh0aGlzLmNvbGxlY3Rpb25DbGFzcywgaXRlbXMpO1xuICAgIH1cblxuICAgIHRoaXMuc2V0Q2FjaGUoY2FjaGUudG9BcnJheSgpLCB0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhbmQgZGlzcGF0Y2ggcmVzdCBldmVudFxuICAgKi9cbiAgcHJvdGVjdGVkIGRpc3BhdGNoRXZlbnQobWV0aG9kOiBIdHRwTWV0aG9kLCBpdGVtczogT2JzZXJ2YWJsZU1vZGVsW10pOiB2b2lkIHtcbiAgICBjb25zdCBldmVudE5hbWU6IHN0cmluZyA9IHRoaXMubW9kZWxDbGFzcy5nZXRFdmVudE5hbWUobWV0aG9kKTtcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gyKG5ldyBBcHBFdmVudDIoZXZlbnROYW1lLCBpdGVtcykpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIG1ldGhvZCBpcyBub3QgZGlzYWJsZWQuIFRocm93IGV4Y2VwdGlvbiBvdGhlcndpc2UuXG4gICAqIFNvbWUgZW50aXRpZXMgZG9lcyBub3QgaGF2ZSBlbmRwb2ludHMgZm9yIGFsbCBtZXRob2RzLlxuICAgKi9cbiAgcHJpdmF0ZSBoYW5kbGVBY2Nlc3NFcnJvcihtZXRob2Q6IFJlc3RNZXRob2QpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWRNZXRob2RzLmluY2x1ZGVzKG1ldGhvZCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgRXJyb3IoYE1ldGhvZCAke21ldGhvZH0oKSBpcyBub3QgYWxsb3dlZCBmb3IgJHt0aGlzLmNvbnN0cnVjdG9yLm5hbWV9YCk7XG4gIH1cblxuICAvKipcbiAgICogU3Vic2NyaWJlIHRvIGh0dHAgZXZlbnRzIGFuZCBydW4gY2FsbGJhY2suXG4gICAqIENTRSAtIENsZWludCBTZW50IEV2ZW50c1xuICAgKiBAcGFyYW0gbW9kZWxDbGFzc1xuICAgKiBAcGFyYW0gbWV0aG9kcyBUaGUgbGlzdCBvZiBodHRwIG1ldGhvZHMgc2hvdWxkIGJlIGxpc3RlbmVkIGZvclxuICAgKiBAcGFyYW0gY2FsbGJhY2sgVGhlIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIGV2ZW50IHRyaWdnZXJlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGxpc3RlbkNTRShtb2RlbENsYXNzOiB0eXBlb2YgT2JzZXJ2YWJsZU1vZGVsLCBjYWxsYmFjazogRnVuY3Rpb24sIG1ldGhvZHM6IEh0dHBNZXRob2RbXSA9IFsncG9zdCcsICdwdXQnLCAnZGVsZXRlJ10pOiB2b2lkIHtcbiAgICBjYWxsYmFjayA9IGNhbGxiYWNrLmJpbmQodGhpcyk7XG5cbiAgICBtZXRob2RzLmZvckVhY2goKG1ldGhvZDogSHR0cE1ldGhvZCkgPT4ge1xuICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uMihtb2RlbENsYXNzLmdldEV2ZW50TmFtZShtZXRob2QpKS5zdWJzY3JpYmUoKGRhdGE6IE9ic2VydmFibGVNb2RlbFtdKSA9PiB7XG4gICAgICAgIGNhbGxiYWNrKGRhdGEpO1xuICAgICAgfSk7XG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBjaGVjayBpZiB1c2VyIGhhcyBzdWJzY3JpcHRpb24gcm9sZSB0byBhY2Nlc3MgYXBpXG4gICAqL1xuICBoYXNSb2xlcygpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMucm9sZXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gISFpbnRlcnNlY3Rpb24oSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgncm9sZXMnKSksIHRoaXMucm9sZXMpLmxlbmd0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gZm9yIFNlcnZlci1TZW50IEV2ZW50cyAoU1NFKSBvbiB0aGUgc3BlY2lmaWVkIE1lcmN1cmUgdG9waWNcbiAgICovXG4gIGxpc3RlblNTRSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubWVyY3VyZVRvcGljKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zc2VTZXJ2aWNlLm9uKHRoaXMubWVyY3VyZVRvcGljKS5waXBlKFxuICAgICAgbWFwKChyZXNwb25zZTogb2JqZWN0KSA9PiB7XG4gICAgICAgIGxldCBtb2RlbCA9IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZShyZXNwb25zZSk7XG4gICAgICAgIGxldCBtZXRob2Q6IEh0dHBNZXRob2Q7XG4gICAgICAgIGlmIChtb2RlbC5pZCkge1xuICAgICAgICAgIG1ldGhvZCA9IHRoaXMuaGFzSW5DYWNoZShtb2RlbC5pZCkgPyAncHV0JyA6ICdwb3N0JztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBtZXRob2QgPSAnZGVsZXRlJztcbiAgICAgICAgICAvLyB3ZSBnb3QgZW1wdHkgYm9keSB3aGVuIGl0ZW0gZGVsZXRlZCwgc28gd2Ugc2hvdWxkIGdldCBpZCBmcm9tIEFwaSBQbGF0Zm9ybSBkYXRhIChAaWQpXG4gICAgICAgICAgbW9kZWwgPSBtZXJnZShtb2RlbCwgeyBpZDogK2xhc3QobW9kZWxbJ0BpZCddLnNwbGl0KCcvJykpIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHsgbWV0aG9kLCBtb2RlbCB9O1xuICAgICAgfSlcbiAgICApLnN1YnNjcmliZSgoY2hhbmdlKSA9PiB7XG4gICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKFtjaGFuZ2UubW9kZWxdLCBjaGFuZ2UubWV0aG9kKVxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -9,6 +9,8 @@ export class AllocationRuleService extends RestService {
9
9
  this.endpointUri = 'allocation-rules';
10
10
  this.collectionClass = AllocationRuleCollection;
11
11
  this.modelClass = AllocationRule;
12
+ // @TODO: TT-4642 check customHttpErrorMessages fix change to backend errors
13
+ this.customHttpErrorMessages = { 422: 'You can only have 10 conditions in a rule' };
12
14
  }
13
15
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AllocationRuleService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
14
16
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AllocationRuleService, providedIn: 'root' }); }
@@ -19,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
19
21
  providedIn: 'root'
20
22
  }]
21
23
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uL2FsbG9jYXRpb24tcnVsZS9hbGxvY2F0aW9uLXJ1bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUt0RSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsV0FBeUU7SUFIcEg7O1FBSVksZ0JBQVcsR0FBRyxrQkFBa0IsQ0FBQztRQUMzQyxvQkFBZSxHQUFvQyx3QkFBd0IsQ0FBQztRQUM1RSxlQUFVLEdBQTBCLGNBQWMsQ0FBQztLQUNwRDsrR0FKWSxxQkFBcUI7bUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOzs0RkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9yZXN0JztcbmltcG9ydCB7IEFsbG9jYXRpb25SdWxlIGFzIEFsbG9jYXRpb25SdWxlQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUnO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGVDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBbGxvY2F0aW9uUnVsZVNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxBbGxvY2F0aW9uUnVsZUJhc2UsIEFsbG9jYXRpb25SdWxlLCBBbGxvY2F0aW9uUnVsZUNvbGxlY3Rpb24+IHtcbiAgcHJvdGVjdGVkIGVuZHBvaW50VXJpID0gJ2FsbG9jYXRpb24tcnVsZXMnO1xuICBjb2xsZWN0aW9uQ2xhc3M6IHR5cGVvZiBBbGxvY2F0aW9uUnVsZUNvbGxlY3Rpb24gPSBBbGxvY2F0aW9uUnVsZUNvbGxlY3Rpb247XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBBbGxvY2F0aW9uUnVsZSA9IEFsbG9jYXRpb25SdWxlO1xufVxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uL2FsbG9jYXRpb24tcnVsZS9hbGxvY2F0aW9uLXJ1bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUt0RSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsV0FBeUU7SUFIcEg7O1FBSVksZ0JBQVcsR0FBRyxrQkFBa0IsQ0FBQztRQUMzQyxvQkFBZSxHQUFvQyx3QkFBd0IsQ0FBQztRQUM1RSxlQUFVLEdBQTBCLGNBQWMsQ0FBQztRQUNuRCw0RUFBNEU7UUFDNUUsNEJBQXVCLEdBQUcsRUFBRSxHQUFHLEVBQUUsMkNBQTJDLEVBQUUsQ0FBQztLQUNoRjsrR0FOWSxxQkFBcUI7bUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOzs0RkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9yZXN0JztcbmltcG9ydCB7IEFsbG9jYXRpb25SdWxlIGFzIEFsbG9jYXRpb25SdWxlQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUnO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGVDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBbGxvY2F0aW9uUnVsZVNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxBbGxvY2F0aW9uUnVsZUJhc2UsIEFsbG9jYXRpb25SdWxlLCBBbGxvY2F0aW9uUnVsZUNvbGxlY3Rpb24+IHtcbiAgcHJvdGVjdGVkIGVuZHBvaW50VXJpID0gJ2FsbG9jYXRpb24tcnVsZXMnO1xuICBjb2xsZWN0aW9uQ2xhc3M6IHR5cGVvZiBBbGxvY2F0aW9uUnVsZUNvbGxlY3Rpb24gPSBBbGxvY2F0aW9uUnVsZUNvbGxlY3Rpb247XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBBbGxvY2F0aW9uUnVsZSA9IEFsbG9jYXRpb25SdWxlO1xuICAvLyBAVE9ETzogVFQtNDY0MiBjaGVjayBjdXN0b21IdHRwRXJyb3JNZXNzYWdlcyBmaXggY2hhbmdlIHRvIGJhY2tlbmQgZXJyb3JzXG4gIGN1c3RvbUh0dHBFcnJvck1lc3NhZ2VzID0geyA0MjI6ICdZb3UgY2FuIG9ubHkgaGF2ZSAxMCBjb25kaXRpb25zIGluIGEgcnVsZScgfTtcbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ export var CorelogicMessagesEnum;
2
+ (function (CorelogicMessagesEnum) {
3
+ CorelogicMessagesEnum["SERVICE_UNAVAILABLE"] = "Corelogic service is temporary unavailable, please try again in a few minutes.";
4
+ })(CorelogicMessagesEnum || (CorelogicMessagesEnum = {}));
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZWxvZ2ljLW1lc3NhZ2VzLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvcHJvcGVydHkvY29yZWxvZ2ljL2NvcmVsb2dpYy1tZXNzYWdlcy5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLHFCQUVYO0FBRkQsV0FBWSxxQkFBcUI7SUFDaEMsK0hBQXNHLENBQUE7QUFDdkcsQ0FBQyxFQUZXLHFCQUFxQixLQUFyQixxQkFBcUIsUUFFaEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBDb3JlbG9naWNNZXNzYWdlc0VudW0ge1xuIFNFUlZJQ0VfVU5BVkFJTEFCTEUgPSAnQ29yZWxvZ2ljIHNlcnZpY2UgaXMgdGVtcG9yYXJ5IHVuYXZhaWxhYmxlLCBwbGVhc2UgdHJ5IGFnYWluIGluIGEgZmV3IG1pbnV0ZXMuJ1xufVxuIl19