taxtank-core 1.0.19 → 1.0.20

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, 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';
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';
9
9
  import { plainToClass, Type, Transform, Exclude, Expose, classToPlain } from 'class-transformer';
10
10
  import 'reflect-metadata';
11
11
  import { __decorate } from 'tslib';
@@ -33,8 +33,6 @@ 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';
38
36
  import { checkAdBlock } from 'adblock-checker';
39
37
  import { jsPDF } from 'jspdf';
40
38
  import { applyPlugin } from 'jspdf-autotable';
@@ -496,9 +494,6 @@ let Property$1 = class Property extends ObservableModel {
496
494
  this.corelogicLastRequest = null;
497
495
  }
498
496
  static { this.className = 'Property'; }
499
- get capitalCosts() {
500
- return this.legalFees + this.otherCapitalCosts + this.stampDuty;
501
- }
502
497
  };
503
498
  __decorate([
504
499
  Type(() => Number)
@@ -1456,18 +1451,6 @@ var HomeOfficeClaimMethodEnum;
1456
1451
  HomeOfficeClaimMethodEnum[HomeOfficeClaimMethodEnum["OCCUPANCY"] = 3] = "OCCUPANCY";
1457
1452
  })(HomeOfficeClaimMethodEnum || (HomeOfficeClaimMethodEnum = {}));
1458
1453
 
1459
- var SetupItemTypeEnum;
1460
- (function (SetupItemTypeEnum) {
1461
- SetupItemTypeEnum[SetupItemTypeEnum["EMPLOYEE"] = 0] = "EMPLOYEE";
1462
- SetupItemTypeEnum[SetupItemTypeEnum["WORK"] = 1] = "WORK";
1463
- SetupItemTypeEnum[SetupItemTypeEnum["PROPERTIES"] = 2] = "PROPERTIES";
1464
- SetupItemTypeEnum[SetupItemTypeEnum["PROPERTY"] = 3] = "PROPERTY";
1465
- SetupItemTypeEnum[SetupItemTypeEnum["BUSINESS"] = 4] = "BUSINESS";
1466
- SetupItemTypeEnum[SetupItemTypeEnum["HOLDING"] = 5] = "HOLDING";
1467
- SetupItemTypeEnum[SetupItemTypeEnum["BANK_ACCOUNTS"] = 6] = "BANK_ACCOUNTS";
1468
- SetupItemTypeEnum[SetupItemTypeEnum["BANK_ACCOUNT"] = 7] = "BANK_ACCOUNT";
1469
- })(SetupItemTypeEnum || (SetupItemTypeEnum = {}));
1470
-
1471
1454
  /**
1472
1455
  * @TODO not used for now
1473
1456
  * Bank subclass, average bank response time for some operations in milliseconds
@@ -5381,72 +5364,61 @@ __decorate([
5381
5364
  class SetupItem extends AbstractModel {
5382
5365
  }
5383
5366
 
5384
- var AccountSetupItemStatusEnum;
5385
- (function (AccountSetupItemStatusEnum) {
5386
- AccountSetupItemStatusEnum[AccountSetupItemStatusEnum["PENDING"] = 1] = "PENDING";
5387
- AccountSetupItemStatusEnum[AccountSetupItemStatusEnum["ACHIEVED"] = 2] = "ACHIEVED";
5388
- AccountSetupItemStatusEnum[AccountSetupItemStatusEnum["SKIPPED"] = 3] = "SKIPPED";
5389
- })(AccountSetupItemStatusEnum || (AccountSetupItemStatusEnum = {}));
5390
-
5391
- class AccountSetupItem extends SetupItem {
5392
- get isPending() {
5393
- return this.status === AccountSetupItemStatusEnum.PENDING;
5394
- }
5395
- get isAchieved() {
5396
- return this.status === AccountSetupItemStatusEnum.SKIPPED;
5397
- }
5398
- get isCompleted() {
5399
- return [AccountSetupItemStatusEnum.ACHIEVED, AccountSetupItemStatusEnum.SKIPPED].includes(this.status);
5400
- }
5401
- get isSkipped() {
5402
- return this.status === AccountSetupItemStatusEnum.SKIPPED;
5403
- }
5404
- }
5405
-
5406
5367
  /**
5407
- * TODO remove
5368
+ * Enum list of all possible account setup items ids. Using with [ACCOUNT_SETUP_ITEMS]{@link ACCOUNT_SETUP_ITEMS}
5369
+ * @TODO Vik/Nikita: Do we need to generate it from backend? If some ids changed?
5408
5370
  */
5409
5371
  var AccountSetupItemsEnum;
5410
5372
  (function (AccountSetupItemsEnum) {
5411
- // firm
5412
- AccountSetupItemsEnum[AccountSetupItemsEnum["FIRM_DETAILS"] = 9] = "FIRM_DETAILS";
5413
- AccountSetupItemsEnum[AccountSetupItemsEnum["FIRM_EMPLOYEES"] = 10] = "FIRM_EMPLOYEES";
5414
- AccountSetupItemsEnum[AccountSetupItemsEnum["FIRM_CLIENTS"] = 11] = "FIRM_CLIENTS";
5415
- // work
5416
- AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_SALARY"] = 1] = "WORK_SALARY";
5417
- AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_OTHER_INCOME"] = 2] = "WORK_OTHER_INCOME";
5418
- AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_VEHICLE_CLAIM"] = 5] = "WORK_VEHICLE_CLAIM";
5419
- AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_HOME_OFFICE"] = 13] = "WORK_HOME_OFFICE";
5420
- AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_BANK_ACCOUNT"] = 14] = "WORK_BANK_ACCOUNT";
5421
- AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_DEPRECIATION"] = 15] = "WORK_DEPRECIATION";
5422
- // properties
5373
+ AccountSetupItemsEnum[AccountSetupItemsEnum["SALARY"] = 1] = "SALARY";
5374
+ AccountSetupItemsEnum[AccountSetupItemsEnum["OTHER_INCOME"] = 2] = "OTHER_INCOME";
5423
5375
  AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY"] = 3] = "PROPERTY";
5424
- AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTIES"] = 29] = "PROPERTIES";
5425
- AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTIES_BANK_ACCOUNT"] = 30] = "PROPERTIES_BANK_ACCOUNT";
5426
- // property
5427
- AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY_CAPITAL_COST"] = 17] = "PROPERTY_CAPITAL_COST";
5428
- AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY_RENT_INCOME"] = 18] = "PROPERTY_RENT_INCOME";
5429
- AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY_DEPRECIATION"] = 19] = "PROPERTY_DEPRECIATION";
5430
- AccountSetupItemsEnum[AccountSetupItemsEnum["PROPERTY_CO_OWNER"] = 20] = "PROPERTY_CO_OWNER";
5431
- // sole
5376
+ AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_FEEDS"] = 4] = "BANK_FEEDS";
5377
+ AccountSetupItemsEnum[AccountSetupItemsEnum["WORK_LOGBOOK"] = 5] = "WORK_LOGBOOK";
5378
+ AccountSetupItemsEnum[AccountSetupItemsEnum["TRANSACTION_ALLOCATE"] = 6] = "TRANSACTION_ALLOCATE";
5432
5379
  AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_BUSINESS"] = 7] = "SOLE_BUSINESS";
5433
- AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_BUSINESSES"] = 33] = "SOLE_BUSINESSES";
5434
- AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_VEHICLE_CLAIM"] = 12] = "SOLE_VEHICLE_CLAIM";
5435
- AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_HOME_OFFICE"] = 21] = "SOLE_HOME_OFFICE";
5436
- AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_DEPRECIATION"] = 22] = "SOLE_DEPRECIATION";
5437
- AccountSetupItemsEnum[AccountSetupItemsEnum["SOLE_BANK_ACCOUNT"] = 23] = "SOLE_BANK_ACCOUNT";
5438
- // holding
5439
- AccountSetupItemsEnum[AccountSetupItemsEnum["HOLDING_TRADE"] = 8] = "HOLDING_TRADE";
5440
- AccountSetupItemsEnum[AccountSetupItemsEnum["HOLDING_INTEGRATION"] = 25] = "HOLDING_INTEGRATION";
5441
- AccountSetupItemsEnum[AccountSetupItemsEnum["HOLDING_REPORTS"] = 36] = "HOLDING_REPORTS";
5442
- // bank accounts
5443
- AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_CONNECTION"] = 4] = "BANK_CONNECTION";
5444
- AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_ACCOUNT"] = 26] = "BANK_ACCOUNT";
5445
- AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_ALLOCATION"] = 6] = "BANK_ALLOCATION";
5446
- AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_RULE"] = 27] = "BANK_RULE";
5447
- AccountSetupItemsEnum[AccountSetupItemsEnum["BANK_BORROWING_EXPENSE"] = 28] = "BANK_BORROWING_EXPENSE";
5380
+ AccountSetupItemsEnum[AccountSetupItemsEnum["HOLDINGS"] = 8] = "HOLDINGS";
5381
+ AccountSetupItemsEnum[AccountSetupItemsEnum["FIRM_DETAILS"] = 9] = "FIRM_DETAILS";
5382
+ AccountSetupItemsEnum[AccountSetupItemsEnum["INVITE_TEAM"] = 10] = "INVITE_TEAM";
5383
+ AccountSetupItemsEnum[AccountSetupItemsEnum["INVITE_CLIENTS"] = 11] = "INVITE_CLIENTS";
5448
5384
  })(AccountSetupItemsEnum || (AccountSetupItemsEnum = {}));
5449
5385
 
5386
+ class AccountSetupItem extends SetupItem {
5387
+ get isSalary() {
5388
+ return this.id === AccountSetupItemsEnum.SALARY;
5389
+ }
5390
+ get isOtherIncome() {
5391
+ return this.id === AccountSetupItemsEnum.OTHER_INCOME;
5392
+ }
5393
+ get isProperty() {
5394
+ return this.id === AccountSetupItemsEnum.PROPERTY;
5395
+ }
5396
+ get isBankFeeds() {
5397
+ return this.id === AccountSetupItemsEnum.BANK_FEEDS;
5398
+ }
5399
+ get isWorkLogbook() {
5400
+ return this.id === AccountSetupItemsEnum.WORK_LOGBOOK;
5401
+ }
5402
+ get isTransactionAllocate() {
5403
+ return this.id === AccountSetupItemsEnum.TRANSACTION_ALLOCATE;
5404
+ }
5405
+ get isSoleBusiness() {
5406
+ return this.id === AccountSetupItemsEnum.SOLE_BUSINESS;
5407
+ }
5408
+ get isHoldings() {
5409
+ return this.id === AccountSetupItemsEnum.HOLDINGS;
5410
+ }
5411
+ get isFirmDetails() {
5412
+ return this.id === AccountSetupItemsEnum.FIRM_DETAILS;
5413
+ }
5414
+ get isInviteTeam() {
5415
+ return this.id === AccountSetupItemsEnum.INVITE_TEAM;
5416
+ }
5417
+ get isInviteClients() {
5418
+ return this.id === AccountSetupItemsEnum.INVITE_CLIENTS;
5419
+ }
5420
+ }
5421
+
5450
5422
  class User extends User$1 {
5451
5423
  constructor() {
5452
5424
  super(...arguments);
@@ -8582,9 +8554,6 @@ class ServiceSubscriptionCollection extends Collection {
8582
8554
  filterByRole(role) {
8583
8555
  return this.filter((subscription) => subscription.roles.includes(role));
8584
8556
  }
8585
- findByRole(role) {
8586
- return this.filterByRole(role).first;
8587
- }
8588
8557
  hasPropertyTank() {
8589
8558
  return !!this.getItems().propertiesItem;
8590
8559
  }
@@ -8990,25 +8959,11 @@ class AllocationRuleCollection extends Collection {
8990
8959
  class AccountSetupItemCollection extends Collection {
8991
8960
  constructor(items) {
8992
8961
  super(compact(items));
8993
- this.sortBy('status', 'asc');
8962
+ this.sortBy('isCompleted', 'asc');
8994
8963
  }
8995
8964
  isCompleted() {
8996
8965
  return this.filterBy('isCompleted', true).length === this.length;
8997
8966
  }
8998
- getByUser(user) {
8999
- return this.filter(item => user.hasRoles(item.roles));
9000
- }
9001
- getScore() {
9002
- return this.sumBy('score');
9003
- }
9004
- setUrlId(id) {
9005
- this.items.forEach(item => {
9006
- if (!item.url.includes(':id')) {
9007
- return;
9008
- }
9009
- item.url = item.url.replace(':id', id);
9010
- });
9011
- }
9012
8967
  }
9013
8968
 
9014
8969
  /**
@@ -9068,7 +9023,7 @@ class BankAccountCollection extends Collection {
9068
9023
  * Get Collection of bank accounts by tank type
9069
9024
  */
9070
9025
  getByTankType(tankType) {
9071
- return new BankAccountCollection(tankType ? this.items.filter((bankAccount) => bankAccount.tankType === tankType) : this.items);
9026
+ return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.tankType === tankType));
9072
9027
  }
9073
9028
  /**
9074
9029
  * Get list of all bank account properties
@@ -11580,9 +11535,8 @@ let RestService$1 = class RestService extends DataService {
11580
11535
  * Refresh cache with actual backend data
11581
11536
  */
11582
11537
  refreshCache() {
11583
- // todo why not fetch?
11584
11538
  this.cache = undefined;
11585
- this.get().subscribe();
11539
+ this.get();
11586
11540
  }
11587
11541
  /**
11588
11542
  * perform a shallow copy of the emitted data to make it immutable
@@ -11594,17 +11548,17 @@ let RestService$1 = class RestService extends DataService {
11594
11548
  * Get data from backend and fill the cache
11595
11549
  */
11596
11550
  fetch(path = this.apiUrl, cache = true, queryParams = {}) {
11597
- if (this.inFlight$) {
11598
- return this.inFlight$;
11551
+ if (cache) {
11552
+ // Set cache as empty collection to avoid multiple requests before cache filled
11553
+ this.setCache([]);
11599
11554
  }
11600
- this.inFlight$ = this.http.get(path, queryParams)
11555
+ return this.http.get(path, queryParams)
11601
11556
  .pipe(map((response) => Array.isArray(response) ? response : toArray(response)), map((response) => {
11602
11557
  if (cache) {
11603
11558
  this.setCache(response, true);
11604
11559
  }
11605
11560
  return this.createCollectionInstance(this.collectionClass, response);
11606
- }), catchError((error) => this.handleError(error)), finalize(() => this.inFlight$ = null), shareReplay({ bufferSize: 1, refCount: true }));
11607
- return this.inFlight$;
11561
+ }), catchError((error) => this.handleError(error)));
11608
11562
  }
11609
11563
  fetchFirst(queryParams = {}) {
11610
11564
  return this.fetch(this.apiUrl, false, { params: queryParams })
@@ -11613,11 +11567,10 @@ let RestService$1 = class RestService extends DataService {
11613
11567
  get(path = this.apiUrl) {
11614
11568
  this.handleAccessError('get');
11615
11569
  if (!this.hasRoles()) {
11616
- // @TODO it completes observable and doesn't watch anymore
11617
11570
  return of(this.createCollectionInstance(this.collectionClass, []));
11618
11571
  }
11619
11572
  if (!this.cache) {
11620
- return this.fetch(path).pipe(switchMap(() => this.getCacheSubjectObservable()));
11573
+ this.fetch(path).pipe(first$1()).subscribe();
11621
11574
  }
11622
11575
  return this.getCacheSubjectObservable();
11623
11576
  }
@@ -13412,17 +13365,22 @@ class FirmService {
13412
13365
  this.environment = environment;
13413
13366
  this.firmSubject = new ReplaySubject(1);
13414
13367
  }
13368
+ /**
13369
+ * Register new firm
13370
+ * @param data: firm and firm owner data to register
13371
+ */
13415
13372
  register(data) {
13416
13373
  return this.http.post(`${this.environment.apiV2}/firms/registration`, data)
13417
13374
  .pipe(map((firm) => plainToClass(Firm, firm)));
13418
13375
  }
13419
13376
  get() {
13420
13377
  if (!this.firm) {
13421
- return this.http.get(`${this.environment.apiV2}/firms/current`).pipe(map((firm) => {
13422
- this.firm = plainToClass(Firm, firm);
13378
+ this.http.get(`${this.environment.apiV2}/firms/current`)
13379
+ .pipe(map((firm) => plainToClass(Firm, firm)))
13380
+ .subscribe((firm) => {
13381
+ this.firm = firm;
13423
13382
  this.firmSubject.next(this.firm);
13424
- return this.firm;
13425
- }), switchMap(() => this.firmSubject.asObservable()));
13383
+ });
13426
13384
  }
13427
13385
  return this.firmSubject.asObservable();
13428
13386
  }
@@ -13507,25 +13465,24 @@ class RestService {
13507
13465
  * get list of base class instances directly from backend
13508
13466
  */
13509
13467
  fetch(path = this.apiUrl, cache = true, params = {}) {
13510
- if (this.inFlight$) {
13511
- return this.inFlight$;
13468
+ if (cache) {
13469
+ this.setCache([]);
13512
13470
  }
13513
- this.inFlight$ = this.http.get(path, { params: params })
13471
+ return this.http.get(path, { params: params })
13514
13472
  .pipe(map((response) => {
13515
13473
  const items = response.map((item) => this.createModelInstance(item));
13516
13474
  if (cache) {
13517
13475
  this.setCache(items, true);
13518
13476
  }
13519
13477
  return items;
13520
- }), finalize(() => this.inFlight$ = null), shareReplay({ bufferSize: 1, refCount: true }));
13521
- return this.inFlight$;
13478
+ }));
13522
13479
  }
13523
13480
  /**
13524
13481
  * get cached list of all instances
13525
13482
  */
13526
13483
  get(path = this.apiUrl) {
13527
13484
  if (!this.cache) {
13528
- return this.fetch(path).pipe(first$1(), switchMap(() => this.getCacheSubjectObservable()));
13485
+ this.fetch(path).pipe(first$1()).subscribe();
13529
13486
  }
13530
13487
  return this.getCacheSubjectObservable();
13531
13488
  }
@@ -13674,7 +13631,7 @@ class RestService {
13674
13631
  */
13675
13632
  refreshCache() {
13676
13633
  this.setCache(undefined);
13677
- this.get().subscribe();
13634
+ this.get();
13678
13635
  }
13679
13636
  setCache(data, next = false) {
13680
13637
  this.cache = data;
@@ -16595,11 +16552,6 @@ class UserService extends RestService$1 {
16595
16552
  user.blacklistSetupItems.push(item);
16596
16553
  return this.put(user);
16597
16554
  }
16598
- restoreSetupItem(item) {
16599
- const user = clone(this.getCacheFirst());
16600
- remove(user.blacklistSetupItems, (i) => i.id === item.id);
16601
- return this.put(user);
16602
- }
16603
16555
  /**
16604
16556
  * Update cache when user's service subscription is updated
16605
16557
  */
@@ -19233,6 +19185,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.2", ngImpor
19233
19185
  }]
19234
19186
  }], ctorParameters: () => [] });
19235
19187
 
19188
+ var SetupItemTypeEnum;
19189
+ (function (SetupItemTypeEnum) {
19190
+ SetupItemTypeEnum[SetupItemTypeEnum["CLIENT"] = 1] = "CLIENT";
19191
+ SetupItemTypeEnum[SetupItemTypeEnum["EMPLOYEE"] = 2] = "EMPLOYEE";
19192
+ })(SetupItemTypeEnum || (SetupItemTypeEnum = {}));
19193
+
19236
19194
  class SetupItemService extends RestService$1 {
19237
19195
  constructor() {
19238
19196
  super(...arguments);
@@ -19256,19 +19214,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.2", ngImpor
19256
19214
  * Checks required steps and their completion
19257
19215
  */
19258
19216
  class AccountSetupService {
19259
- constructor(setupItemService, propertyService, incomeSourceService, bankConnectionService, bankAccountsService, loanService, allocationRuleService, transactionAllocationService, vehicleClaimService, homeOfficeClaimService, transactionService, depreciationService, soleBusinessService, holdingService, userService, clientMovementService, clientInviteService, employeeService, employeeInviteService, firmService, sharesightDetailsService, propertyShareService) {
19217
+ constructor(setupItemService, propertyService, incomeSourceService, bankAccountsService, transactionAllocationService, vehicleClaimService, transactionService, soleBusinessService, holdingService, userService, clientMovementService, clientInviteService, employeeService, employeeInviteService, firmService) {
19260
19218
  this.setupItemService = setupItemService;
19261
19219
  this.propertyService = propertyService;
19262
19220
  this.incomeSourceService = incomeSourceService;
19263
- this.bankConnectionService = bankConnectionService;
19264
19221
  this.bankAccountsService = bankAccountsService;
19265
- this.loanService = loanService;
19266
- this.allocationRuleService = allocationRuleService;
19267
19222
  this.transactionAllocationService = transactionAllocationService;
19268
19223
  this.vehicleClaimService = vehicleClaimService;
19269
- this.homeOfficeClaimService = homeOfficeClaimService;
19270
19224
  this.transactionService = transactionService;
19271
- this.depreciationService = depreciationService;
19272
19225
  this.soleBusinessService = soleBusinessService;
19273
19226
  this.holdingService = holdingService;
19274
19227
  this.userService = userService;
@@ -19277,110 +19230,101 @@ class AccountSetupService {
19277
19230
  this.employeeService = employeeService;
19278
19231
  this.employeeInviteService = employeeInviteService;
19279
19232
  this.firmService = firmService;
19280
- this.sharesightDetailsService = sharesightDetailsService;
19281
- this.propertyShareService = propertyShareService;
19282
19233
  }
19283
19234
  /**
19284
19235
  * Get list of account setup items for current user/firm
19285
19236
  */
19286
- get(property) {
19287
- // @TODO it takes time for user to update, makes sense to subscribe to serviceSubscription instead
19288
- return combineLatest([this.setupItemService.get(), this.userService.getFirst()]).pipe(switchMap(([items, user]) => {
19237
+ get(type) {
19238
+ return combineLatest([
19239
+ this.setupItemService.get(),
19240
+ this.userService.getFirst()
19241
+ ])
19242
+ .pipe(mergeMap(([items, user]) => {
19243
+ this.items = items;
19289
19244
  this.user = user;
19290
- this.items = items.getByUser(user);
19291
- return this.setItemsStatus(property);
19245
+ return type === SetupItemTypeEnum.CLIENT ? this.getClientItems$() : this.getFirmItems$();
19292
19246
  }));
19293
19247
  }
19294
- setItemsStatus(property) {
19295
- const itemsById = this.items.indexBy('id');
19296
- const requests = pick({
19297
- // firm
19298
- [AccountSetupItemsEnum.FIRM_DETAILS]: this.getFirms(),
19299
- [AccountSetupItemsEnum.FIRM_EMPLOYEES]: this.getEmployees(),
19300
- [AccountSetupItemsEnum.FIRM_CLIENTS]: this.getClients(),
19301
- // work
19302
- [AccountSetupItemsEnum.WORK_SALARY]: this.getIncomeSources(true),
19303
- [AccountSetupItemsEnum.WORK_OTHER_INCOME]: this.getIncomeSources(false),
19304
- [AccountSetupItemsEnum.WORK_VEHICLE_CLAIM]: this.getVehicleClaims(false),
19305
- [AccountSetupItemsEnum.WORK_HOME_OFFICE]: this.getHomeOfficeClaims(false),
19306
- [AccountSetupItemsEnum.WORK_BANK_ACCOUNT]: this.getBankAccounts(TankTypeEnum.WORK),
19307
- [AccountSetupItemsEnum.WORK_DEPRECIATION]: this.getDepreciations(TankTypeEnum.WORK),
19308
- // properties
19309
- [AccountSetupItemsEnum.PROPERTY]: this.propertyService.getArray(),
19310
- [AccountSetupItemsEnum.PROPERTIES]: this.propertyService.getArray().pipe(map(properties => properties.slice(1))),
19311
- [AccountSetupItemsEnum.PROPERTIES_BANK_ACCOUNT]: this.getBankAccounts(TankTypeEnum.PROPERTY),
19312
- // sole
19313
- [AccountSetupItemsEnum.SOLE_BUSINESS]: this.soleBusinessService.getArray(),
19314
- [AccountSetupItemsEnum.SOLE_BUSINESSES]: this.soleBusinessService.getArray().pipe(map(businesses => businesses.slice(1))),
19315
- [AccountSetupItemsEnum.SOLE_VEHICLE_CLAIM]: this.getVehicleClaims(true),
19316
- [AccountSetupItemsEnum.SOLE_HOME_OFFICE]: this.getHomeOfficeClaims(true),
19317
- [AccountSetupItemsEnum.SOLE_DEPRECIATION]: this.getDepreciations(TankTypeEnum.SOLE),
19318
- [AccountSetupItemsEnum.SOLE_BANK_ACCOUNT]: this.getBankAccounts(TankTypeEnum.SOLE),
19319
- // holding
19320
- [AccountSetupItemsEnum.HOLDING_TRADE]: this.holdingService.getArray(),
19321
- [AccountSetupItemsEnum.HOLDING_INTEGRATION]: this.getSharesightDetails(true),
19322
- // bankAccount
19323
- [AccountSetupItemsEnum.BANK_CONNECTION]: this.bankConnectionService.getArray(),
19324
- [AccountSetupItemsEnum.BANK_ACCOUNT]: this.getBankAccounts(),
19325
- [AccountSetupItemsEnum.BANK_ALLOCATION]: this.transactionAllocationService.get(),
19326
- [AccountSetupItemsEnum.BANK_RULE]: this.allocationRuleService.getArray(),
19327
- [AccountSetupItemsEnum.BANK_BORROWING_EXPENSE]: this.getBorrowingExpenses(),
19328
- }, this.items.getIds());
19329
- // property
19330
- if (property) {
19331
- requests[AccountSetupItemsEnum.PROPERTY_CAPITAL_COST] = this.getProperties(property).pipe(map(properties => properties.filter(property => !!property.capitalCosts)));
19332
- requests[AccountSetupItemsEnum.PROPERTY_RENT_INCOME] = this.getTransactions(property).pipe(map(transactions => new TransactionCollection(transactions).filterBy('chartAccounts.id', ChartAccountsListEnum.RENTAL_INCOME)));
19333
- requests[AccountSetupItemsEnum.PROPERTY_DEPRECIATION] = this.getDepreciations(TankTypeEnum.PROPERTY, property);
19334
- requests[AccountSetupItemsEnum.PROPERTY_CO_OWNER] = this.getCoOwners(property);
19335
- }
19336
- const batch = Object.keys(requests).map(id => this.setItemStatus(itemsById.get(id), requests[id]));
19337
- if (!batch.length) {
19338
- return of(new AccountSetupItemCollection([]));
19248
+ getClientItems$() {
19249
+ const batch = [];
19250
+ if (this.user.hasRoles(UserRolesEnum.WORK_TANK)) {
19251
+ batch.push(
19252
+ // Salary item is completed when user added salary income source
19253
+ this.setItemStatus(this.items.findBy('isSalary', true), this.getIncomeSources(true)),
19254
+ // Other income is a part of work tank, completed when user added at least one other income source
19255
+ this.setItemStatus(this.items.findBy('isOtherIncome', true), this.getIncomeSources()));
19256
+ }
19257
+ // Rental income item is completed when user added at least one property
19258
+ if (this.user.hasRoles(UserRolesEnum.PROPERTY_TANK)) {
19259
+ batch.push(this.setItemStatus(this.items.findBy('isProperty', true), this.propertyService.getArray()));
19260
+ }
19261
+ // Sole business item is completed when user added at least one business
19262
+ if (this.user.hasRoles(UserRolesEnum.SOLE_TANK)) {
19263
+ batch.push(this.setItemStatus(this.items.findBy('isSoleBusiness', true), this.soleBusinessService.getArray()));
19264
+ }
19265
+ // holdings item is completed when user added at least one holding
19266
+ if (this.user.hasRoles(UserRolesEnum.HOLDING_TANK)) {
19267
+ batch.push(this.setItemStatus(this.items.findBy('isHoldings', true), this.holdingService.getArray()));
19268
+ }
19269
+ if (this.user.hasRoles([UserRolesEnum.WORK_TANK, UserRolesEnum.PROPERTY_TANK, UserRolesEnum.SOLE_TANK])) {
19270
+ // Bank feeds item is completed when user added at least one bank account (basiq or manual)
19271
+ batch.push(this.getBankFeedsItem());
19272
+ // Logbook item is completed when user has at least one vehicle claim with any method (kms or logbook)
19273
+ batch.push(this.getLogbookItem());
19274
+ // Allocation item is completed when user added at least one transaction allocation
19275
+ batch.push(this.setItemStatus(this.items.findBy('isTransactionAllocate', true), this.transactionAllocationService.get()));
19339
19276
  }
19340
19277
  return combineLatest(batch).pipe(map((items) => new AccountSetupItemCollection(items)));
19341
19278
  }
19279
+ getFirmItems$() {
19280
+ const batch = [];
19281
+ batch.push(
19282
+ // Firm Details item is completed when user filled some general information
19283
+ this.firmService.get().pipe(map((firm) => {
19284
+ const item = this.items.findBy('isFirmDetails', true);
19285
+ if (firm.address || firm.phone || firm.file || firm.shortName) {
19286
+ item.isCompleted = true;
19287
+ }
19288
+ return item;
19289
+ })));
19290
+ batch.push(
19291
+ // Invite team item is completed when firm has employees except firm owner or firm has invited employees.
19292
+ this.setItemStatus(this.items.findBy('isInviteTeam', true), combineLatest([
19293
+ this.employeeService.getArray(),
19294
+ this.employeeInviteService.getArray()
19295
+ ]).pipe(map(([employees, invites]) => {
19296
+ // we always have at least 1 employee (firm owner), so we should check other employees except firm owner
19297
+ if (employees.length) {
19298
+ employees.splice(0, 1);
19299
+ }
19300
+ return [...employees, ...invites];
19301
+ }))));
19302
+ batch.push(
19303
+ // Invite clients item is completed when firm has clients or firm has invited clients.
19304
+ this.setItemStatus(this.items.findBy('isInviteClients', true), combineLatest([this.clientMovementService.getActive(), this.clientInviteService.get()])
19305
+ .pipe(map(([movements, invites]) => [...movements.toArray(), ...invites.toArray()]))));
19306
+ return combineLatest(batch).pipe(map((items) => new AccountSetupItemCollection(items).sortBy('id', 'asc')));
19307
+ }
19342
19308
  /**
19343
19309
  * Check and update isCompleted flag for passed item
19344
19310
  */
19345
19311
  setItemStatus(item, request) {
19346
19312
  return request.pipe(map((result) => {
19347
19313
  const isSkipped = !!this.user.blacklistSetupItems.find((skippedItem) => skippedItem.id === item.id);
19348
- item.status = isSkipped ? AccountSetupItemStatusEnum.SKIPPED : result.length ? AccountSetupItemStatusEnum.ACHIEVED : AccountSetupItemStatusEnum.PENDING;
19314
+ if (result.length || isSkipped) {
19315
+ item.isCompleted = true;
19316
+ }
19317
+ else {
19318
+ item.isCompleted = false;
19319
+ }
19349
19320
  return item;
19350
19321
  }));
19351
19322
  }
19352
- getProperties(property) {
19353
- return this.propertyService.getBy('id', property.id).pipe(map(properties => properties));
19354
- }
19355
- getTransactions(property) {
19356
- return this.transactionService.getByPropertyId(property.id);
19357
- }
19358
- getCoOwners(property) {
19359
- return this.propertyShareService.getArrayBy('property.id', property.id).pipe(map(shares => shares.slice(1)));
19360
- }
19361
- /**
19362
- * AccountSetupItemsEnum.FIRM_CLIENTS completed when client invites sent or accepted
19363
- */
19364
- getClients() {
19365
- return combineLatest([this.clientMovementService.getActive(), this.clientInviteService.get()]).pipe(map(([movements, invites]) => [...movements, ...invites]));
19366
- }
19367
- /**
19368
- * AccountSetupItemsEnum.FIRM_EMPLOYEES completed when employee invites sent or accepted
19369
- */
19370
- getEmployees() {
19371
- return combineLatest([this.employeeService.getArray(), this.employeeInviteService.getArray()]).pipe(map(([employees, invites]) => [...employees.slice(1), ...invites]));
19372
- }
19373
- /**
19374
- * AccountSetupItemsEnum.FIRM_DETAILS when firm data filled
19375
- */
19376
- getFirms() {
19377
- return this.firmService.get().pipe(map((firm) => [firm].filter(firm => firm.address || firm.phone || firm.file || firm.shortName)));
19378
- }
19379
19323
  /**
19380
19324
  * @TODO Alex: work with collection when services refactored
19381
19325
  * @TODO Vik: waiting for income sources refactoring
19382
19326
  */
19383
- getIncomeSources(isSalary) {
19327
+ getIncomeSources(isSalary = false) {
19384
19328
  return this.incomeSourceService.get().pipe(map((incomeSources) => {
19385
19329
  const collection = new IncomeSourceCollection(incomeSources);
19386
19330
  if (isSalary) {
@@ -19389,31 +19333,31 @@ class AccountSetupService {
19389
19333
  return collection.items.filter((incomeSource) => incomeSource.isOtherIncome());
19390
19334
  }));
19391
19335
  }
19392
- getVehicleClaims(isBusiness) {
19393
- return this.vehicleClaimService.getArray().pipe(map((claims => claims.filter(claim => isBusiness ? claim.business : !claim.business))));
19394
- }
19395
- getHomeOfficeClaims(isBusiness) {
19396
- return this.homeOfficeClaimService.getArray().pipe(map(claims => claims.filter(claim => isBusiness ? claim.business : !claim.business)));
19397
- }
19398
- getBankAccounts(tankType) {
19399
- return this.bankAccountsService.get().pipe(map((bankAccounts => bankAccounts.getByTankType(tankType).toArray())));
19400
- }
19401
- getDepreciations(tankType, property) {
19402
- return this.depreciationService.get().pipe(map(depreciations => {
19403
- depreciations = depreciations.getByTankType(tankType);
19404
- if (property) {
19405
- depreciations.filterBy('property.id', property.id);
19336
+ /**
19337
+ * Show logbook item when user has at least 1 vehicle transaction
19338
+ */
19339
+ getLogbookItem() {
19340
+ return this.transactionService.get()
19341
+ .pipe(
19342
+ // @TODO Alex: remove map when services start work with collections
19343
+ map((transactions) => new TransactionCollection(transactions)), mergeMap((transactions) => {
19344
+ if (transactions.getVehicleTransactions().length) {
19345
+ return this.setItemStatus(this.items.findBy('isWorkLogbook', true), this.vehicleClaimService.getArray());
19406
19346
  }
19407
- return depreciations.toArray();
19347
+ return of(null);
19408
19348
  }));
19409
19349
  }
19410
- getSharesightDetails(importEnabled) {
19411
- return this.sharesightDetailsService.getArray().pipe(map(details => details.filter(detail => importEnabled ? detail.importEnabled : detail.exportEnabled)));
19412
- }
19413
- getBorrowingExpenses() {
19414
- return this.loanService.getArray().pipe(map(loans => loans.filter(loan => !!loan.borrowingExpenses.length)));
19350
+ /**
19351
+ * Hide bank feeds item when user has only holding tank
19352
+ */
19353
+ getBankFeedsItem() {
19354
+ const bankFeedsRoles = [UserRolesEnum.PROPERTY_TANK, UserRolesEnum.WORK_TANK, UserRolesEnum.SOLE_TANK];
19355
+ if (!intersection(bankFeedsRoles, this.user.roles).length) {
19356
+ return of(null);
19357
+ }
19358
+ return this.setItemStatus(this.items.findBy('isBankFeeds', true), this.bankAccountsService.getArray());
19415
19359
  }
19416
- 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 }); }
19360
+ 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 }); }
19417
19361
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.2", ngImport: i0, type: AccountSetupService, providedIn: 'root' }); }
19418
19362
  }
19419
19363
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.2", ngImport: i0, type: AccountSetupService, decorators: [{
@@ -19421,7 +19365,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.2", ngImpor
19421
19365
  args: [{
19422
19366
  providedIn: 'root'
19423
19367
  }]
19424
- }], 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 }] });
19368
+ }], 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 }] });
19425
19369
 
19426
19370
  class AdblockService {
19427
19371
  constructor() {
@@ -20558,7 +20502,6 @@ const ENDPOINTS = {
20558
20502
  SERVICE_PAYMENTS_GET: new Endpoint('GET', '\\/service-payments'),
20559
20503
  SERVICE_SUBSCRIPTIONS_GET: new Endpoint('GET', '\\/service-subscriptions'),
20560
20504
  SERVICE_SUBSCRIPTIONS_POST: new Endpoint('POST', '\\/service-subscriptions'),
20561
- SERVICE_SUBSCRIPTIONS_TRIAL_POST: new Endpoint('POST', '\\/service-subscriptions/'),
20562
20505
  SERVICE_SUBSCRIPTIONS_CANCEL: new Endpoint('PUT', '\\/service-subscriptions\\/\\d+\\/cancel'),
20563
20506
  SERVICE_SUBSCRIPTIONS_RENEW: new Endpoint('PUT', '\\/service-subscriptions\\/\\d+\\/renewal'),
20564
20507
  SERVICE_PAYMENT_INVOICE_URL_GET: new Endpoint('GET', '\\/service-payments\\/\\d+\\/invoice-url'),
@@ -20615,7 +20558,6 @@ const ENDPOINTS = {
20615
20558
  TRANSACTIONS_ALLOCATIONS_POST: new Endpoint('POST', '\\/transaction-allocations'),
20616
20559
  TRANSACTIONS_ALLOCATIONS_DELETE: new Endpoint('DELETE', '\\/transaction-allocations\\/\\d+'),
20617
20560
  TRANSACTIONS_ALLOCATIONS_BATCH_DELETE: new Endpoint('POST', '\\/transaction-allocations\\/delete'),
20618
- TRIAL_POST: new Endpoint('POST', '\\/trial'),
20619
20561
  USER_CONFIRMATION_POST: new Endpoint('POST', '\\/users\\/confirmation'),
20620
20562
  USER_CONFIRMATION_RESEND_POST: new Endpoint('POST', '\\/users\\/confirmation\\/resend'),
20621
20563
  USER_CURRENT_GET: new Endpoint('GET', '\\/users\\/current'),
@@ -24294,9 +24236,13 @@ class AllocationRuleTransactionForm extends AbstractForm {
24294
24236
  amount: new UntypedFormControl(null, Validators.required)
24295
24237
  }));
24296
24238
  }
24239
+ buildTransactions(transaction) {
24240
+ return transaction.childTransactions.map(childTransaction => Object.assign(childTransaction, { claimPercent: (transaction.claimPercent * childTransaction.chartAccounts?.taxablePercent) / 100 }));
24241
+ }
24297
24242
  submit() {
24298
24243
  const data = {
24299
- metaFields: this.metaFieldsArray.controls.map((metaFieldForm) => metaFieldForm.submit())
24244
+ metaFields: this.metaFieldsArray.controls.map((metaFieldForm) => metaFieldForm.submit()),
24245
+ childTransactions: this.buildTransactions(this.currentValue)
24300
24246
  };
24301
24247
  return super.submit(data, true);
24302
24248
  }
@@ -25468,5 +25414,5 @@ var MessagesEnum;
25468
25414
  * Generated bundle index. Do not edit.
25469
25415
  */
25470
25416
 
25471
- 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 };
25417
+ 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 };
25472
25418
  //# sourceMappingURL=taxtank-core.mjs.map