taxtank-core 1.0.14 → 1.0.16

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.
@@ -4,8 +4,8 @@ import * as i1$1 from '@angular/common';
4
4
  import { formatDate, CommonModule, CurrencyPipe, DatePipe } from '@angular/common';
5
5
  import * as i1 from '@angular/common/http';
6
6
  import { HttpParams, HttpClient, HttpErrorResponse, HTTP_INTERCEPTORS } from '@angular/common/http';
7
- import { map, catchError, mergeMap, filter, first as first$1, finalize, startWith, debounceTime, distinctUntilChanged } from 'rxjs/operators';
8
- import { ReplaySubject, throwError, Subject, Observable, of, forkJoin, combineLatest, BehaviorSubject, from, merge as merge$1 } from 'rxjs';
7
+ import { map, catchError, mergeMap, filter, finalize, switchMap, first as first$1, startWith, debounceTime, distinctUntilChanged } from 'rxjs/operators';
8
+ import { ReplaySubject, throwError, Subject, Observable, shareReplay, of, forkJoin, combineLatest, BehaviorSubject, from, merge as merge$1 } from 'rxjs';
9
9
  import { plainToClass, Type, Transform, Exclude, Expose, classToPlain } from 'class-transformer';
10
10
  import 'reflect-metadata';
11
11
  import { __decorate } from 'tslib';
@@ -33,6 +33,8 @@ import merge from 'lodash/merge';
33
33
  import * as i4 from '@angular/router';
34
34
  import { NavigationEnd } from '@angular/router';
35
35
  import _ from 'lodash';
36
+ import remove from 'lodash/remove';
37
+ import pick from 'lodash/pick';
36
38
  import { checkAdBlock } from 'adblock-checker';
37
39
  import { jsPDF } from 'jspdf';
38
40
  import { applyPlugin } from 'jspdf-autotable';
@@ -494,6 +496,9 @@ let Property$1 = class Property extends ObservableModel {
494
496
  this.corelogicLastRequest = null;
495
497
  }
496
498
  static { this.className = 'Property'; }
499
+ get capitalCosts() {
500
+ return this.legalFees + this.otherCapitalCosts + this.stampDuty;
501
+ }
497
502
  };
498
503
  __decorate([
499
504
  Type(() => Number)
@@ -1450,6 +1455,18 @@ var HomeOfficeClaimMethodEnum;
1450
1455
  HomeOfficeClaimMethodEnum[HomeOfficeClaimMethodEnum["OCCUPANCY"] = 3] = "OCCUPANCY";
1451
1456
  })(HomeOfficeClaimMethodEnum || (HomeOfficeClaimMethodEnum = {}));
1452
1457
 
1458
+ var SetupItemTypeEnum;
1459
+ (function (SetupItemTypeEnum) {
1460
+ SetupItemTypeEnum[SetupItemTypeEnum["EMPLOYEE"] = 0] = "EMPLOYEE";
1461
+ SetupItemTypeEnum[SetupItemTypeEnum["WORK"] = 1] = "WORK";
1462
+ SetupItemTypeEnum[SetupItemTypeEnum["PROPERTIES"] = 2] = "PROPERTIES";
1463
+ SetupItemTypeEnum[SetupItemTypeEnum["PROPERTY"] = 3] = "PROPERTY";
1464
+ SetupItemTypeEnum[SetupItemTypeEnum["BUSINESS"] = 4] = "BUSINESS";
1465
+ SetupItemTypeEnum[SetupItemTypeEnum["HOLDING"] = 5] = "HOLDING";
1466
+ SetupItemTypeEnum[SetupItemTypeEnum["BANK_ACCOUNTS"] = 6] = "BANK_ACCOUNTS";
1467
+ SetupItemTypeEnum[SetupItemTypeEnum["BANK_ACCOUNT"] = 7] = "BANK_ACCOUNT";
1468
+ })(SetupItemTypeEnum || (SetupItemTypeEnum = {}));
1469
+
1453
1470
  /**
1454
1471
  * @TODO not used for now
1455
1472
  * Bank subclass, average bank response time for some operations in milliseconds
@@ -5362,61 +5379,72 @@ __decorate([
5362
5379
  class SetupItem extends AbstractModel {
5363
5380
  }
5364
5381
 
5365
- /**
5366
- * Enum list of all possible account setup items ids. Using with [ACCOUNT_SETUP_ITEMS]{@link ACCOUNT_SETUP_ITEMS}
5367
- * @TODO Vik/Nikita: Do we need to generate it from backend? If some ids changed?
5368
- */
5369
- var AccountSetupItemsEnum;
5370
- (function (AccountSetupItemsEnum) {
5371
- AccountSetupItemsEnum[AccountSetupItemsEnum["SALARY"] = 1] = "SALARY";
5372
- AccountSetupItemsEnum[AccountSetupItemsEnum["OTHER_INCOME"] = 2] = "OTHER_INCOME";
5373
- AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY"] = 3] = "PROPERTY";
5374
- AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_FEEDS"] = 4] = "BANK_FEEDS";
5375
- AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_LOGBOOK"] = 5] = "WORK_LOGBOOK";
5376
- AccountSetupItemsEnum[AccountSetupItemsEnum["TRANSACTION_ALLOCATE"] = 6] = "TRANSACTION_ALLOCATE";
5377
- AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_BUSINESS"] = 7] = "SOLE_BUSINESS";
5378
- AccountSetupItemsEnum[AccountSetupItemsEnum["HOLDINGS"] = 8] = "HOLDINGS";
5379
- AccountSetupItemsEnum[AccountSetupItemsEnum["FIRM_DETAILS"] = 9] = "FIRM_DETAILS";
5380
- AccountSetupItemsEnum[AccountSetupItemsEnum["INVITE_TEAM"] = 10] = "INVITE_TEAM";
5381
- AccountSetupItemsEnum[AccountSetupItemsEnum["INVITE_CLIENTS"] = 11] = "INVITE_CLIENTS";
5382
- })(AccountSetupItemsEnum || (AccountSetupItemsEnum = {}));
5382
+ var AccountSetupItemStatusEnum;
5383
+ (function (AccountSetupItemStatusEnum) {
5384
+ AccountSetupItemStatusEnum[AccountSetupItemStatusEnum["PENDING"] = 1] = "PENDING";
5385
+ AccountSetupItemStatusEnum[AccountSetupItemStatusEnum["ACHIEVED"] = 2] = "ACHIEVED";
5386
+ AccountSetupItemStatusEnum[AccountSetupItemStatusEnum["SKIPPED"] = 3] = "SKIPPED";
5387
+ })(AccountSetupItemStatusEnum || (AccountSetupItemStatusEnum = {}));
5383
5388
 
5384
5389
  class AccountSetupItem extends SetupItem {
5385
- get isSalary() {
5386
- return this.id === AccountSetupItemsEnum.SALARY;
5387
- }
5388
- get isOtherIncome() {
5389
- return this.id === AccountSetupItemsEnum.OTHER_INCOME;
5390
- }
5391
- get isProperty() {
5392
- return this.id === AccountSetupItemsEnum.PROPERTY;
5393
- }
5394
- get isBankFeeds() {
5395
- return this.id === AccountSetupItemsEnum.BANK_FEEDS;
5390
+ get isPending() {
5391
+ return this.status === AccountSetupItemStatusEnum.PENDING;
5396
5392
  }
5397
- get isWorkLogbook() {
5398
- return this.id === AccountSetupItemsEnum.WORK_LOGBOOK;
5393
+ get isAchieved() {
5394
+ return this.status === AccountSetupItemStatusEnum.SKIPPED;
5399
5395
  }
5400
- get isTransactionAllocate() {
5401
- return this.id === AccountSetupItemsEnum.TRANSACTION_ALLOCATE;
5396
+ get isCompleted() {
5397
+ return [AccountSetupItemStatusEnum.ACHIEVED, AccountSetupItemStatusEnum.SKIPPED].includes(this.status);
5402
5398
  }
5403
- get isSoleBusiness() {
5404
- return this.id === AccountSetupItemsEnum.SOLE_BUSINESS;
5405
- }
5406
- get isHoldings() {
5407
- return this.id === AccountSetupItemsEnum.HOLDINGS;
5408
- }
5409
- get isFirmDetails() {
5410
- return this.id === AccountSetupItemsEnum.FIRM_DETAILS;
5411
- }
5412
- get isInviteTeam() {
5413
- return this.id === AccountSetupItemsEnum.INVITE_TEAM;
5414
- }
5415
- get isInviteClients() {
5416
- return this.id === AccountSetupItemsEnum.INVITE_CLIENTS;
5399
+ get isSkipped() {
5400
+ return this.status === AccountSetupItemStatusEnum.SKIPPED;
5417
5401
  }
5418
5402
  }
5419
5403
 
5404
+ /**
5405
+ * TODO remove
5406
+ */
5407
+ var AccountSetupItemsEnum;
5408
+ (function (AccountSetupItemsEnum) {
5409
+ // firm
5410
+ AccountSetupItemsEnum[AccountSetupItemsEnum["FIRM_DETAILS"] = 9] = "FIRM_DETAILS";
5411
+ AccountSetupItemsEnum[AccountSetupItemsEnum["FIRM_EMPLOYEES"] = 10] = "FIRM_EMPLOYEES";
5412
+ AccountSetupItemsEnum[AccountSetupItemsEnum["FIRM_CLIENTS"] = 11] = "FIRM_CLIENTS";
5413
+ // work
5414
+ AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_SALARY"] = 1] = "WORK_SALARY";
5415
+ AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_OTHER_INCOME"] = 2] = "WORK_OTHER_INCOME";
5416
+ AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_VEHICLE_CLAIM"] = 5] = "WORK_VEHICLE_CLAIM";
5417
+ AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_HOME_OFFICE"] = 13] = "WORK_HOME_OFFICE";
5418
+ AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_BANK_ACCOUNT"] = 14] = "WORK_BANK_ACCOUNT";
5419
+ AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_DEPRECIATION"] = 15] = "WORK_DEPRECIATION";
5420
+ // properties
5421
+ AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY"] = 3] = "PROPERTY";
5422
+ AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTIES"] = 29] = "PROPERTIES";
5423
+ AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTIES_BANK_ACCOUNT"] = 30] = "PROPERTIES_BANK_ACCOUNT";
5424
+ // property
5425
+ AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY_CAPITAL_COST"] = 17] = "PROPERTY_CAPITAL_COST";
5426
+ AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY_RENT_INCOME"] = 18] = "PROPERTY_RENT_INCOME";
5427
+ AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY_DEPRECIATION"] = 19] = "PROPERTY_DEPRECIATION";
5428
+ AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY_CO_OWNER"] = 20] = "PROPERTY_CO_OWNER";
5429
+ // sole
5430
+ AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_BUSINESS"] = 7] = "SOLE_BUSINESS";
5431
+ AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_BUSINESSES"] = 33] = "SOLE_BUSINESSES";
5432
+ AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_VEHICLE_CLAIM"] = 12] = "SOLE_VEHICLE_CLAIM";
5433
+ AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_HOME_OFFICE"] = 21] = "SOLE_HOME_OFFICE";
5434
+ AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_DEPRECIATION"] = 22] = "SOLE_DEPRECIATION";
5435
+ AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_BANK_ACCOUNT"] = 23] = "SOLE_BANK_ACCOUNT";
5436
+ // holding
5437
+ AccountSetupItemsEnum[AccountSetupItemsEnum["HOLDING_TRADE"] = 8] = "HOLDING_TRADE";
5438
+ AccountSetupItemsEnum[AccountSetupItemsEnum["HOLDING_INTEGRATION"] = 25] = "HOLDING_INTEGRATION";
5439
+ AccountSetupItemsEnum[AccountSetupItemsEnum["HOLDING_REPORTS"] = 36] = "HOLDING_REPORTS";
5440
+ // bank accounts
5441
+ AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_CONNECTION"] = 4] = "BANK_CONNECTION";
5442
+ AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_ACCOUNT"] = 26] = "BANK_ACCOUNT";
5443
+ AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_ALLOCATION"] = 6] = "BANK_ALLOCATION";
5444
+ AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_RULE"] = 27] = "BANK_RULE";
5445
+ AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_BORROWING_EXPENSE"] = 28] = "BANK_BORROWING_EXPENSE";
5446
+ })(AccountSetupItemsEnum || (AccountSetupItemsEnum = {}));
5447
+
5420
5448
  class User extends User$1 {
5421
5449
  constructor() {
5422
5450
  super(...arguments);
@@ -8552,6 +8580,9 @@ class ServiceSubscriptionCollection extends Collection {
8552
8580
  filterByRole(role) {
8553
8581
  return this.filter((subscription) => subscription.roles.includes(role));
8554
8582
  }
8583
+ findByRole(role) {
8584
+ return this.filterByRole(role).first;
8585
+ }
8555
8586
  hasPropertyTank() {
8556
8587
  return !!this.getItems().propertiesItem;
8557
8588
  }
@@ -8957,11 +8988,25 @@ class AllocationRuleCollection extends Collection {
8957
8988
  class AccountSetupItemCollection extends Collection {
8958
8989
  constructor(items) {
8959
8990
  super(compact(items));
8960
- this.sortBy('isCompleted', 'asc');
8991
+ this.sortBy('status', 'asc');
8961
8992
  }
8962
8993
  isCompleted() {
8963
8994
  return this.filterBy('isCompleted', true).length === this.length;
8964
8995
  }
8996
+ getByUser(user) {
8997
+ return this.filter(item => user.hasRoles(item.roles));
8998
+ }
8999
+ getScore() {
9000
+ return this.sumBy('score');
9001
+ }
9002
+ setUrlId(id) {
9003
+ this.items.forEach(item => {
9004
+ if (!item.url.includes(':id')) {
9005
+ return;
9006
+ }
9007
+ item.url = item.url.replace(':id', id);
9008
+ });
9009
+ }
8965
9010
  }
8966
9011
 
8967
9012
  /**
@@ -9021,7 +9066,7 @@ class BankAccountCollection extends Collection {
9021
9066
  * Get Collection of bank accounts by tank type
9022
9067
  */
9023
9068
  getByTankType(tankType) {
9024
- return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.tankType === tankType));
9069
+ return new BankAccountCollection(tankType ? this.items.filter((bankAccount) => bankAccount.tankType === tankType) : this.items);
9025
9070
  }
9026
9071
  /**
9027
9072
  * Get list of all bank account properties
@@ -10852,11 +10897,12 @@ __decorate([
10852
10897
  Type(() => Date)
10853
10898
  ], SharesightDetails.prototype, "sharesightLastExportDate", void 0);
10854
10899
 
10855
- class SharesightPortfolio extends AbstractModel {
10900
+ class SharesightPortfolio extends ObservableModel {
10856
10901
  constructor() {
10857
10902
  super(...arguments);
10858
10903
  this.isTaxFree = false;
10859
10904
  }
10905
+ static { this.className = 'SharesightPortfolio'; }
10860
10906
  }
10861
10907
  __decorate([
10862
10908
  Type(() => SharesightDetails)
@@ -11532,8 +11578,9 @@ let RestService$1 = class RestService extends DataService {
11532
11578
  * Refresh cache with actual backend data
11533
11579
  */
11534
11580
  refreshCache() {
11581
+ // todo why not fetch?
11535
11582
  this.cache = undefined;
11536
- this.get();
11583
+ this.get().subscribe();
11537
11584
  }
11538
11585
  /**
11539
11586
  * perform a shallow copy of the emitted data to make it immutable
@@ -11545,17 +11592,17 @@ let RestService$1 = class RestService extends DataService {
11545
11592
  * Get data from backend and fill the cache
11546
11593
  */
11547
11594
  fetch(path = this.apiUrl, cache = true, queryParams = {}) {
11548
- if (cache) {
11549
- // Set cache as empty collection to avoid multiple requests before cache filled
11550
- this.setCache([]);
11595
+ if (this.inFlight$) {
11596
+ return this.inFlight$;
11551
11597
  }
11552
- return this.http.get(path, queryParams)
11598
+ this.inFlight$ = this.http.get(path, queryParams)
11553
11599
  .pipe(map((response) => Array.isArray(response) ? response : toArray(response)), map((response) => {
11554
11600
  if (cache) {
11555
11601
  this.setCache(response, true);
11556
11602
  }
11557
11603
  return this.createCollectionInstance(this.collectionClass, response);
11558
- }), catchError((error) => this.handleError(error)));
11604
+ }), catchError((error) => this.handleError(error)), finalize(() => this.inFlight$ = null), shareReplay({ bufferSize: 1, refCount: true }));
11605
+ return this.inFlight$;
11559
11606
  }
11560
11607
  fetchFirst(queryParams = {}) {
11561
11608
  return this.fetch(this.apiUrl, false, { params: queryParams })
@@ -11564,10 +11611,11 @@ let RestService$1 = class RestService extends DataService {
11564
11611
  get(path = this.apiUrl) {
11565
11612
  this.handleAccessError('get');
11566
11613
  if (!this.hasRoles()) {
11614
+ // @TODO it completes observable and doesn't watch anymore
11567
11615
  return of(this.createCollectionInstance(this.collectionClass, []));
11568
11616
  }
11569
11617
  if (!this.cache) {
11570
- this.fetch(path).pipe(first$1()).subscribe();
11618
+ return this.fetch(path).pipe(switchMap(() => this.getCacheSubjectObservable()));
11571
11619
  }
11572
11620
  return this.getCacheSubjectObservable();
11573
11621
  }
@@ -13362,22 +13410,17 @@ class FirmService {
13362
13410
  this.environment = environment;
13363
13411
  this.firmSubject = new ReplaySubject(1);
13364
13412
  }
13365
- /**
13366
- * Register new firm
13367
- * @param data: firm and firm owner data to register
13368
- */
13369
13413
  register(data) {
13370
13414
  return this.http.post(`${this.environment.apiV2}/firms/registration`, data)
13371
13415
  .pipe(map((firm) => plainToClass(Firm, firm)));
13372
13416
  }
13373
13417
  get() {
13374
13418
  if (!this.firm) {
13375
- this.http.get(`${this.environment.apiV2}/firms/current`)
13376
- .pipe(map((firm) => plainToClass(Firm, firm)))
13377
- .subscribe((firm) => {
13378
- this.firm = firm;
13419
+ return this.http.get(`${this.environment.apiV2}/firms/current`).pipe(map((firm) => {
13420
+ this.firm = plainToClass(Firm, firm);
13379
13421
  this.firmSubject.next(this.firm);
13380
- });
13422
+ return this.firm;
13423
+ }), switchMap(() => this.firmSubject.asObservable()));
13381
13424
  }
13382
13425
  return this.firmSubject.asObservable();
13383
13426
  }
@@ -13462,24 +13505,25 @@ class RestService {
13462
13505
  * get list of base class instances directly from backend
13463
13506
  */
13464
13507
  fetch(path = this.apiUrl, cache = true, params = {}) {
13465
- if (cache) {
13466
- this.setCache([]);
13508
+ if (this.inFlight$) {
13509
+ return this.inFlight$;
13467
13510
  }
13468
- return this.http.get(path, { params: params })
13511
+ this.inFlight$ = this.http.get(path, { params: params })
13469
13512
  .pipe(map((response) => {
13470
13513
  const items = response.map((item) => this.createModelInstance(item));
13471
13514
  if (cache) {
13472
13515
  this.setCache(items, true);
13473
13516
  }
13474
13517
  return items;
13475
- }));
13518
+ }), finalize(() => this.inFlight$ = null), shareReplay({ bufferSize: 1, refCount: true }));
13519
+ return this.inFlight$;
13476
13520
  }
13477
13521
  /**
13478
13522
  * get cached list of all instances
13479
13523
  */
13480
13524
  get(path = this.apiUrl) {
13481
13525
  if (!this.cache) {
13482
- this.fetch(path).pipe(first$1()).subscribe();
13526
+ return this.fetch(path).pipe(first$1(), switchMap(() => this.getCacheSubjectObservable()));
13483
13527
  }
13484
13528
  return this.getCacheSubjectObservable();
13485
13529
  }
@@ -13628,7 +13672,7 @@ class RestService {
13628
13672
  */
13629
13673
  refreshCache() {
13630
13674
  this.setCache(undefined);
13631
- this.get();
13675
+ this.get().subscribe();
13632
13676
  }
13633
13677
  setCache(data, next = false) {
13634
13678
  this.cache = data;
@@ -16549,6 +16593,11 @@ class UserService extends RestService$1 {
16549
16593
  user.blacklistSetupItems.push(item);
16550
16594
  return this.put(user);
16551
16595
  }
16596
+ restoreSetupItem(item) {
16597
+ const user = clone(this.getCacheFirst());
16598
+ remove(user.blacklistSetupItems, (i) => i.id === item.id);
16599
+ return this.put(user);
16600
+ }
16552
16601
  /**
16553
16602
  * Update cache when user's service subscription is updated
16554
16603
  */
@@ -16611,6 +16660,7 @@ class HoldingTradeService extends RestService$1 {
16611
16660
  }
16612
16661
  listenEvents() {
16613
16662
  this.listenCSE(HoldingTradeImport, this.refreshCache, ['post', 'delete']);
16663
+ this.listenCSE(SharesightPortfolio, this.refreshCache, ['put', 'delete']);
16614
16664
  }
16615
16665
  listenNotifications() {
16616
16666
  this.eventDispatcherService.on(AppEventTypeEnum.NOTIFICATION_ADDED).subscribe((notification) => {
@@ -19181,12 +19231,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.2", ngImpor
19181
19231
  }]
19182
19232
  }], ctorParameters: () => [] });
19183
19233
 
19184
- var SetupItemTypeEnum;
19185
- (function (SetupItemTypeEnum) {
19186
- SetupItemTypeEnum[SetupItemTypeEnum["CLIENT"] = 1] = "CLIENT";
19187
- SetupItemTypeEnum[SetupItemTypeEnum["EMPLOYEE"] = 2] = "EMPLOYEE";
19188
- })(SetupItemTypeEnum || (SetupItemTypeEnum = {}));
19189
-
19190
19234
  class SetupItemService extends RestService$1 {
19191
19235
  constructor() {
19192
19236
  super(...arguments);
@@ -19210,14 +19254,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.2", ngImpor
19210
19254
  * Checks required steps and their completion
19211
19255
  */
19212
19256
  class AccountSetupService {
19213
- constructor(setupItemService, propertyService, incomeSourceService, bankAccountsService, transactionAllocationService, vehicleClaimService, transactionService, soleBusinessService, holdingService, userService, clientMovementService, clientInviteService, employeeService, employeeInviteService, firmService) {
19257
+ constructor(setupItemService, propertyService, incomeSourceService, bankConnectionService, bankAccountsService, loanService, allocationRuleService, transactionAllocationService, vehicleClaimService, homeOfficeClaimService, transactionService, depreciationService, soleBusinessService, holdingService, userService, clientMovementService, clientInviteService, employeeService, employeeInviteService, firmService, sharesightDetailsService, propertyShareService) {
19214
19258
  this.setupItemService = setupItemService;
19215
19259
  this.propertyService = propertyService;
19216
19260
  this.incomeSourceService = incomeSourceService;
19261
+ this.bankConnectionService = bankConnectionService;
19217
19262
  this.bankAccountsService = bankAccountsService;
19263
+ this.loanService = loanService;
19264
+ this.allocationRuleService = allocationRuleService;
19218
19265
  this.transactionAllocationService = transactionAllocationService;
19219
19266
  this.vehicleClaimService = vehicleClaimService;
19267
+ this.homeOfficeClaimService = homeOfficeClaimService;
19220
19268
  this.transactionService = transactionService;
19269
+ this.depreciationService = depreciationService;
19221
19270
  this.soleBusinessService = soleBusinessService;
19222
19271
  this.holdingService = holdingService;
19223
19272
  this.userService = userService;
@@ -19226,101 +19275,110 @@ class AccountSetupService {
19226
19275
  this.employeeService = employeeService;
19227
19276
  this.employeeInviteService = employeeInviteService;
19228
19277
  this.firmService = firmService;
19278
+ this.sharesightDetailsService = sharesightDetailsService;
19279
+ this.propertyShareService = propertyShareService;
19229
19280
  }
19230
19281
  /**
19231
19282
  * Get list of account setup items for current user/firm
19232
19283
  */
19233
- get(type) {
19234
- return combineLatest([
19235
- this.setupItemService.get(),
19236
- this.userService.getFirst()
19237
- ])
19238
- .pipe(mergeMap(([items, user]) => {
19239
- this.items = items;
19284
+ get(property) {
19285
+ // @TODO it takes time for user to update, makes sense to subscribe to serviceSubscription instead
19286
+ return combineLatest([this.setupItemService.get(), this.userService.getFirst()]).pipe(switchMap(([items, user]) => {
19240
19287
  this.user = user;
19241
- return type === SetupItemTypeEnum.CLIENT ? this.getClientItems$() : this.getFirmItems$();
19288
+ this.items = items.getByUser(user);
19289
+ return this.setItemsStatus(property);
19242
19290
  }));
19243
19291
  }
19244
- getClientItems$() {
19245
- const batch = [];
19246
- if (this.user.hasRoles(UserRolesEnum.WORK_TANK)) {
19247
- batch.push(
19248
- // Salary item is completed when user added salary income source
19249
- this.setItemStatus(this.items.findBy('isSalary', true), this.getIncomeSources(true)),
19250
- // Other income is a part of work tank, completed when user added at least one other income source
19251
- this.setItemStatus(this.items.findBy('isOtherIncome', true), this.getIncomeSources()));
19252
- }
19253
- // Rental income item is completed when user added at least one property
19254
- if (this.user.hasRoles(UserRolesEnum.PROPERTY_TANK)) {
19255
- batch.push(this.setItemStatus(this.items.findBy('isProperty', true), this.propertyService.getArray()));
19256
- }
19257
- // Sole business item is completed when user added at least one business
19258
- if (this.user.hasRoles(UserRolesEnum.SOLE_TANK)) {
19259
- batch.push(this.setItemStatus(this.items.findBy('isSoleBusiness', true), this.soleBusinessService.getArray()));
19260
- }
19261
- // holdings item is completed when user added at least one holding
19262
- if (this.user.hasRoles(UserRolesEnum.HOLDING_TANK)) {
19263
- batch.push(this.setItemStatus(this.items.findBy('isHoldings', true), this.holdingService.getArray()));
19264
- }
19265
- if (this.user.hasRoles([UserRolesEnum.WORK_TANK, UserRolesEnum.PROPERTY_TANK, UserRolesEnum.SOLE_TANK])) {
19266
- // Bank feeds item is completed when user added at least one bank account (basiq or manual)
19267
- batch.push(this.getBankFeedsItem());
19268
- // Logbook item is completed when user has at least one vehicle claim with any method (kms or logbook)
19269
- batch.push(this.getLogbookItem());
19270
- // Allocation item is completed when user added at least one transaction allocation
19271
- batch.push(this.setItemStatus(this.items.findBy('isTransactionAllocate', true), this.transactionAllocationService.get()));
19292
+ setItemsStatus(property) {
19293
+ const itemsById = this.items.indexBy('id');
19294
+ const requests = pick({
19295
+ // firm
19296
+ [AccountSetupItemsEnum.FIRM_DETAILS]: this.getFirms(),
19297
+ [AccountSetupItemsEnum.FIRM_EMPLOYEES]: this.getEmployees(),
19298
+ [AccountSetupItemsEnum.FIRM_CLIENTS]: this.getClients(),
19299
+ // work
19300
+ [AccountSetupItemsEnum.WORK_SALARY]: this.getIncomeSources(true),
19301
+ [AccountSetupItemsEnum.WORK_OTHER_INCOME]: this.getIncomeSources(false),
19302
+ [AccountSetupItemsEnum.WORK_VEHICLE_CLAIM]: this.getVehicleClaims(false),
19303
+ [AccountSetupItemsEnum.WORK_HOME_OFFICE]: this.getHomeOfficeClaims(false),
19304
+ [AccountSetupItemsEnum.WORK_BANK_ACCOUNT]: this.getBankAccounts(TankTypeEnum.WORK),
19305
+ [AccountSetupItemsEnum.WORK_DEPRECIATION]: this.getDepreciations(TankTypeEnum.WORK),
19306
+ // properties
19307
+ [AccountSetupItemsEnum.PROPERTY]: this.propertyService.getArray(),
19308
+ [AccountSetupItemsEnum.PROPERTIES]: this.propertyService.getArray().pipe(map(properties => properties.slice(1))),
19309
+ [AccountSetupItemsEnum.PROPERTIES_BANK_ACCOUNT]: this.getBankAccounts(TankTypeEnum.PROPERTY),
19310
+ // sole
19311
+ [AccountSetupItemsEnum.SOLE_BUSINESS]: this.soleBusinessService.getArray(),
19312
+ [AccountSetupItemsEnum.SOLE_BUSINESSES]: this.soleBusinessService.getArray().pipe(map(businesses => businesses.slice(1))),
19313
+ [AccountSetupItemsEnum.SOLE_VEHICLE_CLAIM]: this.getVehicleClaims(true),
19314
+ [AccountSetupItemsEnum.SOLE_HOME_OFFICE]: this.getHomeOfficeClaims(true),
19315
+ [AccountSetupItemsEnum.SOLE_DEPRECIATION]: this.getDepreciations(TankTypeEnum.SOLE),
19316
+ [AccountSetupItemsEnum.SOLE_BANK_ACCOUNT]: this.getBankAccounts(TankTypeEnum.SOLE),
19317
+ // holding
19318
+ [AccountSetupItemsEnum.HOLDING_TRADE]: this.holdingService.getArray(),
19319
+ [AccountSetupItemsEnum.HOLDING_INTEGRATION]: this.getSharesightDetails(true),
19320
+ // bankAccount
19321
+ [AccountSetupItemsEnum.BANK_CONNECTION]: this.bankConnectionService.getArray(),
19322
+ [AccountSetupItemsEnum.BANK_ACCOUNT]: this.getBankAccounts(),
19323
+ [AccountSetupItemsEnum.BANK_ALLOCATION]: this.transactionAllocationService.get(),
19324
+ [AccountSetupItemsEnum.BANK_RULE]: this.allocationRuleService.getArray(),
19325
+ [AccountSetupItemsEnum.BANK_BORROWING_EXPENSE]: this.getBorrowingExpenses(),
19326
+ }, this.items.getIds());
19327
+ // property
19328
+ if (property) {
19329
+ requests[AccountSetupItemsEnum.PROPERTY_CAPITAL_COST] = this.getProperties(property).pipe(map(properties => properties.filter(property => !!property.capitalCosts)));
19330
+ requests[AccountSetupItemsEnum.PROPERTY_RENT_INCOME] = this.getTransactions(property).pipe(map(transactions => new TransactionCollection(transactions).filterBy('chartAccounts.id', ChartAccountsListEnum.RENTAL_INCOME)));
19331
+ requests[AccountSetupItemsEnum.PROPERTY_DEPRECIATION] = this.getDepreciations(TankTypeEnum.PROPERTY, property);
19332
+ requests[AccountSetupItemsEnum.PROPERTY_CO_OWNER] = this.getCoOwners(property);
19333
+ }
19334
+ const batch = Object.keys(requests).map(id => this.setItemStatus(itemsById.get(id), requests[id]));
19335
+ if (!batch.length) {
19336
+ return of(new AccountSetupItemCollection([]));
19272
19337
  }
19273
19338
  return combineLatest(batch).pipe(map((items) => new AccountSetupItemCollection(items)));
19274
19339
  }
19275
- getFirmItems$() {
19276
- const batch = [];
19277
- batch.push(
19278
- // Firm Details item is completed when user filled some general information
19279
- this.firmService.get().pipe(map((firm) => {
19280
- const item = this.items.findBy('isFirmDetails', true);
19281
- if (firm.address || firm.phone || firm.file || firm.shortName) {
19282
- item.isCompleted = true;
19283
- }
19284
- return item;
19285
- })));
19286
- batch.push(
19287
- // Invite team item is completed when firm has employees except firm owner or firm has invited employees.
19288
- this.setItemStatus(this.items.findBy('isInviteTeam', true), combineLatest([
19289
- this.employeeService.getArray(),
19290
- this.employeeInviteService.getArray()
19291
- ]).pipe(map(([employees, invites]) => {
19292
- // we always have at least 1 employee (firm owner), so we should check other employees except firm owner
19293
- if (employees.length) {
19294
- employees.splice(0, 1);
19295
- }
19296
- return [...employees, ...invites];
19297
- }))));
19298
- batch.push(
19299
- // Invite clients item is completed when firm has clients or firm has invited clients.
19300
- this.setItemStatus(this.items.findBy('isInviteClients', true), combineLatest([this.clientMovementService.getActive(), this.clientInviteService.get()])
19301
- .pipe(map(([movements, invites]) => [...movements.toArray(), ...invites.toArray()]))));
19302
- return combineLatest(batch).pipe(map((items) => new AccountSetupItemCollection(items).sortBy('id', 'asc')));
19303
- }
19304
19340
  /**
19305
19341
  * Check and update isCompleted flag for passed item
19306
19342
  */
19307
19343
  setItemStatus(item, request) {
19308
19344
  return request.pipe(map((result) => {
19309
19345
  const isSkipped = !!this.user.blacklistSetupItems.find((skippedItem) => skippedItem.id === item.id);
19310
- if (result.length || isSkipped) {
19311
- item.isCompleted = true;
19312
- }
19313
- else {
19314
- item.isCompleted = false;
19315
- }
19346
+ item.status = isSkipped ? AccountSetupItemStatusEnum.SKIPPED : result.length ? AccountSetupItemStatusEnum.ACHIEVED : AccountSetupItemStatusEnum.PENDING;
19316
19347
  return item;
19317
19348
  }));
19318
19349
  }
19350
+ getProperties(property) {
19351
+ return this.propertyService.getBy('id', property.id).pipe(map(properties => properties));
19352
+ }
19353
+ getTransactions(property) {
19354
+ return this.transactionService.getByPropertyId(property.id);
19355
+ }
19356
+ getCoOwners(property) {
19357
+ return this.propertyShareService.getArrayBy('property.id', property.id).pipe(map(shares => shares.slice(1)));
19358
+ }
19359
+ /**
19360
+ * AccountSetupItemsEnum.FIRM_CLIENTS completed when client invites sent or accepted
19361
+ */
19362
+ getClients() {
19363
+ return combineLatest([this.clientMovementService.getActive(), this.clientInviteService.get()]).pipe(map(([movements, invites]) => [...movements, ...invites]));
19364
+ }
19365
+ /**
19366
+ * AccountSetupItemsEnum.FIRM_EMPLOYEES completed when employee invites sent or accepted
19367
+ */
19368
+ getEmployees() {
19369
+ return combineLatest([this.employeeService.getArray(), this.employeeInviteService.getArray()]).pipe(map(([employees, invites]) => [...employees.slice(1), ...invites]));
19370
+ }
19371
+ /**
19372
+ * AccountSetupItemsEnum.FIRM_DETAILS when firm data filled
19373
+ */
19374
+ getFirms() {
19375
+ return this.firmService.get().pipe(map((firm) => [firm].filter(firm => firm.address || firm.phone || firm.file || firm.shortName)));
19376
+ }
19319
19377
  /**
19320
19378
  * @TODO Alex: work with collection when services refactored
19321
19379
  * @TODO Vik: waiting for income sources refactoring
19322
19380
  */
19323
- getIncomeSources(isSalary = false) {
19381
+ getIncomeSources(isSalary) {
19324
19382
  return this.incomeSourceService.get().pipe(map((incomeSources) => {
19325
19383
  const collection = new IncomeSourceCollection(incomeSources);
19326
19384
  if (isSalary) {
@@ -19329,31 +19387,31 @@ class AccountSetupService {
19329
19387
  return collection.items.filter((incomeSource) => incomeSource.isOtherIncome());
19330
19388
  }));
19331
19389
  }
19332
- /**
19333
- * Show logbook item when user has at least 1 vehicle transaction
19334
- */
19335
- getLogbookItem() {
19336
- return this.transactionService.get()
19337
- .pipe(
19338
- // @TODO Alex: remove map when services start work with collections
19339
- map((transactions) => new TransactionCollection(transactions)), mergeMap((transactions) => {
19340
- if (transactions.getVehicleTransactions().length) {
19341
- return this.setItemStatus(this.items.findBy('isWorkLogbook', true), this.vehicleClaimService.getArray());
19390
+ getVehicleClaims(isBusiness) {
19391
+ return this.vehicleClaimService.getArray().pipe(map((claims => claims.filter(claim => isBusiness ? claim.business : !claim.business))));
19392
+ }
19393
+ getHomeOfficeClaims(isBusiness) {
19394
+ return this.homeOfficeClaimService.getArray().pipe(map(claims => claims.filter(claim => isBusiness ? claim.business : !claim.business)));
19395
+ }
19396
+ getBankAccounts(tankType) {
19397
+ return this.bankAccountsService.get().pipe(map((bankAccounts => bankAccounts.getByTankType(tankType).toArray())));
19398
+ }
19399
+ getDepreciations(tankType, property) {
19400
+ return this.depreciationService.get().pipe(map(depreciations => {
19401
+ depreciations = depreciations.getByTankType(tankType);
19402
+ if (property) {
19403
+ depreciations.filterBy('property.id', property.id);
19342
19404
  }
19343
- return of(null);
19405
+ return depreciations.toArray();
19344
19406
  }));
19345
19407
  }
19346
- /**
19347
- * Hide bank feeds item when user has only holding tank
19348
- */
19349
- getBankFeedsItem() {
19350
- const bankFeedsRoles = [UserRolesEnum.PROPERTY_TANK, UserRolesEnum.WORK_TANK, UserRolesEnum.SOLE_TANK];
19351
- if (!intersection(bankFeedsRoles, this.user.roles).length) {
19352
- return of(null);
19353
- }
19354
- return this.setItemStatus(this.items.findBy('isBankFeeds', true), this.bankAccountsService.getArray());
19408
+ getSharesightDetails(importEnabled) {
19409
+ return this.sharesightDetailsService.getArray().pipe(map(details => details.filter(detail => importEnabled ? detail.importEnabled : detail.exportEnabled)));
19410
+ }
19411
+ getBorrowingExpenses() {
19412
+ return this.loanService.getArray().pipe(map(loans => loans.filter(loan => !!loan.borrowingExpenses.length)));
19355
19413
  }
19356
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.2", ngImport: i0, type: AccountSetupService, deps: [{ token: SetupItemService }, { token: PropertyService }, { token: IncomeSourceService }, { token: BankAccountService }, { token: TransactionAllocationService }, { token: VehicleClaimService }, { token: TransactionService }, { token: SoleBusinessService }, { token: HoldingTradeService }, { token: UserService }, { token: ClientMovementService }, { token: ClientInviteService }, { token: EmployeeService }, { token: EmployeeInviteService }, { token: FirmService }], target: i0.ɵɵFactoryTarget.Injectable }); }
19414
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.2", ngImport: i0, type: AccountSetupService, deps: [{ token: SetupItemService }, { token: PropertyService }, { token: IncomeSourceService }, { token: BankConnectionService }, { token: BankAccountService }, { token: LoanService }, { token: AllocationRuleService }, { token: TransactionAllocationService }, { token: VehicleClaimService }, { token: HomeOfficeClaimService }, { token: TransactionService }, { token: DepreciationService }, { token: SoleBusinessService }, { token: HoldingTradeService }, { token: UserService }, { token: ClientMovementService }, { token: ClientInviteService }, { token: EmployeeService }, { token: EmployeeInviteService }, { token: FirmService }, { token: SharesightDetailsService }, { token: PropertyShareService }], target: i0.ɵɵFactoryTarget.Injectable }); }
19357
19415
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.2", ngImport: i0, type: AccountSetupService, providedIn: 'root' }); }
19358
19416
  }
19359
19417
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.2", ngImport: i0, type: AccountSetupService, decorators: [{
@@ -19361,7 +19419,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.2", ngImpor
19361
19419
  args: [{
19362
19420
  providedIn: 'root'
19363
19421
  }]
19364
- }], ctorParameters: () => [{ type: SetupItemService }, { type: PropertyService }, { type: IncomeSourceService }, { type: BankAccountService }, { type: TransactionAllocationService }, { type: VehicleClaimService }, { type: TransactionService }, { type: SoleBusinessService }, { type: HoldingTradeService }, { type: UserService }, { type: ClientMovementService }, { type: ClientInviteService }, { type: EmployeeService }, { type: EmployeeInviteService }, { type: FirmService }] });
19422
+ }], ctorParameters: () => [{ type: SetupItemService }, { type: PropertyService }, { type: IncomeSourceService }, { type: BankConnectionService }, { type: BankAccountService }, { type: LoanService }, { type: AllocationRuleService }, { type: TransactionAllocationService }, { type: VehicleClaimService }, { type: HomeOfficeClaimService }, { type: TransactionService }, { type: DepreciationService }, { type: SoleBusinessService }, { type: HoldingTradeService }, { type: UserService }, { type: ClientMovementService }, { type: ClientInviteService }, { type: EmployeeService }, { type: EmployeeInviteService }, { type: FirmService }, { type: SharesightDetailsService }, { type: PropertyShareService }] });
19365
19423
 
19366
19424
  class AdblockService {
19367
19425
  constructor() {
@@ -20498,6 +20556,7 @@ const ENDPOINTS = {
20498
20556
  SERVICE_PAYMENTS_GET: new Endpoint('GET', '\\/service-payments'),
20499
20557
  SERVICE_SUBSCRIPTIONS_GET: new Endpoint('GET', '\\/service-subscriptions'),
20500
20558
  SERVICE_SUBSCRIPTIONS_POST: new Endpoint('POST', '\\/service-subscriptions'),
20559
+ SERVICE_SUBSCRIPTIONS_TRIAL_POST: new Endpoint('POST', '\\/service-subscriptions/'),
20501
20560
  SERVICE_SUBSCRIPTIONS_CANCEL: new Endpoint('PUT', '\\/service-subscriptions\\/\\d+\\/cancel'),
20502
20561
  SERVICE_SUBSCRIPTIONS_RENEW: new Endpoint('PUT', '\\/service-subscriptions\\/\\d+\\/renewal'),
20503
20562
  SERVICE_PAYMENT_INVOICE_URL_GET: new Endpoint('GET', '\\/service-payments\\/\\d+\\/invoice-url'),
@@ -25403,5 +25462,5 @@ var MessagesEnum;
25403
25462
  * Generated bundle index. Do not edit.
25404
25463
  */
25405
25464
 
25406
- export { AbstractForm, AbstractModel, AccountSetupItem, AccountSetupItemCollection, AccountSetupService, AdblockService, 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, AppPercentPipe, AssetEntityTypeEnum, AssetSale, AssetSaleCollection, AssetTypeEnum, AssetsService, AussieAppointment, AussieAppointmentForm, AussieBroker, AussieConfirmationForm, AussieService, AussieStore, AussieStoreForm, 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, BusinessChartAccountsEnum, 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, ChartAccountsKeepSign, ChartAccountsListEnum, ChartAccountsMessagesEnum, ChartAccountsMetaField, ChartAccountsMetaFieldListEnum, ChartAccountsMetaFieldTypeEnum, ChartAccountsPropertyAdjustmentsListEnum, ChartAccountsSalaryAdjustmentsListEnum, ChartAccountsService, ChartAccountsTaxLabelsEnum, ChartAccountsTypeEnum, ChartAccountsValue, ChartAccountsValueCollection, 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, CorelogicMessagesEnum, CorelogicService, CorelogicSuggestion, Country, CurrentFirmBranchService, DEDUCTION_CATEGORIES, DEPRECIATION_GROUPS, DOCUMENT_FILE_TYPES, DateRange, 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, HTTP_ERROR_MESSAGES, HeaderTitleService, Holding, HoldingCollection, HoldingIncomeForm, HoldingReinvest, HoldingReinvestForm, HoldingSale, HoldingSaleCollection, HoldingSaleService, HoldingTrade, HoldingTradeCollection, HoldingTradeFilterForm, HoldingTradeForm, HoldingTradeImport, HoldingTradeImportForm, HoldingTradeImportMessagesEnum, HoldingTradeImportService, HoldingTradeMessagesEnum, HoldingTradeService, HoldingTradeTypeEnum, HoldingType, HoldingTypeCategoryEnum, HoldingTypeCollection, HoldingTypeExchange, HoldingTypeExchangeListEnum, HoldingTypeExchangeService, HoldingTypeForm, HoldingTypeMessagesEnum, HoldingTypeService, HomeOfficeCalculatorForm, HomeOfficeClaim, HomeOfficeClaimCollection, HomeOfficeClaimForm, HomeOfficeClaimMessagesEnum, HomeOfficeClaimMethodEnum, HomeOfficeClaimService, HomeOfficeLog, HomeOfficeLogForm, HomeOfficeLogMessagesEnum, HomeOfficeLogService, 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, LoanMessagesEnum, 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, PriorTransactionService, 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, RestMessagesEnum, 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, SharesightDetails, SharesightDetailsMessagesEnum, SharesightDetailsService, SharesightPortfolio, SharesightPortfolioMessages, SharesightPortfolioService, 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, SoleInvoiceStateEnum, 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, TransactionReportItem, TransactionReportItemCollection, 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 };
25465
+ export { AbstractForm, AbstractModel, AccountSetupItem, AccountSetupItemCollection, AccountSetupItemStatusEnum, AccountSetupItemsEnum, AccountSetupService, AdblockService, 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, AppPercentPipe, AssetEntityTypeEnum, AssetSale, AssetSaleCollection, AssetTypeEnum, AssetsService, AussieAppointment, AussieAppointmentForm, AussieBroker, AussieConfirmationForm, AussieService, AussieStore, AussieStoreForm, 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, BusinessChartAccountsEnum, 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, ChartAccountsKeepSign, ChartAccountsListEnum, ChartAccountsMessagesEnum, ChartAccountsMetaField, ChartAccountsMetaFieldListEnum, ChartAccountsMetaFieldTypeEnum, ChartAccountsPropertyAdjustmentsListEnum, ChartAccountsSalaryAdjustmentsListEnum, ChartAccountsService, ChartAccountsTaxLabelsEnum, ChartAccountsTypeEnum, ChartAccountsValue, ChartAccountsValueCollection, 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, CorelogicMessagesEnum, CorelogicService, CorelogicSuggestion, Country, CurrentFirmBranchService, DEDUCTION_CATEGORIES, DEPRECIATION_GROUPS, DOCUMENT_FILE_TYPES, DateRange, 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, HTTP_ERROR_MESSAGES, HeaderTitleService, Holding, HoldingCollection, HoldingIncomeForm, HoldingReinvest, HoldingReinvestForm, HoldingSale, HoldingSaleCollection, HoldingSaleService, HoldingTrade, HoldingTradeCollection, HoldingTradeFilterForm, HoldingTradeForm, HoldingTradeImport, HoldingTradeImportForm, HoldingTradeImportMessagesEnum, HoldingTradeImportService, HoldingTradeMessagesEnum, HoldingTradeService, HoldingTradeTypeEnum, HoldingType, HoldingTypeCategoryEnum, HoldingTypeCollection, HoldingTypeExchange, HoldingTypeExchangeListEnum, HoldingTypeExchangeService, HoldingTypeForm, HoldingTypeMessagesEnum, HoldingTypeService, HomeOfficeCalculatorForm, HomeOfficeClaim, HomeOfficeClaimCollection, HomeOfficeClaimForm, HomeOfficeClaimMessagesEnum, HomeOfficeClaimMethodEnum, HomeOfficeClaimService, HomeOfficeLog, HomeOfficeLogForm, HomeOfficeLogMessagesEnum, HomeOfficeLogService, 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, LoanMessagesEnum, 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, PriorTransactionService, 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, RestMessagesEnum, 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, SharesightDetails, SharesightDetailsMessagesEnum, SharesightDetailsService, SharesightPortfolio, SharesightPortfolioMessages, SharesightPortfolioService, 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, SoleInvoiceStateEnum, 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, TransactionReportItem, TransactionReportItemCollection, 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 };
25407
25466
  //# sourceMappingURL=taxtank-core.mjs.map