taxtank-core 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/bundles/taxtank-core.umd.js +193 -158
  2. package/bundles/taxtank-core.umd.js.map +1 -1
  3. package/esm2015/lib/collections/collection.js +7 -1
  4. package/esm2015/lib/collections/property/property.collection.js +2 -5
  5. package/esm2015/lib/db/Enums/property/property-share-access.enum.js +6 -0
  6. package/esm2015/lib/db/Enums/property/property-share-status.enum.js +7 -0
  7. package/esm2015/lib/db/Enums/user-event-type-client-type.enum.js +9 -9
  8. package/esm2015/lib/db/Models/property/property-sale/property-sale.js +1 -1
  9. package/esm2015/lib/db/Models/property/property-sale/tax-exemption.js +1 -1
  10. package/esm2015/lib/db/Models/property/property-share.js +3 -0
  11. package/esm2015/lib/db/Models/property/property.js +1 -1
  12. package/esm2015/lib/db/Models/user.js +1 -1
  13. package/esm2015/lib/models/depreciation/depreciation-lvp-rate.enum.js +6 -0
  14. package/esm2015/lib/models/depreciation/depreciation.js +6 -3
  15. package/esm2015/lib/models/endpoint/endpoints.const.js +4 -4
  16. package/esm2015/lib/models/event/app-event-type.enum.js +2 -2
  17. package/esm2015/lib/models/notification/notification.js +3 -3
  18. package/esm2015/lib/models/pdf/pdf-config.js +11 -3
  19. package/esm2015/lib/models/property/property-sale/property-sale.js +1 -1
  20. package/esm2015/lib/models/property/{property-owner.js → property-share.js} +15 -15
  21. package/esm2015/lib/models/property/property.js +12 -10
  22. package/esm2015/lib/models/property/share-filter-options.enum.js +11 -0
  23. package/esm2015/lib/services/bank/bank-account.service.js +2 -2
  24. package/esm2015/lib/services/depreciation/depreciation.service.js +2 -2
  25. package/esm2015/lib/services/pdf/pdf.service.js +26 -6
  26. package/esm2015/lib/services/property/property-share/property-share.service.js +115 -0
  27. package/esm2015/lib/services/property/property.service.js +6 -6
  28. package/esm2015/public-api.js +8 -6
  29. package/fesm2015/taxtank-core.js +164 -129
  30. package/fesm2015/taxtank-core.js.map +1 -1
  31. package/lib/collections/collection.d.ts +4 -0
  32. package/lib/collections/property/property.collection.d.ts +1 -4
  33. package/lib/db/Enums/property/property-share-access.enum.d.ts +4 -0
  34. package/lib/db/Enums/property/{property-owner-status.enum.d.ts → property-share-status.enum.d.ts} +1 -1
  35. package/lib/db/Enums/user-event-type-client-type.enum.d.ts +8 -8
  36. package/lib/db/Models/property/property-sale/property-sale.d.ts +4 -3
  37. package/lib/db/Models/property/property-sale/tax-exemption.d.ts +1 -0
  38. package/lib/db/Models/property/{property-owner.d.ts → property-share.d.ts} +6 -6
  39. package/lib/db/Models/property/property.d.ts +2 -2
  40. package/lib/db/Models/user.d.ts +2 -2
  41. package/lib/models/depreciation/depreciation-lvp-rate.enum.d.ts +4 -0
  42. package/lib/models/depreciation/depreciation.d.ts +1 -0
  43. package/lib/models/event/app-event-type.enum.d.ts +1 -1
  44. package/lib/models/property/{property-owner.d.ts → property-share.d.ts} +3 -3
  45. package/lib/models/property/property.d.ts +6 -5
  46. package/lib/models/property/share-filter-options.enum.d.ts +9 -0
  47. package/lib/services/pdf/pdf.service.d.ts +1 -0
  48. package/lib/services/property/property-share/property-share.service.d.ts +44 -0
  49. package/lib/services/property/property.service.d.ts +3 -3
  50. package/package.json +1 -1
  51. package/public-api.d.ts +7 -5
  52. package/esm2015/lib/db/Enums/property/property-owner-access.enum.js +0 -6
  53. package/esm2015/lib/db/Enums/property/property-owner-status.enum.js +0 -7
  54. package/esm2015/lib/db/Models/property/property-owner.js +0 -3
  55. package/esm2015/lib/models/property/ownership-filter-options.enum.js +0 -10
  56. package/esm2015/lib/services/property/property-owner/property-owner.service.js +0 -123
  57. package/lib/db/Enums/property/property-owner-access.enum.d.ts +0 -4
  58. package/lib/models/property/ownership-filter-options.enum.d.ts +0 -8
  59. package/lib/services/property/property-owner/property-owner.service.d.ts +0 -52
@@ -522,9 +522,9 @@ const ENDPOINTS = {
522
522
  PROPERTIES_CATEGORIES_POST: new Endpoint('POST', '\\/properties\\/categories'),
523
523
  PROPERTIES_CATEGORY_MOVEMENTS_POST: new Endpoint('POST', '\\/properties\\/\\d+\\/category-movements'),
524
524
  PROPERTIES_CATEGORY_MOVEMENTS_PUT: new Endpoint('PUT', '\\/properties\\/\\d+\\/category-movements\\/\\d+'),
525
- PROPERTIES_CO_OWNERS_PUT: new Endpoint('PUT', '\\/properties\\/co-owners\\/\\d+'),
526
- PROPERTIES_CO_OWNERS_GET: new Endpoint('GET', '\\/properties\\/co-owners'),
527
- PROPERTIES_CO_OWNERS_POST: new Endpoint('POST', '\\/properties\\/co-owners'),
525
+ PROPERTIES_SHARES_PUT: new Endpoint('PUT', '\\/properties\\/shares\\/\\d+'),
526
+ PROPERTIES_SHARES_GET: new Endpoint('GET', '\\/properties\\/shares'),
527
+ PROPERTIES_SHARES_POST: new Endpoint('POST', '\\/properties\\/shares'),
528
528
  PROPERTIES_DEACTIVATE_PUT: new Endpoint('PUT', '\\/properties\\/\\d+\\/deactivate'),
529
529
  PROPERTIES_DEPRECIATION_CAPITAL_PROJECT_GET: new Endpoint('GET', '\\/properties\\/\\d+\\/depreciation-capital-projects'),
530
530
  PROPERTIES_DEPRECIATION_CAPITAL_PROJECT_POST: new Endpoint('POST', '\\/properties\\/\\d+\\/depreciation-capital-projects'),
@@ -884,6 +884,12 @@ class Collection {
884
884
  toArray() {
885
885
  return [...this.items];
886
886
  }
887
+ /**
888
+ * Filter items by specific provided callback
889
+ */
890
+ filter(callback) {
891
+ return new Collection(this.items.filter(callback));
892
+ }
887
893
  get first() {
888
894
  return first(this.items);
889
895
  }
@@ -1728,10 +1734,7 @@ class PropertyCollection extends Collection {
1728
1734
  getActiveProperties() {
1729
1735
  return new PropertyCollection(this.items.filter((property) => property.isActive));
1730
1736
  }
1731
- /**
1732
- * Get new property collection filtered by owner
1733
- */
1734
- getOwnProperties() {
1737
+ getCreatedProperties() {
1735
1738
  return new PropertyCollection(this.items.filter((property) => property.isOwn()));
1736
1739
  }
1737
1740
  /**
@@ -2493,18 +2496,18 @@ var PropertyDepreciationCalculationEnum;
2493
2496
  PropertyDepreciationCalculationEnum[PropertyDepreciationCalculationEnum["DIMINISHING"] = 2] = "DIMINISHING";
2494
2497
  })(PropertyDepreciationCalculationEnum || (PropertyDepreciationCalculationEnum = {}));
2495
2498
 
2496
- var PropertyOwnerAccessEnum;
2497
- (function (PropertyOwnerAccessEnum) {
2498
- PropertyOwnerAccessEnum[PropertyOwnerAccessEnum["VIEW"] = 1] = "VIEW";
2499
- PropertyOwnerAccessEnum[PropertyOwnerAccessEnum["EDIT"] = 2] = "EDIT";
2500
- })(PropertyOwnerAccessEnum || (PropertyOwnerAccessEnum = {}));
2499
+ var PropertyShareAccessEnum;
2500
+ (function (PropertyShareAccessEnum) {
2501
+ PropertyShareAccessEnum[PropertyShareAccessEnum["VIEW"] = 1] = "VIEW";
2502
+ PropertyShareAccessEnum[PropertyShareAccessEnum["EDIT"] = 2] = "EDIT";
2503
+ })(PropertyShareAccessEnum || (PropertyShareAccessEnum = {}));
2501
2504
 
2502
- var PropertyOwnerStatusEnum;
2503
- (function (PropertyOwnerStatusEnum) {
2504
- PropertyOwnerStatusEnum[PropertyOwnerStatusEnum["PENDING"] = 1] = "PENDING";
2505
- PropertyOwnerStatusEnum[PropertyOwnerStatusEnum["APPROVED"] = 2] = "APPROVED";
2506
- PropertyOwnerStatusEnum[PropertyOwnerStatusEnum["REJECTED"] = 3] = "REJECTED";
2507
- })(PropertyOwnerStatusEnum || (PropertyOwnerStatusEnum = {}));
2505
+ var PropertyShareStatusEnum;
2506
+ (function (PropertyShareStatusEnum) {
2507
+ PropertyShareStatusEnum[PropertyShareStatusEnum["PENDING"] = 1] = "PENDING";
2508
+ PropertyShareStatusEnum[PropertyShareStatusEnum["APPROVED"] = 2] = "APPROVED";
2509
+ PropertyShareStatusEnum[PropertyShareStatusEnum["REJECTED"] = 3] = "REJECTED";
2510
+ })(PropertyShareStatusEnum || (PropertyShareStatusEnum = {}));
2508
2511
 
2509
2512
  var RegistrationInviteStatusEnum;
2510
2513
  (function (RegistrationInviteStatusEnum) {
@@ -2727,14 +2730,14 @@ var UserEventTypeClientTypeEnum;
2727
2730
  UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["FIRM_INVITE_ACCEPTED"] = 2012] = "FIRM_INVITE_ACCEPTED";
2728
2731
  UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["FIRM_INVITE_REJECTED"] = 2013] = "FIRM_INVITE_REJECTED";
2729
2732
  UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["FIRM_INVITE_REGISTERED"] = 2014] = "FIRM_INVITE_REGISTERED";
2730
- UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["CO_OWNER_INVITE"] = 2020] = "CO_OWNER_INVITE";
2731
- UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["CO_OWNER_INVITE_TO_REGISTER"] = 2021] = "CO_OWNER_INVITE_TO_REGISTER";
2732
- UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["CO_OWNER_INVITE_ACCEPTED"] = 2022] = "CO_OWNER_INVITE_ACCEPTED";
2733
- UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["CO_OWNER_INVITE_REJECTED"] = 2023] = "CO_OWNER_INVITE_REJECTED";
2734
- UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["CO_OWNER_INVITE_REGISTERED"] = 2024] = "CO_OWNER_INVITE_REGISTERED";
2735
- UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["CO_OWNER_CHANGE_REQUESTED"] = 2025] = "CO_OWNER_CHANGE_REQUESTED";
2736
- UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["CO_OWNER_CHANGE_ACCEPTED"] = 2026] = "CO_OWNER_CHANGE_ACCEPTED";
2737
- UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["CO_OWNER_CHANGE_REJECTED"] = 2027] = "CO_OWNER_CHANGE_REJECTED";
2733
+ UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["PROPERTY_SHARE_INVITE"] = 2020] = "PROPERTY_SHARE_INVITE";
2734
+ UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["PROPERTY_SHARE_INVITE_TO_REGISTER"] = 2021] = "PROPERTY_SHARE_INVITE_TO_REGISTER";
2735
+ UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["PROPERTY_SHARE_INVITE_ACCEPTED"] = 2022] = "PROPERTY_SHARE_INVITE_ACCEPTED";
2736
+ UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["PROPERTY_SHARE_INVITE_REJECTED"] = 2023] = "PROPERTY_SHARE_INVITE_REJECTED";
2737
+ UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["PROPERTY_SHARE_INVITE_REGISTERED"] = 2024] = "PROPERTY_SHARE_INVITE_REGISTERED";
2738
+ UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["PROPERTY_SHARE_CHANGE_REQUESTED"] = 2025] = "PROPERTY_SHARE_CHANGE_REQUESTED";
2739
+ UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["PROPERTY_SHARE_CHANGE_ACCEPTED"] = 2026] = "PROPERTY_SHARE_CHANGE_ACCEPTED";
2740
+ UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["PROPERTY_SHARE_CHANGE_REJECTED"] = 2027] = "PROPERTY_SHARE_CHANGE_REJECTED";
2738
2741
  UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["BASIQ_NEW_ACCOUNTS"] = 2030] = "BASIQ_NEW_ACCOUNTS";
2739
2742
  UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["BASIQ_FIRST_IMPORT_COMPLETE"] = 2031] = "BASIQ_FIRST_IMPORT_COMPLETE";
2740
2743
  UserEventTypeClientTypeEnum[UserEventTypeClientTypeEnum["BASIQ_AUTHORIZATION_FAIL"] = 2032] = "BASIQ_AUTHORIZATION_FAIL";
@@ -2809,6 +2812,18 @@ var VehicleLogbookPurposeEnum;
2809
2812
  VehicleLogbookPurposeEnum[VehicleLogbookPurposeEnum["PERSONAL"] = 2] = "PERSONAL";
2810
2813
  })(VehicleLogbookPurposeEnum || (VehicleLogbookPurposeEnum = {}));
2811
2814
 
2815
+ var TaxExemptionEnum;
2816
+ (function (TaxExemptionEnum) {
2817
+ TaxExemptionEnum[TaxExemptionEnum["ONE_YEAR_RULE"] = 1] = "ONE_YEAR_RULE";
2818
+ // principle place of residence
2819
+ TaxExemptionEnum[TaxExemptionEnum["PPR"] = 2] = "PPR";
2820
+ TaxExemptionEnum[TaxExemptionEnum["SIX_YEARS_RULE"] = 3] = "SIX_YEARS_RULE";
2821
+ TaxExemptionEnum[TaxExemptionEnum["INVESTMENT_TO_PPR"] = 4] = "INVESTMENT_TO_PPR";
2822
+ TaxExemptionEnum[TaxExemptionEnum["PPR_TO_INVESTMENT"] = 5] = "PPR_TO_INVESTMENT";
2823
+ TaxExemptionEnum[TaxExemptionEnum["TRANSFER"] = 6] = "TRANSFER";
2824
+ TaxExemptionEnum[TaxExemptionEnum["OTHER"] = 7] = "OTHER";
2825
+ })(TaxExemptionEnum || (TaxExemptionEnum = {}));
2826
+
2812
2827
  var TaxExemptionMetadataEnum;
2813
2828
  (function (TaxExemptionMetadataEnum) {
2814
2829
  // principle place of residence
@@ -3464,18 +3479,6 @@ __decorate([
3464
3479
  Type(() => Date)
3465
3480
  ], PropertyCategoryMovement.prototype, "toDate", void 0);
3466
3481
 
3467
- var TaxExemptionEnum;
3468
- (function (TaxExemptionEnum) {
3469
- TaxExemptionEnum[TaxExemptionEnum["ONE_YEAR_RULE"] = 1] = "ONE_YEAR_RULE";
3470
- // principle place of residence
3471
- TaxExemptionEnum[TaxExemptionEnum["PPR"] = 2] = "PPR";
3472
- TaxExemptionEnum[TaxExemptionEnum["SIX_YEARS_RULE"] = 3] = "SIX_YEARS_RULE";
3473
- TaxExemptionEnum[TaxExemptionEnum["INVESTMENT_TO_PPR"] = 4] = "INVESTMENT_TO_PPR";
3474
- TaxExemptionEnum[TaxExemptionEnum["PPR_TO_INVESTMENT"] = 5] = "PPR_TO_INVESTMENT";
3475
- TaxExemptionEnum[TaxExemptionEnum["TRANSFER"] = 6] = "TRANSFER";
3476
- TaxExemptionEnum[TaxExemptionEnum["OTHER"] = 7] = "OTHER";
3477
- })(TaxExemptionEnum || (TaxExemptionEnum = {}));
3478
-
3479
3482
  var PropertyCategoryListEnum;
3480
3483
  (function (PropertyCategoryListEnum) {
3481
3484
  PropertyCategoryListEnum[PropertyCategoryListEnum["OWNER_OCCUPIED"] = 3] = "OWNER_OCCUPIED";
@@ -3555,21 +3558,21 @@ class Property extends Property$1 {
3555
3558
  return (this.marketValue - this.purchasePrice) / this.marketValue;
3556
3559
  }
3557
3560
  get myShare() {
3558
- return this.owners.find((owner) => owner.user.id === +localStorage.getItem('userId'));
3561
+ return this.shares.find((share) => share.user.id === +localStorage.getItem('userId'));
3559
3562
  }
3560
3563
  /**
3561
- * exact claim percent includes ownership
3564
+ * exact claim including share percent
3562
3565
  */
3563
- get ownershipClaimPercent() {
3564
- return this.ownershipPercent * this.claimPercent / 100;
3566
+ get shareClaimPercent() {
3567
+ return this.sharePercent * this.claimPercent / 100;
3565
3568
  }
3566
3569
  get actualValuation() {
3567
3570
  return this.valuations.reduce((maxDateValuation, valuation) => {
3568
3571
  return maxDateValuation.date > valuation.date ? maxDateValuation : valuation;
3569
3572
  }, this.valuations[0]);
3570
3573
  }
3571
- get ownershipPercent() {
3572
- return this.myShare.ownershipPercent;
3574
+ get sharePercent() {
3575
+ return this.myShare.percent;
3573
3576
  }
3574
3577
  get previousCategory() {
3575
3578
  let previousCategory;
@@ -3587,9 +3590,10 @@ class Property extends Property$1 {
3587
3590
  return this.forecasts.find((forecast) => forecast.financialYear === year);
3588
3591
  }
3589
3592
  get isShared() {
3590
- return this.owners.length > 1;
3593
+ return this.shares.length > 1;
3591
3594
  }
3592
3595
  /**
3596
+ * @TODO consider to move methods related with propertySale to separated class, since used just in one module yet
3593
3597
  * purchase costs - claimed costs, except `ppr to investment` exemption,
3594
3598
  * in that case it's equal to market value, when property became an investment property
3595
3599
  */
@@ -3604,7 +3608,6 @@ class Property extends Property$1 {
3604
3608
  * gross capital gain tax: sale costs - cost base
3605
3609
  */
3606
3610
  calculateCGT(sale) {
3607
- console.log(sale.price, sale.saleCostsTotalAmount, sale.capitalLoss, this.calculateCostBase(sale));
3608
3611
  return sale.price - sale.saleCostsTotalAmount - sale.capitalLoss - this.calculateCostBase(sale);
3609
3612
  }
3610
3613
  /**
@@ -3647,7 +3650,9 @@ class Property extends Property$1 {
3647
3650
  return (ownershipDays - metadata.getPPRDays()) / ownershipDays;
3648
3651
  // main residence become investment (exemption for home office percent usage)
3649
3652
  case TaxExemptionEnum.PPR_TO_INVESTMENT:
3650
- return metadata.getClaimPercent() / 100;
3653
+ // 1 year CGT discount can still apply (on the income producing % if used for 12 months or more)
3654
+ const ratio = this.getOwnershipDuration(sale, 'years') >= 1 ? 0.5 : 1;
3655
+ return metadata.getClaimPercent() / 100 * ratio;
3651
3656
  // full exemption
3652
3657
  case TaxExemptionEnum.PPR:
3653
3658
  case TaxExemptionEnum.SIX_YEARS_RULE:
@@ -4281,7 +4286,7 @@ class Depreciation extends Depreciation$1 {
4281
4286
  * @TODO new FinancialYear(this.writeOffDate) === new FinancialYear()
4282
4287
  */
4283
4288
  isLowValuePool() {
4284
- return this.isAsset && !this.isWrittenOff() &&
4289
+ return this.isAsset &&
4285
4290
  this.calculation === DepreciationCalculationEnum.DIMINISHING &&
4286
4291
  this.amount > Depreciation.WRITTEN_OFF_THRESHOLD &&
4287
4292
  this.amount <= Depreciation.LOW_VALUE_POOL_THRESHOLD;
@@ -4363,7 +4368,7 @@ class Depreciation extends Depreciation$1 {
4363
4368
  * Create a new transaction from current depreciation
4364
4369
  */
4365
4370
  toTransaction() {
4366
- return plainToClass(Transaction, this);
4371
+ return plainToClass(Transaction, Object.assign({}, this, { amount: this.getCurrentYearForecastAmount() }));
4367
4372
  }
4368
4373
  }
4369
4374
  Depreciation.WRITTEN_OFF_THRESHOLD = 300;
@@ -4374,6 +4379,9 @@ __decorate([
4374
4379
  __decorate([
4375
4380
  Type(() => Date)
4376
4381
  ], Depreciation.prototype, "date", void 0);
4382
+ __decorate([
4383
+ Type(() => Date)
4384
+ ], Depreciation.prototype, "lowValuePoolDate", void 0);
4377
4385
  __decorate([
4378
4386
  Type(() => Date)
4379
4387
  ], Depreciation.prototype, "writeOffManualDate", void 0);
@@ -5211,6 +5219,12 @@ class DataTableColumn {
5211
5219
  }
5212
5220
  }
5213
5221
 
5222
+ var DepreciationLvpRateEnum;
5223
+ (function (DepreciationLvpRateEnum) {
5224
+ DepreciationLvpRateEnum[DepreciationLvpRateEnum["FIRST_YEAR"] = 0.1875] = "FIRST_YEAR";
5225
+ DepreciationLvpRateEnum[DepreciationLvpRateEnum["DEFAULT"] = 0.375] = "DEFAULT";
5226
+ })(DepreciationLvpRateEnum || (DepreciationLvpRateEnum = {}));
5227
+
5214
5228
  var DepreciationGroupEnum;
5215
5229
  (function (DepreciationGroupEnum) {
5216
5230
  DepreciationGroupEnum[DepreciationGroupEnum["BUILDING_IMPROVEMENTS"] = 0] = "BUILDING_IMPROVEMENTS";
@@ -5400,7 +5414,7 @@ var AppEventTypeEnum;
5400
5414
  AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_CREATED"] = 22] = "PROPERTY_MOVEMENT_CREATED";
5401
5415
  AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_UPDATED"] = 23] = "PROPERTY_MOVEMENT_UPDATED";
5402
5416
  AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_DELETED"] = 24] = "PROPERTY_MOVEMENT_DELETED";
5403
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_OWNER_UPDATED"] = 25] = "PROPERTY_OWNER_UPDATED";
5417
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SHARE_UPDATED"] = 25] = "PROPERTY_SHARE_UPDATED";
5404
5418
  AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_ADDED"] = 26] = "PROPERTY_SUBSCRIPTION_ADDED";
5405
5419
  AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_DELETED"] = 27] = "PROPERTY_SUBSCRIPTION_DELETED";
5406
5420
  AppEventTypeEnum[AppEventTypeEnum["PROPERTY_VALUATION_DOCUMENT_CREATED"] = 28] = "PROPERTY_VALUATION_DOCUMENT_CREATED";
@@ -5615,8 +5629,8 @@ __decorate([
5615
5629
  // return '/client/bank-feeds';
5616
5630
  // case NOTIFICATION_EVENT_TYPES.clientInvite.includes(obj.eventType):
5617
5631
  // return '/client/users/invitations';
5618
- // case NOTIFICATION_EVENT_TYPES.propertyOwner.includes(obj.eventType):
5619
- // return '/client/users/co-owners';
5632
+ // case NOTIFICATION_EVENT_TYPES.propertyShare.includes(obj.eventType):
5633
+ // return '/client/users/shares';
5620
5634
  // case NOTIFICATION_EVENT_TYPES.employeeInviteFromClient.includes(obj.eventType):
5621
5635
  // return '/firm/clients/invites';
5622
5636
  default:
@@ -5702,14 +5716,15 @@ const CAPITAL_COSTS_ITEMS = [
5702
5716
  ];
5703
5717
 
5704
5718
  /**
5719
+ * @TODO used only on dashboard, move from tt-core
5705
5720
  * Enum with properties ownership filter options
5706
5721
  */
5707
- var OwnershipFilterOptionsEnum;
5708
- (function (OwnershipFilterOptionsEnum) {
5709
- OwnershipFilterOptionsEnum[OwnershipFilterOptionsEnum["ALL_PROPERTIES"] = 1] = "ALL_PROPERTIES";
5710
- OwnershipFilterOptionsEnum[OwnershipFilterOptionsEnum["OWN_PROPERTIES"] = 2] = "OWN_PROPERTIES";
5711
- OwnershipFilterOptionsEnum[OwnershipFilterOptionsEnum["SHARED_PROPERTIES"] = 3] = "SHARED_PROPERTIES";
5712
- })(OwnershipFilterOptionsEnum || (OwnershipFilterOptionsEnum = {}));
5722
+ var ShareFilterOptionsEnum;
5723
+ (function (ShareFilterOptionsEnum) {
5724
+ ShareFilterOptionsEnum[ShareFilterOptionsEnum["ALL"] = 1] = "ALL";
5725
+ ShareFilterOptionsEnum[ShareFilterOptionsEnum["CREATED"] = 2] = "CREATED";
5726
+ ShareFilterOptionsEnum[ShareFilterOptionsEnum["SHARED"] = 3] = "SHARED";
5727
+ })(ShareFilterOptionsEnum || (ShareFilterOptionsEnum = {}));
5713
5728
 
5714
5729
  /**
5715
5730
  * class contains equity information for passed financial year
@@ -5892,49 +5907,49 @@ class PropertyEquityChartData {
5892
5907
  }
5893
5908
  }
5894
5909
 
5895
- class PropertyOwner$1 {
5910
+ class PropertyShare$1 {
5896
5911
  }
5897
5912
 
5898
- class PropertyOwner extends PropertyOwner$1 {
5913
+ class PropertyShare extends PropertyShare$1 {
5899
5914
  isAccepted() {
5900
- return this.status === PropertyOwnerStatusEnum.APPROVED;
5915
+ return this.status === PropertyShareStatusEnum.APPROVED;
5901
5916
  }
5902
5917
  isPending() {
5903
- return this.status === PropertyOwnerStatusEnum.PENDING;
5918
+ return this.status === PropertyShareStatusEnum.PENDING;
5904
5919
  }
5905
5920
  isRejected() {
5906
- return this.status === PropertyOwnerStatusEnum.REJECTED;
5921
+ return this.status === PropertyShareStatusEnum.REJECTED;
5907
5922
  }
5908
5923
  get statusName() {
5909
5924
  var _a;
5910
- return (_a = PropertyOwnerStatusEnum[this.status]) === null || _a === void 0 ? void 0 : _a.toLowerCase();
5925
+ return (_a = PropertyShareStatusEnum[this.status]) === null || _a === void 0 ? void 0 : _a.toLowerCase();
5911
5926
  }
5912
5927
  /**
5913
5928
  * Return full user name if user is already registered.
5914
5929
  * Otherwise - return first name from invitation
5915
5930
  */
5916
- get fullName() {
5931
+ get userName() {
5917
5932
  return this.user ? this.user.fullName : `${this.invite.firstName}`;
5918
5933
  }
5919
5934
  }
5920
5935
  __decorate([
5921
5936
  Type(() => Date)
5922
- ], PropertyOwner.prototype, "fromDate", void 0);
5937
+ ], PropertyShare.prototype, "fromDate", void 0);
5923
5938
  __decorate([
5924
5939
  Type(() => Date)
5925
- ], PropertyOwner.prototype, "toDate", void 0);
5940
+ ], PropertyShare.prototype, "toDate", void 0);
5926
5941
  __decorate([
5927
5942
  Type(() => User)
5928
- ], PropertyOwner.prototype, "user", void 0);
5943
+ ], PropertyShare.prototype, "user", void 0);
5929
5944
  __decorate([
5930
5945
  Type(() => RegistrationInvite)
5931
- ], PropertyOwner.prototype, "invite", void 0);
5946
+ ], PropertyShare.prototype, "invite", void 0);
5932
5947
  __decorate([
5933
5948
  Type(() => Property)
5934
- ], PropertyOwner.prototype, "property", void 0);
5949
+ ], PropertyShare.prototype, "property", void 0);
5935
5950
  __decorate([
5936
5951
  Transform(({ obj }) => obj.user ? obj.user.email : obj.invite.email)
5937
- ], PropertyOwner.prototype, "email", void 0);
5952
+ ], PropertyShare.prototype, "email", void 0);
5938
5953
 
5939
5954
  class PropertySale$1 {
5940
5955
  }
@@ -6729,7 +6744,7 @@ class BankAccountService extends BaseRestService {
6729
6744
  */
6730
6745
  listenToEventDispatcherChanges() {
6731
6746
  this.eventDispatcherService.on([
6732
- AppEventTypeEnum.PROPERTY_OWNER_UPDATED,
6747
+ AppEventTypeEnum.PROPERTY_SHARE_UPDATED,
6733
6748
  AppEventTypeEnum.LOAN_PAYOUT_UPDATED,
6734
6749
  AppEventTypeEnum.BANK_CONNECTION_ADDED
6735
6750
  ]).subscribe(() => {
@@ -7849,7 +7864,7 @@ class DepreciationService extends BaseRestService {
7849
7864
  * Listen to EventDispatcherService event related to updated bank loan
7850
7865
  */
7851
7866
  listenToUpdatedLoan() {
7852
- this.eventDispatcherService.on([AppEventTypeEnum.LOAN_UPDATED, AppEventTypeEnum.PROPERTY_OWNER_UPDATED]).subscribe(() => {
7867
+ this.eventDispatcherService.on([AppEventTypeEnum.LOAN_UPDATED, AppEventTypeEnum.PROPERTY_SHARE_UPDATED]).subscribe(() => {
7853
7868
  this.fetch().subscribe();
7854
7869
  });
7855
7870
  }
@@ -8694,8 +8709,16 @@ const PDF_CONFIG = {
8694
8709
  fontWeight: 'bold',
8695
8710
  positionX: 14,
8696
8711
  positionY: 10,
8697
- fillColor: 255,
8698
- textColor: 0
8712
+ colorWhite: '#ffffff',
8713
+ colorBlack: '#000000',
8714
+ colorPrimary: '#00b7f0'
8715
+ },
8716
+ logo: {
8717
+ src: '/assets/img/icons/logo.png',
8718
+ width: 30,
8719
+ height: 7,
8720
+ positionX: 168,
8721
+ positionY: 6
8699
8722
  },
8700
8723
  // coords for file section title (group, table, e.t.c.)
8701
8724
  contentTitleCoords: {
@@ -8732,20 +8755,35 @@ class PdfService {
8732
8755
  generateFromTables(tables, title) {
8733
8756
  const pdf = new jsPDF();
8734
8757
  this.setDocumentTitle(pdf, title);
8758
+ this.setDocumentLogo(pdf);
8735
8759
  tables.forEach((table) => {
8736
- var _a, _b;
8760
+ var _a;
8761
+ // Add table caption if not provided
8762
+ if (!table.caption) {
8763
+ table.createCaption();
8764
+ table.caption.innerText = '';
8765
+ }
8737
8766
  // coords of last table
8738
8767
  const lastTableCoords = pdf['lastAutoTable'].finalY || PDF_CONFIG.contentCoords.marginTop;
8739
- pdf.text((_a = table.caption) === null || _a === void 0 ? void 0 : _a.innerText, PDF_CONFIG.contentCoords.marginLeft, lastTableCoords + PDF_CONFIG.contentCoords.marginTop);
8768
+ pdf.text(table.caption.innerText, PDF_CONFIG.contentCoords.marginLeft, lastTableCoords + PDF_CONFIG.contentCoords.marginTop);
8740
8769
  // get caption height based on caption content height
8741
- const captionHeight = pdf.getTextDimensions(pdf.splitTextToSize((_b = table.caption) === null || _b === void 0 ? void 0 : _b.innerText, pdf.internal.pageSize.width)).h;
8770
+ const captionHeight = pdf.getTextDimensions(pdf.splitTextToSize((_a = table.caption) === null || _a === void 0 ? void 0 : _a.innerText, pdf.internal.pageSize.width)).h;
8742
8771
  // table options
8743
8772
  const options = {
8744
8773
  html: table,
8745
8774
  startY: lastTableCoords + captionHeight + PDF_CONFIG.contentTitleCoords.marginTop,
8775
+ headStyles: {
8776
+ fillColor: PDF_CONFIG.text.colorPrimary,
8777
+ },
8746
8778
  footStyles: {
8747
- fillColor: PDF_CONFIG.text.fillColor,
8748
- textColor: PDF_CONFIG.text.textColor
8779
+ fillColor: PDF_CONFIG.text.colorWhite,
8780
+ textColor: PDF_CONFIG.text.colorBlack
8781
+ },
8782
+ didParseCell: (data) => {
8783
+ // Align last column content to right
8784
+ if (data.table.columns.length > 1 && (data.column.index === data.table.columns.length - 1)) {
8785
+ data.cell.styles.halign = 'right';
8786
+ }
8749
8787
  }
8750
8788
  };
8751
8789
  autoTable(pdf, options);
@@ -8757,6 +8795,11 @@ class PdfService {
8757
8795
  .setFont(PDF_CONFIG.text.fontName, PDF_CONFIG.text.fontStyle, PDF_CONFIG.text.fontWeight)
8758
8796
  .text(title, PDF_CONFIG.text.positionX, PDF_CONFIG.text.positionY);
8759
8797
  }
8798
+ setDocumentLogo(doc) {
8799
+ const logo = new Image();
8800
+ logo.src = PDF_CONFIG.logo.src;
8801
+ doc.addImage(logo, 'PNG', PDF_CONFIG.logo.positionX, PDF_CONFIG.logo.positionY, PDF_CONFIG.logo.width, PDF_CONFIG.logo.height);
8802
+ }
8760
8803
  /**
8761
8804
  * @Todo remove/refactor when all DataTable dependent methods will be cleared-up
8762
8805
  * Generate PDF file from provided data
@@ -8810,16 +8853,16 @@ class PropertyService extends BaseRestService {
8810
8853
  this.listenEvents();
8811
8854
  }
8812
8855
  listenEvents() {
8813
- this.listenCoOwnerInviteAccepted();
8856
+ this.listenShareInviteAccepted();
8814
8857
  this.listenServiceSubscriptionUpdated();
8815
8858
  // @TODO Alex: consider to refactor property movements logic similar to client-movements
8816
8859
  this.listenMovementsChanged();
8817
8860
  }
8818
8861
  /**
8819
- * Update cache when owner invitation accepted
8862
+ * Update cache when share invitation accepted
8820
8863
  */
8821
- listenCoOwnerInviteAccepted() {
8822
- this.eventDispatcherService.on(AppEventTypeEnum.PROPERTY_OWNER_UPDATED).subscribe(() => this.resetCache());
8864
+ listenShareInviteAccepted() {
8865
+ this.eventDispatcherService.on(AppEventTypeEnum.PROPERTY_SHARE_UPDATED).subscribe(() => this.resetCache());
8823
8866
  }
8824
8867
  /**
8825
8868
  * Update cache when user's service subscription is updated
@@ -8886,7 +8929,7 @@ class PropertyService extends BaseRestService {
8886
8929
  this.updateCache();
8887
8930
  }));
8888
8931
  }
8889
- getByCoOwnerId(id) {
8932
+ getByShareId(id) {
8890
8933
  return this.get().pipe(map((properties) => {
8891
8934
  return properties.filter((property) => property.user.id === id);
8892
8935
  }));
@@ -9108,15 +9151,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
9108
9151
  }] }]; } });
9109
9152
 
9110
9153
  // @TODO check and improve logic during refactoring
9111
- class PropertyOwnerService extends BaseRestService {
9154
+ class PropertyShareService extends BaseRestService {
9112
9155
  constructor(http, eventDispatcherService, environment) {
9113
9156
  super(http, eventDispatcherService, environment);
9114
9157
  this.http = http;
9115
9158
  this.eventDispatcherService = eventDispatcherService;
9116
9159
  this.environment = environment;
9117
- // api url parameter for properties co-owners
9118
- this.url = 'properties/co-owners';
9119
- this.modelClass = PropertyOwner;
9160
+ // api url parameter for properties shares
9161
+ this.url = 'properties/shares';
9162
+ this.modelClass = PropertyShare;
9120
9163
  this.listenEvents();
9121
9164
  }
9122
9165
  /**
@@ -9128,70 +9171,62 @@ class PropertyOwnerService extends BaseRestService {
9128
9171
  /**
9129
9172
  * Updated loan
9130
9173
  */
9131
- update(propertyOwner) {
9132
- return this.http.put(`${this.environment.apiV2}/${this.url}/${propertyOwner.id}`, propertyOwner)
9133
- .pipe(map((updatedPropertyOwnerBase) => {
9134
- const updatedPropertyOwner = plainToClass(PropertyOwner, updatedPropertyOwnerBase);
9174
+ update(propertyShare) {
9175
+ return this.http.put(`${this.environment.apiV2}/${this.url}/${propertyShare.id}`, propertyShare)
9176
+ .pipe(map((updatedPropertyShareBase) => {
9177
+ const updatedPropertyShare = plainToClass(PropertyShare, updatedPropertyShareBase);
9135
9178
  // if loan type is NOT vehicle - fire EventDispatcher event
9136
- this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.PROPERTY_OWNER_UPDATED, null));
9137
- replace(this.cache, updatedPropertyOwner);
9179
+ this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.PROPERTY_SHARE_UPDATED, null));
9180
+ replace(this.cache, updatedPropertyShare);
9138
9181
  this.updateCache();
9139
- return updatedPropertyOwner;
9182
+ return updatedPropertyShare;
9140
9183
  }));
9141
9184
  }
9142
9185
  /**
9143
- * Re-invite property owner
9186
+ * Re-invite property share
9144
9187
  * @param share user to share property
9145
9188
  */
9146
9189
  reinvite(share) {
9147
9190
  return this.http.post(`${this.environment.apiV2}/${this.url}/${share.id}/reinvite`, {});
9148
9191
  }
9149
- /**
9150
- * Get incoming property owners list
9151
- */
9152
9192
  getIncoming() {
9153
9193
  return this.get()
9154
- .pipe(map((propertyOwners) => {
9155
- const propertyOwnersIncoming = [];
9156
- propertyOwners.forEach((propertyOwner) => {
9194
+ .pipe(map((propertyShares) => {
9195
+ const propertySharesIncoming = [];
9196
+ propertyShares.forEach((propertyShare) => {
9157
9197
  var _a;
9158
- if (((_a = propertyOwner.user) === null || _a === void 0 ? void 0 : _a.isLoggedIn()) && propertyOwner.isPending() && propertyOwner.property.user.id !== +localStorage.getItem('userId')) {
9159
- propertyOwnersIncoming.push(propertyOwner);
9198
+ if (((_a = propertyShare.user) === null || _a === void 0 ? void 0 : _a.isLoggedIn()) && propertyShare.isPending() && propertyShare.property.user.id !== +localStorage.getItem('userId')) {
9199
+ propertySharesIncoming.push(propertyShare);
9160
9200
  }
9161
9201
  });
9162
- return propertyOwnersIncoming;
9202
+ return propertySharesIncoming;
9163
9203
  }));
9164
9204
  }
9165
9205
  /**
9166
- * Get outcoming property owners list
9206
+ * Get outcoming property shares list
9167
9207
  */
9168
9208
  getOutcoming() {
9169
- return this.get().pipe(map((propertyOwners) => {
9170
- return this.filterOutcoming(propertyOwners);
9209
+ return this.get().pipe(map((propertyShares) => {
9210
+ return this.filterOutcoming(propertyShares);
9171
9211
  }));
9172
9212
  }
9173
9213
  /**
9174
- * Filter outcoming property owners
9175
- * @param propertyOwners which should be filtered
9214
+ * Filter outcoming property shares
9176
9215
  */
9177
- filterOutcoming(propertyOwners) {
9178
- const propertyOwnersOutcoming = [];
9179
- propertyOwners.forEach((propertyOwner) => {
9216
+ filterOutcoming(propertyShares) {
9217
+ const propertySharesOutcoming = [];
9218
+ propertyShares.forEach((propertyShare) => {
9180
9219
  var _a;
9181
- if (!((_a = propertyOwner.user) === null || _a === void 0 ? void 0 : _a.isLoggedIn())) {
9182
- propertyOwnersOutcoming.push(propertyOwner);
9220
+ if (!((_a = propertyShare.user) === null || _a === void 0 ? void 0 : _a.isLoggedIn())) {
9221
+ propertySharesOutcoming.push(propertyShare);
9183
9222
  }
9184
9223
  });
9185
- return propertyOwnersOutcoming;
9224
+ return propertySharesOutcoming;
9186
9225
  }
9187
- /**
9188
- * Get list of co-owners filtered by property id
9189
- * @param propertyId
9190
- */
9191
9226
  getByPropertyId(propertyId) {
9192
9227
  return this.get()
9193
- .pipe(map((propertyOwners) => {
9194
- return propertyOwners.filter((propertyOwner) => propertyOwner.property.id === propertyId);
9228
+ .pipe(map((propertyShares) => {
9229
+ return propertyShares.filter((propertyShare) => propertyShare.property.id === propertyId);
9195
9230
  }));
9196
9231
  }
9197
9232
  /**
@@ -9200,16 +9235,16 @@ class PropertyOwnerService extends BaseRestService {
9200
9235
  listenUserUpdated() {
9201
9236
  this.eventDispatcherService.on(AppEventTypeEnum.USER_UPDATED)
9202
9237
  .subscribe(() => {
9203
- this.fetch().subscribe((propertyOwners) => {
9204
- this.cache = propertyOwners;
9238
+ this.fetch().subscribe((propertyShares) => {
9239
+ this.cache = propertyShares;
9205
9240
  this.updateCache();
9206
9241
  });
9207
9242
  });
9208
9243
  }
9209
9244
  }
9210
- PropertyOwnerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyOwnerService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
9211
- PropertyOwnerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyOwnerService, providedIn: 'root' });
9212
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyOwnerService, decorators: [{
9245
+ PropertyShareService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyShareService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
9246
+ PropertyShareService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyShareService, providedIn: 'root' });
9247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyShareService, decorators: [{
9213
9248
  type: Injectable,
9214
9249
  args: [{
9215
9250
  providedIn: 'root'
@@ -10720,5 +10755,5 @@ class ResetPasswordForm extends AbstractForm {
10720
10755
  * Generated bundle index. Do not edit.
10721
10756
  */
10722
10757
 
10723
- export { AbstractForm, Address, AddressService, AddressTypeEnum, AlphabetColorsEnum, AppEvent, AppEventTypeEnum, AssetEntityTypeEnum, AssetTypeEnum, AssetsService, AuthService, BANK_ACCOUNT_TYPES, Bank, BankAccount, BankAccountCalculationService, BankAccountChartData, BankAccountCollection, BankAccountProperty, BankAccountService, BankAccountStatusEnum, BankAccountTypeEnum, BankConnection, BankConnectionService, BankConnectionStatusEnum, BankService, BankTransaction, BankTransactionCalculationService, BankTransactionChartData, BankTransactionCollection, BankTransactionService, BankTransactionSummaryFieldsEnum, BankTransactionTypeEnum, BasiqJob, BasiqService, BasiqToken, BorrowingExpense, BorrowingExpenseLoan, BorrowingExpenseService, CAPITAL_COSTS_ITEMS, CHART_ACCOUNTS_CATEGORIES, CalculationFormItem, CalculationFormTypeEnum, CapitalProjectService, ChartAccounts, ChartAccountsCategoryEnum, ChartAccountsDepreciation, ChartAccountsDepreciationService, ChartAccountsEtpEnum, ChartAccountsHeading, ChartAccountsHeadingTaxDeductibleEnum, ChartAccountsHeadingTaxableEnum, ChartAccountsHeadingVehicleListEnum, ChartAccountsListEnum, ChartAccountsMetadata, ChartAccountsMetadataListEnum, ChartAccountsMetadataTypeEnum, ChartAccountsService, ChartAccountsTaxLabelsEnum, ChartAccountsTypeEnum, ChartData, ChartSerie, Chat, ChatService, ChatStatusEnum, ChatViewTypeEnum, ClientCollection, ClientDetails, ClientDetailsMedicareExemptionEnum, ClientDetailsWorkDepreciationCalculationEnum, ClientDetailsWorkingHolidayMakerEnum, ClientInvite, ClientInviteService, ClientInviteStatusEnum, ClientInviteTypeEnum, ClientMovement, ClientMovementCollection, ClientMovementService, ClientPortfolioChartData, ClientPortfolioReport, ClientPortfolioReportCollection, ClientPortfolioReportService, Collection, CollectionDictionary, CorelogicService, CorelogicSuggestion, Country, DEFAULT_VEHICLE_EXPENSE, DEPRECIATION_GROUPS, DOCUMENT_FILE_TYPES, DataTable, DataTableColumn, Depreciation, DepreciationCalculationEnum, DepreciationCalculationPercentEnum, DepreciationCapitalProject, DepreciationCollection, DepreciationForecast, DepreciationForecastCollection, DepreciationGroup, DepreciationGroupEnum, DepreciationGroupItem, DepreciationReceipt, DepreciationService, DepreciationTypeEnum, DepreciationWriteOffAmountEnum, Document, DocumentApiUrlPrefixEnum, DocumentFolder, DocumentFolderService, ENDPOINTS, EmployeeCollection, EmployeeDetails, EmployeeInvite, EmployeeInviteService, EmployeeService, Endpoint, EquityPositionChartService, EventDispatcherService, FinancialYear, Firm, FirmService, FirmTypeEnum, HeaderTitleService, IconsFileEnum, IncomeAmountTypeEnum, IncomePosition, IncomeSource, IncomeSourceChartData, IncomeSourceCollection, IncomeSourceForecast, IncomeSourceForecastService, IncomeSourceService, IncomeSourceType, IncomeSourceTypeEnum, IncomeSourceTypeListOtherEnum, IncomeSourceTypeListSalaryEnum, IncomeSourceTypeListWorkEnum, InterceptorsModule, IntercomService, InviteStatusEnum, JwtService, Loan, LoanBankTypeEnum, LoanCollection, LoanFrequencyEnum, LoanInterestTypeEnum, LoanMaxNumberOfPaymentsEnum, LoanPayment, LoanPayout, LoanPayoutTypeEnum, LoanRepaymentFrequencyEnum, LoanRepaymentTypeEnum, LoanService, LoanTypeEnum, LoanVehicleTypeEnum, LogbookCollection, LogbookPeriod, LoginForm, MODULE_URL_LIST, MONTHS, Message, MessageCollection, MessageDocument, MessageDocumentCollection, MessageDocumentService, MessageService, MonthNameShortEnum, MonthNumberEnum, MyAccountHistory, MyAccountHistoryInitiatedByEnum, MyAccountHistoryStatusEnum, MyAccountHistoryTypeEnum, Notification, NotificationService, Occupation, OccupationService, OwnershipFilterOptionsEnum, PasswordForm, PdfService, Phone, PhoneTypeEnum, PreloaderService, Property, PropertyCalculationService, PropertyCategory, PropertyCategoryMovement, PropertyCategoryMovementService, PropertyCategoryService, PropertyCollection, PropertyDepreciationCalculationEnum, PropertyDocument, PropertyDocumentService, PropertyEquityChartData, PropertyEquityChartItem, PropertyForecast, PropertyOwner, PropertyOwnerAccessEnum, PropertyOwnerService, PropertyOwnerStatusEnum, PropertySale, PropertySaleService, PropertySaleTaxExemptionMetadata, PropertyService, PropertySubscription, PropertyValuation, RegisterClientForm, RegisterFirmForm, RegistrationInvite, RegistrationInviteStatusEnum, ResetPasswordForm, SUBSCRIPTION_DESCRIPTION, SUBSCRIPTION_TITLE, SalaryForecast, SalaryForecastFrequencyEnum, SalaryForecastService, ServiceNotificationStatusEnum, ServiceNotificationTypeEnum, ServicePayment, ServicePaymentStatusEnum, ServicePrice, ServicePriceCollection, ServicePriceRecurringIntervalEnum, ServicePriceTypeEnum, ServiceProduct, ServiceSubscription, ServiceSubscriptionCollection, ServiceSubscriptionItem, ServiceSubscriptionStatusEnum, SoleForecast, SoleForecastService, SpareDocumentSpareTypeEnum, SseService, SubscriptionService, SubscriptionTypeEnum, TYPE_LOAN, TankTypeEnum, TaxCalculationMedicareExemptionEnum, TaxCalculationTypeEnum, TaxExemption, TaxExemptionMetadata, TaxExemptionMetadataEnum, TaxExemptionService, TaxReturnCategoryItem, TaxReturnCategoryItemCollection, TaxReturnCategoryItemDetails, TaxReturnCategoryListEnum, TaxReturnCategorySectionEnum, TaxReview, TaxReviewCollection, TaxReviewHistoryService, TaxReviewService, TaxReviewStatusEnum, TaxSummary, TaxSummaryListEnum, TaxSummarySection, TaxSummarySectionEnum, TaxSummaryService, TaxSummaryTaxSummaryEnum, TaxSummaryTypeEnum, TicketFeedbackEnum, TicketStatusEnum, TicketTypesEnum, Transaction, TransactionAllocation, TransactionAllocationCollection, TransactionAllocationService, TransactionBase, TransactionCalculationService, TransactionCollection, TransactionMetadata, TransactionOperationEnum, TransactionReceipt, TransactionService, TransactionSourceEnum, TransactionTypeEnum, TtCoreModule, USER_ROLES, USER_WORK_POSITION, User, UserEventSetting, UserEventSettingCollection, UserEventSettingFieldEnum, UserEventSettingService, UserEventStatusEnum, UserEventType, UserEventTypeCategory, UserEventTypeClientTypeEnum, UserEventTypeEmployeeTypeEnum, UserEventTypeFrequencyEnum, UserEventTypeService, UserEventTypeUserTypeEnum, UserMedicareExemptionEnum, UserRolesEnum, UserService, UserStatusEnum, UserSwitcherService, UserTitleEnum, UserToRegister, UserWorkDepreciationCalculationEnum, UserWorkingHolidayMakerEnum, Vehicle, VehicleClaim, VehicleClaimMethodEnum, VehicleLogbook, VehicleLogbookPurposeEnum, WORK_TANK_LOGBOOK_PURPOSE_OPTIONS, WorkTankService, XlsxService, cloneDeep, compare, compareMatOptions, createDate, displayMatOptions, enumToList, getDocIcon, replace, roundTo, sort, sortDeep, taxReviewFilterPredicate };
10758
+ export { AbstractForm, Address, AddressService, AddressTypeEnum, AlphabetColorsEnum, AppEvent, AppEventTypeEnum, AssetEntityTypeEnum, AssetTypeEnum, AssetsService, AuthService, BANK_ACCOUNT_TYPES, Bank, BankAccount, BankAccountCalculationService, BankAccountChartData, BankAccountCollection, BankAccountProperty, BankAccountService, BankAccountStatusEnum, BankAccountTypeEnum, BankConnection, BankConnectionService, BankConnectionStatusEnum, BankService, BankTransaction, BankTransactionCalculationService, BankTransactionChartData, BankTransactionCollection, BankTransactionService, BankTransactionSummaryFieldsEnum, BankTransactionTypeEnum, BasiqJob, BasiqService, BasiqToken, BorrowingExpense, BorrowingExpenseLoan, BorrowingExpenseService, CAPITAL_COSTS_ITEMS, CHART_ACCOUNTS_CATEGORIES, CalculationFormItem, CalculationFormTypeEnum, CapitalProjectService, ChartAccounts, ChartAccountsCategoryEnum, ChartAccountsDepreciation, ChartAccountsDepreciationService, ChartAccountsEtpEnum, ChartAccountsHeading, ChartAccountsHeadingTaxDeductibleEnum, ChartAccountsHeadingTaxableEnum, ChartAccountsHeadingVehicleListEnum, ChartAccountsListEnum, ChartAccountsMetadata, ChartAccountsMetadataListEnum, ChartAccountsMetadataTypeEnum, ChartAccountsService, ChartAccountsTaxLabelsEnum, ChartAccountsTypeEnum, ChartData, ChartSerie, Chat, ChatService, ChatStatusEnum, ChatViewTypeEnum, ClientCollection, ClientDetails, ClientDetailsMedicareExemptionEnum, ClientDetailsWorkDepreciationCalculationEnum, ClientDetailsWorkingHolidayMakerEnum, ClientInvite, ClientInviteService, ClientInviteStatusEnum, ClientInviteTypeEnum, ClientMovement, ClientMovementCollection, ClientMovementService, ClientPortfolioChartData, ClientPortfolioReport, ClientPortfolioReportCollection, ClientPortfolioReportService, Collection, CollectionDictionary, CorelogicService, CorelogicSuggestion, Country, DEFAULT_VEHICLE_EXPENSE, DEPRECIATION_GROUPS, DOCUMENT_FILE_TYPES, DataTable, DataTableColumn, Depreciation, DepreciationCalculationEnum, DepreciationCalculationPercentEnum, DepreciationCapitalProject, DepreciationCollection, DepreciationForecast, DepreciationForecastCollection, DepreciationGroup, DepreciationGroupEnum, DepreciationGroupItem, DepreciationLvpRateEnum, DepreciationReceipt, DepreciationService, DepreciationTypeEnum, DepreciationWriteOffAmountEnum, Document, DocumentApiUrlPrefixEnum, DocumentFolder, DocumentFolderService, ENDPOINTS, EmployeeCollection, EmployeeDetails, EmployeeInvite, EmployeeInviteService, EmployeeService, Endpoint, EquityPositionChartService, EventDispatcherService, FinancialYear, Firm, FirmService, FirmTypeEnum, HeaderTitleService, IconsFileEnum, IncomeAmountTypeEnum, IncomePosition, IncomeSource, IncomeSourceChartData, IncomeSourceCollection, IncomeSourceForecast, IncomeSourceForecastService, IncomeSourceService, IncomeSourceType, IncomeSourceTypeEnum, IncomeSourceTypeListOtherEnum, IncomeSourceTypeListSalaryEnum, IncomeSourceTypeListWorkEnum, InterceptorsModule, IntercomService, InviteStatusEnum, JwtService, Loan, LoanBankTypeEnum, LoanCollection, LoanFrequencyEnum, LoanInterestTypeEnum, LoanMaxNumberOfPaymentsEnum, LoanPayment, LoanPayout, LoanPayoutTypeEnum, LoanRepaymentFrequencyEnum, LoanRepaymentTypeEnum, LoanService, LoanTypeEnum, LoanVehicleTypeEnum, LogbookCollection, LogbookPeriod, LoginForm, MODULE_URL_LIST, MONTHS, Message, MessageCollection, MessageDocument, MessageDocumentCollection, MessageDocumentService, MessageService, MonthNameShortEnum, MonthNumberEnum, MyAccountHistory, MyAccountHistoryInitiatedByEnum, MyAccountHistoryStatusEnum, MyAccountHistoryTypeEnum, Notification, NotificationService, Occupation, OccupationService, PasswordForm, PdfService, Phone, PhoneTypeEnum, PreloaderService, Property, PropertyCalculationService, PropertyCategory, PropertyCategoryMovement, PropertyCategoryMovementService, PropertyCategoryService, PropertyCollection, PropertyDepreciationCalculationEnum, PropertyDocument, PropertyDocumentService, PropertyEquityChartData, PropertyEquityChartItem, PropertyForecast, PropertySale, PropertySaleService, PropertySaleTaxExemptionMetadata, PropertyService, PropertyShare, PropertyShareAccessEnum, PropertyShareService, PropertyShareStatusEnum, PropertySubscription, PropertyValuation, RegisterClientForm, RegisterFirmForm, RegistrationInvite, RegistrationInviteStatusEnum, ResetPasswordForm, SUBSCRIPTION_DESCRIPTION, SUBSCRIPTION_TITLE, SalaryForecast, SalaryForecastFrequencyEnum, SalaryForecastService, ServiceNotificationStatusEnum, ServiceNotificationTypeEnum, ServicePayment, ServicePaymentStatusEnum, ServicePrice, ServicePriceCollection, ServicePriceRecurringIntervalEnum, ServicePriceTypeEnum, ServiceProduct, ServiceSubscription, ServiceSubscriptionCollection, ServiceSubscriptionItem, ServiceSubscriptionStatusEnum, ShareFilterOptionsEnum, SoleForecast, SoleForecastService, SpareDocumentSpareTypeEnum, SseService, SubscriptionService, SubscriptionTypeEnum, TYPE_LOAN, TankTypeEnum, TaxCalculationMedicareExemptionEnum, TaxCalculationTypeEnum, TaxExemption, TaxExemptionEnum, TaxExemptionMetadata, TaxExemptionMetadataEnum, TaxExemptionService, TaxReturnCategoryItem, TaxReturnCategoryItemCollection, TaxReturnCategoryItemDetails, TaxReturnCategoryListEnum, TaxReturnCategorySectionEnum, TaxReview, TaxReviewCollection, TaxReviewHistoryService, TaxReviewService, TaxReviewStatusEnum, TaxSummary, TaxSummaryListEnum, TaxSummarySection, TaxSummarySectionEnum, TaxSummaryService, TaxSummaryTaxSummaryEnum, TaxSummaryTypeEnum, TicketFeedbackEnum, TicketStatusEnum, TicketTypesEnum, Transaction, TransactionAllocation, TransactionAllocationCollection, TransactionAllocationService, TransactionBase, TransactionCalculationService, TransactionCollection, TransactionMetadata, TransactionOperationEnum, TransactionReceipt, TransactionService, TransactionSourceEnum, TransactionTypeEnum, TtCoreModule, USER_ROLES, USER_WORK_POSITION, User, UserEventSetting, UserEventSettingCollection, UserEventSettingFieldEnum, UserEventSettingService, UserEventStatusEnum, UserEventType, UserEventTypeCategory, UserEventTypeClientTypeEnum, UserEventTypeEmployeeTypeEnum, UserEventTypeFrequencyEnum, UserEventTypeService, UserEventTypeUserTypeEnum, UserMedicareExemptionEnum, UserRolesEnum, UserService, UserStatusEnum, UserSwitcherService, UserTitleEnum, UserToRegister, UserWorkDepreciationCalculationEnum, UserWorkingHolidayMakerEnum, Vehicle, VehicleClaim, VehicleClaimMethodEnum, VehicleLogbook, VehicleLogbookPurposeEnum, WORK_TANK_LOGBOOK_PURPOSE_OPTIONS, WorkTankService, XlsxService, cloneDeep, compare, compareMatOptions, createDate, displayMatOptions, enumToList, getDocIcon, replace, roundTo, sort, sortDeep, taxReviewFilterPredicate };
10724
10759
  //# sourceMappingURL=taxtank-core.js.map