taxtank-core 0.29.6 → 0.29.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/bundles/taxtank-core.umd.js +386 -348
  2. package/bundles/taxtank-core.umd.js.map +1 -1
  3. package/esm2015/lib/collections/property/property-sale/property-sale.collection.js +3 -3
  4. package/esm2015/lib/db/Models/bank/bank-connection.js +1 -1
  5. package/esm2015/lib/db/Models/observable-model.js +4 -1
  6. package/esm2015/lib/forms/property/property-sale/property-sale-cost-sale.form.js +10 -4
  7. package/esm2015/lib/interceptors/basiq-client-id.interceptor.js +3 -3
  8. package/esm2015/lib/interceptors/basiq-token.interceptor.js +3 -3
  9. package/esm2015/lib/interceptors/corelogic-interceptor.js +3 -3
  10. package/esm2015/lib/interceptors/financial-year-interceptor.js +3 -3
  11. package/esm2015/lib/interceptors/interceptors.module.js +4 -4
  12. package/esm2015/lib/interceptors/jwt-interceptor.js +3 -3
  13. package/esm2015/lib/interceptors/preloader.interceptor.js +3 -3
  14. package/esm2015/lib/interceptors/user-switcher-interceptor.js +3 -3
  15. package/esm2015/lib/models/bank/bank-connection.js +4 -1
  16. package/esm2015/lib/models/property/property-sale/property-sale.js +8 -2
  17. package/esm2015/lib/models/property/property.js +5 -5
  18. package/esm2015/lib/models/report/my-tax/my-tax-cgt/my-tax-cgt.js +4 -4
  19. package/esm2015/lib/services/account-setup/account-setup.service.js +3 -3
  20. package/esm2015/lib/services/affiliate/rewardful/rewardful.service.js +3 -3
  21. package/esm2015/lib/services/asset/assets.service.js +3 -3
  22. package/esm2015/lib/services/auth/auth.service.js +3 -3
  23. package/esm2015/lib/services/auth/jwt.service.js +3 -3
  24. package/esm2015/lib/services/bank/bank-account-calculation.service.js +3 -3
  25. package/esm2015/lib/services/bank/bank-transaction-calculation.service.js +3 -3
  26. package/esm2015/lib/services/event/event-dispatcher.service.js +6 -6
  27. package/esm2015/lib/services/event/sse.service.js +3 -3
  28. package/esm2015/lib/services/export/export-formatter.service.js +3 -3
  29. package/esm2015/lib/services/header-title/header-title.service.js +3 -3
  30. package/esm2015/lib/services/http/address/address.service.js +3 -3
  31. package/esm2015/lib/services/http/bank/bank-account/bank-account.service.js +3 -3
  32. package/esm2015/lib/services/http/bank/bank-connection/bank-connection.service.js +3 -3
  33. package/esm2015/lib/services/http/bank/bank-transaction/bank-transaction.service.js +3 -3
  34. package/esm2015/lib/services/http/bank/bank.service.js +3 -3
  35. package/esm2015/lib/services/http/bank/basiq/basiq-token.service.js +3 -3
  36. package/esm2015/lib/services/http/bank/basiq/basiq.service.js +3 -3
  37. package/esm2015/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.js +3 -3
  38. package/esm2015/lib/services/http/chart-accounts/chart-accounts.service.js +3 -3
  39. package/esm2015/lib/services/http/chat/chat.service.js +3 -3
  40. package/esm2015/lib/services/http/chat/message-document.service.js +3 -3
  41. package/esm2015/lib/services/http/chat/message.service.js +3 -3
  42. package/esm2015/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.js +3 -3
  43. package/esm2015/lib/services/http/depreciation/depreciation-receipt/depreciation-receipt.service.js +3 -3
  44. package/esm2015/lib/services/http/depreciation/depreciation.service.js +3 -3
  45. package/esm2015/lib/services/http/document/document-folder/document-folder.service.js +3 -3
  46. package/esm2015/lib/services/http/document/document.service.js +3 -3
  47. package/esm2015/lib/services/http/facebook/facebook.service.js +3 -3
  48. package/esm2015/lib/services/http/file/file.service.js +3 -3
  49. package/esm2015/lib/services/http/firm/client-income/client-income-types.service.js +3 -3
  50. package/esm2015/lib/services/http/firm/client-invite/client-invite.service.js +3 -3
  51. package/esm2015/lib/services/http/firm/client-movement/client-movement.service.js +3 -3
  52. package/esm2015/lib/services/http/firm/employee/employee.service.js +3 -3
  53. package/esm2015/lib/services/http/firm/employee-invite/employee-invite.service.js +3 -3
  54. package/esm2015/lib/services/http/firm/firm.service.js +3 -3
  55. package/esm2015/lib/services/http/firm/portfolio-report/client-portfolio-report.service.js +3 -3
  56. package/esm2015/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.js +3 -3
  57. package/esm2015/lib/services/http/income-source/income-source.service.js +3 -3
  58. package/esm2015/lib/services/http/income-source/salary-forecast/salary-forecast.service.js +3 -3
  59. package/esm2015/lib/services/http/income-source/sole-forecast/sole-forecast.service.js +3 -3
  60. package/esm2015/lib/services/http/loan/borrowing-expense/borrowing-expense.service.js +3 -3
  61. package/esm2015/lib/services/http/loan/loan.service.js +3 -3
  62. package/esm2015/lib/services/http/property/property-category/property-category.service.js +3 -3
  63. package/esm2015/lib/services/http/property/property-category-movement/property-category-movement.service.js +3 -3
  64. package/esm2015/lib/services/http/property/property-document/property-document.service.js +3 -3
  65. package/esm2015/lib/services/http/property/property-sale/property-sale.service.js +3 -3
  66. package/esm2015/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.js +3 -3
  67. package/esm2015/lib/services/http/property/property-share/property-share.service.js +3 -3
  68. package/esm2015/lib/services/http/property/property.service.js +7 -7
  69. package/esm2015/lib/services/http/receipt/receipt.service.js +3 -3
  70. package/esm2015/lib/services/http/rest/rest-old.service.js +3 -3
  71. package/esm2015/lib/services/http/rest/rest.service.js +3 -3
  72. package/esm2015/lib/services/http/service-notification/service-notification.service.js +3 -3
  73. package/esm2015/lib/services/http/sole/bas-report/bas-report.service.js +3 -3
  74. package/esm2015/lib/services/http/sole/sole-business/sole-business.service.js +3 -3
  75. package/esm2015/lib/services/http/sole/sole-business-activity/sole-business-activity.service.js +3 -3
  76. package/esm2015/lib/services/http/sole/sole-business-loss/sole-business-loss-rules/sole-business-loss-offset-rule.service.js +3 -3
  77. package/esm2015/lib/services/http/sole/sole-business-loss/sole-business-loss.service.js +3 -3
  78. package/esm2015/lib/services/http/sole/sole-contact/sole-contact.service.js +3 -3
  79. package/esm2015/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.js +3 -3
  80. package/esm2015/lib/services/http/sole/sole-details/sole-details.service.js +3 -3
  81. package/esm2015/lib/services/http/sole/sole-invoice/sole-invoice.service.js +3 -3
  82. package/esm2015/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.js +3 -3
  83. package/esm2015/lib/services/http/subscription/service-price.service.js +3 -3
  84. package/esm2015/lib/services/http/subscription/subscription.service.js +3 -3
  85. package/esm2015/lib/services/http/tax-review/tax-review-history/tax-review-history.service.js +3 -3
  86. package/esm2015/lib/services/http/tax-review/tax-review.service.js +3 -3
  87. package/esm2015/lib/services/http/tax-summary/tax-summary.service.js +3 -3
  88. package/esm2015/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.js +3 -3
  89. package/esm2015/lib/services/http/transaction/transaction-receipt/transaction-receipt.service.js +3 -3
  90. package/esm2015/lib/services/http/transaction/transaction.service.js +3 -3
  91. package/esm2015/lib/services/http/tutorial-video/tutorial-video.service.js +3 -3
  92. package/esm2015/lib/services/http/user/occupation/occupation.service.js +3 -3
  93. package/esm2015/lib/services/http/user/user-event-setting/user-event-setting.service.js +3 -3
  94. package/esm2015/lib/services/http/user/user-event-type/user-event-type.service.js +3 -3
  95. package/esm2015/lib/services/http/user/user.service.js +17 -11
  96. package/esm2015/lib/services/http/user/users-invite/users-invite.service.js +3 -3
  97. package/esm2015/lib/services/http/vehicle/vehicle-claim-details.service.js +3 -3
  98. package/esm2015/lib/services/http/vehicle/vehicle-claim.service.js +3 -3
  99. package/esm2015/lib/services/http/vehicle/vehicle-logbook.service.js +3 -3
  100. package/esm2015/lib/services/http/vehicle/vehicle.service.js +3 -3
  101. package/esm2015/lib/services/intercom/intercom.service.js +3 -3
  102. package/esm2015/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.js +3 -3
  103. package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.js +3 -3
  104. package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.js +3 -3
  105. package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-table.service.js +3 -3
  106. package/esm2015/lib/services/preloader/preloader.service.js +3 -3
  107. package/esm2015/lib/services/property/corelogic/corelogic.service.js +3 -3
  108. package/esm2015/lib/services/property/equity-position-chart/equity-position-chart.service.js +3 -3
  109. package/esm2015/lib/services/property/property-calculation/property-calculation.service.js +3 -3
  110. package/esm2015/lib/services/report/property/property-transaction-report.service.js +3 -3
  111. package/esm2015/lib/services/toast/toast.service.js +3 -3
  112. package/esm2015/lib/services/transaction/transaction-calculation.service.js +3 -3
  113. package/esm2015/lib/services/user/user-switcher.service.js +3 -3
  114. package/esm2015/lib/services/vehicle/logbook-best-period.service.js +3 -3
  115. package/esm2015/lib/services/xlsx/xlsx.service.js +3 -3
  116. package/esm2015/lib/tt-core.module.js +4 -4
  117. package/fesm2015/taxtank-core.js +364 -337
  118. package/fesm2015/taxtank-core.js.map +1 -1
  119. package/lib/collections/property/property-sale/property-sale.collection.d.ts +1 -1
  120. package/lib/db/Models/bank/bank-connection.d.ts +1 -0
  121. package/lib/db/Models/observable-model.d.ts +1 -0
  122. package/lib/forms/property/property-sale/property-sale-cost-sale.form.d.ts +1 -0
  123. package/lib/models/bank/bank-connection.d.ts +1 -0
  124. package/lib/models/property/property-sale/property-sale.d.ts +3 -1
  125. package/lib/models/property/property.d.ts +1 -1
  126. package/lib/services/event/event-dispatcher.service.d.ts +1 -1
  127. package/lib/services/http/property/property.service.d.ts +1 -1
  128. package/lib/services/http/user/user.service.d.ts +8 -5
  129. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  import { Collection } from '../../collection';
2
2
  export class PropertySaleCollection extends Collection {
3
- get grossCGT() {
4
- return this.create(this.items.filter((propertySale) => propertySale.grossCGT > 0)).sumBy('grossCGT');
3
+ get grossCGTAfterLoss() {
4
+ return this.create(this.items.filter((propertySale) => propertySale.grossCGTAfterLoss > 0)).sumBy('grossCGTAfterLoss');
5
5
  }
6
6
  /**
7
7
  * Property sales are CGT applicable unless it has "Principle place of residence" exemption type
@@ -13,4 +13,4 @@ export class PropertySaleCollection extends Collection {
13
13
  return this.filterBy('share.id', ids);
14
14
  }
15
15
  }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktc2FsZS5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUvcHJvcGVydHktc2FsZS5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUc5QyxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsVUFBd0I7SUFDbEUsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUNoQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQzdFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQjtRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUEwQixFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FDbEYsQ0FBQztJQUNKLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxHQUFhO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDeEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHsgUHJvcGVydHlTYWxlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUvcHJvcGVydHktc2FsZSc7XG5cbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVNhbGVDb2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxQcm9wZXJ0eVNhbGU+IHtcbiAgZ2V0IGdyb3NzQ0dUKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHByb3BlcnR5U2FsZTogUHJvcGVydHlTYWxlKSA9PiBwcm9wZXJ0eVNhbGUuZ3Jvc3NDR1QgPiAwKVxuICAgICkuc3VtQnkoJ2dyb3NzQ0dUJyk7XG4gIH1cblxuICAvKipcbiAgICogUHJvcGVydHkgc2FsZXMgYXJlIENHVCBhcHBsaWNhYmxlIHVubGVzcyBpdCBoYXMgXCJQcmluY2lwbGUgcGxhY2Ugb2YgcmVzaWRlbmNlXCIgZXhlbXB0aW9uIHR5cGVcbiAgICovXG4gIGdldENHVEFwcGxpY2FibGUoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHByb3BlcnR5U2FsZTogUHJvcGVydHlTYWxlKSA9PiBwcm9wZXJ0eVNhbGUuaXNDR1RBcHBsaWNhYmxlKCkpXG4gICAgKTtcbiAgfVxuXG4gIGdldEJ5UHJvcGVydHlTaGFyZUlkcyhpZHM6IG51bWJlcltdKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQnkoJ3NoYXJlLmlkJywgaWRzKTtcbiAgfVxufVxuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktc2FsZS5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUvcHJvcGVydHktc2FsZS5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUc5QyxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsVUFBd0I7SUFDbEUsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUNoQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUMsQ0FDdEYsQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsWUFBMEIsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQ2xGLENBQUM7SUFDSixDQUFDO0lBRUQscUJBQXFCLENBQUMsR0FBYTtRQUNqQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IFByb3BlcnR5U2FsZSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9wcm9wZXJ0eS9wcm9wZXJ0eS1zYWxlL3Byb3BlcnR5LXNhbGUnO1xuXG5leHBvcnQgY2xhc3MgUHJvcGVydHlTYWxlQ29sbGVjdGlvbiBleHRlbmRzIENvbGxlY3Rpb248UHJvcGVydHlTYWxlPiB7XG4gIGdldCBncm9zc0NHVEFmdGVyTG9zcygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChwcm9wZXJ0eVNhbGU6IFByb3BlcnR5U2FsZSkgPT4gcHJvcGVydHlTYWxlLmdyb3NzQ0dUQWZ0ZXJMb3NzID4gMClcbiAgICApLnN1bUJ5KCdncm9zc0NHVEFmdGVyTG9zcycpO1xuICB9XG5cbiAgLyoqXG4gICAqIFByb3BlcnR5IHNhbGVzIGFyZSBDR1QgYXBwbGljYWJsZSB1bmxlc3MgaXQgaGFzIFwiUHJpbmNpcGxlIHBsYWNlIG9mIHJlc2lkZW5jZVwiIGV4ZW1wdGlvbiB0eXBlXG4gICAqL1xuICBnZXRDR1RBcHBsaWNhYmxlKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChwcm9wZXJ0eVNhbGU6IFByb3BlcnR5U2FsZSkgPT4gcHJvcGVydHlTYWxlLmlzQ0dUQXBwbGljYWJsZSgpKVxuICAgICk7XG4gIH1cblxuICBnZXRCeVByb3BlcnR5U2hhcmVJZHMoaWRzOiBudW1iZXJbXSk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmZpbHRlckJ5KCdzaGFyZS5pZCcsIGlkcyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
1
  import { ObservableModel } from '../observable-model';
2
2
  export class BankConnection extends ObservableModel {
3
3
  }
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1jb25uZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2RiL01vZGVscy9iYW5rL2JhbmstY29ubmVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdEQsTUFBTSxPQUFPLGNBQWUsU0FBUSxlQUFlO0NBUWxEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFua0Nvbm5lY3Rpb25TdGF0dXNFbnVtIH0gZnJvbSAnLi4vLi4vRW51bXMvYmFuay1jb25uZWN0aW9uLXN0YXR1cy5lbnVtJztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi91c2VyL3VzZXInO1xuaW1wb3J0IHsgQmFuayB9IGZyb20gJy4vYmFuayc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudCB9IGZyb20gJy4vYmFuay1hY2NvdW50JztcbmltcG9ydCB7IEJhc2lxSm9iIH0gZnJvbSAnLi9iYXNpcS1qb2InO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZU1vZGVsIH0gZnJvbSAnLi4vb2JzZXJ2YWJsZS1tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBCYW5rQ29ubmVjdGlvbiBleHRlbmRzIE9ic2VydmFibGVNb2RlbCB7XG4gIGlkPzogbnVtYmVyO1xuICBleHRlcm5hbElkPzogc3RyaW5nO1xuICBzdGF0dXM/OiBCYW5rQ29ubmVjdGlvblN0YXR1c0VudW07XG4gIHVzZXI/OiBVc2VyO1xuICBiYW5rPzogQmFuaztcbiAgYmFua0FjY291bnRzPzogQmFua0FjY291bnRbXTtcbiAgYmFzaXFKb2I/OiBCYXNpcUpvYjtcbn1cbiJdfQ==
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1jb25uZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2RiL01vZGVscy9iYW5rL2JhbmstY29ubmVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdEQsTUFBTSxPQUFPLGNBQWUsU0FBUSxlQUFlO0NBU2xEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFua0Nvbm5lY3Rpb25TdGF0dXNFbnVtIH0gZnJvbSAnLi4vLi4vRW51bXMvYmFuay1jb25uZWN0aW9uLXN0YXR1cy5lbnVtJztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi91c2VyL3VzZXInO1xuaW1wb3J0IHsgQmFuayB9IGZyb20gJy4vYmFuayc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudCB9IGZyb20gJy4vYmFuay1hY2NvdW50JztcbmltcG9ydCB7IEJhc2lxSm9iIH0gZnJvbSAnLi9iYXNpcS1qb2InO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZU1vZGVsIH0gZnJvbSAnLi4vb2JzZXJ2YWJsZS1tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBCYW5rQ29ubmVjdGlvbiBleHRlbmRzIE9ic2VydmFibGVNb2RlbCB7XG4gIGlkPzogbnVtYmVyO1xuICBleHRlcm5hbElkPzogc3RyaW5nO1xuICBzdGF0dXM/OiBCYW5rQ29ubmVjdGlvblN0YXR1c0VudW07XG4gIHVzZXI/OiBVc2VyO1xuICBiYW5rPzogQmFuaztcbiAgYmFua0FjY291bnRzPzogQmFua0FjY291bnRbXTtcbiAgYmFzaXFKb2I/OiBCYXNpcUpvYjtcbiAgbGFzdFN1Y2Nlc3NJbXBvcnREYXRlPzogRGF0ZTtcbn1cbiJdfQ==
@@ -6,5 +6,8 @@ export class ObservableModel extends AbstractModel {
6
6
  static getEventName(method) {
7
7
  return `${this.name}_${method}`;
8
8
  }
9
+ static getEventNames(...methods) {
10
+ return methods.map((method) => this.getEventName(method));
11
+ }
9
12
  }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2YWJsZS1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9kYi9Nb2RlbHMvb2JzZXJ2YWJsZS1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBQ2hELE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBa0I7UUFDcEMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLElBQUksTUFBTSxFQUFFLENBQUM7SUFDbEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzdE1ldGhvZCB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9odHRwL3Jlc3RcIjtcbmltcG9ydCB7IEFic3RyYWN0TW9kZWwgfSBmcm9tIFwiLi9hYnN0cmFjdC1tb2RlbFwiO1xuXG4vKipcbiAqIE1vZGVsLCB3aGljaCBjaGlsZHJlbiBzaG91bGQgYmUgbGlzdGVuZWQgdmlhIGV2ZW50IGRpc3BhdGNoZXIgc2VydmljZSBpc2luZyBhdXRvbWF0aWMgZXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBPYnNlcnZhYmxlTW9kZWwgZXh0ZW5kcyBBYnN0cmFjdE1vZGVsIHtcbiAgc3RhdGljIGdldEV2ZW50TmFtZShtZXRob2Q6IFJlc3RNZXRob2QpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLm5hbWV9XyR7bWV0aG9kfWA7XG4gIH1cbn1cbiJdfQ==
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2YWJsZS1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9kYi9Nb2RlbHMvb2JzZXJ2YWJsZS1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBQ2hELE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBa0I7UUFDcEMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLElBQUksTUFBTSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxPQUFxQjtRQUMzQyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXN0TWV0aG9kIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2h0dHAvcmVzdFwiO1xuaW1wb3J0IHsgQWJzdHJhY3RNb2RlbCB9IGZyb20gXCIuL2Fic3RyYWN0LW1vZGVsXCI7XG5cbi8qKlxuICogTW9kZWwsIHdoaWNoIGNoaWxkcmVuIHNob3VsZCBiZSBsaXN0ZW5lZCB2aWEgZXZlbnQgZGlzcGF0Y2hlciBzZXJ2aWNlIGlzaW5nIGF1dG9tYXRpYyBldmVudHNcbiAqL1xuZXhwb3J0IGNsYXNzIE9ic2VydmFibGVNb2RlbCBleHRlbmRzIEFic3RyYWN0TW9kZWwge1xuICBzdGF0aWMgZ2V0RXZlbnROYW1lKG1ldGhvZDogUmVzdE1ldGhvZCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMubmFtZX1fJHttZXRob2R9YDtcbiAgfVxuXG4gIHN0YXRpYyBnZXRFdmVudE5hbWVzKC4uLm1ldGhvZHM6IFJlc3RNZXRob2RbXSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gbWV0aG9kcy5tYXAoKG1ldGhvZCkgPT4gdGhpcy5nZXRFdmVudE5hbWUobWV0aG9kKSk7XG4gIH1cbn1cbiJdfQ==
@@ -15,13 +15,13 @@ export class PropertySaleCostSaleForm extends AbstractForm {
15
15
  legalFees: new FormControl(propertySale.legalFees || 0, Validators.required),
16
16
  otherCost: new FormControl(propertySale.otherCost || 0, Validators.required),
17
17
  capitalLoss: new FormControl(propertySale.capitalLoss || 0, Validators.required),
18
- // capital gain tax
19
18
  grossCGT: new FormControl({ value: propertySale.grossCGT, disabled: true }, Validators.required),
19
+ grossCGTAfterLoss: new FormControl({ value: propertySale.grossCGTAfterLoss, disabled: true }, Validators.required),
20
20
  }, propertySale);
21
21
  this.propertySale = propertySale;
22
22
  this.property = property;
23
- this.updateGrossCGT();
24
23
  this.listenEvents();
24
+ this.updateGrossCGT();
25
25
  }
26
26
  listenEvents() {
27
27
  this.listenCommissionUpdated();
@@ -29,6 +29,7 @@ export class PropertySaleCostSaleForm extends AbstractForm {
29
29
  this.listenOtherCostUpdated();
30
30
  this.listenPriceUpdated();
31
31
  this.listenCapitalLossUpdated();
32
+ this.listenGrossCGT();
32
33
  }
33
34
  /**
34
35
  * Get property instance based on provided property and form value to get actual form calculations
@@ -43,7 +44,7 @@ export class PropertySaleCostSaleForm extends AbstractForm {
43
44
  return super.submit(data);
44
45
  }
45
46
  updateGrossCGT() {
46
- this.get('grossCGT').setValue(Math.round(this.property.calculateCGT(this.getPropertySale())).toFixed());
47
+ this.get('grossCGT').setValue(Math.round(this.property.calculateGrossCGT(this.getPropertySale())).toFixed());
47
48
  }
48
49
  listenCommissionUpdated() {
49
50
  this.get('commission').valueChanges.subscribe(() => {
@@ -70,5 +71,10 @@ export class PropertySaleCostSaleForm extends AbstractForm {
70
71
  this.updateGrossCGT();
71
72
  });
72
73
  }
74
+ listenGrossCGT() {
75
+ this.get('grossCGT').valueChanges.subscribe((grossCGT) => {
76
+ this.get('grossCGTAfterLoss').setValue(this.getPropertySale().grossCGTAfterLoss);
77
+ });
78
+ }
73
79
  }
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktc2FsZS1jb3N0LXNhbGUuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9wcm9wZXJ0eS9wcm9wZXJ0eS1zYWxlL3Byb3BlcnR5LXNhbGUtY29zdC1zYWxlLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRDs7R0FFRztBQUNILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxZQUEwQjtJQUN0RSxZQUNVLFlBQTBCLEVBQzFCLFFBQWtCO1FBRTFCLEtBQUssQ0FBQztZQUNGLEtBQUssRUFBRSxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDL0QsWUFBWSxFQUFFLElBQUksV0FBVyxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUM3RSxjQUFjLEVBQUUsSUFBSSxXQUFXLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2pGLFVBQVUsRUFBRSxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMsVUFBVSxJQUFJLENBQUMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzlFLFNBQVMsRUFBRSxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMsU0FBUyxJQUFJLENBQUMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzVFLFNBQVMsRUFBRSxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMs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QztRQUN4QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Rm9ybSB9IGZyb20gJy4uLy4uL2Fic3RyYWN0LmZvcm0nO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQcm9wZXJ0eVNhbGUgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcHJvcGVydHkvcHJvcGVydHktc2FsZSc7XG5pbXBvcnQgeyBQcm9wZXJ0eSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9wcm9wZXJ0eS9wcm9wZXJ0eSc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBJRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvZXZlbnQtbGlzdGVuZXIuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBAVG9kbyBUVC0yMTQzIENyZWF0ZSBhbmQgZXh0ZW5kIGZyb20gYWJzdHJhY3QgUHJvcGVydHlTYWxlIGZvcm1cbiAqL1xuZXhwb3J0IGNsYXNzIFByb3BlcnR5U2FsZUNvc3RTYWxlRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxQcm9wZXJ0eVNhbGU+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHByb3BlcnR5U2FsZTogUHJvcGVydHlTYWxlLFxuICAgIHByaXZhdGUgcHJvcGVydHk6IFByb3BlcnR5LFxuICApIHtcbiAgICBzdXBlcih7XG4gICAgICAgIHByaWNlOiBuZXcgRm9ybUNvbnRyb2wocHJvcGVydHlTYWxlLnByaWNlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgY29udHJhY3REYXRlOiBuZXcgRm9ybUNvbnRyb2wocHJvcGVydHlTYWxlLmNvbnRyYWN0RGF0ZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICAgIHNldHRsZW1lbnREYXRlOiBuZXcgRm9ybUNvbnRyb2wocHJvcGVydHlTYWxlLnNldHRsZW1lbnREYXRlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgY29tbWlzc2lvbjogbmV3IEZvcm1Db250cm9sKHByb3BlcnR5U2FsZS5jb21taXNzaW9uIHx8IDAsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICBsZWdhbEZlZXM6IG5ldyBGb3JtQ29udHJvbChwcm9wZXJ0eVNhbGUubGVnYWxGZWVzIHx8IDAsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICBvdGhlckNvc3Q6IG5ldyBGb3JtQ29udHJvbChwcm9wZXJ0eVNhbGUub3RoZXJDb3N0IHx8IDAsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICBjYXBpdGFsTG9zczogbmV3IEZvcm1Db250cm9sKHByb3BlcnR5U2FsZS5jYXBpdGFsTG9zcyB8fCAwLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgLy8gY2FwaXRhbCBnYWluIHRheFxuICAgICAgICBncm9zc0NHVDogbmV3IEZvcm1Db250cm9sKHt2YWx1ZTogcHJvcGVydHlTYWxlLmdyb3NzQ0dULCBkaXNhYmxlZDogdHJ1ZX0sIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgfSxcbiAgICAgIHByb3BlcnR5U2FsZVxuICAgICk7XG5cbiAgICB0aGlzLnVwZGF0ZUdyb3NzQ0dUKCk7XG4gICAgdGhpcy5saXN0ZW5FdmVudHMoKTtcbiAgfVxuXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlbkNvbW1pc3Npb25VcGRhdGVkKCk7XG4gICAgdGhpcy5saXN0ZW5MZWdhbEZlZXNVcGRhdGVkKCk7XG4gICAgdGhpcy5saXN0ZW5PdGhlckNvc3RVcGRhdGVkKCk7XG4gICAgdGhpcy5saXN0ZW5QcmljZVVwZGF0ZWQoKTtcbiAgICB0aGlzLmxpc3RlbkNhcGl0YWxMb3NzVXBkYXRlZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBwcm9wZXJ0eSBpbnN0YW5jZSBiYXNlZCBvbiBwcm92aWRlZCBwcm9wZXJ0eSBhbmQgZm9ybSB2YWx1ZSB0byBnZXQgYWN0dWFsIGZvcm0gY2FsY3VsYXRpb25zXG4gICAqIEBUb2RvIFRULTIxNDMgTW92ZSB0byBwYXJlbnQgYWJzdHJhY3QgUHJvcGVydHlTYWxlIGZvcm1cbiAgICovXG4gIGdldFByb3BlcnR5U2FsZSgpOiBQcm9wZXJ0eVNhbGUge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MoUHJvcGVydHlTYWxlLCBPYmplY3QuYXNzaWduKHt9LCB0aGlzLnByb3BlcnR5U2FsZSwgdGhpcy5nZXRSYXdWYWx1ZSgpKSk7XG4gIH1cblxuICBzdWJtaXQoZGF0YTogb2JqZWN0ID0ge30pOiBQcm9wZXJ0eVNhbGUge1xuICAgIC8vICdncm9zc0NHVCcgZmllbGQgaXMgYWx3YXlzIGRpc2FibGVkLCBidXQgd2UgbmVlZCBpdCB0byBzdWJtaXQgcmVzdWx0XG4gICAgT2JqZWN0LmFzc2lnbihkYXRhLCB7Z3Jvc3NDR1Q6IHRoaXMuZ2V0KCdncm9zc0NHVCcpLnZhbHVlfSk7XG4gICAgcmV0dXJuIHN1cGVyLnN1Ym1pdChkYXRhKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlR3Jvc3NDR1QoKTogdm9pZCB7XG4gICAgdGhpcy5nZXQoJ2dyb3NzQ0dUJykuc2V0VmFsdWUoTWF0aC5yb3VuZCh0aGlzLnByb3BlcnR5LmNhbGN1bGF0ZUNHVCh0aGlzLmdldFByb3BlcnR5U2FsZSgpKSkudG9GaXhlZCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuQ29tbWlzc2lvblVwZGF0ZWQoKTogdm9pZCB7XG4gICAgdGhpcy5nZXQoJ2NvbW1pc3Npb24nKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlR3Jvc3NDR1QoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuTGVnYWxGZWVzVXBkYXRlZCgpIHtcbiAgICB0aGlzLmdldCgnbGVnYWxGZWVzJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUdyb3NzQ0dUKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3Rlbk90aGVyQ29zdFVwZGF0ZWQoKSB7XG4gICAgdGhpcy5nZXQoJ290aGVyQ29zdCcpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVHcm9zc0NHVCgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5QcmljZVVwZGF0ZWQoKSB7XG4gICAgdGhpcy5nZXQoJ3ByaWNlJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUdyb3NzQ0dUKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkNhcGl0YWxMb3NzVXBkYXRlZCgpIHtcbiAgICB0aGlzLmdldCgnY2FwaXRhbExvc3MnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlR3Jvc3NDR1QoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktc2FsZS1jb3N0LXNhbGUuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9wcm9wZXJ0eS9wcm9wZXJ0eS1zYWxlL3Byb3BlcnR5LXNhbGUtY29zdC1zYWxlLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRDs7R0FFRztBQUNILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxZQUEwQjtJQUN0RSxZQUNVLFlBQTBCLEVBQzFCLFFBQWtCO1FBRTFCLEtBQUssQ0FBQztZQUNKLEtBQUssRUFBRSxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDL0QsWUFBWSxFQUFFLElBQUksV0FBVyxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUM3RSxjQUFjLEVBQUUsSUFBSSxXQUFXLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2pGLFVBQVUsRUFBRSxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMsVUFBVSxJQUFJLENBQUMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzlFLFNBQVMsRUFBRSxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMsU0FBUyxJQUFJLENBQUMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzVFLFNBQVMsRUFBRSxJQUFJLFdBQVcsQ0FBQyxZQUFZLENBQUMs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QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbEQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBZ0IsRUFBRSxFQUFFO1lBQy9ELElBQUksQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbkYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdEZvcm0gfSBmcm9tICcuLi8uLi9hYnN0cmFjdC5mb3JtJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUHJvcGVydHlTYWxlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUnO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcHJvcGVydHkvcHJvcGVydHknO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2V2ZW50LWxpc3RlbmVyLmludGVyZmFjZSc7XG5cbi8qKlxuICogQFRvZG8gVFQtMjE0MyBDcmVhdGUgYW5kIGV4dGVuZCBmcm9tIGFic3RyYWN0IFByb3BlcnR5U2FsZSBmb3JtXG4gKi9cbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVNhbGVDb3N0U2FsZUZvcm0gZXh0ZW5kcyBBYnN0cmFjdEZvcm08UHJvcGVydHlTYWxlPiBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBwcm9wZXJ0eVNhbGU6IFByb3BlcnR5U2FsZSxcbiAgICBwcml2YXRlIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgKSB7XG4gICAgc3VwZXIoe1xuICAgICAgcHJpY2U6IG5ldyBGb3JtQ29udHJvbChwcm9wZXJ0eVNhbGUucHJpY2UsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgY29udHJhY3REYXRlOiBuZXcgRm9ybUNvbnRyb2wocHJvcGVydHlTYWxlLmNvbnRyYWN0RGF0ZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBzZXR0bGVtZW50RGF0ZTogbmV3IEZvcm1Db250cm9sKHByb3BlcnR5U2FsZS5zZXR0bGVtZW50RGF0ZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBjb21taXNzaW9uOiBuZXcgRm9ybUNvbnRyb2wocHJvcGVydHlTYWxlLmNvbW1pc3Npb24gfHwgMCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBsZWdhbEZlZXM6IG5ldyBGb3JtQ29udHJvbChwcm9wZXJ0eVNhbGUubGVnYWxGZWVzIHx8IDAsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgb3RoZXJDb3N0OiBuZXcgRm9ybUNvbnRyb2wocHJvcGVydHlTYWxlLm90aGVyQ29zdCB8fCAwLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGNhcGl0YWxMb3NzOiBuZXcgRm9ybUNvbnRyb2wocHJvcGVydHlTYWxlLmNhcGl0YWxMb3NzIHx8IDAsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgZ3Jvc3NDR1Q6IG5ldyBGb3JtQ29udHJvbCh7dmFsdWU6IHByb3BlcnR5U2FsZS5ncm9zc0NHVCwgZGlzYWJsZWQ6IHRydWV9LCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGdyb3NzQ0dUQWZ0ZXJMb3NzOiBuZXcgRm9ybUNvbnRyb2woe3ZhbHVlOiBwcm9wZXJ0eVNhbGUuZ3Jvc3NDR1RBZnRlckxvc3MsIGRpc2FibGVkOiB0cnVlfSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgfSwgcHJvcGVydHlTYWxlKTtcblxuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gICAgdGhpcy51cGRhdGVHcm9zc0NHVCgpO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuQ29tbWlzc2lvblVwZGF0ZWQoKTtcbiAgICB0aGlzLmxpc3RlbkxlZ2FsRmVlc1VwZGF0ZWQoKTtcbiAgICB0aGlzLmxpc3Rlbk90aGVyQ29zdFVwZGF0ZWQoKTtcbiAgICB0aGlzLmxpc3RlblByaWNlVXBkYXRlZCgpO1xuICAgIHRoaXMubGlzdGVuQ2FwaXRhbExvc3NVcGRhdGVkKCk7XG4gICAgdGhpcy5saXN0ZW5Hcm9zc0NHVCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBwcm9wZXJ0eSBpbnN0YW5jZSBiYXNlZCBvbiBwcm92aWRlZCBwcm9wZXJ0eSBhbmQgZm9ybSB2YWx1ZSB0byBnZXQgYWN0dWFsIGZvcm0gY2FsY3VsYXRpb25zXG4gICAqIEBUb2RvIFRULTIxNDMgTW92ZSB0byBwYXJlbnQgYWJzdHJhY3QgUHJvcGVydHlTYWxlIGZvcm1cbiAgICovXG4gIGdldFByb3BlcnR5U2FsZSgpOiBQcm9wZXJ0eVNhbGUge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MoUHJvcGVydHlTYWxlLCBPYmplY3QuYXNzaWduKHt9LCB0aGlzLnByb3BlcnR5U2FsZSwgdGhpcy5nZXRSYXdWYWx1ZSgpKSk7XG4gIH1cblxuICBzdWJtaXQoZGF0YTogb2JqZWN0ID0ge30pOiBQcm9wZXJ0eVNhbGUge1xuICAgIC8vICdncm9zc0NHVCcgZmllbGQgaXMgYWx3YXlzIGRpc2FibGVkLCBidXQgd2UgbmVlZCBpdCB0byBzdWJtaXQgcmVzdWx0XG4gICAgT2JqZWN0LmFzc2lnbihkYXRhLCB7Z3Jvc3NDR1Q6IHRoaXMuZ2V0KCdncm9zc0NHVCcpLnZhbHVlfSk7XG4gICAgcmV0dXJuIHN1cGVyLnN1Ym1pdChkYXRhKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlR3Jvc3NDR1QoKTogdm9pZCB7XG4gICAgdGhpcy5nZXQoJ2dyb3NzQ0dUJykuc2V0VmFsdWUoTWF0aC5yb3VuZCh0aGlzLnByb3BlcnR5LmNhbGN1bGF0ZUdyb3NzQ0dUKHRoaXMuZ2V0UHJvcGVydHlTYWxlKCkpKS50b0ZpeGVkKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Db21taXNzaW9uVXBkYXRlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmdldCgnY29tbWlzc2lvbicpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVHcm9zc0NHVCgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5MZWdhbEZlZXNVcGRhdGVkKCkge1xuICAgIHRoaXMuZ2V0KCdsZWdhbEZlZXMnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlR3Jvc3NDR1QoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuT3RoZXJDb3N0VXBkYXRlZCgpIHtcbiAgICB0aGlzLmdldCgnb3RoZXJDb3N0JykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUdyb3NzQ0dUKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblByaWNlVXBkYXRlZCgpIHtcbiAgICB0aGlzLmdldCgncHJpY2UnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlR3Jvc3NDR1QoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuQ2FwaXRhbExvc3NVcGRhdGVkKCkge1xuICAgIHRoaXMuZ2V0KCdjYXBpdGFsTG9zcycpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVHcm9zc0NHVCgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Hcm9zc0NHVCgpIHtcbiAgICB0aGlzLmdldCgnZ3Jvc3NDR1QnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChncm9zc0NHVDogbnVtYmVyKSA9PiB7XG4gICAgICB0aGlzLmdldCgnZ3Jvc3NDR1RBZnRlckxvc3MnKS5zZXRWYWx1ZSh0aGlzLmdldFByb3BlcnR5U2FsZSgpLmdyb3NzQ0dUQWZ0ZXJMb3NzKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -23,9 +23,9 @@ export class BasiqClientIdInterceptor {
23
23
  });
24
24
  }
25
25
  }
26
- BasiqClientIdInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BasiqClientIdInterceptor, deps: [{ token: i1.UserService }], target: i0.ɵɵFactoryTarget.Injectable });
27
- BasiqClientIdInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BasiqClientIdInterceptor });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BasiqClientIdInterceptor, decorators: [{
26
+ BasiqClientIdInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqClientIdInterceptor, deps: [{ token: i1.UserService }], target: i0.ɵɵFactoryTarget.Injectable });
27
+ BasiqClientIdInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqClientIdInterceptor });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqClientIdInterceptor, decorators: [{
29
29
  type: Injectable
30
30
  }], ctorParameters: function () { return [{ type: i1.UserService }]; } });
31
31
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaXEtY2xpZW50LWlkLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2ludGVyY2VwdG9ycy9iYXNpcS1jbGllbnQtaWQuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7QUFHekU7O0dBRUc7QUFFSCxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DLFlBQ1UsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFFbEMsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUE2QixFQUFFLElBQWlCO1FBQ3hELCtEQUErRDtRQUMvRCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxZQUFZLENBQUMsV0FBVyxhQUFhLENBQUMsRUFBRTtZQUNyRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUE7U0FDNUI7UUFFRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUN4QyxRQUFRLENBQUMsQ0FBQyxhQUFxQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FDckYsQ0FBQztJQUNKLENBQUM7SUFFTyxLQUFLLENBQUMsT0FBNkIsRUFBRSxhQUFxQjtRQUNoRSxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDbkIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUM7U0FDaEQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7c0hBckJVLHdCQUF3QjswSEFBeEIsd0JBQXdCOzRGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwUmVxdWVzdCwgSHR0cEhhbmRsZXIsIEh0dHBFdmVudCwgSHR0cEludGVyY2VwdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWVyZ2VNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYXNpcVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9odHRwL2JhbmsvYmFzaXEvYmFzaXEuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2h0dHAvdXNlci91c2VyLnNlcnZpY2UnO1xuXG4vKipcbiAqIEludGVyY2VwdG9yIHdoaWNoIGNoZWNrIGlmIGNsaWVudCdzIGJhc2lxIGlkIGV4aXN0IGFuZCByZXF1ZXN0IGl0IGlmIG5vdFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQmFzaXFDbGllbnRJZEludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcbiAgICAvLyBDaGVjayBpZiAnY2xpZW50IGlkJyBVUkwgc2VnbWVudCBjb250YWlucyBudWxsIGluc3RlYWQgb2YgaWRcbiAgICBpZiAoIXJlcXVlc3QudXJsLnN0YXJ0c1dpdGgoYCR7QmFzaXFTZXJ2aWNlLmJhc2lxQXBpVXJsfS91c2Vycy9udWxsYCkpIHtcbiAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnVzZXJTZXJ2aWNlLmNyZWF0ZUJhc2lxKCkucGlwZShcbiAgICAgIG1lcmdlTWFwKChiYXNpcUNsaWVudElkOiBzdHJpbmcpID0+IG5leHQuaGFuZGxlKHRoaXMuYWRkSWQocmVxdWVzdCwgYmFzaXFDbGllbnRJZCkpKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFkZElkKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBiYXNpcUNsaWVudElkOiBzdHJpbmcpOiBIdHRwUmVxdWVzdDx1bmtub3duPiB7XG4gICAgcmV0dXJuIHJlcXVlc3QuY2xvbmUoe1xuICAgICAgdXJsOiByZXF1ZXN0LnVybC5yZXBsYWNlKCdudWxsJywgYmFzaXFDbGllbnRJZClcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -27,9 +27,9 @@ export class BasiqTokenInterceptor {
27
27
  });
28
28
  }
29
29
  }
30
- BasiqTokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BasiqTokenInterceptor, deps: [{ token: i1.BasiqTokenService }], target: i0.ɵɵFactoryTarget.Injectable });
31
- BasiqTokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BasiqTokenInterceptor });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BasiqTokenInterceptor, decorators: [{
30
+ BasiqTokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqTokenInterceptor, deps: [{ token: i1.BasiqTokenService }], target: i0.ɵɵFactoryTarget.Injectable });
31
+ BasiqTokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqTokenInterceptor });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqTokenInterceptor, decorators: [{
33
33
  type: Injectable
34
34
  }], ctorParameters: function () { return [{ type: i1.BasiqTokenService }]; } });
35
35
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaXEtdG9rZW4uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvaW50ZXJjZXB0b3JzL2Jhc2lxLXRva2VuLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7O0FBRXpFOztHQUVHO0FBRUgsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxZQUNVLGlCQUFvQztRQUFwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO0lBRTlDLENBQUM7SUFFRCxTQUFTLENBQUMsT0FBNkIsRUFBRSxJQUFpQjtRQUN4RCwwQkFBMEI7UUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNuRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDN0I7UUFFRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQzVDLFFBQVEsQ0FBQyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtZQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQTtRQUNuRCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVPLFFBQVEsQ0FBQyxPQUE2QixFQUFFLEtBQWlCO1FBQy9ELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQztZQUNuQixVQUFVLEVBQUU7Z0JBQ1YsYUFBYSxFQUFFLFNBQVMsR0FBRyxLQUFLLENBQUMsS0FBSzthQUN2QztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O21IQTFCVSxxQkFBcUI7dUhBQXJCLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cFJlcXVlc3QsIEh0dHBIYW5kbGVyLCBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQmFzaXFUb2tlbiB9IGZyb20gJy4uL21vZGVscy9iYW5rL2Jhc2lxL2Jhc2lxLXRva2VuJztcbmltcG9ydCB7IEJhc2lxVG9rZW5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaHR0cC9iYW5rL2Jhc2lxL2Jhc2lxLXRva2VuLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmFzaXFTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaHR0cC9iYW5rL2Jhc2lxL2Jhc2lxLnNlcnZpY2UnO1xuXG4vKipcbiAqIEludGVyY2VwdG9yIHdoaWNoIGFkZHMgdXNlcidzIGJhc2lxIHRva2VuIHRvIGFueSBodHRwIHJlcXVlc3QgdG8gYmFzaXEgYXBpXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCYXNpcVRva2VuSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYmFzaXFUb2tlblNlcnZpY2U6IEJhc2lxVG9rZW5TZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XG4gICAgLy8gc2tpcCBub24tYmFzaXEgcmVxdWVzdHNcbiAgICBpZiAoIXJlcXVlc3QudXJsLmluY2x1ZGVzKEJhc2lxU2VydmljZS5iYXNpcUFwaVVybCkpIHtcbiAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5iYXNpcVRva2VuU2VydmljZS5nZXRTaW5nbGUoKS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKHRva2VuOiBCYXNpcVRva2VuKSA9PiB7XG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZSh0aGlzLmFkZFRva2VuKHJlcXVlc3QsIHRva2VuKSlcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkVG9rZW4ocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIHRva2VuOiBCYXNpcVRva2VuKTogSHR0cFJlcXVlc3Q8dW5rbm93bj4ge1xuICAgIHJldHVybiByZXF1ZXN0LmNsb25lKHtcbiAgICAgIHNldEhlYWRlcnM6IHtcbiAgICAgICAgQXV0aG9yaXphdGlvbjogJ0JlYXJlciAnICsgdG9rZW4udmFsdWVcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -32,9 +32,9 @@ export class CorelogicInterceptor {
32
32
  });
33
33
  }
34
34
  }
35
- CorelogicInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CorelogicInterceptor, deps: [{ token: i1.CorelogicService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
36
- CorelogicInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CorelogicInterceptor });
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CorelogicInterceptor, decorators: [{
35
+ CorelogicInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CorelogicInterceptor, deps: [{ token: i1.CorelogicService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
36
+ CorelogicInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CorelogicInterceptor });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CorelogicInterceptor, decorators: [{
38
38
  type: Injectable
39
39
  }], ctorParameters: function () { return [{ type: i1.CorelogicService }, { type: undefined, decorators: [{
40
40
  type: Inject,
@@ -31,9 +31,9 @@ export class FinancialYearInterceptor {
31
31
  return next.handle(clonedReq);
32
32
  }
33
33
  }
34
- FinancialYearInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FinancialYearInterceptor, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
35
- FinancialYearInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FinancialYearInterceptor });
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FinancialYearInterceptor, decorators: [{
34
+ FinancialYearInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FinancialYearInterceptor, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
35
+ FinancialYearInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FinancialYearInterceptor });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FinancialYearInterceptor, decorators: [{
37
37
  type: Injectable
38
38
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
39
39
  type: Inject,
@@ -10,9 +10,9 @@ import { BasiqClientIdInterceptor } from './basiq-client-id.interceptor';
10
10
  import * as i0 from "@angular/core";
11
11
  export class InterceptorsModule {
12
12
  }
13
- InterceptorsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: InterceptorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
- InterceptorsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: InterceptorsModule });
15
- InterceptorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: InterceptorsModule, providers: [
13
+ InterceptorsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: InterceptorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ InterceptorsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: InterceptorsModule });
15
+ InterceptorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: InterceptorsModule, providers: [
16
16
  {
17
17
  provide: HTTP_INTERCEPTORS,
18
18
  useClass: CorelogicInterceptor,
@@ -50,7 +50,7 @@ InterceptorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", vers
50
50
  multi: true
51
51
  }
52
52
  ] });
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: InterceptorsModule, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: InterceptorsModule, decorators: [{
54
54
  type: NgModule,
55
55
  args: [{
56
56
  providers: [
@@ -131,9 +131,9 @@ export class JwtInterceptor {
131
131
  });
132
132
  }
133
133
  }
134
- JwtInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: JwtInterceptor, deps: [{ token: i1.JwtService }, { token: i2.AuthService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
135
- JwtInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: JwtInterceptor });
136
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: JwtInterceptor, decorators: [{
134
+ JwtInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtInterceptor, deps: [{ token: i1.JwtService }, { token: i2.AuthService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
135
+ JwtInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtInterceptor });
136
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtInterceptor, decorators: [{
137
137
  type: Injectable
138
138
  }], ctorParameters: function () { return [{ type: i1.JwtService }, { type: i2.AuthService }, { type: undefined, decorators: [{
139
139
  type: Inject,
@@ -24,9 +24,9 @@ export class PreloaderInterceptor {
24
24
  return Object.values(ENDPOINTS).find((endpoint) => endpoint.test(requestPath));
25
25
  }
26
26
  }
27
- PreloaderInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PreloaderInterceptor, deps: [{ token: i1.PreloaderService }], target: i0.ɵɵFactoryTarget.Injectable });
28
- PreloaderInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PreloaderInterceptor });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PreloaderInterceptor, decorators: [{
27
+ PreloaderInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreloaderInterceptor, deps: [{ token: i1.PreloaderService }], target: i0.ɵɵFactoryTarget.Injectable });
28
+ PreloaderInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreloaderInterceptor });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreloaderInterceptor, decorators: [{
30
30
  type: Injectable
31
31
  }], ctorParameters: function () { return [{ type: i1.PreloaderService }]; } });
32
32
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlbG9hZGVyLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2ludGVyY2VwdG9ycy9wcmVsb2FkZXIuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVEzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7QUFFL0Q7O0dBRUc7QUFFSCxNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLFlBQ1UsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFDekMsQ0FBQztJQUVKLFNBQVMsQ0FBQyxPQUE2QixFQUFFLElBQWlCO1FBQ3hELE1BQU0sUUFBUSxHQUFhLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ2pGLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUNkLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFcEMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDOUIsUUFBUSxDQUFDLEdBQVMsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6QyxDQUFDLENBQUMsQ0FDSCxDQUFDO1NBQ0g7UUFFRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVPLFlBQVksQ0FBQyxXQUFtQjtRQUN0QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBa0IsRUFBVyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7O2tIQXZCVSxvQkFBb0I7c0hBQXBCLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSHR0cFJlcXVlc3QsXG4gIEh0dHBIYW5kbGVyLFxuICBIdHRwRXZlbnQsXG4gIEh0dHBJbnRlcmNlcHRvclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFByZWxvYWRlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wcmVsb2FkZXIvcHJlbG9hZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRW5kcG9pbnQgfSBmcm9tICcuLi9tb2RlbHMvZW5kcG9pbnQvZW5kcG9pbnQnO1xuaW1wb3J0IHsgRU5EUE9JTlRTIH0gZnJvbSAnLi4vbW9kZWxzL2VuZHBvaW50L2VuZHBvaW50cy5jb25zdCc7XG5cbi8qKlxuICogaW50ZXJjZXB0b3IgZm9yIHByZWxvYWRlciBoYW5kbGluZ1xuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUHJlbG9hZGVySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHJlbG9hZGVyU2VydmljZTogUHJlbG9hZGVyU2VydmljZVxuICApIHt9XG5cbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XG4gICAgY29uc3QgZW5kcG9pbnQ6IEVuZHBvaW50ID0gdGhpcy5maW5kRW5kcG9pbnQoYCR7cmVxdWVzdC5tZXRob2R9ICR7cmVxdWVzdC51cmx9YCk7XG4gICAgaWYgKCEhZW5kcG9pbnQpIHtcbiAgICAgIHRoaXMucHJlbG9hZGVyU2VydmljZS5hZGQoZW5kcG9pbnQpO1xuXG4gICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCkucGlwZShcbiAgICAgICAgZmluYWxpemUoKCk6IHZvaWQgPT4ge1xuICAgICAgICAgIHRoaXMucHJlbG9hZGVyU2VydmljZS5kZWxldGUoZW5kcG9pbnQpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCk7XG4gIH1cblxuICBwcml2YXRlIGZpbmRFbmRwb2ludChyZXF1ZXN0UGF0aDogc3RyaW5nKTogRW5kcG9pbnQge1xuICAgIHJldHVybiBPYmplY3QudmFsdWVzKEVORFBPSU5UUykuZmluZCgoZW5kcG9pbnQ6IEVuZHBvaW50KTogYm9vbGVhbiA9PiBlbmRwb2ludC50ZXN0KHJlcXVlc3RQYXRoKSk7XG4gIH1cbn1cbiJdfQ==
@@ -41,9 +41,9 @@ export class UserSwitcherInterceptor {
41
41
  return next.handle(this.switch(request, this.userSwitcherService.get()));
42
42
  }
43
43
  }
44
- UserSwitcherInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: UserSwitcherInterceptor, deps: [{ token: i1.UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
45
- UserSwitcherInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: UserSwitcherInterceptor });
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: UserSwitcherInterceptor, decorators: [{
44
+ UserSwitcherInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserSwitcherInterceptor, deps: [{ token: i1.UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
45
+ UserSwitcherInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserSwitcherInterceptor });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserSwitcherInterceptor, decorators: [{
47
47
  type: Injectable
48
48
  }], ctorParameters: function () { return [{ type: i1.UserSwitcherService }, { type: undefined, decorators: [{
49
49
  type: Inject,
@@ -33,4 +33,7 @@ __decorate([
33
33
  __decorate([
34
34
  Type(() => Bank)
35
35
  ], BankConnection.prototype, "bank", void 0);
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1jb25uZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9iYW5rL2JhbmstY29ubmVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGNBQWMsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUV0RixNQUFNLE9BQU8sY0FBZSxTQUFRLGtCQUFrQjtJQU9wRDs7T0FFRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssd0JBQXdCLENBQUMsT0FBTyxDQUFDO0lBQzFELENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLHdCQUF3QixDQUFDLE9BQU8sQ0FBQztJQUMxRCxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyx3QkFBd0IsQ0FBQyxNQUFNLENBQUM7SUFDekQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZTtRQUNiLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDekYsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsTUFBTSxHQUFHLHdCQUF3QixDQUFDLE9BQU8sQ0FBQztJQUNqRCxDQUFDO0NBQ0Y7QUE5QkM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDO2dEQUNGO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDTiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhbmtDb25uZWN0aW9uIGFzIEJhbmtDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9iYW5rL2JhbmstY29ubmVjdGlvbic7XG5pbXBvcnQgeyBCYXNpcUpvYiB9IGZyb20gJy4vYmFzaXEvYmFzaXEtam9iJztcbmltcG9ydCB7IEJhbmsgfSBmcm9tICcuL2JhbmsnO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IEJhbmtDb25uZWN0aW9uU3RhdHVzRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2JhbmstY29ubmVjdGlvbi1zdGF0dXMuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBCYW5rQ29ubmVjdGlvbiBleHRlbmRzIEJhbmtDb25uZWN0aW9uQmFzZSB7XG4gIEBUeXBlKCgpID0+IEJhc2lxSm9iKVxuICBiYXNpcUpvYjogQmFzaXFKb2I7XG5cbiAgQFR5cGUoKCkgPT4gQmFuaylcbiAgYmFuazogQmFuaztcblxuICAvKipcbiAgICogQ2hlY2sgaWYgc3RhdHVzIG9mIGNvbm5lY3Rpb24gaXMgaW5hY3RpdmUgKGludmFsaWQpXG4gICAqL1xuICBpc0ludmFsaWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBCYW5rQ29ubmVjdGlvblN0YXR1c0VudW0uSU5WQUxJRDtcbiAgfVxuXG4gIGlzUGVuZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IEJhbmtDb25uZWN0aW9uU3RhdHVzRW51bS5QRU5ESU5HO1xuICB9XG5cbiAgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBCYW5rQ29ubmVjdGlvblN0YXR1c0VudW0uQUNUSVZFO1xuICB9XG5cbiAgLyoqXG4gICAqIGxvZ2luIHJlcXVpcmVkIGZvciBuZXcgb3IgZGlzY29ubmVjdGVkIGV4dGVybmFsIGNvbm5lY3Rpb25zXG4gICAqL1xuICBpc0xvZ2luUmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKCF0aGlzLmlkICYmIHRoaXMuYmFuay5leHRlcm5hbElkICYmICF0aGlzLmJhbmsuaXNNYW51YWwpIHx8IHRoaXMuaXNJbnZhbGlkKCk7XG4gIH1cblxuICBzZXRQZW5kaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdHVzID0gQmFua0Nvbm5lY3Rpb25TdGF0dXNFbnVtLlBFTkRJTkc7XG4gIH1cbn1cbiJdfQ==
36
+ __decorate([
37
+ Type(() => Date)
38
+ ], BankConnection.prototype, "lastSuccessImportDate", void 0);
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1jb25uZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9iYW5rL2JhbmstY29ubmVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGNBQWMsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUV0RixNQUFNLE9BQU8sY0FBZSxTQUFRLGtCQUFrQjtJQVVwRDs7T0FFRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssd0JBQXdCLENBQUMsT0FBTyxDQUFDO0lBQzFELENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLHdCQUF3QixDQUFDLE9BQU8sQ0FBQztJQUMxRCxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyx3QkFBd0IsQ0FBQyxNQUFNLENBQUM7SUFDekQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZTtRQUNiLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDekYsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsTUFBTSxHQUFHLHdCQUF3QixDQUFDLE9BQU8sQ0FBQztJQUNqRCxDQUFDO0NBQ0Y7QUFqQ0M7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDO2dEQUNGO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzs0Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzs2REFDVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhbmtDb25uZWN0aW9uIGFzIEJhbmtDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9iYW5rL2JhbmstY29ubmVjdGlvbic7XG5pbXBvcnQgeyBCYXNpcUpvYiB9IGZyb20gJy4vYmFzaXEvYmFzaXEtam9iJztcbmltcG9ydCB7IEJhbmsgfSBmcm9tICcuL2JhbmsnO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IEJhbmtDb25uZWN0aW9uU3RhdHVzRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2JhbmstY29ubmVjdGlvbi1zdGF0dXMuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBCYW5rQ29ubmVjdGlvbiBleHRlbmRzIEJhbmtDb25uZWN0aW9uQmFzZSB7XG4gIEBUeXBlKCgpID0+IEJhc2lxSm9iKVxuICBiYXNpcUpvYjogQmFzaXFKb2I7XG5cbiAgQFR5cGUoKCkgPT4gQmFuaylcbiAgYmFuazogQmFuaztcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBsYXN0U3VjY2Vzc0ltcG9ydERhdGU6IERhdGU7XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHN0YXR1cyBvZiBjb25uZWN0aW9uIGlzIGluYWN0aXZlIChpbnZhbGlkKVxuICAgKi9cbiAgaXNJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gQmFua0Nvbm5lY3Rpb25TdGF0dXNFbnVtLklOVkFMSUQ7XG4gIH1cblxuICBpc1BlbmRpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBCYW5rQ29ubmVjdGlvblN0YXR1c0VudW0uUEVORElORztcbiAgfVxuXG4gIGlzQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gQmFua0Nvbm5lY3Rpb25TdGF0dXNFbnVtLkFDVElWRTtcbiAgfVxuXG4gIC8qKlxuICAgKiBsb2dpbiByZXF1aXJlZCBmb3IgbmV3IG9yIGRpc2Nvbm5lY3RlZCBleHRlcm5hbCBjb25uZWN0aW9uc1xuICAgKi9cbiAgaXNMb2dpblJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISghdGhpcy5pZCAmJiB0aGlzLmJhbmsuZXh0ZXJuYWxJZCAmJiAhdGhpcy5iYW5rLmlzTWFudWFsKSB8fCB0aGlzLmlzSW52YWxpZCgpO1xuICB9XG5cbiAgc2V0UGVuZGluZygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXR1cyA9IEJhbmtDb25uZWN0aW9uU3RhdHVzRW51bS5QRU5ESU5HO1xuICB9XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { PropertySale as BasePropertySale } from '../../../db/Models/property/property-sale/property-sale';
3
3
  import { Type } from 'class-transformer';
4
- import { PropertySaleTaxExemptionMetadata } from '../../../db/Models/property/property-sale/property-sale-tax-exemption-metadata';
4
+ import { PropertySaleTaxExemptionMetadata } from '../../../db/Models';
5
5
  import { TaxExemptionEnum } from '../../../db/Enums/property/property-sale/tax-exemption.enum';
6
6
  export class PropertySale extends BasePropertySale {
7
7
  get saleCostsTotalAmount() {
@@ -15,6 +15,12 @@ export class PropertySale extends BasePropertySale {
15
15
  var _a;
16
16
  return ((_a = this.taxExemption) === null || _a === void 0 ? void 0 : _a.id) !== TaxExemptionEnum.PPR;
17
17
  }
18
+ get lossApplied() {
19
+ return this.grossCGT <= 0 ? 0 : Math.min(this.grossCGT, this.capitalLoss);
20
+ }
21
+ get grossCGTAfterLoss() {
22
+ return this.grossCGT - this.lossApplied;
23
+ }
18
24
  }
19
25
  __decorate([
20
26
  Type(() => Number)
@@ -34,4 +40,4 @@ __decorate([
34
40
  __decorate([
35
41
  Type(() => PropertySaleTaxExemptionMetadata)
36
42
  ], PropertySale.prototype, "taxExemptionMetadata", void 0);
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktc2FsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcHJvcGVydHkvcHJvcGVydHktc2FsZS9wcm9wZXJ0eS1zYWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxJQUFJLGdCQUFnQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDM0csT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sRUFDTCxnQ0FBZ0MsRUFDakMsTUFBTSxnRkFBZ0YsQ0FBQztBQUN4RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUUvRixNQUFNLE9BQU8sWUFBYSxTQUFRLGdCQUFnQjtJQW1CaEQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsZUFBZTs7UUFDYixPQUFPLENBQUEsTUFBQSxJQUFJLENBQUMsWUFBWSwwQ0FBRSxFQUFFLE1BQUssZ0JBQWdCLENBQUMsR0FBRyxDQUFDO0lBQ3hELENBQUM7Q0FDRjtBQTVCQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7Z0RBQ0E7QUFHbkI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDOytDQUNEO0FBR2xCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQzsrQ0FDRDtBQUdsQjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7b0RBQ0k7QUFHckI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO2tEQUNFO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdDQUFnQyxDQUFDOzBEQUNZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvcGVydHlTYWxlIGFzIEJhc2VQcm9wZXJ0eVNhbGUgfSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMvcHJvcGVydHkvcHJvcGVydHktc2FsZS9wcm9wZXJ0eS1zYWxlJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQge1xuICBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YVxufSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMvcHJvcGVydHkvcHJvcGVydHktc2FsZS9wcm9wZXJ0eS1zYWxlLXRheC1leGVtcHRpb24tbWV0YWRhdGEnO1xuaW1wb3J0IHsgVGF4RXhlbXB0aW9uRW51bSB9IGZyb20gJy4uLy4uLy4uL2RiL0VudW1zL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUvdGF4LWV4ZW1wdGlvbi5lbnVtJztcblxuZXhwb3J0IGNsYXNzIFByb3BlcnR5U2FsZSBleHRlbmRzIEJhc2VQcm9wZXJ0eVNhbGUge1xuICBAVHlwZSgoKSA9PiBOdW1iZXIpXG4gIGNvbW1pc3Npb246IG51bWJlcjtcblxuICBAVHlwZSgoKSA9PiBOdW1iZXIpXG4gIGxlZ2FsRmVlczogbnVtYmVyO1xuXG4gIEBUeXBlKCgpID0+IE51bWJlcilcbiAgb3RoZXJDb3N0OiBudW1iZXI7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgc2V0dGxlbWVudERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgY29udHJhY3REYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5U2FsZVRheEV4ZW1wdGlvbk1ldGFkYXRhKVxuICB0YXhFeGVtcHRpb25NZXRhZGF0YTogUHJvcGVydHlTYWxlVGF4RXhlbXB0aW9uTWV0YWRhdGFbXTtcblxuICBnZXQgc2FsZUNvc3RzVG90YWxBbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jb21taXNzaW9uICsgdGhpcy5sZWdhbEZlZXMgKyB0aGlzLm90aGVyQ29zdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDR1QgaXMgbm90IGFwcGxpY2FibGUgZm9yIHNhbGVzIHdpdGggXCJQcmluY2lwbGUgcGxhY2Ugb2YgcmVzaWRlbmNlXCIgZXhlbXB0aW9uIHR5cGUuXG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvNDY0NDExMDQ2Ni9UYXgrUmV0dXJuK015VGF4Ky0rT25saW5lK0Zvcm0gKFwiQ2FwaXRhbCBnYWlucyBvciBsb3NzZXNcIiBzZWN0aW9uKVxuICAgKi9cbiAgaXNDR1RBcHBsaWNhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRheEV4ZW1wdGlvbj8uaWQgIT09IFRheEV4ZW1wdGlvbkVudW0uUFBSO1xuICB9XG59XG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktc2FsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcHJvcGVydHkvcHJvcGVydHktc2FsZS9wcm9wZXJ0eS1zYWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxJQUFJLGdCQUFnQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDM0csT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sRUFDTCxnQ0FBZ0MsRUFDakMsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUUvRixNQUFNLE9BQU8sWUFBYSxTQUFRLGdCQUFnQjtJQW1CaEQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsZUFBZTs7UUFDYixPQUFPLENBQUEsTUFBQSxJQUFJLENBQUMsWUFBWSwwQ0FBRSxFQUFFLE1BQUssZ0JBQWdCLENBQUMsR0FBRyxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQXBDQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7Z0RBQ0E7QUFHbkI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDOytDQUNEO0FBR2xCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQzsrQ0FDRDtBQUdsQjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7b0RBQ0k7QUFHckI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO2tEQUNFO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdDQUFnQyxDQUFDOzBEQUNZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvcGVydHlTYWxlIGFzIEJhc2VQcm9wZXJ0eVNhbGUgfSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMvcHJvcGVydHkvcHJvcGVydHktc2FsZS9wcm9wZXJ0eS1zYWxlJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQge1xuICBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YVxufSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgVGF4RXhlbXB0aW9uRW51bSB9IGZyb20gJy4uLy4uLy4uL2RiL0VudW1zL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUvdGF4LWV4ZW1wdGlvbi5lbnVtJztcblxuZXhwb3J0IGNsYXNzIFByb3BlcnR5U2FsZSBleHRlbmRzIEJhc2VQcm9wZXJ0eVNhbGUge1xuICBAVHlwZSgoKSA9PiBOdW1iZXIpXG4gIGNvbW1pc3Npb246IG51bWJlcjtcblxuICBAVHlwZSgoKSA9PiBOdW1iZXIpXG4gIGxlZ2FsRmVlczogbnVtYmVyO1xuXG4gIEBUeXBlKCgpID0+IE51bWJlcilcbiAgb3RoZXJDb3N0OiBudW1iZXI7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgc2V0dGxlbWVudERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgY29udHJhY3REYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5U2FsZVRheEV4ZW1wdGlvbk1ldGFkYXRhKVxuICB0YXhFeGVtcHRpb25NZXRhZGF0YTogUHJvcGVydHlTYWxlVGF4RXhlbXB0aW9uTWV0YWRhdGFbXTtcblxuICBnZXQgc2FsZUNvc3RzVG90YWxBbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jb21taXNzaW9uICsgdGhpcy5sZWdhbEZlZXMgKyB0aGlzLm90aGVyQ29zdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDR1QgaXMgbm90IGFwcGxpY2FibGUgZm9yIHNhbGVzIHdpdGggXCJQcmluY2lwbGUgcGxhY2Ugb2YgcmVzaWRlbmNlXCIgZXhlbXB0aW9uIHR5cGUuXG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvNDY0NDExMDQ2Ni9UYXgrUmV0dXJuK015VGF4Ky0rT25saW5lK0Zvcm0gKFwiQ2FwaXRhbCBnYWlucyBvciBsb3NzZXNcIiBzZWN0aW9uKVxuICAgKi9cbiAgaXNDR1RBcHBsaWNhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRheEV4ZW1wdGlvbj8uaWQgIT09IFRheEV4ZW1wdGlvbkVudW0uUFBSO1xuICB9XG5cbiAgZ2V0IGxvc3NBcHBsaWVkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ3Jvc3NDR1QgPD0gMCA/IDAgOiBNYXRoLm1pbih0aGlzLmdyb3NzQ0dULCB0aGlzLmNhcGl0YWxMb3NzKTtcbiAgfVxuXG4gIGdldCBncm9zc0NHVEFmdGVyTG9zcygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdyb3NzQ0dUIC0gdGhpcy5sb3NzQXBwbGllZDtcbiAgfVxufVxuIl19
@@ -128,14 +128,14 @@ export class Property extends PropertyBase {
128
128
  /**
129
129
  * gross capital gain tax: sale costs - cost base
130
130
  */
131
- calculateCGT(sale) {
132
- return (sale.price - sale.saleCostsTotalAmount - this.calculateCostBase(sale)) * this.shareRatio - sale.capitalLoss;
131
+ calculateGrossCGT(sale) {
132
+ return (sale.price - sale.saleCostsTotalAmount - this.calculateCostBase(sale)) * this.shareRatio;
133
133
  }
134
134
  /**
135
135
  * net capital gain tax (includes tax exemptions)
136
136
  */
137
137
  calculateNetCGT(sale) {
138
- return this.getCGTExemptionRatio(sale) * sale.grossCGT;
138
+ return this.getCGTExemptionRatio(sale) * sale.grossCGTAfterLoss;
139
139
  }
140
140
  /**
141
141
  * guess tax exemption based on property details
@@ -186,7 +186,7 @@ export class Property extends PropertyBase {
186
186
  }
187
187
  }
188
188
  isOneYearExemptionApplicable(sale) {
189
- return sale.grossCGT > 0 && this.getOwnershipDuration(sale, 'years') > 0;
189
+ return sale.grossCGTAfterLoss > 0 && this.getOwnershipDuration(sale, 'years') > 0;
190
190
  }
191
191
  /**
192
192
  * CGT is not applicable for properties acquired before 20.09.1985 (tax didn't exist before this date).
@@ -245,4 +245,4 @@ __decorate([
245
245
  __decorate([
246
246
  Exclude()
247
247
  ], Property.prototype, "documentFile", void 0);
248
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxJQUFJLFlBQVksRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRzNFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFaEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDbEMsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQzdGLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBR2pDLE9BQU8sRUFDTCwwQ0FBMEMsRUFDM0MsTUFBTSwwRkFBMEYsQ0FBQztBQUtsRzs7R0FFRztBQUNILE1BQU0sT0FBTyxRQUFTLFNBQVEsWUFBWTtJQXNDeEMsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztJQUMzQixDQUFDO0lB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R0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7MkNBQ0M7QUFHOUI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUM7bURBQ1M7QUFHOUM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO3NDQUNOO0FBR1g7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7K0NBQ0s7QUFJdEM7SUFEQyxPQUFPLEVBQUU7OENBQ1MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1Byb3BlcnR5IGFzIFByb3BlcnR5QmFzZX0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5JztcbmltcG9ydCB7RG9jdW1lbnRhYmxlfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2RvY3VtZW50YWJsZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHtQcm9wZXJ0eVNoYXJlfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvcHJvcGVydHkvcHJvcGVydHktc2hhcmUnO1xuaW1wb3J0IHtQcm9wZXJ0eVN1YnNjcmlwdGlvbn0gZnJvbSAnLi9wcm9wZXJ0eS1zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHtFeGNsdWRlLCBUeXBlfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQge1Bob3RvYWJsZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9waG90b2FibGUnO1xuaW1wb3J0IHtBZGRyZXNzfSBmcm9tICcuLi9hZGRyZXNzL2FkZHJlc3MnO1xuaW1wb3J0IHtQcm9wZXJ0eUNhdGVnb3J5fSBmcm9tICcuL3Byb3BlcnR5LWNhdGVnb3J5JztcbmltcG9ydCB7UHJvcGVydHlWYWx1YXRpb259IGZyb20gJy4vcHJvcGVydHktdmFsdWF0aW9uJztcbmltcG9ydCB7UHJvcGVydHlGb3JlY2FzdH0gZnJvbSAnLi9wcm9wZXJ0eS1mb3JlY2FzdCc7XG5pbXBvcnQge1Byb3BlcnR5Q2F0ZWdvcnlNb3ZlbWVudH0gZnJvbSAnLi9wcm9wZXJ0eS1jYXRlZ29yeS1tb3ZlbWVudCc7XG5pbXBvcnQge1VzZXJ9IGZyb20gJy4uL3VzZXIvdXNlcic7XG5pbXBvcnQge0ZpbmFuY2lhbFllYXJ9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7VGF4RXhlbXB0aW9uRW51bX0gZnJvbSAnLi4vLi4vZGIvRW51bXMvcHJvcGVydHkvcHJvcGVydHktc2FsZS90YXgtZXhlbXB0aW9uLmVudW0nO1xuaW1wb3J0IHtQcm9wZXJ0eUNhdGVnb3J5TGlzdEVudW19IGZyb20gJy4uLy4uL2RiL0VudW1zL3Byb3BlcnR5L3Byb3BlcnR5LWNhdGVnb3J5LWxpc3QuZW51bSc7XG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7UHJvcGVydHlTYWxlfSBmcm9tICcuL3Byb3BlcnR5LXNhbGUvcHJvcGVydHktc2FsZSc7XG5pbXBvcnQge3VuaXRPZlRpbWV9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge1xuICBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YUNvbGxlY3Rpb25cbn0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvcHJvcGVydHkvcHJvcGVydHktc2FsZS9wcm9wZXJ0eS1zYWxlLXRheC1leGVtcHRpb24tbWV0YWRhdGEuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9kZXByZWNpYXRpb24uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBQcm9wZXJ0eUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucyc7XG5cbi8qKlxuICogcHJvcGVydHlTYWxlIGRvY3MgLSBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzQyMDk1MDgzNTMvUHJvcGVydHkrU29sZCtidXR0b25cbiAqL1xuZXhwb3J0IGNsYXNzIFByb3BlcnR5IGV4dGVuZHMgUHJvcGVydHlCYXNlIGltcGxlbWVudHMgUGhvdG9hYmxlLCBEb2N1bWVudGFibGUge1xuICAvKipcbiAgICogUHJvcGVydHkgYWNxdWlyZWQgYmVmb3JlIDIwIFNlcHRlbWJlciAxOTg1IHdpbGwgZ2VuZXJhbGx5IGJlIHRyZWF0ZWQgYXMgcHJlLUNhcGl0YWwgR2FpbnMgVGF4IChDR1QpIGFzc2V0cy5cbiAgICogQW55IGFzc2V0cyBhY3F1aXJlZCBiZWZvcmUgdGhpcyBkYXkgYXJlIENHVCBleGVtcHQgKGJlY2F1c2UgdGhlIHRheCBkaWRuJ3QgZXhpc3QgYmVmb3JlIHRoaXMgZGF0ZSkuXG4gICAqL1xuICBzdGF0aWMgcHJlQ0dUQXNzZXREYXRlOiBEYXRlID0gbmV3IERhdGUoMTk4NSwgOSwgMjApO1xuXG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIGNvbnRyYWN0RGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBzZXR0bGVtZW50RGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBBZGRyZXNzKVxuICBhZGRyZXNzOiBBZGRyZXNzO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5Q2F0ZWdvcnkpXG4gIGNhdGVnb3J5OiBQcm9wZXJ0eUNhdGVnb3J5O1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5VmFsdWF0aW9uKVxuICB2YWx1YXRpb25zOiBQcm9wZXJ0eVZhbHVhdGlvbltdO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5Rm9yZWNhc3QpXG4gIGZvcmVjYXN0czogUHJvcGVydHlGb3JlY2FzdFtdO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5Q2F0ZWdvcnlNb3ZlbWVudClcbiAgY2F0ZWdvcnlNb3ZlbWVudHM6IFByb3BlcnR5Q2F0ZWdvcnlNb3ZlbWVudFtdO1xuXG4gIEBUeXBlKCgpID0+IFVzZXIpXG4gIHVzZXI6IFVzZXI7XG5cbiAgQFR5cGUoKCkgPT4gUHJvcGVydHlTdWJzY3JpcHRpb24pXG4gIHN1YnNjcmlwdGlvbnM6IFByb3BlcnR5U3Vic2NyaXB0aW9uW107XG5cbiAgLy8gY291bGQgYmUgRmlsZSB3aGVuIGp1c3QgYWRkZWQgbmV3IGltYWdlXG4gIEBFeGNsdWRlKClcbiAgZG9jdW1lbnRGaWxlOiBGaWxlO1xuXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYWRkcmVzcy5uYW1lO1xuICB9XG5cbiAgZ2V0IGlzQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuc3Vic2NyaXB0aW9ucz8ubGVuZ3RoO1xuICB9XG5cbiAgaXNPd24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudXNlci5pZCA9PT0gK2xvY2FsU3RvcmFnZS5nZXRJdGVtKCd1c2VySWQnKTtcbiAgfVxuXG4gIGlzU29sZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLm15U2hhcmUuc2FsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgaW5pdGlhbHMgb2YgcHJvcGVydHkuIFJlcXVpcmVkIGJ5IFBob3RvYWJsZSBpbnRlcmZhY2VcbiAgICovXG4gIGdldFBob3RvUGxhY2Vob2xkZXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lLnNwbGl0KCcgJylbMV0uc2xpY2UoMCwgMik7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHByb3BlcnR5IHBob3RvLiBSZXF1aXJlZCBieSBQaG90b2FibGUgaW50ZXJmYWNlXG4gICAqL1xuICBnZXRQaG90bygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnBob3RvO1xuICB9XG5cbiAgZ2V0IGNhcGl0YWxDb3N0c1RvdGFsQW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3RhbXBEdXR5ICsgdGhpcy5sZWdhbEZlZXMgKyB0aGlzLm90aGVyQ2FwaXRhbENvc3RzO1xuICB9XG5cbiAgZ2V0IGN1cnJlbnRZZWFyVmFsdWF0aW9ucygpOiBQcm9wZXJ0eVZhbHVhdGlvbltdIHtcbiAgICByZXR1cm4gdGhpcy52YWx1YXRpb25zLmZpbHRlcigodmFsdWF0aW9uOiBQcm9wZXJ0eVZhbHVhdGlvbik6IGJvb2xlYW4gPT4gdmFsdWF0aW9uLmlzQ3VycmVudFllYXIoKSk7XG4gIH1cblxuICBnZXQgbWFya2V0VmFsdWUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5hY3R1YWxWYWx1YXRpb24/Lm1hcmtldFZhbHVlIHx8IDA7XG4gIH1cblxuICBnZXQgY3VycmVudFllYXJGb3JlY2FzdCgpOiBQcm9wZXJ0eUZvcmVjYXN0IHtcbiAgICByZXR1cm4gdGhpcy5mb3JlY2FzdHMuZmluZCgoZm9yZWNhc3Q6IFByb3BlcnR5Rm9yZWNhc3QpOiBib29sZWFuID0+IGZvcmVjYXN0LmlzQ3VycmVudFllYXIoKSk7XG4gIH1cblxuICBnZXQgZm9yZWNhc3RlZFJlbnRhbFJldHVybigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRZZWFyRm9yZWNhc3Q/LnJlbnRhbFJldHVybiB8fCAwO1xuICB9XG5cbiAgZ2V0IGZvcmVjYXN0ZWRUYXhQb3NpdGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRZZWFyRm9yZWNhc3Q/LnRheFBvc2l0aW9uIHx8IDA7XG4gIH1cblxuICBnZXQgZm9yZWNhc3RlZENhc2hQb3NpdGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRZZWFyRm9yZWNhc3Q/LmNhc2hQb3NpdGlvbiB8fCAwO1xuICB9XG5cbiAgZ2V0IGZpcnN0Rm9yZWNhc3RZZWFyKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZm9yZWNhc3RzLnJlZHVjZSgobWluOiBudW1iZXIsIGZvcmVjYXN0OiBQcm9wZXJ0eUZvcmVjYXN0KTogbnVtYmVyID0+IHtcbiAgICAgIHJldHVybiBtaW4gPiBmb3JlY2FzdC5maW5hbmNpYWxZZWFyID8gZm9yZWNhc3QuZmluYW5jaWFsWWVhciA6IG1pbjtcbiAgICB9LCBuZXcgRmluYW5jaWFsWWVhcigpLnllYXIpO1xuICB9XG5cbiAgZ2V0IG1hcmtldFZhbHVlR3Jvd3RoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLm1hcmtldFZhbHVlIC0gdGhpcy5wdXJjaGFzZVByaWNlKSAvIHRoaXMubWFya2V0VmFsdWU7XG4gIH1cblxuICBnZXQgbXlTaGFyZSgpOiBQcm9wZXJ0eVNoYXJlIHtcbiAgICByZXR1cm4gdGhpcy5zaGFyZXMuZmluZCgoc2hhcmU6IFByb3BlcnR5U2hhcmUpOiBib29sZWFuID0+IHNoYXJlLnVzZXIuaWQgPT09ICtsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndXNlcklkJykpO1xuICB9XG5cbiAgZ2V0IGFjdHVhbFZhbHVhdGlvbigpOiBQcm9wZXJ0eVZhbHVhdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWF0aW9ucy5yZWR1Y2UoKG1heERhdGVWYWx1YXRpb246IFByb3BlcnR5VmFsdWF0aW9uLCB2YWx1YXRpb246IFByb3BlcnR5VmFsdWF0aW9uKSA9PiB7XG4gICAgICByZXR1cm4gbWF4RGF0ZVZhbHVhdGlvbi5kYXRlID4gdmFsdWF0aW9uLmRhdGUgPyBtYXhEYXRlVmFsdWF0aW9uIDogdmFsdWF0aW9uO1xuICAgIH0sIHRoaXMudmFsdWF0aW9uc1swXSk7XG4gIH1cblxuICBnZXQgY2xhaW1QZXJjZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFllYXJGb3JlY2FzdC5jbGFpbVBlcmNlbnQ7XG4gIH1cblxuICBnZXQgY2xhaW1Db2VmZmljaWVudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNsYWltUGVyY2VudCAvIDEwMDtcbiAgfVxuXG4gIGdldCBzaGFyZVBlcmNlbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5teVNoYXJlLnBlcmNlbnQ7XG4gIH1cblxuICBnZXQgc2hhcmVSYXRpbygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm15U2hhcmUucGVyY2VudCAvIDEwMDtcbiAgfVxuXG4gIGdldCBwcmV2aW91c0NhdGVnb3J5KCk6IFByb3BlcnR5Q2F0ZWdvcnkge1xuICAgIGxldCBwcmV2aW91c0NhdGVnb3J5OiBQcm9wZXJ0eUNhdGVnb3J5O1xuXG4gICAgY29uc3QgbW92ZW1lbnRzQ291bnQ6IG51bWJlciA9IHRoaXMuY2F0ZWdvcnlNb3ZlbWVudHMubGVuZ3RoO1xuXG4gICAgaWYgKG1vdmVtZW50c0NvdW50ID4gMSkge1xuICAgICAgcHJldmlvdXNDYXRlZ29yeSA9IHRoaXMuY2F0ZWdvcnlNb3ZlbWVudHNbbW92ZW1lbnRzQ291bnQgLSAyXS5wcm9wZXJ0eUNhdGVnb3J5O1xuICAgIH1cblxuICAgIHJldHVybiBwcmV2aW91c0NhdGVnb3J5O1xuICB9XG5cbiAgZ2V0Q3VycmVudFN1YnNjcmlwdGlvbigpOiBQcm9wZXJ0eVN1YnNjcmlwdGlvbiB7XG4gICAgLy8gYWx3YXlzIHJldHVybiBmaXJzdCBlbGVtZW50IGJlY2F1c2Ugc3Vic2NyaXB0aW9ucyBhcnJheSBjb250YWlucyBvbmx5IG9uZSBlbGVtZW50XG4gICAgcmV0dXJuIHRoaXMuc3Vic2NyaXB0aW9uc1swXTtcbiAgfVxuXG4gIGdldEZvcmVjYXN0QnlZZWFyKHllYXI6IG51bWJlcik6IFByb3BlcnR5Rm9yZWNhc3Qge1xuICAgIHJldHVybiB0aGlzLmZvcmVjYXN0cy5maW5kKChmb3JlY2FzdDogUHJvcGVydHlGb3JlY2FzdCk6IGJvb2xlYW4gPT4gZm9yZWNhc3QuZmluYW5jaWFsWWVhciA9PT0geWVhcik7XG4gIH1cblxuICBnZXQgaXNTaGFyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2hhcmVzLmxlbmd0aCA+IDE7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gY29uc2lkZXIgdG8gbW92ZSBtZXRob2RzIHJlbGF0ZWQgd2l0aCBwcm9wZXJ0eVNhbGUgdG8gc2VwYXJhdGVkIGNsYXNzLCBzaW5jZSB1c2VkIGp1c3QgaW4gb25lIG1vZHVsZSB5ZXRcbiAgICogcHVyY2hhc2UgY29zdHMgLSBjbGFpbWVkIGNvc3RzLCBleGNlcHQgYHBwciB0byBpbnZlc3RtZW50YCBleGVtcHRpb24sXG4gICAqIGluIHRoYXQgY2FzZSBpdCdzIGVxdWFsIHRvIG1hcmtldCB2YWx1ZSwgd2hlbiBwcm9wZXJ0eSBiZWNhbWUgYW4gaW52ZXN0bWVudCBwcm9wZXJ0eVxuICAgKi9cbiAgY2FsY3VsYXRlQ29zdEJhc2Uoc2FsZTogUHJvcGVydHlTYWxlKTogbnVtYmVyIHtcbiAgICBjb25zdCBtYXJrZXRWYWx1ZTogbnVtYmVyID0gbmV3IFByb3BlcnR5U2FsZVRheEV4ZW1wdGlvbk1ldGFkYXRhQ29sbGVjdGlvbihzYWxlLnRheEV4ZW1wdGlvbk1ldGFkYXRhKS5nZXRNYXJrZXRWYWx1ZSgpO1xuICAgIGlmIChtYXJrZXRWYWx1ZSkge1xuICAgICAgcmV0dXJuIG1hcmtldFZhbHVlO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnB1cmNoYXNlUHJpY2UgKyB0aGlzLmNhcGl0YWxDb3N0c1RvdGFsQW1vdW50ICsgc2FsZS5ob2xkaW5nQ29zdHMgKyBzYWxlLnN0cnVjdHVyYWxJbXByb3ZlbWVudHNXRFYgLSBzYWxlLmJ1aWxkaW5nQXRDb3N0Q2xhaW1lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBncm9zcyBjYXBpdGFsIGdhaW4gdGF4OiBzYWxlIGNvc3RzIC0gY29zdCBiYXNlXG4gICAqL1xuICBjYWxjdWxhdGVDR1Qoc2FsZTogUHJvcGVydHlTYWxlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHNhbGUucHJpY2UgLSBzYWxlLnNhbGVDb3N0c1RvdGFsQW1vdW50IC0gdGhpcy5jYWxjdWxhdGVDb3N0QmFzZShzYWxlKSkgKiB0aGlzLnNoYXJlUmF0aW8gLSBzYWxlLmNhcGl0YWxMb3NzO1xuICB9XG5cbiAgLyoqXG4gICAqIG5ldCBjYXBpdGFsIGdhaW4gdGF4IChpbmNsdWRlcyB0YXggZXhlbXB0aW9ucylcbiAgICovXG4gIGNhbGN1bGF0ZU5ldENHVChzYWxlOiBQcm9wZXJ0eVNhbGUpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldENHVEV4ZW1wdGlvblJhdGlvKHNhbGUpICogc2FsZS5ncm9zc0NHVDtcbiAgfVxuXG4gIC8qKlxuICAgKiBndWVzcyB0YXggZXhlbXB0aW9uIGJhc2VkIG9uIHByb3BlcnR5IGRldGFpbHNcbiAgICovXG4gIGdldENHVEV4ZW1wdGlvbihzYWxlOiBQcm9wZXJ0eVNhbGUpOiBUYXhFeGVtcHRpb25FbnVtIHtcbiAgICBpZiAoc2FsZS50YXhFeGVtcHRpb24pIHtcbiAgICAgIHJldHVybiBzYWxlLnRheEV4ZW1wdGlvbi5pZDtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgIC8vIGV4ZW1wdGlvbiBmb3IgbWFpbiByZXNpZGVuY2UgcHJvcGVydGllc1xuICAgICAgY2FzZSB0aGlzLmNhdGVnb3J5LmlkID09PSBQcm9wZXJ0eUNhdGVnb3J5TGlzdEVudW0uT1dORVJfT0NDVVBJRUQ6XG4gICAgICAgIHJldHVybiBUYXhFeGVtcHRpb25FbnVtLlBQUjtcbiAgICAgIC8vIGV4ZW1wdGlvbiBmb3IgaW52ZXN0bWVudCBwcm9wZXJ0aWVzIG93bmVkIGZvciBhdCBsZWFzdCBvbmUgeWVhclxuICAgICAgY2FzZSB0aGlzLmlzT25lWWVhckV4ZW1wdGlvbkFwcGxpY2FibGUoc2FsZSk6XG4gICAgICAgIHJldHVybiBUYXhFeGVtcHRpb25FbnVtLk9ORV9ZRUFSX1JVTEU7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogdGF4IGV4ZW1wdGlvbiBjYW4gcmVkdWNlIGNndCBmcm9tIDEwMCUgdG8gbGVzcyAodXAgdG8gemVybylcbiAgICovXG4gIGdldENHVEV4ZW1wdGlvblJhdGlvKHNhbGU6IFByb3BlcnR5U2FsZSk6IG51bWJlciB7XG4gICAgY29uc3QgbWV0YWRhdGE6IFByb3BlcnR5U2FsZVRheEV4ZW1wdGlvbk1ldGFkYXRhQ29sbGVjdGlvbiA9IG5ldyBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YUNvbGxlY3Rpb24oc2FsZS50YXhFeGVtcHRpb25NZXRhZGF0YSk7XG5cbiAgICBzd2l0Y2ggKHNhbGUudGF4RXhlbXB0aW9uPy5pZCkge1xuICAgICAgLy8gNTAlIGV4ZW1wdGlvbiBmb3IgaW52ZXN0bWVudHMgb3duZWQgZm9yIGF0IGxlYXN0IG9uZSB5ZWFyXG4gICAgICBjYXNlIFRheEV4ZW1wdGlvbkVudW0uT05FX1lFQVJfUlVMRTpcbiAgICAgICAgcmV0dXJuIDAuNTtcbiAgICAgIC8vIGludmVzdG1lbnQgcHJvcGVydHkgYmVjb21lIG1haW4gcmVzaWRlbmNlIChleGVtcHRpb24gZm9yIG1haW4gcmVzaWRlbmNlIG93bmVyc2hpcCBkdXJhdGlvbilcbiAgICAgIGNhc2UgVGF4RXhlbXB0aW9uRW51bS5JTlZFU1RNRU5UX1RPX1BQUjpcbiAgICAgICAgY29uc3Qgb3duZXJzaGlwRGF5cyA9IHRoaXMuZ2V0T3duZXJzaGlwRHVyYXRpb24oc2FsZSk7XG5cbiAgICAgICAgcmV0dXJuIChvd25lcnNoaXBEYXlzIC0gbWV0YWRhdGEuZ2V0UFBSRGF5cygpKSAvIG93bmVyc2hpcERheXM7XG4gICAgICAvLyBtYWluIHJlc2lkZW5jZSBiZWNvbWUgaW52ZXN0bWVudCAoZXhlbXB0aW9uIGZvciBob21lIG9mZmljZSBwZXJjZW50IHVzYWdlKVxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLlBQUl9UT19JTlZFU1RNRU5UOlxuICAgICAgICAvLyAxIHllYXIgQ0dUIGRpc2NvdW50IGNhbiBzdGlsbCBhcHBseSAob24gdGhlIGluY29tZSBwcm9kdWNpbmcgJSBpZiB1c2VkIGZvciAxMiBtb250aHMgb3IgbW9yZSlcbiAgICAgICAgY29uc3QgcmF0aW86IG51bWJlciA9IHRoaXMuaXNPbmVZZWFyRXhlbXB0aW9uQXBwbGljYWJsZShzYWxlKSA/IDAuNSA6IDE7XG4gICAgICAgIHJldHVybiBtZXRhZGF0YS5nZXRDbGFpbVBlcmNlbnQoKSAvIDEwMCAqIHJhdGlvO1xuICAgICAgLy8gZnVsbCBleGVtcHRpb25cbiAgICAgIGNhc2UgVGF4RXhlbXB0aW9uRW51bS5QUFI6XG4gICAgICBjYXNlIFRheEV4ZW1wdGlvbkVudW0uU0lYX1lFQVJTX1JVTEU6XG4gICAgICBjYXNlIFRheEV4ZW1wdGlvbkVudW0uVFJBTlNGRVI6XG4gICAgICBjYXNlIFRheEV4ZW1wdGlvbkVudW0uT1RIRVI6XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgLy8gbm8gZXhlbXB0aW9uXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gMTtcbiAgICB9XG4gIH1cblxuICBpc09uZVllYXJFeGVtcHRpb25BcHBsaWNhYmxlKHNhbGU6IFByb3BlcnR5U2FsZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBzYWxlLmdyb3NzQ0dUID4gMCAmJiB0aGlzLmdldE93bmVyc2hpcER1cmF0aW9uKHNhbGUsICd5ZWFycycpID4gMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDR1QgaXMgbm90IGFwcGxpY2FibGUgZm9yIHByb3BlcnRpZXMgYWNxdWlyZWQgYmVmb3JlIDIwLjA5LjE5ODUgKHRheCBkaWRuJ3QgZXhpc3QgYmVmb3JlIHRoaXMgZGF0ZSkuXG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvNDY0NDExMDQ2Ni9UYXgrUmV0dXJuK015VGF4Ky0rT25saW5lK0Zvcm0gKFwiQ2FwaXRhbCBnYWlucyBvciBsb3NzZXNcIiBzZWN0aW9uKVxuICAgKi9cbiAgaXNDR1RBcHBsaWNhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNvbnRyYWN0RGF0ZSA+PSBQcm9wZXJ0eS5wcmVDR1RBc3NldERhdGU7XG4gIH1cblxuICAvKipcbiAgICogb3duZXJzaGlwIGR1cmF0aW9uIGZyb20gcHVyY2hhc2UgdGlsbCBzYWxlXG4gICAqL1xuICBnZXRPd25lcnNoaXBEdXJhdGlvbihzYWxlOiBQcm9wZXJ0eVNhbGUsIHVuaXRPZlRpbWU6IHVuaXRPZlRpbWUuRGlmZiA9ICdkYXlzJyk6IG51bWJlciB7XG4gICAgcmV0dXJuIG1vbWVudChzYWxlLmNvbnRyYWN0RGF0ZSkuZGlmZihtb21lbnQodGhpcy5jb250cmFjdERhdGUpLCB1bml0T2ZUaW1lKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUYXggUG9zaXRpb24gPSBJbmNvbWUgLSBFeHBlbnNlIC0gSW50ZXJlc3QgLSBEZXByZWNpYXRpb25cbiAgICogV2hlcmUgKEluY29tZSAtIEV4cGVuc2UgLSBJbnRlcmVzdCkgaXMgY2FzaCBwb3NpdGlvbi5cbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy8yMTc0MTU5MjgvRGFzaGJvYXJkK1Byb3BlcnR5XG4gICAqL1xuICBnZXRUYXhQb3NpdGlvbih0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiwgZGVwcmVjaWF0aW9uczogRGVwcmVjaWF0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRyYW5zYWN0aW9ucy5ncm9zc0NsYWltQW1vdW50IC0gTWF0aC5hYnMoZGVwcmVjaWF0aW9ucy5jbGFpbUFtb3VudCk7XG4gIH1cbn1cbiJdfQ==
248
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxJQUFJLFlBQVksRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRzNFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFaEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDbEMsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQzdGLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBR2pDLE9BQU8sRUFDTCwwQ0FBMEMsRUFDM0MsTUFBTSwwRkFBMEYsQ0FBQztBQUtsRzs7R0FFRztBQUNILE1BQU0sT0FBTyxRQUFTLFNBQVEsWUFBWTtJQXNDeEMsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztJQUMzQixDQUFDO0lB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LGdCQUFnQixDQUFDOzJDQUNDO0FBRzlCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDO21EQUNTO0FBRzlDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztzQ0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDOytDQUNLO0FBSXRDO0lBREMsT0FBTyxFQUFFOzhDQUNTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQcm9wZXJ0eSBhcyBQcm9wZXJ0eUJhc2V9IGZyb20gJy4uLy4uL2RiL01vZGVscy9wcm9wZXJ0eS9wcm9wZXJ0eSc7XG5pbXBvcnQge0RvY3VtZW50YWJsZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9kb2N1bWVudGFibGUuaW50ZXJmYWNlJztcbmltcG9ydCB7UHJvcGVydHlTaGFyZX0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5LXNoYXJlJztcbmltcG9ydCB7UHJvcGVydHlTdWJzY3JpcHRpb259IGZyb20gJy4vcHJvcGVydHktc3Vic2NyaXB0aW9uJztcbmltcG9ydCB7RXhjbHVkZSwgVHlwZX0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHtQaG90b2FibGV9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcGhvdG9hYmxlJztcbmltcG9ydCB7QWRkcmVzc30gZnJvbSAnLi4vYWRkcmVzcy9hZGRyZXNzJztcbmltcG9ydCB7UHJvcGVydHlDYXRlZ29yeX0gZnJvbSAnLi9wcm9wZXJ0eS1jYXRlZ29yeSc7XG5pbXBvcnQge1Byb3BlcnR5VmFsdWF0aW9ufSBmcm9tICcuL3Byb3BlcnR5LXZhbHVhdGlvbic7XG5pbXBvcnQge1Byb3BlcnR5Rm9yZWNhc3R9IGZyb20gJy4vcHJvcGVydHktZm9yZWNhc3QnO1xuaW1wb3J0IHtQcm9wZXJ0eUNhdGVnb3J5TW92ZW1lbnR9IGZyb20gJy4vcHJvcGVydHktY2F0ZWdvcnktbW92ZW1lbnQnO1xuaW1wb3J0IHtVc2VyfSBmcm9tICcuLi91c2VyL3VzZXInO1xuaW1wb3J0IHtGaW5hbmNpYWxZZWFyfSBmcm9tICcuLi9maW5hbmNpYWwteWVhci9maW5hbmNpYWwteWVhcic7XG5pbXBvcnQge1RheEV4ZW1wdGlvbkVudW19IGZyb20gJy4uLy4uL2RiL0VudW1zL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUvdGF4LWV4ZW1wdGlvbi5lbnVtJztcbmltcG9ydCB7UHJvcGVydHlDYXRlZ29yeUxpc3RFbnVtfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9wcm9wZXJ0eS9wcm9wZXJ0eS1jYXRlZ29yeS1saXN0LmVudW0nO1xuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge1Byb3BlcnR5U2FsZX0gZnJvbSAnLi9wcm9wZXJ0eS1zYWxlL3Byb3BlcnR5LXNhbGUnO1xuaW1wb3J0IHt1bml0T2ZUaW1lfSBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHtcbiAgUHJvcGVydHlTYWxlVGF4RXhlbXB0aW9uTWV0YWRhdGFDb2xsZWN0aW9uXG59IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUvcHJvcGVydHktc2FsZS10YXgtZXhlbXB0aW9uLW1ldGFkYXRhLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvZGVwcmVjaWF0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgUHJvcGVydHlDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMnO1xuXG4vKipcbiAqIHByb3BlcnR5U2FsZSBkb2NzIC0gaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy80MjA5NTA4MzUzL1Byb3BlcnR5K1NvbGQrYnV0dG9uXG4gKi9cbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eSBleHRlbmRzIFByb3BlcnR5QmFzZSBpbXBsZW1lbnRzIFBob3RvYWJsZSwgRG9jdW1lbnRhYmxlIHtcbiAgLyoqXG4gICAqIFByb3BlcnR5IGFjcXVpcmVkIGJlZm9yZSAyMCBTZXB0ZW1iZXIgMTk4NSB3aWxsIGdlbmVyYWxseSBiZSB0cmVhdGVkIGFzIHByZS1DYXBpdGFsIEdhaW5zIFRheCAoQ0dUKSBhc3NldHMuXG4gICAqIEFueSBhc3NldHMgYWNxdWlyZWQgYmVmb3JlIHRoaXMgZGF5IGFyZSBDR1QgZXhlbXB0IChiZWNhdXNlIHRoZSB0YXggZGlkbid0IGV4aXN0IGJlZm9yZSB0aGlzIGRhdGUpLlxuICAgKi9cbiAgc3RhdGljIHByZUNHVEFzc2V0RGF0ZTogRGF0ZSA9IG5ldyBEYXRlKDE5ODUsIDksIDIwKTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBjb250cmFjdERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgc2V0dGxlbWVudERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gQWRkcmVzcylcbiAgYWRkcmVzczogQWRkcmVzcztcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eUNhdGVnb3J5KVxuICBjYXRlZ29yeTogUHJvcGVydHlDYXRlZ29yeTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eVZhbHVhdGlvbilcbiAgdmFsdWF0aW9uczogUHJvcGVydHlWYWx1YXRpb25bXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eUZvcmVjYXN0KVxuICBmb3JlY2FzdHM6IFByb3BlcnR5Rm9yZWNhc3RbXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eUNhdGVnb3J5TW92ZW1lbnQpXG4gIGNhdGVnb3J5TW92ZW1lbnRzOiBQcm9wZXJ0eUNhdGVnb3J5TW92ZW1lbnRbXTtcblxuICBAVHlwZSgoKSA9PiBVc2VyKVxuICB1c2VyOiBVc2VyO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5U3Vic2NyaXB0aW9uKVxuICBzdWJzY3JpcHRpb25zOiBQcm9wZXJ0eVN1YnNjcmlwdGlvbltdO1xuXG4gIC8vIGNvdWxkIGJlIEZpbGUgd2hlbiBqdXN0IGFkZGVkIG5ldyBpbWFnZVxuICBARXhjbHVkZSgpXG4gIGRvY3VtZW50RmlsZTogRmlsZTtcblxuICBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFkZHJlc3MubmFtZTtcbiAgfVxuXG4gIGdldCBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnN1YnNjcmlwdGlvbnM/Lmxlbmd0aDtcbiAgfVxuXG4gIGlzT3duKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnVzZXIuaWQgPT09ICtsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndXNlcklkJyk7XG4gIH1cblxuICBpc1NvbGQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5teVNoYXJlLnNhbGU7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGluaXRpYWxzIG9mIHByb3BlcnR5LiBSZXF1aXJlZCBieSBQaG90b2FibGUgaW50ZXJmYWNlXG4gICAqL1xuICBnZXRQaG90b1BsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubmFtZS5zcGxpdCgnICcpWzFdLnNsaWNlKDAsIDIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBwcm9wZXJ0eSBwaG90by4gUmVxdWlyZWQgYnkgUGhvdG9hYmxlIGludGVyZmFjZVxuICAgKi9cbiAgZ2V0UGhvdG8oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5waG90bztcbiAgfVxuXG4gIGdldCBjYXBpdGFsQ29zdHNUb3RhbEFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN0YW1wRHV0eSArIHRoaXMubGVnYWxGZWVzICsgdGhpcy5vdGhlckNhcGl0YWxDb3N0cztcbiAgfVxuXG4gIGdldCBjdXJyZW50WWVhclZhbHVhdGlvbnMoKTogUHJvcGVydHlWYWx1YXRpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWF0aW9ucy5maWx0ZXIoKHZhbHVhdGlvbjogUHJvcGVydHlWYWx1YXRpb24pOiBib29sZWFuID0+IHZhbHVhdGlvbi5pc0N1cnJlbnRZZWFyKCkpO1xuICB9XG5cbiAgZ2V0IG1hcmtldFZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuYWN0dWFsVmFsdWF0aW9uPy5tYXJrZXRWYWx1ZSB8fCAwO1xuICB9XG5cbiAgZ2V0IGN1cnJlbnRZZWFyRm9yZWNhc3QoKTogUHJvcGVydHlGb3JlY2FzdCB7XG4gICAgcmV0dXJuIHRoaXMuZm9yZWNhc3RzLmZpbmQoKGZvcmVjYXN0OiBQcm9wZXJ0eUZvcmVjYXN0KTogYm9vbGVhbiA9PiBmb3JlY2FzdC5pc0N1cnJlbnRZZWFyKCkpO1xuICB9XG5cbiAgZ2V0IGZvcmVjYXN0ZWRSZW50YWxSZXR1cm4oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50WWVhckZvcmVjYXN0Py5yZW50YWxSZXR1cm4gfHwgMDtcbiAgfVxuXG4gIGdldCBmb3JlY2FzdGVkVGF4UG9zaXRpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50WWVhckZvcmVjYXN0Py50YXhQb3NpdGlvbiB8fCAwO1xuICB9XG5cbiAgZ2V0IGZvcmVjYXN0ZWRDYXNoUG9zaXRpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50WWVhckZvcmVjYXN0Py5jYXNoUG9zaXRpb24gfHwgMDtcbiAgfVxuXG4gIGdldCBmaXJzdEZvcmVjYXN0WWVhcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZvcmVjYXN0cy5yZWR1Y2UoKG1pbjogbnVtYmVyLCBmb3JlY2FzdDogUHJvcGVydHlGb3JlY2FzdCk6IG51bWJlciA9PiB7XG4gICAgICByZXR1cm4gbWluID4gZm9yZWNhc3QuZmluYW5jaWFsWWVhciA/IGZvcmVjYXN0LmZpbmFuY2lhbFllYXIgOiBtaW47XG4gICAgfSwgbmV3IEZpbmFuY2lhbFllYXIoKS55ZWFyKTtcbiAgfVxuXG4gIGdldCBtYXJrZXRWYWx1ZUdyb3d0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5tYXJrZXRWYWx1ZSAtIHRoaXMucHVyY2hhc2VQcmljZSkgLyB0aGlzLm1hcmtldFZhbHVlO1xuICB9XG5cbiAgZ2V0IG15U2hhcmUoKTogUHJvcGVydHlTaGFyZSB7XG4gICAgcmV0dXJuIHRoaXMuc2hhcmVzLmZpbmQoKHNoYXJlOiBQcm9wZXJ0eVNoYXJlKTogYm9vbGVhbiA9PiBzaGFyZS51c2VyLmlkID09PSArbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzZXJJZCcpKTtcbiAgfVxuXG4gIGdldCBhY3R1YWxWYWx1YXRpb24oKTogUHJvcGVydHlWYWx1YXRpb24ge1xuICAgIHJldHVybiB0aGlzLnZhbHVhdGlvbnMucmVkdWNlKChtYXhEYXRlVmFsdWF0aW9uOiBQcm9wZXJ0eVZhbHVhdGlvbiwgdmFsdWF0aW9uOiBQcm9wZXJ0eVZhbHVhdGlvbikgPT4ge1xuICAgICAgcmV0dXJuIG1heERhdGVWYWx1YXRpb24uZGF0ZSA+IHZhbHVhdGlvbi5kYXRlID8gbWF4RGF0ZVZhbHVhdGlvbiA6IHZhbHVhdGlvbjtcbiAgICB9LCB0aGlzLnZhbHVhdGlvbnNbMF0pO1xuICB9XG5cbiAgZ2V0IGNsYWltUGVyY2VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRZZWFyRm9yZWNhc3QuY2xhaW1QZXJjZW50O1xuICB9XG5cbiAgZ2V0IGNsYWltQ29lZmZpY2llbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jbGFpbVBlcmNlbnQgLyAxMDA7XG4gIH1cblxuICBnZXQgc2hhcmVQZXJjZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMubXlTaGFyZS5wZXJjZW50O1xuICB9XG5cbiAgZ2V0IHNoYXJlUmF0aW8oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5teVNoYXJlLnBlcmNlbnQgLyAxMDA7XG4gIH1cblxuICBnZXQgcHJldmlvdXNDYXRlZ29yeSgpOiBQcm9wZXJ0eUNhdGVnb3J5IHtcbiAgICBsZXQgcHJldmlvdXNDYXRlZ29yeTogUHJvcGVydHlDYXRlZ29yeTtcblxuICAgIGNvbnN0IG1vdmVtZW50c0NvdW50OiBudW1iZXIgPSB0aGlzLmNhdGVnb3J5TW92ZW1lbnRzLmxlbmd0aDtcblxuICAgIGlmIChtb3ZlbWVudHNDb3VudCA+IDEpIHtcbiAgICAgIHByZXZpb3VzQ2F0ZWdvcnkgPSB0aGlzLmNhdGVnb3J5TW92ZW1lbnRzW21vdmVtZW50c0NvdW50IC0gMl0ucHJvcGVydHlDYXRlZ29yeTtcbiAgICB9XG5cbiAgICByZXR1cm4gcHJldmlvdXNDYXRlZ29yeTtcbiAgfVxuXG4gIGdldEN1cnJlbnRTdWJzY3JpcHRpb24oKTogUHJvcGVydHlTdWJzY3JpcHRpb24ge1xuICAgIC8vIGFsd2F5cyByZXR1cm4gZmlyc3QgZWxlbWVudCBiZWNhdXNlIHN1YnNjcmlwdGlvbnMgYXJyYXkgY29udGFpbnMgb25seSBvbmUgZWxlbWVudFxuICAgIHJldHVybiB0aGlzLnN1YnNjcmlwdGlvbnNbMF07XG4gIH1cblxuICBnZXRGb3JlY2FzdEJ5WWVhcih5ZWFyOiBudW1iZXIpOiBQcm9wZXJ0eUZvcmVjYXN0IHtcbiAgICByZXR1cm4gdGhpcy5mb3JlY2FzdHMuZmluZCgoZm9yZWNhc3Q6IFByb3BlcnR5Rm9yZWNhc3QpOiBib29sZWFuID0+IGZvcmVjYXN0LmZpbmFuY2lhbFllYXIgPT09IHllYXIpO1xuICB9XG5cbiAgZ2V0IGlzU2hhcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNoYXJlcy5sZW5ndGggPiAxO1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIGNvbnNpZGVyIHRvIG1vdmUgbWV0aG9kcyByZWxhdGVkIHdpdGggcHJvcGVydHlTYWxlIHRvIHNlcGFyYXRlZCBjbGFzcywgc2luY2UgdXNlZCBqdXN0IGluIG9uZSBtb2R1bGUgeWV0XG4gICAqIHB1cmNoYXNlIGNvc3RzIC0gY2xhaW1lZCBjb3N0cywgZXhjZXB0IGBwcHIgdG8gaW52ZXN0bWVudGAgZXhlbXB0aW9uLFxuICAgKiBpbiB0aGF0IGNhc2UgaXQncyBlcXVhbCB0byBtYXJrZXQgdmFsdWUsIHdoZW4gcHJvcGVydHkgYmVjYW1lIGFuIGludmVzdG1lbnQgcHJvcGVydHlcbiAgICovXG4gIGNhbGN1bGF0ZUNvc3RCYXNlKHNhbGU6IFByb3BlcnR5U2FsZSk6IG51bWJlciB7XG4gICAgY29uc3QgbWFya2V0VmFsdWU6IG51bWJlciA9IG5ldyBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YUNvbGxlY3Rpb24oc2FsZS50YXhFeGVtcHRpb25NZXRhZGF0YSkuZ2V0TWFya2V0VmFsdWUoKTtcbiAgICBpZiAobWFya2V0VmFsdWUpIHtcbiAgICAgIHJldHVybiBtYXJrZXRWYWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wdXJjaGFzZVByaWNlICsgdGhpcy5jYXBpdGFsQ29zdHNUb3RhbEFtb3VudCArIHNhbGUuaG9sZGluZ0Nvc3RzICsgc2FsZS5zdHJ1Y3R1cmFsSW1wcm92ZW1lbnRzV0RWIC0gc2FsZS5idWlsZGluZ0F0Q29zdENsYWltZWQ7XG4gIH1cblxuICAvKipcbiAgICogZ3Jvc3MgY2FwaXRhbCBnYWluIHRheDogc2FsZSBjb3N0cyAtIGNvc3QgYmFzZVxuICAgKi9cbiAgY2FsY3VsYXRlR3Jvc3NDR1Qoc2FsZTogUHJvcGVydHlTYWxlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHNhbGUucHJpY2UgLSBzYWxlLnNhbGVDb3N0c1RvdGFsQW1vdW50IC0gdGhpcy5jYWxjdWxhdGVDb3N0QmFzZShzYWxlKSkgKiB0aGlzLnNoYXJlUmF0aW87XG4gIH1cblxuICAvKipcbiAgICogbmV0IGNhcGl0YWwgZ2FpbiB0YXggKGluY2x1ZGVzIHRheCBleGVtcHRpb25zKVxuICAgKi9cbiAgY2FsY3VsYXRlTmV0Q0dUKHNhbGU6IFByb3BlcnR5U2FsZSk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q0dURXhlbXB0aW9uUmF0aW8oc2FsZSkgKiBzYWxlLmdyb3NzQ0dUQWZ0ZXJMb3NzO1xuICB9XG5cbiAgLyoqXG4gICAqIGd1ZXNzIHRheCBleGVtcHRpb24gYmFzZWQgb24gcHJvcGVydHkgZGV0YWlsc1xuICAgKi9cbiAgZ2V0Q0dURXhlbXB0aW9uKHNhbGU6IFByb3BlcnR5U2FsZSk6IFRheEV4ZW1wdGlvbkVudW0ge1xuICAgIGlmIChzYWxlLnRheEV4ZW1wdGlvbikge1xuICAgICAgcmV0dXJuIHNhbGUudGF4RXhlbXB0aW9uLmlkO1xuICAgIH1cblxuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgLy8gZXhlbXB0aW9uIGZvciBtYWluIHJlc2lkZW5jZSBwcm9wZXJ0aWVzXG4gICAgICBjYXNlIHRoaXMuY2F0ZWdvcnkuaWQgPT09IFByb3BlcnR5Q2F0ZWdvcnlMaXN0RW51bS5PV05FUl9PQ0NVUElFRDpcbiAgICAgICAgcmV0dXJuIFRheEV4ZW1wdGlvbkVudW0uUFBSO1xuICAgICAgLy8gZXhlbXB0aW9uIGZvciBpbnZlc3RtZW50IHByb3BlcnRpZXMgb3duZWQgZm9yIGF0IGxlYXN0IG9uZSB5ZWFyXG4gICAgICBjYXNlIHRoaXMuaXNPbmVZZWFyRXhlbXB0aW9uQXBwbGljYWJsZShzYWxlKTpcbiAgICAgICAgcmV0dXJuIFRheEV4ZW1wdGlvbkVudW0uT05FX1lFQVJfUlVMRTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiB0YXggZXhlbXB0aW9uIGNhbiByZWR1Y2UgY2d0IGZyb20gMTAwJSB0byBsZXNzICh1cCB0byB6ZXJvKVxuICAgKi9cbiAgZ2V0Q0dURXhlbXB0aW9uUmF0aW8oc2FsZTogUHJvcGVydHlTYWxlKTogbnVtYmVyIHtcbiAgICBjb25zdCBtZXRhZGF0YTogUHJvcGVydHlTYWxlVGF4RXhlbXB0aW9uTWV0YWRhdGFDb2xsZWN0aW9uID0gbmV3IFByb3BlcnR5U2FsZVRheEV4ZW1wdGlvbk1ldGFkYXRhQ29sbGVjdGlvbihzYWxlLnRheEV4ZW1wdGlvbk1ldGFkYXRhKTtcblxuICAgIHN3aXRjaCAoc2FsZS50YXhFeGVtcHRpb24/LmlkKSB7XG4gICAgICAvLyA1MCUgZXhlbXB0aW9uIGZvciBpbnZlc3RtZW50cyBvd25lZCBmb3IgYXQgbGVhc3Qgb25lIHllYXJcbiAgICAgIGNhc2UgVGF4RXhlbXB0aW9uRW51bS5PTkVfWUVBUl9SVUxFOlxuICAgICAgICByZXR1cm4gMC41O1xuICAgICAgLy8gaW52ZXN0bWVudCBwcm9wZXJ0eSBiZWNvbWUgbWFpbiByZXNpZGVuY2UgKGV4ZW1wdGlvbiBmb3IgbWFpbiByZXNpZGVuY2Ugb3duZXJzaGlwIGR1cmF0aW9uKVxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLklOVkVTVE1FTlRfVE9fUFBSOlxuICAgICAgICBjb25zdCBvd25lcnNoaXBEYXlzID0gdGhpcy5nZXRPd25lcnNoaXBEdXJhdGlvbihzYWxlKTtcblxuICAgICAgICByZXR1cm4gKG93bmVyc2hpcERheXMgLSBtZXRhZGF0YS5nZXRQUFJEYXlzKCkpIC8gb3duZXJzaGlwRGF5cztcbiAgICAgIC8vIG1haW4gcmVzaWRlbmNlIGJlY29tZSBpbnZlc3RtZW50IChleGVtcHRpb24gZm9yIGhvbWUgb2ZmaWNlIHBlcmNlbnQgdXNhZ2UpXG4gICAgICBjYXNlIFRheEV4ZW1wdGlvbkVudW0uUFBSX1RPX0lOVkVTVE1FTlQ6XG4gICAgICAgIC8vIDEgeWVhciBDR1QgZGlzY291bnQgY2FuIHN0aWxsIGFwcGx5IChvbiB0aGUgaW5jb21lIHByb2R1Y2luZyAlIGlmIHVzZWQgZm9yIDEyIG1vbnRocyBvciBtb3JlKVxuICAgICAgICBjb25zdCByYXRpbzogbnVtYmVyID0gdGhpcy5pc09uZVllYXJFeGVtcHRpb25BcHBsaWNhYmxlKHNhbGUpID8gMC41IDogMTtcbiAgICAgICAgcmV0dXJuIG1ldGFkYXRhLmdldENsYWltUGVyY2VudCgpIC8gMTAwICogcmF0aW87XG4gICAgICAvLyBmdWxsIGV4ZW1wdGlvblxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLlBQUjpcbiAgICAgIGNhc2UgVGF4RXhlbXB0aW9uRW51bS5TSVhfWUVBUlNfUlVMRTpcbiAgICAgIGNhc2UgVGF4RXhlbXB0aW9uRW51bS5UUkFOU0ZFUjpcbiAgICAgIGNhc2UgVGF4RXhlbXB0aW9uRW51bS5PVEhFUjpcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICAvLyBubyBleGVtcHRpb25cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgfVxuXG4gIGlzT25lWWVhckV4ZW1wdGlvbkFwcGxpY2FibGUoc2FsZTogUHJvcGVydHlTYWxlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHNhbGUuZ3Jvc3NDR1RBZnRlckxvc3MgPiAwICYmIHRoaXMuZ2V0T3duZXJzaGlwRHVyYXRpb24oc2FsZSwgJ3llYXJzJykgPiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIENHVCBpcyBub3QgYXBwbGljYWJsZSBmb3IgcHJvcGVydGllcyBhY3F1aXJlZCBiZWZvcmUgMjAuMDkuMTk4NSAodGF4IGRpZG4ndCBleGlzdCBiZWZvcmUgdGhpcyBkYXRlKS5cbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy80NjQ0MTEwNDY2L1RheCtSZXR1cm4rTXlUYXgrLStPbmxpbmUrRm9ybSAoXCJDYXBpdGFsIGdhaW5zIG9yIGxvc3Nlc1wiIHNlY3Rpb24pXG4gICAqL1xuICBpc0NHVEFwcGxpY2FibGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJhY3REYXRlID49IFByb3BlcnR5LnByZUNHVEFzc2V0RGF0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBvd25lcnNoaXAgZHVyYXRpb24gZnJvbSBwdXJjaGFzZSB0aWxsIHNhbGVcbiAgICovXG4gIGdldE93bmVyc2hpcER1cmF0aW9uKHNhbGU6IFByb3BlcnR5U2FsZSwgdW5pdE9mVGltZTogdW5pdE9mVGltZS5EaWZmID0gJ2RheXMnKTogbnVtYmVyIHtcbiAgICByZXR1cm4gbW9tZW50KHNhbGUuY29udHJhY3REYXRlKS5kaWZmKG1vbWVudCh0aGlzLmNvbnRyYWN0RGF0ZSksIHVuaXRPZlRpbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRheCBQb3NpdGlvbiA9IEluY29tZSAtIEV4cGVuc2UgLSBJbnRlcmVzdCAtIERlcHJlY2lhdGlvblxuICAgKiBXaGVyZSAoSW5jb21lIC0gRXhwZW5zZSAtIEludGVyZXN0KSBpcyBjYXNoIHBvc2l0aW9uLlxuICAgKiBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzIxNzQxNTkyOC9EYXNoYm9hcmQrUHJvcGVydHlcbiAgICovXG4gIGdldFRheFBvc2l0aW9uKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uLCBkZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdHJhbnNhY3Rpb25zLmdyb3NzQ2xhaW1BbW91bnQgLSBNYXRoLmFicyhkZXByZWNpYXRpb25zLmNsYWltQW1vdW50KTtcbiAgfVxufVxuIl19
@@ -8,10 +8,10 @@ import { plainToClass } from 'class-transformer';
8
8
  export class MyTaxCgt {
9
9
  static createFrom(propertySales, properties, clientCapitalLoss) {
10
10
  return plainToClass(MyTaxCgt, {
11
- hasCapitalGain: !!propertySales.grossCGT,
12
- hasExemption: !!propertySales.grossCGT && this.isCGTApplicable(propertySales, properties),
11
+ hasCapitalGain: !!propertySales.grossCGTAfterLoss,
12
+ hasExemption: !!propertySales.grossCGTAfterLoss && this.isCGTApplicable(propertySales, properties),
13
13
  netCapitalGain: propertySales.sumBy('netCGT'),
14
- grossCapitalGain: propertySales.grossCGT,
14
+ grossCapitalGain: propertySales.grossCGTAfterLoss,
15
15
  netCapitalLoss: clientCapitalLoss
16
16
  });
17
17
  }
@@ -23,4 +23,4 @@ export class MyTaxCgt {
23
23
  return !sales.getCGTApplicable().length || !properties.getCGTApplicable().length;
24
24
  }
25
25
  }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktdGF4LWNndC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcmVwb3J0L215LXRheC9teS10YXgtY2d0L215LXRheC1jZ3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQTBGLENBQUM7QUFDM0YsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR2pEOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sUUFBUTtJQVduQixNQUFNLENBQUMsVUFBVSxDQUFDLGFBQXFDLEVBQUUsVUFBOEIsRUFBRSxpQkFBeUI7UUFDaEgsT0FBTyxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQzVCLGNBQWMsRUFBRSxDQUFDLENBQUMsYUFBYSxDQUFDLFFBQVE7WUFDeEMsWUFBWSxFQUFFLENBQUMsQ0FBQyxhQUFhLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQztZQUN6RixjQUFjLEVBQUUsYUFBYSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDN0MsZ0JBQWdCLEVBQUUsYUFBYSxDQUFDLFFBQVE7WUFDeEMsY0FBYyxFQUFFLGlCQUFpQjtTQUNsQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUE2QixFQUFFLFVBQThCO1FBQ2xGLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDbkYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvcGVydHlDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29sbGVjdGlvbnMvcHJvcGVydHkvcHJvcGVydHkuY29sbGVjdGlvbic7O1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUHJvcGVydHlTYWxlQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUvcHJvcGVydHktc2FsZS5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBSZXBvcnQgcmVsYXRlZCB0byBQcm9wZXJ0eSBzYWxlcyBDR1QgZGV0YWlscy5cbiAqIEFsbCBmaWVsZHMgYXJlIGFib3V0IGN1cnJlbnQgeWVhciwgZXhjZXB0IG5ldENhcGl0YWxMb3NzXG4gKlxuICovXG5leHBvcnQgY2xhc3MgTXlUYXhDZ3Qge1xuICBoYXNDYXBpdGFsR2FpbjogYm9vbGVhbjtcbiAgaGFzRXhlbXB0aW9uOiBib29sZWFuO1xuICBuZXRDYXBpdGFsR2FpbjogbnVtYmVyO1xuICBncm9zc0NhcGl0YWxHYWluOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIExvc3MgY29sbGVjdGVkIG92ZXIgdGhlIHllYXJzXG4gICAqL1xuICBuZXRDYXBpdGFsTG9zczogbnVtYmVyO1xuXG4gIHN0YXRpYyBjcmVhdGVGcm9tKHByb3BlcnR5U2FsZXM6IFByb3BlcnR5U2FsZUNvbGxlY3Rpb24sIHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbiwgY2xpZW50Q2FwaXRhbExvc3M6IG51bWJlcik6IE15VGF4Q2d0IHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKE15VGF4Q2d0LCB7XG4gICAgICBoYXNDYXBpdGFsR2FpbjogISFwcm9wZXJ0eVNhbGVzLmdyb3NzQ0dULFxuICAgICAgaGFzRXhlbXB0aW9uOiAhIXByb3BlcnR5U2FsZXMuZ3Jvc3NDR1QgJiYgdGhpcy5pc0NHVEFwcGxpY2FibGUocHJvcGVydHlTYWxlcywgcHJvcGVydGllcyksXG4gICAgICBuZXRDYXBpdGFsR2FpbjogcHJvcGVydHlTYWxlcy5zdW1CeSgnbmV0Q0dUJyksXG4gICAgICBncm9zc0NhcGl0YWxHYWluOiBwcm9wZXJ0eVNhbGVzLmdyb3NzQ0dULFxuICAgICAgbmV0Q2FwaXRhbExvc3M6IGNsaWVudENhcGl0YWxMb3NzXG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVtcHRpb24gaXMgYXBwbGljYWJsZSBmb3IgUFBSIHNhbGVzIGFuZCBwcm9wZXJ0aWVzIGFjcXVpcmVkIGJlZm9yZSBQcm9wZXJ0eS5wcmVDR1RBc3NldERhdGVcbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy80NjQ0MTEwNDY2L1RheCtSZXR1cm4rTXlUYXgrLStPbmxpbmUrRm9ybSAoXCJDYXBpdGFsIGdhaW5zIG9yIGxvc3Nlc1wiIHNlY3Rpb24pXG4gICAqL1xuICBzdGF0aWMgaXNDR1RBcHBsaWNhYmxlKHNhbGVzOiBQcm9wZXJ0eVNhbGVDb2xsZWN0aW9uLCBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXNhbGVzLmdldENHVEFwcGxpY2FibGUoKS5sZW5ndGggfHwgIXByb3BlcnRpZXMuZ2V0Q0dUQXBwbGljYWJsZSgpLmxlbmd0aDtcbiAgfVxufVxuIl19
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktdGF4LWNndC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcmVwb3J0L215LXRheC9teS10YXgtY2d0L215LXRheC1jZ3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQTBGLENBQUM7QUFDM0YsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR2pEOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sUUFBUTtJQVduQixNQUFNLENBQUMsVUFBVSxDQUFDLGFBQXFDLEVBQUUsVUFBOEIsRUFBRSxpQkFBeUI7UUFDaEgsT0FBTyxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQzVCLGNBQWMsRUFBRSxDQUFDLENBQUMsYUFBYSxDQUFDLGlCQUFpQjtZQUNqRCxZQUFZLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUM7WUFDbEcsY0FBYyxFQUFFLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO1lBQzdDLGdCQUFnQixFQUFFLGFBQWEsQ0FBQyxpQkFBaUI7WUFDakQsY0FBYyxFQUFFLGlCQUFpQjtTQUNsQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUE2QixFQUFFLFVBQThCO1FBQ2xGLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDbkYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvcGVydHlDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29sbGVjdGlvbnMvcHJvcGVydHkvcHJvcGVydHkuY29sbGVjdGlvbic7O1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUHJvcGVydHlTYWxlQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zL3Byb3BlcnR5L3Byb3BlcnR5LXNhbGUvcHJvcGVydHktc2FsZS5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBSZXBvcnQgcmVsYXRlZCB0byBQcm9wZXJ0eSBzYWxlcyBDR1QgZGV0YWlscy5cbiAqIEFsbCBmaWVsZHMgYXJlIGFib3V0IGN1cnJlbnQgeWVhciwgZXhjZXB0IG5ldENhcGl0YWxMb3NzXG4gKlxuICovXG5leHBvcnQgY2xhc3MgTXlUYXhDZ3Qge1xuICBoYXNDYXBpdGFsR2FpbjogYm9vbGVhbjtcbiAgaGFzRXhlbXB0aW9uOiBib29sZWFuO1xuICBuZXRDYXBpdGFsR2FpbjogbnVtYmVyO1xuICBncm9zc0NhcGl0YWxHYWluOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIExvc3MgY29sbGVjdGVkIG92ZXIgdGhlIHllYXJzXG4gICAqL1xuICBuZXRDYXBpdGFsTG9zczogbnVtYmVyO1xuXG4gIHN0YXRpYyBjcmVhdGVGcm9tKHByb3BlcnR5U2FsZXM6IFByb3BlcnR5U2FsZUNvbGxlY3Rpb24sIHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbiwgY2xpZW50Q2FwaXRhbExvc3M6IG51bWJlcik6IE15VGF4Q2d0IHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKE15VGF4Q2d0LCB7XG4gICAgICBoYXNDYXBpdGFsR2FpbjogISFwcm9wZXJ0eVNhbGVzLmdyb3NzQ0dUQWZ0ZXJMb3NzLFxuICAgICAgaGFzRXhlbXB0aW9uOiAhIXByb3BlcnR5U2FsZXMuZ3Jvc3NDR1RBZnRlckxvc3MgJiYgdGhpcy5pc0NHVEFwcGxpY2FibGUocHJvcGVydHlTYWxlcywgcHJvcGVydGllcyksXG4gICAgICBuZXRDYXBpdGFsR2FpbjogcHJvcGVydHlTYWxlcy5zdW1CeSgnbmV0Q0dUJyksXG4gICAgICBncm9zc0NhcGl0YWxHYWluOiBwcm9wZXJ0eVNhbGVzLmdyb3NzQ0dUQWZ0ZXJMb3NzLFxuICAgICAgbmV0Q2FwaXRhbExvc3M6IGNsaWVudENhcGl0YWxMb3NzXG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVtcHRpb24gaXMgYXBwbGljYWJsZSBmb3IgUFBSIHNhbGVzIGFuZCBwcm9wZXJ0aWVzIGFjcXVpcmVkIGJlZm9yZSBQcm9wZXJ0eS5wcmVDR1RBc3NldERhdGVcbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy80NjQ0MTEwNDY2L1RheCtSZXR1cm4rTXlUYXgrLStPbmxpbmUrRm9ybSAoXCJDYXBpdGFsIGdhaW5zIG9yIGxvc3Nlc1wiIHNlY3Rpb24pXG4gICAqL1xuICBzdGF0aWMgaXNDR1RBcHBsaWNhYmxlKHNhbGVzOiBQcm9wZXJ0eVNhbGVDb2xsZWN0aW9uLCBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXNhbGVzLmdldENHVEFwcGxpY2FibGUoKS5sZW5ndGggfHwgIXByb3BlcnRpZXMuZ2V0Q0dUQXBwbGljYWJsZSgpLmxlbmd0aDtcbiAgfVxufVxuIl19
@@ -139,9 +139,9 @@ export class AccountSetupService {
139
139
  }));
140
140
  }
141
141
  }
142
- AccountSetupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AccountSetupService, deps: [{ token: i1.ClientIncomeTypesService }, { token: i2.PropertyService }, { token: i3.IncomeSourceService }, { token: i4.BankAccountService }, { token: i5.TransactionAllocationService }, { token: i6.VehicleClaimService }, { token: i7.TransactionService }, { token: i8.SoleBusinessService }], target: i0.ɵɵFactoryTarget.Injectable });
143
- AccountSetupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AccountSetupService, providedIn: 'root' });
144
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AccountSetupService, decorators: [{
142
+ AccountSetupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AccountSetupService, deps: [{ token: i1.ClientIncomeTypesService }, { token: i2.PropertyService }, { token: i3.IncomeSourceService }, { token: i4.BankAccountService }, { token: i5.TransactionAllocationService }, { token: i6.VehicleClaimService }, { token: i7.TransactionService }, { token: i8.SoleBusinessService }], target: i0.ɵɵFactoryTarget.Injectable });
143
+ AccountSetupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AccountSetupService, providedIn: 'root' });
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AccountSetupService, decorators: [{
145
145
  type: Injectable,
146
146
  args: [{
147
147
  providedIn: 'root'
@@ -20,9 +20,9 @@ export class RewardfulService {
20
20
  });
21
21
  }
22
22
  }
23
- RewardfulService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RewardfulService, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
24
- RewardfulService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RewardfulService, providedIn: 'root' });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RewardfulService, decorators: [{
23
+ RewardfulService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: RewardfulService, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
24
+ RewardfulService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: RewardfulService, providedIn: 'root' });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: RewardfulService, decorators: [{
26
26
  type: Injectable,
27
27
  args: [{
28
28
  providedIn: 'root'
@@ -37,9 +37,9 @@ export class AssetsService {
37
37
  return this.http.delete(`${this.environment.apiV2}/${asset.entityType}/${entityId}/${asset.type}/${asset.id}`);
38
38
  }
39
39
  }
40
- AssetsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AssetsService, deps: [{ token: i1.HttpClient }, { token: i2.UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
41
- AssetsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AssetsService, providedIn: 'root' });
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AssetsService, decorators: [{
40
+ AssetsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AssetsService, deps: [{ token: i1.HttpClient }, { token: i2.UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
41
+ AssetsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AssetsService, providedIn: 'root' });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AssetsService, decorators: [{
43
43
  type: Injectable,
44
44
  args: [{
45
45
  providedIn: 'root'
@@ -48,9 +48,9 @@ export class AuthService {
48
48
  location.replace(url);
49
49
  }
50
50
  }
51
- AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: i2.JwtService }, { token: i3.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
52
- AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthService, providedIn: 'root' });
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthService, decorators: [{
51
+ AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: i2.JwtService }, { token: i3.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
52
+ AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, providedIn: 'root' });
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, decorators: [{
54
54
  type: Injectable,
55
55
  args: [{
56
56
  providedIn: 'root'
@@ -25,9 +25,9 @@ export class JwtService extends JwtHelperService {
25
25
  return this.getUser().id === userId;
26
26
  }
27
27
  }
28
- JwtService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: JwtService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
29
- JwtService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: JwtService, providedIn: 'root' });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: JwtService, decorators: [{
28
+ JwtService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
29
+ JwtService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtService, providedIn: 'root' });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtService, decorators: [{
31
31
  type: Injectable,
32
32
  args: [{
33
33
  providedIn: 'root'