taxtank-core 0.29.37 → 0.30.1

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 (901) hide show
  1. package/{esm2015/lib/collections/account-setup-item.collection.js → esm2020/lib/collections/account-setup-item.collection.mjs} +0 -0
  2. package/{esm2015/lib/collections/allocation-group.collection.js → esm2020/lib/collections/allocation-group.collection.mjs} +0 -0
  3. package/{esm2015/lib/collections/bank-account.collection.js → esm2020/lib/collections/bank-account.collection.mjs} +0 -0
  4. package/esm2020/lib/collections/bank-transaction.collection.mjs +119 -0
  5. package/{esm2015/lib/collections/chart-accounts.collection.js → esm2020/lib/collections/chart-accounts.collection.mjs} +0 -0
  6. package/{esm2015/lib/collections/chat/chat.collection.js → esm2020/lib/collections/chat/chat.collection.mjs} +0 -0
  7. package/{esm2015/lib/collections/chat/index.js → esm2020/lib/collections/chat/index.mjs} +0 -0
  8. package/{esm2015/lib/collections/chat/message-document.collection.js → esm2020/lib/collections/chat/message-document.collection.mjs} +0 -0
  9. package/{esm2015/lib/collections/chat/message.collection.js → esm2020/lib/collections/chat/message.collection.mjs} +0 -0
  10. package/{esm2015/lib/collections/client-invite.collection.js → esm2020/lib/collections/client-invite.collection.mjs} +0 -0
  11. package/esm2020/lib/collections/client-movement.collection.mjs +30 -0
  12. package/{esm2015/lib/collections/client-portfolio-report.collection.js → esm2020/lib/collections/client-portfolio-report.collection.mjs} +0 -0
  13. package/{esm2015/lib/collections/client.collection.js → esm2020/lib/collections/client.collection.mjs} +0 -0
  14. package/{esm2015/lib/collections/collection-dictionary.js → esm2020/lib/collections/collection-dictionary.mjs} +0 -0
  15. package/esm2020/lib/collections/collection.mjs +147 -0
  16. package/{esm2015/lib/collections/depreciation-forecast.collection.js → esm2020/lib/collections/depreciation-forecast.collection.mjs} +0 -0
  17. package/esm2020/lib/collections/depreciation.collection.mjs +126 -0
  18. package/esm2020/lib/collections/employee.collection.mjs +11 -0
  19. package/{esm2015/lib/collections/exportable.collection.js → esm2020/lib/collections/exportable.collection.mjs} +0 -0
  20. package/{esm2015/lib/collections/income-source.collection.js → esm2020/lib/collections/income-source.collection.mjs} +0 -0
  21. package/{esm2015/lib/collections/index.js → esm2020/lib/collections/index.mjs} +0 -0
  22. package/{esm2015/lib/collections/loan/index.js → esm2020/lib/collections/loan/index.mjs} +0 -0
  23. package/{esm2015/lib/collections/loan/loan-payment.collection.js → esm2020/lib/collections/loan/loan-payment.collection.mjs} +0 -0
  24. package/esm2020/lib/collections/loan/loan.collection.mjs +34 -0
  25. package/{esm2015/lib/collections/property/index.js → esm2020/lib/collections/property/index.mjs} +0 -0
  26. package/{esm2015/lib/collections/property/property-category-movement.collection.js → esm2020/lib/collections/property/property-category-movement.collection.mjs} +0 -0
  27. package/{esm2015/lib/collections/property/property-sale/index.js → esm2020/lib/collections/property/property-sale/index.mjs} +0 -0
  28. package/esm2020/lib/collections/property/property-sale/property-sale-tax-exemption-metadata.collection.mjs +17 -0
  29. package/{esm2015/lib/collections/property/property-sale/property-sale.collection.js → esm2020/lib/collections/property/property-sale/property-sale.collection.mjs} +0 -0
  30. package/esm2020/lib/collections/property/property-share.collection.mjs +22 -0
  31. package/{esm2015/lib/collections/property/property.collection.js → esm2020/lib/collections/property/property.collection.mjs} +0 -0
  32. package/{esm2015/lib/collections/report/depreciation/depreciation-lvp-report-item.collection.js → esm2020/lib/collections/report/depreciation/depreciation-lvp-report-item.collection.mjs} +0 -0
  33. package/{esm2015/lib/collections/report/depreciation/depreciation-report-item.collection.js → esm2020/lib/collections/report/depreciation/depreciation-report-item.collection.mjs} +0 -0
  34. package/{esm2015/lib/collections/report/index.js → esm2020/lib/collections/report/index.mjs} +0 -0
  35. package/{esm2015/lib/collections/report/property/property-report-item-depreciation.collection.js → esm2020/lib/collections/report/property/property-report-item-depreciation.collection.mjs} +0 -0
  36. package/{esm2015/lib/collections/report/property/property-report-item-transaction.collection.js → esm2020/lib/collections/report/property/property-report-item-transaction.collection.mjs} +0 -0
  37. package/{esm2015/lib/collections/report/property/property-report-item.collection.js → esm2020/lib/collections/report/property/property-report-item.collection.mjs} +0 -0
  38. package/{esm2015/lib/collections/report/vehicle-expense/vehicle-expense.collection.js → esm2020/lib/collections/report/vehicle-expense/vehicle-expense.collection.mjs} +0 -0
  39. package/{esm2015/lib/collections/sole/index.js → esm2020/lib/collections/sole/index.mjs} +0 -0
  40. package/esm2020/lib/collections/sole/sole-business-losses.collection.mjs +42 -0
  41. package/{esm2015/lib/collections/sole/sole-invoice-item.collection.js → esm2020/lib/collections/sole/sole-invoice-item.collection.mjs} +0 -0
  42. package/{esm2015/lib/collections/sole/sole-invoice.collection.js → esm2020/lib/collections/sole/sole-invoice.collection.mjs} +0 -0
  43. package/{esm2015/lib/collections/subscription/index.js → esm2020/lib/collections/subscription/index.mjs} +0 -0
  44. package/{esm2015/lib/collections/subscription/service-price.collection.js → esm2020/lib/collections/subscription/service-price.collection.mjs} +0 -0
  45. package/{esm2015/lib/collections/subscription/service-product.collection.js → esm2020/lib/collections/subscription/service-product.collection.mjs} +0 -0
  46. package/{esm2015/lib/collections/subscription/service-subscription.collection.js → esm2020/lib/collections/subscription/service-subscription.collection.mjs} +0 -0
  47. package/{esm2015/lib/collections/subscription/subscription-item.collection.js → esm2020/lib/collections/subscription/subscription-item.collection.mjs} +0 -0
  48. package/{esm2015/lib/collections/tax-review.collection.js → esm2020/lib/collections/tax-review.collection.mjs} +0 -0
  49. package/{esm2015/lib/collections/tax-summary/index.js → esm2020/lib/collections/tax-summary/index.mjs} +0 -0
  50. package/{esm2015/lib/collections/tax-summary/report-item.collection.js → esm2020/lib/collections/tax-summary/report-item.collection.mjs} +0 -0
  51. package/{esm2015/lib/collections/tax-summary/tax-return-categories.const.js → esm2020/lib/collections/tax-summary/tax-return-categories.const.mjs} +0 -0
  52. package/{esm2015/lib/collections/transaction/index.js → esm2020/lib/collections/transaction/index.mjs} +0 -0
  53. package/{esm2015/lib/collections/transaction/transaction-allocation.collection.js → esm2020/lib/collections/transaction/transaction-allocation.collection.mjs} +0 -0
  54. package/esm2020/lib/collections/transaction/transaction.collection.mjs +241 -0
  55. package/{esm2015/lib/collections/user-event-setting.collection.js → esm2020/lib/collections/user-event-setting.collection.mjs} +0 -0
  56. package/{esm2015/lib/collections/user-event-type-collection.js → esm2020/lib/collections/user-event-type-collection.mjs} +0 -0
  57. package/{esm2015/lib/collections/vehicle/index.js → esm2020/lib/collections/vehicle/index.mjs} +0 -0
  58. package/{esm2015/lib/collections/vehicle/vehicle-claim.collection.js → esm2020/lib/collections/vehicle/vehicle-claim.collection.mjs} +0 -0
  59. package/{esm2015/lib/collections/vehicle/vehicle-logbook.collection.js → esm2020/lib/collections/vehicle/vehicle-logbook.collection.mjs} +0 -0
  60. package/{esm2015/lib/db/Enums/address-type.enum.js → esm2020/lib/db/Enums/address-type.enum.mjs} +0 -0
  61. package/{esm2015/lib/db/Enums/annual-frequency.enum.js → esm2020/lib/db/Enums/annual-frequency.enum.mjs} +0 -0
  62. package/{esm2015/lib/db/Enums/bank-account-status.enum.js → esm2020/lib/db/Enums/bank-account-status.enum.mjs} +0 -0
  63. package/{esm2015/lib/db/Enums/bank-account-type.enum.js → esm2020/lib/db/Enums/bank-account-type.enum.mjs} +0 -0
  64. package/{esm2015/lib/db/Enums/bank-connection-status.enum.js → esm2020/lib/db/Enums/bank-connection-status.enum.mjs} +0 -0
  65. package/{esm2015/lib/db/Enums/bank-popular.enum.js → esm2020/lib/db/Enums/bank-popular.enum.mjs} +0 -0
  66. package/{esm2015/lib/db/Enums/bank-transaction-type.enum.js → esm2020/lib/db/Enums/bank-transaction-type.enum.mjs} +0 -0
  67. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-category.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-category.enum.mjs} +0 -0
  68. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-etp.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-etp.enum.mjs} +0 -0
  69. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-heading-list.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-heading-list.enum.mjs} +0 -0
  70. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-heading-tax-deductible.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-heading-tax-deductible.enum.mjs} +0 -0
  71. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-heading-taxable.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-heading-taxable.enum.mjs} +0 -0
  72. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-heading-vehicle-list.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-heading-vehicle-list.enum.mjs} +0 -0
  73. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-keep-sign.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-keep-sign.enum.mjs} +0 -0
  74. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-list.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-list.enum.mjs} +0 -0
  75. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-metadata-list.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-metadata-list.enum.mjs} +0 -0
  76. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-metadata-type.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-metadata-type.enum.mjs} +0 -0
  77. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-salary-adjustments-list.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-salary-adjustments-list.enum.mjs} +0 -0
  78. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-salary-included-list.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-salary-included-list.enum.mjs} +0 -0
  79. package/{esm2015/lib/db/Enums/chart-accounts/chart-accounts-type.enum.js → esm2020/lib/db/Enums/chart-accounts/chart-accounts-type.enum.mjs} +0 -0
  80. package/{esm2015/lib/db/Enums/chart-accounts/index.js → esm2020/lib/db/Enums/chart-accounts/index.mjs} +0 -0
  81. package/{esm2015/lib/db/Enums/chat-status.enum.js → esm2020/lib/db/Enums/chat-status.enum.mjs} +0 -0
  82. package/{esm2015/lib/db/Enums/client-details-medicare-exemption.enum.js → esm2020/lib/db/Enums/client-details-medicare-exemption.enum.mjs} +0 -0
  83. package/{esm2015/lib/db/Enums/client-details-work-depreciation-calculation.enum.js → esm2020/lib/db/Enums/client-details-work-depreciation-calculation.enum.mjs} +0 -0
  84. package/{esm2015/lib/db/Enums/client-details-working-holiday-maker.enum.js → esm2020/lib/db/Enums/client-details-working-holiday-maker.enum.mjs} +0 -0
  85. package/{esm2015/lib/db/Enums/client-invite-status.enum.js → esm2020/lib/db/Enums/client-invite-status.enum.mjs} +0 -0
  86. package/{esm2015/lib/db/Enums/client-invite-type.enum.js → esm2020/lib/db/Enums/client-invite-type.enum.mjs} +0 -0
  87. package/{esm2015/lib/db/Enums/depreciation-calculation-percent.enum.js → esm2020/lib/db/Enums/depreciation-calculation-percent.enum.mjs} +0 -0
  88. package/{esm2015/lib/db/Enums/depreciation-calculation.enum.js → esm2020/lib/db/Enums/depreciation-calculation.enum.mjs} +0 -0
  89. package/{esm2015/lib/db/Enums/depreciation-type.enum.js → esm2020/lib/db/Enums/depreciation-type.enum.mjs} +0 -0
  90. package/{esm2015/lib/db/Enums/depreciation-write-off-amount.enum.js → esm2020/lib/db/Enums/depreciation-write-off-amount.enum.mjs} +0 -0
  91. package/{esm2015/lib/db/Enums/document-type.enum.js → esm2020/lib/db/Enums/document-type.enum.mjs} +0 -0
  92. package/{esm2015/lib/db/Enums/file-type.enum.js → esm2020/lib/db/Enums/file-type.enum.mjs} +0 -0
  93. package/{esm2015/lib/db/Enums/firm-type.enum.js → esm2020/lib/db/Enums/firm-type.enum.mjs} +0 -0
  94. package/{esm2015/lib/db/Enums/income-source-forecast-trust-type.enum.js → esm2020/lib/db/Enums/income-source-forecast-trust-type.enum.mjs} +0 -0
  95. package/{esm2015/lib/db/Enums/income-source-type-list-other.enum.js → esm2020/lib/db/Enums/income-source-type-list-other.enum.mjs} +0 -0
  96. package/{esm2015/lib/db/Enums/income-source-type-list-sole.enum.js → esm2020/lib/db/Enums/income-source-type-list-sole.enum.mjs} +0 -0
  97. package/{esm2015/lib/db/Enums/income-source-type-list-work.enum.js → esm2020/lib/db/Enums/income-source-type-list-work.enum.mjs} +0 -0
  98. package/{esm2015/lib/db/Enums/income-source-type.enum.js → esm2020/lib/db/Enums/income-source-type.enum.mjs} +0 -0
  99. package/{esm2015/lib/db/Enums/index.js → esm2020/lib/db/Enums/index.mjs} +0 -0
  100. package/{esm2015/lib/db/Enums/invite-status.enum.js → esm2020/lib/db/Enums/invite-status.enum.mjs} +0 -0
  101. package/{esm2015/lib/db/Enums/loan-bank-type.enum.js → esm2020/lib/db/Enums/loan-bank-type.enum.mjs} +0 -0
  102. package/{esm2015/lib/db/Enums/loan-frequency.enum.js → esm2020/lib/db/Enums/loan-frequency.enum.mjs} +0 -0
  103. package/{esm2015/lib/db/Enums/loan-interest-type.enum.js → esm2020/lib/db/Enums/loan-interest-type.enum.mjs} +0 -0
  104. package/{esm2015/lib/db/Enums/loan-payout-type.enum.js → esm2020/lib/db/Enums/loan-payout-type.enum.mjs} +0 -0
  105. package/{esm2015/lib/db/Enums/loan-repayment-frequency.enum.js → esm2020/lib/db/Enums/loan-repayment-frequency.enum.mjs} +0 -0
  106. package/{esm2015/lib/db/Enums/loan-repayment-type.enum.js → esm2020/lib/db/Enums/loan-repayment-type.enum.mjs} +0 -0
  107. package/{esm2015/lib/db/Enums/loan-type.enum.js → esm2020/lib/db/Enums/loan-type.enum.mjs} +0 -0
  108. package/{esm2015/lib/db/Enums/loan-vehicle-type.enum.js → esm2020/lib/db/Enums/loan-vehicle-type.enum.mjs} +0 -0
  109. package/{esm2015/lib/db/Enums/phone-type.enum.js → esm2020/lib/db/Enums/phone-type.enum.mjs} +0 -0
  110. package/{esm2015/lib/db/Enums/property/property-category-list.enum.js → esm2020/lib/db/Enums/property/property-category-list.enum.mjs} +0 -0
  111. package/{esm2015/lib/db/Enums/property/property-depreciation-calculation.enum.js → esm2020/lib/db/Enums/property/property-depreciation-calculation.enum.mjs} +0 -0
  112. package/{esm2015/lib/db/Enums/property/property-sale/tax-exemption-metadata.enum.js → esm2020/lib/db/Enums/property/property-sale/tax-exemption-metadata.enum.mjs} +0 -0
  113. package/{esm2015/lib/db/Enums/property/property-sale/tax-exemption.enum.js → esm2020/lib/db/Enums/property/property-sale/tax-exemption.enum.mjs} +0 -0
  114. package/{esm2015/lib/db/Enums/property/property-share-access.enum.js → esm2020/lib/db/Enums/property/property-share-access.enum.mjs} +0 -0
  115. package/{esm2015/lib/db/Enums/property/property-share-status.enum.js → esm2020/lib/db/Enums/property/property-share-status.enum.mjs} +0 -0
  116. package/{esm2015/lib/db/Enums/registration-invite-status.enum.js → esm2020/lib/db/Enums/registration-invite-status.enum.mjs} +0 -0
  117. package/{esm2015/lib/db/Enums/salary-forecast-frequency.enum.js → esm2020/lib/db/Enums/salary-forecast-frequency.enum.mjs} +0 -0
  118. package/{esm2015/lib/db/Enums/service-notification-status.enum.js → esm2020/lib/db/Enums/service-notification-status.enum.mjs} +0 -0
  119. package/{esm2015/lib/db/Enums/service-notification-type.enum.js → esm2020/lib/db/Enums/service-notification-type.enum.mjs} +0 -0
  120. package/{esm2015/lib/db/Enums/sole-depreciation-method.enum.js → esm2020/lib/db/Enums/sole-depreciation-method.enum.mjs} +0 -0
  121. package/{esm2015/lib/db/Enums/sole-invoice-statuses.enum.js → esm2020/lib/db/Enums/sole-invoice-statuses.enum.mjs} +0 -0
  122. package/{esm2015/lib/db/Enums/sole-invoice-tax-type.enum.js → esm2020/lib/db/Enums/sole-invoice-tax-type.enum.mjs} +0 -0
  123. package/{esm2015/lib/db/Enums/sole-invoice-template-tax-type.enum.js → esm2020/lib/db/Enums/sole-invoice-template-tax-type.enum.mjs} +0 -0
  124. package/{esm2015/lib/db/Enums/spare-document-spare-type.enum.js → esm2020/lib/db/Enums/spare-document-spare-type.enum.mjs} +0 -0
  125. package/{esm2015/lib/db/Enums/subscription/service-payment-status.enum.js → esm2020/lib/db/Enums/subscription/service-payment-status.enum.mjs} +0 -0
  126. package/{esm2015/lib/db/Enums/subscription/service-price-recurring-interval.enum.js → esm2020/lib/db/Enums/subscription/service-price-recurring-interval.enum.mjs} +0 -0
  127. package/{esm2015/lib/db/Enums/subscription/service-price-type.enum.js → esm2020/lib/db/Enums/subscription/service-price-type.enum.mjs} +0 -0
  128. package/{esm2015/lib/db/Enums/subscription/service-product-id.enum.js → esm2020/lib/db/Enums/subscription/service-product-id.enum.mjs} +0 -0
  129. package/{esm2015/lib/db/Enums/subscription/service-product-status.enum.js → esm2020/lib/db/Enums/subscription/service-product-status.enum.mjs} +0 -0
  130. package/{esm2015/lib/db/Enums/subscription/service-subscription-status.enum.js → esm2020/lib/db/Enums/subscription/service-subscription-status.enum.mjs} +0 -0
  131. package/{esm2015/lib/db/Enums/tank-type.enum.js → esm2020/lib/db/Enums/tank-type.enum.mjs} +0 -0
  132. package/{esm2015/lib/db/Enums/tax-calculation-medicare-exemption.enum.js → esm2020/lib/db/Enums/tax-calculation-medicare-exemption.enum.mjs} +0 -0
  133. package/{esm2015/lib/db/Enums/tax-calculation-type.enum.js → esm2020/lib/db/Enums/tax-calculation-type.enum.mjs} +0 -0
  134. package/{esm2015/lib/db/Enums/tax-return-category-list.enum.js → esm2020/lib/db/Enums/tax-return-category-list.enum.mjs} +0 -0
  135. package/{esm2015/lib/db/Enums/tax-return-category-section.enum.js → esm2020/lib/db/Enums/tax-return-category-section.enum.mjs} +0 -0
  136. package/{esm2015/lib/db/Enums/tax-review-status.enum.js → esm2020/lib/db/Enums/tax-review-status.enum.mjs} +0 -0
  137. package/{esm2015/lib/db/Enums/tax-summary-list.enum.js → esm2020/lib/db/Enums/tax-summary-list.enum.mjs} +0 -0
  138. package/{esm2015/lib/db/Enums/tax-summary-section.enum.js → esm2020/lib/db/Enums/tax-summary-section.enum.mjs} +0 -0
  139. package/{esm2015/lib/db/Enums/tax-summary-tax-summary.enum.js → esm2020/lib/db/Enums/tax-summary-tax-summary.enum.mjs} +0 -0
  140. package/{esm2015/lib/db/Enums/ticket-feedback.enum.js → esm2020/lib/db/Enums/ticket-feedback.enum.mjs} +0 -0
  141. package/{esm2015/lib/db/Enums/ticket-status.enum.js → esm2020/lib/db/Enums/ticket-status.enum.mjs} +0 -0
  142. package/{esm2015/lib/db/Enums/ticket-types.enum.js → esm2020/lib/db/Enums/ticket-types.enum.mjs} +0 -0
  143. package/{esm2015/lib/db/Enums/transaction-operation.enum.js → esm2020/lib/db/Enums/transaction-operation.enum.mjs} +0 -0
  144. package/{esm2015/lib/db/Enums/transaction-source.enum.js → esm2020/lib/db/Enums/transaction-source.enum.mjs} +0 -0
  145. package/{esm2015/lib/db/Enums/transaction-type.enum.js → esm2020/lib/db/Enums/transaction-type.enum.mjs} +0 -0
  146. package/{esm2015/lib/db/Enums/user-event-status.enum.js → esm2020/lib/db/Enums/user-event-status.enum.mjs} +0 -0
  147. package/{esm2015/lib/db/Enums/user-event-type-client-type.enum.js → esm2020/lib/db/Enums/user-event-type-client-type.enum.mjs} +0 -0
  148. package/{esm2015/lib/db/Enums/user-event-type-employee-type.enum.js → esm2020/lib/db/Enums/user-event-type-employee-type.enum.mjs} +0 -0
  149. package/{esm2015/lib/db/Enums/user-event-type-frequency.enum.js → esm2020/lib/db/Enums/user-event-type-frequency.enum.mjs} +0 -0
  150. package/{esm2015/lib/db/Enums/user-event-type-type.enum.js → esm2020/lib/db/Enums/user-event-type-type.enum.mjs} +0 -0
  151. package/{esm2015/lib/db/Enums/user-event-type-user-type.enum.js → esm2020/lib/db/Enums/user-event-type-user-type.enum.mjs} +0 -0
  152. package/{esm2015/lib/db/Enums/user-medicare-exemption.enum.js → esm2020/lib/db/Enums/user-medicare-exemption.enum.mjs} +0 -0
  153. package/{esm2015/lib/db/Enums/user-roles.enum.js → esm2020/lib/db/Enums/user-roles.enum.mjs} +0 -0
  154. package/{esm2015/lib/db/Enums/user-status.enum.js → esm2020/lib/db/Enums/user-status.enum.mjs} +0 -0
  155. package/{esm2015/lib/db/Enums/user-title.enum.js → esm2020/lib/db/Enums/user-title.enum.mjs} +0 -0
  156. package/{esm2015/lib/db/Enums/user-work-depreciation-calculation.enum.js → esm2020/lib/db/Enums/user-work-depreciation-calculation.enum.mjs} +0 -0
  157. package/{esm2015/lib/db/Enums/user-working-holiday-maker.enum.js → esm2020/lib/db/Enums/user-working-holiday-maker.enum.mjs} +0 -0
  158. package/{esm2015/lib/db/Enums/vehicle-claim-details-method.enum.js → esm2020/lib/db/Enums/vehicle-claim-details-method.enum.mjs} +0 -0
  159. package/{esm2015/lib/db/Enums/vehicle-logbook-purpose.enum.js → esm2020/lib/db/Enums/vehicle-logbook-purpose.enum.mjs} +0 -0
  160. package/{esm2015/lib/db/Models/abstract-model.js → esm2020/lib/db/Models/abstract-model.mjs} +0 -0
  161. package/{esm2015/lib/db/Models/address.js → esm2020/lib/db/Models/address.mjs} +0 -0
  162. package/{esm2015/lib/db/Models/bank/bank-account-balance.js → esm2020/lib/db/Models/bank/bank-account-balance.mjs} +0 -0
  163. package/{esm2015/lib/db/Models/bank/bank-account-property.js → esm2020/lib/db/Models/bank/bank-account-property.mjs} +0 -0
  164. package/{esm2015/lib/db/Models/bank/bank-account.js → esm2020/lib/db/Models/bank/bank-account.mjs} +0 -0
  165. package/{esm2015/lib/db/Models/bank/bank-connection.js → esm2020/lib/db/Models/bank/bank-connection.mjs} +0 -0
  166. package/{esm2015/lib/db/Models/bank/bank-transaction-import.js → esm2020/lib/db/Models/bank/bank-transaction-import.mjs} +0 -0
  167. package/{esm2015/lib/db/Models/bank/bank-transaction-rule.js → esm2020/lib/db/Models/bank/bank-transaction-rule.mjs} +0 -0
  168. package/{esm2015/lib/db/Models/bank/bank-transaction.js → esm2020/lib/db/Models/bank/bank-transaction.mjs} +0 -0
  169. package/{esm2015/lib/db/Models/bank/bank.js → esm2020/lib/db/Models/bank/bank.mjs} +0 -0
  170. package/{esm2015/lib/db/Models/bank/basiq-job.js → esm2020/lib/db/Models/bank/basiq-job.mjs} +0 -0
  171. package/{esm2015/lib/db/Models/bank/financial-data-system.js → esm2020/lib/db/Models/bank/financial-data-system.mjs} +0 -0
  172. package/{esm2015/lib/db/Models/chart-accounts/chart-accounts-depreciation.js → esm2020/lib/db/Models/chart-accounts/chart-accounts-depreciation.mjs} +0 -0
  173. package/{esm2015/lib/db/Models/chart-accounts/chart-accounts-heading.js → esm2020/lib/db/Models/chart-accounts/chart-accounts-heading.mjs} +0 -0
  174. package/{esm2015/lib/db/Models/chart-accounts/chart-accounts-metadata.js → esm2020/lib/db/Models/chart-accounts/chart-accounts-metadata.mjs} +0 -0
  175. package/{esm2015/lib/db/Models/chart-accounts/chart-accounts-value.js → esm2020/lib/db/Models/chart-accounts/chart-accounts-value.mjs} +0 -0
  176. package/{esm2015/lib/db/Models/chart-accounts/chart-accounts.js → esm2020/lib/db/Models/chart-accounts/chart-accounts.mjs} +0 -0
  177. package/{esm2015/lib/db/Models/country.js → esm2020/lib/db/Models/country.mjs} +0 -0
  178. package/{esm2015/lib/db/Models/depreciation/depreciation-capital-project.js → esm2020/lib/db/Models/depreciation/depreciation-capital-project.mjs} +0 -0
  179. package/{esm2015/lib/db/Models/depreciation/depreciation-forecast.js → esm2020/lib/db/Models/depreciation/depreciation-forecast.mjs} +0 -0
  180. package/{esm2015/lib/db/Models/depreciation/depreciation-receipt.js → esm2020/lib/db/Models/depreciation/depreciation-receipt.mjs} +0 -0
  181. package/{esm2015/lib/db/Models/depreciation/depreciation.js → esm2020/lib/db/Models/depreciation/depreciation.mjs} +0 -0
  182. package/{esm2015/lib/db/Models/document/document-base.js → esm2020/lib/db/Models/document/document-base.mjs} +0 -0
  183. package/{esm2015/lib/db/Models/document/document-folder.js → esm2020/lib/db/Models/document/document-folder.mjs} +0 -0
  184. package/{esm2015/lib/db/Models/document/document.js → esm2020/lib/db/Models/document/document.mjs} +0 -0
  185. package/{esm2015/lib/db/Models/document/property-document.js → esm2020/lib/db/Models/document/property-document.mjs} +0 -0
  186. package/{esm2015/lib/db/Models/file.js → esm2020/lib/db/Models/file.mjs} +0 -0
  187. package/{esm2015/lib/db/Models/firm/accountant/tax-review.js → esm2020/lib/db/Models/firm/accountant/tax-review.mjs} +0 -0
  188. package/{esm2015/lib/db/Models/firm/accountant/ticket.js → esm2020/lib/db/Models/firm/accountant/ticket.mjs} +0 -0
  189. package/{esm2015/lib/db/Models/firm/chat.js → esm2020/lib/db/Models/firm/chat.mjs} +0 -0
  190. package/{esm2015/lib/db/Models/firm/client-invite.js → esm2020/lib/db/Models/firm/client-invite.mjs} +0 -0
  191. package/{esm2015/lib/db/Models/firm/client-movement.js → esm2020/lib/db/Models/firm/client-movement.mjs} +0 -0
  192. package/{esm2015/lib/db/Models/firm/employee-invite.js → esm2020/lib/db/Models/firm/employee-invite.mjs} +0 -0
  193. package/{esm2015/lib/db/Models/firm/firm-invite.js → esm2020/lib/db/Models/firm/firm-invite.mjs} +0 -0
  194. package/{esm2015/lib/db/Models/firm/firm.js → esm2020/lib/db/Models/firm/firm.mjs} +0 -0
  195. package/{esm2015/lib/db/Models/firm/message-document.js → esm2020/lib/db/Models/firm/message-document.mjs} +0 -0
  196. package/{esm2015/lib/db/Models/firm/message.js → esm2020/lib/db/Models/firm/message.mjs} +0 -0
  197. package/{esm2015/lib/db/Models/incomeSource/income-source-forecast.js → esm2020/lib/db/Models/incomeSource/income-source-forecast.mjs} +0 -0
  198. package/{esm2015/lib/db/Models/incomeSource/income-source-type.js → esm2020/lib/db/Models/incomeSource/income-source-type.mjs} +0 -0
  199. package/{esm2015/lib/db/Models/incomeSource/income-source.js → esm2020/lib/db/Models/incomeSource/income-source.mjs} +0 -0
  200. package/{esm2015/lib/db/Models/incomeSource/salary-forecast.js → esm2020/lib/db/Models/incomeSource/salary-forecast.mjs} +0 -0
  201. package/{esm2015/lib/db/Models/index.js → esm2020/lib/db/Models/index.mjs} +0 -0
  202. package/{esm2015/lib/db/Models/loan/borrowing-expense-loan.js → esm2020/lib/db/Models/loan/borrowing-expense-loan.mjs} +0 -0
  203. package/{esm2015/lib/db/Models/loan/borrowing-expense.js → esm2020/lib/db/Models/loan/borrowing-expense.mjs} +0 -0
  204. package/{esm2015/lib/db/Models/loan/loan-payout.js → esm2020/lib/db/Models/loan/loan-payout.mjs} +0 -0
  205. package/{esm2015/lib/db/Models/loan/loan.js → esm2020/lib/db/Models/loan/loan.mjs} +0 -0
  206. package/{esm2015/lib/db/Models/observable-model.js → esm2020/lib/db/Models/observable-model.mjs} +0 -0
  207. package/{esm2015/lib/db/Models/phone.js → esm2020/lib/db/Models/phone.mjs} +0 -0
  208. package/{esm2015/lib/db/Models/property/property-category-movement.js → esm2020/lib/db/Models/property/property-category-movement.mjs} +0 -0
  209. package/{esm2015/lib/db/Models/property/property-category.js → esm2020/lib/db/Models/property/property-category.mjs} +0 -0
  210. package/{esm2015/lib/db/Models/property/property-forecast.js → esm2020/lib/db/Models/property/property-forecast.mjs} +0 -0
  211. package/{esm2015/lib/db/Models/property/property-sale/property-sale-tax-exemption-metadata.js → esm2020/lib/db/Models/property/property-sale/property-sale-tax-exemption-metadata.mjs} +0 -0
  212. package/{esm2015/lib/db/Models/property/property-sale/property-sale.js → esm2020/lib/db/Models/property/property-sale/property-sale.mjs} +0 -0
  213. package/{esm2015/lib/db/Models/property/property-sale/tax-exemption-metadata.js → esm2020/lib/db/Models/property/property-sale/tax-exemption-metadata.mjs} +0 -0
  214. package/{esm2015/lib/db/Models/property/property-sale/tax-exemption.js → esm2020/lib/db/Models/property/property-sale/tax-exemption.mjs} +0 -0
  215. package/{esm2015/lib/db/Models/property/property-share.js → esm2020/lib/db/Models/property/property-share.mjs} +0 -0
  216. package/{esm2015/lib/db/Models/property/property-subscription.js → esm2020/lib/db/Models/property/property-subscription.mjs} +0 -0
  217. package/{esm2015/lib/db/Models/property/property-valuation.js → esm2020/lib/db/Models/property/property-valuation.mjs} +0 -0
  218. package/{esm2015/lib/db/Models/property/property.js → esm2020/lib/db/Models/property/property.mjs} +0 -0
  219. package/{esm2015/lib/db/Models/service-notification.js → esm2020/lib/db/Models/service-notification.mjs} +0 -0
  220. package/{esm2015/lib/db/Models/sole/bas-report.js → esm2020/lib/db/Models/sole/bas-report.mjs} +0 -0
  221. package/{esm2015/lib/db/Models/sole/sole-business-activity.js → esm2020/lib/db/Models/sole/sole-business-activity.mjs} +0 -0
  222. package/{esm2015/lib/db/Models/sole/sole-business-allocation.js → esm2020/lib/db/Models/sole/sole-business-allocation.mjs} +0 -0
  223. package/{esm2015/lib/db/Models/sole/sole-business-loss-offset-rule.js → esm2020/lib/db/Models/sole/sole-business-loss-offset-rule.mjs} +0 -0
  224. package/{esm2015/lib/db/Models/sole/sole-business-loss.js → esm2020/lib/db/Models/sole/sole-business-loss.mjs} +0 -0
  225. package/{esm2015/lib/db/Models/sole/sole-business.js → esm2020/lib/db/Models/sole/sole-business.mjs} +0 -0
  226. package/{esm2015/lib/db/Models/sole/sole-contact.js → esm2020/lib/db/Models/sole/sole-contact.mjs} +0 -0
  227. package/{esm2015/lib/db/Models/sole/sole-depreciation-method.js → esm2020/lib/db/Models/sole/sole-depreciation-method.mjs} +0 -0
  228. package/{esm2015/lib/db/Models/sole/sole-details.js → esm2020/lib/db/Models/sole/sole-details.mjs} +0 -0
  229. package/{esm2015/lib/db/Models/sole/sole-forecast.js → esm2020/lib/db/Models/sole/sole-forecast.mjs} +0 -0
  230. package/{esm2015/lib/db/Models/sole/sole-invoice-item.js → esm2020/lib/db/Models/sole/sole-invoice-item.mjs} +0 -0
  231. package/{esm2015/lib/db/Models/sole/sole-invoice-template.js → esm2020/lib/db/Models/sole/sole-invoice-template.mjs} +0 -0
  232. package/{esm2015/lib/db/Models/sole/sole-invoice.js → esm2020/lib/db/Models/sole/sole-invoice.mjs} +0 -0
  233. package/{esm2015/lib/db/Models/spare/spare-document-category.js → esm2020/lib/db/Models/spare/spare-document-category.mjs} +0 -0
  234. package/{esm2015/lib/db/Models/spare/spare-document.js → esm2020/lib/db/Models/spare/spare-document.mjs} +0 -0
  235. package/{esm2015/lib/db/Models/subscription/service-payment.js → esm2020/lib/db/Models/subscription/service-payment.mjs} +0 -0
  236. package/{esm2015/lib/db/Models/subscription/service-price.js → esm2020/lib/db/Models/subscription/service-price.mjs} +0 -0
  237. package/{esm2015/lib/db/Models/subscription/service-product.js → esm2020/lib/db/Models/subscription/service-product.mjs} +0 -0
  238. package/{esm2015/lib/db/Models/subscription/service-subscription-item.js → esm2020/lib/db/Models/subscription/service-subscription-item.mjs} +0 -0
  239. package/{esm2015/lib/db/Models/subscription/service-subscription.js → esm2020/lib/db/Models/subscription/service-subscription.mjs} +0 -0
  240. package/{esm2015/lib/db/Models/tax-calculation.js → esm2020/lib/db/Models/tax-calculation.mjs} +0 -0
  241. package/{esm2015/lib/db/Models/tax-return/tax-return-category.js → esm2020/lib/db/Models/tax-return/tax-return-category.mjs} +0 -0
  242. package/{esm2015/lib/db/Models/tax-return/tax-return-item.js → esm2020/lib/db/Models/tax-return/tax-return-item.mjs} +0 -0
  243. package/{esm2015/lib/db/Models/tax-return/tax-return.js → esm2020/lib/db/Models/tax-return/tax-return.mjs} +0 -0
  244. package/{esm2015/lib/db/Models/transaction/transaction-allocation.js → esm2020/lib/db/Models/transaction/transaction-allocation.mjs} +0 -0
  245. package/esm2020/lib/db/Models/transaction/transaction-base.mjs +87 -0
  246. package/{esm2015/lib/db/Models/transaction/transaction-metadata.js → esm2020/lib/db/Models/transaction/transaction-metadata.mjs} +0 -0
  247. package/{esm2015/lib/db/Models/transaction/transaction-receipt.js → esm2020/lib/db/Models/transaction/transaction-receipt.mjs} +0 -0
  248. package/{esm2015/lib/db/Models/transaction/transaction.js → esm2020/lib/db/Models/transaction/transaction.mjs} +0 -0
  249. package/{esm2015/lib/db/Models/user/client-details.js → esm2020/lib/db/Models/user/client-details.mjs} +0 -0
  250. package/{esm2015/lib/db/Models/user/client-income-types.js → esm2020/lib/db/Models/user/client-income-types.mjs} +0 -0
  251. package/{esm2015/lib/db/Models/user/employee-details.js → esm2020/lib/db/Models/user/employee-details.mjs} +0 -0
  252. package/{esm2015/lib/db/Models/user/occupation.js → esm2020/lib/db/Models/user/occupation.mjs} +0 -0
  253. package/{esm2015/lib/db/Models/user/registration-invite.js → esm2020/lib/db/Models/user/registration-invite.mjs} +0 -0
  254. package/{esm2015/lib/db/Models/user/user-event-setting.js → esm2020/lib/db/Models/user/user-event-setting.mjs} +0 -0
  255. package/{esm2015/lib/db/Models/user/user-event-type-category.js → esm2020/lib/db/Models/user/user-event-type-category.mjs} +0 -0
  256. package/{esm2015/lib/db/Models/user/user-event-type.js → esm2020/lib/db/Models/user/user-event-type.mjs} +0 -0
  257. package/{esm2015/lib/db/Models/user/user-event.js → esm2020/lib/db/Models/user/user-event.mjs} +0 -0
  258. package/{esm2015/lib/db/Models/user/user.js → esm2020/lib/db/Models/user/user.mjs} +0 -0
  259. package/{esm2015/lib/db/Models/vehicle/vehicle-claim-details.js → esm2020/lib/db/Models/vehicle/vehicle-claim-details.mjs} +0 -0
  260. package/{esm2015/lib/db/Models/vehicle/vehicle-claim.js → esm2020/lib/db/Models/vehicle/vehicle-claim.mjs} +0 -0
  261. package/{esm2015/lib/db/Models/vehicle/vehicle-logbook.js → esm2020/lib/db/Models/vehicle/vehicle-logbook.mjs} +0 -0
  262. package/{esm2015/lib/db/Models/vehicle/vehicle.js → esm2020/lib/db/Models/vehicle/vehicle.mjs} +0 -0
  263. package/esm2020/lib/forms/abstract.form.mjs +69 -0
  264. package/esm2020/lib/forms/address/address.form.mjs +188 -0
  265. package/{esm2015/lib/forms/address/index.js → esm2020/lib/forms/address/index.mjs} +0 -0
  266. package/esm2020/lib/forms/bank/bank-account/bank-account-add-manual.form.mjs +46 -0
  267. package/esm2020/lib/forms/bank/bank-account/bank-account-allocation.form.mjs +45 -0
  268. package/{esm2015/lib/forms/bank/bank-account/bank-account-import.form.js → esm2020/lib/forms/bank/bank-account/bank-account-import.form.mjs} +0 -0
  269. package/esm2020/lib/forms/bank/bank-account/bank-account-properties.form.mjs +66 -0
  270. package/esm2020/lib/forms/bank/bank-account/bank-accounts-import.form.mjs +50 -0
  271. package/esm2020/lib/forms/bank/bank-login.form.mjs +19 -0
  272. package/esm2020/lib/forms/client/client-income-types.form.mjs +17 -0
  273. package/esm2020/lib/forms/depreciation/depreciation.form.mjs +38 -0
  274. package/{esm2015/lib/forms/depreciation/index.js → esm2020/lib/forms/depreciation/index.mjs} +0 -0
  275. package/{esm2015/lib/forms/form-validations.enum.js → esm2020/lib/forms/form-validations.enum.mjs} +0 -0
  276. package/{esm2015/lib/forms/index.js → esm2020/lib/forms/index.mjs} +0 -0
  277. package/{esm2015/lib/forms/loan/index.js → esm2020/lib/forms/loan/index.mjs} +0 -0
  278. package/esm2020/lib/forms/loan/loan.form.mjs +90 -0
  279. package/esm2020/lib/forms/login/login.form.mjs +11 -0
  280. package/{esm2015/lib/forms/phone/index.js → esm2020/lib/forms/phone/index.mjs} +0 -0
  281. package/esm2020/lib/forms/phone/phone.form.mjs +18 -0
  282. package/{esm2015/lib/forms/property/index.js → esm2020/lib/forms/property/index.mjs} +0 -0
  283. package/{esm2015/lib/forms/property/property-sale/index.js → esm2020/lib/forms/property/property-sale/index.mjs} +0 -0
  284. package/esm2020/lib/forms/property/property-sale/property-sale-cost-base.form.mjs +39 -0
  285. package/esm2020/lib/forms/property/property-sale/property-sale-cost-sale.form.mjs +80 -0
  286. package/esm2020/lib/forms/property/property-sale/property-sale-exemptions.form.mjs +74 -0
  287. package/esm2020/lib/forms/register/register-client.form.mjs +19 -0
  288. package/esm2020/lib/forms/register/register-firm.form.mjs +22 -0
  289. package/{esm2015/lib/forms/report/my-tax/index.js → esm2020/lib/forms/report/my-tax/index.mjs} +0 -0
  290. package/esm2020/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.form.mjs +31 -0
  291. package/esm2020/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.form.mjs +81 -0
  292. package/{esm2015/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income-or-losses.form.js → esm2020/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income-or-losses.form.mjs} +0 -0
  293. package/esm2020/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.form.mjs +79 -0
  294. package/esm2020/lib/forms/report/my-tax/my-tax-cgt.form.mjs +25 -0
  295. package/esm2020/lib/forms/report/my-tax/my-tax-deductions.form.mjs +85 -0
  296. package/esm2020/lib/forms/report/my-tax/my-tax-dividends.form.mjs +23 -0
  297. package/esm2020/lib/forms/report/my-tax/my-tax-income-statements.form.mjs +92 -0
  298. package/{esm2015/lib/forms/report/my-tax/my-tax-income-tests.form.js → esm2020/lib/forms/report/my-tax/my-tax-income-tests.form.mjs} +0 -0
  299. package/esm2020/lib/forms/report/my-tax/my-tax-interest.form.mjs +12 -0
  300. package/esm2020/lib/forms/report/my-tax/my-tax-losses.form.mjs +11 -0
  301. package/esm2020/lib/forms/report/my-tax/my-tax-medicare.form.mjs +33 -0
  302. package/{esm2015/lib/forms/report/my-tax/my-tax-offsets.form.js → esm2020/lib/forms/report/my-tax/my-tax-offsets.form.mjs} +0 -0
  303. package/esm2020/lib/forms/report/my-tax/my-tax-other-income.form.mjs +43 -0
  304. package/esm2020/lib/forms/report/my-tax/my-tax-partnerships-and-trusts.form.mjs +37 -0
  305. package/esm2020/lib/forms/report/my-tax/my-tax-rent.form.mjs +13 -0
  306. package/esm2020/lib/forms/sole/bas-report.form.mjs +58 -0
  307. package/{esm2015/lib/forms/sole/index.js → esm2020/lib/forms/sole/index.mjs} +0 -0
  308. package/esm2020/lib/forms/sole/sole-business-allocations.form.mjs +66 -0
  309. package/esm2020/lib/forms/sole/sole-business-loss.form.mjs +24 -0
  310. package/esm2020/lib/forms/sole/sole-business.form.mjs +69 -0
  311. package/esm2020/lib/forms/sole/sole-contact.form.mjs +18 -0
  312. package/esm2020/lib/forms/sole/sole-depreciation-method.form.mjs +10 -0
  313. package/esm2020/lib/forms/sole/sole-details.form.mjs +12 -0
  314. package/esm2020/lib/forms/sole/sole-invoice-item.form.mjs +15 -0
  315. package/esm2020/lib/forms/sole/sole-invoice-template.form.mjs +15 -0
  316. package/esm2020/lib/forms/sole/sole-invoice.form.mjs +158 -0
  317. package/{esm2015/lib/forms/transaction/index.js → esm2020/lib/forms/transaction/index.mjs} +0 -0
  318. package/{esm2015/lib/forms/transaction/messages.enum.js → esm2020/lib/forms/transaction/messages.enum.mjs} +0 -0
  319. package/esm2020/lib/forms/transaction/transaction-base.form.mjs +98 -0
  320. package/esm2020/lib/forms/transaction/transaction.form.mjs +64 -0
  321. package/{esm2015/lib/forms/transaction/work/work-expense.form.js → esm2020/lib/forms/transaction/work/work-expense.form.mjs} +0 -0
  322. package/esm2020/lib/forms/transaction/work/work-income.form.mjs +86 -0
  323. package/{esm2015/lib/forms/transaction/work/work-transaction.form.js → esm2020/lib/forms/transaction/work/work-transaction.form.mjs} +0 -0
  324. package/{esm2015/lib/forms/user/index.js → esm2020/lib/forms/user/index.mjs} +0 -0
  325. package/esm2020/lib/forms/user/password.form.mjs +14 -0
  326. package/esm2020/lib/forms/user/reset-password.form.mjs +11 -0
  327. package/esm2020/lib/forms/user/user-invite.form.mjs +16 -0
  328. package/{esm2015/lib/forms/vehicle/index.js → esm2020/lib/forms/vehicle/index.mjs} +0 -0
  329. package/esm2020/lib/forms/vehicle/vehicle-claim-details.form.mjs +17 -0
  330. package/esm2020/lib/forms/vehicle/vehicle-claim.form.mjs +30 -0
  331. package/esm2020/lib/forms/vehicle/vehicle-logbook.form.mjs +63 -0
  332. package/esm2020/lib/forms/vehicle/vehicle.form.mjs +17 -0
  333. package/{esm2015/lib/functions/array/index.js → esm2020/lib/functions/array/index.mjs} +0 -0
  334. package/{esm2015/lib/functions/array/replace.js → esm2020/lib/functions/array/replace.mjs} +0 -0
  335. package/{esm2015/lib/functions/array/sort-deep.js → esm2020/lib/functions/array/sort-deep.mjs} +0 -0
  336. package/{esm2015/lib/functions/array/sort.js → esm2020/lib/functions/array/sort.mjs} +0 -0
  337. package/{esm2015/lib/functions/array/to-array.js → esm2020/lib/functions/array/to-array.mjs} +0 -0
  338. package/{esm2015/lib/functions/clone-deep.js → esm2020/lib/functions/clone-deep.mjs} +0 -0
  339. package/{esm2015/lib/functions/create-date.js → esm2020/lib/functions/create-date.mjs} +0 -0
  340. package/{esm2015/lib/functions/enum-to-list.js → esm2020/lib/functions/enum-to-list.mjs} +0 -0
  341. package/{esm2015/lib/functions/get-doc-icon.js → esm2020/lib/functions/get-doc-icon.mjs} +0 -0
  342. package/{esm2015/lib/functions/mat-options-functions.js → esm2020/lib/functions/mat-options-functions.mjs} +0 -0
  343. package/{esm2015/lib/functions/mat-sort-options.js → esm2020/lib/functions/mat-sort-options.mjs} +0 -0
  344. package/{esm2015/lib/functions/round-to.js → esm2020/lib/functions/round-to.mjs} +0 -0
  345. package/{esm2015/lib/functions/tax-review-filter-predicate.js → esm2020/lib/functions/tax-review-filter-predicate.mjs} +0 -0
  346. package/{esm2015/lib/interceptors/basiq-client-id.interceptor.js → esm2020/lib/interceptors/basiq-client-id.interceptor.mjs} +4 -4
  347. package/{esm2015/lib/interceptors/basiq-token.interceptor.js → esm2020/lib/interceptors/basiq-token.interceptor.mjs} +4 -4
  348. package/{esm2015/lib/interceptors/corelogic-interceptor.js → esm2020/lib/interceptors/corelogic-interceptor.mjs} +4 -4
  349. package/{esm2015/lib/interceptors/financial-year-interceptor.js → esm2020/lib/interceptors/financial-year-interceptor.mjs} +4 -4
  350. package/{esm2015/lib/interceptors/interceptors.module.js → esm2020/lib/interceptors/interceptors.module.mjs} +5 -5
  351. package/esm2020/lib/interceptors/jwt-interceptor.mjs +141 -0
  352. package/{esm2015/lib/interceptors/preloader.interceptor.js → esm2020/lib/interceptors/preloader.interceptor.mjs} +4 -4
  353. package/{esm2015/lib/interceptors/user-switcher-interceptor.js → esm2020/lib/interceptors/user-switcher-interceptor.mjs} +4 -4
  354. package/{esm2015/lib/interfaces/asset-entity-type.enum.js → esm2020/lib/interfaces/asset-entity-type.enum.mjs} +0 -0
  355. package/{esm2015/lib/interfaces/asset-type.enum.js → esm2020/lib/interfaces/asset-type.enum.mjs} +0 -0
  356. package/{esm2015/lib/interfaces/asset.interface.js → esm2020/lib/interfaces/asset.interface.mjs} +0 -0
  357. package/{esm2015/lib/interfaces/auth-tokens.interface.js → esm2020/lib/interfaces/auth-tokens.interface.mjs} +0 -0
  358. package/{esm2015/lib/interfaces/chart-data.interface.js → esm2020/lib/interfaces/chart-data.interface.mjs} +0 -0
  359. package/{esm2015/lib/interfaces/chart-serie.interface.js → esm2020/lib/interfaces/chart-serie.interface.mjs} +0 -0
  360. package/{esm2015/lib/interfaces/document.interface.js → esm2020/lib/interfaces/document.interface.mjs} +0 -0
  361. package/{esm2015/lib/interfaces/documentable.interface.js → esm2020/lib/interfaces/documentable.interface.mjs} +0 -0
  362. package/{esm2015/lib/interfaces/event-listener.interface.js → esm2020/lib/interfaces/event-listener.interface.mjs} +0 -0
  363. package/{esm2015/lib/interfaces/expense.interface.js → esm2020/lib/interfaces/expense.interface.mjs} +0 -0
  364. package/{esm2015/lib/interfaces/income-source-forecast.interface.js → esm2020/lib/interfaces/income-source-forecast.interface.mjs} +0 -0
  365. package/{esm2015/lib/interfaces/index.js → esm2020/lib/interfaces/index.mjs} +0 -0
  366. package/{esm2015/lib/interfaces/option.interface.js → esm2020/lib/interfaces/option.interface.mjs} +0 -0
  367. package/{esm2015/lib/interfaces/photoable.js → esm2020/lib/interfaces/photoable.mjs} +0 -0
  368. package/{esm2015/lib/interfaces/receipt.interface.js → esm2020/lib/interfaces/receipt.interface.mjs} +0 -0
  369. package/{esm2015/lib/interfaces/table-exportable.interface.js → esm2020/lib/interfaces/table-exportable.interface.mjs} +0 -0
  370. package/{esm2015/lib/interfaces/tank.interface.js → esm2020/lib/interfaces/tank.interface.mjs} +0 -0
  371. package/{esm2015/lib/interfaces/updatable.interface.js → esm2020/lib/interfaces/updatable.interface.mjs} +0 -0
  372. package/{esm2015/lib/models/account-setup/account-setup-item.js → esm2020/lib/models/account-setup/account-setup-item.mjs} +0 -0
  373. package/{esm2015/lib/models/account-setup/account-setup-items.const.js → esm2020/lib/models/account-setup/account-setup-items.const.mjs} +0 -0
  374. package/{esm2015/lib/models/account-setup/account-setup-items.enum.js → esm2020/lib/models/account-setup/account-setup-items.enum.mjs} +0 -0
  375. package/{esm2015/lib/models/address/address.js → esm2020/lib/models/address/address.mjs} +0 -0
  376. package/{esm2015/lib/models/address/country.js → esm2020/lib/models/address/country.mjs} +0 -0
  377. package/{esm2015/lib/models/address/index.js → esm2020/lib/models/address/index.mjs} +0 -0
  378. package/{esm2015/lib/models/address/states.enum.js → esm2020/lib/models/address/states.enum.mjs} +0 -0
  379. package/{esm2015/lib/models/badge/badge-color.enum.js → esm2020/lib/models/badge/badge-color.enum.mjs} +0 -0
  380. package/{esm2015/lib/models/badge/badge.js → esm2020/lib/models/badge/badge.mjs} +0 -0
  381. package/{esm2015/lib/models/bank/allocation-group.js → esm2020/lib/models/bank/allocation-group.mjs} +0 -0
  382. package/{esm2015/lib/models/bank/bank-account-chart-data.js → esm2020/lib/models/bank/bank-account-chart-data.mjs} +0 -0
  383. package/{esm2015/lib/models/bank/bank-account-property.js → esm2020/lib/models/bank/bank-account-property.mjs} +0 -0
  384. package/{esm2015/lib/models/bank/bank-account-types.const.js → esm2020/lib/models/bank/bank-account-types.const.mjs} +0 -0
  385. package/esm2020/lib/models/bank/bank-account.mjs +170 -0
  386. package/{esm2015/lib/models/bank/bank-connection.js → esm2020/lib/models/bank/bank-connection.mjs} +0 -0
  387. package/{esm2015/lib/models/bank/bank-external-stats.js → esm2020/lib/models/bank/bank-external-stats.mjs} +0 -0
  388. package/{esm2015/lib/models/bank/bank-login-data.js → esm2020/lib/models/bank/bank-login-data.mjs} +0 -0
  389. package/{esm2015/lib/models/bank/bank-transaction-chart-data.js → esm2020/lib/models/bank/bank-transaction-chart-data.mjs} +0 -0
  390. package/{esm2015/lib/models/bank/bank-transaction-summary-fields.enum.js → esm2020/lib/models/bank/bank-transaction-summary-fields.enum.mjs} +0 -0
  391. package/{esm2015/lib/models/bank/bank-transaction.js → esm2020/lib/models/bank/bank-transaction.mjs} +0 -0
  392. package/{esm2015/lib/models/bank/bank.js → esm2020/lib/models/bank/bank.mjs} +0 -0
  393. package/{esm2015/lib/models/bank/basiq/basiq-config.js → esm2020/lib/models/bank/basiq/basiq-config.mjs} +0 -0
  394. package/{esm2015/lib/models/bank/basiq/basiq-connection-data.interface.js → esm2020/lib/models/bank/basiq/basiq-connection-data.interface.mjs} +0 -0
  395. package/{esm2015/lib/models/bank/basiq/basiq-connections-response.interface.js → esm2020/lib/models/bank/basiq/basiq-connections-response.interface.mjs} +0 -0
  396. package/{esm2015/lib/models/bank/basiq/basiq-job-response.js → esm2020/lib/models/bank/basiq/basiq-job-response.mjs} +0 -0
  397. package/{esm2015/lib/models/bank/basiq/basiq-job-step.js → esm2020/lib/models/bank/basiq/basiq-job-step.mjs} +0 -0
  398. package/{esm2015/lib/models/bank/basiq/basiq-job.js → esm2020/lib/models/bank/basiq/basiq-job.mjs} +0 -0
  399. package/{esm2015/lib/models/bank/basiq/basiq-token-response.interface.js → esm2020/lib/models/bank/basiq/basiq-token-response.interface.mjs} +0 -0
  400. package/{esm2015/lib/models/bank/basiq/basiq-token.js → esm2020/lib/models/bank/basiq/basiq-token.mjs} +0 -0
  401. package/{esm2015/lib/models/bank/basiq/index.js → esm2020/lib/models/bank/basiq/index.mjs} +0 -0
  402. package/{esm2015/lib/models/bank/index.js → esm2020/lib/models/bank/index.mjs} +0 -0
  403. package/{esm2015/lib/models/bank/type-loan.const.js → esm2020/lib/models/bank/type-loan.const.mjs} +0 -0
  404. package/{esm2015/lib/models/borrowing-expense/borrowing-expense-loan.js → esm2020/lib/models/borrowing-expense/borrowing-expense-loan.mjs} +0 -0
  405. package/{esm2015/lib/models/borrowing-expense/borrowing-expense.js → esm2020/lib/models/borrowing-expense/borrowing-expense.mjs} +0 -0
  406. package/{esm2015/lib/models/borrowing-expense/index.js → esm2020/lib/models/borrowing-expense/index.mjs} +0 -0
  407. package/{esm2015/lib/models/chart/chart-data.js → esm2020/lib/models/chart/chart-data.mjs} +0 -0
  408. package/{esm2015/lib/models/chart/chart-serie.js → esm2020/lib/models/chart/chart-serie.mjs} +0 -0
  409. package/{esm2015/lib/models/chart-accounts/chart-accounts-categories.const.js → esm2020/lib/models/chart-accounts/chart-accounts-categories.const.mjs} +0 -0
  410. package/{esm2015/lib/models/chart-accounts/chart-accounts-category.e-collection.js → esm2020/lib/models/chart-accounts/chart-accounts-category.e-collection.mjs} +0 -0
  411. package/{esm2015/lib/models/chart-accounts/chart-accounts-depreciation.js → esm2020/lib/models/chart-accounts/chart-accounts-depreciation.mjs} +0 -0
  412. package/{esm2015/lib/models/chart-accounts/chart-accounts-heading.js → esm2020/lib/models/chart-accounts/chart-accounts-heading.mjs} +0 -0
  413. package/{esm2015/lib/models/chart-accounts/chart-accounts-metadata.js → esm2020/lib/models/chart-accounts/chart-accounts-metadata.mjs} +0 -0
  414. package/{esm2015/lib/models/chart-accounts/chart-accounts-tax-labels.enum.js → esm2020/lib/models/chart-accounts/chart-accounts-tax-labels.enum.mjs} +0 -0
  415. package/{esm2015/lib/models/chart-accounts/chart-accounts-value.js → esm2020/lib/models/chart-accounts/chart-accounts-value.mjs} +0 -0
  416. package/esm2020/lib/models/chart-accounts/chart-accounts.mjs +213 -0
  417. package/{esm2015/lib/models/chart-accounts/index.js → esm2020/lib/models/chart-accounts/index.mjs} +0 -0
  418. package/{esm2015/lib/models/chat/chat-view-type.enum.js → esm2020/lib/models/chat/chat-view-type.enum.mjs} +0 -0
  419. package/{esm2015/lib/models/chat/chat.js → esm2020/lib/models/chat/chat.mjs} +0 -0
  420. package/{esm2015/lib/models/chat/index.js → esm2020/lib/models/chat/index.mjs} +0 -0
  421. package/{esm2015/lib/models/chat/message-document.js → esm2020/lib/models/chat/message-document.mjs} +0 -0
  422. package/{esm2015/lib/models/chat/message.js → esm2020/lib/models/chat/message.mjs} +0 -0
  423. package/{esm2015/lib/models/client/client-details.js → esm2020/lib/models/client/client-details.mjs} +0 -0
  424. package/{esm2015/lib/models/client/client-income-types.js → esm2020/lib/models/client/client-income-types.mjs} +0 -0
  425. package/esm2020/lib/models/client/client-invite.mjs +65 -0
  426. package/{esm2015/lib/models/client/client-movement.js → esm2020/lib/models/client/client-movement.mjs} +0 -0
  427. package/{esm2015/lib/models/client/client-portfolio-chart-data.js → esm2020/lib/models/client/client-portfolio-chart-data.mjs} +0 -0
  428. package/{esm2015/lib/models/client/client-portfolio-report.js → esm2020/lib/models/client/client-portfolio-report.mjs} +0 -0
  429. package/{esm2015/lib/models/color/alphabet-colors.enum.js → esm2020/lib/models/color/alphabet-colors.enum.mjs} +0 -0
  430. package/{esm2015/lib/models/depreciation/depreciation-capital-project.js → esm2020/lib/models/depreciation/depreciation-capital-project.mjs} +0 -0
  431. package/{esm2015/lib/models/depreciation/depreciation-forecast.js → esm2020/lib/models/depreciation/depreciation-forecast.mjs} +0 -0
  432. package/{esm2015/lib/models/depreciation/depreciation-group-item.js → esm2020/lib/models/depreciation/depreciation-group-item.mjs} +0 -0
  433. package/{esm2015/lib/models/depreciation/depreciation-group.enum.js → esm2020/lib/models/depreciation/depreciation-group.enum.mjs} +0 -0
  434. package/{esm2015/lib/models/depreciation/depreciation-group.js → esm2020/lib/models/depreciation/depreciation-group.mjs} +0 -0
  435. package/{esm2015/lib/models/depreciation/depreciation-groups.const.js → esm2020/lib/models/depreciation/depreciation-groups.const.mjs} +0 -0
  436. package/{esm2015/lib/models/depreciation/depreciation-lvp-rate.enum.js → esm2020/lib/models/depreciation/depreciation-lvp-rate.enum.mjs} +0 -0
  437. package/{esm2015/lib/models/depreciation/depreciation-receipt.js → esm2020/lib/models/depreciation/depreciation-receipt.mjs} +0 -0
  438. package/esm2020/lib/models/depreciation/depreciation.mjs +191 -0
  439. package/{esm2015/lib/models/depreciation/index.js → esm2020/lib/models/depreciation/index.mjs} +0 -0
  440. package/{esm2015/lib/models/dictionary/dictionary.js → esm2020/lib/models/dictionary/dictionary.mjs} +0 -0
  441. package/{esm2015/lib/models/dictionary/index.js → esm2020/lib/models/dictionary/index.mjs} +0 -0
  442. package/{esm2015/lib/models/document/document-api-url-prefix.enum.js → esm2020/lib/models/document/document-api-url-prefix.enum.mjs} +0 -0
  443. package/{esm2015/lib/models/document/document-file-types.const.js → esm2020/lib/models/document/document-file-types.const.mjs} +0 -0
  444. package/{esm2015/lib/models/document/document-folder.js → esm2020/lib/models/document/document-folder.mjs} +0 -0
  445. package/{esm2015/lib/models/document/document.js → esm2020/lib/models/document/document.mjs} +0 -0
  446. package/{esm2015/lib/models/document/index.js → esm2020/lib/models/document/index.mjs} +0 -0
  447. package/{esm2015/lib/models/employee/employee-details.js → esm2020/lib/models/employee/employee-details.mjs} +0 -0
  448. package/{esm2015/lib/models/employee/employee-invite.js → esm2020/lib/models/employee/employee-invite.mjs} +0 -0
  449. package/{esm2015/lib/models/endpoint/endpoint.js → esm2020/lib/models/endpoint/endpoint.mjs} +0 -0
  450. package/{esm2015/lib/models/endpoint/endpoints.const.js → esm2020/lib/models/endpoint/endpoints.const.mjs} +0 -0
  451. package/{esm2015/lib/models/event/app-event-type.enum.js → esm2020/lib/models/event/app-event-type.enum.mjs} +0 -0
  452. package/{esm2015/lib/models/event/app-event.js → esm2020/lib/models/event/app-event.mjs} +0 -0
  453. package/{esm2015/lib/models/event/index.js → esm2020/lib/models/event/index.mjs} +0 -0
  454. package/{esm2015/lib/models/export/export-cell-type.enum.js → esm2020/lib/models/export/export-cell-type.enum.mjs} +0 -0
  455. package/{esm2015/lib/models/export/export-cell.js → esm2020/lib/models/export/export-cell.mjs} +0 -0
  456. package/{esm2015/lib/models/export/export-data-table.js → esm2020/lib/models/export/export-data-table.mjs} +0 -0
  457. package/{esm2015/lib/models/export/export-format.enum.js → esm2020/lib/models/export/export-format.enum.mjs} +0 -0
  458. package/{esm2015/lib/models/export/export-row-data-type.enum.js → esm2020/lib/models/export/export-row-data-type.enum.mjs} +0 -0
  459. package/{esm2015/lib/models/export/export-row.js → esm2020/lib/models/export/export-row.mjs} +0 -0
  460. package/{esm2015/lib/models/file/file.js → esm2020/lib/models/file/file.mjs} +0 -0
  461. package/{esm2015/lib/models/file/icons-file.enum.js → esm2020/lib/models/file/icons-file.enum.mjs} +0 -0
  462. package/{esm2015/lib/models/file/index.js → esm2020/lib/models/file/index.mjs} +0 -0
  463. package/{esm2015/lib/models/financial-year/financial-year.js → esm2020/lib/models/financial-year/financial-year.mjs} +0 -0
  464. package/{esm2015/lib/models/financial-year/index.js → esm2020/lib/models/financial-year/index.mjs} +0 -0
  465. package/{esm2015/lib/models/financial-year/month-name-short.enum.js → esm2020/lib/models/financial-year/month-name-short.enum.mjs} +0 -0
  466. package/{esm2015/lib/models/financial-year/month-number.enum.js → esm2020/lib/models/financial-year/month-number.enum.mjs} +0 -0
  467. package/{esm2015/lib/models/financial-year/months.const.js → esm2020/lib/models/financial-year/months.const.mjs} +0 -0
  468. package/{esm2015/lib/models/firm/firm.js → esm2020/lib/models/firm/firm.mjs} +0 -0
  469. package/{esm2015/lib/models/income-position/income-position.js → esm2020/lib/models/income-position/income-position.mjs} +0 -0
  470. package/{esm2015/lib/models/income-source/income-source-chart-data.js → esm2020/lib/models/income-source/income-source-chart-data.mjs} +0 -0
  471. package/{esm2015/lib/models/income-source/income-source-forecast.js → esm2020/lib/models/income-source/income-source-forecast.mjs} +0 -0
  472. package/{esm2015/lib/models/income-source/income-source-type.js → esm2020/lib/models/income-source/income-source-type.mjs} +0 -0
  473. package/{esm2015/lib/models/income-source/income-source.js → esm2020/lib/models/income-source/income-source.mjs} +0 -0
  474. package/{esm2015/lib/models/income-source/salary-forecast.js → esm2020/lib/models/income-source/salary-forecast.mjs} +0 -0
  475. package/{esm2015/lib/models/income-source/sole-forecast.js → esm2020/lib/models/income-source/sole-forecast.mjs} +0 -0
  476. package/{esm2015/lib/models/index.js → esm2020/lib/models/index.mjs} +0 -0
  477. package/{esm2015/lib/models/loan/index.js → esm2020/lib/models/loan/index.mjs} +0 -0
  478. package/{esm2015/lib/models/loan/loan-max-number-of-payments.enum.js → esm2020/lib/models/loan/loan-max-number-of-payments.enum.mjs} +0 -0
  479. package/{esm2015/lib/models/loan/loan-payment.js → esm2020/lib/models/loan/loan-payment.mjs} +0 -0
  480. package/{esm2015/lib/models/loan/loan-payout.js → esm2020/lib/models/loan/loan-payout.mjs} +0 -0
  481. package/{esm2015/lib/models/loan/loan.js → esm2020/lib/models/loan/loan.mjs} +0 -0
  482. package/{esm2015/lib/models/notification/index.js → esm2020/lib/models/notification/index.mjs} +0 -0
  483. package/{esm2015/lib/models/notification/notification.js → esm2020/lib/models/notification/notification.mjs} +0 -0
  484. package/{esm2015/lib/models/pdf/pdf-orientation.enum.js → esm2020/lib/models/pdf/pdf-orientation.enum.mjs} +0 -0
  485. package/{esm2015/lib/models/pdf/pdf-settings.js → esm2020/lib/models/pdf/pdf-settings.mjs} +0 -0
  486. package/{esm2015/lib/models/phone/phone.js → esm2020/lib/models/phone/phone.mjs} +0 -0
  487. package/{esm2015/lib/models/property/calculation-form-item.js → esm2020/lib/models/property/calculation-form-item.mjs} +0 -0
  488. package/{esm2015/lib/models/property/calculation-form-type.enum.js → esm2020/lib/models/property/calculation-form-type.enum.mjs} +0 -0
  489. package/{esm2015/lib/models/property/capital-costs-itmes.const.js → esm2020/lib/models/property/capital-costs-itmes.const.mjs} +0 -0
  490. package/{esm2015/lib/models/property/corelogic-suggestion.js → esm2020/lib/models/property/corelogic-suggestion.mjs} +0 -0
  491. package/{esm2015/lib/models/property/index.js → esm2020/lib/models/property/index.mjs} +0 -0
  492. package/{esm2015/lib/models/property/property-category-movement.js → esm2020/lib/models/property/property-category-movement.mjs} +0 -0
  493. package/{esm2015/lib/models/property/property-category.js → esm2020/lib/models/property/property-category.mjs} +0 -0
  494. package/{esm2015/lib/models/property/property-document.js → esm2020/lib/models/property/property-document.mjs} +0 -0
  495. package/esm2020/lib/models/property/property-equity-chart-data.mjs +164 -0
  496. package/{esm2015/lib/models/property/property-equity-chart-item.js → esm2020/lib/models/property/property-equity-chart-item.mjs} +0 -0
  497. package/{esm2015/lib/models/property/property-equity-chart-type.enum.js → esm2020/lib/models/property/property-equity-chart-type.enum.mjs} +0 -0
  498. package/{esm2015/lib/models/property/property-forecast.js → esm2020/lib/models/property/property-forecast.mjs} +0 -0
  499. package/{esm2015/lib/models/property/property-sale/index.js → esm2020/lib/models/property/property-sale/index.mjs} +0 -0
  500. package/esm2020/lib/models/property/property-sale/property-sale-cost-base.mjs +19 -0
  501. package/{esm2015/lib/models/property/property-sale/property-sale-tax-exemption-metadata.js → esm2020/lib/models/property/property-sale/property-sale-tax-exemption-metadata.mjs} +0 -0
  502. package/esm2020/lib/models/property/property-sale/property-sale.mjs +42 -0
  503. package/{esm2015/lib/models/property/property-sale/tax-exemption-metadata.js → esm2020/lib/models/property/property-sale/tax-exemption-metadata.mjs} +0 -0
  504. package/{esm2015/lib/models/property/property-sale/tax-exemption.js → esm2020/lib/models/property/property-sale/tax-exemption.mjs} +0 -0
  505. package/esm2020/lib/models/property/property-share.mjs +47 -0
  506. package/{esm2015/lib/models/property/property-subscription.js → esm2020/lib/models/property/property-subscription.mjs} +0 -0
  507. package/{esm2015/lib/models/property/property-valuation.js → esm2020/lib/models/property/property-valuation.mjs} +0 -0
  508. package/esm2020/lib/models/property/property.mjs +242 -0
  509. package/{esm2015/lib/models/property/share-filter-options.enum.js → esm2020/lib/models/property/share-filter-options.enum.mjs} +0 -0
  510. package/{esm2015/lib/models/registration-invite/registration-invite.js → esm2020/lib/models/registration-invite/registration-invite.mjs} +0 -0
  511. package/{esm2015/lib/models/report/depreciation/depreciation-lvp-asset-type.enum.js → esm2020/lib/models/report/depreciation/depreciation-lvp-asset-type.enum.mjs} +0 -0
  512. package/{esm2015/lib/models/report/depreciation/depreciation-lvp-report-item.js → esm2020/lib/models/report/depreciation/depreciation-lvp-report-item.mjs} +0 -0
  513. package/{esm2015/lib/models/report/depreciation/depreciation-report-item.js → esm2020/lib/models/report/depreciation/depreciation-report-item.mjs} +0 -0
  514. package/{esm2015/lib/models/report/depreciation/index.js → esm2020/lib/models/report/depreciation/index.mjs} +0 -0
  515. package/{esm2015/lib/models/report/index.js → esm2020/lib/models/report/index.mjs} +0 -0
  516. package/{esm2015/lib/models/report/my-tax/ato-links.js → esm2020/lib/models/report/my-tax/ato-links.mjs} +0 -0
  517. package/{esm2015/lib/models/report/my-tax/index.js → esm2020/lib/models/report/my-tax/index.mjs} +0 -0
  518. package/{esm2015/lib/models/report/my-tax/my-tax-business-income-or-losses/business-income-or-losses-categories.const.js → esm2020/lib/models/report/my-tax/my-tax-business-income-or-losses/business-income-or-losses-categories.const.mjs} +0 -0
  519. package/{esm2015/lib/models/report/my-tax/my-tax-business-income-or-losses/business-type.enum.js → esm2020/lib/models/report/my-tax/my-tax-business-income-or-losses/business-type.enum.mjs} +0 -0
  520. package/{esm2015/lib/models/report/my-tax/my-tax-business-income-or-losses/loss-type.enum.js → esm2020/lib/models/report/my-tax/my-tax-business-income-or-losses/loss-type.enum.mjs} +0 -0
  521. package/esm2020/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.mjs +15 -0
  522. package/{esm2015/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.js → esm2020/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.mjs} +0 -0
  523. package/{esm2015/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.js → esm2020/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.mjs} +0 -0
  524. package/{esm2015/lib/models/report/my-tax/my-tax-cgt/cgt-exemption-and-rollover-code.enum.js → esm2020/lib/models/report/my-tax/my-tax-cgt/cgt-exemption-and-rollover-code.enum.mjs} +0 -0
  525. package/{esm2015/lib/models/report/my-tax/my-tax-cgt/my-tax-cgt.js → esm2020/lib/models/report/my-tax/my-tax-cgt/my-tax-cgt.mjs} +0 -0
  526. package/{esm2015/lib/models/report/my-tax/my-tax-deductions/deduction-clothing-type.enum.js → esm2020/lib/models/report/my-tax/my-tax-deductions/deduction-clothing-type.enum.mjs} +0 -0
  527. package/{esm2015/lib/models/report/my-tax/my-tax-deductions/deduction-fields.const.js → esm2020/lib/models/report/my-tax/my-tax-deductions/deduction-fields.const.mjs} +0 -0
  528. package/{esm2015/lib/models/report/my-tax/my-tax-deductions/deduction-self-education-type.enum.js → esm2020/lib/models/report/my-tax/my-tax-deductions/deduction-self-education-type.enum.mjs} +0 -0
  529. package/{esm2015/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.js → esm2020/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.mjs} +0 -0
  530. package/{esm2015/lib/models/report/my-tax/my-tax-dividends/my-tax-dividends.js → esm2020/lib/models/report/my-tax/my-tax-dividends/my-tax-dividends.mjs} +0 -0
  531. package/{esm2015/lib/models/report/my-tax/my-tax-estimate/my-tax-estimate.js → esm2020/lib/models/report/my-tax/my-tax-estimate/my-tax-estimate.mjs} +0 -0
  532. package/{esm2015/lib/models/report/my-tax/my-tax-income-statements/my-tax-income-statements.js → esm2020/lib/models/report/my-tax/my-tax-income-statements/my-tax-income-statements.mjs} +0 -0
  533. package/{esm2015/lib/models/report/my-tax/my-tax-income-tests/my-tax-income-tests.js → esm2020/lib/models/report/my-tax/my-tax-income-tests/my-tax-income-tests.mjs} +0 -0
  534. package/{esm2015/lib/models/report/my-tax/my-tax-interest/my-tax-interest.js → esm2020/lib/models/report/my-tax/my-tax-interest/my-tax-interest.mjs} +0 -0
  535. package/{esm2015/lib/models/report/my-tax/my-tax-losses/my-tax-losses.js → esm2020/lib/models/report/my-tax/my-tax-losses/my-tax-losses.mjs} +0 -0
  536. package/{esm2015/lib/models/report/my-tax/my-tax-offsets/my-tax-offsets.js → esm2020/lib/models/report/my-tax/my-tax-offsets/my-tax-offsets.mjs} +0 -0
  537. package/{esm2015/lib/models/report/my-tax/my-tax-other-income/my-tax-other-income.js → esm2020/lib/models/report/my-tax/my-tax-other-income/my-tax-other-income.mjs} +0 -0
  538. package/{esm2015/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.js → esm2020/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.mjs} +0 -0
  539. package/esm2020/lib/models/report/my-tax/my-tax-rent/my-tax-rent.mjs +47 -0
  540. package/{esm2015/lib/models/report/property/index.js → esm2020/lib/models/report/property/index.mjs} +0 -0
  541. package/{esm2015/lib/models/report/property/property-report-item-depreciation.js → esm2020/lib/models/report/property/property-report-item-depreciation.mjs} +0 -0
  542. package/{esm2015/lib/models/report/property/property-report-item-transaction.js → esm2020/lib/models/report/property/property-report-item-transaction.mjs} +0 -0
  543. package/{esm2015/lib/models/report/property/property-report-item.js → esm2020/lib/models/report/property/property-report-item.mjs} +0 -0
  544. package/{esm2015/lib/models/report/sole/index.js → esm2020/lib/models/report/sole/index.mjs} +0 -0
  545. package/{esm2015/lib/models/report/sole/sole-business/sole-business-loss-report.js → esm2020/lib/models/report/sole/sole-business/sole-business-loss-report.mjs} +0 -0
  546. package/{esm2015/lib/models/report/vehicle-expense/vehicle-expense.js → esm2020/lib/models/report/vehicle-expense/vehicle-expense.mjs} +0 -0
  547. package/{esm2015/lib/models/service-subscription/index.js → esm2020/lib/models/service-subscription/index.mjs} +0 -0
  548. package/{esm2015/lib/models/service-subscription/module-url-list.const.js → esm2020/lib/models/service-subscription/module-url-list.const.mjs} +0 -0
  549. package/{esm2015/lib/models/service-subscription/service-payment.js → esm2020/lib/models/service-subscription/service-payment.mjs} +0 -0
  550. package/{esm2015/lib/models/service-subscription/service-price.js → esm2020/lib/models/service-subscription/service-price.mjs} +0 -0
  551. package/{esm2015/lib/models/service-subscription/service-product.js → esm2020/lib/models/service-subscription/service-product.mjs} +0 -0
  552. package/{esm2015/lib/models/service-subscription/service-subscription-item.js → esm2020/lib/models/service-subscription/service-subscription-item.mjs} +0 -0
  553. package/{esm2015/lib/models/service-subscription/service-subscription.js → esm2020/lib/models/service-subscription/service-subscription.mjs} +0 -0
  554. package/{esm2015/lib/models/sole/bas-report.js → esm2020/lib/models/sole/bas-report.mjs} +0 -0
  555. package/{esm2015/lib/models/sole/index.js → esm2020/lib/models/sole/index.mjs} +0 -0
  556. package/{esm2015/lib/models/sole/sole-business-activity.js → esm2020/lib/models/sole/sole-business-activity.mjs} +0 -0
  557. package/{esm2015/lib/models/sole/sole-business-allocation.js → esm2020/lib/models/sole/sole-business-allocation.mjs} +0 -0
  558. package/{esm2015/lib/models/sole/sole-business-loss-offset-rule.js → esm2020/lib/models/sole/sole-business-loss-offset-rule.mjs} +0 -0
  559. package/{esm2015/lib/models/sole/sole-business-loss.js → esm2020/lib/models/sole/sole-business-loss.mjs} +0 -0
  560. package/{esm2015/lib/models/sole/sole-business.js → esm2020/lib/models/sole/sole-business.mjs} +0 -0
  561. package/{esm2015/lib/models/sole/sole-contact.js → esm2020/lib/models/sole/sole-contact.mjs} +0 -0
  562. package/{esm2015/lib/models/sole/sole-depreciation-method.js → esm2020/lib/models/sole/sole-depreciation-method.mjs} +0 -0
  563. package/{esm2015/lib/models/sole/sole-details.js → esm2020/lib/models/sole/sole-details.mjs} +0 -0
  564. package/{esm2015/lib/models/sole/sole-invoice-item.js → esm2020/lib/models/sole/sole-invoice-item.mjs} +0 -0
  565. package/{esm2015/lib/models/sole/sole-invoice-template.js → esm2020/lib/models/sole/sole-invoice-template.mjs} +0 -0
  566. package/{esm2015/lib/models/sole/sole-invoice.js → esm2020/lib/models/sole/sole-invoice.mjs} +0 -0
  567. package/{esm2015/lib/models/tax-review/tax-review.js → esm2020/lib/models/tax-review/tax-review.mjs} +0 -0
  568. package/{esm2015/lib/models/tax-summary/report-item-details.js → esm2020/lib/models/tax-summary/report-item-details.mjs} +0 -0
  569. package/esm2020/lib/models/tax-summary/report-item.mjs +29 -0
  570. package/{esm2015/lib/models/tax-summary/tax-summary-section.js → esm2020/lib/models/tax-summary/tax-summary-section.mjs} +0 -0
  571. package/{esm2015/lib/models/tax-summary/tax-summary-type.enum.js → esm2020/lib/models/tax-summary/tax-summary-type.enum.mjs} +0 -0
  572. package/{esm2015/lib/models/tax-summary/tax-summary.js → esm2020/lib/models/tax-summary/tax-summary.mjs} +5 -7
  573. package/{esm2015/lib/models/toast/toast-type.enum.js → esm2020/lib/models/toast/toast-type.enum.mjs} +0 -0
  574. package/{esm2015/lib/models/toast/toast.js → esm2020/lib/models/toast/toast.mjs} +0 -0
  575. package/{esm2015/lib/models/transaction/income-amount-type.enum.js → esm2020/lib/models/transaction/income-amount-type.enum.mjs} +0 -0
  576. package/{esm2015/lib/models/transaction/index.js → esm2020/lib/models/transaction/index.mjs} +0 -0
  577. package/{esm2015/lib/models/transaction/transaction-allocation.js → esm2020/lib/models/transaction/transaction-allocation.mjs} +0 -0
  578. package/{esm2015/lib/models/transaction/transaction-category.enum.js → esm2020/lib/models/transaction/transaction-category.enum.mjs} +0 -0
  579. package/{esm2015/lib/models/transaction/transaction-metadata.js → esm2020/lib/models/transaction/transaction-metadata.mjs} +0 -0
  580. package/{esm2015/lib/models/transaction/transaction-receipt.js → esm2020/lib/models/transaction/transaction-receipt.mjs} +0 -0
  581. package/esm2020/lib/models/transaction/transaction.mjs +238 -0
  582. package/{esm2015/lib/models/user/index.js → esm2020/lib/models/user/index.mjs} +0 -0
  583. package/{esm2015/lib/models/user/my-account-history-initiated-by.enum.js → esm2020/lib/models/user/my-account-history-initiated-by.enum.mjs} +0 -0
  584. package/{esm2015/lib/models/user/my-account-history-status.enum.js → esm2020/lib/models/user/my-account-history-status.enum.mjs} +0 -0
  585. package/{esm2015/lib/models/user/my-account-history-type.enum.js → esm2020/lib/models/user/my-account-history-type.enum.mjs} +0 -0
  586. package/{esm2015/lib/models/user/my-account-history.js → esm2020/lib/models/user/my-account-history.mjs} +0 -0
  587. package/{esm2015/lib/models/user/occupation.js → esm2020/lib/models/user/occupation.mjs} +0 -0
  588. package/{esm2015/lib/models/user/user-roles.const.js → esm2020/lib/models/user/user-roles.const.mjs} +0 -0
  589. package/{esm2015/lib/models/user/user-to-register.js → esm2020/lib/models/user/user-to-register.mjs} +0 -0
  590. package/{esm2015/lib/models/user/user-work-position.const.js → esm2020/lib/models/user/user-work-position.const.mjs} +0 -0
  591. package/{esm2015/lib/models/user/user.js → esm2020/lib/models/user/user.mjs} +3 -3
  592. package/{esm2015/lib/models/user-event/user-event-setting-field.enum.js → esm2020/lib/models/user-event/user-event-setting-field.enum.mjs} +0 -0
  593. package/{esm2015/lib/models/user-event/user-event-setting.js → esm2020/lib/models/user-event/user-event-setting.mjs} +0 -0
  594. package/{esm2015/lib/models/user-event/user-event-type-category.js → esm2020/lib/models/user-event/user-event-type-category.mjs} +0 -0
  595. package/{esm2015/lib/models/user-event/user-event-type.js → esm2020/lib/models/user-event/user-event-type.mjs} +0 -0
  596. package/{esm2015/lib/models/vehicle/index.js → esm2020/lib/models/vehicle/index.mjs} +0 -0
  597. package/{esm2015/lib/models/vehicle/logbook-period.js → esm2020/lib/models/vehicle/logbook-period.mjs} +0 -0
  598. package/{esm2015/lib/models/vehicle/vehicle-claim-details.js → esm2020/lib/models/vehicle/vehicle-claim-details.mjs} +0 -0
  599. package/{esm2015/lib/models/vehicle/vehicle-claim.js → esm2020/lib/models/vehicle/vehicle-claim.mjs} +0 -0
  600. package/esm2020/lib/models/vehicle/vehicle-logbook.mjs +53 -0
  601. package/{esm2015/lib/models/vehicle/vehicle.js → esm2020/lib/models/vehicle/vehicle.mjs} +0 -0
  602. package/{esm2015/lib/services/account-setup/account-setup.service.js → esm2020/lib/services/account-setup/account-setup.service.mjs} +4 -4
  603. package/{esm2015/lib/services/account-setup/index.js → esm2020/lib/services/account-setup/index.mjs} +0 -0
  604. package/{esm2015/lib/services/affiliate/index.js → esm2020/lib/services/affiliate/index.mjs} +0 -0
  605. package/{esm2015/lib/services/affiliate/rewardful/index.js → esm2020/lib/services/affiliate/rewardful/index.mjs} +0 -0
  606. package/{esm2015/lib/services/affiliate/rewardful/rewardful.service.js → esm2020/lib/services/affiliate/rewardful/rewardful.service.mjs} +4 -4
  607. package/{esm2015/lib/services/asset/assets.service.js → esm2020/lib/services/asset/assets.service.mjs} +4 -4
  608. package/{esm2015/lib/services/asset/index.js → esm2020/lib/services/asset/index.mjs} +0 -0
  609. package/{esm2015/lib/services/auth/auth.service.js → esm2020/lib/services/auth/auth.service.mjs} +4 -4
  610. package/{esm2015/lib/services/auth/index.js → esm2020/lib/services/auth/index.mjs} +0 -0
  611. package/{esm2015/lib/services/auth/jwt.service.js → esm2020/lib/services/auth/jwt.service.mjs} +4 -4
  612. package/{esm2015/lib/services/bank/bank-account-calculation.service.js → esm2020/lib/services/bank/bank-account-calculation.service.mjs} +4 -4
  613. package/{esm2015/lib/services/bank/bank-transaction-calculation.service.js → esm2020/lib/services/bank/bank-transaction-calculation.service.mjs} +4 -4
  614. package/{esm2015/lib/services/bank/index.js → esm2020/lib/services/bank/index.mjs} +0 -0
  615. package/{esm2015/lib/services/event/event-dispatcher.service.js → esm2020/lib/services/event/event-dispatcher.service.mjs} +4 -4
  616. package/{esm2015/lib/services/event/index.js → esm2020/lib/services/event/index.mjs} +0 -0
  617. package/{esm2015/lib/services/event/sse.service.js → esm2020/lib/services/event/sse.service.mjs} +4 -4
  618. package/{esm2015/lib/services/export/export-formatter.service.js → esm2020/lib/services/export/export-formatter.service.mjs} +4 -4
  619. package/{esm2015/lib/services/export/index.js → esm2020/lib/services/export/index.mjs} +0 -0
  620. package/{esm2015/lib/services/header-title/header-title.service.js → esm2020/lib/services/header-title/header-title.service.mjs} +4 -4
  621. package/{esm2015/lib/services/header-title/index.js → esm2020/lib/services/header-title/index.mjs} +0 -0
  622. package/{esm2015/lib/services/http/address/address.service.js → esm2020/lib/services/http/address/address.service.mjs} +4 -4
  623. package/{esm2015/lib/services/http/address/index.js → esm2020/lib/services/http/address/index.mjs} +0 -0
  624. package/{esm2015/lib/services/http/bank/bank-account/bank-account.service.js → esm2020/lib/services/http/bank/bank-account/bank-account.service.mjs} +4 -4
  625. package/{esm2015/lib/services/http/bank/bank-account/index.js → esm2020/lib/services/http/bank/bank-account/index.mjs} +0 -0
  626. package/{esm2015/lib/services/http/bank/bank-connection/bank-connection.service.js → esm2020/lib/services/http/bank/bank-connection/bank-connection.service.mjs} +4 -4
  627. package/{esm2015/lib/services/http/bank/bank-connection/index.js → esm2020/lib/services/http/bank/bank-connection/index.mjs} +0 -0
  628. package/{esm2015/lib/services/http/bank/bank-transaction/bank-transaction.service.js → esm2020/lib/services/http/bank/bank-transaction/bank-transaction.service.mjs} +4 -4
  629. package/{esm2015/lib/services/http/bank/bank-transaction/index.js → esm2020/lib/services/http/bank/bank-transaction/index.mjs} +0 -0
  630. package/{esm2015/lib/services/http/bank/bank.service.js → esm2020/lib/services/http/bank/bank.service.mjs} +4 -4
  631. package/{esm2015/lib/services/http/bank/basiq/basiq-token.service.js → esm2020/lib/services/http/bank/basiq/basiq-token.service.mjs} +4 -4
  632. package/{esm2015/lib/services/http/bank/basiq/basiq.service.js → esm2020/lib/services/http/bank/basiq/basiq.service.mjs} +4 -4
  633. package/{esm2015/lib/services/http/bank/basiq/index.js → esm2020/lib/services/http/bank/basiq/index.mjs} +0 -0
  634. package/{esm2015/lib/services/http/bank/index.js → esm2020/lib/services/http/bank/index.mjs} +0 -0
  635. package/{esm2015/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.js → esm2020/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.mjs} +4 -4
  636. package/{esm2015/lib/services/http/chart-accounts/chart-accounts-depreciations/index.js → esm2020/lib/services/http/chart-accounts/chart-accounts-depreciations/index.mjs} +0 -0
  637. package/esm2020/lib/services/http/chart-accounts/chart-accounts.service.mjs +49 -0
  638. package/{esm2015/lib/services/http/chart-accounts/index.js → esm2020/lib/services/http/chart-accounts/index.mjs} +0 -0
  639. package/{esm2015/lib/services/http/chat/chat.service.js → esm2020/lib/services/http/chat/chat.service.mjs} +6 -6
  640. package/{esm2015/lib/services/http/chat/index.js → esm2020/lib/services/http/chat/index.mjs} +0 -0
  641. package/esm2020/lib/services/http/chat/message-document.service.mjs +78 -0
  642. package/{esm2015/lib/services/http/chat/message.service.js → esm2020/lib/services/http/chat/message.service.mjs} +4 -4
  643. package/{esm2015/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.js → esm2020/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.mjs} +4 -4
  644. package/{esm2015/lib/services/http/depreciation/depreciation-capital-project/index.js → esm2020/lib/services/http/depreciation/depreciation-capital-project/index.mjs} +0 -0
  645. package/{esm2015/lib/services/http/depreciation/depreciation-receipt/depreciation-receipt.service.js → esm2020/lib/services/http/depreciation/depreciation-receipt/depreciation-receipt.service.mjs} +4 -4
  646. package/{esm2015/lib/services/http/depreciation/depreciation-receipt/index.js → esm2020/lib/services/http/depreciation/depreciation-receipt/index.mjs} +0 -0
  647. package/{esm2015/lib/services/http/depreciation/depreciation.service.js → esm2020/lib/services/http/depreciation/depreciation.service.mjs} +4 -4
  648. package/{esm2015/lib/services/http/depreciation/index.js → esm2020/lib/services/http/depreciation/index.mjs} +0 -0
  649. package/{esm2015/lib/services/http/document/document-folder/document-folder.service.js → esm2020/lib/services/http/document/document-folder/document-folder.service.mjs} +4 -4
  650. package/{esm2015/lib/services/http/document/document.service.js → esm2020/lib/services/http/document/document.service.mjs} +4 -4
  651. package/{esm2015/lib/services/http/document/index.js → esm2020/lib/services/http/document/index.mjs} +0 -0
  652. package/{esm2015/lib/services/http/facebook/facebook-auth-options.interface.js → esm2020/lib/services/http/facebook/facebook-auth-options.interface.mjs} +0 -0
  653. package/{esm2015/lib/services/http/facebook/facebook-auth-response.interface.js → esm2020/lib/services/http/facebook/facebook-auth-response.interface.mjs} +0 -0
  654. package/{esm2015/lib/services/http/facebook/facebook-status-response.interface.js → esm2020/lib/services/http/facebook/facebook-status-response.interface.mjs} +0 -0
  655. package/esm2020/lib/services/http/facebook/facebook.service.mjs +87 -0
  656. package/{esm2015/lib/services/http/facebook/index.js → esm2020/lib/services/http/facebook/index.mjs} +0 -0
  657. package/{esm2015/lib/services/http/file/file.service.js → esm2020/lib/services/http/file/file.service.mjs} +4 -4
  658. package/{esm2015/lib/services/http/file/index.js → esm2020/lib/services/http/file/index.mjs} +0 -0
  659. package/{esm2015/lib/services/http/firm/client-income/client-income-types.service.js → esm2020/lib/services/http/firm/client-income/client-income-types.service.mjs} +4 -4
  660. package/{esm2015/lib/services/http/firm/client-income/index.js → esm2020/lib/services/http/firm/client-income/index.mjs} +0 -0
  661. package/{esm2015/lib/services/http/firm/client-invite/client-invite.service.js → esm2020/lib/services/http/firm/client-invite/client-invite.service.mjs} +4 -4
  662. package/{esm2015/lib/services/http/firm/client-invite/index.js → esm2020/lib/services/http/firm/client-invite/index.mjs} +0 -0
  663. package/{esm2015/lib/services/http/firm/client-movement/client-movement.service.js → esm2020/lib/services/http/firm/client-movement/client-movement.service.mjs} +4 -4
  664. package/{esm2015/lib/services/http/firm/client-movement/index.js → esm2020/lib/services/http/firm/client-movement/index.mjs} +0 -0
  665. package/{esm2015/lib/services/http/firm/employee/employee.service.js → esm2020/lib/services/http/firm/employee/employee.service.mjs} +4 -4
  666. package/{esm2015/lib/services/http/firm/employee/index.js → esm2020/lib/services/http/firm/employee/index.mjs} +0 -0
  667. package/{esm2015/lib/services/http/firm/employee-invite/employee-invite.service.js → esm2020/lib/services/http/firm/employee-invite/employee-invite.service.mjs} +4 -4
  668. package/{esm2015/lib/services/http/firm/employee-invite/index.js → esm2020/lib/services/http/firm/employee-invite/index.mjs} +0 -0
  669. package/{esm2015/lib/services/http/firm/firm.service.js → esm2020/lib/services/http/firm/firm.service.mjs} +4 -4
  670. package/{esm2015/lib/services/http/firm/index.js → esm2020/lib/services/http/firm/index.mjs} +0 -0
  671. package/{esm2015/lib/services/http/firm/portfolio-report/client-portfolio-report.service.js → esm2020/lib/services/http/firm/portfolio-report/client-portfolio-report.service.mjs} +4 -4
  672. package/{esm2015/lib/services/http/firm/portfolio-report/index.js → esm2020/lib/services/http/firm/portfolio-report/index.mjs} +0 -0
  673. package/{esm2015/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.js → esm2020/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.mjs} +4 -4
  674. package/{esm2015/lib/services/http/income-source/income-source-forecast/index.js → esm2020/lib/services/http/income-source/income-source-forecast/index.mjs} +0 -0
  675. package/{esm2015/lib/services/http/income-source/income-source.service.js → esm2020/lib/services/http/income-source/income-source.service.mjs} +4 -4
  676. package/{esm2015/lib/services/http/income-source/index.js → esm2020/lib/services/http/income-source/index.mjs} +0 -0
  677. package/{esm2015/lib/services/http/income-source/salary-forecast/index.js → esm2020/lib/services/http/income-source/salary-forecast/index.mjs} +0 -0
  678. package/{esm2015/lib/services/http/income-source/salary-forecast/salary-forecast.service.js → esm2020/lib/services/http/income-source/salary-forecast/salary-forecast.service.mjs} +4 -4
  679. package/{esm2015/lib/services/http/income-source/sole-forecast/index.js → esm2020/lib/services/http/income-source/sole-forecast/index.mjs} +0 -0
  680. package/{esm2015/lib/services/http/income-source/sole-forecast/sole-forecast.service.js → esm2020/lib/services/http/income-source/sole-forecast/sole-forecast.service.mjs} +4 -4
  681. package/{esm2015/lib/services/http/index.js → esm2020/lib/services/http/index.mjs} +0 -0
  682. package/{esm2015/lib/services/http/loan/borrowing-expense/borrowing-expense.service.js → esm2020/lib/services/http/loan/borrowing-expense/borrowing-expense.service.mjs} +4 -4
  683. package/{esm2015/lib/services/http/loan/borrowing-expense/index.js → esm2020/lib/services/http/loan/borrowing-expense/index.mjs} +0 -0
  684. package/{esm2015/lib/services/http/loan/index.js → esm2020/lib/services/http/loan/index.mjs} +0 -0
  685. package/{esm2015/lib/services/http/loan/loan.service.js → esm2020/lib/services/http/loan/loan.service.mjs} +4 -4
  686. package/{esm2015/lib/services/http/property/index.js → esm2020/lib/services/http/property/index.mjs} +0 -0
  687. package/{esm2015/lib/services/http/property/property-category/index.js → esm2020/lib/services/http/property/property-category/index.mjs} +0 -0
  688. package/{esm2015/lib/services/http/property/property-category/property-category.service.js → esm2020/lib/services/http/property/property-category/property-category.service.mjs} +4 -4
  689. package/{esm2015/lib/services/http/property/property-category-movement/index.js → esm2020/lib/services/http/property/property-category-movement/index.mjs} +0 -0
  690. package/{esm2015/lib/services/http/property/property-category-movement/property-category-movement.service.js → esm2020/lib/services/http/property/property-category-movement/property-category-movement.service.mjs} +4 -4
  691. package/{esm2015/lib/services/http/property/property-document/index.js → esm2020/lib/services/http/property/property-document/index.mjs} +0 -0
  692. package/{esm2015/lib/services/http/property/property-document/property-document.service.js → esm2020/lib/services/http/property/property-document/property-document.service.mjs} +4 -4
  693. package/{esm2015/lib/services/http/property/property-sale/index.js → esm2020/lib/services/http/property/property-sale/index.mjs} +0 -0
  694. package/{esm2015/lib/services/http/property/property-sale/property-sale.service.js → esm2020/lib/services/http/property/property-sale/property-sale.service.mjs} +4 -4
  695. package/{esm2015/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.js → esm2020/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.mjs} +4 -4
  696. package/{esm2015/lib/services/http/property/property-share/index.js → esm2020/lib/services/http/property/property-share/index.mjs} +0 -0
  697. package/{esm2015/lib/services/http/property/property-share/property-share.service.js → esm2020/lib/services/http/property/property-share/property-share.service.mjs} +4 -4
  698. package/{esm2015/lib/services/http/property/property.service.js → esm2020/lib/services/http/property/property.service.mjs} +4 -4
  699. package/{esm2015/lib/services/http/receipt/index.js → esm2020/lib/services/http/receipt/index.mjs} +0 -0
  700. package/{esm2015/lib/services/http/receipt/receipt.service.js → esm2020/lib/services/http/receipt/receipt.service.mjs} +4 -4
  701. package/{esm2015/lib/services/http/rest/http-method.type.js → esm2020/lib/services/http/rest/http-method.type.mjs} +0 -0
  702. package/{esm2015/lib/services/http/rest/index.js → esm2020/lib/services/http/rest/index.mjs} +0 -0
  703. package/{esm2015/lib/services/http/rest/rest-method.type.js → esm2020/lib/services/http/rest/rest-method.type.mjs} +0 -0
  704. package/{esm2015/lib/services/http/rest/rest-old.service.js → esm2020/lib/services/http/rest/rest-old.service.mjs} +4 -4
  705. package/{esm2015/lib/services/http/rest/rest.service.js → esm2020/lib/services/http/rest/rest.service.mjs} +4 -4
  706. package/{esm2015/lib/services/http/service-notification/index.js → esm2020/lib/services/http/service-notification/index.mjs} +0 -0
  707. package/{esm2015/lib/services/http/service-notification/service-notification.service.js → esm2020/lib/services/http/service-notification/service-notification.service.mjs} +4 -4
  708. package/{esm2015/lib/services/http/sole/bas-report/bas-report.service.js → esm2020/lib/services/http/sole/bas-report/bas-report.service.mjs} +4 -4
  709. package/{esm2015/lib/services/http/sole/index.js → esm2020/lib/services/http/sole/index.mjs} +0 -0
  710. package/{esm2015/lib/services/http/sole/sole-business/messages.enum.js → esm2020/lib/services/http/sole/sole-business/messages.enum.mjs} +0 -0
  711. package/{esm2015/lib/services/http/sole/sole-business/sole-business.service.js → esm2020/lib/services/http/sole/sole-business/sole-business.service.mjs} +4 -4
  712. package/{esm2015/lib/services/http/sole/sole-business-activity/sole-business-activity.service.js → esm2020/lib/services/http/sole/sole-business-activity/sole-business-activity.service.mjs} +4 -4
  713. package/{esm2015/lib/services/http/sole/sole-business-loss/sole-business-loss-rules/sole-business-loss-offset-rule.service.js → esm2020/lib/services/http/sole/sole-business-loss/sole-business-loss-rules/sole-business-loss-offset-rule.service.mjs} +4 -4
  714. package/{esm2015/lib/services/http/sole/sole-business-loss/sole-business-loss.service.js → esm2020/lib/services/http/sole/sole-business-loss/sole-business-loss.service.mjs} +4 -4
  715. package/{esm2015/lib/services/http/sole/sole-contact/sole-contact.service.js → esm2020/lib/services/http/sole/sole-contact/sole-contact.service.mjs} +4 -4
  716. package/{esm2015/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.js → esm2020/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.mjs} +4 -4
  717. package/{esm2015/lib/services/http/sole/sole-details/sole-details.service.js → esm2020/lib/services/http/sole/sole-details/sole-details.service.mjs} +4 -4
  718. package/{esm2015/lib/services/http/sole/sole-invoice/sole-invoice.service.js → esm2020/lib/services/http/sole/sole-invoice/sole-invoice.service.mjs} +5 -6
  719. package/{esm2015/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.js → esm2020/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.mjs} +4 -4
  720. package/{esm2015/lib/services/http/subscription/index.js → esm2020/lib/services/http/subscription/index.mjs} +0 -0
  721. package/{esm2015/lib/services/http/subscription/service-payment/service-payment.service.js → esm2020/lib/services/http/subscription/service-payment/service-payment.service.mjs} +4 -4
  722. package/{esm2015/lib/services/http/subscription/service-price/service-price.service.js → esm2020/lib/services/http/subscription/service-price/service-price.service.mjs} +4 -4
  723. package/{esm2015/lib/services/http/subscription/service-product/service-product.service.js → esm2020/lib/services/http/subscription/service-product/service-product.service.mjs} +4 -4
  724. package/esm2020/lib/services/http/subscription/service-subscription/subscription.service.mjs +128 -0
  725. package/{esm2015/lib/services/http/tax-review/index.js → esm2020/lib/services/http/tax-review/index.mjs} +0 -0
  726. package/{esm2015/lib/services/http/tax-review/tax-review-history/tax-review-history.service.js → esm2020/lib/services/http/tax-review/tax-review-history/tax-review-history.service.mjs} +4 -4
  727. package/{esm2015/lib/services/http/tax-review/tax-review.service.js → esm2020/lib/services/http/tax-review/tax-review.service.mjs} +4 -4
  728. package/{esm2015/lib/services/http/tax-summary/index.js → esm2020/lib/services/http/tax-summary/index.mjs} +0 -0
  729. package/{esm2015/lib/services/http/tax-summary/tax-summary.service.js → esm2020/lib/services/http/tax-summary/tax-summary.service.mjs} +4 -4
  730. package/{esm2015/lib/services/http/transaction/index.js → esm2020/lib/services/http/transaction/index.mjs} +0 -0
  731. package/{esm2015/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.js → esm2020/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.mjs} +4 -4
  732. package/{esm2015/lib/services/http/transaction/transaction-receipt/transaction-receipt.service.js → esm2020/lib/services/http/transaction/transaction-receipt/transaction-receipt.service.mjs} +4 -4
  733. package/esm2020/lib/services/http/transaction/transaction.service.mjs +337 -0
  734. package/{esm2015/lib/services/http/tutorial-video/index.js → esm2020/lib/services/http/tutorial-video/index.mjs} +0 -0
  735. package/{esm2015/lib/services/http/tutorial-video/tutorial-video-response.interface.js → esm2020/lib/services/http/tutorial-video/tutorial-video-response.interface.mjs} +0 -0
  736. package/{esm2015/lib/services/http/tutorial-video/tutorial-video.service.js → esm2020/lib/services/http/tutorial-video/tutorial-video.service.mjs} +4 -4
  737. package/{esm2015/lib/services/http/tutorial-video/video-source.interface.js → esm2020/lib/services/http/tutorial-video/video-source.interface.mjs} +0 -0
  738. package/{esm2015/lib/services/http/user/index.js → esm2020/lib/services/http/user/index.mjs} +0 -0
  739. package/{esm2015/lib/services/http/user/occupation/occupation.service.js → esm2020/lib/services/http/user/occupation/occupation.service.mjs} +4 -4
  740. package/{esm2015/lib/services/http/user/user-event-setting/user-event-setting.service.js → esm2020/lib/services/http/user/user-event-setting/user-event-setting.service.mjs} +4 -4
  741. package/{esm2015/lib/services/http/user/user-event-type/user-event-type.service.js → esm2020/lib/services/http/user/user-event-type/user-event-type.service.mjs} +4 -4
  742. package/{esm2015/lib/services/http/user/user.service.js → esm2020/lib/services/http/user/user.service.mjs} +5 -6
  743. package/{esm2015/lib/services/http/user/users-invite/users-invite.service.js → esm2020/lib/services/http/user/users-invite/users-invite.service.mjs} +4 -4
  744. package/{esm2015/lib/services/http/vehicle/index.js → esm2020/lib/services/http/vehicle/index.mjs} +0 -0
  745. package/{esm2015/lib/services/http/vehicle/vehicle-claim-details.service.js → esm2020/lib/services/http/vehicle/vehicle-claim-details.service.mjs} +4 -4
  746. package/{esm2015/lib/services/http/vehicle/vehicle-claim.service.js → esm2020/lib/services/http/vehicle/vehicle-claim.service.mjs} +5 -5
  747. package/{esm2015/lib/services/http/vehicle/vehicle-logbook.service.js → esm2020/lib/services/http/vehicle/vehicle-logbook.service.mjs} +4 -4
  748. package/{esm2015/lib/services/http/vehicle/vehicle.service.js → esm2020/lib/services/http/vehicle/vehicle.service.mjs} +4 -4
  749. package/{esm2015/lib/services/index.js → esm2020/lib/services/index.mjs} +0 -0
  750. package/{esm2015/lib/services/intercom/index.js → esm2020/lib/services/intercom/index.mjs} +0 -0
  751. package/{esm2015/lib/services/intercom/intercom.service.js → esm2020/lib/services/intercom/intercom.service.mjs} +4 -4
  752. package/{esm2015/lib/services/pdf/index.js → esm2020/lib/services/pdf/index.mjs} +0 -0
  753. package/{esm2015/lib/services/pdf/pdf-from-dom-element/file-settings.js → esm2020/lib/services/pdf/pdf-from-dom-element/file-settings.mjs} +0 -0
  754. package/{esm2015/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.js → esm2020/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.mjs} +4 -4
  755. package/{esm2015/lib/services/pdf/pdf-from-table/file-settings.js → esm2020/lib/services/pdf/pdf-from-table/file-settings.mjs} +0 -0
  756. package/esm2020/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.mjs +45 -0
  757. package/{esm2015/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.js → esm2020/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.mjs} +8 -5
  758. package/{esm2015/lib/services/pdf/pdf-from-table/pdf-from-table.service.js → esm2020/lib/services/pdf/pdf-from-table/pdf-from-table.service.mjs} +4 -4
  759. package/{esm2015/lib/services/preloader/index.js → esm2020/lib/services/preloader/index.mjs} +0 -0
  760. package/{esm2015/lib/services/preloader/preloader.service.js → esm2020/lib/services/preloader/preloader.service.mjs} +4 -4
  761. package/{esm2015/lib/services/property/corelogic/corelogic.service.js → esm2020/lib/services/property/corelogic/corelogic.service.mjs} +4 -4
  762. package/{esm2015/lib/services/property/corelogic/index.js → esm2020/lib/services/property/corelogic/index.mjs} +0 -0
  763. package/{esm2015/lib/services/property/equity-position-chart/equity-position-chart.service.js → esm2020/lib/services/property/equity-position-chart/equity-position-chart.service.mjs} +4 -4
  764. package/{esm2015/lib/services/property/equity-position-chart/index.js → esm2020/lib/services/property/equity-position-chart/index.mjs} +0 -0
  765. package/{esm2015/lib/services/property/index.js → esm2020/lib/services/property/index.mjs} +0 -0
  766. package/{esm2015/lib/services/property/property-calculation/index.js → esm2020/lib/services/property/property-calculation/index.mjs} +0 -0
  767. package/esm2020/lib/services/property/property-calculation/property-calculation.service.mjs +177 -0
  768. package/{esm2015/lib/services/report/index.js → esm2020/lib/services/report/index.mjs} +0 -0
  769. package/{esm2015/lib/services/report/property/property-transaction-report.service.js → esm2020/lib/services/report/property/property-transaction-report.service.mjs} +4 -4
  770. package/{esm2015/lib/services/toast/index.js → esm2020/lib/services/toast/index.mjs} +0 -0
  771. package/{esm2015/lib/services/toast/toast.service.js → esm2020/lib/services/toast/toast.service.mjs} +4 -4
  772. package/{esm2015/lib/services/transaction/index.js → esm2020/lib/services/transaction/index.mjs} +0 -0
  773. package/{esm2015/lib/services/transaction/transaction-calculation.service.js → esm2020/lib/services/transaction/transaction-calculation.service.mjs} +4 -4
  774. package/{esm2015/lib/services/user/index.js → esm2020/lib/services/user/index.mjs} +0 -0
  775. package/{esm2015/lib/services/user/user-switcher.service.js → esm2020/lib/services/user/user-switcher.service.mjs} +4 -4
  776. package/{esm2015/lib/services/vehicle/index.js → esm2020/lib/services/vehicle/index.mjs} +0 -0
  777. package/esm2020/lib/services/vehicle/logbook-best-period.service.mjs +72 -0
  778. package/{esm2015/lib/services/xlsx/index.js → esm2020/lib/services/xlsx/index.mjs} +0 -0
  779. package/{esm2015/lib/services/xlsx/xlsx.service.js → esm2020/lib/services/xlsx/xlsx.service.mjs} +4 -4
  780. package/{esm2015/lib/tt-core.module.js → esm2020/lib/tt-core.module.mjs} +6 -8
  781. package/esm2020/lib/validators/address-corelogic.validator.mjs +18 -0
  782. package/esm2020/lib/validators/at-least-one-enabled.validator.mjs +11 -0
  783. package/esm2020/lib/validators/at-least-one.validator.mjs +11 -0
  784. package/{esm2015/lib/validators/autocomplete.validator.js → esm2020/lib/validators/autocomplete.validator.mjs} +1 -1
  785. package/{esm2015/lib/validators/conditional.validator.js → esm2020/lib/validators/conditional.validator.mjs} +0 -0
  786. package/{esm2015/lib/validators/current-fin-year.validator.js → esm2020/lib/validators/current-fin-year.validator.mjs} +0 -0
  787. package/{esm2015/lib/validators/date-range.validator.js → esm2020/lib/validators/date-range.validator.mjs} +1 -1
  788. package/{esm2015/lib/validators/fields-sum.validator.js → esm2020/lib/validators/fields-sum.validator.mjs} +0 -0
  789. package/{esm2015/lib/validators/file.validator.js → esm2020/lib/validators/file.validator.mjs} +1 -1
  790. package/{esm2015/lib/validators/index.js → esm2020/lib/validators/index.mjs} +0 -0
  791. package/{esm2015/lib/validators/min-date/messages.enum.js → esm2020/lib/validators/min-date/messages.enum.mjs} +0 -0
  792. package/{esm2015/lib/validators/min-date/min-date.validator.js → esm2020/lib/validators/min-date/min-date.validator.mjs} +0 -0
  793. package/{esm2015/lib/validators/password-match.validator.js → esm2020/lib/validators/password-match.validator.mjs} +1 -1
  794. package/{esm2015/lib/validators/password.validator.js → esm2020/lib/validators/password.validator.mjs} +1 -1
  795. package/{esm2015/lib/validators/phone-number.validator.js → esm2020/lib/validators/phone-number.validator.mjs} +1 -1
  796. package/{esm2015/lib/validators/required-length.validator.js → esm2020/lib/validators/required-length.validator.mjs} +1 -1
  797. package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
  798. package/{esm2015/taxtank-core.js → esm2020/taxtank-core.mjs} +0 -0
  799. package/fesm2015/taxtank-core.mjs +18320 -0
  800. package/fesm2015/taxtank-core.mjs.map +1 -0
  801. package/{fesm2015/taxtank-core.js → fesm2020/taxtank-core.mjs} +1202 -1237
  802. package/fesm2020/taxtank-core.mjs.map +1 -0
  803. package/{taxtank-core.d.ts → index.d.ts} +0 -0
  804. package/lib/forms/abstract.form.d.ts +2 -2
  805. package/lib/forms/address/address.form.d.ts +13 -10
  806. package/lib/forms/bank/bank-account/bank-account-properties.form.d.ts +2 -2
  807. package/lib/forms/sole/sole-business-allocations.form.d.ts +2 -2
  808. package/lib/forms/sole/sole-business.form.d.ts +3 -3
  809. package/lib/forms/sole/sole-invoice.form.d.ts +3 -3
  810. package/lib/models/vehicle/vehicle-logbook.d.ts +7 -0
  811. package/package.json +32 -14
  812. package/bundles/taxtank-core.umd.js +0 -21961
  813. package/bundles/taxtank-core.umd.js.map +0 -1
  814. package/esm2015/lib/collections/bank-transaction.collection.js +0 -119
  815. package/esm2015/lib/collections/client-movement.collection.js +0 -31
  816. package/esm2015/lib/collections/collection.js +0 -148
  817. package/esm2015/lib/collections/depreciation.collection.js +0 -126
  818. package/esm2015/lib/collections/employee.collection.js +0 -12
  819. package/esm2015/lib/collections/loan/loan.collection.js +0 -34
  820. package/esm2015/lib/collections/property/property-sale/property-sale-tax-exemption-metadata.collection.js +0 -20
  821. package/esm2015/lib/collections/property/property-share.collection.js +0 -23
  822. package/esm2015/lib/collections/sole/sole-business-losses.collection.js +0 -43
  823. package/esm2015/lib/collections/transaction/transaction.collection.js +0 -242
  824. package/esm2015/lib/db/Models/transaction/transaction-base.js +0 -89
  825. package/esm2015/lib/forms/abstract.form.js +0 -69
  826. package/esm2015/lib/forms/address/address.form.js +0 -170
  827. package/esm2015/lib/forms/bank/bank-account/bank-account-add-manual.form.js +0 -46
  828. package/esm2015/lib/forms/bank/bank-account/bank-account-allocation.form.js +0 -46
  829. package/esm2015/lib/forms/bank/bank-account/bank-account-properties.form.js +0 -66
  830. package/esm2015/lib/forms/bank/bank-account/bank-accounts-import.form.js +0 -50
  831. package/esm2015/lib/forms/bank/bank-login.form.js +0 -19
  832. package/esm2015/lib/forms/client/client-income-types.form.js +0 -17
  833. package/esm2015/lib/forms/depreciation/depreciation.form.js +0 -38
  834. package/esm2015/lib/forms/loan/loan.form.js +0 -90
  835. package/esm2015/lib/forms/login/login.form.js +0 -11
  836. package/esm2015/lib/forms/phone/phone.form.js +0 -17
  837. package/esm2015/lib/forms/property/property-sale/property-sale-cost-base.form.js +0 -39
  838. package/esm2015/lib/forms/property/property-sale/property-sale-cost-sale.form.js +0 -80
  839. package/esm2015/lib/forms/property/property-sale/property-sale-exemptions.form.js +0 -75
  840. package/esm2015/lib/forms/register/register-client.form.js +0 -20
  841. package/esm2015/lib/forms/register/register-firm.form.js +0 -22
  842. package/esm2015/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.form.js +0 -32
  843. package/esm2015/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.form.js +0 -81
  844. package/esm2015/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.form.js +0 -80
  845. package/esm2015/lib/forms/report/my-tax/my-tax-cgt.form.js +0 -25
  846. package/esm2015/lib/forms/report/my-tax/my-tax-deductions.form.js +0 -86
  847. package/esm2015/lib/forms/report/my-tax/my-tax-dividends.form.js +0 -23
  848. package/esm2015/lib/forms/report/my-tax/my-tax-income-statements.form.js +0 -92
  849. package/esm2015/lib/forms/report/my-tax/my-tax-interest.form.js +0 -12
  850. package/esm2015/lib/forms/report/my-tax/my-tax-losses.form.js +0 -11
  851. package/esm2015/lib/forms/report/my-tax/my-tax-medicare.form.js +0 -33
  852. package/esm2015/lib/forms/report/my-tax/my-tax-other-income.form.js +0 -43
  853. package/esm2015/lib/forms/report/my-tax/my-tax-partnerships-and-trusts.form.js +0 -37
  854. package/esm2015/lib/forms/report/my-tax/my-tax-rent.form.js +0 -13
  855. package/esm2015/lib/forms/sole/bas-report.form.js +0 -58
  856. package/esm2015/lib/forms/sole/sole-business-allocations.form.js +0 -66
  857. package/esm2015/lib/forms/sole/sole-business-loss.form.js +0 -25
  858. package/esm2015/lib/forms/sole/sole-business.form.js +0 -69
  859. package/esm2015/lib/forms/sole/sole-contact.form.js +0 -20
  860. package/esm2015/lib/forms/sole/sole-depreciation-method.form.js +0 -10
  861. package/esm2015/lib/forms/sole/sole-details.form.js +0 -12
  862. package/esm2015/lib/forms/sole/sole-invoice-item.form.js +0 -16
  863. package/esm2015/lib/forms/sole/sole-invoice-template.form.js +0 -15
  864. package/esm2015/lib/forms/sole/sole-invoice.form.js +0 -158
  865. package/esm2015/lib/forms/transaction/transaction-base.form.js +0 -100
  866. package/esm2015/lib/forms/transaction/transaction.form.js +0 -67
  867. package/esm2015/lib/forms/transaction/work/work-income.form.js +0 -87
  868. package/esm2015/lib/forms/user/password.form.js +0 -14
  869. package/esm2015/lib/forms/user/reset-password.form.js +0 -11
  870. package/esm2015/lib/forms/user/user-invite.form.js +0 -16
  871. package/esm2015/lib/forms/vehicle/vehicle-claim-details.form.js +0 -17
  872. package/esm2015/lib/forms/vehicle/vehicle-claim.form.js +0 -30
  873. package/esm2015/lib/forms/vehicle/vehicle-logbook.form.js +0 -63
  874. package/esm2015/lib/forms/vehicle/vehicle.form.js +0 -17
  875. package/esm2015/lib/interceptors/jwt-interceptor.js +0 -142
  876. package/esm2015/lib/models/bank/bank-account.js +0 -171
  877. package/esm2015/lib/models/chart-accounts/chart-accounts.js +0 -215
  878. package/esm2015/lib/models/client/client-invite.js +0 -67
  879. package/esm2015/lib/models/depreciation/depreciation.js +0 -198
  880. package/esm2015/lib/models/property/property-equity-chart-data.js +0 -166
  881. package/esm2015/lib/models/property/property-sale/property-sale-cost-base.js +0 -20
  882. package/esm2015/lib/models/property/property-sale/property-sale.js +0 -43
  883. package/esm2015/lib/models/property/property-share.js +0 -48
  884. package/esm2015/lib/models/property/property.js +0 -249
  885. package/esm2015/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.js +0 -16
  886. package/esm2015/lib/models/report/my-tax/my-tax-rent/my-tax-rent.js +0 -48
  887. package/esm2015/lib/models/tax-summary/report-item.js +0 -30
  888. package/esm2015/lib/models/transaction/transaction.js +0 -241
  889. package/esm2015/lib/models/vehicle/vehicle-logbook.js +0 -46
  890. package/esm2015/lib/services/http/chart-accounts/chart-accounts.service.js +0 -49
  891. package/esm2015/lib/services/http/chat/message-document.service.js +0 -79
  892. package/esm2015/lib/services/http/facebook/facebook.service.js +0 -90
  893. package/esm2015/lib/services/http/subscription/service-subscription/subscription.service.js +0 -131
  894. package/esm2015/lib/services/http/transaction/transaction.service.js +0 -339
  895. package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.js +0 -40
  896. package/esm2015/lib/services/property/property-calculation/property-calculation.service.js +0 -178
  897. package/esm2015/lib/services/vehicle/logbook-best-period.service.js +0 -72
  898. package/esm2015/lib/validators/address-corelogic.validator.js +0 -17
  899. package/esm2015/lib/validators/at-least-one-enabled.validator.js +0 -11
  900. package/esm2015/lib/validators/at-least-one.validator.js +0 -11
  901. package/fesm2015/taxtank-core.js.map +0 -1
@@ -0,0 +1,58 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ import { combineLatest } from 'rxjs';
4
+ import { TransactionCollection } from '../../collections';
5
+ /**
6
+ * business activity statement report
7
+ * https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/268533936/BAS+Report
8
+ */
9
+ export class BasReportForm extends AbstractForm {
10
+ constructor(report, transactions, allocations, depreciations) {
11
+ super({
12
+ dateFrom: new UntypedFormControl(report.dateFrom, Validators.required),
13
+ dateTo: new UntypedFormControl(report.dateTo, Validators.required),
14
+ income: new UntypedFormControl({ value: report.income, disabled: true }),
15
+ incomeGST: new UntypedFormControl({ value: report.incomeGST, disabled: true }, Validators.required),
16
+ expenseGST: new UntypedFormControl({ value: report.expenseGST, disabled: true }, Validators.required),
17
+ salary: new UntypedFormControl(report.salary, Validators.required),
18
+ taxWithheldSalary: new UntypedFormControl(report.taxWithheldSalary, Validators.required),
19
+ taxWithheldNoABN: new UntypedFormControl(report.taxWithheldNoABN, Validators.required),
20
+ taxWithheldTotal: new UntypedFormControl({ value: report.taxWithheldTotal || 0, disabled: true }),
21
+ paygTaxInstalment: new UntypedFormControl(report.paygTaxInstalment, Validators.required),
22
+ fuelTaxCredit: new UntypedFormControl(report.fuelTaxCredit, Validators.required),
23
+ gst: new UntypedFormControl({ value: report.gst, disabled: true }),
24
+ }, report);
25
+ this.report = report;
26
+ // prefill income/expense data based on transactions/depreciations filtered by specified date
27
+ combineLatest([this.get('dateFrom').valueChanges, this.get('dateTo').valueChanges])
28
+ .subscribe(([dateFrom, dateTo]) => {
29
+ const filteredTransactions = transactions.filterByRange('date', dateFrom, dateTo);
30
+ const filteredDepreciations = depreciations.filterByRange('date', dateFrom, dateTo);
31
+ const incomeTransactions = filteredTransactions.getIncomeTransactions();
32
+ const expenseTransactions = new TransactionCollection(filteredTransactions.getExpenseTransactions().toArray(), filteredDepreciations.toArray());
33
+ // all sole income claimed as 100%
34
+ this.get('income').setValue(incomeTransactions.getAllocatedAmount(allocations));
35
+ this.get('incomeGST').setValue(incomeTransactions.calculateAllocatedGST(allocations));
36
+ this.get('expenseGST').setValue(expenseTransactions.filterBy('isGST', true).sumBy('gstClaimAmount'));
37
+ });
38
+ // calculate taxWithheldTotal
39
+ combineLatest([this.get('taxWithheldSalary').valueChanges, this.get('taxWithheldNoABN').valueChanges])
40
+ .subscribe(([taxWithheldSalary, taxWithheldNoABN]) => {
41
+ this.get('taxWithheldTotal').setValue(taxWithheldSalary + taxWithheldNoABN);
42
+ });
43
+ // calculate gst payable/refundable
44
+ combineLatest([
45
+ this.get('incomeGST').valueChanges,
46
+ this.get('expenseGST').valueChanges,
47
+ this.get('taxWithheldTotal').valueChanges,
48
+ this.get('paygTaxInstalment').valueChanges,
49
+ this.get('fuelTaxCredit').valueChanges,
50
+ ]).subscribe(([incomeGST, expenseGST, taxWithheldTotal, paygTaxInstalment, fuelTaxCredit]) => {
51
+ this.get('gst').setValue(incomeGST - expenseGST + taxWithheldTotal + paygTaxInstalment - fuelTaxCredit);
52
+ });
53
+ }
54
+ submit(data = {}) {
55
+ return super.submit(data, true);
56
+ }
57
+ }
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzLXJlcG9ydC5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2Zvcm1zL3NvbGUvYmFzLXJlcG9ydC5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQWtDLHFCQUFxQixFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFHekY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGFBQWMsU0FBUSxZQUF1QjtJQUN4RCxZQUFvQixNQUFpQixFQUFFLFlBQW1DLEVBQUUsV0FBNEMsRUFBRSxhQUFxQztRQUM3SixLQUFLLENBQUM7WUFDSixRQUFRLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDdEUsTUFBTSxFQUFFLElBQUksa0JBQWtCLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2xFLE1BQU0sRUFBRSxJQUFJLGtCQUFrQixDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ3hFLFNBQVMsRUFBRSxJQUFJLGtCQUFrQixDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDbkcsVUFBVSxFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNyRyxNQUFNLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDbEUsaUJBQWlCLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUN4RixnQkFBZ0IsRUFBRSxJQUFJLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3RGLGdCQUFnQixFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLGdCQUFnQixJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDakcsaUJBQWlCLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUN4RixhQUFhLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDaEYsR0FBRyxFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7U0FDbkUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQWRPLFdBQU0sR0FBTixNQUFNLENBQVc7UUFnQm5DLDZGQUE2RjtRQUM3RixhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2hGLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDaEMsTUFBTSxvQkFBb0IsR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbEYsTUFBTSxxQkFBcUIsR0FBRyxhQUFhLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFFcEYsTUFBTSxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQ3hFLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxxQkFBcUIsQ0FDbkQsb0JBQW9CLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFDdkQscUJBQXFCLENBQUMsT0FBTyxFQUFFLENBQ2hDLENBQUM7WUFFRixrQ0FBa0M7WUFDbEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztZQUNoRixJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQ3RGLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztRQUN2RyxDQUFDLENBQUMsQ0FBQztRQUVMLDZCQUE2QjtRQUM3QixhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUNuRyxTQUFTLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLEVBQUUsRUFBRTtZQUNuRCxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUMsUUFBUSxDQUFDLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLENBQUM7UUFDOUUsQ0FBQyxDQUFDLENBQUM7UUFFTCxtQ0FBbUM7UUFDbkMsYUFBYSxDQUFDO1lBQ1osSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxZQUFZO1lBQ2xDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsWUFBWTtZQUNuQyxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUMsWUFBWTtZQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUMsWUFBWTtZQUMxQyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLFlBQVk7U0FDdkMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLENBQUMsRUFBRSxFQUFFO1lBQzNGLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsR0FBRyxVQUFVLEdBQUcsZ0JBQWdCLEdBQUcsaUJBQWlCLEdBQUcsYUFBYSxDQUFDLENBQUM7UUFDMUcsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQWUsRUFBRTtRQUN0QixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Rm9ybSB9IGZyb20gJy4uL2Fic3RyYWN0LmZvcm0nO1xuaW1wb3J0IHsgQmFzUmVwb3J0IH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7VHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbiwgVHJhbnNhY3Rpb25Db2xsZWN0aW9ufSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQge0RlcHJlY2lhdGlvbkNvbGxlY3Rpb259IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2RlcHJlY2lhdGlvbi5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBidXNpbmVzcyBhY3Rpdml0eSBzdGF0ZW1lbnQgcmVwb3J0XG4gKiBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzI2ODUzMzkzNi9CQVMrUmVwb3J0XG4gKi9cbmV4cG9ydCBjbGFzcyBCYXNSZXBvcnRGb3JtIGV4dGVuZHMgQWJzdHJhY3RGb3JtPEJhc1JlcG9ydD4ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcG9ydDogQmFzUmVwb3J0LCB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiwgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24sIGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24pIHtcbiAgICBzdXBlcih7XG4gICAgICBkYXRlRnJvbTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChyZXBvcnQuZGF0ZUZyb20sIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgZGF0ZVRvOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHJlcG9ydC5kYXRlVG8sIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgaW5jb21lOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHsgdmFsdWU6IHJlcG9ydC5pbmNvbWUsIGRpc2FibGVkOiB0cnVlIH0pLFxuICAgICAgaW5jb21lR1NUOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHsgdmFsdWU6IHJlcG9ydC5pbmNvbWVHU1QsIGRpc2FibGVkOiB0cnVlIH0sIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgZXhwZW5zZUdTVDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7IHZhbHVlOiByZXBvcnQuZXhwZW5zZUdTVCwgZGlzYWJsZWQ6IHRydWUgfSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBzYWxhcnk6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wocmVwb3J0LnNhbGFyeSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICB0YXhXaXRoaGVsZFNhbGFyeTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChyZXBvcnQudGF4V2l0aGhlbGRTYWxhcnksIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgdGF4V2l0aGhlbGROb0FCTjogbmV3IFVudHlwZWRGb3JtQ29udHJvbChyZXBvcnQudGF4V2l0aGhlbGROb0FCTiwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICB0YXhXaXRoaGVsZFRvdGFsOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHsgdmFsdWU6IHJlcG9ydC50YXhXaXRoaGVsZFRvdGFsIHx8IDAsIGRpc2FibGVkOiB0cnVlIH0pLFxuICAgICAgcGF5Z1RheEluc3RhbG1lbnQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wocmVwb3J0LnBheWdUYXhJbnN0YWxtZW50LCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGZ1ZWxUYXhDcmVkaXQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wocmVwb3J0LmZ1ZWxUYXhDcmVkaXQsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgZ3N0OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHsgdmFsdWU6IHJlcG9ydC5nc3QsIGRpc2FibGVkOiB0cnVlIH0pLFxuICAgIH0sIHJlcG9ydCk7XG5cbiAgICAvLyBwcmVmaWxsIGluY29tZS9leHBlbnNlIGRhdGEgYmFzZWQgb24gdHJhbnNhY3Rpb25zL2RlcHJlY2lhdGlvbnMgZmlsdGVyZWQgYnkgc3BlY2lmaWVkIGRhdGVcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmdldCgnZGF0ZUZyb20nKS52YWx1ZUNoYW5nZXMsIHRoaXMuZ2V0KCdkYXRlVG8nKS52YWx1ZUNoYW5nZXNdKVxuICAgICAgLnN1YnNjcmliZSgoW2RhdGVGcm9tLCBkYXRlVG9dKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkVHJhbnNhY3Rpb25zID0gdHJhbnNhY3Rpb25zLmZpbHRlckJ5UmFuZ2UoJ2RhdGUnLCBkYXRlRnJvbSwgZGF0ZVRvKTtcbiAgICAgICAgY29uc3QgZmlsdGVyZWREZXByZWNpYXRpb25zID0gZGVwcmVjaWF0aW9ucy5maWx0ZXJCeVJhbmdlKCdkYXRlJywgZGF0ZUZyb20sIGRhdGVUbyk7XG5cbiAgICAgICAgY29uc3QgaW5jb21lVHJhbnNhY3Rpb25zID0gZmlsdGVyZWRUcmFuc2FjdGlvbnMuZ2V0SW5jb21lVHJhbnNhY3Rpb25zKCk7XG4gICAgICAgIGNvbnN0IGV4cGVuc2VUcmFuc2FjdGlvbnMgPSBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgICAgIGZpbHRlcmVkVHJhbnNhY3Rpb25zLmdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKS50b0FycmF5KCksXG4gICAgICAgICAgZmlsdGVyZWREZXByZWNpYXRpb25zLnRvQXJyYXkoKVxuICAgICAgICApO1xuXG4gICAgICAgIC8vIGFsbCBzb2xlIGluY29tZSBjbGFpbWVkIGFzIDEwMCVcbiAgICAgICAgdGhpcy5nZXQoJ2luY29tZScpLnNldFZhbHVlKGluY29tZVRyYW5zYWN0aW9ucy5nZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnMpKTtcbiAgICAgICAgdGhpcy5nZXQoJ2luY29tZUdTVCcpLnNldFZhbHVlKGluY29tZVRyYW5zYWN0aW9ucy5jYWxjdWxhdGVBbGxvY2F0ZWRHU1QoYWxsb2NhdGlvbnMpKTtcbiAgICAgICAgdGhpcy5nZXQoJ2V4cGVuc2VHU1QnKS5zZXRWYWx1ZShleHBlbnNlVHJhbnNhY3Rpb25zLmZpbHRlckJ5KCdpc0dTVCcsIHRydWUpLnN1bUJ5KCdnc3RDbGFpbUFtb3VudCcpKTtcbiAgICAgIH0pO1xuXG4gICAgLy8gY2FsY3VsYXRlIHRheFdpdGhoZWxkVG90YWxcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmdldCgndGF4V2l0aGhlbGRTYWxhcnknKS52YWx1ZUNoYW5nZXMsIHRoaXMuZ2V0KCd0YXhXaXRoaGVsZE5vQUJOJykudmFsdWVDaGFuZ2VzXSlcbiAgICAgIC5zdWJzY3JpYmUoKFt0YXhXaXRoaGVsZFNhbGFyeSwgdGF4V2l0aGhlbGROb0FCTl0pID0+IHtcbiAgICAgICAgdGhpcy5nZXQoJ3RheFdpdGhoZWxkVG90YWwnKS5zZXRWYWx1ZSh0YXhXaXRoaGVsZFNhbGFyeSArIHRheFdpdGhoZWxkTm9BQk4pO1xuICAgICAgfSk7XG5cbiAgICAvLyBjYWxjdWxhdGUgZ3N0IHBheWFibGUvcmVmdW5kYWJsZVxuICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5nZXQoJ2luY29tZUdTVCcpLnZhbHVlQ2hhbmdlcyxcbiAgICAgIHRoaXMuZ2V0KCdleHBlbnNlR1NUJykudmFsdWVDaGFuZ2VzLFxuICAgICAgdGhpcy5nZXQoJ3RheFdpdGhoZWxkVG90YWwnKS52YWx1ZUNoYW5nZXMsXG4gICAgICB0aGlzLmdldCgncGF5Z1RheEluc3RhbG1lbnQnKS52YWx1ZUNoYW5nZXMsXG4gICAgICB0aGlzLmdldCgnZnVlbFRheENyZWRpdCcpLnZhbHVlQ2hhbmdlcyxcbiAgICBdKS5zdWJzY3JpYmUoKFtpbmNvbWVHU1QsIGV4cGVuc2VHU1QsIHRheFdpdGhoZWxkVG90YWwsIHBheWdUYXhJbnN0YWxtZW50LCBmdWVsVGF4Q3JlZGl0XSkgPT4ge1xuICAgICAgdGhpcy5nZXQoJ2dzdCcpLnNldFZhbHVlKGluY29tZUdTVCAtIGV4cGVuc2VHU1QgKyB0YXhXaXRoaGVsZFRvdGFsICsgcGF5Z1RheEluc3RhbG1lbnQgLSBmdWVsVGF4Q3JlZGl0KTtcbiAgICB9KTtcbiAgfVxuXG4gIHN1Ym1pdChkYXRhOiBvYmplY3QgPSB7fSk6IEJhc1JlcG9ydCB7XG4gICAgcmV0dXJuIHN1cGVyLnN1Ym1pdChkYXRhLCB0cnVlKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,66 @@
1
+ import { UntypedFormArray, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';
2
+ import { plainToClass } from 'class-transformer';
3
+ import { SoleBusinessAllocation } from '../../models';
4
+ import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
5
+ import { conditionalValidator, fieldsSumValidator } from '../../validators';
6
+ /**
7
+ * Form array with bank account business allocations
8
+ * @TODO create AbstractFormArray
9
+ * @TODO Alex/Vik (TT-2184): copypasted from bank-account-properties.form, improve logic and create common parent class maybe
10
+ */
11
+ export class SoleBusinessAllocationsForm extends UntypedFormArray {
12
+ constructor(businessAllocations) {
13
+ super((businessAllocations?.length ? businessAllocations : [plainToClass(SoleBusinessAllocation, {})])
14
+ .map((businessAllocation) => {
15
+ return new UntypedFormGroup({
16
+ business: new UntypedFormControl(businessAllocation?.business, Validators.required),
17
+ percent: new UntypedFormControl(businessAllocation.percent, Validators.required)
18
+ });
19
+ }), [
20
+ conditionalValidator((control) => control.get('tankType').value === TankTypeEnum.SOLE, Validators.required),
21
+ fieldsSumValidator('percent', 100)
22
+ ]);
23
+ }
24
+ add() {
25
+ this.push(new UntypedFormGroup({
26
+ business: new UntypedFormControl(null, Validators.required),
27
+ // @TODO disable for loans
28
+ percent: new UntypedFormControl({ value: this.getRemainingPercent(), disabled: !this.at(0).contains('percent') }, Validators.required),
29
+ // @TODO enable for loans
30
+ // amount: new FormControl(
31
+ // {value: this.bankAccount.currentBalance * businessAllocation.percent / 100},
32
+ // [Validators.required, Validators.max(Math.abs(this.bankAccount.currentBalance))]
33
+ // ),
34
+ }));
35
+ }
36
+ // @TODO enable for loans
37
+ // /**
38
+ // * Recalculate business allocation percentage for current business form group and round to no more than 3 decimal places
39
+ // * @param amount: new control value
40
+ // * @param currentBusinessGroup for which amount will be recalculated
41
+ // */
42
+ // recalculateBusinessPercentage(amount: number, currentBusinessGroup: FormGroup): void {
43
+ // currentBusinessGroup.get('percent').setValue(
44
+ // roundTo(amount / this.bankAccount.currentBalance, 3)
45
+ // );
46
+ // }
47
+ enablePercent() {
48
+ this.controls.forEach((businessFormGroup) => {
49
+ businessFormGroup.get('percent').enable();
50
+ });
51
+ }
52
+ disablePercent() {
53
+ this.controls.forEach((businessFormGroup) => {
54
+ businessFormGroup.get('percent').disable();
55
+ });
56
+ }
57
+ /**
58
+ * Percentage available for adding a new bank account business allocation.
59
+ * Remaining percent can't be more than 100 and less than 0
60
+ */
61
+ getRemainingPercent() {
62
+ const currentTotalPercent = this.controls.reduce((sum, control) => sum + control.get('percent').value, 0);
63
+ return currentTotalPercent < 100 ? 100 - currentTotalPercent : 0;
64
+ }
65
+ }
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1idXNpbmVzcy1hbGxvY2F0aW9ucy5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2Zvcm1zL3NvbGUvc29sZS1idXNpbmVzcy1hbGxvY2F0aW9ucy5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUIsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFNUU7Ozs7R0FJRztBQUNILE1BQU0sT0FBTywyQkFBNEIsU0FBUSxnQkFBZ0I7SUFDL0QsWUFBWSxtQkFBOEM7UUFDeEQsS0FBSyxDQUNILENBQUMsbUJBQW1CLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUM3RixHQUFHLENBQUMsQ0FBQyxrQkFBMEMsRUFBRSxFQUFFO1lBQ2xELE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQztnQkFDMUIsUUFBUSxFQUFFLElBQUksa0JBQWtCLENBQUMsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7Z0JBQ25GLE9BQU8sRUFBRSxJQUFJLGtCQUFrQixDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO2FBQ2pGLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxFQUNKO1lBQ0Usb0JBQW9CLENBQ2xCLENBQUMsT0FBd0IsRUFBVyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEtBQUssWUFBWSxDQUFDLElBQUksRUFDMUYsVUFBVSxDQUFDLFFBQVEsQ0FDcEI7WUFDRCxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDO1NBQ25DLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxHQUFHO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLGdCQUFnQixDQUFDO1lBQzdCLFFBQVEsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzNELDBCQUEwQjtZQUMxQixPQUFPLEVBQUUsSUFBSSxrQkFBa0IsQ0FDN0IsRUFBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQXNCLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFDLEVBQ3BHLFVBQVUsQ0FBQyxRQUFRLENBQ3BCO1lBQ0QseUJBQXlCO1lBQ3pCLDJCQUEyQjtZQUMzQixpRkFBaUY7WUFDakYscUZBQXFGO1lBQ3JGLEtBQUs7U0FDTixDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7SUFFRCx5QkFBeUI7SUFDekIsTUFBTTtJQUNOLDJIQUEySDtJQUMzSCxzQ0FBc0M7SUFDdEMsdUVBQXVFO0lBQ3ZFLE1BQU07SUFDTix5RkFBeUY7SUFDekYsa0RBQWtEO0lBQ2xELDJEQUEyRDtJQUMzRCxPQUFPO0lBQ1AsSUFBSTtJQUVKLGFBQWE7UUFDWCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLGlCQUFtQyxFQUFFLEVBQUU7WUFDNUQsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLGlCQUFtQyxFQUFFLEVBQUU7WUFDNUQsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNLLG1CQUFtQjtRQUN6QixNQUFNLG1CQUFtQixHQUFXLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBVyxFQUFFLE9BQXlCLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU1SSxPQUFPLG1CQUFtQixHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBVbnR5cGVkRm9ybUFycmF5LCBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBTb2xlQnVzaW5lc3NBbGxvY2F0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IGNvbmRpdGlvbmFsVmFsaWRhdG9yLCBmaWVsZHNTdW1WYWxpZGF0b3IgfSBmcm9tICcuLi8uLi92YWxpZGF0b3JzJztcblxuLyoqXG4gKiBGb3JtIGFycmF5IHdpdGggYmFuayBhY2NvdW50IGJ1c2luZXNzIGFsbG9jYXRpb25zXG4gKiBAVE9ETyBjcmVhdGUgQWJzdHJhY3RGb3JtQXJyYXlcbiAqIEBUT0RPIEFsZXgvVmlrIChUVC0yMTg0KTogY29weXBhc3RlZCBmcm9tIGJhbmstYWNjb3VudC1wcm9wZXJ0aWVzLmZvcm0sIGltcHJvdmUgbG9naWMgYW5kIGNyZWF0ZSBjb21tb24gcGFyZW50IGNsYXNzIG1heWJlXG4gKi9cbmV4cG9ydCBjbGFzcyBTb2xlQnVzaW5lc3NBbGxvY2F0aW9uc0Zvcm0gZXh0ZW5kcyBVbnR5cGVkRm9ybUFycmF5IHtcbiAgY29uc3RydWN0b3IoYnVzaW5lc3NBbGxvY2F0aW9ucz86IFNvbGVCdXNpbmVzc0FsbG9jYXRpb25bXSkge1xuICAgIHN1cGVyKFxuICAgICAgKGJ1c2luZXNzQWxsb2NhdGlvbnM/Lmxlbmd0aCA/IGJ1c2luZXNzQWxsb2NhdGlvbnMgOiBbcGxhaW5Ub0NsYXNzKFNvbGVCdXNpbmVzc0FsbG9jYXRpb24sIHt9KV0pXG4gICAgICAgIC5tYXAoKGJ1c2luZXNzQWxsb2NhdGlvbjogU29sZUJ1c2luZXNzQWxsb2NhdGlvbikgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICAgICAgICBidXNpbmVzczogbmV3IFVudHlwZWRGb3JtQ29udHJvbChidXNpbmVzc0FsbG9jYXRpb24/LmJ1c2luZXNzLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgICAgIHBlcmNlbnQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woYnVzaW5lc3NBbGxvY2F0aW9uLnBlcmNlbnQsIFZhbGlkYXRvcnMucmVxdWlyZWQpXG4gICAgICAgICAgfSlcbiAgICAgICAgfSksXG4gICAgICBbXG4gICAgICAgIGNvbmRpdGlvbmFsVmFsaWRhdG9yKFxuICAgICAgICAgIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBib29sZWFuID0+IGNvbnRyb2wuZ2V0KCd0YW5rVHlwZScpLnZhbHVlID09PSBUYW5rVHlwZUVudW0uU09MRSxcbiAgICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkXG4gICAgICAgICksXG4gICAgICAgIGZpZWxkc1N1bVZhbGlkYXRvcigncGVyY2VudCcsIDEwMClcbiAgICAgIF1cbiAgICApO1xuICB9XG5cbiAgYWRkKCk6IHZvaWQge1xuICAgIHRoaXMucHVzaChuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICBidXNpbmVzczogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIC8vIEBUT0RPIGRpc2FibGUgZm9yIGxvYW5zXG4gICAgICBwZXJjZW50OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKFxuICAgICAgICB7dmFsdWU6IHRoaXMuZ2V0UmVtYWluaW5nUGVyY2VudCgpLCBkaXNhYmxlZDogISh0aGlzLmF0KDApIGFzIFVudHlwZWRGb3JtR3JvdXApLmNvbnRhaW5zKCdwZXJjZW50Jyl9LFxuICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkXG4gICAgICApLFxuICAgICAgLy8gQFRPRE8gZW5hYmxlIGZvciBsb2Fuc1xuICAgICAgLy8gYW1vdW50OiBuZXcgRm9ybUNvbnRyb2woXG4gICAgICAvLyAgIHt2YWx1ZTogdGhpcy5iYW5rQWNjb3VudC5jdXJyZW50QmFsYW5jZSAqIGJ1c2luZXNzQWxsb2NhdGlvbi5wZXJjZW50IC8gMTAwfSxcbiAgICAgIC8vICAgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4KE1hdGguYWJzKHRoaXMuYmFua0FjY291bnQuY3VycmVudEJhbGFuY2UpKV1cbiAgICAgIC8vICksXG4gICAgfSkpO1xuICB9XG5cbiAgLy8gQFRPRE8gZW5hYmxlIGZvciBsb2Fuc1xuICAvLyAvKipcbiAgLy8gICogUmVjYWxjdWxhdGUgYnVzaW5lc3MgYWxsb2NhdGlvbiBwZXJjZW50YWdlIGZvciBjdXJyZW50IGJ1c2luZXNzIGZvcm0gZ3JvdXAgYW5kIHJvdW5kIHRvIG5vIG1vcmUgdGhhbiAzIGRlY2ltYWwgcGxhY2VzXG4gIC8vICAqIEBwYXJhbSBhbW91bnQ6IG5ldyBjb250cm9sIHZhbHVlXG4gIC8vICAqIEBwYXJhbSBjdXJyZW50QnVzaW5lc3NHcm91cCBmb3Igd2hpY2ggYW1vdW50IHdpbGwgYmUgcmVjYWxjdWxhdGVkXG4gIC8vICAqL1xuICAvLyByZWNhbGN1bGF0ZUJ1c2luZXNzUGVyY2VudGFnZShhbW91bnQ6IG51bWJlciwgY3VycmVudEJ1c2luZXNzR3JvdXA6IEZvcm1Hcm91cCk6IHZvaWQge1xuICAvLyAgIGN1cnJlbnRCdXNpbmVzc0dyb3VwLmdldCgncGVyY2VudCcpLnNldFZhbHVlKFxuICAvLyAgICAgcm91bmRUbyhhbW91bnQgLyB0aGlzLmJhbmtBY2NvdW50LmN1cnJlbnRCYWxhbmNlLCAzKVxuICAvLyAgICk7XG4gIC8vIH1cblxuICBlbmFibGVQZXJjZW50KCk6IHZvaWQge1xuICAgIHRoaXMuY29udHJvbHMuZm9yRWFjaCgoYnVzaW5lc3NGb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXApID0+IHtcbiAgICAgIGJ1c2luZXNzRm9ybUdyb3VwLmdldCgncGVyY2VudCcpLmVuYWJsZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgZGlzYWJsZVBlcmNlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9scy5mb3JFYWNoKChidXNpbmVzc0Zvcm1Hcm91cDogVW50eXBlZEZvcm1Hcm91cCkgPT4ge1xuICAgICAgYnVzaW5lc3NGb3JtR3JvdXAuZ2V0KCdwZXJjZW50JykuZGlzYWJsZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcmNlbnRhZ2UgYXZhaWxhYmxlIGZvciBhZGRpbmcgYSBuZXcgYmFuayBhY2NvdW50IGJ1c2luZXNzIGFsbG9jYXRpb24uXG4gICAqIFJlbWFpbmluZyBwZXJjZW50IGNhbid0IGJlIG1vcmUgdGhhbiAxMDAgYW5kIGxlc3MgdGhhbiAwXG4gICAqL1xuICBwcml2YXRlIGdldFJlbWFpbmluZ1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBjb25zdCBjdXJyZW50VG90YWxQZXJjZW50OiBudW1iZXIgPSB0aGlzLmNvbnRyb2xzLnJlZHVjZSgoc3VtOiBudW1iZXIsIGNvbnRyb2w6IFVudHlwZWRGb3JtR3JvdXApID0+IHN1bSArIGNvbnRyb2wuZ2V0KCdwZXJjZW50JykudmFsdWUsIDApO1xuXG4gICAgcmV0dXJuIGN1cnJlbnRUb3RhbFBlcmNlbnQgPCAxMDAgPyAxMDAgLSBjdXJyZW50VG90YWxQZXJjZW50IDogMDtcbiAgfVxufVxuIl19
@@ -0,0 +1,24 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ export class SoleBusinessLossForm extends AbstractForm {
4
+ constructor(loss, profit) {
5
+ super({
6
+ openBalance: new UntypedFormControl(loss.openBalance, [Validators.required, Validators.min(0)]),
7
+ offsetRule: new UntypedFormControl(loss.offsetRule?.id),
8
+ // sum of depreciations/transactions claim amount - openBalance
9
+ balance: new UntypedFormControl({ value: (profit - loss.openBalance).toFixed(2), disabled: true }),
10
+ }, loss);
11
+ this.loss = loss;
12
+ this.get('openBalance').valueChanges.subscribe((openBalance) => {
13
+ this.get('balance').setValue((profit - openBalance).toFixed(2));
14
+ });
15
+ }
16
+ /**
17
+ * radio buttons can't work with object
18
+ * https://github.com/angular/components/issues/10495
19
+ */
20
+ submit() {
21
+ return super.submit({ offsetRule: this.get('offsetRule').value ? { id: this.get('offsetRule').value } : null });
22
+ }
23
+ }
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1idXNpbmVzcy1sb3NzLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvc29sZS9zb2xlLWJ1c2luZXNzLWxvc3MuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxZQUE4QjtJQUN0RSxZQUFvQixJQUFzQixFQUFFLE1BQWM7UUFDeEQsS0FBSyxDQUFDO1lBQ0osV0FBVyxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9GLFVBQVUsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDO1lBQ3ZELCtEQUErRDtZQUMvRCxPQUFPLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxFQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQztTQUNqRyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBTlMsU0FBSSxHQUFKLElBQUksQ0FBa0I7UUFReEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsV0FBbUIsRUFBRSxFQUFFO1lBQ3JFLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNILE1BQU07UUFDSixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDbEgsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQge1NvbGVCdXNpbmVzc0xvc3N9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmV4cG9ydCBjbGFzcyBTb2xlQnVzaW5lc3NMb3NzRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxTb2xlQnVzaW5lc3NMb3NzPiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9zczogU29sZUJ1c2luZXNzTG9zcywgcHJvZml0OiBudW1iZXIpIHtcbiAgICBzdXBlcih7XG4gICAgICBvcGVuQmFsYW5jZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChsb3NzLm9wZW5CYWxhbmNlLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW4oMCldKSxcbiAgICAgIG9mZnNldFJ1bGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobG9zcy5vZmZzZXRSdWxlPy5pZCksXG4gICAgICAvLyBzdW0gb2YgZGVwcmVjaWF0aW9ucy90cmFuc2FjdGlvbnMgY2xhaW0gYW1vdW50IC0gb3BlbkJhbGFuY2VcbiAgICAgIGJhbGFuY2U6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woe3ZhbHVlOiAocHJvZml0IC0gbG9zcy5vcGVuQmFsYW5jZSkudG9GaXhlZCgyKSwgZGlzYWJsZWQ6IHRydWV9KSxcbiAgICB9LCBsb3NzKTtcblxuICAgIHRoaXMuZ2V0KCdvcGVuQmFsYW5jZScpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKG9wZW5CYWxhbmNlOiBudW1iZXIpID0+IHtcbiAgICAgIHRoaXMuZ2V0KCdiYWxhbmNlJykuc2V0VmFsdWUoKHByb2ZpdCAtIG9wZW5CYWxhbmNlKS50b0ZpeGVkKDIpKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiByYWRpbyBidXR0b25zIGNhbid0IHdvcmsgd2l0aCBvYmplY3RcbiAgICogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9pc3N1ZXMvMTA0OTVcbiAgICovXG4gIHN1Ym1pdCgpOiBTb2xlQnVzaW5lc3NMb3NzIHtcbiAgICByZXR1cm4gc3VwZXIuc3VibWl0KHsgb2Zmc2V0UnVsZTogdGhpcy5nZXQoJ29mZnNldFJ1bGUnKS52YWx1ZSA/IHsgaWQ6IHRoaXMuZ2V0KCdvZmZzZXRSdWxlJykudmFsdWUgfSA6IG51bGwgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,69 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { SoleBusiness } from '../../models';
3
+ import { plainToClass } from 'class-transformer';
4
+ import { UntypedFormArray, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';
5
+ import { IncomeSourceTypeEnum } from '../../db/Enums/income-source-type.enum';
6
+ import { FinancialYear } from '../../models/financial-year/financial-year';
7
+ export class SoleBusinessForm extends AbstractForm {
8
+ constructor(business = plainToClass(SoleBusiness, {})) {
9
+ super({
10
+ name: new UntypedFormControl(business.name, Validators.required),
11
+ activity: new UntypedFormControl(business.activity, Validators.required),
12
+ description: new UntypedFormControl(business.description),
13
+ website: new UntypedFormControl(business.website)
14
+ }, business);
15
+ this.business = business;
16
+ // User have to create income source with new business.
17
+ // Income source is not able for edit business
18
+ if (!business.id) {
19
+ // @TODO Alex (TT-2304): move to separated form class
20
+ this.addControl('incomeSource', new UntypedFormGroup({
21
+ type: new UntypedFormControl(IncomeSourceTypeEnum.SOLE, Validators.required),
22
+ name: new UntypedFormControl(null, Validators.required),
23
+ soleForecasts: new UntypedFormArray([
24
+ new UntypedFormGroup({
25
+ financialYear: new UntypedFormControl(new FinancialYear().year, Validators.required),
26
+ amount: new UntypedFormControl(null, Validators.required),
27
+ taxInstalments: new UntypedFormControl(null, Validators.required)
28
+ })
29
+ ])
30
+ }));
31
+ this.addControl('losses', new UntypedFormArray([
32
+ new UntypedFormGroup({
33
+ financialYear: new UntypedFormControl(new FinancialYear().year),
34
+ openBalance: new UntypedFormControl(null, [Validators.required, Validators.min(0)])
35
+ })
36
+ ]));
37
+ }
38
+ this.listenEvents();
39
+ }
40
+ listenEvents() {
41
+ if (this.contains('incomeSource')) {
42
+ this.listenNameChanges();
43
+ }
44
+ }
45
+ /**
46
+ * We take the first forecast because income sources available only for new business, so we have only one forecast
47
+ */
48
+ get forecastFormGroup() {
49
+ if (this.business.id) {
50
+ return null;
51
+ }
52
+ return this.get('incomeSource').get('soleForecasts').at(0);
53
+ }
54
+ /**
55
+ * We take the first loss because losses available only for new business, so we have only one loss
56
+ */
57
+ get lossFormGroup() {
58
+ if (this.business.id) {
59
+ return null;
60
+ }
61
+ return this.get('losses').at(0);
62
+ }
63
+ listenNameChanges() {
64
+ this.get('name').valueChanges.subscribe((name) => {
65
+ this.get('incomeSource').get('name').setValue(name);
66
+ });
67
+ }
68
+ }
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1idXNpbmVzcy5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2Zvcm1zL3NvbGUvc29sZS1idXNpbmVzcy5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRzNFLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxZQUEwQjtJQUM5RCxZQUNVLFdBQXlCLFlBQVksQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDO1FBRS9ELEtBQUssQ0FBQztZQUNKLElBQUksRUFBRSxJQUFJLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNoRSxRQUFRLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDeEUsV0FBVyxFQUFFLElBQUksa0JBQWtCLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQztZQUN6RCxPQUFPLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO1NBQ2xELEVBQUUsUUFBUSxDQUFDLENBQUM7UUFQTCxhQUFRLEdBQVIsUUFBUSxDQUErQztRQVMvRCx1REFBdUQ7UUFDdkQsOENBQThDO1FBQzlDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFO1lBQ2hCLHFEQUFxRDtZQUNyRCxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxJQUFJLGdCQUFnQixDQUFDO2dCQUNuRCxJQUFJLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztnQkFDNUUsSUFBSSxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7Z0JBQ3ZELGFBQWEsRUFBRSxJQUFJLGdCQUFnQixDQUFDO29CQUNsQyxJQUFJLGdCQUFnQixDQUFDO3dCQUNuQixhQUFhLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLGFBQWEsRUFBRSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO3dCQUNwRixNQUFNLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQzt3QkFDekQsY0FBYyxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7cUJBQ2xFLENBQUM7aUJBQ0gsQ0FBQzthQUNILENBQUMsQ0FBQyxDQUFBO1lBRUgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxnQkFBZ0IsQ0FBQztnQkFDN0MsSUFBSSxnQkFBZ0IsQ0FBQztvQkFDbkIsYUFBYSxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUM7b0JBQy9ELFdBQVcsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUNwRixDQUFDO2FBQ0gsQ0FBQyxDQUFDLENBQUE7U0FDSjtRQUVELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUNqQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksaUJBQWlCO1FBQ25CLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUU7WUFDcEIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQVEsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFzQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQXFCLENBQUM7SUFDdkcsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxhQUFhO1FBQ2YsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRTtZQUNwQixPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsT0FBUSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBc0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFxQixDQUFDO0lBQzVFLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBWSxFQUFFLEVBQUU7WUFDdkQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBTb2xlQnVzaW5lc3MgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1BcnJheSwgVW50eXBlZEZvcm1Db250cm9sLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9pbmNvbWUtc291cmNlLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBGaW5hbmNpYWxZZWFyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudC1saXN0ZW5lci5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY2xhc3MgU29sZUJ1c2luZXNzRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxTb2xlQnVzaW5lc3M+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGJ1c2luZXNzOiBTb2xlQnVzaW5lc3MgPSBwbGFpblRvQ2xhc3MoU29sZUJ1c2luZXNzLCB7fSlcbiAgKSB7XG4gICAgc3VwZXIoe1xuICAgICAgbmFtZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChidXNpbmVzcy5uYW1lLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGFjdGl2aXR5OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKGJ1c2luZXNzLmFjdGl2aXR5LCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGRlc2NyaXB0aW9uOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKGJ1c2luZXNzLmRlc2NyaXB0aW9uKSxcbiAgICAgIHdlYnNpdGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woYnVzaW5lc3Mud2Vic2l0ZSlcbiAgICB9LCBidXNpbmVzcyk7XG5cbiAgICAvLyBVc2VyIGhhdmUgdG8gY3JlYXRlIGluY29tZSBzb3VyY2Ugd2l0aCBuZXcgYnVzaW5lc3MuXG4gICAgLy8gSW5jb21lIHNvdXJjZSBpcyBub3QgYWJsZSBmb3IgZWRpdCBidXNpbmVzc1xuICAgIGlmICghYnVzaW5lc3MuaWQpIHtcbiAgICAgIC8vIEBUT0RPIEFsZXggKFRULTIzMDQpOiBtb3ZlIHRvIHNlcGFyYXRlZCBmb3JtIGNsYXNzXG4gICAgICB0aGlzLmFkZENvbnRyb2woJ2luY29tZVNvdXJjZScsIG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgICAgdHlwZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChJbmNvbWVTb3VyY2VUeXBlRW51bS5TT0xFLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgbmFtZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgc29sZUZvcmVjYXN0czogbmV3IFVudHlwZWRGb3JtQXJyYXkoW1xuICAgICAgICAgIG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgICAgICAgIGZpbmFuY2lhbFllYXI6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobmV3IEZpbmFuY2lhbFllYXIoKS55ZWFyLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgICAgIGFtb3VudDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgICAgIHRheEluc3RhbG1lbnRzOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpXG4gICAgICAgICAgfSlcbiAgICAgICAgXSlcbiAgICAgIH0pKVxuXG4gICAgICB0aGlzLmFkZENvbnRyb2woJ2xvc3NlcycsIG5ldyBVbnR5cGVkRm9ybUFycmF5KFtcbiAgICAgICAgbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgICAgICAgIGZpbmFuY2lhbFllYXI6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobmV3IEZpbmFuY2lhbFllYXIoKS55ZWFyKSxcbiAgICAgICAgICBvcGVuQmFsYW5jZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW4oMCldKVxuICAgICAgICB9KVxuICAgICAgXSkpXG4gICAgfVxuXG4gICAgdGhpcy5saXN0ZW5FdmVudHMoKTtcbiAgfVxuXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jb250YWlucygnaW5jb21lU291cmNlJykpIHtcbiAgICAgIHRoaXMubGlzdGVuTmFtZUNoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogV2UgdGFrZSB0aGUgZmlyc3QgZm9yZWNhc3QgYmVjYXVzZSBpbmNvbWUgc291cmNlcyBhdmFpbGFibGUgb25seSBmb3IgbmV3IGJ1c2luZXNzLCBzbyB3ZSBoYXZlIG9ubHkgb25lIGZvcmVjYXN0XG4gICAqL1xuICBnZXQgZm9yZWNhc3RGb3JtR3JvdXAoKTogVW50eXBlZEZvcm1Hcm91cCB7XG4gICAgaWYgKHRoaXMuYnVzaW5lc3MuaWQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiAodGhpcy5nZXQoJ2luY29tZVNvdXJjZScpLmdldCgnc29sZUZvcmVjYXN0cycpIGFzIFVudHlwZWRGb3JtQXJyYXkpLmF0KDApIGFzIFVudHlwZWRGb3JtR3JvdXA7XG4gIH1cblxuICAvKipcbiAgICogV2UgdGFrZSB0aGUgZmlyc3QgbG9zcyBiZWNhdXNlIGxvc3NlcyBhdmFpbGFibGUgb25seSBmb3IgbmV3IGJ1c2luZXNzLCBzbyB3ZSBoYXZlIG9ubHkgb25lIGxvc3NcbiAgICovXG4gIGdldCBsb3NzRm9ybUdyb3VwKCk6IFVudHlwZWRGb3JtR3JvdXAge1xuICAgIGlmICh0aGlzLmJ1c2luZXNzLmlkKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gKHRoaXMuZ2V0KCdsb3NzZXMnKSBhcyBVbnR5cGVkRm9ybUFycmF5KS5hdCgwKSBhcyBVbnR5cGVkRm9ybUdyb3VwO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5OYW1lQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmdldCgnbmFtZScpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKG5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgdGhpcy5nZXQoJ2luY29tZVNvdXJjZScpLmdldCgnbmFtZScpLnNldFZhbHVlKG5hbWUpO1xuICAgIH0pXG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { SoleContact } from '../../models';
3
+ import { plainToClass } from 'class-transformer';
4
+ import { UntypedFormControl, Validators } from '@angular/forms';
5
+ export class SoleContactForm extends AbstractForm {
6
+ constructor(contact = plainToClass(SoleContact, {})) {
7
+ super({
8
+ name: new UntypedFormControl(contact.name, Validators.required),
9
+ abn: new UntypedFormControl(contact.abn, [Validators.minLength(11), Validators.maxLength(11)]),
10
+ firstName: new UntypedFormControl(contact.firstName, Validators.required),
11
+ lastName: new UntypedFormControl(contact.lastName, Validators.required),
12
+ email: new UntypedFormControl(contact.email, [Validators.required, Validators.email]),
13
+ phone: new UntypedFormControl(contact.phone),
14
+ address: new UntypedFormControl(contact.address)
15
+ }, contact);
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1jb250YWN0LmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvc29sZS9zb2xlLWNvbnRhY3QuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFXLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2hFLE1BQU0sT0FBTyxlQUFnQixTQUFRLFlBQXlCO0lBQzVELFlBQ0UsVUFBdUIsWUFBWSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7UUFFcEQsS0FBSyxDQUFDO1lBQ0osSUFBSSxFQUFFLElBQUksa0JBQWtCLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQy9ELEdBQUcsRUFBRSxJQUFJLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM5RixTQUFTLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDekUsUUFBUSxFQUFFLElBQUksa0JBQWtCLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3ZFLEtBQUssRUFBRSxJQUFJLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyRixLQUFLLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQzVDLE9BQU8sRUFBRSxJQUFJLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7U0FDakQsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Rm9ybSB9IGZyb20gJy4uL2Fic3RyYWN0LmZvcm0nO1xuaW1wb3J0IHsgQWRkcmVzcywgU29sZUNvbnRhY3QgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQWRkcmVzc0Zvcm0gfSBmcm9tICcuLi9hZGRyZXNzJztcblxuZXhwb3J0IGNsYXNzIFNvbGVDb250YWN0Rm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxTb2xlQ29udGFjdD4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBjb250YWN0OiBTb2xlQ29udGFjdCA9IHBsYWluVG9DbGFzcyhTb2xlQ29udGFjdCwge30pXG4gICkge1xuICAgIHN1cGVyKHtcbiAgICAgIG5hbWU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woY29udGFjdC5uYW1lLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGFibjogbmV3IFVudHlwZWRGb3JtQ29udHJvbChjb250YWN0LmFibiwgW1ZhbGlkYXRvcnMubWluTGVuZ3RoKDExKSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTEpXSksXG4gICAgICBmaXJzdE5hbWU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woY29udGFjdC5maXJzdE5hbWUsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgbGFzdE5hbWU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woY29udGFjdC5sYXN0TmFtZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBlbWFpbDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChjb250YWN0LmVtYWlsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5lbWFpbF0pLFxuICAgICAgcGhvbmU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woY29udGFjdC5waG9uZSksXG4gICAgICBhZGRyZXNzOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKGNvbnRhY3QuYWRkcmVzcylcbiAgICB9LCBjb250YWN0KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,10 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl } from '@angular/forms';
3
+ export class SoleDepreciationMethodForm extends AbstractForm {
4
+ constructor(soleDepreciationMethod) {
5
+ super({
6
+ method: new UntypedFormControl(soleDepreciationMethod.method)
7
+ }, soleDepreciationMethod);
8
+ }
9
+ }
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1kZXByZWNpYXRpb24tbWV0aG9kLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvc29sZS9zb2xlLWRlcHJlY2lhdGlvbi1tZXRob2QuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEQsTUFBTSxPQUFPLDBCQUEyQixTQUFRLFlBQW9DO0lBQ2xGLFlBQ0Usc0JBQThDO1FBRTlDLEtBQUssQ0FBQztZQUNKLE1BQU0sRUFBRSxJQUFJLGtCQUFrQixDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQztTQUM5RCxFQUFFLHNCQUFzQixDQUFDLENBQUM7SUFDN0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBTb2xlRGVwcmVjaWF0aW9uTWV0aG9kIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IGNsYXNzIFNvbGVEZXByZWNpYXRpb25NZXRob2RGb3JtIGV4dGVuZHMgQWJzdHJhY3RGb3JtPFNvbGVEZXByZWNpYXRpb25NZXRob2Q+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgc29sZURlcHJlY2lhdGlvbk1ldGhvZDogU29sZURlcHJlY2lhdGlvbk1ldGhvZFxuICApIHtcbiAgICBzdXBlcih7XG4gICAgICBtZXRob2Q6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woc29sZURlcHJlY2lhdGlvbk1ldGhvZC5tZXRob2QpXG4gICAgfSwgc29sZURlcHJlY2lhdGlvbk1ldGhvZCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,12 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ import { requiredLengthValidator } from '../../validators/required-length.validator';
4
+ export class SoleDetailsForm extends AbstractForm {
5
+ constructor(soleDetails) {
6
+ super({
7
+ abn: new UntypedFormControl(soleDetails.abn, [Validators.required, requiredLengthValidator(11)]),
8
+ isGST: new UntypedFormControl(soleDetails.isGST || false)
9
+ }, soleDetails);
10
+ }
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1kZXRhaWxzLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvc29sZS9zb2xlLWRldGFpbHMuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXJGLE1BQU0sT0FBTyxlQUFnQixTQUFRLFlBQXlCO0lBQzVELFlBQ0UsV0FBd0I7UUFFeEIsS0FBSyxDQUFDO1lBQ0osR0FBRyxFQUFFLElBQUksa0JBQWtCLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsdUJBQXVCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNoRyxLQUFLLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQztTQUMxRCxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Rm9ybSB9IGZyb20gJy4uL2Fic3RyYWN0LmZvcm0nO1xuaW1wb3J0IHsgU29sZURldGFpbHMgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgcmVxdWlyZWRMZW5ndGhWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi92YWxpZGF0b3JzL3JlcXVpcmVkLWxlbmd0aC52YWxpZGF0b3InO1xuXG5leHBvcnQgY2xhc3MgU29sZURldGFpbHNGb3JtIGV4dGVuZHMgQWJzdHJhY3RGb3JtPFNvbGVEZXRhaWxzPiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHNvbGVEZXRhaWxzOiBTb2xlRGV0YWlsc1xuICApIHtcbiAgICBzdXBlcih7XG4gICAgICBhYm46IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woc29sZURldGFpbHMuYWJuLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgcmVxdWlyZWRMZW5ndGhWYWxpZGF0b3IoMTEpXSksXG4gICAgICBpc0dTVDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChzb2xlRGV0YWlscy5pc0dTVCB8fCBmYWxzZSlcbiAgICB9LCBzb2xlRGV0YWlscyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,15 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ export class SoleInvoiceItemForm extends AbstractForm {
4
+ constructor(item) {
5
+ super({
6
+ description: new UntypedFormControl(item.description, [Validators.required, Validators.maxLength(SoleInvoiceItemForm.maxDescriptionLength)]),
7
+ quantity: new UntypedFormControl(item.quantity, Validators.required),
8
+ price: new UntypedFormControl(item.price, Validators.required),
9
+ isGST: new UntypedFormControl({ value: item.isGST || false, disabled: !item.chartAccounts?.isGST }),
10
+ chartAccounts: new UntypedFormControl(item.chartAccounts, Validators.required),
11
+ }, item);
12
+ }
13
+ }
14
+ SoleInvoiceItemForm.maxDescriptionLength = 255;
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1pbnZvaWNlLWl0ZW0uZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9zb2xlL3NvbGUtaW52b2ljZS1pdGVtLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWhELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRSxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsWUFBNkI7SUFHcEUsWUFDRSxJQUFxQjtRQUVyQixLQUFLLENBQUM7WUFDSixXQUFXLEVBQUUsSUFBSSxrQkFBa0IsQ0FDakMsSUFBSSxDQUFDLFdBQVcsRUFDaEIsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUN0RjtZQUNELFFBQVEsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNwRSxLQUFLLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDOUQsS0FBSyxFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUMsQ0FBQztZQUNqRyxhQUFhLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDL0UsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNYLENBQUM7O0FBZk0sd0NBQW9CLEdBQVcsR0FBRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBTb2xlSW52b2ljZUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5leHBvcnQgY2xhc3MgU29sZUludm9pY2VJdGVtRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxTb2xlSW52b2ljZUl0ZW0+IHtcbiAgc3RhdGljIG1heERlc2NyaXB0aW9uTGVuZ3RoOiBudW1iZXIgPSAyNTU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgaXRlbTogU29sZUludm9pY2VJdGVtXG4gICkge1xuICAgIHN1cGVyKHtcbiAgICAgIGRlc2NyaXB0aW9uOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKFxuICAgICAgICBpdGVtLmRlc2NyaXB0aW9uLFxuICAgICAgICBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoU29sZUludm9pY2VJdGVtRm9ybS5tYXhEZXNjcmlwdGlvbkxlbmd0aCldXG4gICAgICApLFxuICAgICAgcXVhbnRpdHk6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woaXRlbS5xdWFudGl0eSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBwcmljZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChpdGVtLnByaWNlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGlzR1NUOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHt2YWx1ZTogaXRlbS5pc0dTVCB8fCBmYWxzZSwgZGlzYWJsZWQ6ICFpdGVtLmNoYXJ0QWNjb3VudHM/LmlzR1NUfSksXG4gICAgICBjaGFydEFjY291bnRzOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKGl0ZW0uY2hhcnRBY2NvdW50cywgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgfSwgaXRlbSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,15 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ export class SoleInvoiceTemplateForm extends AbstractForm {
4
+ constructor(invoiceTemplate) {
5
+ super({
6
+ name: new UntypedFormControl(invoiceTemplate.name, Validators.required),
7
+ // taxType is always 'No Tax' when soleDetails.isGST === false
8
+ taxType: new UntypedFormControl(invoiceTemplate.taxType, Validators.required),
9
+ // 32767 - max value because we have small int data type in database for this field, but we don't have actual max validation for term
10
+ term: new UntypedFormControl(invoiceTemplate.term, [Validators.required, Validators.min(0), Validators.max(32767)]),
11
+ bankAccount: new UntypedFormControl(invoiceTemplate.bankAccount, [Validators.required]),
12
+ }, invoiceTemplate);
13
+ }
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1pbnZvaWNlLXRlbXBsYXRlLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvc29sZS9zb2xlLWludm9pY2UtdGVtcGxhdGUuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhFLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxZQUFpQztJQUM1RSxZQUNFLGVBQW9DO1FBRXBDLEtBQUssQ0FBQztZQUNKLElBQUksRUFBRSxJQUFJLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUN2RSw4REFBOEQ7WUFDOUQsT0FBTyxFQUFFLElBQUksa0JBQWtCLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzdFLHFJQUFxSTtZQUNySSxJQUFJLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNuSCxXQUFXLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3hGLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDdEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBTb2xlSW52b2ljZVRlbXBsYXRlIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IGNsYXNzIFNvbGVJbnZvaWNlVGVtcGxhdGVGb3JtIGV4dGVuZHMgQWJzdHJhY3RGb3JtPFNvbGVJbnZvaWNlVGVtcGxhdGU+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgaW52b2ljZVRlbXBsYXRlOiBTb2xlSW52b2ljZVRlbXBsYXRlXG4gICkge1xuICAgIHN1cGVyKHtcbiAgICAgIG5hbWU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woaW52b2ljZVRlbXBsYXRlLm5hbWUsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgLy8gdGF4VHlwZSBpcyBhbHdheXMgJ05vIFRheCcgd2hlbiBzb2xlRGV0YWlscy5pc0dTVCA9PT0gZmFsc2VcbiAgICAgIHRheFR5cGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woaW52b2ljZVRlbXBsYXRlLnRheFR5cGUsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgLy8gMzI3NjcgLSBtYXggdmFsdWUgYmVjYXVzZSB3ZSBoYXZlIHNtYWxsIGludCBkYXRhIHR5cGUgaW4gZGF0YWJhc2UgZm9yIHRoaXMgZmllbGQsIGJ1dCB3ZSBkb24ndCBoYXZlIGFjdHVhbCBtYXggdmFsaWRhdGlvbiBmb3IgdGVybVxuICAgICAgdGVybTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChpbnZvaWNlVGVtcGxhdGUudGVybSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluKDApLCBWYWxpZGF0b3JzLm1heCgzMjc2NyldKSxcbiAgICAgIGJhbmtBY2NvdW50OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKGludm9pY2VUZW1wbGF0ZS5iYW5rQWNjb3VudCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcbiAgICB9LCBpbnZvaWNlVGVtcGxhdGUpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,158 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { SoleInvoice, SoleInvoiceItem } from '../../models';
3
+ import { UntypedFormArray, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';
4
+ import { SoleInvoiceItemForm } from './sole-invoice-item.form';
5
+ import { plainToClass } from 'class-transformer';
6
+ import { SoleInvoiceTaxTypeEnum } from '../../db/Enums/sole-invoice-tax-type.enum';
7
+ /**
8
+ * Form is divided into two groups, since the creation of Sole invoice takes place in two steps:
9
+ * a common invoice data and sole invoice items.
10
+ */
11
+ export class SoleInvoiceForm extends AbstractForm {
12
+ constructor(invoice, soleDetailsGST,
13
+ // default template to be preselected
14
+ defaultTemplate) {
15
+ super({
16
+ commonData: new UntypedFormGroup({
17
+ dateFrom: new UntypedFormControl(invoice.dateFrom || new Date(), Validators.required),
18
+ dateTo: new UntypedFormControl(invoice.dateTo, Validators.required),
19
+ payer: new UntypedFormControl(invoice.payer, Validators.required),
20
+ taxType: new UntypedFormControl(invoice.taxType, Validators.required),
21
+ bankAccount: new UntypedFormControl(invoice.bankAccount, Validators.required),
22
+ reference: new UntypedFormControl(invoice.reference)
23
+ }),
24
+ items: new UntypedFormArray((invoice.items || [plainToClass(SoleInvoiceItem, {})]).map((item) => new SoleInvoiceItemForm(item))),
25
+ }, invoice);
26
+ this.invoice = invoice;
27
+ this.soleDetailsGST = soleDetailsGST;
28
+ this.defaultTemplate = defaultTemplate;
29
+ // we need invoice template only for new invoices
30
+ if (!invoice.id) {
31
+ (this.commonData).addControl('template', new UntypedFormControl(this.defaultTemplate));
32
+ // user can have no template, but he can add it from this form
33
+ if (this.defaultTemplate) {
34
+ this.updateTemplateRelatedFields(this.defaultTemplate);
35
+ }
36
+ }
37
+ // invoice.taxType is always NONE ('No Tax') when soleDetails.isGST === false
38
+ if (!this.soleDetailsGST) {
39
+ this.commonData.get('taxType').setValue(SoleInvoiceTaxTypeEnum.NO_TAX);
40
+ this.commonData.get('taxType').disable();
41
+ // Items isGST is not available when invoice.taxType === NONE ('No Tax')
42
+ this.items.controls.forEach((itemForm) => {
43
+ this.disableItemGST(itemForm);
44
+ });
45
+ }
46
+ this.listenEvents();
47
+ }
48
+ get items() {
49
+ return this.get('items');
50
+ }
51
+ listenEvents() {
52
+ // no need to listen tax type and items chart accounts changes when soleDetails.isGST === false
53
+ // because invoice tax type always 'No Tax' in this case and not available for changing
54
+ if (this.soleDetailsGST) {
55
+ this.listenTaxTypeChanges();
56
+ this.items.controls.forEach((itemForm) => {
57
+ this.listenItemChartAccountsChanges(itemForm);
58
+ });
59
+ }
60
+ // nothing to listen if template field is not exist (edit invoice case)
61
+ if ((this.commonData).contains('template')) {
62
+ this.listenTemplateChanges();
63
+ }
64
+ }
65
+ addItem() {
66
+ const itemForm = new SoleInvoiceItemForm(plainToClass(SoleInvoiceItem, {}));
67
+ // no need to listen items chart accounts changes when soleDetails.isGST === false
68
+ // because invoice tax type always 'No Tax' in this case and not available for changing
69
+ if (this.soleDetailsGST) {
70
+ this.listenItemChartAccountsChanges(itemForm);
71
+ }
72
+ this.items.push(itemForm);
73
+ }
74
+ removeItem(index) {
75
+ this.items.removeAt(index);
76
+ }
77
+ submit(data = {}) {
78
+ this.submitted = true;
79
+ this.markAllAsTouched();
80
+ if (!this.disabled && !this.valid) {
81
+ return null;
82
+ }
83
+ const invoiceInstance = this.currentValue;
84
+ this.onSubmit.emit(invoiceInstance);
85
+ return invoiceInstance;
86
+ }
87
+ /**
88
+ * Update default values from selected invoice template
89
+ */
90
+ listenTemplateChanges() {
91
+ this.commonData.get('template').valueChanges.subscribe((template) => {
92
+ this.updateTemplateRelatedFields(template);
93
+ });
94
+ }
95
+ /**
96
+ * GST is not available for items when invoice.taxType === NONE
97
+ */
98
+ listenTaxTypeChanges() {
99
+ this.commonData.get('taxType').valueChanges.subscribe((type) => {
100
+ this.items.controls.forEach((itemForm) => {
101
+ const chartAccounts = itemForm.get('chartAccounts').value;
102
+ // Item GST is available when invoice.taxType !== NONE ('No Tax')
103
+ if (type !== SoleInvoiceTaxTypeEnum.NO_TAX && chartAccounts?.isGST) {
104
+ this.enableItemGST(itemForm);
105
+ return;
106
+ }
107
+ this.disableItemGST(itemForm);
108
+ });
109
+ });
110
+ }
111
+ updateTemplateRelatedFields(template) {
112
+ this.commonData.get('bankAccount').setValue(template.bankAccount);
113
+ const dateFrom = this.commonData.get('dateFrom').value;
114
+ if (dateFrom) {
115
+ this.commonData.get('dateTo').setValue(new Date(dateFrom.getTime() + template.termTime));
116
+ }
117
+ // invoice.taxType is always 'No Tax' when soleDetails.isGST = false and not available for changing
118
+ if (this.soleDetailsGST) {
119
+ this.commonData.get('taxType').setValue(template.taxType);
120
+ }
121
+ }
122
+ /**
123
+ * GST availability depends on chart accounts isGST flag
124
+ */
125
+ listenItemChartAccountsChanges(itemForm) {
126
+ itemForm.get('chartAccounts').valueChanges.subscribe((chartAccounts) => {
127
+ // item.isGST is available only when item.chartAccounts.isGST === true, soleDetails.isGST === true and invoice.taxType !== NONE ('No Tax')
128
+ if (this.soleDetailsGST && chartAccounts.isGST && !this.currentValue.isNoTax()) {
129
+ this.enableItemGST(itemForm);
130
+ return;
131
+ }
132
+ this.disableItemGST(itemForm);
133
+ });
134
+ }
135
+ disableItemGST(itemForm) {
136
+ itemForm.get('isGST').setValue(false);
137
+ itemForm.get('isGST').disable();
138
+ }
139
+ /**
140
+ * Enable GST field for passed item form. Value is always true by default because only case when this field is enabled is
141
+ * when ChartAccounts.isGST === true, so we just use default value from chartAccounts.isGST
142
+ */
143
+ enableItemGST(itemForm) {
144
+ itemForm.get('isGST').setValue(true);
145
+ itemForm.get('isGST').enable();
146
+ }
147
+ get commonData() {
148
+ return this.get('commonData');
149
+ }
150
+ /**
151
+ * Rewrite abstract form getter to flat "commonData" field, which is not in the class
152
+ */
153
+ get currentValue() {
154
+ const formRawValue = this.getRawValue();
155
+ return plainToClass(SoleInvoice, Object.assign({}, this.model, { ...formRawValue.commonData, items: formRawValue.items }));
156
+ }
157
+ }
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1pbnZvaWNlLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvc29sZS9zb2xlLWludm9pY2UuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQXVCLE1BQU0sY0FBYyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFHbkY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGVBQWdCLFNBQVEsWUFBeUI7SUFDNUQsWUFDVSxPQUFvQixFQUNwQixjQUF1QjtJQUMvQixxQ0FBcUM7SUFDN0IsZUFBb0M7UUFFNUMsS0FBSyxDQUFDO1lBQ0osVUFBVSxFQUFFLElBQUksZ0JBQWdCLENBQUM7Z0JBQy9CLFFBQVEsRUFBRSxJQUFJLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksSUFBSSxJQUFJLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO2dCQUNyRixNQUFNLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7Z0JBQ25FLEtBQUssRUFBRSxJQUFJLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztnQkFDakUsT0FBTyxFQUFFLElBQUksa0JBQWtCLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO2dCQUNyRSxXQUFXLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7Z0JBQzdFLFNBQVMsRUFBRSxJQUFJLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7YUFDckQsQ0FBQztZQUNGLEtBQUssRUFBRSxJQUFJLGdCQUFnQixDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQXFCLEVBQUUsRUFBRSxDQUFDLElBQUksbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztTQUNsSixFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBZkosWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQUNwQixtQkFBYyxHQUFkLGNBQWMsQ0FBUztRQUV2QixvQkFBZSxHQUFmLGVBQWUsQ0FBcUI7UUFjNUMsaURBQWlEO1FBQ2pELElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFO1lBQ2YsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1lBRXZGLDhEQUE4RDtZQUM5RCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDeEQ7U0FDRjtRQUVELDZFQUE2RTtRQUM3RSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDdkUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7WUFFekMsd0VBQXdFO1lBQ3hFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQTZCLEVBQUUsRUFBRTtnQkFDNUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNoQyxDQUFDLENBQUMsQ0FBQztTQUNKO1FBRUQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFxQixDQUFDO0lBQy9DLENBQUM7SUFFRCxZQUFZO1FBQ1YsK0ZBQStGO1FBQy9GLHVGQUF1RjtRQUN2RixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdkIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFFNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBNkIsRUFBRSxFQUFFO2dCQUM1RCxJQUFJLENBQUMsOEJBQThCLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDaEQsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUVELHVFQUF1RTtRQUN2RSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMxQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztTQUM5QjtJQUNILENBQUM7SUFFRCxPQUFPO1FBQ0wsTUFBTSxRQUFRLEdBQXdCLElBQUksbUJBQW1CLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pHLGtGQUFrRjtRQUNsRix1RkFBdUY7UUFDdkYsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMvQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBYTtRQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQWUsRUFBRTtRQUNwQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUV4QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDakMsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE1BQU0sZUFBZSxHQUFnQixJQUFJLENBQUMsWUFBWSxDQUFDO1FBRXZELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sZUFBZSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNLLHFCQUFxQjtRQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBNkIsRUFBRSxFQUFFO1lBQ3ZGLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNLLG9CQUFvQjtRQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBNEIsRUFBRSxFQUFFO1lBQ3JGLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQTZCLEVBQUUsRUFBRTtnQkFDNUQsTUFBTSxhQUFhLEdBQWtCLFFBQVEsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsS0FBSyxDQUFDO2dCQUV6RSxpRUFBaUU7Z0JBQ2pFLElBQUksSUFBSSxLQUFLLHNCQUFzQixDQUFDLE1BQU0sSUFBSSxhQUFhLEVBQUUsS0FBSyxFQUFHO29CQUNuRSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUM3QixPQUFPO2lCQUNSO2dCQUVELElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDaEMsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFTywyQkFBMkIsQ0FBQyxRQUE2QjtRQUMvRCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWxFLE1BQU0sUUFBUSxHQUFTLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUM3RCxJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7U0FDMUY7UUFFRCxtR0FBbUc7UUFDbkcsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDM0Q7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSyw4QkFBOEIsQ0FBQyxRQUE2QjtRQUNsRSxRQUFRLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxhQUE0QixFQUFFLEVBQUU7WUFDcEYsMElBQTBJO1lBQzFJLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxhQUFhLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDOUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDN0IsT0FBTzthQUNSO1lBRUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxjQUFjLENBQUMsUUFBNkI7UUFDbEQsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssYUFBYSxDQUFDLFFBQTZCO1FBQ2pELFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQXFCLENBQUM7SUFDcEQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxZQUFZO1FBQ2QsTUFBTSxZQUFZLEdBQVEsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRTdDLE9BQU8sWUFBWSxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUM1QyxFQUFFLEVBQ0YsSUFBSSxDQUFDLEtBQUssRUFDVixFQUFDLEdBQUcsWUFBWSxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsWUFBWSxDQUFDLEtBQUssRUFBQyxDQUN4RCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdEZvcm0gfSBmcm9tICcuLi9hYnN0cmFjdC5mb3JtJztcbmltcG9ydCB7IFNvbGVJbnZvaWNlLCBTb2xlSW52b2ljZUl0ZW0sIFNvbGVJbnZvaWNlVGVtcGxhdGUgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1BcnJheSwgVW50eXBlZEZvcm1Db250cm9sLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU29sZUludm9pY2VJdGVtRm9ybSB9IGZyb20gJy4vc29sZS1pbnZvaWNlLWl0ZW0uZm9ybSc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBJRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZXZlbnQtbGlzdGVuZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNvbGVJbnZvaWNlVGF4VHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9zb2xlLWludm9pY2UtdGF4LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzJztcblxuLyoqXG4gKiBGb3JtIGlzIGRpdmlkZWQgaW50byB0d28gZ3JvdXBzLCBzaW5jZSB0aGUgY3JlYXRpb24gb2YgU29sZSBpbnZvaWNlIHRha2VzIHBsYWNlIGluIHR3byBzdGVwczpcbiAqIGEgY29tbW9uIGludm9pY2UgZGF0YSBhbmQgc29sZSBpbnZvaWNlIGl0ZW1zLlxuICovXG5leHBvcnQgY2xhc3MgU29sZUludm9pY2VGb3JtIGV4dGVuZHMgQWJzdHJhY3RGb3JtPFNvbGVJbnZvaWNlPiBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBpbnZvaWNlOiBTb2xlSW52b2ljZSxcbiAgICBwcml2YXRlIHNvbGVEZXRhaWxzR1NUOiBib29sZWFuLFxuICAgIC8vIGRlZmF1bHQgdGVtcGxhdGUgdG8gYmUgcHJlc2VsZWN0ZWRcbiAgICBwcml2YXRlIGRlZmF1bHRUZW1wbGF0ZTogU29sZUludm9pY2VUZW1wbGF0ZSxcbiAgKSB7XG4gICAgc3VwZXIoe1xuICAgICAgY29tbW9uRGF0YTogbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgICAgICBkYXRlRnJvbTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChpbnZvaWNlLmRhdGVGcm9tIHx8IG5ldyBEYXRlKCksIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICBkYXRlVG86IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woaW52b2ljZS5kYXRlVG8sIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICBwYXllcjogbmV3IFVudHlwZWRGb3JtQ29udHJvbChpbnZvaWNlLnBheWVyLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgdGF4VHlwZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbChpbnZvaWNlLnRheFR5cGUsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICBiYW5rQWNjb3VudDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChpbnZvaWNlLmJhbmtBY2NvdW50LCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgICAgcmVmZXJlbmNlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKGludm9pY2UucmVmZXJlbmNlKVxuICAgICAgfSksXG4gICAgICBpdGVtczogbmV3IFVudHlwZWRGb3JtQXJyYXkoKGludm9pY2UuaXRlbXMgfHwgW3BsYWluVG9DbGFzcyhTb2xlSW52b2ljZUl0ZW0sIHt9KV0pLm1hcCgoaXRlbTogU29sZUludm9pY2VJdGVtKSA9PiBuZXcgU29sZUludm9pY2VJdGVtRm9ybShpdGVtKSkpLFxuICAgIH0sIGludm9pY2UpO1xuXG4gICAgLy8gd2UgbmVlZCBpbnZvaWNlIHRlbXBsYXRlIG9ubHkgZm9yIG5ldyBpbnZvaWNlc1xuICAgIGlmICghaW52b2ljZS5pZCkge1xuICAgICAgKHRoaXMuY29tbW9uRGF0YSkuYWRkQ29udHJvbCgndGVtcGxhdGUnLCBuZXcgVW50eXBlZEZvcm1Db250cm9sKHRoaXMuZGVmYXVsdFRlbXBsYXRlKSk7XG5cbiAgICAgIC8vIHVzZXIgY2FuIGhhdmUgbm8gdGVtcGxhdGUsIGJ1dCBoZSBjYW4gYWRkIGl0IGZyb20gdGhpcyBmb3JtXG4gICAgICBpZiAodGhpcy5kZWZhdWx0VGVtcGxhdGUpIHtcbiAgICAgICAgdGhpcy51cGRhdGVUZW1wbGF0ZVJlbGF0ZWRGaWVsZHModGhpcy5kZWZhdWx0VGVtcGxhdGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGludm9pY2UudGF4VHlwZSBpcyBhbHdheXMgTk9ORSAoJ05vIFRheCcpIHdoZW4gc29sZURldGFpbHMuaXNHU1QgPT09IGZhbHNlXG4gICAgaWYgKCF0aGlzLnNvbGVEZXRhaWxzR1NUKSB7XG4gICAgICB0aGlzLmNvbW1vbkRhdGEuZ2V0KCd0YXhUeXBlJykuc2V0VmFsdWUoU29sZUludm9pY2VUYXhUeXBlRW51bS5OT19UQVgpO1xuICAgICAgdGhpcy5jb21tb25EYXRhLmdldCgndGF4VHlwZScpLmRpc2FibGUoKTtcblxuICAgICAgLy8gSXRlbXMgaXNHU1QgaXMgbm90IGF2YWlsYWJsZSB3aGVuIGludm9pY2UudGF4VHlwZSA9PT0gTk9ORSAoJ05vIFRheCcpXG4gICAgICB0aGlzLml0ZW1zLmNvbnRyb2xzLmZvckVhY2goKGl0ZW1Gb3JtOiBTb2xlSW52b2ljZUl0ZW1Gb3JtKSA9PiB7XG4gICAgICAgIHRoaXMuZGlzYWJsZUl0ZW1HU1QoaXRlbUZvcm0pO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5saXN0ZW5FdmVudHMoKTtcbiAgfVxuXG4gIGdldCBpdGVtcygpOiBVbnR5cGVkRm9ybUFycmF5IHtcbiAgICByZXR1cm4gdGhpcy5nZXQoJ2l0ZW1zJykgYXMgVW50eXBlZEZvcm1BcnJheTtcbiAgfVxuXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICAvLyBubyBuZWVkIHRvIGxpc3RlbiB0YXggdHlwZSBhbmQgaXRlbXMgY2hhcnQgYWNjb3VudHMgY2hhbmdlcyB3aGVuIHNvbGVEZXRhaWxzLmlzR1NUID09PSBmYWxzZVxuICAgIC8vIGJlY2F1c2UgaW52b2ljZSB0YXggdHlwZSBhbHdheXMgJ05vIFRheCcgaW4gdGhpcyBjYXNlIGFuZCBub3QgYXZhaWxhYmxlIGZvciBjaGFuZ2luZ1xuICAgIGlmICh0aGlzLnNvbGVEZXRhaWxzR1NUKSB7XG4gICAgICB0aGlzLmxpc3RlblRheFR5cGVDaGFuZ2VzKCk7XG5cbiAgICAgIHRoaXMuaXRlbXMuY29udHJvbHMuZm9yRWFjaCgoaXRlbUZvcm06IFNvbGVJbnZvaWNlSXRlbUZvcm0pID0+IHtcbiAgICAgICAgdGhpcy5saXN0ZW5JdGVtQ2hhcnRBY2NvdW50c0NoYW5nZXMoaXRlbUZvcm0pO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gbm90aGluZyB0byBsaXN0ZW4gaWYgdGVtcGxhdGUgZmllbGQgaXMgbm90IGV4aXN0IChlZGl0IGludm9pY2UgY2FzZSlcbiAgICBpZiAoKHRoaXMuY29tbW9uRGF0YSkuY29udGFpbnMoJ3RlbXBsYXRlJykpIHtcbiAgICAgIHRoaXMubGlzdGVuVGVtcGxhdGVDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbiAgYWRkSXRlbSgpOiB2b2lkIHtcbiAgICBjb25zdCBpdGVtRm9ybTogU29sZUludm9pY2VJdGVtRm9ybSA9IG5ldyBTb2xlSW52b2ljZUl0ZW1Gb3JtKHBsYWluVG9DbGFzcyhTb2xlSW52b2ljZUl0ZW0sIHt9KSk7XG4gICAgLy8gbm8gbmVlZCB0byBsaXN0ZW4gaXRlbXMgY2hhcnQgYWNjb3VudHMgY2hhbmdlcyB3aGVuIHNvbGVEZXRhaWxzLmlzR1NUID09PSBmYWxzZVxuICAgIC8vIGJlY2F1c2UgaW52b2ljZSB0YXggdHlwZSBhbHdheXMgJ05vIFRheCcgaW4gdGhpcyBjYXNlIGFuZCBub3QgYXZhaWxhYmxlIGZvciBjaGFuZ2luZ1xuICAgIGlmICh0aGlzLnNvbGVEZXRhaWxzR1NUKSB7XG4gICAgICB0aGlzLmxpc3Rlbkl0ZW1DaGFydEFjY291bnRzQ2hhbmdlcyhpdGVtRm9ybSk7XG4gICAgfVxuXG4gICAgdGhpcy5pdGVtcy5wdXNoKGl0ZW1Gb3JtKTtcbiAgfVxuXG4gIHJlbW92ZUl0ZW0oaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuaXRlbXMucmVtb3ZlQXQoaW5kZXgpO1xuICB9XG5cbiAgc3VibWl0KGRhdGE6IG9iamVjdCA9IHt9KTogU29sZUludm9pY2Uge1xuICAgICAgdGhpcy5zdWJtaXR0ZWQgPSB0cnVlO1xuICAgICAgdGhpcy5tYXJrQWxsQXNUb3VjaGVkKCk7XG5cbiAgICAgIGlmICghdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy52YWxpZCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgaW52b2ljZUluc3RhbmNlOiBTb2xlSW52b2ljZSA9IHRoaXMuY3VycmVudFZhbHVlO1xuXG4gICAgICB0aGlzLm9uU3VibWl0LmVtaXQoaW52b2ljZUluc3RhbmNlKTtcbiAgICAgIHJldHVybiBpbnZvaWNlSW5zdGFuY2U7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGRlZmF1bHQgdmFsdWVzIGZyb20gc2VsZWN0ZWQgaW52b2ljZSB0ZW1wbGF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5UZW1wbGF0ZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5jb21tb25EYXRhLmdldCgndGVtcGxhdGUnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh0ZW1wbGF0ZTogU29sZUludm9pY2VUZW1wbGF0ZSkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVUZW1wbGF0ZVJlbGF0ZWRGaWVsZHModGVtcGxhdGUpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdTVCBpcyBub3QgYXZhaWxhYmxlIGZvciBpdGVtcyB3aGVuIGludm9pY2UudGF4VHlwZSA9PT0gTk9ORVxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5UYXhUeXBlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmNvbW1vbkRhdGEuZ2V0KCd0YXhUeXBlJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodHlwZTogU29sZUludm9pY2VUYXhUeXBlRW51bSkgPT4ge1xuICAgICAgdGhpcy5pdGVtcy5jb250cm9scy5mb3JFYWNoKChpdGVtRm9ybTogU29sZUludm9pY2VJdGVtRm9ybSkgPT4ge1xuICAgICAgICBjb25zdCBjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzID0gaXRlbUZvcm0uZ2V0KCdjaGFydEFjY291bnRzJykudmFsdWU7XG5cbiAgICAgICAgLy8gSXRlbSBHU1QgaXMgYXZhaWxhYmxlIHdoZW4gaW52b2ljZS50YXhUeXBlICE9PSBOT05FICgnTm8gVGF4JylcbiAgICAgICAgaWYgKHR5cGUgIT09IFNvbGVJbnZvaWNlVGF4VHlwZUVudW0uTk9fVEFYICYmIGNoYXJ0QWNjb3VudHM/LmlzR1NUICkge1xuICAgICAgICAgIHRoaXMuZW5hYmxlSXRlbUdTVChpdGVtRm9ybSk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kaXNhYmxlSXRlbUdTVChpdGVtRm9ybSk7XG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVRlbXBsYXRlUmVsYXRlZEZpZWxkcyh0ZW1wbGF0ZTogU29sZUludm9pY2VUZW1wbGF0ZSk6IHZvaWQge1xuICAgIHRoaXMuY29tbW9uRGF0YS5nZXQoJ2JhbmtBY2NvdW50Jykuc2V0VmFsdWUodGVtcGxhdGUuYmFua0FjY291bnQpO1xuXG4gICAgY29uc3QgZGF0ZUZyb206IERhdGUgPSB0aGlzLmNvbW1vbkRhdGEuZ2V0KCdkYXRlRnJvbScpLnZhbHVlO1xuICAgIGlmIChkYXRlRnJvbSkge1xuICAgICAgdGhpcy5jb21tb25EYXRhLmdldCgnZGF0ZVRvJykuc2V0VmFsdWUobmV3IERhdGUoZGF0ZUZyb20uZ2V0VGltZSgpICsgdGVtcGxhdGUudGVybVRpbWUpKTtcbiAgICB9XG5cbiAgICAvLyBpbnZvaWNlLnRheFR5cGUgaXMgYWx3YXlzICdObyBUYXgnIHdoZW4gc29sZURldGFpbHMuaXNHU1QgPSBmYWxzZSBhbmQgbm90IGF2YWlsYWJsZSBmb3IgY2hhbmdpbmdcbiAgICBpZiAodGhpcy5zb2xlRGV0YWlsc0dTVCkge1xuICAgICAgdGhpcy5jb21tb25EYXRhLmdldCgndGF4VHlwZScpLnNldFZhbHVlKHRlbXBsYXRlLnRheFR5cGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHU1QgYXZhaWxhYmlsaXR5IGRlcGVuZHMgb24gY2hhcnQgYWNjb3VudHMgaXNHU1QgZmxhZ1xuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5JdGVtQ2hhcnRBY2NvdW50c0NoYW5nZXMoaXRlbUZvcm06IFNvbGVJbnZvaWNlSXRlbUZvcm0pOiB2b2lkIHtcbiAgICBpdGVtRm9ybS5nZXQoJ2NoYXJ0QWNjb3VudHMnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzKSA9PiB7XG4gICAgICAvLyBpdGVtLmlzR1NUIGlzIGF2YWlsYWJsZSBvbmx5IHdoZW4gaXRlbS5jaGFydEFjY291bnRzLmlzR1NUID09PSB0cnVlLCBzb2xlRGV0YWlscy5pc0dTVCA9PT0gdHJ1ZSBhbmQgaW52b2ljZS50YXhUeXBlICE9PSBOT05FICgnTm8gVGF4JylcbiAgICAgIGlmICh0aGlzLnNvbGVEZXRhaWxzR1NUICYmIGNoYXJ0QWNjb3VudHMuaXNHU1QgJiYgIXRoaXMuY3VycmVudFZhbHVlLmlzTm9UYXgoKSkge1xuICAgICAgICB0aGlzLmVuYWJsZUl0ZW1HU1QoaXRlbUZvcm0pO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuZGlzYWJsZUl0ZW1HU1QoaXRlbUZvcm0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBkaXNhYmxlSXRlbUdTVChpdGVtRm9ybTogU29sZUludm9pY2VJdGVtRm9ybSk6IHZvaWQge1xuICAgIGl0ZW1Gb3JtLmdldCgnaXNHU1QnKS5zZXRWYWx1ZShmYWxzZSk7XG4gICAgaXRlbUZvcm0uZ2V0KCdpc0dTVCcpLmRpc2FibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmFibGUgR1NUIGZpZWxkIGZvciBwYXNzZWQgaXRlbSBmb3JtLiBWYWx1ZSBpcyBhbHdheXMgdHJ1ZSBieSBkZWZhdWx0IGJlY2F1c2Ugb25seSBjYXNlIHdoZW4gdGhpcyBmaWVsZCBpcyBlbmFibGVkIGlzXG4gICAqIHdoZW4gQ2hhcnRBY2NvdW50cy5pc0dTVCA9PT0gdHJ1ZSwgc28gd2UganVzdCB1c2UgZGVmYXVsdCB2YWx1ZSBmcm9tIGNoYXJ0QWNjb3VudHMuaXNHU1RcbiAgICovXG4gIHByaXZhdGUgZW5hYmxlSXRlbUdTVChpdGVtRm9ybTogU29sZUludm9pY2VJdGVtRm9ybSk6IHZvaWQge1xuICAgIGl0ZW1Gb3JtLmdldCgnaXNHU1QnKS5zZXRWYWx1ZSh0cnVlKTtcbiAgICBpdGVtRm9ybS5nZXQoJ2lzR1NUJykuZW5hYmxlKCk7XG4gIH1cblxuICBnZXQgY29tbW9uRGF0YSgpOiBVbnR5cGVkRm9ybUdyb3VwIHtcbiAgICByZXR1cm4gdGhpcy5nZXQoJ2NvbW1vbkRhdGEnKSBhcyBVbnR5cGVkRm9ybUdyb3VwO1xuICB9XG5cbiAgLyoqXG4gICAqIFJld3JpdGUgYWJzdHJhY3QgZm9ybSBnZXR0ZXIgdG8gZmxhdCBcImNvbW1vbkRhdGFcIiBmaWVsZCwgd2hpY2ggaXMgbm90IGluIHRoZSBjbGFzc1xuICAgKi9cbiAgZ2V0IGN1cnJlbnRWYWx1ZSgpOiBTb2xlSW52b2ljZSB7XG4gICAgY29uc3QgZm9ybVJhd1ZhbHVlOiBhbnkgPSB0aGlzLmdldFJhd1ZhbHVlKCk7XG5cbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKFNvbGVJbnZvaWNlLCBPYmplY3QuYXNzaWduKFxuICAgICAge30sXG4gICAgICB0aGlzLm1vZGVsLFxuICAgICAgey4uLmZvcm1SYXdWYWx1ZS5jb21tb25EYXRhLCBpdGVtczogZm9ybVJhd1ZhbHVlLml0ZW1zfVxuICAgICkpO1xuICB9XG59XG4iXX0=