taxtank-core 0.30.39 → 0.30.41

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 (157) hide show
  1. package/esm2020/lib/db/Models/subscription/service-subscription.mjs +1 -1
  2. package/esm2020/lib/forms/abstract.form.mjs +4 -1
  3. package/esm2020/lib/forms/holding/holding-sale.form.mjs +25 -17
  4. package/esm2020/lib/interceptors/basiq-client-id.interceptor.mjs +3 -3
  5. package/esm2020/lib/interceptors/basiq-token.interceptor.mjs +3 -3
  6. package/esm2020/lib/interceptors/corelogic-interceptor.mjs +3 -3
  7. package/esm2020/lib/interceptors/financial-year-interceptor.mjs +3 -3
  8. package/esm2020/lib/interceptors/interceptors.module.mjs +4 -4
  9. package/esm2020/lib/interceptors/jwt-interceptor.mjs +3 -3
  10. package/esm2020/lib/interceptors/preloader.interceptor.mjs +3 -3
  11. package/esm2020/lib/interceptors/user-switcher-interceptor.mjs +3 -3
  12. package/esm2020/lib/models/holding/holding-sale.mjs +1 -15
  13. package/esm2020/lib/models/service-subscription/index.mjs +2 -2
  14. package/esm2020/lib/models/service-subscription/service-price.mjs +3 -3
  15. package/esm2020/lib/models/service-subscription/service-promo-code-duration.enum.mjs +7 -0
  16. package/esm2020/lib/models/service-subscription/service-promo-code.mjs +3 -0
  17. package/esm2020/lib/models/service-subscription/service-subscription-item.mjs +4 -1
  18. package/esm2020/lib/models/service-subscription/service-subscription.mjs +8 -9
  19. package/esm2020/lib/services/account-setup/account-setup.service.mjs +3 -3
  20. package/esm2020/lib/services/affiliate/rewardful/rewardful.service.mjs +3 -3
  21. package/esm2020/lib/services/asset/assets.service.mjs +3 -3
  22. package/esm2020/lib/services/auth/auth.service.mjs +3 -3
  23. package/esm2020/lib/services/auth/jwt.service.mjs +3 -3
  24. package/esm2020/lib/services/bank/bank-account-calculation.service.mjs +3 -3
  25. package/esm2020/lib/services/bank/bank-transaction-calculation.service.mjs +3 -3
  26. package/esm2020/lib/services/data.service.mjs +3 -3
  27. package/esm2020/lib/services/event/event-dispatcher.service.mjs +3 -3
  28. package/esm2020/lib/services/event/sse.service.mjs +3 -3
  29. package/esm2020/lib/services/export/export-formatter.service.mjs +3 -3
  30. package/esm2020/lib/services/header-title/header-title.service.mjs +3 -3
  31. package/esm2020/lib/services/http/address/address.service.mjs +3 -3
  32. package/esm2020/lib/services/http/bank/bank-account/bank-account.service.mjs +3 -3
  33. package/esm2020/lib/services/http/bank/bank-connection/bank-connection.service.mjs +3 -3
  34. package/esm2020/lib/services/http/bank/bank-transaction/bank-transaction.service.mjs +3 -3
  35. package/esm2020/lib/services/http/bank/bank.service.mjs +3 -3
  36. package/esm2020/lib/services/http/bank/basiq/basiq-token.service.mjs +3 -3
  37. package/esm2020/lib/services/http/bank/basiq/basiq.service.mjs +3 -3
  38. package/esm2020/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.mjs +3 -3
  39. package/esm2020/lib/services/http/chart-accounts/chart-accounts.service.mjs +3 -3
  40. package/esm2020/lib/services/http/chat/chat.service.mjs +3 -3
  41. package/esm2020/lib/services/http/chat/message-document.service.mjs +3 -3
  42. package/esm2020/lib/services/http/chat/message.service.mjs +3 -3
  43. package/esm2020/lib/services/http/client/capital-gain/annual-client-details.service.mjs +3 -3
  44. package/esm2020/lib/services/http/client/occupation/occupation.service.mjs +3 -3
  45. package/esm2020/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.mjs +3 -3
  46. package/esm2020/lib/services/http/depreciation/depreciation-receipt/depreciation-receipt.service.mjs +3 -3
  47. package/esm2020/lib/services/http/depreciation/depreciation.service.mjs +3 -3
  48. package/esm2020/lib/services/http/document/document-folder/document-folder.service.mjs +3 -3
  49. package/esm2020/lib/services/http/document/document.service.mjs +3 -3
  50. package/esm2020/lib/services/http/facebook/facebook.service.mjs +3 -3
  51. package/esm2020/lib/services/http/file/file.service.mjs +7 -4
  52. package/esm2020/lib/services/http/firm/client-income/client-income-types.service.mjs +3 -3
  53. package/esm2020/lib/services/http/firm/client-invite/client-invite.service.mjs +3 -3
  54. package/esm2020/lib/services/http/firm/client-movement/client-movement.service.mjs +3 -3
  55. package/esm2020/lib/services/http/firm/employee/employee.service.mjs +3 -3
  56. package/esm2020/lib/services/http/firm/employee-invite/employee-invite.service.mjs +3 -3
  57. package/esm2020/lib/services/http/firm/firm.service.mjs +3 -3
  58. package/esm2020/lib/services/http/firm/portfolio-report/client-portfolio-report.service.mjs +3 -3
  59. package/esm2020/lib/services/http/google/google.service.mjs +3 -3
  60. package/esm2020/lib/services/http/holding/holding-sale.service.mjs +3 -3
  61. package/esm2020/lib/services/http/holding/holding-type.service.mjs +3 -3
  62. package/esm2020/lib/services/http/holding/holding.service.mjs +3 -3
  63. package/esm2020/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.mjs +3 -3
  64. package/esm2020/lib/services/http/income-source/income-source.service.mjs +3 -3
  65. package/esm2020/lib/services/http/income-source/salary-forecast/salary-forecast.service.mjs +3 -3
  66. package/esm2020/lib/services/http/income-source/sole-forecast/sole-forecast.service.mjs +3 -3
  67. package/esm2020/lib/services/http/loan/borrowing-expense/borrowing-expense.service.mjs +3 -3
  68. package/esm2020/lib/services/http/loan/loan.service.mjs +3 -3
  69. package/esm2020/lib/services/http/property/property-category/property-category.service.mjs +3 -3
  70. package/esm2020/lib/services/http/property/property-category-movement/property-category-movement.service.mjs +3 -3
  71. package/esm2020/lib/services/http/property/property-document/property-document.service.mjs +3 -3
  72. package/esm2020/lib/services/http/property/property-sale/property-sale.service.mjs +3 -3
  73. package/esm2020/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.mjs +3 -3
  74. package/esm2020/lib/services/http/property/property-share/property-share.service.mjs +3 -3
  75. package/esm2020/lib/services/http/property/property.service.mjs +3 -3
  76. package/esm2020/lib/services/http/receipt/receipt.service.mjs +3 -3
  77. package/esm2020/lib/services/http/rest/rest-old.service.mjs +3 -3
  78. package/esm2020/lib/services/http/rest/rest.service.mjs +3 -3
  79. package/esm2020/lib/services/http/service-notification/service-notification.service.mjs +3 -3
  80. package/esm2020/lib/services/http/sole/bas-report/bas-report.service.mjs +3 -3
  81. package/esm2020/lib/services/http/sole/sole-business/sole-business.service.mjs +3 -3
  82. package/esm2020/lib/services/http/sole/sole-business-activity/sole-business-activity.service.mjs +3 -3
  83. package/esm2020/lib/services/http/sole/sole-business-loss/sole-business-loss-rules/sole-business-loss-offset-rule.service.mjs +3 -3
  84. package/esm2020/lib/services/http/sole/sole-business-loss/sole-business-loss.service.mjs +3 -3
  85. package/esm2020/lib/services/http/sole/sole-contact/sole-contact.service.mjs +3 -3
  86. package/esm2020/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.mjs +3 -3
  87. package/esm2020/lib/services/http/sole/sole-details/sole-details.service.mjs +3 -3
  88. package/esm2020/lib/services/http/sole/sole-invoice/sole-invoice.service.mjs +3 -3
  89. package/esm2020/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.mjs +3 -3
  90. package/esm2020/lib/services/http/subscription/service-payment/service-payment.service.mjs +3 -3
  91. package/esm2020/lib/services/http/subscription/service-payment-method/service-payment-method.service.mjs +3 -3
  92. package/esm2020/lib/services/http/subscription/service-price/service-price.service.mjs +3 -3
  93. package/esm2020/lib/services/http/subscription/service-product/service-product.service.mjs +3 -3
  94. package/esm2020/lib/services/http/subscription/service-subscription/subscription.service.mjs +8 -6
  95. package/esm2020/lib/services/http/tax-review/tax-review-history/tax-review-history.service.mjs +3 -3
  96. package/esm2020/lib/services/http/tax-review/tax-review.service.mjs +3 -3
  97. package/esm2020/lib/services/http/tax-summary/tax-summary.service.mjs +3 -3
  98. package/esm2020/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.mjs +3 -3
  99. package/esm2020/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.mjs +3 -3
  100. package/esm2020/lib/services/http/transaction/transaction-receipt/transaction-receipt.service.mjs +3 -3
  101. package/esm2020/lib/services/http/transaction/transaction.service.mjs +3 -3
  102. package/esm2020/lib/services/http/tutorial-video/tutorial-video.service.mjs +3 -3
  103. package/esm2020/lib/services/http/user/user-event-setting/user-event-setting.service.mjs +3 -3
  104. package/esm2020/lib/services/http/user/user-event-type/user-event-type.service.mjs +3 -3
  105. package/esm2020/lib/services/http/user/user.service.mjs +3 -3
  106. package/esm2020/lib/services/http/user/users-invite/users-invite.service.mjs +3 -3
  107. package/esm2020/lib/services/http/vehicle/vehicle-claim-details.service.mjs +3 -3
  108. package/esm2020/lib/services/http/vehicle/vehicle-claim.service.mjs +3 -3
  109. package/esm2020/lib/services/http/vehicle/vehicle-logbook.service.mjs +3 -3
  110. package/esm2020/lib/services/http/vehicle/vehicle.service.mjs +3 -3
  111. package/esm2020/lib/services/intercom/intercom.service.mjs +3 -3
  112. package/esm2020/lib/services/json/holding/holding-type-exchange.service.mjs +3 -3
  113. package/esm2020/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.mjs +3 -3
  114. package/esm2020/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.mjs +3 -3
  115. package/esm2020/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.mjs +3 -3
  116. package/esm2020/lib/services/pdf/pdf-from-table/pdf-from-table.service.mjs +3 -3
  117. package/esm2020/lib/services/preloader/preloader.service.mjs +3 -3
  118. package/esm2020/lib/services/property/corelogic/corelogic.service.mjs +3 -3
  119. package/esm2020/lib/services/property/equity-position-chart/equity-position-chart.service.mjs +3 -3
  120. package/esm2020/lib/services/property/property-calculation/property-calculation.service.mjs +3 -3
  121. package/esm2020/lib/services/report/property/property-transaction-report.service.mjs +3 -3
  122. package/esm2020/lib/services/toast/toast.service.mjs +3 -3
  123. package/esm2020/lib/services/transaction/transaction-calculation.service.mjs +3 -3
  124. package/esm2020/lib/services/user/user-switcher.service.mjs +3 -3
  125. package/esm2020/lib/services/vehicle/logbook-best-period.service.mjs +3 -3
  126. package/esm2020/lib/services/xlsx/xlsx.service.mjs +3 -3
  127. package/esm2020/lib/tt-core.module.mjs +4 -4
  128. package/fesm2015/taxtank-core.mjs +399 -407
  129. package/fesm2015/taxtank-core.mjs.map +1 -1
  130. package/fesm2020/taxtank-core.mjs +399 -407
  131. package/fesm2020/taxtank-core.mjs.map +1 -1
  132. package/lib/db/Models/subscription/service-subscription.d.ts +6 -1
  133. package/lib/db/Models/subscription/service-subscription.d.ts.map +1 -1
  134. package/lib/forms/abstract.form.d.ts.map +1 -1
  135. package/lib/forms/holding/holding-sale.form.d.ts +3 -2
  136. package/lib/forms/holding/holding-sale.form.d.ts.map +1 -1
  137. package/lib/models/holding/holding-sale.d.ts +0 -2
  138. package/lib/models/holding/holding-sale.d.ts.map +1 -1
  139. package/lib/models/service-subscription/index.d.ts +1 -1
  140. package/lib/models/service-subscription/index.d.ts.map +1 -1
  141. package/lib/models/service-subscription/service-price.d.ts +1 -1
  142. package/lib/models/service-subscription/service-price.d.ts.map +1 -1
  143. package/lib/models/service-subscription/service-promo-code-duration.enum.d.ts +5 -0
  144. package/lib/models/service-subscription/service-promo-code-duration.enum.d.ts.map +1 -0
  145. package/lib/models/service-subscription/service-promo-code.d.ts +11 -0
  146. package/lib/models/service-subscription/service-promo-code.d.ts.map +1 -0
  147. package/lib/models/service-subscription/service-subscription-item.d.ts +1 -0
  148. package/lib/models/service-subscription/service-subscription-item.d.ts.map +1 -1
  149. package/lib/models/service-subscription/service-subscription.d.ts +3 -6
  150. package/lib/models/service-subscription/service-subscription.d.ts.map +1 -1
  151. package/lib/services/http/file/file.service.d.ts +1 -0
  152. package/lib/services/http/file/file.service.d.ts.map +1 -1
  153. package/lib/services/http/subscription/service-subscription/subscription.service.d.ts.map +1 -1
  154. package/package.json +1 -1
  155. package/esm2020/lib/models/service-subscription/stripe-promo-code.mjs +0 -12
  156. package/lib/models/service-subscription/stripe-promo-code.d.ts +0 -8
  157. package/lib/models/service-subscription/stripe-promo-code.d.ts.map +0 -1
@@ -1,4 +1,4 @@
1
1
  import { ObservableModel } from '../observable-model';
2
2
  export class ServiceSubscription extends ObservableModel {
3
3
  }
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZGIvTW9kZWxzL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFcEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGVBQWU7Q0FVdkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlU3Vic2NyaXB0aW9uU3RhdHVzRW51bSB9IGZyb20gJy4uLy4uL0VudW1zL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi1zdGF0dXMuZW51bSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vdXNlci91c2VyJztcbmltcG9ydCB7IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtIH0gZnJvbSAnLi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi1pdGVtJztcbmltcG9ydCB7IFNlcnZpY2VQYXltZW50IH0gZnJvbSAnLi9zZXJ2aWNlLXBheW1lbnQnO1xuaW1wb3J0IHtPYnNlcnZhYmxlTW9kZWx9IGZyb20gJy4uL29ic2VydmFibGUtbW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgU2VydmljZVN1YnNjcmlwdGlvbiBleHRlbmRzIE9ic2VydmFibGVNb2RlbCB7XG4gIGlkPzogbnVtYmVyO1xuICBzdHJpcGVJZD86IHN0cmluZztcbiAgc3RhcnREYXRlPzogRGF0ZTtcbiAgZW5kRGF0ZT86IERhdGU7XG4gIHN0YXR1cz86IFNlcnZpY2VTdWJzY3JpcHRpb25TdGF0dXNFbnVtO1xuICB1c2VyPzogVXNlcjtcbiAgaXRlbXM/OiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbVtdO1xuICBwYXltZW50cz86IFNlcnZpY2VQYXltZW50W107XG4gIGlzQ2FuY2VsQXRQZXJpb2RFbmQ/OiBib29sZWFuO1xufVxuIl19
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZGIvTW9kZWxzL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHdEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGVBQWU7Q0FjdkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlU3Vic2NyaXB0aW9uU3RhdHVzRW51bSB9IGZyb20gJy4uLy4uL0VudW1zL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi1zdGF0dXMuZW51bSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vdXNlci91c2VyJztcbmltcG9ydCB7IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtIH0gZnJvbSAnLi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi1pdGVtJztcbmltcG9ydCB7IFNlcnZpY2VQYXltZW50IH0gZnJvbSAnLi9zZXJ2aWNlLXBheW1lbnQnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZU1vZGVsIH0gZnJvbSAnLi4vb2JzZXJ2YWJsZS1tb2RlbCc7XG5pbXBvcnQgeyBTZXJ2aWNlUHJvbW9Db2RlIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVsc1wiO1xuXG5leHBvcnQgY2xhc3MgU2VydmljZVN1YnNjcmlwdGlvbiBleHRlbmRzIE9ic2VydmFibGVNb2RlbCB7XG4gIGlkPzogbnVtYmVyO1xuICBzdHJpcGVJZD86IHN0cmluZztcbiAgc3RhcnREYXRlPzogRGF0ZTtcbiAgZW5kRGF0ZT86IERhdGU7XG4gIHN0YXR1cz86IFNlcnZpY2VTdWJzY3JpcHRpb25TdGF0dXNFbnVtO1xuICBpc0NhbmNlbEF0UGVyaW9kRW5kPzogYm9vbGVhbjtcbiAgc2NoZWR1bGVTdHJpcGVJZD86IHN0cmluZztcbiAgY3JlYXRlZEF0PzogRGF0ZTtcbiAgdXBkYXRlZEF0PzogRGF0ZTtcbiAgdXNlcj86IFVzZXI7XG4gIHByb21vQ29kZT86IFNlcnZpY2VQcm9tb0NvZGU7XG4gIGl0ZW1zPzogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW1bXTtcbiAgcGF5bWVudHM/OiBTZXJ2aWNlUGF5bWVudFtdO1xufVxuIl19
@@ -70,6 +70,9 @@ export class AbstractForm extends UntypedFormGroup {
70
70
  */
71
71
  emitValues() {
72
72
  Object.values(this.controls).forEach((control) => {
73
+ if ([null, undefined].includes(control.value)) {
74
+ return;
75
+ }
73
76
  control.updateValueAndValidity({ onlySelf: false, emitEvent: true });
74
77
  });
75
78
  }
@@ -79,4 +82,4 @@ export class AbstractForm extends UntypedFormGroup {
79
82
  });
80
83
  }
81
84
  }
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9hYnN0cmFjdC5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBNkQsZ0JBQWdCLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxSCxPQUFPLEVBQUUsWUFBWSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQzs7OztHQUlHO0FBQ0gsTUFBTSxPQUFnQixZQUFvQixTQUFRLGdCQUFnQjtJQWtCaEUsWUFDRSxRQUEwQyxFQUMxQyxLQUFhLEVBQ2IsZUFBNkUsRUFDN0UsY0FBNkQ7UUFFN0QsS0FBSyxDQUFDLFFBQVEsRUFBRSxlQUFlLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFkbkQ7OztXQUdHO1FBQ0gsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUV6QixhQUFRLEdBQXdCLElBQUksWUFBWSxFQUFFLENBQUM7UUFTakQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDakQsZ0ZBQWdGO1FBQ2hGLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUE4QixDQUFDO1FBQzVELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUvQixJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7UUFFRCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsT0FBZSxFQUFFLEVBQUUsd0JBQWlDLEtBQUs7UUFDOUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2pDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxNQUFNLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3RFLE1BQU0sS0FBSyxHQUFVLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBRTFGLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFZLEVBQUUsT0FBd0IsRUFBRSxPQUFpQztRQUNsRixLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFekMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVEOzs7T0FHRztJQUNILG1CQUFtQixDQUFDLE9BQWUsRUFBRTtRQUNuQyxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDUixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUF3QixFQUFFLEVBQUU7WUFDaEUsT0FBTyxDQUFDLHNCQUFzQixDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN2RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQy9CLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEFic3RyYWN0Q29udHJvbE9wdGlvbnMsIEFzeW5jVmFsaWRhdG9yRm4sIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgaXNFcXVhbCBmcm9tICdsb2Rhc2gvaXNFcXVhbCc7XG5cbi8qKlxuICogQWJzdHJhY3QgZm9ybSBjbGFzc1xuICogQFRPRE8gcmVuYW1lIHRvIEFic3RyYWN0Rm9ybUdyb3VwXG4gKiBAVE9ETyBBbGV4IFRULTIxOTA6IHJlZmFjdG9yOiBjaGVjayBhbmQgaW1wcm92ZSBsb2dpY1xuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RGb3JtPE1vZGVsPiBleHRlbmRzIFVudHlwZWRGb3JtR3JvdXAge1xuICAvKipcbiAgICogSW5pdGlhbCBmb3JtIHZhbHVlIGZvciBjb21wYXJpc29uIHdpdGggY2hhbmdlcyB0byBjaGVjayBzYXZlZC91bnNhdmVkIHN0YXRlXG4gICAqL1xuICBpbml0aWFsVmFsdWU6IE1vZGVsO1xuXG4gIHByb3RlY3RlZCBtb2RlbENsYXNzOiBUeXBlPE1vZGVsPjtcbiAgbW9kZWw6IE1vZGVsO1xuICBzdWJtaXR0ZWQ6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEBUT0RPIEFsZXggYmFkIG5hbWUsIGl0J3MgYWxzbyBhYm91dCB1bmNoYW5nZWRcbiAgICogRmxhZyBkaXNwbGF5IGlmIHNvbWUgZm9ybSB2YWx1ZXMgY2hhbmdlZFxuICAgKi9cbiAgdW5zYXZlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG9uU3VibWl0OiBFdmVudEVtaXR0ZXI8TW9kZWw+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBjb250cm9sczoge1trZXk6IHN0cmluZ106IEFic3RyYWN0Q29udHJvbH0sXG4gICAgbW9kZWw/OiBNb2RlbCxcbiAgICB2YWxpZGF0b3JPck9wdHM/OiBWYWxpZGF0b3JGbiB8IFZhbGlkYXRvckZuW10gfCBBYnN0cmFjdENvbnRyb2xPcHRpb25zIHwgbnVsbCxcbiAgICBhc3luY1ZhbGlkYXRvcj86IEFzeW5jVmFsaWRhdG9yRm4gfCBBc3luY1ZhbGlkYXRvckZuW10gfCBudWxsXG4gICkge1xuICAgIHN1cGVyKGNvbnRyb2xzLCB2YWxpZGF0b3JPck9wdHMsIGFzeW5jVmFsaWRhdG9yKTtcbiAgICB0aGlzLm1vZGVsID0gbW9kZWwgfHwgdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKCk7XG4gICAgLy8gQFRPRE8gQWxleCBubyBpZGVhIGhvdyBpdCB3b3Jrcywgc2luY2UgbW9kZWxDbGFzcyB1c2VkIGluIGNyZWF0ZU1vZGVsSW5zdGFuY2VcbiAgICB0aGlzLm1vZGVsQ2xhc3MgPSB0aGlzLm1vZGVsLmNvbnN0cnVjdG9yIGFzIG5ldyAoKSA9PiBNb2RlbDtcbiAgICB0aGlzLmluaXRpYWxWYWx1ZSA9IHRoaXMudmFsdWU7XG5cbiAgICBpZiAobW9kZWwgJiYgIW1vZGVsWydpZCddKSB7XG4gICAgICB0aGlzLm1hcmtBc1Vuc2F2ZWQoKTtcbiAgICB9XG5cbiAgICB0aGlzLmxpc3RlblZhbHVlQ2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0IHNhdmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy51bnNhdmVkO1xuICB9XG5cbiAgZ2V0IGN1cnJlbnRWYWx1ZSgpOiBNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZShPYmplY3QuYXNzaWduKHt9LCB0aGlzLm1vZGVsLCB0aGlzLmdldFJhd1ZhbHVlKCkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB2YWxpZGF0aW9uIGFuZCByZXR1cm4gYSBuZXcgaW5zdGFuY2Ugb2YgZ2VuZXJpYyBtb2RlbC5cbiAgICogTWVyZ2UgZm9ybSB2YWx1ZSB0byBpbml0aWFsIG9iamVjdFxuICAgKiBAcGFyYW0gZGF0YSBBZGRpdGlvbmFsIGRhdGEgb2JqZWN0IHdoaWNoIGJlIG1lcmdlZCB0byBmb3JtIHZhbHVlXG4gICAqIEBwYXJhbSBpbmNsdWRlRGlzYWJsZWRGaWVsZHMgaWdub3JlIGRpc2FibGVkIGZpZWxkc1xuICAgKi9cbiAgc3VibWl0KGRhdGE6IG9iamVjdCA9IHt9LCBpbmNsdWRlRGlzYWJsZWRGaWVsZHM6IGJvb2xlYW4gPSBmYWxzZSk6IE1vZGVsIHtcbiAgICB0aGlzLnN1Ym1pdHRlZCA9IHRydWU7XG4gICAgdGhpcy5tYXJrQWxsQXNUb3VjaGVkKCk7XG5cbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQgJiYgIXRoaXMudmFsaWQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IHZhbHVlID0gaW5jbHVkZURpc2FibGVkRmllbGRzID8gdGhpcy5nZXRSYXdWYWx1ZSgpIDogdGhpcy52YWx1ZTtcbiAgICBjb25zdCBtb2RlbDogTW9kZWwgPSB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UoT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5tb2RlbCwgdmFsdWUsIGRhdGEpKTtcblxuICAgIHRoaXMub25TdWJtaXQuZW1pdChtb2RlbCk7XG4gICAgcmV0dXJuIG1vZGVsO1xuICB9XG5cbiAgYWRkQ29udHJvbChuYW1lOiBzdHJpbmcsIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCwgb3B0aW9ucz86IHsgZW1pdEV2ZW50PzogYm9vbGVhbiB9KTogdGhpcyB7XG4gICAgc3VwZXIuYWRkQ29udHJvbChuYW1lLCBjb250cm9sLCBvcHRpb25zKTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgbWFya0FzVW5zYXZlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc2F2ZWQgPSB0cnVlO1xuICB9XG5cbiAgbWFya0FzU2F2ZWQoKTogdm9pZCB7XG4gICAgdGhpcy51bnNhdmVkID0gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gdXNlIGV4Y2x1ZGVFeHRyYW5lb3VzVmFsdWVzIHdoZW4gYWxsIG1vZGVscyByZWZhY3RvcmVkIChleHBvc2VkIGFsbCBuZWVkZWQgcHJvcGVydGllcylcbiAgICogQHBhcmFtIGRhdGFcbiAgICovXG4gIGNyZWF0ZU1vZGVsSW5zdGFuY2UoZGF0YTogb2JqZWN0ID0ge30pOiBNb2RlbCB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyh0aGlzLm1vZGVsQ2xhc3MsIGRhdGEpO1xuICB9XG5cbiAgLyoqXG4gICAqIGVtaXQgY3VycmVudCBmb3JtIHZhbHVlc1xuICAgKi9cbiAgZW1pdFZhbHVlcygpOiB2b2lkIHtcbiAgICBPYmplY3QudmFsdWVzKHRoaXMuY29udHJvbHMpLmZvckVhY2goKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkgPT4ge1xuICAgICAgY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHsgb25seVNlbGY6IGZhbHNlLCBlbWl0RXZlbnQ6IHRydWUgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblZhbHVlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgISF0aGlzLm1vZGVsICYmICEhdGhpcy5tb2RlbFsnaWQnXSAmJiBpc0VxdWFsKHRoaXMudmFsdWUsIHRoaXMuaW5pdGlhbFZhbHVlKSA/IHRoaXMubWFya0FzU2F2ZWQoKSA6IHRoaXMubWFya0FzVW5zYXZlZCgpO1xuICAgIH0pXG4gIH1cbn1cbiJdfQ==
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9hYnN0cmFjdC5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBNkQsZ0JBQWdCLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxSCxPQUFPLEVBQUUsWUFBWSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQzs7OztHQUlHO0FBQ0gsTUFBTSxPQUFnQixZQUFvQixTQUFRLGdCQUFnQjtJQWtCaEUsWUFDRSxRQUEwQyxFQUMxQyxLQUFhLEVBQ2IsZUFBNkUsRUFDN0UsY0FBNkQ7UUFFN0QsS0FBSyxDQUFDLFFBQVEsRUFBRSxlQUFlLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFkbkQ7OztXQUdHO1FBQ0gsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUV6QixhQUFRLEdBQXdCLElBQUksWUFBWSxFQUFFLENBQUM7UUFTakQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDakQsZ0ZBQWdGO1FBQ2hGLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUE4QixDQUFDO1FBQzVELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUvQixJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7UUFFRCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsT0FBZSxFQUFFLEVBQUUsd0JBQWlDLEtBQUs7UUFDOUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2pDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxNQUFNLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3RFLE1BQU0sS0FBSyxHQUFVLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBRTFGLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFZLEVBQUUsT0FBd0IsRUFBRSxPQUFpQztRQUNsRixLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFekMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVEOzs7T0FHRztJQUNILG1CQUFtQixDQUFDLE9BQWUsRUFBRTtRQUNuQyxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDUixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUF3QixFQUFFLEVBQUU7WUFDaEUsSUFBSSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUM3QyxPQUFPO2FBQ1I7WUFFRCxPQUFPLENBQUMsc0JBQXNCLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzSCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgQWJzdHJhY3RDb250cm9sT3B0aW9ucywgQXN5bmNWYWxpZGF0b3JGbiwgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCBpc0VxdWFsIGZyb20gJ2xvZGFzaC9pc0VxdWFsJztcblxuLyoqXG4gKiBBYnN0cmFjdCBmb3JtIGNsYXNzXG4gKiBAVE9ETyByZW5hbWUgdG8gQWJzdHJhY3RGb3JtR3JvdXBcbiAqIEBUT0RPIEFsZXggVFQtMjE5MDogcmVmYWN0b3I6IGNoZWNrIGFuZCBpbXByb3ZlIGxvZ2ljXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdEZvcm08TW9kZWw+IGV4dGVuZHMgVW50eXBlZEZvcm1Hcm91cCB7XG4gIC8qKlxuICAgKiBJbml0aWFsIGZvcm0gdmFsdWUgZm9yIGNvbXBhcmlzb24gd2l0aCBjaGFuZ2VzIHRvIGNoZWNrIHNhdmVkL3Vuc2F2ZWQgc3RhdGVcbiAgICovXG4gIGluaXRpYWxWYWx1ZTogTW9kZWw7XG5cbiAgcHJvdGVjdGVkIG1vZGVsQ2xhc3M6IFR5cGU8TW9kZWw+O1xuICBtb2RlbDogTW9kZWw7XG4gIHN1Ym1pdHRlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogQFRPRE8gQWxleCBiYWQgbmFtZSwgaXQncyBhbHNvIGFib3V0IHVuY2hhbmdlZFxuICAgKiBGbGFnIGRpc3BsYXkgaWYgc29tZSBmb3JtIHZhbHVlcyBjaGFuZ2VkXG4gICAqL1xuICB1bnNhdmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgb25TdWJtaXQ6IEV2ZW50RW1pdHRlcjxNb2RlbD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIGNvbnRyb2xzOiB7W2tleTogc3RyaW5nXTogQWJzdHJhY3RDb250cm9sfSxcbiAgICBtb2RlbD86IE1vZGVsLFxuICAgIHZhbGlkYXRvck9yT3B0cz86IFZhbGlkYXRvckZuIHwgVmFsaWRhdG9yRm5bXSB8IEFic3RyYWN0Q29udHJvbE9wdGlvbnMgfCBudWxsLFxuICAgIGFzeW5jVmFsaWRhdG9yPzogQXN5bmNWYWxpZGF0b3JGbiB8IEFzeW5jVmFsaWRhdG9yRm5bXSB8IG51bGxcbiAgKSB7XG4gICAgc3VwZXIoY29udHJvbHMsIHZhbGlkYXRvck9yT3B0cywgYXN5bmNWYWxpZGF0b3IpO1xuICAgIHRoaXMubW9kZWwgPSBtb2RlbCB8fCB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UoKTtcbiAgICAvLyBAVE9ETyBBbGV4IG5vIGlkZWEgaG93IGl0IHdvcmtzLCBzaW5jZSBtb2RlbENsYXNzIHVzZWQgaW4gY3JlYXRlTW9kZWxJbnN0YW5jZVxuICAgIHRoaXMubW9kZWxDbGFzcyA9IHRoaXMubW9kZWwuY29uc3RydWN0b3IgYXMgbmV3ICgpID0+IE1vZGVsO1xuICAgIHRoaXMuaW5pdGlhbFZhbHVlID0gdGhpcy52YWx1ZTtcblxuICAgIGlmIChtb2RlbCAmJiAhbW9kZWxbJ2lkJ10pIHtcbiAgICAgIHRoaXMubWFya0FzVW5zYXZlZCgpO1xuICAgIH1cblxuICAgIHRoaXMubGlzdGVuVmFsdWVDaGFuZ2VzKCk7XG4gIH1cblxuICBnZXQgc2F2ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLnVuc2F2ZWQ7XG4gIH1cblxuICBnZXQgY3VycmVudFZhbHVlKCk6IE1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKE9iamVjdC5hc3NpZ24oe30sIHRoaXMubW9kZWwsIHRoaXMuZ2V0UmF3VmFsdWUoKSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHZhbGlkYXRpb24gYW5kIHJldHVybiBhIG5ldyBpbnN0YW5jZSBvZiBnZW5lcmljIG1vZGVsLlxuICAgKiBNZXJnZSBmb3JtIHZhbHVlIHRvIGluaXRpYWwgb2JqZWN0XG4gICAqIEBwYXJhbSBkYXRhIEFkZGl0aW9uYWwgZGF0YSBvYmplY3Qgd2hpY2ggYmUgbWVyZ2VkIHRvIGZvcm0gdmFsdWVcbiAgICogQHBhcmFtIGluY2x1ZGVEaXNhYmxlZEZpZWxkcyBpZ25vcmUgZGlzYWJsZWQgZmllbGRzXG4gICAqL1xuICBzdWJtaXQoZGF0YTogb2JqZWN0ID0ge30sIGluY2x1ZGVEaXNhYmxlZEZpZWxkczogYm9vbGVhbiA9IGZhbHNlKTogTW9kZWwge1xuICAgIHRoaXMuc3VibWl0dGVkID0gdHJ1ZTtcbiAgICB0aGlzLm1hcmtBbGxBc1RvdWNoZWQoKTtcblxuICAgIGlmICghdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy52YWxpZCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBpbmNsdWRlRGlzYWJsZWRGaWVsZHMgPyB0aGlzLmdldFJhd1ZhbHVlKCkgOiB0aGlzLnZhbHVlO1xuICAgIGNvbnN0IG1vZGVsOiBNb2RlbCA9IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZShPYmplY3QuYXNzaWduKHt9LCB0aGlzLm1vZGVsLCB2YWx1ZSwgZGF0YSkpO1xuXG4gICAgdGhpcy5vblN1Ym1pdC5lbWl0KG1vZGVsKTtcbiAgICByZXR1cm4gbW9kZWw7XG4gIH1cblxuICBhZGRDb250cm9sKG5hbWU6IHN0cmluZywgY29udHJvbDogQWJzdHJhY3RDb250cm9sLCBvcHRpb25zPzogeyBlbWl0RXZlbnQ/OiBib29sZWFuIH0pOiB0aGlzIHtcbiAgICBzdXBlci5hZGRDb250cm9sKG5hbWUsIGNvbnRyb2wsIG9wdGlvbnMpO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBtYXJrQXNVbnNhdmVkKCk6IHZvaWQge1xuICAgIHRoaXMudW5zYXZlZCA9IHRydWU7XG4gIH1cblxuICBtYXJrQXNTYXZlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc2F2ZWQgPSBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyB1c2UgZXhjbHVkZUV4dHJhbmVvdXNWYWx1ZXMgd2hlbiBhbGwgbW9kZWxzIHJlZmFjdG9yZWQgKGV4cG9zZWQgYWxsIG5lZWRlZCBwcm9wZXJ0aWVzKVxuICAgKiBAcGFyYW0gZGF0YVxuICAgKi9cbiAgY3JlYXRlTW9kZWxJbnN0YW5jZShkYXRhOiBvYmplY3QgPSB7fSk6IE1vZGVsIHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKHRoaXMubW9kZWxDbGFzcywgZGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogZW1pdCBjdXJyZW50IGZvcm0gdmFsdWVzXG4gICAqL1xuICBlbWl0VmFsdWVzKCk6IHZvaWQge1xuICAgIE9iamVjdC52YWx1ZXModGhpcy5jb250cm9scykuZm9yRWFjaCgoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgICBpZiAoW251bGwsIHVuZGVmaW5lZF0uaW5jbHVkZXMoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoeyBvbmx5U2VsZjogZmFsc2UsIGVtaXRFdmVudDogdHJ1ZSB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVmFsdWVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAhIXRoaXMubW9kZWwgJiYgISF0aGlzLm1vZGVsWydpZCddICYmIGlzRXF1YWwodGhpcy52YWx1ZSwgdGhpcy5pbml0aWFsVmFsdWUpID8gdGhpcy5tYXJrQXNTYXZlZCgpIDogdGhpcy5tYXJrQXNVbnNhdmVkKCk7XG4gICAgfSlcbiAgfVxufVxuIl19
@@ -1,5 +1,8 @@
1
1
  import { UntypedFormControl, Validators } from '@angular/forms';
2
2
  import { AbstractForm } from '../abstract.form';
3
+ import { combineLatest } from 'rxjs';
4
+ import moment from 'moment';
5
+ import round from 'lodash/round';
3
6
  export class HoldingSaleForm extends AbstractForm {
4
7
  constructor(sale, holding, type) {
5
8
  super({
@@ -12,31 +15,36 @@ export class HoldingSaleForm extends AbstractForm {
12
15
  file: new UntypedFormControl(sale.file)
13
16
  }, sale);
14
17
  this.holding = holding;
15
- if (sale.id) {
16
- this.emitValues();
17
- }
18
18
  this.listenEvents();
19
+ this.emitValues();
19
20
  }
20
21
  listenEvents() {
21
- this.listenQuantityChanges();
22
- this.listenPriceChanges();
22
+ combineLatest(['date', 'price', 'quantity', 'fee'].map((field) => this.get(field).valueChanges))
23
+ .subscribe(([date, price, quantity, fee]) => {
24
+ this.updateGainFields(date, price, quantity, fee);
25
+ });
23
26
  }
24
27
  submit() {
25
28
  return super.submit({}, true);
26
29
  }
27
- listenQuantityChanges() {
28
- this.get('quantity').valueChanges.subscribe(() => {
29
- this.updateGainFields();
30
- });
30
+ updateGainFields(date, price, quantity, fee) {
31
+ const capitalGain = this.calculateGrossCapitalGain(price, quantity, fee);
32
+ this.get('grossCapitalGain').setValue(capitalGain);
33
+ this.get('netCapitalGain').setValue(this.calculateNetCapitalGain(capitalGain, date));
31
34
  }
32
- listenPriceChanges() {
33
- this.get('price').valueChanges.subscribe(() => {
34
- this.updateGainFields();
35
- });
35
+ calculateGrossCapitalGain(price, quantity, fee) {
36
+ const capitalGain = (price - this.holding.price) * quantity - this.holding.fee - fee;
37
+ return capitalGain < 0 ? 0 : capitalGain;
38
+ }
39
+ calculateNetCapitalGain(capitalGain, date) {
40
+ let netCapitalGain = (capitalGain * this.holding.ownershipPercent) / 100;
41
+ if (this.isOneYearExemptionApplicable(netCapitalGain, date)) {
42
+ netCapitalGain = netCapitalGain / 2;
43
+ }
44
+ return round(netCapitalGain, 2);
36
45
  }
37
- updateGainFields() {
38
- this.get('grossCapitalGain').setValue(this.currentValue.getCapitalGain(this.holding));
39
- this.get('netCapitalGain').setValue(this.currentValue.getNetCapitalGain(this.holding));
46
+ isOneYearExemptionApplicable(netCapitalGain, date) {
47
+ return netCapitalGain > 0 && moment(date).diff(moment(this.holding.date), 'year') > 0;
40
48
  }
41
49
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9sZGluZy1zYWxlLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvaG9sZGluZy9ob2xkaW5nLXNhbGUuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWhELE1BQU0sT0FBTyxlQUFnQixTQUFRLFlBQXlCO0lBQzVELFlBQ0UsSUFBaUIsRUFDVCxPQUFnQixFQUN4QixJQUFpQjtRQUVqQixLQUFLLENBQUM7WUFDSixRQUFRLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1lBQy9HLEtBQUssRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzVFLEdBQUcsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUMxRCxJQUFJLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDNUQsZ0JBQWdCLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxFQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO1lBQ3hGLGNBQWMsRUFBRSxJQUFJLGtCQUFrQixDQUFDLEVBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDO1lBQ3BGLElBQUksRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDeEMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQVhELFlBQU8sR0FBUCxPQUFPLENBQVM7UUFheEIsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ1gsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO1FBRUQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUMvQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUM1QyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUN0RixJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEhvbGRpbmcsIEhvbGRpbmdTYWxlLCBIb2xkaW5nVHlwZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBBYnN0cmFjdEZvcm0gfSBmcm9tICcuLi9hYnN0cmFjdC5mb3JtJztcblxuZXhwb3J0IGNsYXNzIEhvbGRpbmdTYWxlRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxIb2xkaW5nU2FsZT4gaW1wbGVtZW50cyBJRXZlbnRMaXN0ZW5lciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHNhbGU6IEhvbGRpbmdTYWxlLFxuICAgIHByaXZhdGUgaG9sZGluZzogSG9sZGluZyxcbiAgICB0eXBlOiBIb2xkaW5nVHlwZVxuICApIHtcbiAgICBzdXBlcih7XG4gICAgICBxdWFudGl0eTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChzYWxlLnF1YW50aXR5LCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXgoaG9sZGluZy5jdXJyZW50UXVhbnRpdHkpXSksXG4gICAgICBwcmljZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChzYWxlLnByaWNlIHx8IHR5cGUucHJpY2UsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgZmVlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHNhbGUuZmVlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGRhdGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woc2FsZS5kYXRlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGdyb3NzQ2FwaXRhbEdhaW46IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woe3ZhbHVlOiBzYWxlLmdyb3NzQ2FwaXRhbEdhaW4sIGRpc2FibGVkOiB0cnVlfSksXG4gICAgICBuZXRDYXBpdGFsR2FpbjogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7dmFsdWU6IHNhbGUubmV0Q2FwaXRhbEdhaW4sIGRpc2FibGVkOiB0cnVlfSksXG4gICAgICBmaWxlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHNhbGUuZmlsZSlcbiAgICB9LCBzYWxlKTtcblxuICAgIGlmIChzYWxlLmlkKSB7XG4gICAgICB0aGlzLmVtaXRWYWx1ZXMoKTtcbiAgICB9XG5cbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuUXVhbnRpdHlDaGFuZ2VzKCk7XG4gICAgdGhpcy5saXN0ZW5QcmljZUNoYW5nZXMoKTtcbiAgfVxuXG4gIHN1Ym1pdCgpOiBIb2xkaW5nU2FsZSB7XG4gICAgcmV0dXJuIHN1cGVyLnN1Ym1pdCh7fSwgdHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblF1YW50aXR5Q2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmdldCgncXVhbnRpdHknKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlR2FpbkZpZWxkcygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5QcmljZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5nZXQoJ3ByaWNlJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUdhaW5GaWVsZHMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlR2FpbkZpZWxkcygpOiB2b2lkIHtcbiAgICB0aGlzLmdldCgnZ3Jvc3NDYXBpdGFsR2FpbicpLnNldFZhbHVlKHRoaXMuY3VycmVudFZhbHVlLmdldENhcGl0YWxHYWluKHRoaXMuaG9sZGluZykpO1xuICAgIHRoaXMuZ2V0KCduZXRDYXBpdGFsR2FpbicpLnNldFZhbHVlKHRoaXMuY3VycmVudFZhbHVlLmdldE5ldENhcGl0YWxHYWluKHRoaXMuaG9sZGluZykpO1xuICB9XG59Il19
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9sZGluZy1zYWxlLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvaG9sZGluZy9ob2xkaW5nLXNhbGUuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUVqQyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxZQUF5QjtJQUM1RCxZQUFZLElBQWlCLEVBQVUsT0FBZ0IsRUFBRSxJQUFpQjtRQUN4RSxLQUFLLENBQUM7WUFDSixRQUFRLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1lBQy9HLEtBQUssRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzVFLEdBQUcsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUMxRCxJQUFJLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDNUQsZ0JBQWdCLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxFQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUs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bmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBIb2xkaW5nLCBIb2xkaW5nU2FsZSwgSG9sZGluZ1R5cGUgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgcm91bmQgZnJvbSAnbG9kYXNoL3JvdW5kJztcblxuZXhwb3J0IGNsYXNzIEhvbGRpbmdTYWxlRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxIb2xkaW5nU2FsZT4gaW1wbGVtZW50cyBJRXZlbnRMaXN0ZW5lciB7XG4gIGNvbnN0cnVjdG9yKHNhbGU6IEhvbGRpbmdTYWxlLCBwcml2YXRlIGhvbGRpbmc6IEhvbGRpbmcsIHR5cGU6IEhvbGRpbmdUeXBlKSB7XG4gICAgc3VwZXIoe1xuICAgICAgcXVhbnRpdHk6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woc2FsZS5xdWFudGl0eSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4KGhvbGRpbmcuY3VycmVudFF1YW50aXR5KV0pLFxuICAgICAgcHJpY2U6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woc2FsZS5wcmljZSB8fCB0eXBlLnByaWNlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGZlZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChzYWxlLmZlZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBkYXRlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHNhbGUuZGF0ZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBncm9zc0NhcGl0YWxHYWluOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHt2YWx1ZTogc2FsZS5ncm9zc0NhcGl0YWxHYWluLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgICAgbmV0Q2FwaXRhbEdhaW46IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woe3ZhbHVlOiBzYWxlLm5ldENhcGl0YWxHYWluLCBkaXNhYmxlZDogdHJ1ZX0pLFxuICAgICAgZmlsZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChzYWxlLmZpbGUpXG4gICAgfSwgc2FsZSk7XG5cbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICAgIHRoaXMuZW1pdFZhbHVlcygpO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIGNvbWJpbmVMYXRlc3QoWydkYXRlJywgJ3ByaWNlJywgJ3F1YW50aXR5JywgJ2ZlZSddLm1hcCgoZmllbGQpID0+IHRoaXMuZ2V0KGZpZWxkKS52YWx1ZUNoYW5nZXMpKVxuICAgICAgLnN1YnNjcmliZSgoW2RhdGUsIHByaWNlLCBxdWFudGl0eSwgZmVlXSkgPT4ge1xuICAgICAgICB0aGlzLnVwZGF0ZUdhaW5GaWVsZHMoZGF0ZSwgcHJpY2UsIHF1YW50aXR5LCBmZWUpO1xuICAgICAgfSk7XG4gIH1cblxuICBzdWJtaXQoKTogSG9sZGluZ1NhbGUge1xuICAgIHJldHVybiBzdXBlci5zdWJtaXQoe30sIHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVHYWluRmllbGRzKGRhdGU6IERhdGUsIHByaWNlOiBudW1iZXIsIHF1YW50aXR5OiBudW1iZXIsIGZlZTogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgY2FwaXRhbEdhaW4gPSB0aGlzLmNhbGN1bGF0ZUdyb3NzQ2FwaXRhbEdhaW4ocHJpY2UsIHF1YW50aXR5LCBmZWUpO1xuXG4gICAgdGhpcy5nZXQoJ2dyb3NzQ2FwaXRhbEdhaW4nKS5zZXRWYWx1ZShjYXBpdGFsR2Fpbik7XG4gICAgdGhpcy5nZXQoJ25ldENhcGl0YWxHYWluJykuc2V0VmFsdWUodGhpcy5jYWxjdWxhdGVOZXRDYXBpdGFsR2FpbihjYXBpdGFsR2FpbiwgZGF0ZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBjYWxjdWxhdGVHcm9zc0NhcGl0YWxHYWluKHByaWNlOiBudW1iZXIsIHF1YW50aXR5OiBudW1iZXIsIGZlZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBjb25zdCBjYXBpdGFsR2FpbiA9ICAocHJpY2UgLSB0aGlzLmhvbGRpbmcucHJpY2UpICogcXVhbnRpdHkgLSB0aGlzLmhvbGRpbmcuZmVlIC0gZmVlO1xuXG4gICAgcmV0dXJuIGNhcGl0YWxHYWluIDwgMCA/IDAgOiBjYXBpdGFsR2FpbjtcbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlTmV0Q2FwaXRhbEdhaW4oY2FwaXRhbEdhaW46IG51bWJlciwgZGF0ZTogRGF0ZSk6IG51bWJlciB7XG4gICAgbGV0IG5ldENhcGl0YWxHYWluID0gKGNhcGl0YWxHYWluICogdGhpcy5ob2xkaW5nLm93bmVyc2hpcFBlcmNlbnQpIC8gMTAwO1xuXG4gICAgaWYgKHRoaXMuaXNPbmVZZWFyRXhlbXB0aW9uQXBwbGljYWJsZShuZXRDYXBpdGFsR2FpbiwgZGF0ZSkpIHtcbiAgICAgIG5ldENhcGl0YWxHYWluID0gbmV0Q2FwaXRhbEdhaW4gLyAyO1xuICAgIH1cblxuICAgIHJldHVybiByb3VuZChuZXRDYXBpdGFsR2FpbiwgMik7XG4gIH1cblxuICBwcml2YXRlIGlzT25lWWVhckV4ZW1wdGlvbkFwcGxpY2FibGUobmV0Q2FwaXRhbEdhaW46IG51bWJlciwgZGF0ZTogRGF0ZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBuZXRDYXBpdGFsR2FpbiA+IDAgJiYgbW9tZW50KGRhdGUpLmRpZmYobW9tZW50KHRoaXMuaG9sZGluZy5kYXRlKSwgJ3llYXInKSA+IDA7XG4gIH1cbn1cbiJdfQ==
@@ -23,9 +23,9 @@ export class BasiqClientIdInterceptor {
23
23
  });
24
24
  }
25
25
  }
26
- BasiqClientIdInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: BasiqClientIdInterceptor, deps: [{ token: i1.UserService }], target: i0.ɵɵFactoryTarget.Injectable });
27
- BasiqClientIdInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: BasiqClientIdInterceptor });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: BasiqClientIdInterceptor, decorators: [{
26
+ BasiqClientIdInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BasiqClientIdInterceptor, deps: [{ token: i1.UserService }], target: i0.ɵɵFactoryTarget.Injectable });
27
+ BasiqClientIdInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BasiqClientIdInterceptor });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BasiqClientIdInterceptor, decorators: [{
29
29
  type: Injectable
30
30
  }], ctorParameters: function () { return [{ type: i1.UserService }]; } });
31
31
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaXEtY2xpZW50LWlkLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2ludGVyY2VwdG9ycy9iYXNpcS1jbGllbnQtaWQuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7QUFHekU7O0dBRUc7QUFFSCxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DLFlBQ1UsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFFbEMsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUE2QixFQUFFLElBQWlCO1FBQ3hELCtEQUErRDtRQUMvRCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxZQUFZLENBQUMsV0FBVyxhQUFhLENBQUMsRUFBRTtZQUNyRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUE7U0FDNUI7UUFFRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUN4QyxRQUFRLENBQUMsQ0FBQyxhQUFxQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FDckYsQ0FBQztJQUNKLENBQUM7SUFFTyxLQUFLLENBQUMsT0FBNkIsRUFBRSxhQUFxQjtRQUNoRSxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDbkIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUM7U0FDaEQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7cUhBckJVLHdCQUF3Qjt5SEFBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwUmVxdWVzdCwgSHR0cEhhbmRsZXIsIEh0dHBFdmVudCwgSHR0cEludGVyY2VwdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWVyZ2VNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYXNpcVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9odHRwL2JhbmsvYmFzaXEvYmFzaXEuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2h0dHAvdXNlci91c2VyLnNlcnZpY2UnO1xuXG4vKipcbiAqIEludGVyY2VwdG9yIHdoaWNoIGNoZWNrIGlmIGNsaWVudCdzIGJhc2lxIGlkIGV4aXN0IGFuZCByZXF1ZXN0IGl0IGlmIG5vdFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQmFzaXFDbGllbnRJZEludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+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: "15.2.4", ngImport: i0, type: BasiqTokenInterceptor, deps: [{ token: i1.BasiqTokenService }], target: i0.ɵɵFactoryTarget.Injectable });
31
- BasiqTokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: BasiqTokenInterceptor });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: BasiqTokenInterceptor, decorators: [{
30
+ BasiqTokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BasiqTokenInterceptor, deps: [{ token: i1.BasiqTokenService }], target: i0.ɵɵFactoryTarget.Injectable });
31
+ BasiqTokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BasiqTokenInterceptor });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BasiqTokenInterceptor, decorators: [{
33
33
  type: Injectable
34
34
  }], ctorParameters: function () { return [{ type: i1.BasiqTokenService }]; } });
35
35
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaXEtdG9rZW4uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvaW50ZXJjZXB0b3JzL2Jhc2lxLXRva2VuLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7O0FBRXpFOztHQUVHO0FBRUgsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxZQUNVLGlCQUFvQztRQUFwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO0lBRTlDLENBQUM7SUFFRCxTQUFTLENBQUMsT0FBNkIsRUFBRSxJQUFpQjtRQUN4RCwwQkFBMEI7UUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNuRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDN0I7UUFFRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQzVDLFFBQVEsQ0FBQyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtZQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQTtRQUNuRCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVPLFFBQVEsQ0FBQyxPQUE2QixFQUFFLEtBQWlCO1FBQy9ELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQztZQUNuQixVQUFVLEVBQUU7Z0JBQ1YsYUFBYSxFQUFFLFNBQVMsR0FBRyxLQUFLLENBQUMsS0FBSzthQUN2QztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O2tIQTFCVSxxQkFBcUI7c0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cFJlcXVlc3QsIEh0dHBIYW5kbGVyLCBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQmFzaXFUb2tlbiB9IGZyb20gJy4uL21vZGVscy9iYW5rL2Jhc2lxL2Jhc2lxLXRva2VuJztcbmltcG9ydCB7IEJhc2lxVG9rZW5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaHR0cC9iYW5rL2Jhc2lxL2Jhc2lxLXRva2VuLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmFzaXFTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaHR0cC9iYW5rL2Jhc2lxL2Jhc2lxLnNlcnZpY2UnO1xuXG4vKipcbiAqIEludGVyY2VwdG9yIHdoaWNoIGFkZHMgdXNlcidzIGJhc2lxIHRva2VuIHRvIGFueSBodHRwIHJlcXVlc3QgdG8gYmFzaXEgYXBpXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCYXNpcVRva2VuSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYmFzaXFUb2tlblNlcnZpY2U6IEJhc2lxVG9rZW5TZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+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: "15.2.4", ngImport: i0, type: CorelogicInterceptor, deps: [{ token: i1.CorelogicService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
36
- CorelogicInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: CorelogicInterceptor });
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: CorelogicInterceptor, decorators: [{
35
+ CorelogicInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: CorelogicInterceptor, deps: [{ token: i1.CorelogicService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
36
+ CorelogicInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: CorelogicInterceptor });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", 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: "15.2.4", ngImport: i0, type: FinancialYearInterceptor, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
35
- FinancialYearInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: FinancialYearInterceptor });
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: FinancialYearInterceptor, decorators: [{
34
+ FinancialYearInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: FinancialYearInterceptor, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
35
+ FinancialYearInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: FinancialYearInterceptor });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", 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: "15.2.4", ngImport: i0, type: InterceptorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
- InterceptorsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.4", ngImport: i0, type: InterceptorsModule });
15
- InterceptorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: InterceptorsModule, providers: [
13
+ InterceptorsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: InterceptorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ InterceptorsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.5", ngImport: i0, type: InterceptorsModule });
15
+ InterceptorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.5", 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: "15.2.4", ngImport: i0, type: InterceptorsModule, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: InterceptorsModule, decorators: [{
54
54
  type: NgModule,
55
55
  args: [{
56
56
  providers: [
@@ -130,9 +130,9 @@ export class JwtInterceptor {
130
130
  });
131
131
  }
132
132
  }
133
- JwtInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: JwtInterceptor, deps: [{ token: i1.JwtService }, { token: i2.AuthService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
134
- JwtInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: JwtInterceptor });
135
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: JwtInterceptor, decorators: [{
133
+ JwtInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: JwtInterceptor, deps: [{ token: i1.JwtService }, { token: i2.AuthService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
134
+ JwtInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: JwtInterceptor });
135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: JwtInterceptor, decorators: [{
136
136
  type: Injectable
137
137
  }], ctorParameters: function () { return [{ type: i1.JwtService }, { type: i2.AuthService }, { type: undefined, decorators: [{
138
138
  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: "15.2.4", ngImport: i0, type: PreloaderInterceptor, deps: [{ token: i1.PreloaderService }], target: i0.ɵɵFactoryTarget.Injectable });
28
- PreloaderInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: PreloaderInterceptor });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: PreloaderInterceptor, decorators: [{
27
+ PreloaderInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: PreloaderInterceptor, deps: [{ token: i1.PreloaderService }], target: i0.ɵɵFactoryTarget.Injectable });
28
+ PreloaderInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: PreloaderInterceptor });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: PreloaderInterceptor, decorators: [{
30
30
  type: Injectable
31
31
  }], ctorParameters: function () { return [{ type: i1.PreloaderService }]; } });
32
32
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlbG9hZGVyLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2ludGVyY2VwdG9ycy9wcmVsb2FkZXIuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVEzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7QUFFL0Q7O0dBRUc7QUFFSCxNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLFlBQ1UsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFDekMsQ0FBQztJQUVKLFNBQVMsQ0FBQyxPQUE2QixFQUFFLElBQWlCO1FBQ3hELE1BQU0sUUFBUSxHQUFhLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ2pGLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUNkLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFcEMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDOUIsUUFBUSxDQUFDLEdBQVMsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6QyxDQUFDLENBQUMsQ0FDSCxDQUFDO1NBQ0g7UUFFRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVPLFlBQVksQ0FBQyxXQUFtQjtRQUN0QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBa0IsRUFBVyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7O2lIQXZCVSxvQkFBb0I7cUhBQXBCLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSHR0cFJlcXVlc3QsXG4gIEh0dHBIYW5kbGVyLFxuICBIdHRwRXZlbnQsXG4gIEh0dHBJbnRlcmNlcHRvclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFByZWxvYWRlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wcmVsb2FkZXIvcHJlbG9hZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRW5kcG9pbnQgfSBmcm9tICcuLi9tb2RlbHMvZW5kcG9pbnQvZW5kcG9pbnQnO1xuaW1wb3J0IHsgRU5EUE9JTlRTIH0gZnJvbSAnLi4vbW9kZWxzL2VuZHBvaW50L2VuZHBvaW50cy5jb25zdCc7XG5cbi8qKlxuICogaW50ZXJjZXB0b3IgZm9yIHByZWxvYWRlciBoYW5kbGluZ1xuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUHJlbG9hZGVySW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHJlbG9hZGVyU2VydmljZTogUHJlbG9hZGVyU2VydmljZVxuICApIHt9XG5cbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+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: "15.2.4", ngImport: i0, type: UserSwitcherInterceptor, deps: [{ token: i1.UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
45
- UserSwitcherInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: UserSwitcherInterceptor });
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: UserSwitcherInterceptor, decorators: [{
44
+ UserSwitcherInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: UserSwitcherInterceptor, deps: [{ token: i1.UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
45
+ UserSwitcherInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: UserSwitcherInterceptor });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: UserSwitcherInterceptor, decorators: [{
47
47
  type: Injectable
48
48
  }], ctorParameters: function () { return [{ type: i1.UserSwitcherService }, { type: undefined, decorators: [{
49
49
  type: Inject,
@@ -3,20 +3,6 @@ import { Transform, Type } from 'class-transformer';
3
3
  import { AppFile } from '../file';
4
4
  import { AbstractModel } from '../../db/Models';
5
5
  export class HoldingSale extends AbstractModel {
6
- getCapitalGain(holding) {
7
- if (!this.price || !this.holding) {
8
- return 0;
9
- }
10
- return (this.price - holding.price) * this.quantity;
11
- }
12
- getNetCapitalGain(holding) {
13
- const capitalGain = this.getCapitalGain(holding);
14
- // 50% discount for holdings purchased over a year ago
15
- if (holding.heldMoreYear()) {
16
- return capitalGain / 2;
17
- }
18
- return capitalGain;
19
- }
20
6
  }
21
7
  __decorate([
22
8
  Transform(({ value }) => { return { id: value.id }; }, { toPlainOnly: true })
@@ -27,4 +13,4 @@ __decorate([
27
13
  __decorate([
28
14
  Type(() => AppFile)
29
15
  ], HoldingSale.prototype, "file", void 0);
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9sZGluZy1zYWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9ob2xkaW5nL2hvbGRpbmctc2FsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVwRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUU5QyxNQUFNLE9BQU8sV0FBWSxTQUFRLGFBQWE7SUFrQjVDLGNBQWMsQ0FBQyxPQUFnQjtRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEMsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUVELE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3RELENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxPQUFnQjtRQUNoQyxNQUFNLFdBQVcsR0FBVyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpELHNEQUFzRDtRQUN0RCxJQUFJLE9BQU8sQ0FBQyxZQUFZLEVBQUUsRUFBRTtZQUMxQixPQUFPLFdBQVcsR0FBRyxDQUFDLENBQUM7U0FDeEI7UUFFRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0NBQ0Y7QUExQkE7SUFERSxTQUFTLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsR0FBRSxPQUFPLEVBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUMsQ0FBQSxDQUFBLENBQUMsRUFBRSxFQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUMsQ0FBQzs0Q0FDcEQ7QUFHbEI7SUFERSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNQO0FBR1Y7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDO3lDQUNOIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHtIb2xkaW5nfSBmcm9tICcuL2hvbGRpbmcnO1xuaW1wb3J0IHtBcHBGaWxlfSBmcm9tICcuLi9maWxlJztcbmltcG9ydCB7QWJzdHJhY3RNb2RlbH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzJztcblxuZXhwb3J0IGNsYXNzIEhvbGRpbmdTYWxlIGV4dGVuZHMgQWJzdHJhY3RNb2RlbCB7XG5cdHF1YW50aXR5OiBudW1iZXI7XG5cdHByaWNlOiBudW1iZXI7XG5cdGZlZTogbnVtYmVyO1xuXHR0b3RhbDogbnVtYmVyO1xuXHR0b3RhbENhcGl0YWxHYWluOiBudW1iZXI7XG5cdGdyb3NzQ2FwaXRhbEdhaW46IG51bWJlcjtcblx0bmV0Q2FwaXRhbEdhaW46IG51bWJlcjtcblxuICBAVHJhbnNmb3JtKCh7dmFsdWV9KSA9PiB7cmV0dXJuIHtpZDogdmFsdWUuaWR9fSwge3RvUGxhaW5Pbmx5OiB0cnVlfSlcblx0aG9sZGluZz86IEhvbGRpbmc7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcblx0ZGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBBcHBGaWxlKVxuICBmaWxlOiBBcHBGaWxlO1xuXG4gIGdldENhcGl0YWxHYWluKGhvbGRpbmc6IEhvbGRpbmcpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5wcmljZSB8fCAhdGhpcy5ob2xkaW5nKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gKHRoaXMucHJpY2UgLSBob2xkaW5nLnByaWNlKSAqIHRoaXMucXVhbnRpdHk7XG4gIH1cblxuICBnZXROZXRDYXBpdGFsR2Fpbihob2xkaW5nOiBIb2xkaW5nKTogbnVtYmVyIHtcbiAgICBjb25zdCBjYXBpdGFsR2FpbjogbnVtYmVyID0gdGhpcy5nZXRDYXBpdGFsR2Fpbihob2xkaW5nKTtcblxuICAgIC8vIDUwJSBkaXNjb3VudCBmb3IgaG9sZGluZ3MgcHVyY2hhc2VkIG92ZXIgYSB5ZWFyIGFnb1xuICAgIGlmIChob2xkaW5nLmhlbGRNb3JlWWVhcigpKSB7XG4gICAgICByZXR1cm4gY2FwaXRhbEdhaW4gLyAyO1xuICAgIH1cblxuICAgIHJldHVybiBjYXBpdGFsR2FpbjtcbiAgfVxufVxuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9sZGluZy1zYWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9ob2xkaW5nL2hvbGRpbmctc2FsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVwRCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUU5QyxNQUFNLE9BQU8sV0FBWSxTQUFRLGFBQWE7Q0FpQjdDO0FBUEE7SUFERSxTQUFTLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsR0FBRSxPQUFPLEVBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUMsQ0FBQSxDQUFBLENBQUMsRUFBRSxFQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUMsQ0FBQzs0Q0FDcEQ7QUFHbEI7SUFERSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNQO0FBR1Y7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDO3lDQUNOIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHtIb2xkaW5nfSBmcm9tICcuL2hvbGRpbmcnO1xuaW1wb3J0IHtBcHBGaWxlfSBmcm9tICcuLi9maWxlJztcbmltcG9ydCB7QWJzdHJhY3RNb2RlbH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzJztcblxuZXhwb3J0IGNsYXNzIEhvbGRpbmdTYWxlIGV4dGVuZHMgQWJzdHJhY3RNb2RlbCB7XG5cdHF1YW50aXR5OiBudW1iZXI7XG5cdHByaWNlOiBudW1iZXI7XG5cdGZlZTogbnVtYmVyO1xuXHR0b3RhbDogbnVtYmVyO1xuXHR0b3RhbENhcGl0YWxHYWluOiBudW1iZXI7XG5cdGdyb3NzQ2FwaXRhbEdhaW46IG51bWJlcjtcblx0bmV0Q2FwaXRhbEdhaW46IG51bWJlcjtcblxuICBAVHJhbnNmb3JtKCh7dmFsdWV9KSA9PiB7cmV0dXJuIHtpZDogdmFsdWUuaWR9fSwge3RvUGxhaW5Pbmx5OiB0cnVlfSlcblx0aG9sZGluZz86IEhvbGRpbmc7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcblx0ZGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBBcHBGaWxlKVxuICBmaWxlOiBBcHBGaWxlO1xufVxuIl19
@@ -4,5 +4,5 @@ export * from './service-price';
4
4
  export * from './service-product';
5
5
  export * from './service-subscription';
6
6
  export * from './service-subscription-item';
7
- export * from './stripe-promo-code';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3NlcnZpY2Utc3Vic2NyaXB0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NlcnZpY2UtcGF5bWVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2UtcGF5bWVudC1tZXRob2QnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlLXByaWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS1wcm9kdWN0JztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS1zdWJzY3JpcHRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi1pdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vc3RyaXBlLXByb21vLWNvZGUnO1xuIl19
7
+ export * from './service-promo-code';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3NlcnZpY2Utc3Vic2NyaXB0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NlcnZpY2UtcGF5bWVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2UtcGF5bWVudC1tZXRob2QnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlLXByaWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS1wcm9kdWN0JztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS1zdWJzY3JpcHRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi1pdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS1wcm9tby1jb2RlJztcbiJdfQ==
@@ -11,12 +11,12 @@ export class ServicePrice extends BaseServicePrice {
11
11
  isAnnual() {
12
12
  return [ServicePriceTypeEnum.YEARLY, ServicePriceTypeEnum.YEARLY_PACKAGE].includes(this.type);
13
13
  }
14
- discountPrice(stripePromoCode) {
15
- const discountAmount = this.amount - this.amount * (stripePromoCode.percentOff / 100);
14
+ discountPrice(promoCode) {
15
+ const discountAmount = this.amount - this.amount * (promoCode.percentOff / 100);
16
16
  return discountAmount;
17
17
  }
18
18
  }
19
19
  __decorate([
20
20
  Type(() => ServiceProduct)
21
21
  ], ServicePrice.prototype, "product", void 0);
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wcmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvc2VydmljZS1zdWJzY3JpcHRpb24vc2VydmljZS1wcmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzlGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsWUFBWSxFQUFFLElBQUksRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBRXpGLE1BQU0sT0FBTyxZQUFhLFNBQVEsZ0JBQWdCO0lBSWhELGtCQUFrQjtRQUNoQixPQUFPLFlBQVksQ0FBQyx1QkFBdUIsRUFBRSxFQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFDLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsb0JBQW9CLENBQUMsY0FBYyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRUQsYUFBYSxDQUFDLGVBQWU7UUFDM0IsTUFBTSxjQUFjLEdBQVcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsZUFBZSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUM5RixPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0NBQ0Y7QUFkQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7NkNBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlUHJpY2UgYXMgQmFzZVNlcnZpY2VQcmljZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9zdWJzY3JpcHRpb24vc2VydmljZS1wcmljZSc7XG5pbXBvcnQgeyBTZXJ2aWNlUHJvZHVjdCB9IGZyb20gJy4vc2VydmljZS1wcm9kdWN0JztcbmltcG9ydCB7cGxhaW5Ub0NsYXNzLCBUeXBlfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQge1NlcnZpY2VTdWJzY3JpcHRpb25JdGVtfSBmcm9tICcuL3NlcnZpY2Utc3Vic2NyaXB0aW9uLWl0ZW0nO1xuaW1wb3J0IHtTZXJ2aWNlUHJpY2VUeXBlRW51bX0gZnJvbSAnLi4vLi4vZGIvRW51bXMvc3Vic2NyaXB0aW9uL3NlcnZpY2UtcHJpY2UtdHlwZS5lbnVtJztcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VQcmljZSBleHRlbmRzIEJhc2VTZXJ2aWNlUHJpY2Uge1xuICBAVHlwZSgoKSA9PiBTZXJ2aWNlUHJvZHVjdClcbiAgcHJvZHVjdDogU2VydmljZVByb2R1Y3Q7XG5cbiAgdG9TdWJzY3JpcHRpb25JdGVtKCk6IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtIHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtLCB7cHJpY2U6IHRoaXMsIHF1YW50aXR5OiB0aGlzLnByb2R1Y3QubWluUXR5fSk7XG4gIH1cblxuICBpc0FubnVhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gW1NlcnZpY2VQcmljZVR5cGVFbnVtLllFQVJMWSwgU2VydmljZVByaWNlVHlwZUVudW0uWUVBUkxZX1BBQ0tBR0VdLmluY2x1ZGVzKHRoaXMudHlwZSk7XG4gIH1cblxuICBkaXNjb3VudFByaWNlKHN0cmlwZVByb21vQ29kZSk6IG51bWJlciB7XG4gICAgY29uc3QgZGlzY291bnRBbW91bnQ6IG51bWJlciA9IHRoaXMuYW1vdW50IC0gdGhpcy5hbW91bnQgKiAoc3RyaXBlUHJvbW9Db2RlLnBlcmNlbnRPZmYgLyAxMDApO1xuICAgIHJldHVybiBkaXNjb3VudEFtb3VudDtcbiAgfVxufVxuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wcmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvc2VydmljZS1zdWJzY3JpcHRpb24vc2VydmljZS1wcmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzlGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsWUFBWSxFQUFFLElBQUksRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBRXpGLE1BQU0sT0FBTyxZQUFhLFNBQVEsZ0JBQWdCO0lBSWhELGtCQUFrQjtRQUNoQixPQUFPLFlBQVksQ0FBQyx1QkFBdUIsRUFBRSxFQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFDLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsb0JBQW9CLENBQUMsY0FBYyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRUQsYUFBYSxDQUFDLFNBQVM7UUFDckIsTUFBTSxjQUFjLEdBQVcsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUN4RixPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0NBQ0Y7QUFkQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7NkNBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlUHJpY2UgYXMgQmFzZVNlcnZpY2VQcmljZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9zdWJzY3JpcHRpb24vc2VydmljZS1wcmljZSc7XG5pbXBvcnQgeyBTZXJ2aWNlUHJvZHVjdCB9IGZyb20gJy4vc2VydmljZS1wcm9kdWN0JztcbmltcG9ydCB7cGxhaW5Ub0NsYXNzLCBUeXBlfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQge1NlcnZpY2VTdWJzY3JpcHRpb25JdGVtfSBmcm9tICcuL3NlcnZpY2Utc3Vic2NyaXB0aW9uLWl0ZW0nO1xuaW1wb3J0IHtTZXJ2aWNlUHJpY2VUeXBlRW51bX0gZnJvbSAnLi4vLi4vZGIvRW51bXMvc3Vic2NyaXB0aW9uL3NlcnZpY2UtcHJpY2UtdHlwZS5lbnVtJztcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VQcmljZSBleHRlbmRzIEJhc2VTZXJ2aWNlUHJpY2Uge1xuICBAVHlwZSgoKSA9PiBTZXJ2aWNlUHJvZHVjdClcbiAgcHJvZHVjdDogU2VydmljZVByb2R1Y3Q7XG5cbiAgdG9TdWJzY3JpcHRpb25JdGVtKCk6IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtIHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtLCB7cHJpY2U6IHRoaXMsIHF1YW50aXR5OiB0aGlzLnByb2R1Y3QubWluUXR5fSk7XG4gIH1cblxuICBpc0FubnVhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gW1NlcnZpY2VQcmljZVR5cGVFbnVtLllFQVJMWSwgU2VydmljZVByaWNlVHlwZUVudW0uWUVBUkxZX1BBQ0tBR0VdLmluY2x1ZGVzKHRoaXMudHlwZSk7XG4gIH1cblxuICBkaXNjb3VudFByaWNlKHByb21vQ29kZSk6IG51bWJlciB7XG4gICAgY29uc3QgZGlzY291bnRBbW91bnQ6IG51bWJlciA9IHRoaXMuYW1vdW50IC0gdGhpcy5hbW91bnQgKiAocHJvbW9Db2RlLnBlcmNlbnRPZmYgLyAxMDApO1xuICAgIHJldHVybiBkaXNjb3VudEFtb3VudDtcbiAgfVxufVxuIl19
@@ -0,0 +1,7 @@
1
+ export var ServicePromoCodeDurationEnum;
2
+ (function (ServicePromoCodeDurationEnum) {
3
+ ServicePromoCodeDurationEnum[ServicePromoCodeDurationEnum["FOREVER"] = 1] = "FOREVER";
4
+ ServicePromoCodeDurationEnum[ServicePromoCodeDurationEnum["ONCE"] = 2] = "ONCE";
5
+ ServicePromoCodeDurationEnum[ServicePromoCodeDurationEnum["REPEATING"] = 3] = "REPEATING";
6
+ })(ServicePromoCodeDurationEnum || (ServicePromoCodeDurationEnum = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wcm9tby1jb2RlLWR1cmF0aW9uLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3NlcnZpY2Utc3Vic2NyaXB0aW9uL3NlcnZpY2UtcHJvbW8tY29kZS1kdXJhdGlvbi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLDRCQUlYO0FBSkQsV0FBWSw0QkFBNEI7SUFDdEMscUZBQVcsQ0FBQTtJQUNYLCtFQUFRLENBQUE7SUFDUix5RkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpXLDRCQUE0QixLQUE1Qiw0QkFBNEIsUUFJdkMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTZXJ2aWNlUHJvbW9Db2RlRHVyYXRpb25FbnVtIHtcbiAgRk9SRVZFUiA9IDEsXG4gIE9OQ0UgPSAyLFxuICBSRVBFQVRJTkcgPSAzLFxufVxuIl19
@@ -0,0 +1,3 @@
1
+ export class ServicePromoCode {
2
+ }
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wcm9tby1jb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9zZXJ2aWNlLXN1YnNjcmlwdGlvbi9zZXJ2aWNlLXByb21vLWNvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGdCQUFnQjtDQVM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlcnZpY2VQcm9tb0NvZGVEdXJhdGlvbkVudW0gfSBmcm9tIFwiLi9zZXJ2aWNlLXByb21vLWNvZGUtZHVyYXRpb24uZW51bVwiO1xuXG5leHBvcnQgY2xhc3MgU2VydmljZVByb21vQ29kZSB7XG4gIHN0cmlwZUlkPzogc3RyaW5nO1xuICBjb2RlPzogc3RyaW5nO1xuICBhbW91bnRPZmY/OiBudW1iZXI7XG4gIHBlcmNlbnRPZmY/OiBudW1iZXI7XG4gIGR1cmF0aW9uPzogU2VydmljZVByb21vQ29kZUR1cmF0aW9uRW51bTtcbiAgZHVyYXRpb25Nb250aHM/OiBudW1iZXI7XG4gIGN1c3RvbWVyPzogc3RyaW5nO1xuICBpZD86IG51bWJlcjtcbn1cbiJdfQ==
@@ -6,8 +6,11 @@ export class ServiceSubscriptionItem extends ServiceSubscriptionItemBase {
6
6
  get total() {
7
7
  return this.price.amount * this.quantity;
8
8
  }
9
+ discountTotal(promoCode) {
10
+ return (this.price.amount - this.price.amount * (promoCode.percentOff / 100)) * this.quantity;
11
+ }
9
12
  }
10
13
  __decorate([
11
14
  Type(() => ServicePrice)
12
15
  ], ServiceSubscriptionItem.prototype, "price", void 0);
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24taXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvc2VydmljZS1zdWJzY3JpcHRpb24vc2VydmljZS1zdWJzY3JpcHRpb24taXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHVCQUF1QixJQUFJLDJCQUEyQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDaEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV6QyxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsMkJBQTJCO0lBSXRFLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUMzQyxDQUFDO0NBQ0Y7QUFMQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7c0RBQ0wiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSBhcyBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbUJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvc3Vic2NyaXB0aW9uL3NlcnZpY2Utc3Vic2NyaXB0aW9uLWl0ZW0nO1xuaW1wb3J0IHsgU2VydmljZVByaWNlIH0gZnJvbSAnLi9zZXJ2aWNlLXByaWNlJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSBleHRlbmRzIFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtQmFzZSB7XG4gIEBUeXBlKCgpID0+IFNlcnZpY2VQcmljZSlcbiAgcHJpY2U6IFNlcnZpY2VQcmljZTtcblxuICBnZXQgdG90YWwoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wcmljZS5hbW91bnQgKiB0aGlzLnF1YW50aXR5O1xuICB9XG59XG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24taXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvc2VydmljZS1zdWJzY3JpcHRpb24vc2VydmljZS1zdWJzY3JpcHRpb24taXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHVCQUF1QixJQUFJLDJCQUEyQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDaEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV6QyxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsMkJBQTJCO0lBSXRFLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUMzQyxDQUFDO0lBRUQsYUFBYSxDQUFDLFNBQVM7UUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDaEcsQ0FBQztDQUNGO0FBVEM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDO3NEQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0gYXMgU2VydmljZVN1YnNjcmlwdGlvbkl0ZW1CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi1pdGVtJztcbmltcG9ydCB7IFNlcnZpY2VQcmljZSB9IGZyb20gJy4vc2VydmljZS1wcmljZSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuXG5leHBvcnQgY2xhc3MgU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0gZXh0ZW5kcyBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbUJhc2Uge1xuICBAVHlwZSgoKSA9PiBTZXJ2aWNlUHJpY2UpXG4gIHByaWNlOiBTZXJ2aWNlUHJpY2U7XG5cbiAgZ2V0IHRvdGFsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucHJpY2UuYW1vdW50ICogdGhpcy5xdWFudGl0eTtcbiAgfVxuXG4gIGRpc2NvdW50VG90YWwocHJvbW9Db2RlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHJpY2UuYW1vdW50IC0gdGhpcy5wcmljZS5hbW91bnQgKiAocHJvbW9Db2RlLnBlcmNlbnRPZmYgLyAxMDApKSAqIHRoaXMucXVhbnRpdHk7XG4gIH1cbn1cbiJdfQ==
@@ -6,9 +6,10 @@ import { Expose, Type } from 'class-transformer';
6
6
  import { ServiceSubscriptionStatusEnum } from '../../db/Enums/subscription/service-subscription-status.enum';
7
7
  import { ServiceProduct } from './service-product';
8
8
  import { SubscriptionItemCollection } from '../../collections';
9
+ import { ServicePromoCode } from './service-promo-code';
9
10
  export class ServiceSubscription extends ServiceSubscriptionBase {
10
11
  get promoCodeId() {
11
- return this.stripePromoCode?.id || null;
12
+ return this.promoCode?.id || null;
12
13
  }
13
14
  get frequency() {
14
15
  return this.isAnnual() ? 'year' : 'month';
@@ -28,13 +29,8 @@ export class ServiceSubscription extends ServiceSubscriptionBase {
28
29
  }
29
30
  get price() {
30
31
  let price = this.items.reduce((sum, item) => sum + item.total, 0);
31
- if (!!this.stripePromoCode) {
32
- if (this.stripePromoCode.isAmount()) {
33
- price = price - this.stripePromoCode.amountOff;
34
- }
35
- else {
36
- price = price - price * (this.stripePromoCode.percentOff / 100);
37
- }
32
+ if (!!this.promoCode && !this.isAnnual()) {
33
+ price = price - price * (this.promoCode.percentOff / 100);
38
34
  }
39
35
  // promo code can't make price < 0
40
36
  return price > 0 ? price : 0;
@@ -128,7 +124,10 @@ __decorate([
128
124
  __decorate([
129
125
  Type(() => ServiceSubscriptionItem)
130
126
  ], ServiceSubscription.prototype, "items", void 0);
127
+ __decorate([
128
+ Type(() => ServicePromoCode)
129
+ ], ServiceSubscription.prototype, "promoCode", void 0);
131
130
  __decorate([
132
131
  Expose()
133
132
  ], ServiceSubscription.prototype, "promoCodeId", null);
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3NlcnZpY2Utc3Vic2NyaXB0aW9uL3NlcnZpY2Utc3Vic2NyaXB0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsbUJBQW1CLElBQUksdUJBQXVCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUNuSCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUM3RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHL0QsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUF1QjtJQWdCOUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUM1QyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLElBQUksS0FBSyxHQUFX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QUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssY0FBYyxDQUFDLFFBQVEsQ0FBQztJQUN2RCxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pHLENBQUM7SUFFRDs7O09BR0c7SUFDSCwyQkFBMkIsQ0FBQyxZQUFxQyxFQUFFLGFBQXFCO1FBQ3RGLE1BQU0sR0FBRyxHQUFXLFlBQVksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUV0RCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Q0FDRjtBQXRKQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7c0RBQ0Q7QUFHaEI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO29EQUNIO0FBR2Q7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7a0RBQ0g7QUFRakM7SUFEQyxNQUFNLEVBQUU7c0RBR1IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlU3Vic2NyaXB0aW9uIGFzIFNlcnZpY2VTdWJzY3JpcHRpb25CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXN1YnNjcmlwdGlvbic7XG5pbXBvcnQgeyBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSB9IGZyb20gJy4vc2VydmljZS1zdWJzY3JpcHRpb24taXRlbSc7XG5pbXBvcnQgeyBVc2VyUm9sZXNFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdXNlci1yb2xlcy5lbnVtJztcbmltcG9ydCB7IEV4cG9zZSwgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFNlcnZpY2VTdWJzY3JpcHRpb25TdGF0dXNFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvc3Vic2NyaXB0aW9uL3NlcnZpY2Utc3Vic2NyaXB0aW9uLXN0YXR1cy5lbnVtJztcbmltcG9ydCB7IFNlcnZpY2VQcm9kdWN0IH0gZnJvbSAnLi9zZXJ2aWNlLXByb2R1Y3QnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uSXRlbUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBTdHJpcGVQcm9tb0NvZGUgfSBmcm9tICcuL3N0cmlwZS1wcm9tby1jb2RlJztcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VTdWJzY3JpcHRpb24gZXh0ZW5kcyBTZXJ2aWNlU3Vic2NyaXB0aW9uQmFzZSB7XG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIHN0YXJ0RGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBlbmREYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKVxuICBpdGVtczogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW1bXTtcblxuICAvKipcbiAgICogQFRPRE8gQWxleDogd2FpdGluZyBmb3IgYmFja2VuZCB3aWxsIGtlZXAgY291cG9uc1xuICAgKi9cbiAgc3RyaXBlUHJvbW9Db2RlOiBTdHJpcGVQcm9tb0NvZGU7XG5cbiAgQEV4cG9zZSgpXG4gIGdldCBwcm9tb0NvZGVJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnN0cmlwZVByb21vQ29kZT8uaWQgfHwgbnVsbDtcbiAgfVxuXG4gIGdldCBmcmVxdWVuY3koKTogJ21vbnRoJyB8ICd5ZWFyJyB7XG4gICAgcmV0dXJuIHRoaXMuaXNBbm51YWwoKSA/ICd5ZWFyJyA6ICdtb250aCc7XG4gIH1cblxuICBnZXQgaXNUcmlhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuc3RyaXBlSWQ7XG4gIH1cblxuICBnZXQgaXNQYWlkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuc3RyaXBlSWQ7XG4gIH1cblxuICBnZXQgaW5pdGlhbFByaWNlKCk6IG51bWJlciB7XG4gICAgbGV0IHByaWNlOiBudW1iZXIgPSB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKSA9PiBzdW0gKyBpdGVtLnRvdGFsLCAwKTtcbiAgICByZXR1cm4gcHJpY2U7XG4gIH1cblxuICBnZXQgZGlzY291bnRBbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsUHJpY2UgLSB0aGlzLnByaWNlXG4gIH1cblxuICBnZXQgcHJpY2UoKTogbnVtYmVyIHtcbiAgICBsZXQgcHJpY2U6IG51bWJlciA9IHRoaXMuaXRlbXMucmVkdWNlKChzdW06IG51bWJlciwgaXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pID0+IHN1bSArIGl0ZW0udG90YWwsIDApO1xuXG4gICAgaWYgKCEhdGhpcy5zdHJpcGVQcm9tb0NvZGUpIHtcbiAgICAgIGlmICh0aGlzLnN0cmlwZVByb21vQ29kZS5pc0Ftb3VudCgpKSB7XG4gICAgICAgIHByaWNlID0gcHJpY2UgLSB0aGlzLnN0cmlwZVByb21vQ29kZS5hbW91bnRPZmY7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwcmljZSA9IHByaWNlIC0gcHJpY2UgKiAodGhpcy5zdHJpcGVQcm9tb0NvZGUucGVyY2VudE9mZiAvIDEwMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gcHJvbW8gY29kZSBjYW4ndCBtYWtlIHByaWNlIDwgMFxuICAgIHJldHVybiBwcmljZSA+IDAgPyBwcmljZSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IHRpdGxlIG9mIHN1YnNjcmlwdGlvblxuICAgKi9cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLnByaWNlLnByb2R1Y3QudGl0bGUpLmpvaW4oJyArICcpO1xuICAgIC8vIHJldHVybiB0aGlzLmlzVHJpYWwgPyAnVHJpYWwgcGVyaW9kJyA6IHRoaXMuaXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLnByaWNlLnByb2R1Y3QudGl0bGUpLmpvaW4oJyArICcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgc3Vic2NyaXB0aW9uIGlzIGNvbnNpZGVyZWQgYWN0aXZlIGlmIHRoZSBlbmQgZGF0ZSBoYXMgbm90IHlldCBhcnJpdmVkIGFuZCBpdHMgc3RhdHVzIGlzIFwiQWN0aXZlXCIgb3IgXCJQYXN0IGR1ZVwiXG4gICAqL1xuICBnZXQgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgaXNFeHBpcmVkOiBib29sZWFuID0gbmV3IERhdGUodGhpcy5lbmREYXRlKS5nZXRUaW1lKCkgPCBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcblxuICAgIHJldHVybiAhaXNFeHBpcmVkICYmIChbU2VydmljZVN1YnNjcmlwdGlvblN0YXR1c0VudW0uQUNUSVZFLCBTZXJ2aWNlU3Vic2NyaXB0aW9uU3RhdHVzRW51bS5QQVNUX0RVRV0uaW5jbHVkZXModGhpcy5zdGF0dXMpKTtcbiAgfVxuXG4gIGlzUmVuZXdhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5pc1RyaWFsICYmIHRoaXMuaXNBY3RpdmU7XG4gIH1cblxuICBnZXRJdGVtcygpOiBTdWJzY3JpcHRpb25JdGVtQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBTdWJzY3JpcHRpb25JdGVtQ29sbGVjdGlvbih0aGlzLml0ZW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBtb3ZlIHRvIGNvbGxlY3Rpb25cbiAgICovXG4gIGdldCB3b3JrVGFua0l0ZW0oKTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiA9PiBpdGVtLnByaWNlLnByb2R1Y3QuaXNXb3JrVGFuaygpKTtcbiAgfVxuXG4gIGdldCBzb2xlVGFua0l0ZW0oKTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiA9PiBpdGVtLnByaWNlLnByb2R1Y3QuaXNTb2xlVGFuaygpKTtcbiAgfVxuXG4gIGdldCBwcm9wZXJ0eVRhbmtJdGVtKCk6IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maW5kKChpdGVtOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSk6IGJvb2xlYW4gPT4gaXRlbS5wcmljZS5wcm9kdWN0LmlzUHJvcGVydGllcygpKTtcbiAgfVxuXG4gIGhhc1Byb3BlcnR5VGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLml0ZW1zLmZpbmQoKHN1YnNjcmlwdGlvbkl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKSA9PiB7XG4gICAgICByZXR1cm4gc3Vic2NyaXB0aW9uSXRlbS5wcmljZS5wcm9kdWN0LnJvbGUuaW5jbHVkZXMoVXNlclJvbGVzRW51bS5QUk9QRVJUWV9UQU5LKTtcbiAgICB9KTtcbiAgfVxuXG4gIGhhc1dvcmtUYW5rKCkge1xuICAgIHJldHVybiAhIXRoaXMuaXRlbXMuZmluZCgoc3Vic2NyaXB0aW9uSXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pID0+IHtcbiAgICAgIHJldHVybiBzdWJzY3JpcHRpb25JdGVtLnByaWNlLnByb2R1Y3Qucm9sZS5pbmNsdWRlcyhVc2VyUm9sZXNFbnVtLldPUktfVEFOSyk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogYm91Z2h0IGJlZm9yZSBwcmljZSB1cGRhdGVzLCBhY3RpdmUgZm9yIHNvbWUgdGltZSB0byBsZXQgY3VzdG9tZXIgc2VsZWN0IGEgbmV3IHBsYW5cbiAgICogaW1wb3NzaWJsZSB0byB1cGRhdGUsIG9ubHkgcHJvbG9uZyBvciBidXkgbmV3XG4gICAqL1xuICBpc0FyY2hpdmVkKCk6IGJvb2xlYW4ge1xuICAgIC8vIHN1YnNjcmlwdGlvbiB3aXRoIGF0IGxlYXN0IG9uZSBhcmNoaXZlZCBwcm9kdWN0IGNvbnNpZGVyZWQgYXMgYXJjaGl2ZWRcbiAgICByZXR1cm4gISF0aGlzLml0ZW1zLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5wcmljZS5wcm9kdWN0LmlzQXJjaGl2ZWQoKSkubGVuZ3RoO1xuICB9XG5cbiAgLyoqXG4gICAqIENhc2Ugd2hlbiBwYXltZW50IHdhcyBmYWlsZWQsIGJ1dCB1c2VyIGhhcyBhIHRpbWUgdG8gdXBkYXRlIHBheW1lbnQgbWV0aG9kXG4gICAqL1xuICBpc1Bhc3REdWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBTZXJ2aWNlU3Vic2NyaXB0aW9uU3RhdHVzRW51bS5QQVNUX0RVRTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBjdXJyZW50IHN1YnNjcmlwdGlvbiBoYXMgcHJvdmlkZWQgc3Vic2NyaXB0aW9uIGl0ZW1cbiAgICovXG4gIGhhc0l0ZW0oaXRlbVRvQ2hlY2s6IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5pdGVtcy5maW5kKChpdGVtOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSk6IGJvb2xlYW4gPT4gaXRlbS5wcmljZS5pZCA9PT0gaXRlbVRvQ2hlY2sucHJpY2UuaWQpO1xuICB9XG5cbiAgaGFzUHJvZHVjdChwcm9kdWN0OiBTZXJ2aWNlUHJvZHVjdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuaXRlbXMuZmluZCgoaXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pOiBib29sZWFuID0+IGl0ZW0ucHJpY2UucHJvZHVjdC5pZCA9PT0gcHJvZHVjdC5pZCk7XG4gIH1cblxuICBpc1BhY2thZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubGVuZ3RoID09PSBTZXJ2aWNlUHJvZHVjdC5xdWFudGl0eTtcbiAgfVxuXG4gIGlzQW5udWFsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmdldEl0ZW1zKCkucHJpY2VzLmFubnVhbC5sZW5ndGggfHwgdGhpcy5nZXRJdGVtcygpLnByaWNlcy5hbm51YWxQYWNrYWdlLmxlbmd0aCk7XG4gIH1cblxuICAvKipcbiAgICogUmVjb21tZW5kZWQgbnVtYmVyIG9mIHByb3BlcnRpZXMgdG8gYnV5LFxuICAgKiBiYXNlZCBvbiB0aGUgcHJvcGVydHkgc2VydmljZSBwcm9kdWN0IGFuZCB0aGUgbnVtYmVyIG9mIHByb3BlcnRpZXMgdGhlIHVzZXIgaGFzXG4gICAqL1xuICBnZXRSZWNvbW1lbmRlZFByb3BlcnRpZXNRdHkocHJvcGVydHlJdGVtOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSwgcHJvcGVydGllc1F0eTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBjb25zdCBtaW46IG51bWJlciA9IHByb3BlcnR5SXRlbS5wcmljZS5wcm9kdWN0Lm1pblF0eTtcblxuICAgIHJldHVybiBNYXRoLm1heChtaW4sIHByb3BlcnRpZXNRdHkpO1xuICB9XG59XG4iXX0=
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3NlcnZpY2Utc3Vic2NyaXB0aW9uL3NlcnZpY2Utc3Vic2NyaXB0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsbUJBQW1CLElBQUksdUJBQXVCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUNuSCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUM3RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUF1QjtJQWM5RCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFHLElBQUksQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsSUFBSSxLQUFLLEdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsSUFBNkIsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0csT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFBO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxJQUFJLEtBQUssR0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQVcsRUFBRSxJQUE2QixFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUUzRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3hDLEtBQUssR0FBRyxLQUFLLEdBQUcsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUM7U0FDM0Q7UUFFRCxrQ0FBa0M7UUFDbEMsT0FBTyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEUseUdBQXlHO0lBQzNHLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksUUFBUTtRQUNWLE1BQU0sU0FBUyxHQUFZLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRW5GLE9BQU8sQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLDZCQUE2QixDQUFDLE1BQU0sRUFBRSw2QkFBNkIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDOUgsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLDBCQUEwQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBNkIsRUFBVyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUN0RyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQTZCLEVBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUE2QixFQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBeUMsRUFBRSxFQUFFO1lBQ3JFLE9BQU8sZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuRixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBeUMsRUFBRSxFQUFFO1lBQ3JFLE9BQU8sZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSCxVQUFVO1FBQ1IseUVBQXlFO1FBQ3pFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMvRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLDZCQUE2QixDQUFDLFFBQVEsQ0FBQztJQUNoRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPLENBQUMsV0FBb0M7UUFDMUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUE2QixFQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBdUI7UUFDaEMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUE2QixFQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzdHLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxjQUFjLENBQUMsUUFBUSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVEOzs7T0FHRztJQUNILDJCQUEyQixDQUFDLFlBQXFDLEVBQUUsYUFBcUI7UUFDdEYsTUFBTSxHQUFHLEdBQVcsWUFBWSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1FBRXRELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDdEMsQ0FBQztDQUNGO0FBaEpDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztzREFDRDtBQUdoQjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7b0RBQ0g7QUFHZDtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztrREFDSDtBQUdqQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztzREFDQTtBQUc3QjtJQURDLE1BQU0sRUFBRTtzREFHUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlcnZpY2VTdWJzY3JpcHRpb24gYXMgU2VydmljZVN1YnNjcmlwdGlvbkJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvc3Vic2NyaXB0aW9uL3NlcnZpY2Utc3Vic2NyaXB0aW9uJztcbmltcG9ydCB7IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtIH0gZnJvbSAnLi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi1pdGVtJztcbmltcG9ydCB7IFVzZXJSb2xlc0VudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy91c2VyLXJvbGVzLmVudW0nO1xuaW1wb3J0IHsgRXhwb3NlLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgU2VydmljZVN1YnNjcmlwdGlvblN0YXR1c0VudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9zdWJzY3JpcHRpb24vc2VydmljZS1zdWJzY3JpcHRpb24tc3RhdHVzLmVudW0nO1xuaW1wb3J0IHsgU2VydmljZVByb2R1Y3QgfSBmcm9tICcuL3NlcnZpY2UtcHJvZHVjdCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25JdGVtQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IFNlcnZpY2VQcm9tb0NvZGUgfSBmcm9tICcuL3NlcnZpY2UtcHJvbW8tY29kZSc7XG5cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlU3Vic2NyaXB0aW9uIGV4dGVuZHMgU2VydmljZVN1YnNjcmlwdGlvbkJhc2Uge1xuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBzdGFydERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgZW5kRGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSlcbiAgaXRlbXM6IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtW107XG5cbiAgQFR5cGUoKCkgPT4gU2VydmljZVByb21vQ29kZSlcbiAgcHJvbW9Db2RlPzogU2VydmljZVByb21vQ29kZTtcblxuICBARXhwb3NlKClcbiAgZ2V0IHByb21vQ29kZUlkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucHJvbW9Db2RlPy5pZHx8IG51bGw7XG4gIH1cblxuICBnZXQgZnJlcXVlbmN5KCk6ICdtb250aCcgfCAneWVhcicge1xuICAgIHJldHVybiB0aGlzLmlzQW5udWFsKCkgPyAneWVhcicgOiAnbW9udGgnO1xuICB9XG5cbiAgZ2V0IGlzVHJpYWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLnN0cmlwZUlkO1xuICB9XG5cbiAgZ2V0IGlzUGFpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnN0cmlwZUlkO1xuICB9XG5cbiAgZ2V0IGluaXRpYWxQcmljZSgpOiBudW1iZXIge1xuICAgIGxldCBwcmljZTogbnVtYmVyID0gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBpdGVtOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSkgPT4gc3VtICsgaXRlbS50b3RhbCwgMCk7XG4gICAgcmV0dXJuIHByaWNlO1xuICB9XG5cbiAgZ2V0IGRpc2NvdW50QW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbFByaWNlIC0gdGhpcy5wcmljZVxuICB9XG5cbiAgZ2V0IHByaWNlKCk6IG51bWJlciB7XG4gICAgbGV0IHByaWNlOiBudW1iZXIgPSB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKSA9PiBzdW0gKyBpdGVtLnRvdGFsLCAwKTtcblxuICAgIGlmICghIXRoaXMucHJvbW9Db2RlICYmICF0aGlzLmlzQW5udWFsKCkpIHtcbiAgICAgIHByaWNlID0gcHJpY2UgLSBwcmljZSAqICh0aGlzLnByb21vQ29kZS5wZXJjZW50T2ZmIC8gMTAwKTtcbiAgICB9XG5cbiAgICAvLyBwcm9tbyBjb2RlIGNhbid0IG1ha2UgcHJpY2UgPCAwXG4gICAgcmV0dXJuIHByaWNlID4gMCA/IHByaWNlIDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgdGl0bGUgb2Ygc3Vic2NyaXB0aW9uXG4gICAqL1xuICBnZXQgdGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0ucHJpY2UucHJvZHVjdC50aXRsZSkuam9pbignICsgJyk7XG4gICAgLy8gcmV0dXJuIHRoaXMuaXNUcmlhbCA/ICdUcmlhbCBwZXJpb2QnIDogdGhpcy5pdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0ucHJpY2UucHJvZHVjdC50aXRsZSkuam9pbignICsgJyk7XG4gIH1cblxuICAvKipcbiAgICogQSBzdWJzY3JpcHRpb24gaXMgY29uc2lkZXJlZCBhY3RpdmUgaWYgdGhlIGVuZCBkYXRlIGhhcyBub3QgeWV0IGFycml2ZWQgYW5kIGl0cyBzdGF0dXMgaXMgXCJBY3RpdmVcIiBvciBcIlBhc3QgZHVlXCJcbiAgICovXG4gIGdldCBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBpc0V4cGlyZWQ6IGJvb2xlYW4gPSBuZXcgRGF0ZSh0aGlzLmVuZERhdGUpLmdldFRpbWUoKSA8IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuXG4gICAgcmV0dXJuICFpc0V4cGlyZWQgJiYgKFtTZXJ2aWNlU3Vic2NyaXB0aW9uU3RhdHVzRW51bS5BQ1RJVkUsIFNlcnZpY2VTdWJzY3JpcHRpb25TdGF0dXNFbnVtLlBBU1RfRFVFXS5pbmNsdWRlcyh0aGlzLnN0YXR1cykpO1xuICB9XG5cbiAgaXNSZW5ld2FibGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmlzVHJpYWwgJiYgdGhpcy5pc0FjdGl2ZTtcbiAgfVxuXG4gIGdldEl0ZW1zKCk6IFN1YnNjcmlwdGlvbkl0ZW1Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbkl0ZW1Db2xsZWN0aW9uKHRoaXMuaXRlbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIG1vdmUgdG8gY29sbGVjdGlvblxuICAgKi9cbiAgZ2V0IHdvcmtUYW5rSXRlbSgpOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmluZCgoaXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pOiBib29sZWFuID0+IGl0ZW0ucHJpY2UucHJvZHVjdC5pc1dvcmtUYW5rKCkpO1xuICB9XG5cbiAgZ2V0IHNvbGVUYW5rSXRlbSgpOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmluZCgoaXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pOiBib29sZWFuID0+IGl0ZW0ucHJpY2UucHJvZHVjdC5pc1NvbGVUYW5rKCkpO1xuICB9XG5cbiAgZ2V0IHByb3BlcnR5VGFua0l0ZW0oKTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiA9PiBpdGVtLnByaWNlLnByb2R1Y3QuaXNQcm9wZXJ0aWVzKCkpO1xuICB9XG5cbiAgaGFzUHJvcGVydHlUYW5rKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuaXRlbXMuZmluZCgoc3Vic2NyaXB0aW9uSXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pID0+IHtcbiAgICAgIHJldHVybiBzdWJzY3JpcHRpb25JdGVtLnByaWNlLnByb2R1Y3Qucm9sZS5pbmNsdWRlcyhVc2VyUm9sZXNFbnVtLlBST1BFUlRZX1RBTkspO1xuICAgIH0pO1xuICB9XG5cbiAgaGFzV29ya1RhbmsoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5pdGVtcy5maW5kKChzdWJzY3JpcHRpb25JdGVtOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSkgPT4ge1xuICAgICAgcmV0dXJuIHN1YnNjcmlwdGlvbkl0ZW0ucHJpY2UucHJvZHVjdC5yb2xlLmluY2x1ZGVzKFVzZXJSb2xlc0VudW0uV09SS19UQU5LKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBib3VnaHQgYmVmb3JlIHByaWNlIHVwZGF0ZXMsIGFjdGl2ZSBmb3Igc29tZSB0aW1lIHRvIGxldCBjdXN0b21lciBzZWxlY3QgYSBuZXcgcGxhblxuICAgKiBpbXBvc3NpYmxlIHRvIHVwZGF0ZSwgb25seSBwcm9sb25nIG9yIGJ1eSBuZXdcbiAgICovXG4gIGlzQXJjaGl2ZWQoKTogYm9vbGVhbiB7XG4gICAgLy8gc3Vic2NyaXB0aW9uIHdpdGggYXQgbGVhc3Qgb25lIGFyY2hpdmVkIHByb2R1Y3QgY29uc2lkZXJlZCBhcyBhcmNoaXZlZFxuICAgIHJldHVybiAhIXRoaXMuaXRlbXMuZmlsdGVyKChpdGVtKSA9PiBpdGVtLnByaWNlLnByb2R1Y3QuaXNBcmNoaXZlZCgpKS5sZW5ndGg7XG4gIH1cblxuICAvKipcbiAgICogQ2FzZSB3aGVuIHBheW1lbnQgd2FzIGZhaWxlZCwgYnV0IHVzZXIgaGFzIGEgdGltZSB0byB1cGRhdGUgcGF5bWVudCBtZXRob2RcbiAgICovXG4gIGlzUGFzdER1ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFNlcnZpY2VTdWJzY3JpcHRpb25TdGF0dXNFbnVtLlBBU1RfRFVFO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGN1cnJlbnQgc3Vic2NyaXB0aW9uIGhhcyBwcm92aWRlZCBzdWJzY3JpcHRpb24gaXRlbVxuICAgKi9cbiAgaGFzSXRlbShpdGVtVG9DaGVjazogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiA9PiBpdGVtLnByaWNlLmlkID09PSBpdGVtVG9DaGVjay5wcmljZS5pZCk7XG4gIH1cblxuICBoYXNQcm9kdWN0KHByb2R1Y3Q6IFNlcnZpY2VQcm9kdWN0KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5pdGVtcy5maW5kKChpdGVtOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSk6IGJvb2xlYW4gPT4gaXRlbS5wcmljZS5wcm9kdWN0LmlkID09PSBwcm9kdWN0LmlkKTtcbiAgfVxuXG4gIGlzUGFja2FnZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5sZW5ndGggPT09IFNlcnZpY2VQcm9kdWN0LnF1YW50aXR5O1xuICB9XG5cbiAgaXNBbm51YWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHRoaXMuZ2V0SXRlbXMoKS5wcmljZXMuYW5udWFsLmxlbmd0aCB8fCB0aGlzLmdldEl0ZW1zKCkucHJpY2VzLmFubnVhbFBhY2thZ2UubGVuZ3RoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWNvbW1lbmRlZCBudW1iZXIgb2YgcHJvcGVydGllcyB0byBidXksXG4gICAqIGJhc2VkIG9uIHRoZSBwcm9wZXJ0eSBzZXJ2aWNlIHByb2R1Y3QgYW5kIHRoZSBudW1iZXIgb2YgcHJvcGVydGllcyB0aGUgdXNlciBoYXNcbiAgICovXG4gIGdldFJlY29tbWVuZGVkUHJvcGVydGllc1F0eShwcm9wZXJ0eUl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtLCBwcm9wZXJ0aWVzUXR5OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IG1pbjogbnVtYmVyID0gcHJvcGVydHlJdGVtLnByaWNlLnByb2R1Y3QubWluUXR5O1xuXG4gICAgcmV0dXJuIE1hdGgubWF4KG1pbiwgcHJvcGVydGllc1F0eSk7XG4gIH1cbn1cbiJdfQ==
@@ -142,9 +142,9 @@ export class AccountSetupService {
142
142
  }));
143
143
  }
144
144
  }
145
- AccountSetupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", 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 }, { token: i8.HoldingService }], target: i0.ɵɵFactoryTarget.Injectable });
146
- AccountSetupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: AccountSetupService, providedIn: 'root' });
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: AccountSetupService, decorators: [{
145
+ AccountSetupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", 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 }, { token: i8.HoldingService }], target: i0.ɵɵFactoryTarget.Injectable });
146
+ AccountSetupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: AccountSetupService, providedIn: 'root' });
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: AccountSetupService, decorators: [{
148
148
  type: Injectable,
149
149
  args: [{
150
150
  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: "15.2.4", ngImport: i0, type: RewardfulService, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
24
- RewardfulService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RewardfulService, providedIn: 'root' });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: RewardfulService, decorators: [{
23
+ RewardfulService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: RewardfulService, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
24
+ RewardfulService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: RewardfulService, providedIn: 'root' });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", 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: "15.2.4", 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: "15.2.4", ngImport: i0, type: AssetsService, providedIn: 'root' });
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: AssetsService, decorators: [{
40
+ AssetsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", 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: "15.1.5", ngImport: i0, type: AssetsService, providedIn: 'root' });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", 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: "15.2.4", 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: "15.2.4", ngImport: i0, type: AuthService, providedIn: 'root' });
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: AuthService, decorators: [{
51
+ AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", 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: "15.1.5", ngImport: i0, type: AuthService, providedIn: 'root' });
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: AuthService, decorators: [{
54
54
  type: Injectable,
55
55
  args: [{
56
56
  providedIn: 'root'
@@ -31,9 +31,9 @@ export class JwtService extends JwtHelperService {
31
31
  return this.getUser().id === userId;
32
32
  }
33
33
  }
34
- JwtService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: JwtService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
35
- JwtService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: JwtService, providedIn: 'root' });
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: JwtService, decorators: [{
34
+ JwtService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: JwtService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
35
+ JwtService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: JwtService, providedIn: 'root' });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: JwtService, decorators: [{
37
37
  type: Injectable,
38
38
  args: [{
39
39
  providedIn: 'root'