taxtank-core 0.16.8 → 0.16.11

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 (25) hide show
  1. package/bundles/taxtank-core.umd.js +66 -56
  2. package/bundles/taxtank-core.umd.js.map +1 -1
  3. package/esm2015/lib/collections/income-source.collection.js +4 -1
  4. package/esm2015/lib/db/Enums/income-source-type-list-other.enum.js +1 -1
  5. package/esm2015/lib/db/Enums/income-source-type-list-work.enum.js +2 -1
  6. package/esm2015/lib/db/Enums/income-source-type.enum.js +3 -4
  7. package/esm2015/lib/models/event/app-event-type.enum.js +38 -37
  8. package/esm2015/lib/models/income-source/income-source-type.js +4 -6
  9. package/esm2015/lib/models/income-source/income-source.js +4 -2
  10. package/esm2015/lib/models/toast/toast.js +2 -1
  11. package/esm2015/lib/services/account-setup/account-setup.service.js +11 -7
  12. package/esm2015/lib/services/http/bank/basiq/basiq.service.js +5 -3
  13. package/fesm2015/taxtank-core.js +64 -56
  14. package/fesm2015/taxtank-core.js.map +1 -1
  15. package/lib/collections/income-source.collection.d.ts +1 -0
  16. package/lib/db/Enums/income-source-type-list-work.enum.d.ts +1 -0
  17. package/lib/db/Enums/income-source-type.enum.d.ts +3 -4
  18. package/lib/models/event/app-event-type.enum.d.ts +37 -36
  19. package/lib/models/income-source/income-source-type.d.ts +1 -1
  20. package/lib/models/toast/toast.d.ts +1 -0
  21. package/lib/services/account-setup/account-setup.service.d.ts +3 -2
  22. package/lib/services/http/bank/basiq/basiq.service.d.ts +1 -1
  23. package/package.json +1 -1
  24. package/esm2015/lib/db/Enums/income-source-type-list-salary.enum.js +0 -5
  25. package/lib/db/Enums/income-source-type-list-salary.enum.d.ts +0 -3
@@ -1621,6 +1621,9 @@ class IncomeSourceCollection extends Collection {
1621
1621
  filterByTypes(types) {
1622
1622
  return this.items.filter((incomeSource) => types.includes(incomeSource.type));
1623
1623
  }
1624
+ getSalary() {
1625
+ return this.items.filter((incomeSource) => incomeSource.isSalaryIncome());
1626
+ }
1624
1627
  /**
1625
1628
  * Get income sources list of forecasts
1626
1629
  */
@@ -3176,10 +3179,9 @@ class IncomeSource$1 extends AbstractModel {
3176
3179
 
3177
3180
  var IncomeSourceTypeEnum;
3178
3181
  (function (IncomeSourceTypeEnum) {
3179
- IncomeSourceTypeEnum[IncomeSourceTypeEnum["SALARY"] = 1] = "SALARY";
3180
- IncomeSourceTypeEnum[IncomeSourceTypeEnum["WORK"] = 2] = "WORK";
3182
+ IncomeSourceTypeEnum[IncomeSourceTypeEnum["WORK"] = 1] = "WORK";
3183
+ IncomeSourceTypeEnum[IncomeSourceTypeEnum["SOLE"] = 2] = "SOLE";
3181
3184
  IncomeSourceTypeEnum[IncomeSourceTypeEnum["OTHER"] = 3] = "OTHER";
3182
- IncomeSourceTypeEnum[IncomeSourceTypeEnum["SOLE"] = 4] = "SOLE";
3183
3185
  })(IncomeSourceTypeEnum || (IncomeSourceTypeEnum = {}));
3184
3186
 
3185
3187
  class SalaryForecast$1 extends AbstractModel {
@@ -3222,13 +3224,9 @@ var SalaryForecastFrequencyEnum;
3222
3224
  class IncomeSourceType$1 extends AbstractModel {
3223
3225
  }
3224
3226
 
3225
- var IncomeSourceTypeListSalaryEnum;
3226
- (function (IncomeSourceTypeListSalaryEnum) {
3227
- IncomeSourceTypeListSalaryEnum[IncomeSourceTypeListSalaryEnum["BONUSES"] = 1] = "BONUSES";
3228
- })(IncomeSourceTypeListSalaryEnum || (IncomeSourceTypeListSalaryEnum = {}));
3229
-
3230
3227
  var IncomeSourceTypeListWorkEnum;
3231
3228
  (function (IncomeSourceTypeListWorkEnum) {
3229
+ IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["BONUSES"] = 1] = "BONUSES";
3232
3230
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["DIRECTOR_FEES"] = 2] = "DIRECTOR_FEES";
3233
3231
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["DIVIDENDS"] = 3] = "DIVIDENDS";
3234
3232
  IncomeSourceTypeListWorkEnum[IncomeSourceTypeListWorkEnum["INTEREST"] = 4] = "INTEREST";
@@ -3246,8 +3244,8 @@ var IncomeSourceTypeListOtherEnum;
3246
3244
  })(IncomeSourceTypeListOtherEnum || (IncomeSourceTypeListOtherEnum = {}));
3247
3245
 
3248
3246
  class IncomeSourceType extends IncomeSourceType$1 {
3249
- isSalary() {
3250
- return !!IncomeSourceTypeListSalaryEnum[this.id];
3247
+ isBonuses() {
3248
+ return this.id === IncomeSourceTypeListWorkEnum.BONUSES;
3251
3249
  }
3252
3250
  isWork() {
3253
3251
  return !!IncomeSourceTypeListWorkEnum[this.id];
@@ -3256,12 +3254,11 @@ class IncomeSourceType extends IncomeSourceType$1 {
3256
3254
  return !!IncomeSourceTypeListOtherEnum[this.id];
3257
3255
  }
3258
3256
  isSole() {
3257
+ // @TODO use IncomeSourceTypeListSoleEnum when sole tank ready
3259
3258
  return !!IncomeSourceTypeListOtherEnum[this.id];
3260
3259
  }
3261
3260
  get type() {
3262
3261
  switch (true) {
3263
- case this.isSalary():
3264
- return IncomeSourceTypeEnum.SALARY;
3265
3262
  case this.isWork():
3266
3263
  return IncomeSourceTypeEnum.WORK;
3267
3264
  case this.isSole():
@@ -3299,7 +3296,9 @@ __decorate([
3299
3296
 
3300
3297
  class IncomeSource extends IncomeSource$1 {
3301
3298
  isSalaryIncome() {
3302
- return this.type === IncomeSourceTypeEnum.SALARY;
3299
+ return !!this.salaryForecasts.length;
3300
+ // @TODO Vik: old code
3301
+ // return this.type === IncomeSourceTypeEnum.SALARY;
3303
3302
  }
3304
3303
  isSoleIncome() {
3305
3304
  return this.type === IncomeSourceTypeEnum.SOLE;
@@ -5847,42 +5846,43 @@ var AppEventTypeEnum;
5847
5846
  AppEventTypeEnum[AppEventTypeEnum["BANK_ACCOUNT_UPDATED"] = 3] = "BANK_ACCOUNT_UPDATED";
5848
5847
  AppEventTypeEnum[AppEventTypeEnum["BANK_TRANSACTION_ALLOCATED"] = 4] = "BANK_TRANSACTION_ALLOCATED";
5849
5848
  AppEventTypeEnum[AppEventTypeEnum["BASIQ_CONSENT_UPDATED"] = 5] = "BASIQ_CONSENT_UPDATED";
5850
- AppEventTypeEnum[AppEventTypeEnum["CLIENT_INVITE_ACCEPTED"] = 6] = "CLIENT_INVITE_ACCEPTED";
5851
- AppEventTypeEnum[AppEventTypeEnum["CLIENT_OPEN_CHAT"] = 7] = "CLIENT_OPEN_CHAT";
5852
- AppEventTypeEnum[AppEventTypeEnum["CLIENT_TRANSFER_TO_OTHER_EMPLOYEE"] = 8] = "CLIENT_TRANSFER_TO_OTHER_EMPLOYEE";
5853
- AppEventTypeEnum[AppEventTypeEnum["DEPRECIATION_DELETED"] = 9] = "DEPRECIATION_DELETED";
5854
- AppEventTypeEnum[AppEventTypeEnum["DEPRECIATIONS_CREATED"] = 10] = "DEPRECIATIONS_CREATED";
5855
- AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_CREATED"] = 11] = "INCOME_SOURCES_CREATED";
5856
- AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_UPDATED"] = 12] = "INCOME_SOURCES_UPDATED";
5857
- AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_CREATED"] = 13] = "INCOME_SOURCES_FORECASTS_CREATED";
5858
- AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_UPDATED"] = 14] = "INCOME_SOURCES_FORECASTS_UPDATED";
5859
- AppEventTypeEnum[AppEventTypeEnum["LOAN_UPDATED"] = 15] = "LOAN_UPDATED";
5860
- AppEventTypeEnum[AppEventTypeEnum["LOAN_PAYOUT_UPDATED"] = 16] = "LOAN_PAYOUT_UPDATED";
5861
- AppEventTypeEnum[AppEventTypeEnum["MESSAGE_CREATED"] = 17] = "MESSAGE_CREATED";
5862
- AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_CREATED"] = 18] = "MESSAGE_FILE_CREATED";
5863
- AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_DELETED"] = 19] = "MESSAGE_FILE_DELETED";
5864
- AppEventTypeEnum[AppEventTypeEnum["NOTIFICATION_ADDED"] = 20] = "NOTIFICATION_ADDED";
5865
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_UPDATED_WITH_DOCUMENT"] = 21] = "PROPERTY_UPDATED_WITH_DOCUMENT";
5866
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_DOCUMENT_ADDED"] = 22] = "PROPERTY_DOCUMENT_ADDED";
5867
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_CREATED"] = 23] = "PROPERTY_MOVEMENT_CREATED";
5868
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_UPDATED"] = 24] = "PROPERTY_MOVEMENT_UPDATED";
5869
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_DELETED"] = 25] = "PROPERTY_MOVEMENT_DELETED";
5870
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SHARE_UPDATED"] = 26] = "PROPERTY_SHARE_UPDATED";
5871
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_ADDED"] = 27] = "PROPERTY_SUBSCRIPTION_ADDED";
5872
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_DELETED"] = 28] = "PROPERTY_SUBSCRIPTION_DELETED";
5873
- AppEventTypeEnum[AppEventTypeEnum["PROPERTY_VALUATION_DOCUMENT_CREATED"] = 29] = "PROPERTY_VALUATION_DOCUMENT_CREATED";
5874
- AppEventTypeEnum[AppEventTypeEnum["SERVICE_SUBSCRIPTION_UPDATED"] = 30] = "SERVICE_SUBSCRIPTION_UPDATED";
5875
- AppEventTypeEnum[AppEventTypeEnum["TAX_REVIEW_UPDATED"] = 31] = "TAX_REVIEW_UPDATED";
5876
- AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_CREATED"] = 32] = "TRANSACTION_CREATED";
5877
- AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_DELETED"] = 33] = "TRANSACTION_DELETED";
5878
- AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_UPDATED"] = 34] = "TRANSACTION_UPDATED";
5879
- AppEventTypeEnum[AppEventTypeEnum["TRANSACTIONS_CREATED"] = 35] = "TRANSACTIONS_CREATED";
5880
- AppEventTypeEnum[AppEventTypeEnum["USER_UPDATED"] = 36] = "USER_UPDATED";
5881
- AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_UPDATED"] = 37] = "VEHICLE_CLAIM_UPDATED";
5882
- AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_CREATED"] = 38] = "VEHICLE_CLAIM_CREATED";
5883
- AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_CREATED"] = 39] = "VEHICLE_LOGBOOK_CREATED";
5884
- AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_UPDATED"] = 40] = "VEHICLE_LOGBOOK_UPDATED";
5885
- AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_DELETED"] = 41] = "VEHICLE_LOGBOOK_DELETED";
5849
+ AppEventTypeEnum[AppEventTypeEnum["BASIQ_CONNECTION_UPDATED"] = 6] = "BASIQ_CONNECTION_UPDATED";
5850
+ AppEventTypeEnum[AppEventTypeEnum["CLIENT_INVITE_ACCEPTED"] = 7] = "CLIENT_INVITE_ACCEPTED";
5851
+ AppEventTypeEnum[AppEventTypeEnum["CLIENT_OPEN_CHAT"] = 8] = "CLIENT_OPEN_CHAT";
5852
+ AppEventTypeEnum[AppEventTypeEnum["CLIENT_TRANSFER_TO_OTHER_EMPLOYEE"] = 9] = "CLIENT_TRANSFER_TO_OTHER_EMPLOYEE";
5853
+ AppEventTypeEnum[AppEventTypeEnum["DEPRECIATION_DELETED"] = 10] = "DEPRECIATION_DELETED";
5854
+ AppEventTypeEnum[AppEventTypeEnum["DEPRECIATIONS_CREATED"] = 11] = "DEPRECIATIONS_CREATED";
5855
+ AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_CREATED"] = 12] = "INCOME_SOURCES_CREATED";
5856
+ AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_UPDATED"] = 13] = "INCOME_SOURCES_UPDATED";
5857
+ AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_CREATED"] = 14] = "INCOME_SOURCES_FORECASTS_CREATED";
5858
+ AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_UPDATED"] = 15] = "INCOME_SOURCES_FORECASTS_UPDATED";
5859
+ AppEventTypeEnum[AppEventTypeEnum["LOAN_UPDATED"] = 16] = "LOAN_UPDATED";
5860
+ AppEventTypeEnum[AppEventTypeEnum["LOAN_PAYOUT_UPDATED"] = 17] = "LOAN_PAYOUT_UPDATED";
5861
+ AppEventTypeEnum[AppEventTypeEnum["MESSAGE_CREATED"] = 18] = "MESSAGE_CREATED";
5862
+ AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_CREATED"] = 19] = "MESSAGE_FILE_CREATED";
5863
+ AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_DELETED"] = 20] = "MESSAGE_FILE_DELETED";
5864
+ AppEventTypeEnum[AppEventTypeEnum["NOTIFICATION_ADDED"] = 21] = "NOTIFICATION_ADDED";
5865
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_UPDATED_WITH_DOCUMENT"] = 22] = "PROPERTY_UPDATED_WITH_DOCUMENT";
5866
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_DOCUMENT_ADDED"] = 23] = "PROPERTY_DOCUMENT_ADDED";
5867
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_CREATED"] = 24] = "PROPERTY_MOVEMENT_CREATED";
5868
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_UPDATED"] = 25] = "PROPERTY_MOVEMENT_UPDATED";
5869
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_DELETED"] = 26] = "PROPERTY_MOVEMENT_DELETED";
5870
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SHARE_UPDATED"] = 27] = "PROPERTY_SHARE_UPDATED";
5871
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_ADDED"] = 28] = "PROPERTY_SUBSCRIPTION_ADDED";
5872
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_DELETED"] = 29] = "PROPERTY_SUBSCRIPTION_DELETED";
5873
+ AppEventTypeEnum[AppEventTypeEnum["PROPERTY_VALUATION_DOCUMENT_CREATED"] = 30] = "PROPERTY_VALUATION_DOCUMENT_CREATED";
5874
+ AppEventTypeEnum[AppEventTypeEnum["SERVICE_SUBSCRIPTION_UPDATED"] = 31] = "SERVICE_SUBSCRIPTION_UPDATED";
5875
+ AppEventTypeEnum[AppEventTypeEnum["TAX_REVIEW_UPDATED"] = 32] = "TAX_REVIEW_UPDATED";
5876
+ AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_CREATED"] = 33] = "TRANSACTION_CREATED";
5877
+ AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_DELETED"] = 34] = "TRANSACTION_DELETED";
5878
+ AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_UPDATED"] = 35] = "TRANSACTION_UPDATED";
5879
+ AppEventTypeEnum[AppEventTypeEnum["TRANSACTIONS_CREATED"] = 36] = "TRANSACTIONS_CREATED";
5880
+ AppEventTypeEnum[AppEventTypeEnum["USER_UPDATED"] = 37] = "USER_UPDATED";
5881
+ AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_UPDATED"] = 38] = "VEHICLE_CLAIM_UPDATED";
5882
+ AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_CREATED"] = 39] = "VEHICLE_CLAIM_CREATED";
5883
+ AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_CREATED"] = 40] = "VEHICLE_LOGBOOK_CREATED";
5884
+ AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_UPDATED"] = 41] = "VEHICLE_LOGBOOK_UPDATED";
5885
+ AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_DELETED"] = 42] = "VEHICLE_LOGBOOK_DELETED";
5886
5886
  })(AppEventTypeEnum || (AppEventTypeEnum = {}));
5887
5887
 
5888
5888
  /**
@@ -6746,6 +6746,7 @@ var TaxSummaryTypeEnum;
6746
6746
  class Toast {
6747
6747
  constructor() {
6748
6748
  this.duration = 3000;
6749
+ this.autoClose = true;
6749
6750
  }
6750
6751
  }
6751
6752
 
@@ -8048,11 +8049,11 @@ class AccountSetupService {
8048
8049
  const batch = [];
8049
8050
  // Salary item is completed when user added salary income source
8050
8051
  if (incomeTypes.salary) {
8051
- batch.push(this.create(AccountSetupItemsEnum.SALARY, this.getIncomeSourcesByType(IncomeSourceTypeEnum.WORK)));
8052
+ batch.push(this.create(AccountSetupItemsEnum.SALARY, this.getIncomeSources(true)));
8052
8053
  }
8053
8054
  // Other income item is completed when user added at least one other income source
8054
8055
  if (incomeTypes.dividends || incomeTypes.other) {
8055
- batch.push(this.create(AccountSetupItemsEnum.OTHER_INCOME, this.getIncomeSourcesByType(IncomeSourceTypeEnum.OTHER)));
8056
+ batch.push(this.create(AccountSetupItemsEnum.OTHER_INCOME, this.getIncomeSources()));
8056
8057
  }
8057
8058
  // Rental income item is completed when user added at least one property
8058
8059
  if (incomeTypes.property) {
@@ -8077,11 +8078,16 @@ class AccountSetupService {
8077
8078
  return combineLatest(batch).pipe(map((items) => new AccountSetupItemCollection(items)));
8078
8079
  }
8079
8080
  /**
8080
- * @TODO work with collection when services refactored
8081
+ * @TODO Alex: work with collection when services refactored
8082
+ * @TODO Vik: waiting for income sources refactoring
8081
8083
  */
8082
- getIncomeSourcesByType(type) {
8084
+ getIncomeSources(isSalary = false) {
8083
8085
  return this.incomeSourceService.get().pipe(map((incomeSources) => {
8084
- return new IncomeSourceCollection(incomeSources).getBy('type', type).toArray();
8086
+ const collection = new IncomeSourceCollection(incomeSources);
8087
+ if (isSalary) {
8088
+ return collection.getSalary();
8089
+ }
8090
+ return collection.items.filter((incomeSource) => !incomeSource.isSalaryIncome() && !incomeSource.isSoleIncome());
8085
8091
  }));
8086
8092
  }
8087
8093
  /**
@@ -8441,7 +8447,9 @@ class BasiqService extends RestService {
8441
8447
  * Notify backend to update connections
8442
8448
  */
8443
8449
  updateConnections() {
8444
- return this.http.post(`${this.environment.apiV2}/basiq/connections`, {});
8450
+ return this.http.post(`${this.environment.apiV2}/basiq/connections`, {}).pipe(map((connections) => {
8451
+ this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.BASIQ_CONNECTION_UPDATED, !!connections));
8452
+ }));
8445
8453
  }
8446
8454
  /**
8447
8455
  * access token to use basiq connect ui iframe
@@ -8491,7 +8499,7 @@ class BasiqService extends RestService {
8491
8499
  this.confirmConsents().pipe(take(1)).subscribe();
8492
8500
  }
8493
8501
  callback();
8494
- });
8502
+ }, { once: true });
8495
8503
  }
8496
8504
  /**
8497
8505
  * Get URL with filled params to run basiq UI iframe