taxtank-core 0.33.17 → 0.33.18

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,10 +1,11 @@
1
1
  import { UntypedFormArray, UntypedFormControl, Validators } from '@angular/forms';
2
- import { Property } from '../../models';
2
+ import { FinancialYear, Property } from '../../models';
3
3
  import { AbstractForm } from '../abstract.form';
4
4
  import { plainToClass } from 'class-transformer';
5
5
  import { PropertyShareForm } from './property-share.form';
6
6
  import { PropertyForecastForm } from './property-forecast.form';
7
7
  import { PropertyCategoryMovementForm } from './property-category-movement-form';
8
+ import { maxDateValidator } from '../../validators';
8
9
  /**
9
10
  * Form class for the single new property
10
11
  */
@@ -13,7 +14,10 @@ export class PropertyAddForm extends AbstractForm {
13
14
  super({
14
15
  address: new UntypedFormControl(null, Validators.required),
15
16
  purchasePrice: new UntypedFormControl(null, Validators.required),
16
- contractDate: new UntypedFormControl(null, Validators.required),
17
+ contractDate: new UntypedFormControl(null, [
18
+ Validators.required,
19
+ maxDateValidator(new FinancialYear().endDate, 'You cannot add a property with a contract date in future financial years.')
20
+ ]),
17
21
  settlementDate: new UntypedFormControl(null, Validators.required),
18
22
  forecasts: new UntypedFormArray([
19
23
  new PropertyForecastForm()
@@ -66,4 +70,4 @@ export class PropertyAddForm extends AbstractForm {
66
70
  return this.get('categoryMovements').controls[0];
67
71
  }
68
72
  }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktYWRkLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvcHJvcGVydHkvcHJvcGVydHktYWRkLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxRQUFRLEVBQW9CLE1BQU0sY0FBYyxDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFakY7O0dBRUc7QUFDSCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxZQUFzQjtJQUN6RDtRQUNFLEtBQUssQ0FBQztZQUNKLE9BQU8sRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzFELGFBQWEsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2hFLFlBQVksRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQy9ELGNBQWMsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2pFLFNBQVMsRUFBRSxJQUFJLGdCQUFnQixDQUFDO2dCQUM5QixJQUFJLG9CQUFvQixFQUFFO2FBQzNCLENBQUM7WUFDRixNQUFNLEVBQUUsSUFBSSxnQkFBZ0IsQ0FBQztnQkFDM0IsSUFBSSxpQkFBaUIsRUFBRTthQUN4QixDQUFDO1lBQ0YsaUJBQWlCLEVBQUUsSUFBSSxnQkFBZ0IsQ0FBQztnQkFDdEMsSUFBSSw0QkFBNEIsRUFBRTthQUNuQyxDQUFDO1NBQ0gsRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDL0IseUNBQXlDO1FBRXpDLHVFQUF1RTtRQUN2RSxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsV0FBbUIsRUFBRSxFQUFFO1lBQ25GLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM3RCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQWtCLEVBQUUsRUFBRTtZQUNyRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNuRSxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBMEIsRUFBRSxFQUFFO1lBQ3RHLElBQUksUUFBUSxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUN2QixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUNoRDtpQkFBTTtnQkFDTCxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUNqRDtZQUVELElBQUksUUFBUSxDQUFDLGVBQWUsRUFBRSxJQUFJLFFBQVEsQ0FBQyxZQUFZLEVBQUUsRUFBRTtnQkFDekQsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ2pEO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUNoRDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQTBCLENBQUM7SUFDN0UsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLDBFQUEwRTtRQUMxRSxPQUFRLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFzQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQXlCLENBQUM7SUFDekYsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLDBFQUEwRTtRQUMxRSxPQUFRLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFzQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQXNCLENBQUM7SUFDbkYsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLG1GQUFtRjtRQUNuRixPQUFRLElBQUksQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQXNCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBaUMsQ0FBQztJQUN6RyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVbnR5cGVkRm9ybUFycmF5LCBVbnR5cGVkRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQcm9wZXJ0eSwgUHJvcGVydHlDYXRlZ29yeSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBBYnN0cmFjdEZvcm0gfSBmcm9tICcuLi9hYnN0cmFjdC5mb3JtJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFByb3BlcnR5VmFsdWF0aW9uRm9ybSB9IGZyb20gJy4vcHJvcGVydHktdmFsdWF0aW9uLmZvcm0nO1xuaW1wb3J0IHsgUHJvcGVydHlTaGFyZUZvcm0gfSBmcm9tICcuL3Byb3BlcnR5LXNoYXJlLmZvcm0nO1xuaW1wb3J0IHsgUHJvcGVydHlGb3JlY2FzdEZvcm0gfSBmcm9tICcuL3Byb3BlcnR5LWZvcmVjYXN0LmZvcm0nO1xuaW1wb3J0IHsgUHJvcGVydHlDYXRlZ29yeU1vdmVtZW50Rm9ybSB9IGZyb20gJy4vcHJvcGVydHktY2F0ZWdvcnktbW92ZW1lbnQtZm9ybSc7XG5cbi8qKlxuICogRm9ybSBjbGFzcyBmb3IgdGhlIHNpbmdsZSBuZXcgcHJvcGVydHlcbiAqL1xuZXhwb3J0IGNsYXNzIFByb3BlcnR5QWRkRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxQcm9wZXJ0eT4ge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcih7XG4gICAgICBhZGRyZXNzOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgcHVyY2hhc2VQcmljZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGNvbnRyYWN0RGF0ZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIHNldHRsZW1lbnREYXRlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgZm9yZWNhc3RzOiBuZXcgVW50eXBlZEZvcm1BcnJheShbXG4gICAgICAgIG5ldyBQcm9wZXJ0eUZvcmVjYXN0Rm9ybSgpXG4gICAgICBdKSxcbiAgICAgIHNoYXJlczogbmV3IFVudHlwZWRGb3JtQXJyYXkoW1xuICAgICAgICBuZXcgUHJvcGVydHlTaGFyZUZvcm0oKVxuICAgICAgXSksXG4gICAgICBjYXRlZ29yeU1vdmVtZW50czogbmV3IFVudHlwZWRGb3JtQXJyYXkoW1xuICAgICAgICBuZXcgUHJvcGVydHlDYXRlZ29yeU1vdmVtZW50Rm9ybSgpXG4gICAgICBdKVxuICAgIH0sIHBsYWluVG9DbGFzcyhQcm9wZXJ0eSwge30pKTtcbiAgICAvLyBAVE9ETyBtb3ZlIHRvIHN1Ym1pdCwgbm8gbmVlZCB0byB3YXRjaFxuXG4gICAgLy8gd2Ugc2hvdWxkIHB1dCB0aGUgc2FtZSBtYXJrZXQgdmFsdWUgdG8gYm90aCwgZm9yZWNhc3QgYW5kIHZhbHVhdGlvbi5cbiAgICB0aGlzLnZhbHVhdGlvbkZvcm0uZ2V0KCdtYXJrZXRWYWx1ZScpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKG1hcmtldFZhbHVlOiBudW1iZXIpID0+IHtcbiAgICAgIHRoaXMuZm9yZWNhc3RGb3JtLmdldCgnbWFya2V0VmFsdWUnKS5zZXRWYWx1ZShtYXJrZXRWYWx1ZSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmdldCgnY29udHJhY3REYXRlJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoY29udHJhY3REYXRlOiBEYXRlKSA9PiB7XG4gICAgICB0aGlzLmNhdGVnb3J5TW92ZW1lbnRGb3JtLmdldCgnZnJvbURhdGUnKS5zZXRWYWx1ZShjb250cmFjdERhdGUpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5jYXRlZ29yeU1vdmVtZW50Rm9ybS5nZXQoJ3Byb3BlcnR5Q2F0ZWdvcnknKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChjYXRlZ29yeTogUHJvcGVydHlDYXRlZ29yeSkgPT4ge1xuICAgICAgaWYgKGNhdGVnb3J5LmlzU2hhcmVkKCkpIHtcbiAgICAgICAgdGhpcy5mb3JlY2FzdEZvcm0uZ2V0KCdjbGFpbVBlcmNlbnQnKS5lbmFibGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZm9yZWNhc3RGb3JtLmdldCgnY2xhaW1QZXJjZW50JykuZGlzYWJsZSgpO1xuICAgICAgfVxuXG4gICAgICBpZiAoY2F0ZWdvcnkuaXNPd25lck9jY3VwaWVkKCkgfHwgY2F0ZWdvcnkuaXNWYWNhbnRMYW5kKCkpIHtcbiAgICAgICAgdGhpcy5mb3JlY2FzdEZvcm0uZ2V0KCdpbmNvbWUnKS5kaXNhYmxlKCk7XG4gICAgICAgIHRoaXMuZm9yZWNhc3RGb3JtLmdldCgnZGVwcmVjaWF0aW9uJykuZGlzYWJsZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5mb3JlY2FzdEZvcm0uZ2V0KCdpbmNvbWUnKS5lbmFibGUoKTtcbiAgICAgICAgdGhpcy5mb3JlY2FzdEZvcm0uZ2V0KCdkZXByZWNpYXRpb24nKS5lbmFibGUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldCB2YWx1YXRpb25Gb3JtKCk6IFByb3BlcnR5VmFsdWF0aW9uRm9ybSB7XG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnlNb3ZlbWVudEZvcm0uZ2V0KCd2YWx1YXRpb24nKSBhcyBQcm9wZXJ0eVZhbHVhdGlvbkZvcm07XG4gIH1cblxuICBnZXQgZm9yZWNhc3RGb3JtKCk6IFByb3BlcnR5Rm9yZWNhc3RGb3JtIHtcbiAgICAvLyBbMF0gYmVjYXVzZSBmb3IgcHJvcGVydHkgYWRkIGZvcm0gd2UgaGF2ZSBhbHdheXMgMSBmb3JlY2FzdCBmb3JtIGluc2lkZVxuICAgIHJldHVybiAodGhpcy5nZXQoJ2ZvcmVjYXN0cycpIGFzIFVudHlwZWRGb3JtQXJyYXkpLmNvbnRyb2xzWzBdIGFzIFByb3BlcnR5Rm9yZWNhc3RGb3JtO1xuICB9XG5cbiAgZ2V0IHNoYXJlRm9ybSgpOiBQcm9wZXJ0eVNoYXJlRm9ybSB7XG4gICAgLy8gWzBdIGJlY2F1c2UgZm9yIHByb3BlcnR5IGFkZCBmb3JtIHdlIGhhdmUgYWx3YXlzIDEgZm9yZWNhc3QgZm9ybSBpbnNpZGVcbiAgICByZXR1cm4gKHRoaXMuZ2V0KCdzaGFyZXMnKSBhcyBVbnR5cGVkRm9ybUFycmF5KS5jb250cm9sc1swXSBhcyBQcm9wZXJ0eVNoYXJlRm9ybTtcbiAgfVxuXG4gIGdldCBjYXRlZ29yeU1vdmVtZW50Rm9ybSgpOiBQcm9wZXJ0eUNhdGVnb3J5TW92ZW1lbnRGb3JtIHtcbiAgICAvLyBbMF0gYmVjYXVzZSBmb3IgcHJvcGVydHkgYWRkIGZvcm0gd2UgYWx3YXlzIGhhdmUgMSBjYXRlZ29yeSBtb3ZlbWVudCBmb3JtIGluc2lkZVxuICAgIHJldHVybiAodGhpcy5nZXQoJ2NhdGVnb3J5TW92ZW1lbnRzJykgYXMgVW50eXBlZEZvcm1BcnJheSkuY29udHJvbHNbMF0gYXMgUHJvcGVydHlDYXRlZ29yeU1vdmVtZW50Rm9ybTtcbiAgfVxufVxuIl19
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktYWRkLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvcHJvcGVydHkvcHJvcGVydHktYWRkLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFvQixNQUFNLGNBQWMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWpELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBb0IsTUFBTSxrQkFBa0IsQ0FBQztBQUV0RTs7R0FFRztBQUNILE1BQU0sT0FBTyxlQUFnQixTQUFRLFlBQXNCO0lBQ3pEO1FBQ0UsS0FBSyxDQUFDO1lBQ0osT0FBTyxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDMUQsYUFBYSxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDaEUsWUFBWSxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFO2dCQUN6QyxVQUFVLENBQUMsUUFBUTtnQkFDbkIsZ0JBQWdCLENBQUMsSUFBSSxhQUFhLEVBQUUsQ0FBQyxPQUFPLEVBQUUsMkVBQTJFLENBQUM7YUFDM0gsQ0FBQztZQUNGLGNBQWMs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dCI6WyJpbXBvcnQgeyBVbnR5cGVkRm9ybUFycmF5LCBVbnR5cGVkRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGaW5hbmNpYWxZZWFyLCBQcm9wZXJ0eSwgUHJvcGVydHlDYXRlZ29yeSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBBYnN0cmFjdEZvcm0gfSBmcm9tICcuLi9hYnN0cmFjdC5mb3JtJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFByb3BlcnR5VmFsdWF0aW9uRm9ybSB9IGZyb20gJy4vcHJvcGVydHktdmFsdWF0aW9uLmZvcm0nO1xuaW1wb3J0IHsgUHJvcGVydHlTaGFyZUZvcm0gfSBmcm9tICcuL3Byb3BlcnR5LXNoYXJlLmZvcm0nO1xuaW1wb3J0IHsgUHJvcGVydHlGb3JlY2FzdEZvcm0gfSBmcm9tICcuL3Byb3BlcnR5LWZvcmVjYXN0LmZvcm0nO1xuaW1wb3J0IHsgUHJvcGVydHlDYXRlZ29yeU1vdmVtZW50Rm9ybSB9IGZyb20gJy4vcHJvcGVydHktY2F0ZWdvcnktbW92ZW1lbnQtZm9ybSc7XG5pbXBvcnQgeyBtYXhEYXRlVmFsaWRhdG9yLCBtaW5EYXRlVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vdmFsaWRhdG9ycyc7XG5cbi8qKlxuICogRm9ybSBjbGFzcyBmb3IgdGhlIHNpbmdsZSBuZXcgcHJvcGVydHlcbiAqL1xuZXhwb3J0IGNsYXNzIFByb3BlcnR5QWRkRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxQcm9wZXJ0eT4ge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcih7XG4gICAgICBhZGRyZXNzOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgcHVyY2hhc2VQcmljZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGNvbnRyYWN0RGF0ZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBbXG4gICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWQsXG4gICAgICAgIG1heERhdGVWYWxpZGF0b3IobmV3IEZpbmFuY2lhbFllYXIoKS5lbmREYXRlLCAnWW91IGNhbm5vdCBhZGQgYSBwcm9wZXJ0eSB3aXRoIGEgY29udHJhY3QgZGF0ZSBpbiBmdXR1cmUgZmluYW5jaWFsIHllYXJzLicpXG4gICAgICBdKSxcbiAgICAgIHNldHRsZW1lbnREYXRlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgZm9yZWNhc3RzOiBuZXcgVW50eXBlZEZvcm1BcnJheShbXG4gICAgICAgIG5ldyBQcm9wZXJ0eUZvcmVjYXN0Rm9ybSgpXG4gICAgICBdKSxcbiAgICAgIHNoYXJlczogbmV3IFVudHlwZWRGb3JtQXJyYXkoW1xuICAgICAgICBuZXcgUHJvcGVydHlTaGFyZUZvcm0oKVxuICAgICAgXSksXG4gICAgICBjYXRlZ29yeU1vdmVtZW50czogbmV3IFVudHlwZWRGb3JtQXJyYXkoW1xuICAgICAgICBuZXcgUHJvcGVydHlDYXRlZ29yeU1vdmVtZW50Rm9ybSgpXG4gICAgICBdKVxuICAgIH0sIHBsYWluVG9DbGFzcyhQcm9wZXJ0eSwge30pKTtcbiAgICAvLyBAVE9ETyBtb3ZlIHRvIHN1Ym1pdCwgbm8gbmVlZCB0byB3YXRjaFxuXG4gICAgLy8gd2Ugc2hvdWxkIHB1dCB0aGUgc2FtZSBtYXJrZXQgdmFsdWUgdG8gYm90aCwgZm9yZWNhc3QgYW5kIHZhbHVhdGlvbi5cbiAgICB0aGlzLnZhbHVhdGlvbkZvcm0uZ2V0KCdtYXJrZXRWYWx1ZScpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKG1hcmtldFZhbHVlOiBudW1iZXIpID0+IHtcbiAgICAgIHRoaXMuZm9yZWNhc3RGb3JtLmdldCgnbWFya2V0VmFsdWUnKS5zZXRWYWx1ZShtYXJrZXRWYWx1ZSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmdldCgnY29udHJhY3REYXRlJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoY29udHJhY3REYXRlOiBEYXRlKSA9PiB7XG4gICAgICB0aGlzLmNhdGVnb3J5TW92ZW1lbnRGb3JtLmdldCgnZnJvbURhdGUnKS5zZXRWYWx1ZShjb250cmFjdERhdGUpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5jYXRlZ29yeU1vdmVtZW50Rm9ybS5nZXQoJ3Byb3BlcnR5Q2F0ZWdvcnknKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChjYXRlZ29yeTogUHJvcGVydHlDYXRlZ29yeSkgPT4ge1xuICAgICAgaWYgKGNhdGVnb3J5LmlzU2hhcmVkKCkpIHtcbiAgICAgICAgdGhpcy5mb3JlY2FzdEZvcm0uZ2V0KCdjbGFpbVBlcmNlbnQnKS5lbmFibGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZm9yZWNhc3RGb3JtLmdldCgnY2xhaW1QZXJjZW50JykuZGlzYWJsZSgpO1xuICAgICAgfVxuXG4gICAgICBpZiAoY2F0ZWdvcnkuaXNPd25lck9jY3VwaWVkKCkgfHwgY2F0ZWdvcnkuaXNWYWNhbnRMYW5kKCkpIHtcbiAgICAgICAgdGhpcy5mb3JlY2FzdEZvcm0uZ2V0KCdpbmNvbWUnKS5kaXNhYmxlKCk7XG4gICAgICAgIHRoaXMuZm9yZWNhc3RGb3JtLmdldCgnZGVwcmVjaWF0aW9uJykuZGlzYWJsZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5mb3JlY2FzdEZvcm0uZ2V0KCdpbmNvbWUnKS5lbmFibGUoKTtcbiAgICAgICAgdGhpcy5mb3JlY2FzdEZvcm0uZ2V0KCdkZXByZWNpYXRpb24nKS5lbmFibGUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldCB2YWx1YXRpb25Gb3JtKCk6IFByb3BlcnR5VmFsdWF0aW9uRm9ybSB7XG4gICAgcmV0dXJuIHRoaXMuY2F0ZWdvcnlNb3ZlbWVudEZvcm0uZ2V0KCd2YWx1YXRpb24nKSBhcyBQcm9wZXJ0eVZhbHVhdGlvbkZvcm07XG4gIH1cblxuICBnZXQgZm9yZWNhc3RGb3JtKCk6IFByb3BlcnR5Rm9yZWNhc3RGb3JtIHtcbiAgICAvLyBbMF0gYmVjYXVzZSBmb3IgcHJvcGVydHkgYWRkIGZvcm0gd2UgaGF2ZSBhbHdheXMgMSBmb3JlY2FzdCBmb3JtIGluc2lkZVxuICAgIHJldHVybiAodGhpcy5nZXQoJ2ZvcmVjYXN0cycpIGFzIFVudHlwZWRGb3JtQXJyYXkpLmNvbnRyb2xzWzBdIGFzIFByb3BlcnR5Rm9yZWNhc3RGb3JtO1xuICB9XG5cbiAgZ2V0IHNoYXJlRm9ybSgpOiBQcm9wZXJ0eVNoYXJlRm9ybSB7XG4gICAgLy8gWzBdIGJlY2F1c2UgZm9yIHByb3BlcnR5IGFkZCBmb3JtIHdlIGhhdmUgYWx3YXlzIDEgZm9yZWNhc3QgZm9ybSBpbnNpZGVcbiAgICByZXR1cm4gKHRoaXMuZ2V0KCdzaGFyZXMnKSBhcyBVbnR5cGVkRm9ybUFycmF5KS5jb250cm9sc1swXSBhcyBQcm9wZXJ0eVNoYXJlRm9ybTtcbiAgfVxuXG4gIGdldCBjYXRlZ29yeU1vdmVtZW50Rm9ybSgpOiBQcm9wZXJ0eUNhdGVnb3J5TW92ZW1lbnRGb3JtIHtcbiAgICAvLyBbMF0gYmVjYXVzZSBmb3IgcHJvcGVydHkgYWRkIGZvcm0gd2UgYWx3YXlzIGhhdmUgMSBjYXRlZ29yeSBtb3ZlbWVudCBmb3JtIGluc2lkZVxuICAgIHJldHVybiAodGhpcy5nZXQoJ2NhdGVnb3J5TW92ZW1lbnRzJykgYXMgVW50eXBlZEZvcm1BcnJheSkuY29udHJvbHNbMF0gYXMgUHJvcGVydHlDYXRlZ29yeU1vdmVtZW50Rm9ybTtcbiAgfVxufVxuIl19
@@ -156,4 +156,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
156
156
  type: Inject,
157
157
  args: ['environment']
158
158
  }] }, { type: i3.BankConnectionService }] });
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaXEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9odHRwL2JhbmsvYmFzaXEvYmFzaXEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFLckQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsV0FBVyxFQUFrQixnQkFBZ0IsRUFFOUMsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7QUFHNUI7Ozs7R0FJRztBQUlILE1BQU0sT0FBTyxZQUFhLFNBQVEsV0FBZ0U7YUFDekYsZ0JBQVcsR0FBRyx5QkFBeUIsQUFBNUIsQ0FBNkI7YUFDeEMsb0JBQWUsR0FBRywrQkFBK0IsQUFBbEMsQ0FBbUM7SUFFekQ7O09BRUc7YUFDSSxrQ0FBNkIsR0FBRyxJQUFJLEFBQVAsQ0FBUTtJQUU1Qzs7T0FFRzthQUNJLDRCQUF1QixHQUFHLEtBQUssQUFBUixDQUFTO0lBa0J2QyxZQUNZLElBQWdCLEVBQ2hCLHNCQUE4QyxFQUN2QixXQUFnQjtJQUNqRCxvRkFBb0Y7SUFDNUUscUJBQTRDO1FBRXBELEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQU5ULFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtR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QUNqSCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sSUFBSSxZQUFZLENBQUMsU0FBUyxLQUFLLHFCQUFxQixDQUFDLGtCQUFrQixFQUFFO2dCQUMvRixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7YUFDckI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBdEtVLFlBQVksa0ZBaUNiLGFBQWE7bUhBakNaLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBa0NJLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudCBhcyBCYW5rQWNjb3VudEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgUmVzdE1ldGhvZCwgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9yZXN0JztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgRXZlbnREaXNwYXRjaGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2V2ZW50JztcbmltcG9ydCB7IEJhbmtDb25uZWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2JhbmstY29ubmVjdGlvbic7XG5pbXBvcnQgeyBCYW5rQWNjb3VudENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBVc2VyRXZlbnRUeXBlVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9FbnVtcy91c2VyLWV2ZW50LXR5cGUtdHlwZS5lbnVtJztcbmltcG9ydCB7XG4gIEFwcEV2ZW50VHlwZUVudW0sXG4gIEJhbmtBY2NvdW50LCBCYW5rQ29ubmVjdGlvbiwgQmFzaXFKb2JSZXNwb25zZSxcbiAgTm90aWZpY2F0aW9uXG59IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQFRPRE8gdmlrIG1vdmUgcmVtb3ZlQmFzaXEgaGVyZSBmcm9tIGNvbm5lY3Rpb25TZXJ2aWNlXG4gKiBiYXNpcSBpcyBhIG1pZGRsZW1hbiBiZXR3ZWVuIGJhbmsgYW5kIHVzZXJcbiAqIHNlcnZpY2UgaXMgcmVzcG9uc2libGUgZm9yIGZldGNoaW5nIGJhbmsgcmVsYXRlZCBpbmZvcm1hdGlvblxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBCYXNpcVNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxCYW5rQWNjb3VudEJhc2UsIEJhbmtBY2NvdW50LCBCYW5rQWNjb3VudENvbGxlY3Rpb24+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICBzdGF0aWMgYmFzaXFBcGlVcmwgPSAnaHR0cHM6Ly9hdS1hcGkuYmFzaXEuaW8nO1xuICBzdGF0aWMgYmFzaXFDb25zZW50VXJsID0gJ2h0dHBzOi8vY29uc2VudC5iYXNpcS5pby9ob21lJztcblxuICAvKipcbiAgICogQmFzaXEgZG9lcyBub3QgcHJvdmlkZSBhIGhvb2ssIHNvIHdlIGhhdmUgdG8gY2hlY2sgam9iIHN0YXR1cyBtYW51YWxseSBldmVyeSB4IHNlY29uZHNcbiAgICovXG4gIHN0YXRpYyByZXRyaWV2ZUFjY291bnRzQ2hlY2tJbnRlcnZhbCA9IDMwMDA7XG5cbiAgLyoqXG4gICAqIEhvdyBsb25nIHdlIHdpbGwgd2FpdCBhY2NvdW50cyByZXRyaWV2aW5nLCBicmVhayBhZnRlciB0aW1lb3V0IGlmIG5vdCByZXRpcmV2ZWRcbiAgICovXG4gIHN0YXRpYyByZXRyaWV2ZUFjY291bnRzVGltZW91dCA9IDIwMDAwO1xuXG4gIC8qKlxuICAgKiBGbGFnIHNob3dzIHJldHJpZXZlIGFjY291bnRzIHRpbWUgaXMgb3V0XG4gICAqL1xuICBpc1JldHJpZXZlQWNjb3VudHNUaW1lT3V0OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaW1lb3V0IGZvciByZXRyaWV2ZSBhY2NvdW50cyBzdGF0dXMgY2hlY2tpbmcuXG4gICAqIFN0b3Agd2F0Y2ggcmV0cmlldmUgYWNjb3VudHMgc3RhdHVzIHdoZW4gdGltZSBpcyBvdXQuXG4gICAqL1xuICByZXRyaWV2ZUFjY291bnRzVGltZXI7XG5cbiAgcHJvdGVjdGVkIGVuZHBvaW50VXJpID0gJ2Jhc2lxL2FjY291bnRzJztcbiAgY29sbGVjdGlvbkNsYXNzOiB0eXBlb2YgQmFua0FjY291bnRDb2xsZWN0aW9uID0gQmFua0FjY291bnRDb2xsZWN0aW9uO1xuICBtb2RlbENsYXNzOiB0eXBlb2YgQmFua0FjY291bnQgPSBCYW5rQWNjb3VudDtcbiAgZGlzYWJsZWRNZXRob2RzOiBSZXN0TWV0aG9kW10gPSBbJ3Bvc3QnLCAncG9zdEJhdGNoJywgJ3B1dCcsICdwdXRCYXRjaCcsICdkZWxldGUnLCAnZGVsZXRlQmF0Y2gnXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogYW55LFxuICAgIC8vIHRoaXMgaW5qZWN0IHJlcXVpcmVkIHRvIGluaXQgYmFuayBjb25uZWN0aW9uIHNlcnZpY2UgYW5kIGxpc3RlbiBiYXNpcSBsb2dpbiBldmVudFxuICAgIHByaXZhdGUgYmFua0Nvbm5lY3Rpb25TZXJ2aWNlOiBCYW5rQ29ubmVjdGlvblNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoZW52aXJvbm1lbnQpO1xuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIGV2ZW50cyBmcm9tIEV2ZW50IERpc3BhdGNoZXIgc2VydmljZVxuICAgKi9cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuTm90aWZpY2F0aW9ucygpO1xuICB9XG5cbiAgLyoqXG4gICAqIHJlbW92ZSBiYXNpcSBjb25uZWN0aW9uIHRvIGNyZWF0ZSBhIG5ldyBvbmUgKGJlY2F1c2UgYmFzaXEgaGFzIG5vIHVwZGF0ZSBvcHRpb24pLFxuICAgKiB1c2VkIGZvciB1cGdyYWRlIHRvIG9wZW5CYW5raW5nIGFuZCBtYW5hZ2Ugc2hhcmVkIGJhbmsgYWNjb3VudHMgZmxvd1xuICAgKi9cbiAgZGVsZXRlQmFzaXEoY29ubmVjdGlvbjogQmFua0Nvbm5lY3Rpb24pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2JhbmstY29ubmVjdGlvbnMvJHtjb25uZWN0aW9uLmlkfS9yZW1vdmUtYmFzaXFgLCB7fSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGNvbm5lY3Rpb24pID0+XG4gICAgICAgICAgY29ubmVjdGlvblxuICAgICAgICAgIC8vIEBUT0RPIEFsZXggdG9rZW4gc2hvdWxkIGJlIGluc2lkZSB0aGlzIHNlcnZpY2VcbiAgICAgICAgICAvLyB0aGlzLnJlZGlyZWN0VG9CYXNpcUNvbnNlbnQodG9rZW4udmFsdWUsIGNvbm5lY3Rpb24uYmFuay5leHRlcm5hbElkLCB0cnVlKTtcbiAgICAgICAgKVxuICAgICAgKTtcbiAgfVxuXG4gIHJldm9rZUNvbnNlbnQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS9iYXNpcS9jb25zZW50YCk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbiBiYXNpcSBjb25zZW50IHVpIHRvIGFsbG93IHVzZXIgdG8gbG9nIGluIHRvIGJhbmtcbiAgICogQHBhcmFtIHRva2VuIFVzZXIncyBiYXNpcSB0b2tlblxuICAgKiBAcGFyYW0gYmFua0lkIEV4dGVybmFsIGlkIG9mIHNlbGVjdGVkIGJhbmtcbiAgICogQHBhcmFtIGNvbnNlbnRFeGlzdFxuICAgKi9cbiAgcmVkaXJlY3RUb0Jhc2lxQ29uc2VudCh0b2tlbjogc3RyaW5nLCBiYW5rSWQ6IHN0cmluZywgY29uc2VudEV4aXN0ID0gZmFsc2UpOiB2b2lkIHtcbiAgICAvLyBrZWVwIGJhbmsgaWQgYmVjYXVzZSB3ZSBuZWVkIGl0IGFmdGVyIHJlZGlyZWN0IGZyb20gYmFzaXFcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYmFzaXFCYW5rSWQnLCBiYW5rSWQpO1xuICAgIHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKGAke0Jhc2lxU2VydmljZS5iYXNpcUNvbnNlbnRVcmx9P3Rva2VuPSR7dG9rZW59Jmluc3RpdHV0aW9uSWQ9JHtiYW5rSWR9JHtjb25zZW50RXhpc3QgPyAnJmFjdGlvbj1jb25uZWN0JyA6ICcnfWApO1xuICB9XG5cbiAgLyoqXG4gICAqIHJlZGlyZWN0IHRvIGJhc2lxIGV4dGVuZCBjb25zZW50IGRhdGUgdG8gcHJvbG9uZyBpdFxuICAgKi9cbiAgZXh0ZW5kQ29uc2VudCh0b2tlbjogc3RyaW5nKTogdm9pZCB7XG4gICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoYCR7QmFzaXFTZXJ2aWNlLmJhc2lxQ29uc2VudFVybH0/dG9rZW49JHt0b2tlbn0mYWN0aW9uPWV4dGVuZGApO1xuICB9XG5cbiAgLyoqXG4gICAqIHJlZGlyZWN0IHRvIGJhc2lxIGV4dGVuZCBjb25uZWN0aW9uIGRhdGUgdG8gcHJvbG9uZyBpdFxuICAgKi9cbiAgcmVhdXRob3Jpc2VDb25uZWN0aW9uKHRva2VuOiBzdHJpbmcsIGNvbm5lY3Rpb246IEJhbmtDb25uZWN0aW9uKTogdm9pZCB7XG4gICAgbGV0IHVybCA9IGAke0Jhc2lxU2VydmljZS5iYXNpcUNvbnNlbnRVcmx9P3Rva2VuPSR7dG9rZW59JmFjdGlvbj1yZWF1dGhvcmlzZWA7XG4gICAgaWYgKGNvbm5lY3Rpb24uaXNFeHBpcmluZygpKSB7XG4gICAgICB1cmwgKz0gYCZjb25uZWN0aW9uSWQ9JHtjb25uZWN0aW9uLmV4dGVybmFsSWR9YDtcbiAgICB9XG4gICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UodXJsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVuIGJhc2lxIGNvbnNlbnQgdWkgdG8gYWxsb3cgdXNlciB0byBtYW5hZ2UgYmFzaXEgYWNjZXNzIHRvIGhpcyBiYW5rIGRhdGFcbiAgICogQHBhcmFtIHRva2VuIFVzZXIncyBiYXNpcSB0b2tlblxuICAgKi9cbiAgcmVkaXJlY3RUb0Jhc2lxUmV2b2tlKHRva2VuOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB3aW5kb3cubG9jYXRpb24ucmVwbGFjZShgJHtCYXNpcVNlcnZpY2UuYmFzaXFDb25zZW50VXJsfT90b2tlbj0ke3Rva2VufSZhY3Rpb249bWFuYWdlYCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IEJhc2lxIGpvYiByZXN1bHRcbiAgICovXG4gIHJldHJpZXZlSm9iKGpvYklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEJhc2lxSm9iUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHtCYXNpcVNlcnZpY2UuYmFzaXFBcGlVcmx9L2pvYnMvJHtqb2JJZH1gKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IG9iamVjdCkgPT4gcGxhaW5Ub0NsYXNzKEJhc2lxSm9iUmVzcG9uc2UsIHJlc3BvbnNlKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gbm90IHVzZWQsIHJlbW92ZT9cbiAgICogUmVjb3Vyc2l2ZSBtZXRob2QsIHdhdGNoIGJhc2lxIGpvYiByZXRyaWV2ZSBhY2NvdW50cyBzdGF0dXNcbiAgICogQHBhcmFtIGpvYklkIGlkIG9mIGJhc2lxIGpvYiB0byBjaGVja1xuICAgKiBAcmV0dXJucyBvYnNlcnZhYmxlIGJvb2xlYW4uIFRydWUgLSBhY2NvdW50cyByZXRyaWV2ZWQsIGZhbHNlIC0gYWNjb3VudHMgbm90IHJldHJpZXZlZCAodGltZSBpcyBvdXQpXG4gICAqL1xuICB3YXRjaEJhbmtBY2NvdW50c1JldHJpZXZlZChqb2JJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgLy8gaW5pdCB0aW1lb3V0IGZvciB0aGUgZmlyc3QgaXRlcmF0aW9uIG9mIHJlY291cnNpb25cbiAgICBpZiAoIXRoaXMucmV0cmlldmVBY2NvdW50c1RpbWVyKSB7XG4gICAgICB0aGlzLmlzUmV0cmlldmVBY2NvdW50c1RpbWVPdXQgPSBmYWxzZTtcblxuICAgICAgdGhpcy5yZXRyaWV2ZUFjY291bnRzVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5pc1JldHJpZXZlQWNjb3VudHNUaW1lT3V0ID0gdHJ1ZTtcbiAgICAgIH0sIEJhc2lxU2VydmljZS5yZXRyaWV2ZUFjY291bnRzVGltZW91dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucmV0cmlldmVKb2Ioam9iSWQpXG4gICAgICAucGlwZShcbiAgICAgICAgLy8gY29udGludWUgd2hlbiB0aW1lIGlzIG91dCBvciB3aGVuIGFjY291bnRzIHJldGlyZXZlZCBzdWNjZXNzZnVsbHlcbiAgICAgICAgZmlsdGVyKChyZXNwb25zZTogQmFzaXFKb2JSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIC8vIHN0b3Agd2F0Y2hlciB3aGVuIGFjY291bnRzIHJldHJpZXZlZCBzdWNjZXNzZnVsbHkgb3IgdGltZSBpcyBvdXRcbiAgICAgICAgICBpZiAodGhpcy5pc1JldHJpZXZlQWNjb3VudHNUaW1lT3V0IHx8IHJlc3BvbnNlLmdldFJldHJpZXZlQWNjb3VudHNTdGVwKCkuaXNTdWNjZXNzKCkpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJldHJpZXZlQWNjb3VudHNUaW1lcik7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBjb250aW51ZSB3YXRjaCByZXRyaWV2ZSBhY2NvdW50cyBzdGF0dXNcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMud2F0Y2hCYW5rQWNjb3VudHNSZXRyaWV2ZWQoam9iSWQpO1xuICAgICAgICAgIH0sIEJhc2lxU2VydmljZS5yZXRyaWV2ZUFjY291bnRzQ2hlY2tJbnRlcnZhbCk7XG5cbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH0pLFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBCYXNpcUpvYlJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgLy8gbm8gbmVlZCB0byBrZWVwIGJhbmsgaWQgYW55bW9yZVxuICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdiYXNpcUJhbmtJZCcpO1xuXG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmdldFJldHJpZXZlQWNjb3VudHNTdGVwKCkuaXNTdWNjZXNzKCk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIGxpc3RlbiB0byBub3RpZmljYXRpb25zIHRvIHVwZGF0ZSBiYXNpcSBhY2NvdW50cyBsaXN0XG4gICAqL1xuICBwcml2YXRlIGxpc3Rlbk5vdGlmaWNhdGlvbnMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uTk9USUZJQ0FUSU9OX0FEREVEKS5zdWJzY3JpYmUoKG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uKTogdm9pZCA9PiB7XG4gICAgICBpZiAoIW5vdGlmaWNhdGlvbi5pc1JlYWQgJiYgbm90aWZpY2F0aW9uLmV2ZW50VHlwZSA9PT0gVXNlckV2ZW50VHlwZVR5cGVFbnVtLkJBU0lRX05FV19BQ0NPVU5UUykge1xuICAgICAgICB0aGlzLnJlZnJlc2hDYWNoZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaXEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9odHRwL2JhbmsvYmFzaXEvYmFzaXEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFLckQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsV0FBVyxFQUFrQixnQkFBZ0IsRUFFOUMsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7QUFHNUI7Ozs7R0FJRztBQUlILE1BQU0sT0FBUSxZQUFhLFNBQVEsV0FBZ0U7YUFDMUYsZ0JBQVcsR0FBRyx5QkFBeUIsQUFBNUIsQ0FBNkI7YUFDeEMsb0JBQWUsR0FBRywrQkFBK0IsQUFBbEMsQ0FBbUM7SUFFekQ7O09BRUc7YUFDSSxrQ0FBNkIsR0FBRyxJQUFJLEFBQVAsQ0FBUTtJQUU1Qzs7T0FFRzthQUNJLDRCQUF1QixHQUFHLEtBQUssQUFBUixDQUFTO0lBa0J2QyxZQUNZLElBQWdCLEVBQ2hCLHNCQUE4QyxFQUN2QixXQUFnQjtJQUNqRCxvRkFBb0Y7SUFDNUUscUJBQTRDO1FBRXBELEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQU5ULFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtR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QUNqSCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sSUFBSSxZQUFZLENBQUMsU0FBUyxLQUFLLHFCQUFxQixDQUFDLGtCQUFrQixFQUFFO2dCQUMvRixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7YUFDckI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBdEtXLFlBQVksa0ZBaUNkLGFBQWE7bUhBakNYLFlBQVksY0FGWixNQUFNOzs0RkFFTixZQUFZO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBa0NJLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudCBhcyBCYW5rQWNjb3VudEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgUmVzdE1ldGhvZCwgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9yZXN0JztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgRXZlbnREaXNwYXRjaGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2V2ZW50JztcbmltcG9ydCB7IEJhbmtDb25uZWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2JhbmstY29ubmVjdGlvbic7XG5pbXBvcnQgeyBCYW5rQWNjb3VudENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBVc2VyRXZlbnRUeXBlVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9FbnVtcy91c2VyLWV2ZW50LXR5cGUtdHlwZS5lbnVtJztcbmltcG9ydCB7XG4gIEFwcEV2ZW50VHlwZUVudW0sXG4gIEJhbmtBY2NvdW50LCBCYW5rQ29ubmVjdGlvbiwgQmFzaXFKb2JSZXNwb25zZSxcbiAgTm90aWZpY2F0aW9uXG59IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQFRPRE8gdmlrIG1vdmUgcmVtb3ZlQmFzaXEgaGVyZSBmcm9tIGNvbm5lY3Rpb25TZXJ2aWNlXG4gKiBiYXNpcSBpcyBhIG1pZGRsZW1hbiBiZXR3ZWVuIGJhbmsgYW5kIHVzZXJcbiAqIHNlcnZpY2UgaXMgcmVzcG9uc2libGUgZm9yIGZldGNoaW5nIGJhbmsgcmVsYXRlZCBpbmZvcm1hdGlvblxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCAgY2xhc3MgQmFzaXFTZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8QmFua0FjY291bnRCYXNlLCBCYW5rQWNjb3VudCwgQmFua0FjY291bnRDb2xsZWN0aW9uPiBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgc3RhdGljIGJhc2lxQXBpVXJsID0gJ2h0dHBzOi8vYXUtYXBpLmJhc2lxLmlvJztcbiAgc3RhdGljIGJhc2lxQ29uc2VudFVybCA9ICdodHRwczovL2NvbnNlbnQuYmFzaXEuaW8vaG9tZSc7XG5cbiAgLyoqXG4gICAqIEJhc2lxIGRvZXMgbm90IHByb3ZpZGUgYSBob29rLCBzbyB3ZSBoYXZlIHRvIGNoZWNrIGpvYiBzdGF0dXMgbWFudWFsbHkgZXZlcnkgeCBzZWNvbmRzXG4gICAqL1xuICBzdGF0aWMgcmV0cmlldmVBY2NvdW50c0NoZWNrSW50ZXJ2YWwgPSAzMDAwO1xuXG4gIC8qKlxuICAgKiBIb3cgbG9uZyB3ZSB3aWxsIHdhaXQgYWNjb3VudHMgcmV0cmlldmluZywgYnJlYWsgYWZ0ZXIgdGltZW91dCBpZiBub3QgcmV0aXJldmVkXG4gICAqL1xuICBzdGF0aWMgcmV0cmlldmVBY2NvdW50c1RpbWVvdXQgPSAyMDAwMDtcblxuICAvKipcbiAgICogRmxhZyBzaG93cyByZXRyaWV2ZSBhY2NvdW50cyB0aW1lIGlzIG91dFxuICAgKi9cbiAgaXNSZXRyaWV2ZUFjY291bnRzVGltZU91dDogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGltZW91dCBmb3IgcmV0cmlldmUgYWNjb3VudHMgc3RhdHVzIGNoZWNraW5nLlxuICAgKiBTdG9wIHdhdGNoIHJldHJpZXZlIGFjY291bnRzIHN0YXR1cyB3aGVuIHRpbWUgaXMgb3V0LlxuICAgKi9cbiAgcmV0cmlldmVBY2NvdW50c1RpbWVyO1xuXG4gIHByb3RlY3RlZCBlbmRwb2ludFVyaSA9ICdiYXNpcS9hY2NvdW50cyc7XG4gIGNvbGxlY3Rpb25DbGFzczogdHlwZW9mIEJhbmtBY2NvdW50Q29sbGVjdGlvbiA9IEJhbmtBY2NvdW50Q29sbGVjdGlvbjtcbiAgbW9kZWxDbGFzczogdHlwZW9mIEJhbmtBY2NvdW50ID0gQmFua0FjY291bnQ7XG4gIGRpc2FibGVkTWV0aG9kczogUmVzdE1ldGhvZFtdID0gWydwb3N0JywgJ3Bvc3RCYXRjaCcsICdwdXQnLCAncHV0QmF0Y2gnLCAnZGVsZXRlJywgJ2RlbGV0ZUJhdGNoJ107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJvdGVjdGVkIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2U6IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgZW52aXJvbm1lbnQ6IGFueSxcbiAgICAvLyB0aGlzIGluamVjdCByZXF1aXJlZCB0byBpbml0IGJhbmsgY29ubmVjdGlvbiBzZXJ2aWNlIGFuZCBsaXN0ZW4gYmFzaXEgbG9naW4gZXZlbnRcbiAgICBwcml2YXRlIGJhbmtDb25uZWN0aW9uU2VydmljZTogQmFua0Nvbm5lY3Rpb25TZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKGVudmlyb25tZW50KTtcbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiBldmVudHMgZnJvbSBFdmVudCBEaXNwYXRjaGVyIHNlcnZpY2VcbiAgICovXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3Rlbk5vdGlmaWNhdGlvbnMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiByZW1vdmUgYmFzaXEgY29ubmVjdGlvbiB0byBjcmVhdGUgYSBuZXcgb25lIChiZWNhdXNlIGJhc2lxIGhhcyBubyB1cGRhdGUgb3B0aW9uKSxcbiAgICogdXNlZCBmb3IgdXBncmFkZSB0byBvcGVuQmFua2luZyBhbmQgbWFuYWdlIHNoYXJlZCBiYW5rIGFjY291bnRzIGZsb3dcbiAgICovXG4gIGRlbGV0ZUJhc2lxKGNvbm5lY3Rpb246IEJhbmtDb25uZWN0aW9uKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS9iYW5rLWNvbm5lY3Rpb25zLyR7Y29ubmVjdGlvbi5pZH0vcmVtb3ZlLWJhc2lxYCwge30pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChjb25uZWN0aW9uKSA9PlxuICAgICAgICAgIGNvbm5lY3Rpb25cbiAgICAgICAgICAvLyBAVE9ETyBBbGV4IHRva2VuIHNob3VsZCBiZSBpbnNpZGUgdGhpcyBzZXJ2aWNlXG4gICAgICAgICAgLy8gdGhpcy5yZWRpcmVjdFRvQmFzaXFDb25zZW50KHRva2VuLnZhbHVlLCBjb25uZWN0aW9uLmJhbmsuZXh0ZXJuYWxJZCwgdHJ1ZSk7XG4gICAgICAgIClcbiAgICAgICk7XG4gIH1cblxuICByZXZva2VDb25zZW50KCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vYmFzaXEvY29uc2VudGApO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW4gYmFzaXEgY29uc2VudCB1aSB0byBhbGxvdyB1c2VyIHRvIGxvZyBpbiB0byBiYW5rXG4gICAqIEBwYXJhbSB0b2tlbiBVc2VyJ3MgYmFzaXEgdG9rZW5cbiAgICogQHBhcmFtIGJhbmtJZCBFeHRlcm5hbCBpZCBvZiBzZWxlY3RlZCBiYW5rXG4gICAqIEBwYXJhbSBjb25zZW50RXhpc3RcbiAgICovXG4gIHJlZGlyZWN0VG9CYXNpcUNvbnNlbnQodG9rZW46IHN0cmluZywgYmFua0lkOiBzdHJpbmcsIGNvbnNlbnRFeGlzdCA9IGZhbHNlKTogdm9pZCB7XG4gICAgLy8ga2VlcCBiYW5rIGlkIGJlY2F1c2Ugd2UgbmVlZCBpdCBhZnRlciByZWRpcmVjdCBmcm9tIGJhc2lxXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2Jhc2lxQmFua0lkJywgYmFua0lkKTtcbiAgICB3aW5kb3cubG9jYXRpb24ucmVwbGFjZShgJHtCYXNpcVNlcnZpY2UuYmFzaXFDb25zZW50VXJsfT90b2tlbj0ke3Rva2VufSZpbnN0aXR1dGlvbklkPSR7YmFua0lkfSR7Y29uc2VudEV4aXN0ID8gJyZhY3Rpb249Y29ubmVjdCcgOiAnJ31gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiByZWRpcmVjdCB0byBiYXNpcSBleHRlbmQgY29uc2VudCBkYXRlIHRvIHByb2xvbmcgaXRcbiAgICovXG4gIGV4dGVuZENvbnNlbnQodG9rZW46IHN0cmluZyk6IHZvaWQge1xuICAgIHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKGAke0Jhc2lxU2VydmljZS5iYXNpcUNvbnNlbnRVcmx9P3Rva2VuPSR7dG9rZW59JmFjdGlvbj1leHRlbmRgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiByZWRpcmVjdCB0byBiYXNpcSBleHRlbmQgY29ubmVjdGlvbiBkYXRlIHRvIHByb2xvbmcgaXRcbiAgICovXG4gIHJlYXV0aG9yaXNlQ29ubmVjdGlvbih0b2tlbjogc3RyaW5nLCBjb25uZWN0aW9uOiBCYW5rQ29ubmVjdGlvbik6IHZvaWQge1xuICAgIGxldCB1cmwgPSBgJHtCYXNpcVNlcnZpY2UuYmFzaXFDb25zZW50VXJsfT90b2tlbj0ke3Rva2VufSZhY3Rpb249cmVhdXRob3Jpc2VgO1xuICAgIGlmIChjb25uZWN0aW9uLmlzRXhwaXJpbmcoKSkge1xuICAgICAgdXJsICs9IGAmY29ubmVjdGlvbklkPSR7Y29ubmVjdGlvbi5leHRlcm5hbElkfWA7XG4gICAgfVxuICAgIHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKHVybCk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbiBiYXNpcSBjb25zZW50IHVpIHRvIGFsbG93IHVzZXIgdG8gbWFuYWdlIGJhc2lxIGFjY2VzcyB0byBoaXMgYmFuayBkYXRhXG4gICAqIEBwYXJhbSB0b2tlbiBVc2VyJ3MgYmFzaXEgdG9rZW5cbiAgICovXG4gIHJlZGlyZWN0VG9CYXNpcVJldm9rZSh0b2tlbjogc3RyaW5nKTogdm9pZCB7XG4gICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoYCR7QmFzaXFTZXJ2aWNlLmJhc2lxQ29uc2VudFVybH0/dG9rZW49JHt0b2tlbn0mYWN0aW9uPW1hbmFnZWApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBCYXNpcSBqb2IgcmVzdWx0XG4gICAqL1xuICByZXRyaWV2ZUpvYihqb2JJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxCYXNpcUpvYlJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7QmFzaXFTZXJ2aWNlLmJhc2lxQXBpVXJsfS9qb2JzLyR7am9iSWR9YClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3QpID0+IHBsYWluVG9DbGFzcyhCYXNpcUpvYlJlc3BvbnNlLCByZXNwb25zZSkpXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIG5vdCB1c2VkLCByZW1vdmU/XG4gICAqIFJlY291cnNpdmUgbWV0aG9kLCB3YXRjaCBiYXNpcSBqb2IgcmV0cmlldmUgYWNjb3VudHMgc3RhdHVzXG4gICAqIEBwYXJhbSBqb2JJZCBpZCBvZiBiYXNpcSBqb2IgdG8gY2hlY2tcbiAgICogQHJldHVybnMgb2JzZXJ2YWJsZSBib29sZWFuLiBUcnVlIC0gYWNjb3VudHMgcmV0cmlldmVkLCBmYWxzZSAtIGFjY291bnRzIG5vdCByZXRyaWV2ZWQgKHRpbWUgaXMgb3V0KVxuICAgKi9cbiAgd2F0Y2hCYW5rQWNjb3VudHNSZXRyaWV2ZWQoam9iSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIC8vIGluaXQgdGltZW91dCBmb3IgdGhlIGZpcnN0IGl0ZXJhdGlvbiBvZiByZWNvdXJzaW9uXG4gICAgaWYgKCF0aGlzLnJldHJpZXZlQWNjb3VudHNUaW1lcikge1xuICAgICAgdGhpcy5pc1JldHJpZXZlQWNjb3VudHNUaW1lT3V0ID0gZmFsc2U7XG5cbiAgICAgIHRoaXMucmV0cmlldmVBY2NvdW50c1RpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNSZXRyaWV2ZUFjY291bnRzVGltZU91dCA9IHRydWU7XG4gICAgICB9LCBCYXNpcVNlcnZpY2UucmV0cmlldmVBY2NvdW50c1RpbWVvdXQpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnJldHJpZXZlSm9iKGpvYklkKVxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIGNvbnRpbnVlIHdoZW4gdGltZSBpcyBvdXQgb3Igd2hlbiBhY2NvdW50cyByZXRpcmV2ZWQgc3VjY2Vzc2Z1bGx5XG4gICAgICAgIGZpbHRlcigocmVzcG9uc2U6IEJhc2lxSm9iUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAvLyBzdG9wIHdhdGNoZXIgd2hlbiBhY2NvdW50cyByZXRyaWV2ZWQgc3VjY2Vzc2Z1bGx5IG9yIHRpbWUgaXMgb3V0XG4gICAgICAgICAgaWYgKHRoaXMuaXNSZXRyaWV2ZUFjY291bnRzVGltZU91dCB8fCByZXNwb25zZS5nZXRSZXRyaWV2ZUFjY291bnRzU3RlcCgpLmlzU3VjY2VzcygpKSB7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5yZXRyaWV2ZUFjY291bnRzVGltZXIpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gY29udGludWUgd2F0Y2ggcmV0cmlldmUgYWNjb3VudHMgc3RhdHVzXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLndhdGNoQmFua0FjY291bnRzUmV0cmlldmVkKGpvYklkKTtcbiAgICAgICAgICB9LCBCYXNpcVNlcnZpY2UucmV0cmlldmVBY2NvdW50c0NoZWNrSW50ZXJ2YWwpO1xuXG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9KSxcbiAgICAgICAgbWFwKChyZXNwb25zZTogQmFzaXFKb2JSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIC8vIG5vIG5lZWQgdG8ga2VlcCBiYW5rIGlkIGFueW1vcmVcbiAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgnYmFzaXFCYW5rSWQnKTtcblxuICAgICAgICAgIHJldHVybiByZXNwb25zZS5nZXRSZXRyaWV2ZUFjY291bnRzU3RlcCgpLmlzU3VjY2VzcygpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBsaXN0ZW4gdG8gbm90aWZpY2F0aW9ucyB0byB1cGRhdGUgYmFzaXEgYWNjb3VudHMgbGlzdFxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Ob3RpZmljYXRpb25zKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLk5PVElGSUNBVElPTl9BRERFRCkuc3Vic2NyaWJlKChub3RpZmljYXRpb246IE5vdGlmaWNhdGlvbik6IHZvaWQgPT4ge1xuICAgICAgaWYgKCFub3RpZmljYXRpb24uaXNSZWFkICYmIG5vdGlmaWNhdGlvbi5ldmVudFR5cGUgPT09IFVzZXJFdmVudFR5cGVUeXBlRW51bS5CQVNJUV9ORVdfQUNDT1VOVFMpIHtcbiAgICAgICAgdGhpcy5yZWZyZXNoQ2FjaGUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -3,6 +3,8 @@ import { SoleDetails } from '../../../../models';
3
3
  import { RestService } from '../../rest';
4
4
  import { Collection } from '../../../../collections';
5
5
  import { UserRolesEnum } from 'taxtank-core/common';
6
+ import { map } from 'rxjs/operators';
7
+ import { plainToClass } from 'class-transformer';
6
8
  import * as i0 from "@angular/core";
7
9
  /**
8
10
  * @TODO TT-1777 Alex: extend from rest service when it refactored
@@ -16,6 +18,9 @@ export class SoleDetailsService extends RestService {
16
18
  this.disabledMethods = ['postBatch', 'putBatch', 'deleteBatch'];
17
19
  this.roles = [UserRolesEnum.SOLE_TANK];
18
20
  }
21
+ get() {
22
+ return super.get().pipe(map(soleDetails => soleDetails.length ? soleDetails : new Collection([plainToClass(SoleDetails, {})])));
23
+ }
19
24
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SoleDetailsService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
20
25
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SoleDetailsService, providedIn: 'root' }); }
21
26
  }
@@ -25,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
25
30
  providedIn: 'root'
26
31
  }]
27
32
  }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1kZXRhaWxzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9zb2xlL3NvbGUtZGV0YWlscy9zb2xlLWRldGFpbHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRXBEOztHQUVHO0FBSUgsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFdBQWtFO0lBSDFHOztRQUlFLGVBQVUsR0FBRyxXQUFXLENBQUM7UUFDekIsb0JBQWUsR0FBRyxVQUFVLENBQUM7UUFDN0IsZ0JBQVcsR0FBRyxjQUFjLENBQUM7UUFDN0Isb0JBQWUsR0FBaUIsQ0FBQyxXQUFXLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3pFLFVBQUssR0FBRyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUNuQzsrR0FOWSxrQkFBa0I7bUhBQWxCLGtCQUFrQixjQUZqQixNQUFNOzs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU29sZURldGFpbHMgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgU29sZURldGFpbHMgYXMgU29sZURldGFpbHNCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGIvTW9kZWxzL3NvbGUvc29sZS1kZXRhaWxzJztcbmltcG9ydCB7IFJlc3RNZXRob2QsIFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcmVzdCc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgVXNlclJvbGVzRW51bSB9IGZyb20gJ3RheHRhbmstY29yZS9jb21tb24nO1xuXG4vKipcbiAqIEBUT0RPIFRULTE3NzcgQWxleDogZXh0ZW5kIGZyb20gcmVzdCBzZXJ2aWNlIHdoZW4gaXQgcmVmYWN0b3JlZFxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTb2xlRGV0YWlsc1NlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxTb2xlRGV0YWlsc0Jhc2UsIFNvbGVEZXRhaWxzLCBDb2xsZWN0aW9uPFNvbGVEZXRhaWxzPj4ge1xuICBtb2RlbENsYXNzID0gU29sZURldGFpbHM7XG4gIGNvbGxlY3Rpb25DbGFzcyA9IENvbGxlY3Rpb247XG4gIGVuZHBvaW50VXJpID0gJ3NvbGUtZGV0YWlscyc7XG4gIGRpc2FibGVkTWV0aG9kczogUmVzdE1ldGhvZFtdID0gWydwb3N0QmF0Y2gnLCAncHV0QmF0Y2gnLCAnZGVsZXRlQmF0Y2gnXTtcbiAgcm9sZXMgPSBbVXNlclJvbGVzRW51bS5TT0xFX1RBTktdO1xufVxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1kZXRhaWxzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9zb2xlL3NvbGUtZGV0YWlscy9zb2xlLWRldGFpbHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFcEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFakQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsV0FBa0U7SUFIMUc7O1FBSUUsZUFBVSxHQUFHLFdBQVcsQ0FBQztRQUN6QixvQkFBZSxHQUFHLFVBQVUsQ0FBQztRQUM3QixnQkFBVyxHQUFHLGNBQWMsQ0FBQztRQUM3QixvQkFBZSxHQUFpQixDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDekUsVUFBSyxHQUFHLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0tBS25DO0lBSEMsR0FBRztRQUNELE9BQU8sS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxDQUFDLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xJLENBQUM7K0dBVFUsa0JBQWtCO21IQUFsQixrQkFBa0IsY0FGakIsTUFBTTs7NEZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNvbGVEZXRhaWxzIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFNvbGVEZXRhaWxzIGFzIFNvbGVEZXRhaWxzQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL01vZGVscy9zb2xlL3NvbGUtZGV0YWlscyc7XG5pbXBvcnQgeyBSZXN0TWV0aG9kLCBSZXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3Jlc3QnO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IFVzZXJSb2xlc0VudW0gfSBmcm9tICd0YXh0YW5rLWNvcmUvY29tbW9uJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuLyoqXG4gKiBAVE9ETyBUVC0xNzc3IEFsZXg6IGV4dGVuZCBmcm9tIHJlc3Qgc2VydmljZSB3aGVuIGl0IHJlZmFjdG9yZWRcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU29sZURldGFpbHNTZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8U29sZURldGFpbHNCYXNlLCBTb2xlRGV0YWlscywgQ29sbGVjdGlvbjxTb2xlRGV0YWlscz4+IHtcbiAgbW9kZWxDbGFzcyA9IFNvbGVEZXRhaWxzO1xuICBjb2xsZWN0aW9uQ2xhc3MgPSBDb2xsZWN0aW9uO1xuICBlbmRwb2ludFVyaSA9ICdzb2xlLWRldGFpbHMnO1xuICBkaXNhYmxlZE1ldGhvZHM6IFJlc3RNZXRob2RbXSA9IFsncG9zdEJhdGNoJywgJ3B1dEJhdGNoJywgJ2RlbGV0ZUJhdGNoJ107XG4gIHJvbGVzID0gW1VzZXJSb2xlc0VudW0uU09MRV9UQU5LXTtcblxuICBnZXQoKTogT2JzZXJ2YWJsZTxDb2xsZWN0aW9uPFNvbGVEZXRhaWxzPj4ge1xuICAgIHJldHVybiBzdXBlci5nZXQoKS5waXBlKG1hcChzb2xlRGV0YWlscyA9PiBzb2xlRGV0YWlscy5sZW5ndGggPyBzb2xlRGV0YWlscyA6IG5ldyBDb2xsZWN0aW9uKFtwbGFpblRvQ2xhc3MoU29sZURldGFpbHMsIHt9KV0pKSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { DatePipe } from '@angular/common';
2
+ /**
3
+ * Validation function, that checks If date form value is more than provided date
4
+ */
5
+ export function maxDateValidator(date, message = `The date should not be after ${new DatePipe('en-US').transform(date)}`) {
6
+ return (control) => {
7
+ if (!control.value) {
8
+ return null;
9
+ }
10
+ // form control value can be as a Moment object - we wrap it in "new Date()" to work with it like with JS Date
11
+ if (new Date(control.value) <= new Date(date)) {
12
+ return null;
13
+ }
14
+ return { minDate: message };
15
+ };
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LWRhdGUudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3ZhbGlkYXRvcnMvZGF0ZS9tYXgtZGF0ZS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTNDOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixJQUFVLEVBQ1YsVUFBa0IsZ0NBQWdDLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtJQUV6RixPQUFPLENBQUMsT0FBd0IsRUFBb0IsRUFBRTtRQUNwRCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRTtZQUNsQixPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsOEdBQThHO1FBQzlHLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzlCLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG4vKipcbiAqIFZhbGlkYXRpb24gZnVuY3Rpb24sIHRoYXQgY2hlY2tzIElmIGRhdGUgZm9ybSB2YWx1ZSBpcyBtb3JlIHRoYW4gcHJvdmlkZWQgZGF0ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gbWF4RGF0ZVZhbGlkYXRvcihcbiAgZGF0ZTogRGF0ZSxcbiAgbWVzc2FnZTogc3RyaW5nID0gYFRoZSBkYXRlIHNob3VsZCBub3QgYmUgYWZ0ZXIgJHtuZXcgRGF0ZVBpcGUoJ2VuLVVTJykudHJhbnNmb3JtKGRhdGUpfWBcbik6IFZhbGlkYXRvckZuIHtcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzID0+IHtcbiAgICBpZiAoIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIGZvcm0gY29udHJvbCB2YWx1ZSBjYW4gYmUgYXMgYSBNb21lbnQgb2JqZWN0IC0gd2Ugd3JhcCBpdCBpbiBcIm5ldyBEYXRlKClcIiB0byB3b3JrIHdpdGggaXQgbGlrZSB3aXRoIEpTIERhdGVcbiAgICBpZiAobmV3IERhdGUoY29udHJvbC52YWx1ZSkgPD0gbmV3IERhdGUoZGF0ZSkpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB7IG1pbkRhdGU6IG1lc3NhZ2UgfTtcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { DatePipe } from '@angular/common';
2
+ /**
3
+ * Validation function, that checks If date form value is more than provided date
4
+ */
5
+ export function minDateValidator(date, message = `The date should not be before ${new DatePipe('en-US').transform(date)}`) {
6
+ return (control) => {
7
+ if (!control.value) {
8
+ return null;
9
+ }
10
+ // form control value can be as a Moment object - we wrap it in "new Date()" to work with it like with JS Date
11
+ if (new Date(control.value) >= new Date(date)) {
12
+ return null;
13
+ }
14
+ return { minDate: message };
15
+ };
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluLWRhdGUudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3ZhbGlkYXRvcnMvZGF0ZS9taW4tZGF0ZS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTNDOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixJQUFVLEVBQ1YsVUFBa0IsaUNBQWlDLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtJQUUxRixPQUFPLENBQUMsT0FBd0IsRUFBb0IsRUFBRTtRQUNwRCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRTtZQUNsQixPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsOEdBQThHO1FBQzlHLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzlCLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG4vKipcbiAqIFZhbGlkYXRpb24gZnVuY3Rpb24sIHRoYXQgY2hlY2tzIElmIGRhdGUgZm9ybSB2YWx1ZSBpcyBtb3JlIHRoYW4gcHJvdmlkZWQgZGF0ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gbWluRGF0ZVZhbGlkYXRvcihcbiAgZGF0ZTogRGF0ZSxcbiAgbWVzc2FnZTogc3RyaW5nID0gYFRoZSBkYXRlIHNob3VsZCBub3QgYmUgYmVmb3JlICR7bmV3IERhdGVQaXBlKCdlbi1VUycpLnRyYW5zZm9ybShkYXRlKX1gXG4pOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyA9PiB7XG4gICAgaWYgKCFjb250cm9sLnZhbHVlKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvLyBmb3JtIGNvbnRyb2wgdmFsdWUgY2FuIGJlIGFzIGEgTW9tZW50IG9iamVjdCAtIHdlIHdyYXAgaXQgaW4gXCJuZXcgRGF0ZSgpXCIgdG8gd29yayB3aXRoIGl0IGxpa2Ugd2l0aCBKUyBEYXRlXG4gICAgaWYgKG5ldyBEYXRlKGNvbnRyb2wudmFsdWUpID49IG5ldyBEYXRlKGRhdGUpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4geyBtaW5EYXRlOiBtZXNzYWdlIH07XG4gIH07XG59XG4iXX0=
@@ -3,7 +3,8 @@ export * from './autocomplete.validator';
3
3
  export * from './conditional.validator';
4
4
  export * from './password.validator';
5
5
  export * from './password-match.validator';
6
- export * from './min-date/min-date.validator';
6
+ export * from './date/min-date.validator';
7
+ export * from './date/max-date.validator';
7
8
  export * from './fields-sum.validator';
8
9
  export * from './current-fin-year.validator';
9
10
  export * from './file.validator';
@@ -11,4 +12,4 @@ export * from './greater-than.validator';
11
12
  export * from './unique-email.validator';
12
13
  export * from './string/alpha-space.validator';
13
14
  export * from './match-sum.validator';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvdmFsaWRhdG9ycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdC1sZWFzdC1vbmUudmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vYXV0b2NvbXBsZXRlLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL2NvbmRpdGlvbmFsLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL3Bhc3N3b3JkLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL3Bhc3N3b3JkLW1hdGNoLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL21pbi1kYXRlL21pbi1kYXRlLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL2ZpZWxkcy1zdW0udmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vY3VycmVudC1maW4teWVhci52YWxpZGF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9maWxlLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL2dyZWF0ZXItdGhhbi52YWxpZGF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi91bmlxdWUtZW1haWwudmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vc3RyaW5nL2FscGhhLXNwYWNlLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL21hdGNoLXN1bS52YWxpZGF0b3InO1xuIl19
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvdmFsaWRhdG9ycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F0LWxlYXN0LW9uZS52YWxpZGF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRvY29tcGxldGUudmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZGl0aW9uYWwudmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vcGFzc3dvcmQudmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vcGFzc3dvcmQtbWF0Y2gudmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS9taW4tZGF0ZS52YWxpZGF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlL21heC1kYXRlLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL2ZpZWxkcy1zdW0udmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vY3VycmVudC1maW4teWVhci52YWxpZGF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9maWxlLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL2dyZWF0ZXItdGhhbi52YWxpZGF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi91bmlxdWUtZW1haWwudmFsaWRhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vc3RyaW5nL2FscGhhLXNwYWNlLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL21hdGNoLXN1bS52YWxpZGF0b3InO1xuIl19
@@ -14196,6 +14196,9 @@ class SoleDetailsService extends RestService$1 {
14196
14196
  this.disabledMethods = ['postBatch', 'putBatch', 'deleteBatch'];
14197
14197
  this.roles = [UserRolesEnum.SOLE_TANK];
14198
14198
  }
14199
+ get() {
14200
+ return super.get().pipe(map(soleDetails => soleDetails.length ? soleDetails : new Collection([plainToClass(SoleDetails, {})])));
14201
+ }
14199
14202
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SoleDetailsService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
14200
14203
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SoleDetailsService, providedIn: 'root' }); }
14201
14204
  }
@@ -20908,15 +20911,10 @@ function passwordMatchValidator(newPassControlName, confirmPassControlName) {
20908
20911
  };
20909
20912
  }
20910
20913
 
20911
- var MessagesEnum$2;
20912
- (function (MessagesEnum) {
20913
- MessagesEnum["INVALID_DATE"] = "The date should not be before $1";
20914
- })(MessagesEnum$2 || (MessagesEnum$2 = {}));
20915
-
20916
20914
  /**
20917
20915
  * Validation function, that checks If date form value is more than provided date
20918
20916
  */
20919
- function minDateValidator(date, message = MessagesEnum$2.INVALID_DATE.replace('$1', new DatePipe('en-US').transform(date))) {
20917
+ function minDateValidator(date, message = `The date should not be before ${new DatePipe('en-US').transform(date)}`) {
20920
20918
  return (control) => {
20921
20919
  if (!control.value) {
20922
20920
  return null;
@@ -20929,6 +20927,22 @@ function minDateValidator(date, message = MessagesEnum$2.INVALID_DATE.replace('$
20929
20927
  };
20930
20928
  }
20931
20929
 
20930
+ /**
20931
+ * Validation function, that checks If date form value is more than provided date
20932
+ */
20933
+ function maxDateValidator(date, message = `The date should not be after ${new DatePipe('en-US').transform(date)}`) {
20934
+ return (control) => {
20935
+ if (!control.value) {
20936
+ return null;
20937
+ }
20938
+ // form control value can be as a Moment object - we wrap it in "new Date()" to work with it like with JS Date
20939
+ if (new Date(control.value) <= new Date(date)) {
20940
+ return null;
20941
+ }
20942
+ return { minDate: message };
20943
+ };
20944
+ }
20945
+
20932
20946
  /**
20933
20947
  * Validator that check if sum amount of provided fields is greater than provided sum
20934
20948
  * @param field to check in each formArray element
@@ -22339,7 +22353,10 @@ class PropertyAddForm extends AbstractForm {
22339
22353
  super({
22340
22354
  address: new UntypedFormControl(null, Validators.required),
22341
22355
  purchasePrice: new UntypedFormControl(null, Validators.required),
22342
- contractDate: new UntypedFormControl(null, Validators.required),
22356
+ contractDate: new UntypedFormControl(null, [
22357
+ Validators.required,
22358
+ maxDateValidator(new FinancialYear().endDate, 'You cannot add a property with a contract date in future financial years.')
22359
+ ]),
22343
22360
  settlementDate: new UntypedFormControl(null, Validators.required),
22344
22361
  forecasts: new UntypedFormArray([
22345
22362
  new PropertyForecastForm()
@@ -24193,5 +24210,5 @@ var MessagesEnum;
24193
24210
  * Generated bundle index. Do not edit.
24194
24211
  */
24195
24212
 
24196
- export { AbstractForm, AbstractModel, AccountSetupItem, AccountSetupItemCollection, AccountSetupService, Address, AddressForm, AddressService, AddressTypeEnum, AllocationGroup, AllocationGroupCollection, AllocationRule, AllocationRuleCollection, AllocationRuleConditionComparisonOperatorEnum, AllocationRuleConditionFieldEnum, AllocationRuleConditionOperatorEnum, AllocationRuleForm, AllocationRuleService, AllocationRuleTransaction, AllocationRuleTransactionMetaField, AllocationRuleTypeEnum, AlphabetColorsEnum, AnnualClientDetails, AnnualClientDetailsForm, AnnualClientDetailsService, AnnualFrequencyEnum, AppCurrencyPipe, AppEvent, AppEvent2, AppEventTypeEnum, AppFile, AssetEntityTypeEnum, AssetSale, AssetSaleCollection, AssetTypeEnum, AssetsService, BANK_ACCOUNT_TYPES, Badge, BadgeColorEnum, Bank, BankAccount, BankAccountAddManualForm, BankAccountAllocationForm, BankAccountCalculationService, BankAccountChartData, BankAccountCollection, BankAccountImportForm, BankAccountPropertiesForm, BankAccountProperty, BankAccountService, BankAccountStatusEnum, BankAccountTypeEnum, BankAccountsImportForm, BankConnection, BankConnectionMessagesEnum, BankConnectionService, BankConnectionStatusEnum, BankExternalStats, BankPopularEnum, BankProviderEnum, BankService, BankTransaction, BankTransactionChartData, BankTransactionCollection, BankTransactionService, BankTransactionSummaryFieldsEnum, BankTransactionTypeEnum, BasReport, BasReportForm, BasReportMessagesEnum, BasReportService, BasiqConfig, BasiqJob, BasiqJobResponse, BasiqJobStep, BasiqMessagesEnum, BasiqService, BasiqToken, BasiqTokenService, BestVehicleLogbookCollection, BorrowingExpense, BorrowingExpenseLoan, BorrowingExpenseService, BorrowingReport, BorrowingReportForm, BorrowingReportMessagesEnum, BorrowingReportService, Budget, BudgetForm, BudgetMessagesEnum, BudgetRule, BudgetService, BusinessTypeEnum, CAPITAL_COSTS_ITEMS, CHART_ACCOUNTS_CATEGORIES, CalculationFormItem, CalculationFormTypeEnum, CapitalLoss, CapitalLossForm, CapitalLossMessagesEnum, CapitalLossService, CgtExemptionAndRolloverCodeEnum, ChartAccounts, ChartAccountsAdjustmentIncludedListEnum, ChartAccountsCategoryECollection, ChartAccountsCategoryEnum, ChartAccountsCollection, ChartAccountsDepreciation, ChartAccountsDepreciationService, ChartAccountsEtpEnum, ChartAccountsForm, ChartAccountsHeading, ChartAccountsHeadingListEnum, ChartAccountsHeadingTaxDeductibleEnum, ChartAccountsHeadingTaxableEnum, ChartAccountsHeadingVehicleListEnum, ChartAccountsHoldingUntaxedIncomeListEnum, ChartAccountsInvoiceEnum, ChartAccountsKeepSign, ChartAccountsListEnum, ChartAccountsMessagesEnum, ChartAccountsMetaField, ChartAccountsMetaFieldListEnum, ChartAccountsMetaFieldTypeEnum, ChartAccountsPropertyAdjustmentsListEnum, ChartAccountsSalaryAdjustmentsListEnum, ChartAccountsService, ChartAccountsTaxLabelsEnum, ChartAccountsTypeEnum, ChartAccountsUnallocatableListEnum, ChartAccountsValue, ChartAccountsValueService, ChartData, ChartSerie, Chat, ChatCollection, ChatFilterForm, ChatService, ChatStatusEnum, ChatViewTypeEnum, ClientCollection, ClientCouponService, ClientDetails, ClientDetailsForm, ClientDetailsMedicareExemptionEnum, ClientDetailsWorkDepreciationCalculationEnum, ClientDetailsWorkingHolidayMakerEnum, ClientInvite, ClientInviteCollection, ClientInviteForm, ClientInviteMessages, ClientInvitePutForm, ClientInviteService, ClientInviteStatusEnum, ClientInviteTypeEnum, ClientMovement, ClientMovementCollection, ClientMovementForm, ClientMovementMessagesEnum, ClientMovementService, ClientPortfolioChartData, ClientPortfolioReport, ClientPortfolioReportCollection, ClientPortfolioReportService, Collection, CollectionDictionary, CollectionForm, CoreModule, CorelogicService, CorelogicSuggestion, Country, CurrentFirmBranchService, DEDUCTION_CATEGORIES, DEPRECIATION_GROUPS, DOCUMENT_FILE_TYPES, DeductionClothingTypeEnum, DeductionSelfEducationTypeEnum, Depreciation, DepreciationCalculationEnum, DepreciationCalculationPercentEnum, DepreciationCapitalProject, DepreciationCapitalProjectService, DepreciationCollection, DepreciationForecast, DepreciationForecastCollection, DepreciationForm, DepreciationGroup, DepreciationGroupEnum, DepreciationGroupItem, DepreciationLvpAssetTypeEnum, DepreciationLvpRateEnum, DepreciationLvpReportItem, DepreciationLvpReportItemCollection, DepreciationReportItem, DepreciationReportItemCollection, DepreciationService, DepreciationTypeEnum, DepreciationWriteOffAmountEnum, Dictionary, Document, DocumentApiUrlPrefixEnum, DocumentFolder, DocumentFolderForm, DocumentFolderMessagesEnum, DocumentFolderService, DocumentForm, DocumentMessagesEnum, DocumentService, DocumentTypeEnum, ENDPOINTS, EmployeeCollection, EmployeeDetails, EmployeeDetailsForm, EmployeeInvite, EmployeeInviteCollection, EmployeeInviteForm, EmployeeInviteRoleEnum, EmployeeInviteService, EmployeeMessagesEnum, EmployeeService, Endpoint, EquityPositionChartService, EventDispatcherService, ExportDataTable, ExportFormatEnum, ExportFormatterService, ExportableCollection, FacebookService, FileService, FileValidator, FinancialYear, FinancialYearService, Firm, FirmBranch, FirmBranchForm, FirmBranchMessagesEnum, FirmBranchService, FirmForm, FirmInviteForm, FirmMessagesEnum, FirmService, FirmTypeEnum, FormValidationsEnum, GenderEnum, GoogleService, HeaderTitleService, Holding, HoldingCollection, HoldingForm, HoldingImport, HoldingImportForm, HoldingImportMessagesEnum, HoldingImportService, HoldingIncomeForm, HoldingMessagesEnum, HoldingReinvest, HoldingReinvestForm, HoldingSale, HoldingSaleCollection, HoldingSaleForm, HoldingSaleMessagesEnum, HoldingSaleService, HoldingService, HoldingType, HoldingTypeCategoryEnum, HoldingTypeCollection, HoldingTypeExchange, HoldingTypeExchangeListEnum, HoldingTypeExchangeService, HoldingTypeForm, HoldingTypeMessagesEnum, HoldingTypeService, IconsFileEnum, IncomeAmountTypeEnum, IncomePosition, IncomeSource, IncomeSourceChartData, IncomeSourceCollection, IncomeSourceForecast, IncomeSourceForecastCollection, IncomeSourceForecastService, IncomeSourceForecastTrustTypeEnum, IncomeSourceMessagesEnum, IncomeSourceService, IncomeSourceType, IncomeSourceTypeEnum, IncomeSourceTypeListHoldingEnum, IncomeSourceTypeListOtherEnum, IncomeSourceTypeListSoleEnum, IncomeSourceTypeListWorkEnum, IncomeSourceTypeService, InterceptorsModule, IntercomService, InviteStatusEnum, InvoicePaymentForm, JsPdf, Loan, LoanBankTypeEnum, LoanCollection, LoanForm, LoanFrequencyEnum, LoanInterestTypeEnum, LoanInterestTypeLabelEnum, LoanMaxNumberOfPaymentsEnum, LoanPayment, LoanPaymentCollection, LoanPayout, LoanPayoutTypeEnum, LoanRepaymentFrequencyEnum, LoanRepaymentTypeEnum, LoanRepaymentTypeLabelEnum, LoanService, LoanTypeEnum, LoanVehicleTypeEnum, LoginForm, LossTypeEnum, MODULE_URL_LIST, MONTHS, Message, MessageCollection, MessageDocument, MessageDocumentCollection, MessageDocumentService, MessageService, MessagesEnum, MonthNameShortEnum, MonthNumberEnum, MyAccountHistory, MyAccountHistoryInitiatedByEnum, MyAccountHistoryStatusEnum, MyAccountHistoryTypeEnum, MyTaxBusinessDetails, MyTaxBusinessDetailsForm, MyTaxBusinessIncome, MyTaxBusinessIncomeForm, MyTaxBusinessIncomeOrLossesForm, MyTaxBusinessLosses, MyTaxBusinessLossesForm, MyTaxCgt, MyTaxCgtForm, MyTaxDeductions, MyTaxDeductionsForm, MyTaxDividends, MyTaxDividendsForm, MyTaxEstimate, MyTaxIncomeStatements, MyTaxIncomeStatementsForm, MyTaxIncomeTests, MyTaxIncomeTestsForm, MyTaxInterest, MyTaxInterestForm, MyTaxLosses, MyTaxLossesForm, MyTaxMedicareForm, MyTaxOffsets, MyTaxOffsetsForm, MyTaxOtherIncome, MyTaxOtherIncomeForm, MyTaxPartnershipsAndTrusts, MyTaxPartnershipsAndTrustsForm, MyTaxRent, MyTaxRentForm, Notification, Occupation, OccupationService, PASSWORD_REGEXPS, PasswordForm, PdfFromDataTableService, PdfFromDomElementService, PdfFromHtmlTableService, PdfFromTableService, PdfOrientationEnum, PdfService, PdfSettings, Phone, PhoneForm, PhoneTypeEnum, PreloaderService, Property, PropertyAddForm, PropertyCalculationService, PropertyCategory, PropertyCategoryListEnum, PropertyCategoryMovement, PropertyCategoryMovementCollection, PropertyCategoryMovementForm, PropertyCategoryMovementService, PropertyCategoryService, PropertyCollection, PropertyDepreciationCalculationEnum, PropertyDocument, PropertyDocumentForm, PropertyDocumentMessagesEnum, PropertyDocumentService, PropertyEditForm, PropertyEquityChartData, PropertyEquityChartItem, PropertyEquityChartTypeEnum, PropertyForecast, PropertyForecastForm, PropertyMessagesEnum, PropertyReportItem, PropertyReportItemCollection, PropertyReportItemDepreciation, PropertyReportItemDepreciationCollection, PropertyReportItemTransaction, PropertyReportItemTransactionCollection, PropertySale, PropertySaleCollection, PropertySaleCostBase, PropertySaleCostBaseForm, PropertySaleCostSaleForm, PropertySaleExemptionsForm, PropertySaleService, PropertySaleTaxExemptionMetaField, PropertySaleTaxExemptionMetaFieldCollection, PropertyService, PropertyShare, PropertyShareAccessEnum, PropertyShareCollection, PropertyShareForm, PropertyShareService, PropertyShareStatusEnum, PropertySubscription, PropertyTransactionReportService, PropertyValuation, PropertyValuationCollection, PropertyValuationForm, PropertyValuationMessages, PropertyValuationService, REPORTS, RegisterClientForm, RegisterFirmForm, RegistrationInvite, RegistrationInviteStatusEnum, ReportItem, ReportItemCollection, ReportItemDetails, ResetPasswordForm, RestService$1 as RestService, SERVICE_PRODUCT_ROLES, SafeUrlPipe, SalaryForecast, SalaryForecastFrequencyEnum, SalaryForecastService, ServiceNotificationService, ServiceNotificationStatusEnum, ServiceNotificationTypeEnum, ServicePayment, ServicePaymentMethod, ServicePaymentMethodService, ServicePaymentService, ServicePaymentStatusEnum, ServicePrice, ServicePriceCollection, ServicePriceListEnum, ServicePriceRecurringIntervalEnum, ServicePriceService, ServicePriceTypeEnum, ServiceProduct, ServiceProductCollection, ServiceProductIconsEnum, ServiceProductIdEnum, ServiceProductService, ServiceProductStatusEnum, ServicePromoCode, ServiceSubscription, ServiceSubscriptionCollection, ServiceSubscriptionItem, ServiceSubscriptionStatusEnum, SetupItemTypeEnum, SoleBusiness, SoleBusinessActivity, SoleBusinessActivityService, SoleBusinessAllocation, SoleBusinessAllocationsForm, SoleBusinessForm, SoleBusinessLoss, SoleBusinessLossCollection, SoleBusinessLossForm, SoleBusinessLossOffsetRule, SoleBusinessLossOffsetRuleService, SoleBusinessLossReport, SoleBusinessLossService, SoleBusinessMessagesEnum, SoleBusinessService, SoleContact, SoleContactForm, SoleContactService, SoleDepreciationMethod, SoleDepreciationMethodEnum, SoleDepreciationMethodForm, SoleDepreciationMethodService, SoleDetails, SoleDetailsForm, SoleDetailsService, SoleForecast, SoleForecastService, SoleIncomeForm, SoleInvoice, SoleInvoiceCollection, SoleInvoiceForm, SoleInvoiceItem, SoleInvoiceItemCollection, SoleInvoiceItemForm, SoleInvoiceService, SoleInvoiceStatusesEnum, SoleInvoiceTaxTypeEnum, SoleInvoiceTemplate, SoleInvoiceTemplateForm, SoleInvoiceTemplateService, SoleInvoiceTemplateTaxTypeEnum, SpareDocumentSpareTypeEnum, SseService, StatesEnum, SubscriptionItemCollection, SubscriptionMessagesEnum, SubscriptionService, TAX_RETURN_CATEGORIES, TYPE_LOAN, TankTypeEnum, TaxCalculationMedicareExemptionEnum, TaxCalculationTypeEnum, TaxExemption, TaxExemptionCollection, TaxExemptionEnum, TaxExemptionMetaField, TaxExemptionMetaFieldEnum, TaxExemptionService, TaxReturn, TaxReturnCategory, TaxReturnCategoryListEnum, TaxReturnCategorySectionEnum, TaxReturnItem, TaxReturnItemEnum, TaxReturnItemService, TaxReview, TaxReviewCollection, TaxReviewFilterForm, TaxReviewFilterStatusEnum, TaxReviewHistoryService, TaxReviewMessagesEnum, TaxReviewService, TaxReviewStatusEnum, TaxSummary, TaxSummaryListEnum, TaxSummarySection, TaxSummarySectionEnum, TaxSummaryService, TaxSummaryTaxSummaryEnum, TaxSummaryTypeEnum, TicketFeedbackEnum, TicketStatusEnum, TicketTypesEnum, TimezoneEnum, Toast, ToastService, ToastTypeEnum, Transaction, TransactionAllocation, TransactionAllocationCollection, TransactionAllocationService, TransactionBase, TransactionBaseCollection, TransactionBaseFilterForm, TransactionBaseForm, TransactionCategoryEnum, TransactionCollection, TransactionForm, TransactionMetaField, TransactionOperationEnum, TransactionService, TransactionSourceEnum, TransactionTypeEnum, USER_ROLES, USER_WORK_POSITION, UniqueEmailValidator, User, UserCollection, UserEventSetting, UserEventSettingCollection, UserEventSettingFieldEnum, UserEventSettingService, UserEventStatusEnum, UserEventType, UserEventTypeCategory, UserEventTypeClientTypeEnum, UserEventTypeCollection, UserEventTypeEmployeeTypeEnum, UserEventTypeFrequencyEnum, UserEventTypeService, UserEventTypeUserTypeEnum, UserForm, UserInviteForm, UserMedicareExemptionEnum, UserMessagesEnum, UserService, UserStatusEnum, UserSwitcherService, UserTitleEnum, UserToRegister, UserWorkDepreciationCalculationEnum, UserWorkingHolidayMakerEnum, UsersInviteService, Vehicle, VehicleClaim, VehicleClaimCollection, VehicleClaimDetails, VehicleClaimDetailsForm, VehicleClaimDetailsMethodEnum, VehicleClaimDetailsService, VehicleClaimForm, VehicleClaimService, VehicleExpense, VehicleExpenseCollection, VehicleForm, VehicleLogbook, VehicleLogbookCollection, VehicleLogbookForm, VehicleLogbookMessages, VehicleLogbookPurposeEnum, VehicleLogbookService, VehicleMessagesEnum, VehicleService, WorkExpenseForm, WorkIncomeForm, XlsxService, YoutubeService, alphaSpaceValidator, atLeastOneCheckedValidator, atoLinks, autocompleteValidator, cloneDeep, compare, compareMatOptions, conditionalValidator, createDate, currentFinYearValidator, displayMatOptions, enumToList, fieldsSumValidator, getDocIcon, greaterThanValidator, matchSumValidator, minDateValidator, passwordMatchValidator, passwordValidator, replace, sort, sortDeep, toArray };
24213
+ export { AbstractForm, AbstractModel, AccountSetupItem, AccountSetupItemCollection, AccountSetupService, Address, AddressForm, AddressService, AddressTypeEnum, AllocationGroup, AllocationGroupCollection, AllocationRule, AllocationRuleCollection, AllocationRuleConditionComparisonOperatorEnum, AllocationRuleConditionFieldEnum, AllocationRuleConditionOperatorEnum, AllocationRuleForm, AllocationRuleService, AllocationRuleTransaction, AllocationRuleTransactionMetaField, AllocationRuleTypeEnum, AlphabetColorsEnum, AnnualClientDetails, AnnualClientDetailsForm, AnnualClientDetailsService, AnnualFrequencyEnum, AppCurrencyPipe, AppEvent, AppEvent2, AppEventTypeEnum, AppFile, AssetEntityTypeEnum, AssetSale, AssetSaleCollection, AssetTypeEnum, AssetsService, BANK_ACCOUNT_TYPES, Badge, BadgeColorEnum, Bank, BankAccount, BankAccountAddManualForm, BankAccountAllocationForm, BankAccountCalculationService, BankAccountChartData, BankAccountCollection, BankAccountImportForm, BankAccountPropertiesForm, BankAccountProperty, BankAccountService, BankAccountStatusEnum, BankAccountTypeEnum, BankAccountsImportForm, BankConnection, BankConnectionMessagesEnum, BankConnectionService, BankConnectionStatusEnum, BankExternalStats, BankPopularEnum, BankProviderEnum, BankService, BankTransaction, BankTransactionChartData, BankTransactionCollection, BankTransactionService, BankTransactionSummaryFieldsEnum, BankTransactionTypeEnum, BasReport, BasReportForm, BasReportMessagesEnum, BasReportService, BasiqConfig, BasiqJob, BasiqJobResponse, BasiqJobStep, BasiqMessagesEnum, BasiqService, BasiqToken, BasiqTokenService, BestVehicleLogbookCollection, BorrowingExpense, BorrowingExpenseLoan, BorrowingExpenseService, BorrowingReport, BorrowingReportForm, BorrowingReportMessagesEnum, BorrowingReportService, Budget, BudgetForm, BudgetMessagesEnum, BudgetRule, BudgetService, BusinessTypeEnum, CAPITAL_COSTS_ITEMS, CHART_ACCOUNTS_CATEGORIES, CalculationFormItem, CalculationFormTypeEnum, CapitalLoss, CapitalLossForm, CapitalLossMessagesEnum, CapitalLossService, CgtExemptionAndRolloverCodeEnum, ChartAccounts, ChartAccountsAdjustmentIncludedListEnum, ChartAccountsCategoryECollection, ChartAccountsCategoryEnum, ChartAccountsCollection, ChartAccountsDepreciation, ChartAccountsDepreciationService, ChartAccountsEtpEnum, ChartAccountsForm, ChartAccountsHeading, ChartAccountsHeadingListEnum, ChartAccountsHeadingTaxDeductibleEnum, ChartAccountsHeadingTaxableEnum, ChartAccountsHeadingVehicleListEnum, ChartAccountsHoldingUntaxedIncomeListEnum, ChartAccountsInvoiceEnum, ChartAccountsKeepSign, ChartAccountsListEnum, ChartAccountsMessagesEnum, ChartAccountsMetaField, ChartAccountsMetaFieldListEnum, ChartAccountsMetaFieldTypeEnum, ChartAccountsPropertyAdjustmentsListEnum, ChartAccountsSalaryAdjustmentsListEnum, ChartAccountsService, ChartAccountsTaxLabelsEnum, ChartAccountsTypeEnum, ChartAccountsUnallocatableListEnum, ChartAccountsValue, ChartAccountsValueService, ChartData, ChartSerie, Chat, ChatCollection, ChatFilterForm, ChatService, ChatStatusEnum, ChatViewTypeEnum, ClientCollection, ClientCouponService, ClientDetails, ClientDetailsForm, ClientDetailsMedicareExemptionEnum, ClientDetailsWorkDepreciationCalculationEnum, ClientDetailsWorkingHolidayMakerEnum, ClientInvite, ClientInviteCollection, ClientInviteForm, ClientInviteMessages, ClientInvitePutForm, ClientInviteService, ClientInviteStatusEnum, ClientInviteTypeEnum, ClientMovement, ClientMovementCollection, ClientMovementForm, ClientMovementMessagesEnum, ClientMovementService, ClientPortfolioChartData, ClientPortfolioReport, ClientPortfolioReportCollection, ClientPortfolioReportService, Collection, CollectionDictionary, CollectionForm, CoreModule, CorelogicService, CorelogicSuggestion, Country, CurrentFirmBranchService, DEDUCTION_CATEGORIES, DEPRECIATION_GROUPS, DOCUMENT_FILE_TYPES, DeductionClothingTypeEnum, DeductionSelfEducationTypeEnum, Depreciation, DepreciationCalculationEnum, DepreciationCalculationPercentEnum, DepreciationCapitalProject, DepreciationCapitalProjectService, DepreciationCollection, DepreciationForecast, DepreciationForecastCollection, DepreciationForm, DepreciationGroup, DepreciationGroupEnum, DepreciationGroupItem, DepreciationLvpAssetTypeEnum, DepreciationLvpRateEnum, DepreciationLvpReportItem, DepreciationLvpReportItemCollection, DepreciationReportItem, DepreciationReportItemCollection, DepreciationService, DepreciationTypeEnum, DepreciationWriteOffAmountEnum, Dictionary, Document, DocumentApiUrlPrefixEnum, DocumentFolder, DocumentFolderForm, DocumentFolderMessagesEnum, DocumentFolderService, DocumentForm, DocumentMessagesEnum, DocumentService, DocumentTypeEnum, ENDPOINTS, EmployeeCollection, EmployeeDetails, EmployeeDetailsForm, EmployeeInvite, EmployeeInviteCollection, EmployeeInviteForm, EmployeeInviteRoleEnum, EmployeeInviteService, EmployeeMessagesEnum, EmployeeService, Endpoint, EquityPositionChartService, EventDispatcherService, ExportDataTable, ExportFormatEnum, ExportFormatterService, ExportableCollection, FacebookService, FileService, FileValidator, FinancialYear, FinancialYearService, Firm, FirmBranch, FirmBranchForm, FirmBranchMessagesEnum, FirmBranchService, FirmForm, FirmInviteForm, FirmMessagesEnum, FirmService, FirmTypeEnum, FormValidationsEnum, GenderEnum, GoogleService, HeaderTitleService, Holding, HoldingCollection, HoldingForm, HoldingImport, HoldingImportForm, HoldingImportMessagesEnum, HoldingImportService, HoldingIncomeForm, HoldingMessagesEnum, HoldingReinvest, HoldingReinvestForm, HoldingSale, HoldingSaleCollection, HoldingSaleForm, HoldingSaleMessagesEnum, HoldingSaleService, HoldingService, HoldingType, HoldingTypeCategoryEnum, HoldingTypeCollection, HoldingTypeExchange, HoldingTypeExchangeListEnum, HoldingTypeExchangeService, HoldingTypeForm, HoldingTypeMessagesEnum, HoldingTypeService, IconsFileEnum, IncomeAmountTypeEnum, IncomePosition, IncomeSource, IncomeSourceChartData, IncomeSourceCollection, IncomeSourceForecast, IncomeSourceForecastCollection, IncomeSourceForecastService, IncomeSourceForecastTrustTypeEnum, IncomeSourceMessagesEnum, IncomeSourceService, IncomeSourceType, IncomeSourceTypeEnum, IncomeSourceTypeListHoldingEnum, IncomeSourceTypeListOtherEnum, IncomeSourceTypeListSoleEnum, IncomeSourceTypeListWorkEnum, IncomeSourceTypeService, InterceptorsModule, IntercomService, InviteStatusEnum, InvoicePaymentForm, JsPdf, Loan, LoanBankTypeEnum, LoanCollection, LoanForm, LoanFrequencyEnum, LoanInterestTypeEnum, LoanInterestTypeLabelEnum, LoanMaxNumberOfPaymentsEnum, LoanPayment, LoanPaymentCollection, LoanPayout, LoanPayoutTypeEnum, LoanRepaymentFrequencyEnum, LoanRepaymentTypeEnum, LoanRepaymentTypeLabelEnum, LoanService, LoanTypeEnum, LoanVehicleTypeEnum, LoginForm, LossTypeEnum, MODULE_URL_LIST, MONTHS, Message, MessageCollection, MessageDocument, MessageDocumentCollection, MessageDocumentService, MessageService, MessagesEnum, MonthNameShortEnum, MonthNumberEnum, MyAccountHistory, MyAccountHistoryInitiatedByEnum, MyAccountHistoryStatusEnum, MyAccountHistoryTypeEnum, MyTaxBusinessDetails, MyTaxBusinessDetailsForm, MyTaxBusinessIncome, MyTaxBusinessIncomeForm, MyTaxBusinessIncomeOrLossesForm, MyTaxBusinessLosses, MyTaxBusinessLossesForm, MyTaxCgt, MyTaxCgtForm, MyTaxDeductions, MyTaxDeductionsForm, MyTaxDividends, MyTaxDividendsForm, MyTaxEstimate, MyTaxIncomeStatements, MyTaxIncomeStatementsForm, MyTaxIncomeTests, MyTaxIncomeTestsForm, MyTaxInterest, MyTaxInterestForm, MyTaxLosses, MyTaxLossesForm, MyTaxMedicareForm, MyTaxOffsets, MyTaxOffsetsForm, MyTaxOtherIncome, MyTaxOtherIncomeForm, MyTaxPartnershipsAndTrusts, MyTaxPartnershipsAndTrustsForm, MyTaxRent, MyTaxRentForm, Notification, Occupation, OccupationService, PASSWORD_REGEXPS, PasswordForm, PdfFromDataTableService, PdfFromDomElementService, PdfFromHtmlTableService, PdfFromTableService, PdfOrientationEnum, PdfService, PdfSettings, Phone, PhoneForm, PhoneTypeEnum, PreloaderService, Property, PropertyAddForm, PropertyCalculationService, PropertyCategory, PropertyCategoryListEnum, PropertyCategoryMovement, PropertyCategoryMovementCollection, PropertyCategoryMovementForm, PropertyCategoryMovementService, PropertyCategoryService, PropertyCollection, PropertyDepreciationCalculationEnum, PropertyDocument, PropertyDocumentForm, PropertyDocumentMessagesEnum, PropertyDocumentService, PropertyEditForm, PropertyEquityChartData, PropertyEquityChartItem, PropertyEquityChartTypeEnum, PropertyForecast, PropertyForecastForm, PropertyMessagesEnum, PropertyReportItem, PropertyReportItemCollection, PropertyReportItemDepreciation, PropertyReportItemDepreciationCollection, PropertyReportItemTransaction, PropertyReportItemTransactionCollection, PropertySale, PropertySaleCollection, PropertySaleCostBase, PropertySaleCostBaseForm, PropertySaleCostSaleForm, PropertySaleExemptionsForm, PropertySaleService, PropertySaleTaxExemptionMetaField, PropertySaleTaxExemptionMetaFieldCollection, PropertyService, PropertyShare, PropertyShareAccessEnum, PropertyShareCollection, PropertyShareForm, PropertyShareService, PropertyShareStatusEnum, PropertySubscription, PropertyTransactionReportService, PropertyValuation, PropertyValuationCollection, PropertyValuationForm, PropertyValuationMessages, PropertyValuationService, REPORTS, RegisterClientForm, RegisterFirmForm, RegistrationInvite, RegistrationInviteStatusEnum, ReportItem, ReportItemCollection, ReportItemDetails, ResetPasswordForm, RestService$1 as RestService, SERVICE_PRODUCT_ROLES, SafeUrlPipe, SalaryForecast, SalaryForecastFrequencyEnum, SalaryForecastService, ServiceNotificationService, ServiceNotificationStatusEnum, ServiceNotificationTypeEnum, ServicePayment, ServicePaymentMethod, ServicePaymentMethodService, ServicePaymentService, ServicePaymentStatusEnum, ServicePrice, ServicePriceCollection, ServicePriceListEnum, ServicePriceRecurringIntervalEnum, ServicePriceService, ServicePriceTypeEnum, ServiceProduct, ServiceProductCollection, ServiceProductIconsEnum, ServiceProductIdEnum, ServiceProductService, ServiceProductStatusEnum, ServicePromoCode, ServiceSubscription, ServiceSubscriptionCollection, ServiceSubscriptionItem, ServiceSubscriptionStatusEnum, SetupItemTypeEnum, SoleBusiness, SoleBusinessActivity, SoleBusinessActivityService, SoleBusinessAllocation, SoleBusinessAllocationsForm, SoleBusinessForm, SoleBusinessLoss, SoleBusinessLossCollection, SoleBusinessLossForm, SoleBusinessLossOffsetRule, SoleBusinessLossOffsetRuleService, SoleBusinessLossReport, SoleBusinessLossService, SoleBusinessMessagesEnum, SoleBusinessService, SoleContact, SoleContactForm, SoleContactService, SoleDepreciationMethod, SoleDepreciationMethodEnum, SoleDepreciationMethodForm, SoleDepreciationMethodService, SoleDetails, SoleDetailsForm, SoleDetailsService, SoleForecast, SoleForecastService, SoleIncomeForm, SoleInvoice, SoleInvoiceCollection, SoleInvoiceForm, SoleInvoiceItem, SoleInvoiceItemCollection, SoleInvoiceItemForm, SoleInvoiceService, SoleInvoiceStatusesEnum, SoleInvoiceTaxTypeEnum, SoleInvoiceTemplate, SoleInvoiceTemplateForm, SoleInvoiceTemplateService, SoleInvoiceTemplateTaxTypeEnum, SpareDocumentSpareTypeEnum, SseService, StatesEnum, SubscriptionItemCollection, SubscriptionMessagesEnum, SubscriptionService, TAX_RETURN_CATEGORIES, TYPE_LOAN, TankTypeEnum, TaxCalculationMedicareExemptionEnum, TaxCalculationTypeEnum, TaxExemption, TaxExemptionCollection, TaxExemptionEnum, TaxExemptionMetaField, TaxExemptionMetaFieldEnum, TaxExemptionService, TaxReturn, TaxReturnCategory, TaxReturnCategoryListEnum, TaxReturnCategorySectionEnum, TaxReturnItem, TaxReturnItemEnum, TaxReturnItemService, TaxReview, TaxReviewCollection, TaxReviewFilterForm, TaxReviewFilterStatusEnum, TaxReviewHistoryService, TaxReviewMessagesEnum, TaxReviewService, TaxReviewStatusEnum, TaxSummary, TaxSummaryListEnum, TaxSummarySection, TaxSummarySectionEnum, TaxSummaryService, TaxSummaryTaxSummaryEnum, TaxSummaryTypeEnum, TicketFeedbackEnum, TicketStatusEnum, TicketTypesEnum, TimezoneEnum, Toast, ToastService, ToastTypeEnum, Transaction, TransactionAllocation, TransactionAllocationCollection, TransactionAllocationService, TransactionBase, TransactionBaseCollection, TransactionBaseFilterForm, TransactionBaseForm, TransactionCategoryEnum, TransactionCollection, TransactionForm, TransactionMetaField, TransactionOperationEnum, TransactionService, TransactionSourceEnum, TransactionTypeEnum, USER_ROLES, USER_WORK_POSITION, UniqueEmailValidator, User, UserCollection, UserEventSetting, UserEventSettingCollection, UserEventSettingFieldEnum, UserEventSettingService, UserEventStatusEnum, UserEventType, UserEventTypeCategory, UserEventTypeClientTypeEnum, UserEventTypeCollection, UserEventTypeEmployeeTypeEnum, UserEventTypeFrequencyEnum, UserEventTypeService, UserEventTypeUserTypeEnum, UserForm, UserInviteForm, UserMedicareExemptionEnum, UserMessagesEnum, UserService, UserStatusEnum, UserSwitcherService, UserTitleEnum, UserToRegister, UserWorkDepreciationCalculationEnum, UserWorkingHolidayMakerEnum, UsersInviteService, Vehicle, VehicleClaim, VehicleClaimCollection, VehicleClaimDetails, VehicleClaimDetailsForm, VehicleClaimDetailsMethodEnum, VehicleClaimDetailsService, VehicleClaimForm, VehicleClaimService, VehicleExpense, VehicleExpenseCollection, VehicleForm, VehicleLogbook, VehicleLogbookCollection, VehicleLogbookForm, VehicleLogbookMessages, VehicleLogbookPurposeEnum, VehicleLogbookService, VehicleMessagesEnum, VehicleService, WorkExpenseForm, WorkIncomeForm, XlsxService, YoutubeService, alphaSpaceValidator, atLeastOneCheckedValidator, atoLinks, autocompleteValidator, cloneDeep, compare, compareMatOptions, conditionalValidator, createDate, currentFinYearValidator, displayMatOptions, enumToList, fieldsSumValidator, getDocIcon, greaterThanValidator, matchSumValidator, maxDateValidator, minDateValidator, passwordMatchValidator, passwordValidator, replace, sort, sortDeep, toArray };
24197
24214
  //# sourceMappingURL=taxtank-core.mjs.map